JJ1WKN Log

自作や移動運用関連のログです。

ElekinoCanDo/Std(ATmega168P版ElekinoCanDo)の試作 その4

2015-10-28 | Tanukino
その4

ElekinoCanDo/Stdはお蔵入りかと思ったのですが、悪あがきをしています。
コマンドとしては、最低限メモリー書き込みと確認だけあればいいので、その他のコマンドは思い切って削除することにしました。
コマンドを1つずつ削除すると、プログラムサイズが小さくなって行きますが、適当に削除しているので、必要な動作に影響する部分を削除しているかもしれません。

そこで「びんぼうでいいの」でテスト環境を構築して、動作の確認をしながら不要コマンドを削除するこにしました。


Pコマンド以外のコマンドと、メモリー内容確認コマンドのP4以降(なぜかP5までしか実装されていないようです)を削除した時点で目標達成です。
--
スケッチが プログラムストレージ領域の 15,978バイト (49%) を使用しています。最大は 32,256バイト です。
--

コマンドの削除は void command_mode () 内の削除したいコマンドのcase文をbreak文までコメント化すればいいようです。
--
// case 12: // A - Iambic mode
中略
// break;
--

ATmega328Pの「びんぼうでいいの」では、メモリー書き込み、再生、送信は動作しています。

ボードをATmega168P/Int.4MHzに変更してコンパイルした結果は、なぜか4バイト小さくなりました。
--
スケッチが プログラムストレージ領域の 15,974バイト (97%) を使用しています。最大は 16,384バイト です。
--

あとは実機でのテストです。

---------------------------------------------------------------------------------------
追記です。

実機でのテストはOKで、ブログ用の撮影も終わったのですが、スリープしません。
そういえば、テストのためにスリープ機能を入れていないのを忘れていました。
スリープ機能を入れたら124バイトオーバーしています。
--
スケッチが プログラムストレージ領域の 16,508バイト (100%) を使用しています。最大は 16,384バイト です
--

もう少しダイエットに励みます。

---------------------------------------------------------------------------------------
追記です。

メモリ リピート機能を削除して、ギリギリですが押し込みました。
送信機系統切替機能も不要なので削除したかったのですが、どこを削除するか分かりませんでした。
送信機系統2は無効にしてありますので、送信機系統は1のママです。
--
スケッチが プログラムストレージ領域の 16,374バイト (99%) を使用しています。最大は 16,384バイト です。
--
使用率は99.93%でATmega168Pの容量をほぼつかいきりました。

というわけで紆余曲折しましたが、ElekinoCanDo/Stdは封印から覚めることができました。


中身です。


送信回路の確認ができるように、パドル側のコネクタに送信確認用のLEDを付けました。
LEDの電源はElekinoCanDo/Stdから拝借しています。半田付けはせず、抵抗の足のテンションで5V端子に接続しています。