USB対応のAVRマイクロコントローラーLUFA(2011-10-09)用のオープンソースUSBライブラリを使用しており、 CDC(ブートローダー)の例をAT90USB162チップにコーディングしようとしています。サンプルコードはフォルダにあり、 AT90USB1287/Bootloads/CDC
用のCDCを構築するために用意されています。そのため、適切なマイクロチップを設定するためにmakefileパラメーターを変更する必要がありました。
makefileで、次のように変更しました。
- MCU = at90usb162
- F_CPU = 16000000
- FLASH_SIZE_KB = 16
- BOOT_SECTION_SIZE_KB = 4
コードを作成しました。これはエラーなしで発生しましたが、.hexファイルを使用してチップを焼き込もうとすると、次のメッセージが返されます。
アドレスが範囲外です
なぜこれが起こるのでしょうか?
アップデート
でmakefile
、BOOT_START
は次のように構成されます。
BOOT_START = 0x$(shell echo "obase=16; ($(FLASH_SIZE_KB) - $(BOOT_SECTION_SIZE_KB)) * 1024" | bc)
おそらく、エラーはBOOT_STARTアカウンティングにありますか?もっと何かを設定する必要がありますか?