タグ付けされた質問 「avr」

AVRは、Atmelが開発した8ビットおよび32ビットのマイクロコントローラーコアです。AVRは、人気のあるArduino SBCのマイクロコントローラーとして選ばれました。

4
ATtiny13を可変周波数とパルス幅を持つオーディオ発振器としてプログラムします
555で行うのと同じような単純な方形波発振器を作成したいのですが、割り込みベースのPWMサポートを使用して、パルス幅と周波数を制御したいと考えています。 私はデータシート、AVR API、および見つけることができるあらゆるPWMの例を研究してきましたが、それらをすべてまとめることはできませんでした。 AVR PWM機能が組み込まれたこのような発振器を作成することは可能ですか?私の友人は、8ピンPICで同様のことを行いました。 私の推論は、パルス幅を変更することで興味深いサウンドが得られるため、特定の周波数での波形になります。アタリパンクコンソールの動作に似ていますが、うまくいけば、より安定した方法で、つまりパルス幅を変更し、周波数を一定のままにするか、その逆を行います。
8 avr  audio 

5
Linux AVR IDEを直接体験
Linux(AssemblyおよびC)でAVRプログラミング用の優れた統合開発環境をセットアップするための情報を探しています。 私の研究では、AVRに関する実際的な経験は限られていましたが、少し錆びてきているので、いくつかのプロジェクトで忙しくなりたいだけでなく、Linuxですべての開発を続けたいと思っています。 私はLadyadaのUSBtinyISPを使用し、AVRdudeを使用してチップをプログラミングしていますが、Linuxで好きなように動作するIDEをまだ見つけていないため、WindowsのラピーとAVRstudioを介してコンパイルおよびビルドしています。(これが私がArduinoを愛し、優れたIDEですぐに動作する理由です!) それでは、LinuxでIDEを使用して実際にAVRプロジェクトを最初から最後まで開発した経験がある人はいますか?

2
AVRコードがビットシフトを使用する理由[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 AVRプログラミングでは、レジスタビットは、a 1を適切なビット位置に左シフトすることによって常に設定され、それらの1の補数によってクリアされます。 例: ATtiny85の場合、PORTB、b 4を次のように設定します。 PORTB |= (1<<PB4); または、次のようにクリアします。 PORTB &= ~(1<<PB4); 私の質問は次のとおりです。なぜそれがこのように行われるのですか?最も単純なコードは、ビットシフトの混乱になります。なぜビットがマスクの代わりにビット位置として定義されるのですか? たとえば、ATtiny85のIOヘッダーにはこれが含まれています: #define PORTB _SFR_IO8(0x18) #define PB5 5 #define PB4 4 #define PB3 3 #define PB2 2 #define PB1 1 #define PB0 0 私にとっては、代わりにビットをマスクとして定義する方がはるかに論理的です(このように): #define PORTB _SFR_IO8(0x18) #define PB5 0x20 #define PB4 0x10 #define PB3 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.