シフトレジスタとの出会い
前回までの7セグメントLED(4桁)において、ArduinoUnoのピンをすべて使い果たしてしまうことが判明。。。。これでは、他のことがなんにもできなくなってしまう。
Google先生に聞いてみた。。。
Arduinoのピン3本を使用するだけで、8つのLEDを制御している!
http://arduino.cc/en/Tutorial/ShiftOut
シフトレジスタとよばれる中の「74HC595」↓↓↓
しくみは8ビット(1バイト)の情報を送れる。なので、例えば8つのLEDの「ON/OFF」を制御できる!しかも、Arduinoで使用するピンは3つだけ。
ちなみにこのシフトレジスタはつなぐこともできる!なので、こんなことも!
シフトレジスタを増やしても、Arduinoで使用しているピンは3つ!
ソースはこちら
https://github.com/peacemaker07/Arduino/tree/master/ShiftReg_R-L
調子にのってこんなことしてみた!
・・・これを作ってみて感じたことは、ここまでLEDを使用するならドットマトリクスLEDを使用したほうが簡単にできるし、完成までの時間もはやい。。。(^^;
経験ということで。。。。
<ひと休み>たまにはITから離れて −JICAの説明会に行ってきた−
昔から興味のあった青年海外協力隊の説明会にやっとのこと行ってきた。。。行ってみたいなぁと思っているだけで、全然行ってなかった。。。(^^;
これから参加を考えているあなたへ送るブログ。参考になれば幸い。
説明会にいってみて
説明会に行ってみて感じたことは、自発的にいろいろとやっていかないことを除けば今している仕事より楽だなぁと感じた。
あと、経験者の人の話が聞けるが、いろんな職種があり自分が求めている人がくるかはわからないので、一つだけではなく、いくつか説明会に参加した方がよいと感じた。
20歳~39歳までの説明会は以下の「説明会を探す」から探せる
http://www.jica.go.jp/volunteer/application/seinen/
以下は私が行った4月27日 JICA横浜の説明会のこと
説明会プログラム
主催者挨拶/協力隊経験者紹介、事業概要/応募説明、協力隊経験者との懇談会、派遣先からの生中継、個人相談
主催者挨拶のあとは、事業概要/応募説明、協力隊経験者との懇談会、派遣先からの生中継が開始されるので、自分がすきなところに行ける感じ。
個人相談は常時やっている。
協力隊経験者との懇談会は5人の経験者の方、ひとりひとりを囲んでお話をする形。
(派遣先からの生中継は行けなかったので割愛。。。)
最初は事業概要/応募説明へ
⇒これは、ホームページにあるバーチャル説明会などでもわかるので、他のを優先したい場合は、聞かなくてもよい感じ。
次に個人相談へ
⇒質問事項は
①「2年より短くできるか?」
②「やりたい職種はあるが具体的なやりたいことが決まってないが大丈夫か?」
③「参加が決まり、現地で他の仕事ができる時間があるか?」
⇒①
長期は2年が基本。
1年9ヶ月もあるがこれは研修期間が3ヶ月くらいあるので、プラスして
2年とした制度。その他は短期にするしかない。。。
⇒②
要請一覧から自分のやりたいことを探して応募するかたち。
応募から実際に現地に行くまでは期間があくため、絶対にその要請を行う
かはわからない。
どちらかというと、現地にいって状況をみていろいろ考えて行動したほうが
いいかもしれないとのこと。
⇒③
基本的に夜出歩くのは危険なところなどあるので、自宅にいることになる
とのこと。
よっぽどのことがない限り夜は空くみたい。なので、できないことはない。
次は協力隊経験者の方の一人と話した。
僕が希望したいコンピュータ技術、PCインストラクターの経験者の方はいなかったので社会人を経験してから青年海外協力隊に参加した方に、なぜ現職制度を使用せず、仕事を辞めたのかなどを聞こうと思い話した。
その方は「ミクロネシア」あたりに派遣され、環境教育(主にゴミ問題)をしてきた人。
会社を辞めて、青年海外協力隊に参加。なので、なぜ仕事をやめて参加したのか聞いたところもともと社会人になる前から青年海外協力隊に参加したかったとのこと。
現職制度をしようすることは、考えていなかった。でも、再就職は厳しいのでしようできるなら現職制度を使用したほうがよい。
再就職はJICAの紹介もあるが、やはり自分でやらないといけないので、厳しいところはあった。でも、協力隊参加は有利になったとのこと。
その他
・夜、仕事する時間はあったとのこと。
・やることは、現地の状況をみて決めていった
・現地の外国の調査員などとの交流は自分から広げていかないと行けなかった。
・言語はやはり現地語を話すと現地の人と親しみやすい。研修で教えてくれたのは公用語で、派遣されてから現地語は覚えた
また行ってみたいと思った説明会だった。特に協力隊経験者の話がきけて結構、イメージがわいたように感じたが、やはり、コンピュータ技術、PCインストラクター、現職制度をしようした経験者の方と話がしたかった。。。もっと早く動けばよかった。。。(^^;
<番外編> 予想以上にはまってしまったーAndroidアプリにGoogleMapを表示するー
参考になりそうなサイトもいっぱいあるし、簡単に表示できると思っていた。。。でも、そんなことはなく、古い記事を読んでいたことなどから、結構はまってしまい、何日間かかかってしまった。。。(^^; ちなみに、一番はまったのは「APIキーの取得」部分。
現状(この記事を書いた2014年4月ころ)の参考になったサイトはここ
http://codezine.jp/article/detail/7440
参考にしたサイトはWindows向けで、私はMacを使用中なのでやり方がかわる「APIキーの取得」と、「AndroidManifest.xml」に追記した部分があるので備忘録もこめて以下に書き留める。
Macでも基本的にやることは一緒。ただ、ファイルのパスなどが違うだけ。
1.ターミナルを起動
2.ターミナルの環境設定の「文字エンコーディング」を「Shift JIS」にする
(質問が全角のため)
3.debug.keystoreがある場所に移動
$ cd ~/.android
4.キーストア作成(「-alias」部分は任意)
$ keytool -genkey -v -keystore debug.keystore -alias androiddebugkey3 -keyalg RSA -validity 10000 -dname "CN=Android Debug, O=Android, C=US"
キーストアのパスワードを入力してください:
10,000 日間有効な 1,024 ビットの RSA の鍵ペアと自己署名型証明書 (SHA1withRSA) を生成しています
ディレクトリ名: CN=Android Debug, O=Android, C=US
<androiddebugkey3> の鍵パスワードを入力してください。
(キーストアのパスワードと同じ場合は RETURN を押してください):
[debug.keystore を格納中]
5.フィンガープリントを確認
$ keytool -list -v -keystore debug.keystore
キーストアのパスワードを入力してください:
キーストアのタイプ: JKS
キーストアのプロバイダ: SUN
キーストアには 3 エントリが含まれます。
*******************************************
別名: androiddebugkey3
作成日: 2014/04/27
エントリタイプ: PrivateKeyEntry
証明連鎖の長さ: 1
証明書[1]:
所有者: CN=Android Debug, O=Android, C=US
発行者: CN=Android Debug, O=Android, C=US
シリアル番号: 535cf51f
有効期間の開始日: Sun Apr 27 21:16:31 JST 2014 終了日: Thu Sep 12 21:16:31 JST 2041
証明書のフィンガープリント:
MD5: 8F:0C:EB:89:AA:0E:5C:B3:F9:BF:D5:CE:B7:AB:4C:99
SHA1: B2:99:70:79:E3:F3:99:7C:9D:F3:4B:76:3A:EC:FF:A1:43:DE:10:F3
署名アルゴリズム名: SHA1withRSA
バージョン: 3
*******************************************
6.GoogleのAPIコンソール(https://cloud.google.com/console)へアクセス
7.「GREATE PROJECT」でプロジェクトを作成
8.「Google Maps Android API v2」を利用するに変更
プロジェクト名をクリックし「APIs & auth」⇒「APIs」で 「Google Maps Android API v2」の「STATUS」をクリック して「ON」にする
9.APIキーを生成
■「AndroidManifest.xml」の追記
赤文字部分を追記
<!-- Goolge API Key --> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyChBKhtgL7Kz6OGFY9amdhSKaA7rdV5TtU"/>
こんな感じに表示
今回思い知らされたのは、Androidはバージョンアップが多いため、ホームページを参考にする場合は、直近の記事をみること!
(当たり前ですよね。。。(^^; ちゃんとわかっていませんでした。。。)
ちなみに、マーカーと軌跡の付け方は以下を参照
http://dev.classmethod.jp/smartphone/android/android-tips-25-google-maps-android-api-v2/
とゆうかArduinoもやらないと∑( ̄□ ̄;)
7セグメントLEDとの出会い −再度挑戦!−
前回、一部のセグが点かなくなってしまったため、、、
7セグメントLEDをまた買ってしまった(・∀・)
※製品情報
http://akizukidenshi.com/download/OSL40562-IB.pdf
ちなみに、ひとつひとつの部品はそれほど高くないので、どんどん試して
どんどん壊していじりまくりましょう~(嘘)
ちりつもなので、あまり度が過ぎないように。。。
早速、参考資料をみると。。。∑( ̄□ ̄;)
なんだか、矢印(▲)の向きが逆だぁ。。。
7セグメントLEDには「カソードコモン」と「アノードコモン」の2種類があった
ことをここで気づいた。。。
電流を前回と逆に流さないといけない。。。
(なので、前回のスケッチのdigitalWriteのHIGH、LOWを逆にしないといけなくなった。。。)
成果物としてボタンと組み合わせて、押している時だけインクリメントするもの
を作ってみた。
スケッチはこちら↓↓↓
https://github.com/peacemaker07/Arduino/tree/master/7SEG_OSL40562-IB_Increment
これを作って感じたことは。。。
ArduinoのDigtalPinを全部使いはたしている。。。
これだと、他の部品と組み合わせができない。。。(TOT)
★おまけ
・4桁の7セグメントLEDで一桁ずつ別の数字を表示させる場合
普通にみていると4桁が同時に表示されているが、プログラム的には一桁ずつ
人間の目には認識できないほどの速さで表示させている。実は点滅している。
⇒なぜかというと、、、実際に試そう!ヽ(・∀・)ノ
普段、自販機、精算機などでみかける7セグメントLED。
実際に試してみると表示させるのが、すごくめんどくさい。
7セグメントLEDの見る目が変わった。次回へ続く。。。
7セグメントLEDとの出会い −まずは点けてみた−
今までにない時計みたいのを作りたいねという話があったので、表示系の部品を
試すことにした。
ドットマトリクスや、数字を表す時に使用する7セグメントLEDなどを試したいと
思って最初は「自販機」などでよく見かける
【7セグメントLED】
セグメント(断片、部分などの意味)を7つ使用して、1桁の数字を表すパーツ
※製品情報
http://akizukidenshi.com/catalog/g/gI-04448/
まずは、以下のサイトに書いてあったように本当にひとつひとつのLEDが光るか検証。
(組み込みは、ハードとソフトがあり不具合が発生した時はどちらが悪いかの
検証が必要。そもそもLEDが光らなければ、ソフトで点けても実際には点か
ないので。。。まずは動作チェック!)
http://garretlab.web.fc2.com/arduino/introduction/beginning_with_7segment_led/
さて、点けてみるかと思ったけど。。。(・ω・; ?
参考資料を見て、どういうこと???
★参考資料
http://akizukidenshi.com/download/OSL40562-LW.pdf
↓一部抜粋
しばらく参考資料とにらめっこして
・
・
・
・
(・∀・)あっ。。。・・・(−ω−;)。。。やっぱりわからない。。。
・・・
なんとなく、ピンの数字が一番下の画像の数字にリンクしていて、
矢印(▲)方向に電気流せばよいのかなと思って。
ブレッドボードに7セグメントLEDをさして、Arduinoからは5VとGNDからギャンパー
ワイヤーだして電気流してみた。
おっ点いた
キタ━━━━(゚∀゚)━━━━!!
・・・喜んでいたら。。。点かなくなっちゃった。。。∑( ̄□ ̄;)
原因はおそらく、抵抗を使わずに点けていたため。
過電流でショートしてしまったのかな。。。(^^;
現状はこんな感じ。。。
4桁目の左下はショート?してしまったみたいで、点かない。。。
抵抗の必要性をすごく感じた。。。
ちなみにソースは↓こちら
https://github.com/peacemaker07/Arduino/tree/master/7SEG_EasyVer(cathode)
秋月との出会い −Lチカで終わってしまっているあなたへ−
前回3日坊主に終わったArduinoから半年くらいが経ち。。。
とある縁からIT系の人たちが集まるシェアハウスに住んでいた。
そこのひととソフトばっかりではなく、ハード系のこともしていき
たいねぇと話になり、Arduinoを再開!
前回のLチカなどを復習し、次はどうしようか考えていた。
一緒にやっていた人からセンサーなどいろいろな部品が売っている秋葉原の
「秋月」に行ってみようと、誘われ連れて行ってもらった。
すごく小さいお店ですが、その中には、本当にたくさんのセンサー、LED、
パーツなど本当にいろいろな種類のものがところ狭しとおいてあり、
それをみているだけで、これもやってみたい、こっちもやってみたいと
どんどんアイディアが浮かんできて、すごくおもしろくなっていきそうと
すごくすごく感じた。(ごめんなさい、説明下手で。。。(^^; )
もし、Lチカで終わってしまっているあなた、秋月にぜひぜひ
行ってみてください。また、Arduinoをやっている自分がそこにいる!!!
※以下の写真はイメージです