Si4735 ラジオモジュールのプログラミングその2

とりあえず、音出るまでを一区切りにしようと夕食後から少しモジュールいじり。Atmel Studio 6 の画面上もソースが増えてきました。まずは固定値で NHK FM にチューニングして音が出るかの確認です。いろいろシューティングで時間食いましたが結果 OK でした。これで一安心

問題点に伴なった変更点は

  • ラジオモジュールへの電源供給を ATMEGA328P の I/O PIN からしようとしたが駄目でした。(モジュール側のコマンドで Power Down 出来そうなので直接電源ラインに接続)

でした

20121201 ヴァイオリンレッスン109回目(今の教室19回目)

11月は低温傾向のまま寒い日が続いで師走初日の今日も最高気温10℃いくかいかないかという寒さ。夏の正反対です。どうなってんでしょうね。ほんと寒いです。

  • 楽器のチューニング
  • 小野アンナ ヴァイオリン音階教本 P15 C Dur と A moll の音階練習
  • ステップ式ヴァイオリン教本 III P17 16, 17番
  • Kayser 36 STUDIES Op.20 No 3.
  • 篠崎バイオリン教本2 P57 「アベ マリア」

3ポジの練習はステップ式ヴァイオリン入門 III (第3ポジション)の教本から「蛍の光」です。お店の閉店時間とかでよく聞くやつですね。ポジション移動するときに指の加減で音が中途半端なグリッサンドになったのが気になりました。音程盛大に外さなかったのでなんとかマルです。

カイザー練習曲3番のレッスン3回目です。全体通しで練習。4の指多用するため地味にピッチ外してしまい、きっちりチェック入ります。ということです。左手はだいたいまとまってきた感じなので、ボウイングの方に注意しつつ、うまくまとまればいいかな。これは次回もレッスン予定。

なんか曲っぽいのでもやりましょかということで篠崎教本2 バッハの「アベ マリア」。曲の出だしは3ポジに修正して練習。とりあえず通してみたところで時間切れ終了です。

次回は12月8日の予定。

Si4735 ラジオモジュールのプログラミングその1

ラジオモジュールのプログラミング開始です。今回はお手軽 Arduino ではなく、普通の AtmelStudio6 で開発を行ないます。ちょっと久しぶりだったので思い出すのに時間かかったよ。

とにかく、LCD に文字が出ないと話しにならないので I2C バスの送信部分(エラー処理無視)のクラスを作成。見た目は Arduino IDE の Wire ライブラリと同じメソッド名で実装。と言ってもコンストラクタ、begin(), beginTransmission(), endTransmission() を書いただけです。

で、ブレッドボードの ATMEGA328P に書き込みしますが、このときフューズビットの CKDIV8 のチェックを外して内蔵CR発振器の分周はしないようにし、8MHz のクロックで動くようにしています。電圧も3.2V と表示されているので大丈夫です。

ということで、お決まりの Hello World を液晶表示して出るか確認し表示されました。早速出てきた問題点は

  • テスト LED を点けたり消したりするだけで、液晶のコントラストが微妙にかわる(ものすごいセンシティブ)
  • I2C バスを抵抗でプルアップして動いた(内蔵プルアップで動くはずが…) ちょっと調べないと駄目かな。

今後は I2C の読み込みルーチン作成です。これが無いとラジオモジュールのステータス読めないのでコーディングします。それと液晶が HD44780 互換のコマンド体系なので、必要最低限のコマンドをクラス化するあたりかなと

Si4735 ラジオモジュール構成検討中

先日入手した Si4735 ラジオモジュールですが、どういう構成にするか成行でブレッドボードにはめて行きました。まずは各モジュールを初期化して固定値でもなんでもいいので動くことを確認するのが先のため、まだタクトスイッチなどは接続していません。で、部品取り付けつつなんとなくまとまったのは

  • 3.3V 動作(液晶の動作電圧狭いけど、電池もいけるか確認)
  • Si4735 と液晶の電源は AVR マイコンの IO ピン制御で供給出来るかやってみる
  • ↑ が OK なら AVR マイコンの Power Down モードを使用してみる

という項目をまず確認したいです。PORTC の 27,28ピン。I2C で使うときにプルアップ出来れば言うことなしですがデータシート見ないと。これが確認出来れば基本の接続は問題ないので後はスイッチ増やしてそれっぽく仕上げていく感じかなぁと

データシートには、PORTC の I2C で使うピンはプルアップ出来ると書いてあったので、外付け抵抗なしでやってみましょう。

Si4735 ラジオモジュールが届いた。

日本橋のシリコンハウスでこの石使ったラジオキットが売られていたのを見て、知ってはいたのですが、お値段が高いのであきらめました。ということで、モジュールのところだけを通販でポチしました。

概要としては、ディジタル部分3.3V, アナログ回路5Vくらいで動作可能な 2線もしくは3線インタフェース制御ラジオチップで、周波数は FM:64–108 MHz AM:520–1710 kHz SW:2.3–26.1 MHz LW:153–279 kHz とデータシートにはあります。とりあえず、簡易アンプと、ワイヤーアンテナの簡単仕様ならブレッドボードですぐ組めそうなのでまた近いうちに評価回路決めたいと思います。

ダイソーのコレクションボックス ミニが役に立ちそう

左側に写っているのはニキシー菅時計です。いつぞや工作中の動画をアップロードしたような記憶もございます。が、作ってから何年も経過するのに裸のまま稼動し続けておりましてさすがにマズイと。ということで箱に入れることにいたしました。

今回はダイソーで売っていた コレクションボックスミニ・フラット台座というものを買いまして、お値段105円です。幅169mm がギリギリ入りますので選びました。マイコンの基板とニキシーの基板2枚あるのでどのようにマウントするかは考えないといけないのですが、なんとかしましょう。

100円ショップもじっくり見ると、工作ネタで使えそうな掘り出し物って以外とありますねぇ。


2012年11月27日追記

ということで、時計ユニットをケースに入れてみました。幅なんとか行けましたね。アクリルケースのきれいなケースに入れてあげるがいいかとは思いますがアクリル用接着剤も持っていない状態なので練習してからかな。少しスッキリした感じになって良かった。

多機能タイマ製作7


今日は、ヴァイオリンのレッスンが無いのとその他外出を入れていないので、タイマーのほうをやってしまうことにしました。なので、JWCAD を起動しまして、現物合せの位置決めの結果を図面に入れます。ついでに印刷用に不要部分をばっさり削除して上面・裏面・背面の部分だけ印刷出来るように準備です。まずは普通に紙へ印字し大きさの確認。

次は、図面を透明シートに印刷してアルミケースに貼り付け。

あとは、電動ドリルとハンドニブラとヤスリで加工を続行。

で、無事完成です。

あとは、デジカメ接続してシャッターがきれるか動作確認。結果組み込み時に断線などは発生しなかたので問題なく動作。よかった。ボタンやケースのレタリングは透明シートがあまっているのでプリンタで印刷して貼ればいいのですが、手持ちの透明シートは粘着弱いタイプなのであらためて実施かな。でも本人わかってるからねぇ。

多機能タイマ製作6

穴開けの位置決めガイドの準備作業で JWCAD へ図形登録実施。このとき、大きさ測るついでに高さが大丈夫かも現物合せでチャッチャと確認。微妙な場所はありますが入りますな。

ということで JWCAD にポチポチと図形登録実施。上は図形呼び出しが出来るのを確認したところ。あとはタカチのケースに上の図形はめこんで、ラベルシートに印刷して穴開けのガイドにする予定です。ボール盤無いので地道に穴開けしないといけないのが面倒です。四角いところはハンドニブラーとやすりでなんとかなるかなぁ。というかなって欲しいというのが正直なところ。ハンドニブラーの刃大丈夫だっけ。

多機能タイマ用アルミケースやその他買い物

日本橋のシリコンハウスさんへちょいと買い物に。

2階のケースコーナーをぶらぶら見てましてタカチの TS-11 アルミケース(傾斜タイプ)が目に入りました。目分量という根拠の無い感では「余裕で入る」というということだったので購入。もう一つのテイシンの TE-316 のアルミケースは秋月の LM350T だったか LM338T 使用の大容量出力可変安定化電源キット用に仕入れておきました。

こて先クリーナーはつい衝動買いです。普段はスポンジのクリーナー使用していますが、使い終ったあとの片付けでスポンジ湿っているので道具箱入れられんしということでそこら辺に放置というのが常でしたが、今回これが目にはいりましたのでちょっと使ってみようかというやつです。

後は、シリコンハウスさんのレジのところにあった味マップと、ビックカメラで透明ラベルシールを購入。シールのほうはケース加工用です。

多機能タイマ製作5

前回の多機能タイマ4で、Youtube にも動作例をアップロードしました。時間パラメタなどを設定する画面で画面を一旦クリアして一画面丸ごと再描画していましたが、シリアル I/F で VFD モジュールを動かしているためにあきらかに動作が遅いのです。

  012345678901234567890
 +---------------------+
0|                     |
1|  YY __  hh __       |
2|  MM __  mm __       |
3|  DD __  ss __       |
4|  DAY ___            |
5|  ENT=Write RTC      |
6|                     |
7|YY/MM/DD hh:mm:ss XXX|
 +---------------------+

上の画面例で言うと、1 行目の YY の設定をしているときは 1 行目だけ再描画すれば良いので、画面表示するコードに何行目を再描画すれば良いかの判定を追加。これで、目障りな画面のチカチカは減りました。ソフトのほうは、コンパイル後のスケッチのサイズ:13,832バイト(最大容量32,256バイト)なのでまだまだ余裕ありますが、一旦フリーズして。今後は苦手なケース加工へ移行していきたいと思っています。基本的に夜間、屋外で使用するので透明プラケースは避けようかとは思いますが、どうなることやら。