問題タブ [attiny]
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.
c++ - ATTiny84A および RFM12B モジュールが RF12 で動作しない
RFM12B トランシーバーを搭載したデバイス間でデータを送信する必要があるプロジェクトを行っています。私は pingPong の例で RF12 ライブラリを使用しています - 何も変更されていません。
私のマイクロコントローラはATTiny84Aで、配線はここで見ることができます
私の問題は、それが単に機能しないことです。初期化はうまくいくようです。最初の数秒間 rf12_canSend() も true を返しますが、その後は false を返します。私の推測では、何らかのデータを送信し始めていますが、何らかの理由で送信できません。問題が何であるかについての手がかりはありませんが、私の唯一の推測は、正しいピンを使用していないということですが、例に従っています。
LED は無視してください。テスト用です。
arduino - ATTiny84a と RFM12b の問題
arduino用のJeelibライブラリを使用してattiny84aとRFM12bをセットアップしようとしています。arduino では完全に動作しますが、ATTiny では動作しません。私たちは、運の悪い木の日々の問題を解決しようとした3人です.
ソフトウェアを小さなものに簡単にアップロードできます。問題なし。データを送受信できないことを除けば、すべて問題ないようです。現在、端子 6 (PA7) のダイオードを点滅させてデバッグを行っており、init メソッドで終了していますが、それ以上は進んでいないかのようです。
これがATTinyの図面です。小さなものの間違った名前を気にしないでください。第1ターミナルは右上からスタート。
みそモシワイヤー(緑)のサーバータイムを切り替えてみました。Slave Select (黄色) の有無にかかわらず、その他多くのものを試しました。
私の質問は次のとおりです。写真の配線は大丈夫ですか?
arduino - ATTiny と Uno が接続されていない NRF24L01
この配線図を使用して NRF24L01+ モジュールに接続された ATTiny85 があります。ATTiny85 は定期的にスリープに入ったりスリープ状態から抜けたりして、受信機である Arduino Uno に何らかの値を送信します。ATTiny が Arduino 電源 (3.3v) で動作している場合、すべて正常に動作します。約 3v を供給する別の CR2032 コイン電池から ATTiny を実行すると、Arduino はデータをまったく受信しません。ATTiny が正しく起動していることを確認するために、ATTiny にステータス LED を接続しています。両方のコードは次のとおりです。
編集: Uno からではなく、外部の 3.3v に接続すると、すべてが機能します - コイン電池の電圧が機能しないのはなぜですか? すべての定格が CR2032 の最小値である 2.8v を下回っていると思います。
ATTinyコード
受信者コード
ここでの問題は、接続を確立するために ATTiny と Uno を同時にオンにする必要があることですか、それともバッテリーと関係があるのでしょうか、それともまったく別のことでしょうか? どんな助けでも大歓迎です。
microcontroller - Attiny13 クロック周波数と ADC
SPIを介してarduino UNOによってプログラムされたAttiny13 AVRを使用しています。
attiny13 のコアと、boards.txt ファイルの内容を次のように見つけました。
attiny13 をプログラミングするとき、ターゲット ボードとして「Attiny 13A スタンドアロン 9.6Mhz」を選択します。
したがって、9.6Mhz で動作することを期待しています。
TCCR0Bレジスタを次のように設定して、「プリスケーリングなし」を取得します
また、TCCR0A レジスタを変更して、PWM モードを「Fast PWM」に設定します。
これらの設定で、9.6Mhz/256 = 37.5 Khz の PWM 周波数が得られるはずです。ただし、PWM の出力を駆動用の MOSFET と LED ストリップに接続すると、MOSFET からブーンという音が聞こえます。
37.5Khz は可聴周波数ではないため、時計が 9.6Mhz で動作していないと考えるようになりました。
そこで、クロック周波数のトピックについて別の簡単な検索を行ったところ、次の Web ページが見つかりました。
https://www.avrprogrammers.com/howto/sysclk-prescaler
間違っていなければ、このページには、私のクロック周波数はデフォルトで 8 分周されていると書かれています。
除数を取得できないようにするには、すべてのビットをリセットする必要があります。
そうして、すべての CLKPS ビットをリセットしました。
したがって、理論的には、除数 1 で 9.6Mhz のクロック周波数が得られるはずです。
前述の設定をすべて使用すると、ブーンという音が聞こえなくなりました。
しかし、今回は別の問題が発生しました。
明るさを制御するためにポテンショメータを使用しています。クロック除数を「1」に設定すると、ポテンショメータの動作が変わりました。ポテンショメータを回してもアナログ入力はすぐに値を読み取らないので、最小輝度を得るためにもう少し回す必要があり、ポテンショメータの反対側に到達する前に最大輝度に達します。だから、ADCに何か問題があると思います。
アナログからデジタルへのコンバーターのタイトルの下に、次の情報が見つかりました。
デフォルトでは、逐次比較回路で最大の分解能を得るには、50 kHz ~ 200 kHz の入力クロック周波数が必要です。10 ビットより低い分解能が必要な場合は、ADC への入力クロック周波数を 200 kHz より高くして、より高いサンプル レートを得ることができます。
したがって、私のクロック周波数は 9.6Mhz で、ADCSRA レジスタのプリスケーラを 9.6Mhz/20Khz= 48 と 9.6Mhz/50Khz = 192 の間に設定する必要があります。ADPS2、ADPS1、および ADPS0 の 3 つのビットすべてを設定する必要がある分周係数 128 を選択しました。
これにより、3 つのビットすべてが設定され、ADC の周波数が 50Khz ~ 200Khz に維持されます。
ただし、ポテンショメータからはまだ同じ動作が得られます。
どこが間違っていますか?
arduino - ATtiny85 eeprom は arduino IDE で書き込みます
問題があります。ATtiny から EEPROM を読み取ることはできますが、何かを書き込むことができません。
これが私のコードです:
編集
今私の書き込みコードは次のとおりです。
そして私の読み取りコード:
私は常に値 255 しか取得しません。すべてのアドレスで。次に、int を byte に変換します。私の場合、int は 255 を超えません。
ところで、int を byte として作成できますか? ということで、普通の int のように使えますが、直接書けるのでしょうか?
arduino - Attiny85 EEPROM 消去、停電後
Attiny85 の電源を切ると、EEPROM データ全体が失われます。私はArduino IDEを使用していますが、シリアルフィードバックが得られるため、EEPROMが書き込まれたと確信しています。ここに私のコード:
ありがとうございました :)