ATTINY2313
AVR ATTINY2313を使った基板を設計中
仕様を簡単に説明すると
・パルス入力5チャンネル(max10kCPS)
・UARTによるモニター出力(コマンド入力対応)
・SPIスレーブ動作
・出力データにはCRC付加
2313はROM 2k RAM 128と極めて小容量
普段はh8を使うことが多いのでこのサイズのメモリでどの程度プログラムが入るか道の世界
とりあえずSPIスレーブとUART用コマンド処理以外のプログラムを自分で書いた設計書を元にコーディングした
ROM使用率380% RAM使用率220%
流石に厳しいねー
とりあえず次の機能を削ぎおとしてなんとか使えるレベルへ
・CRCをSUMへ
・UART受信処理を完全削除(コマンド非対 応)
・タイフアウト処理取りやめ
・モニター出力時の時刻がわりのTickを64ビットから32ビットへ
これでROM 80% RAM 50%へ縮小
これなら未搭載のSPIスレーブ機能を加えても現実味のあるサイズに収まりそう
サイズが小さいだけにバランスを意識したプログラミングが必要です。
後は設計書へのリターンを忘れずに。
SPLINTとCUNITの準備もせねば。
仕様を簡単に説明すると
・パルス入力5チャンネル(max10kCPS)
・UARTによるモニター出力(コマンド入力対応)
・SPIスレーブ動作
・出力データにはCRC付加
2313はROM 2k RAM 128と極めて小容量
普段はh8を使うことが多いのでこのサイズのメモリでどの程度プログラムが入るか道の世界
とりあえずSPIスレーブとUART用コマンド処理以外のプログラムを自分で書いた設計書を元にコーディングした
ROM使用率380% RAM使用率220%
流石に厳しいねー
とりあえず次の機能を削ぎおとしてなんとか使えるレベルへ
・CRCをSUMへ
・UART受信処理を完全削除(コマンド非対 応)
・タイフアウト処理取りやめ
・モニター出力時の時刻がわりのTickを64ビットから32ビットへ
これでROM 80% RAM 50%へ縮小
これなら未搭載のSPIスレーブ機能を加えても現実味のあるサイズに収まりそう
サイズが小さいだけにバランスを意識したプログラミングが必要です。
後は設計書へのリターンを忘れずに。
SPLINTとCUNITの準備もせねば。