問題タブ [atmega16]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
551 参照

lcd - lcdの初期化

Q:atmega32でlcdを使用しました。知っているコマンドにコメントしました。コメントされていないコマンドの意味は何ですか?

0 投票する
1 に答える
2836 参照

atmega16 - atmega32でのADCコード

Q:「ADMUX = adc_input |(0x00&0xff)」の意味は何ですか?ここで選択した入力チャネルはどれですか?

0 投票する
3 に答える
1922 参照

c - 定数式のみをサポートする関数で変数をパラメーターとして使用する方法

私はこの機能を使用しています:

次のエラーが表示されます。

への引数_delay_cyclesは定数式でなければなりません

けっこうだ!しかし、どうすればこれをバイパスできますか? 毎回異なる値でプログラムを遅らせる必要があります。RS232 からデータを受信し、それをint変数に格納しています。この関数を使用する必要があり、その構造を変更できません。AtMega16を使用しています。

0 投票する
2 に答える
8229 参照

c - # Avr Studio 5 (ATmega16) で PORTX.x を定義

KS0108 GLCD ドライバー用の新しいアルゴリズムと機能を備えた新しい特別なライブラリを作成しています。ATMega16 を使用しています。私のドット マトリックス GLCD の寸法は 128x64 です。

#define コードを使用して別のポート ピンを定義するにはどうすればよいですか?
例: #define GLCD_CTRL_RESTART PORTC.0

IDE: AVR Studio 5
言語: C
モジュール: 128x64 ドット マトリックス GLCD
ドライバー: KS0108
マイクロコントローラー: ATMega16

どのヘッダーを使用すればよいか説明してください。また、ATMEga16 用の完全で非常に単純なコードを記述します。

0 投票する
2 に答える
302 参照

button - 「時々」奇妙な動作をする単純なavrプログラム

私は AVR を初めて使用しますが、以前に PIC をプログラムしたことがあります。今回は Linux でもすべてを行っているため、avrdude を使用していると推測できます...

このプロジェクトの私の目標は、特定の状態に応じて 2 色 LED の色を変更することです。

デフォルトでは、LEDは赤です(もちろん接続を正しく行う場合)。ユーザーがボタンを押したままにしてから放すと、黄色になります(緑と赤の間のクイックチェンジです)。緑色になり、次回はオフになります。

要約すると、

LEDは赤色

ボタンを押している間は黄色になります

離すと緑色になります

ボタンをもう一度押したままにすると、黄色になります

離すとオフになります

ボタンをもう一度押したままにすると、黄色になります

離すと赤くなります(など...)

私の実際のコードでは、すべてがうまく機能することがありますが、LEDが黄色で動かなくなることがあります。その理由はわかりません

何か案は?

コードは ideone にあります: http://ideone.com/LI9gH

ありがとう

0 投票する
2 に答える
2356 参照

avr - 遅延を使用したAVR上のソフトウェアPWM

AVRATMega16で遅延を使用して単純なPWM生成を達成しようとしています

私がやろうとしているのは、LEDを100%から0%のデューティサイクルにフェードさせることです。後でそれを拡張して、2色の2色のLEDを制御し、素晴らしい効果をもたらします。

私は以前にPICを使用してmikroCでこれを実行しましたが、どういうわけかavr-gccではそれほど簡単ではないか、何かが足りない可能性があります。

ここでの私の問題は、LEDを3秒で完全にフェードさせたいのですが、フェードが速く感じられることです。また、低いデューティサイクルよりも高いデューティサイクルに多くの時間を費やしていると思います。つまり、LEDが少し明るく見えると、色あせますが、暗くなると、さまざまなデューティサイクルに非常に速く移動するので、そう思います。

Any ideas you might have on what i am missing ?

Code is available here : http://ideone.com/lUP5f

Thanks

0 投票する
1 に答える
1909 参照

serial-port - UbuntuのProteusのようなAVRシミュレーター?

コードをコンパイルするためではなく、AVR、主にATMega16用にコンパイルされたコードをシミュレートするためのIDEを探しています...

私はWindowsのProteusに精通していますが、結局のところ、ubuntuでは利用できず、そのためだけにワインをインストールするのは嫌です...

Linuxで利用できるProteusに似たシミュレーター、できればオープンソースを知っている人がいれば、本当にありがたいです。

結果を確認するために小さな変更を加えるたびにチップをフラッシュするのが面倒になっているので、主にRS232信号をシミュレートしたいと思います...

前もって感謝します。

0 投票する
1 に答える
956 参照

audio - サウンド生成に ATMega16 の timer0 を使用する

ATMega16 の timer0 を利用して、PWM パルスを生成し、基本的なブザーでサウンドを出力しようとしています。

しかし、作成する波の周波数を変更する方法を理解するという問題に直面しています (異なるノートを生成するため)。

データシートで、timer0 を使用すると ICR を TOP 値に使用でき、その方法で周波数を変更でき、OCR を使用するとデューティ サイクルを変更できることがわかりました。

同様の方法がありますが、 timer0 または timer2 ですか?

私はすでにタイマー1を使用して何かを制御しているので、最初からやり直す必要があるかどうか疑問に思っています:(

前もって感謝します、

どんなアイデアでも大歓迎です

0 投票する
2 に答える
9893 参照

c - rs232 から uart への複数バイトの読み取り (avr atmega16)

PC から atmega16 にシリアルで 4 バイトのデータを送信しています。私はUARTを使用しています。1 つの手法は、データシートで指定された関数を使用することですが、ポーリングを使用するため、コードの残りの部分をブロックします。だから私はwhileループを使用しています。しかし、whileループが始まるときのコードの構造を理解できません..これで私を助けてください. thnx

0 投票する
2 に答える
662 参照

c - AtMega16 LED キューブ

コードは LED キューブ用で、新しい機能を追加したいと考えています。誰かが PORTB0 に接続されているプッシュボタンをクリックすると、現在のライト効果が変更されます。

私は何かを試してみますが、うまくいきません。

プログラムは ATmega16 用で、コードは Atmer Studio 6 で書かれています。

コード