Atmel Studio 7にインストールして使用したプログラムを書いています。 Arduinoのスタジオをセットアップし、Atmega128をサポートされているチップライブラリに追加しました。すべてがそこに良いです。 SoftwareSerialライブラリを使用してコンパイルしようとすると、Atmega128とAtmega64がSoftwareSerialをサポートしていないというエラーが表示されます。どうしてこれなの? atmega328などと比較して、このAVRの違いは何ですか?それはライブラリをサポートしません。 atmega128でSoftwareSerialまたはSoftUartを使用する方が良い方法はありますか?ありがとうなぜSoftwareSerialがAtmega128で動作しないのですか
答えて
このコンパイルエラーに遭遇しましたか:This version of NewSoftSerial supports only 20, 16 and 8MHz processors
?
これはcppファイル内のこれらの定義に由来します。 F_CPUを8000000と定義し、クロック速度を設定するために実際にレジスタを設定しているかどうか確認するとうまくいくかもしれません。一部のプロセッサは、デフォルトでは低速のクロック速度を使用します。ハードウェアマニュアルを参照してください。
F_CPUは、NewSoftwareSerial.cppファイルが処理される前に定義する必要があることに注意してください。 Dスイッチを使用して、コマンドラインで定義を作成することができます。私の研究を通して
#if F_CPU == 16000000
[snip]
#elif F_CPU == 8000000
[snip]
#elif F_CPU == 20000000
[snip]
#else
#error This version of NewSoftSerial supports only 20, 16 and 8MHz processors
#endif
こんにちは、返信いただきありがとうございます。コンパイル時にF_CPUエラーが発生しませんでした。そして、はい、私は16MHzにF_CPUを設定しました。唯一のエラーは、特に "ATmega64とATmega128はSoftSerialをサポートしていません!"ということです。私がSoftwareSerial.hファイルを見ると、実際には44行目にコード化されています。 – Eddie
、Arduinoのライブラリを使用して設定しながら、その含まSoftwareSerialライブラリがあるためPINの違いのatMega64とATMEGA128をサポートし、これらのチップ上で中断されません。私は、this exampleを変更することによって、atMega128の他のGPIOピンにsoftserialを設定しました。この例は送信専用です。私はそれが割り込みとクロッキングを設定する必要があるので、まだ受信部分で作業しています。覚えておくべき重要な点は、プロジェクト全体でクロック設定が一致し、シリアルボーが適切に設定されていることを確認することです。私はいくつかの異なるボーレートを使ってコードをテストしました。
初心者向けのメモとして、私はArduinoでのテストが素晴らしいことを発見しました。しかし、カスタムビルドCプロジェクトに移行しようとすると、ArduinoプロジェクトからクリーンCプロジェクトに移行することは非常に困難です。私の意見では、Atmel Studio環境でC言語を学び、Arduinoから離れたほうが簡単です。私はこれがプログラミングから始めて誰かを助けることを願っています。
- 1. 自動テストが動作しないのはなぜですか?
- 2. モデルナビゲーションがセルフトラッキングエンティティで動作しないのはなぜですか?
- 3. なぜJavaScriptがFirefoxで動作しないのですか
- 4. Ajax.BeginFormがChromeで動作しないのはなぜですか?
- 5. なぜFontがHtml CSSで動作しないのですか?
- 6. SVGでdocument.titleが動作しないのはなぜですか?
- 7. サービスワーカーでCookieが動作しないのはなぜですか?
- 8. JSONDecodableでテンプレートが動作しないのはなぜですか?
- 9. ラッパーがHTMLで動作しないのはなぜですか?
- 10. オルトでアルファブレンディングが動作しないのはなぜですか?
- 11. なぜevent.keyCodeがng-keyupで動作しないのですか?
- 12. なぜappendChildがノードタイプで動作しないのですか?
- 13. なぜインクルードがここで動作しないのですか?
- 14. なぜlive()がjQueryで動作しないのですか?
- 15. ルータリンクタグがブートストラップフレームワークで動作しないのはなぜですか?
- 16. なぜLimitキーワードがMysqlで動作しないのですか?
- 17. XPathがIEで動作しないのはなぜですか?
- 18. entityframeworkがクラスライブラリで動作しないのはなぜですか?
- 19. メディアクエリがFlexboxで動作しないのはなぜですか?
- 20. なぜ$ .postメソッドがIEで動作しないのですか?
- 21. なぜアンドロイドエミュレータでdafaultカメラが動作しないのですか?
- 22. マルチスレッドプログラムでprintfが動作しないのはなぜですか?
- 23. なぜvuetifyでalign-endが動作しないのですか
- 24. JPanelでDockableFrameが動作しないのはなぜですか?
- 25. sizeThatFitsがUILabelで動作しないのはなぜですか?
- 26. なぜINSERT INTOがPythonで動作しないのですか
- 27. react.jsでリンクが動作しないのはなぜですか?
- 28. @Resourceが@PreAuthorizeで動作しないのはなぜですか?
- 29. なぜJavaScriptでsaveAs()が動作しないのですか?
- 30. svgがブートストラップメディアオブジェクトで動作しないのはなぜですか?
正確なエラーメッセージは何ですか? –