<!--親の顔より見た光景-->

日々の発見を残していきます。

チャタリング防止

回路

f:id:akagi13213:20170724233857j:plain

プルダウン抵抗にしてる。

プログラム(Arduino

#define INPUT_PIN 2
#define LED_PIN   3

bool is_led_on;

bool can_fix_led;
int on_count;

void setup() {
  Serial.begin( 115200 );
  Serial.println( "Serial Start" );
  pinMode( INPUT_PIN, INPUT );
  pinMode( LED_PIN, OUTPUT );
  is_led_on = false;
  on_count = 0;
  can_fix_led = true;
}

void loop() {
  if ( digitalRead( INPUT_PIN ) == HIGH ) {
    Serial.println( "HIGH" );
    if ( can_fix_led ) {
      on_count++;
      if ( on_count > 100 ) {
        if ( is_led_on ) {
          digitalWrite( LED_PIN, LOW );
          is_led_on = false;
        }
        else {
          digitalWrite( LED_PIN, HIGH );
          is_led_on = true;
        }
        can_fix_led = false;
      }
    }
  }
  else {
    Serial.println( "LOW" );
    on_count = 0;
    can_fix_led = true;
  }
}

スイッチを押して離すとLEDの状態が切り替わる(トグル)。
もっとスリムなコードにしたい・・・

ポエム

・幸せを感じる瞬間

新しい友達ができた時、女性と仲良くなれた時、笑い合う時、人と気持ちが共感できた時、いがみ合ってた人と仲直りした時、友達と非日常を楽しむ時、プログラムがうまく動作した時、バカみたいなコードミスを発見した時、、、

 

・不幸せを感じる瞬間

別れの時、怒られる時、人に意地悪された時、皆から省かれる時、合わないメンツに放り込まれる時、負ける時、、、

 

会社の懇親会で、Sさんがみんなの前で笑顔で話していた。就活当時は会社ホームページに乗っているその人を見て、硬そうな人だなぁと思っていた。

今自分はその会社に入社し、その人が笑っているのを見ている。学生時代を考えると、それは考えられないことで、入社したからこそわかったことだと感じ、自分は本当にここにいるんだと涙が出た。

 

なるべく小さな幸せと なるべく小さな不幸せ

なるべくいっぱい集めよう そんな気持ちわかるでしょ

 

20歳でやっとヒロトの言葉が理解できた。

たまに訪れる幸せの瞬間、本当にそれは瞬間で、二度と同じ場面は訪れない。

  

毎日が幸せなら、幸せを感じるときの感動は次第に薄れていく気がする。

たまに訪れる不幸があるから、本当の幸せを感じれるはず。でも嫌なこと続きだと心が持たない。だからちょっとの不幸で十分。

 

最近よく、人生とは何かと考える。幸せを追い求めることが人生の目的だと今は思っている。でもたまに、人生のゴールテープに触れることがある。

会社の懇親会の席、先輩社員とコーディング規約について話が盛り上がった。その人は初めて話した人だったし、共感できることが多かったし、何より自分が酔っていたのでその時は本当に幸せだった。

しかし、楽しく話していると同時に、「幸せだ、幸せだ・・・あれ、でも、こんな場面またやってくるのかな・・・」と客観的に今の状況を見ていた。これ以上の幸せはいらない、自分には贅沢すぎる、と感じていた。

「この感情のまま死ねたら幸せなのに、納得できるのに」こんなこと、高専の3年くらいからずっと思っている。

 

生きていればいつかは同じような大きさの幸せを感じる瞬間が来るかもしれない。そう思いながら時間をムダにしまいと、今、精一杯楽しむ努力をして生きている。

 

30歳の自分がこの記事を見たとき何を思うのかな。

GIMPが起動できないとき

f:id:akagi13213:20170528002829p:plain

GIMPが「GIMP Portable cannnot be run from inside C:\Program Files(x86)....」と出て起動できないとき。

警告文に書いてあるとおりに、デスクトップあたりにGIMPのフォルダを移動すれば起動できる。

ダイオードを接地

このダイオードを接地する意味は、マイナス電位がICに流れ込まないようにするため(万が一マイナス電位が流れた時、ICが壊れないための予防)。
f:id:akagi13213:20170514005104p:plain

わからん

クロマニヨンズのサイトが更新されたかチェックするためにHTMLファイルを解析しようと思っている。

しかしHTMLファイルの一部が読み込めない。
明日にはこのコードが何をやってるのかも分からなくなっているはず。
importに*使うほどモチベ無し。gm。

【Test.java

package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.*;
class Test{
    public static void main(String[] args) throws Exception{
        
        URL url = new URL( "http://www.cro-magnons.net/info/" );
        URLConnection connection = url.openConnection();
        BufferedReader in = new BufferedReader( new InputStreamReader( connection.getInputStream(), "UTF-8" ) ); 
        try {
            String str = null;   // HTMLファイルの行が入る
            StringBuilder news = new StringBuilder();   // 「最新情報」のテキスト
            StringBuilder date = null;      // 更新日時
            StringBuilder title = null;      // 記事タイトル
            
            int delete_point = -1;   // 元文字列から削除したい文字の場所

      // 最後の行まで読み込み
            while ( ( str = in.readLine() ) != null ) {
        news.append( str + "\n" );

                /* HTMLファイルをいじる処理 */
            }
      System.out.println( new String( news ) );
            System.out.println( "TITLE : " + new String( title ) );
            System.out.println( "DATE : " + new String( date ) );
            in.close();
        }
        catch ( Exception e ) {
            
        }
    }
}

これで得たHTMLの中身がコレ。
f:id:akagi13213:20170502003717p:plain


Chromeから落とした正規のHTMLファイルがコレ。
f:id:akagi13213:20170502003756p:plain


a href=以降のURLが省略形になってるし、一番欲しいニュース欄のところ(ulタグ以降)が全部消えてる。

コードで怪しそうなのはin.readLine()。
正規のHTMLだとニュース欄の文字列がクッソ長いから、エラーが起きてるのかもしれない。

PHPとXdomainの使い方

やること

レンタルサーバPHPを動かす
Apacheは使わない

今回は検索して一番上に出てくるXdomainを使った。
www.xdomain.ne.jp


無料レンタルサーバの登録をして、ログイン。

        ↓

PHPMySQLサーバーの利用を開始する。

        ↓

サーバの管理パネルのFTPアカウント設定をクリック。
f:id:akagi13213:20170430223937p:plain


WebFTPのログインをクリック。
f:id:akagi13213:20170430224101p:plain


ここにPHPファイルやHTMLファイルを置いて、ページを運用することになる。
f:id:akagi13213:20170430224152p:plain



Hello Worldしてみる

以下のphpファイルを作成。
【helloworld.php

<?php
    echo "Hello World!";
?>

作ったファイルをXdomainにアップロードする。
FTPファイルマネージャの画面からアップロード。
f:id:akagi13213:20170430224723p:plain


あとは、ブラウザのアドレスバーに
ドメイン名.php.xdomain.jp/helloworld.php
と打てばHello Worldが表示される。
f:id:akagi13213:20170430225348p:plain

Arduinoに書き込めなくなったら

1.回路を確認(ショートしてないか)
2.ターゲットのボードを確認
f:id:akagi13213:20170425231911p:plain

今回はIDEのショートカットキーでArduino UnoからArduino Mega ADKになっていた。