問題タブ [avr]

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 投票する
8 に答える
1456 参照

c - 1kのプログラムスペース、64バイトのRAM。1線式通信は可能ですか?

(怠惰な場合はTL; DRの下部を参照してください)

こんにちは、私は物理コンピューティングを扱う新しい(プロトタイプ)プロジェクトを構築することを計画しています。基本的に、私はワイヤーを持っています。これらのワイヤはすべて、同時に電圧を読み取る必要があります。各ワイヤの読み取り値の差が数百マイクロ秒を超えると、ワイヤが完全に台無しになります。Arduinoは約114マイクロ秒かかります。したがって、待ち時間が読み取りの精度を歪める前に、私が読み取ることができるのは2本または3本のワイヤです。

ですから、私の計画は、一連のATTinysの「マスター」としてArduinoを使用することです。arduinoはスペースがかなり狭いですが、小さなものに比べると巨大な遊び場です。ATTiny13Aには、1kのフラッシュROM(プログラムスペース)、64バイトのRAM、および64バイトの(耐久性がなく低速の)EEPROMがあります。(サイズだけでなく価格もこれを選んでいます)

私のシステムのATTinysはあまり効果がありません。基本的に、マスターからの信号を待ってから、1本または2本のワイヤーの電圧を読み取り、RAM(または窮屈な場合はEEPROM)に保存するだけです。そして、データ用に1本のワイヤーだけを使用してマスターに送信します(それ以上のスペースはありません!)。

これまでのところ、私がしなければならないのは、(組み込みのADCを使用して)簡単な電圧読み取りコードを実装することだけです。しかし、私が心配しているこのコミュニケーションビット。そのような制約の中で通信プロトコル(1本のワイヤーを使用するだけです!)を実装することさえできると思いますか?

TL; DR:1k未満のプログラムスペースと64バイトのRAM(および64バイトのEEPROM)で、1-Wire通信プロトコルを実装することは可能だと思いますか?フィットさせるためにアセンブリにドロップする必要がありますか?

現在、WiringライブラリにリンクしているArduinoプログラムが8kを超えていることを知っているので、少し心配しています。

0 投票する
4 に答える
5618 参照

embedded - SPI を使用した SD カードの初期化

MMC/SD カードに関する多くの情報を見て、これを読み取るためのライブラリを作成しようとしました ( Procyon AVRlibを変更します)。

しかし、ここでいくつか問題があります。私は元のコードを変更せず、ここで試しました。私の問題は、SD カードの初期化に関するものです。256 MB と 1 GB の 2 つがあります。

CMD0、CMD55、ACMD41、CMD1 の順に init コマンドを送信します。

しかし、256 MB の SD カードは、各コマンドに対して 0x01 応答しか返しません。CMD1 を何度も送信すると、256 MB の SD カードは常に 0x01 のみを返し、0x00 を返すことはありません。

1 GB SD はもっとクレイジーです... CMD0 は 0x01 で戻ります。いいのですが、CMD55 コマンドは 0x05 で応答します。それ以外の場合は 0xC1 で応答し、次のインタラクションで 0x5F とともに 0xF0 で応答することもあります...

インターネットの周りには情報と例がありますが、少し混乱しています。ここで私のプロジェクトでは、1 GB カードを使用する必要があり、SD アダプター付きの microSD カードを使用しようとしています (これは問題ではないと思います)。

この問題を解決するにはどうすればよいですか?

PS: 私の問題は Stack Overflow の質問Initializing SD card in SPI issuesの問題に似ていますが、解決策は私の問題を解決しませんでした。1 GB SD カードは 0x01 しか返さない... :cry:

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

microcontroller - 8051 マイクロコントローラ キットの推奨事項は?

私は、マイクロコントローラーの開発を始めようとしているコンピューター サイエンスの 1 年生です。8051はダートとして一般的で、実社会での使用頻度が高いので使いたいです。

3 年生または 4 年生の間に、PIC マイクロコントローラ ベースの組み込み設計のクラスを受講する予定なので、今は PIC を取りたくありません。そうしないと、そのコースでかなり退屈してしまいます。

私が目にするほとんどの商用キットは、AVR または PIC シリーズのマイクロプロセッサ用です。まともな開発ツール、ドキュメンテーション、および初心者が夏に専念できる十分なアドオンを備えたものを探しているだけです。

8051 ファミリ キットの推奨事項はありますか? ありがとう!

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

avr - AVR JTAGICE mkⅡ

オリジナルの Atmel jtag プログラマーの価格は 300 ドルです。

http://www.atmel.com/dyn/products/tools_card_v2.asp?tool_id=3353

http://search.digikey.com/scripts/DkSearch/dksus.dll?site=us&lang=en&mpart=ATJTAGICE2

どのクローンをお勧めしますか? それらは 100% クローンですか? (avr studio、同じ FW などで動作)

ありがとう。

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

avr - USARTを使用してavratmega32をシフトレジスタに接続しますか?

TXDピンを介してUSARTを使用してATMEGA32マイクロコントローラーをシフトレジスタに接続したいのですが、シフトレジスタは受信したデータに対してシリアルからパラレルへの変換を実行します。ただし、ご存知のように、シフトレジスタにはクロッキングが必要です。このクロッキングは、XCKピンを介してボーレート周波数でマイクロコントローラを介して供給されます(ここでは、USARTはマスター同期クロックジェネレータとして機能します)。私の問題は、XCKからこれらのクロック信号を取り出す方法がわからないことです。

ありがとう

0 投票する
5 に答える
1261 参照

c - main()を呼び出すときにavr-gccがわざわざレジスタの状態を保存するのはなぜですか?

avr-gccプログラムのmain()関数は、レジスタの状態をスタックに保存しますが、ランタイムがそれを呼び出すと、マイクロコントローラーでは何も戻らないことがわかります。これはRAMの無駄ですか?この状態の保存をどのように防ぐことができますか?

0 投票する
8 に答える
2822 参照

c - C変数変数

PHPでは、私は次のようなものを持っています

Cで同様のことをする方法はありますか?

基本的に私は、AVRでのIOピンの操作を簡単にするための一種のライブラリを作成する方法を理解しようとしています。したがって、たとえば、特定のピンをOUTPUTに設定する関数があります。AVRのそのピンはPORTBの一部です。それを出力に設定して値を与えるには、定数と定数を参照してそれらの値を設定する必要がありDDRBますPORTB。そのすべてを実行するのではなく、などの関数を呼び出せるようにしたいと思いますSetMode(Pin #, Mode);。私はそれを行う方法を理解することができません。

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

embedded - avrdude と atmega48pa

avrdude で atmega48pa をプログラムできますか? 署名に問題があります...

/etc -directory の avrdude.conf にいくつかの新しい行を追加しました

しかし、今は別のエラーが発生します


編集 - 1

「-vvv」を使用したデバッグ情報を次に示します。

質問

誰かがatmega48pa aith aavrispmkiiをフラッシュするのを手伝ってくれますか

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

hardware - 「HI2COUT」についての詳細情報はどこにありますか?

MCP23017 の I2C インターフェースを ATtiny13A でビットバングしようとすると、多くの場所で HI2COUT が I2C バスでデータを送信する方法として言及されていますが、これが言語の一部なのかライブラリなのか説明なのかわかりません呼び出されたときの動作。質問:

1) HI2COUT に関する情報はどこで入手できますか?

2) MCP23017 と接続したことがある場合、1 つ (またはすべて) のピンを出力として設定し、HIGH に設定する適切なシーケンスを投稿できますか? (これには、開始、書き込みアドレス、書き込みレジスタIOCON、...、停止などが含まれます...)

3)誰かがこの質問により適したサイトを知っている場合(または答え)教えてください。

0 投票する
7 に答える
5090 参照

c - 組み込みプロセッサ用の高速斜辺アルゴリズム?

sqrt(a² + b²)ハードウェア乗算を行わずに組み込みプロセッサで固定小数点演算を使用して、角度の斜辺を決定するための巧妙で効率的なアルゴリズムはありますか?