Arduino初心者熱烈大歓迎質問スレ part23
■ このスレッドは過去ログ倉庫に格納されています
5vのUNOと3.3vのprominiは何がどうちがうんですか? 3.3のほうのVCCに5Vいれても大丈夫なのかが尻体です ミスって何度か5V繋いだけど一つも壊れてないが辞めたほうがいい たとえば ATMEGA328P のデータシートには
Input High Voltage の Max が VCC+0.5V と書いてあるので
3.3V に 5V 入れたらダメです >>566
自分はやったこと無いけど3.3V版のPro miniはクロックが8MHzだから5V入れても動作が遅いだけで問題は無いと思うな。
どうせ中華Arduinoだろうし高くても300円位なんだから壊しても大したこと無いでしょ? >>568 は >>557 への回答的なことを書いてしまったが
VCCに5V 入れるのは周りもちゃんと5V対応になってれば平気かと 557です。
3.3v_prominiが届いたので、色々実験してみます。
電源についてはコイン電池で動作確認できました。oledとrtcも並列に繋いで動作してしました。
取り敢えず時計は出来ました。
ただwebで調べてもロジックレベルは出てこないんですよね。 回答書いてあっても無視してたら誰も回答しなくなるぞ >>573
557です。
私はロジックレベルについてしか伺っていません。今のところはっきりとした回答はいただいてません。
多分vccについて質問した別の方と勘違いしているのではないかと思います。
私も分かったことがあったら報告しますね。 どんくらいのレベルの初心者かわからんのがなぁ
1. 回路図を探してよく見る
2. 回路図内のマイコンのデータシートを探して読む
って詳しく書かないといけないのかもな 初心者レベルを3段階ぐらいに自己申告するルールが必要だなw >ロジックレベルは5vでいいんだよね。
ロジックレベルが何なのか理解しているような質問
>ただwebで調べてもロジックレベルは出てこないんですよね。
>私はロジックレベルについてしか伺っていません。今のところはっきりとした回答はいただいてません。
「ロジックレベルとは何ですか?」なら欲しい回答が得られたかも知れない
あと>>558にレスしてないので理解度が計れない 追うの面倒だから無視するけど。
次からはレス番に>>つけとくれ。 回答者なのに質問者様にあれこれ要求するやつって幼稚すぎるんだよ
知恵袋にでもいってろって 質問者なのに回答者様にあれこれ要求するやつって幼稚すぎるんだよ
知恵袋にでもいってろって ・回答者はエスパーではありません。状況が分かるように詳しく書きましょう
詳しく書いてくれないと、答える方も困ってしまいます。答えようがないのです
>>1を叩けw 違うな、本件は
質問が不明確なのに回答が無いとボヤいてるのだから たどるの面倒だから>>580を借りて答えれば、
>ロジックレベルは5vでいいんだよね。
いいえ。
>ただwebで調べてもロジックレベルは出てこないんですよね。
そうですか。
>私はロジックレベルについてしか伺っていません。今のところはっきりとした回答はいただいてません。
ざまあみろ。
で終了。 データシートに横軸VCCで縦軸ロジックレベルのグラフあるやろ >>587
そうは言ってもさぁ、小学生相手でもあるまいし、
今更、足し算引き算レベルの説明するのも面倒だぜ >>591
ここ回答者のレベルが低いし、性格悪いのが混ざってるよね。 データシートへのリンクや該当箇所はどこかなど詳しく教えてあげればいいじゃん
それが嫌なら書き込むなよ
ところでロジックレベルはなぜVCCの影響を受けるのですか?
優しく教えて下さい^^ >>591
昔からPICスレに根性の悪い「腐ったリンゴ」がいて、
そいつがアチコチのスレに出没して、腐敗を伝染させるんだよ。
少し我慢するとか、言葉を選ぶとかすれば、こんな事にはならないのだが、
売られた言葉を喜んで買う奴もいるし、
ムリだろうなw >>557 はVccが3.3Vでも入力は5Vトレラントですか?
という質問にも見えるな >>598
数メートルとありますが、20cmケーブルでもノイズで通信障害がおきました >>599
20cmでエラー!?
プルアップ抵抗は入れてるよね?
http://www.wsnak.com/kit/i2cspi/abouti2cspi.html
可能な範囲で低い値のプルアップ抵抗を入れても僅か20cmでもエラーが出るんならGNDをしっかり配線してないか、ボードとIC個々のVccとGND端子間に0.05〜0.1μF(ボードは数10μF)くらいのパスコンを入れてないのでは?
それでもエラーが出るんなら電源の容量不足かノイズ(ソレノイドとか電流サージがある負荷など)、あるいは外部ノイズだろうけど、ほんとはオシロスコープがあるとトラブルシューティングが楽なんだけどね。 SPIの各信号線をSN75176、LTC485などで強化すれば1200mの長距離もOK、てかw >>604
クロックは落として、プルアップは低めに LANケーブルを導線としてI2C通信に使うと結構ノイズ耐性あるとかないとか LANケーブルの伝送インピーダンス100Ωで整合させればな。 jjy受信モジュールをlanケーブルで3m位離したけど、通信は安定してたよ 使用している点キー配列を解析したところ12ラインあり、
(numの上にesc /の上にtab *の上に= -の上にBS)
1-7はDiode
1.BS,-,+
2.Enter,0,.
3.3,2,1
4.4,5,6
5.num,=,8
6.Tab,9,7
7.ESC,/,*
8.=,*,9,6,3,Enter,-
9.TAB,/,8,5,2,.,BS
10.ESC,Num,7,4,1,0,+
11.LED(num)
12.LED(num)
となっております
これ、Arduno microで作れるマトリクスでしょうか? Arduino micro は12本以上GPIOあるから 7本(1-7)x3本(8-10) での21キー対応のマトリックス処理+2本でLED処理まで出来るかと WEMOS XI 届いたけど全然書き込めない。
誰かヒントくれ。 WEMOS XI、ちょっぴり高機能なArduino互換機
https://ehbtj.com/electronics/wemos-xi-lgt8f328d/
>使うにはIDEに WEMOS XI のパッケージをインストールする必要があります。
>GitHubから WEMOS XI 用のパッケージをダウンロードしてhardwareフォルダに入れます。 >>614
ありがとう、それはやりました。
普通のPro Miniは書き込めてるので
それと違うコツみたいなのがあったら教えてください。 >>600
オシロスコープを買って波形を見ました。
arduino mega 2560
黄 ch1 MISO arduinoピン50番
青 ch2 SS
プルアップ無し
https://i.imgur.com/cC3woME.jpg
4.7kΩプルアップ
https://i.imgur.com/fdw9WX9.jpg
電圧差がやたら小さく、プルアップ抵抗を接続すると波形が歪みます。
ブレッドボードを使用しています。
何が原因でしょうか 追記。
負荷としてICは接続していません。
測定装置だけ繋いでいます。 >>616
mega側がマスターなのでMISO端子は入力モードになって、スレーブになるセンサー側のMISO端子が接続されてなければ、抵抗でプルアップしてるだけだから端子電圧がVcc付近で問題ないよ。
つまりプルアップ抵抗が有効な証拠。
この状態でセンサーを接続して具体的に通信させて見たらMISO端子の波形はどうなる?
またmegaのMOSI端子から(ダミーで大丈夫)データ出力すると波形はどうなる? >>618
オシロがあるから念のためSCLK端子も波形の確認した方がいいな。 >>618
何も接続してない状態でデータ出力した波形が>>616です。
後で追加で測定してきます。 >>620
えっ、megaボードの50番ピンは(MOSIじゃなく)MISO端子だからmega側は入力モードになるんじゃないの?
マスターからの出力は(MISOじゃなく)MOSI端子だから51番ピンだよね?
もし自分の勘違いで逆だったとしたらプルアップ無しでほぼGND電位、プルアップ有りでVcc電位だからmegaボードの故障かプログラムミス? V-USBってめんどくさいね
AliExpressで300円のArduino pro micro買ったほうが早いねw >>619
SCLK波形です。
arduino mega 2560
黄 ch1 SCLK arduinoピン52番
青 ch2 SS
プルアップなし
https://i.imgur.com/EMYNVu0.jpg
4.7kΩプルアップ
https://i.imgur.com/C8DLtwV.jpg >>621
MISO波形です。
arduino mega 2560
黄 ch1 SCLK arduinoピン51番
青 ch2 SS
https://i.imgur.com/aBOkUkN.jpg
プルアップ無し
https://i.imgur.com/IYfJKlp.jpg
4.7kΩプルアップ
送った信号は
const int CS; //ssピン番号
uint16_t data = 0x2000;
digitalWrite(CS, LOW);
SPI.transfer(highByte(data));
SPI.transfer(lowByte(data));
digitalWrite(CS, HIGH); >>625
SCLKがノイズっぽいがスレッショルド付近は大丈夫かな。。。
クロック周波数を10分の1とかにしても通信エラーになる?
それとMISO(50番)とMOSI(51番)を入れ間違えてる問題のほうは?
この端子を入れ替えてクロック周波数落としてセンサーを接続しても動かない? >>626
MOSIの波形だけど途中で一瞬立ち上がるヒゲが出てるね。
8bit送信のSPI.transfer()関数を2回使わずに16bit送信のSPI.transfer16()関数を使って1回で送るとヒゲは無くなる?
また >>628 をやってみたらどうなる? >>628
>クロック周波数を10分の1とかにしても通信エラーになる?
現在、
SPI.setClockDivider(SPI_CLOCK_DIV128);
でやっていて、これ以上落とせないです。
>それとMISO(50番)とMOSI(51番)を入れ間違えてる問題のほうは?
>この端子を入れ替えてクロック周波数落としてセンサーを接続しても動かない?
動きました。
AD9833の青いモジュールを動かしています。
https://www.amazon.co.jp/dp/B074FTMRN6/ref=cm_sw_r_tw_dp_U_x_Ep7sCbDGBXE8A
>>629
>8bit送信のSPI.transfer()関数を2回使わずに16bit送信のSPI.transfer16()関数を使って1回で送るとヒゲは無くなる?
SPI.transfer16()に変更しました。
https://i.imgur.com/453ifMZ.jpg
プルアップ4.7kΩ もしMISOが見つからないようなら
MOSIかしたらだけど冷蔵庫に味噌があるかもしれん >>630
んっ、端子を入れ替えたらエラー無くAD9833が動いたの?
SPI.transfer16()はやっぱりヒゲ出てるから内部でSPI.transfer()を2回呼び出してるみたいね。 >>635
動きました。
MISO端子に繋いで時々動いてしまっていたほうが誤動作だったようです。 [ArduinoでI2Cの外付けEEPROMを使う]のブログにあるプログラムのアドレス上限指定をFFFFにしたら止まらなくなるんですが仕様ですか? >>637
以下のfor文の中身が無限ループになるってこと?
for (ADR = startADR; ADR <= endADR; ADR++)・・・・・・
だったらFFFFは unsigned int の最大値(65535)だからADRも最大値はFFFFまでで、更にインクリメントすると0000に戻ってしまって比較文の ADR <= endADR が真になり続けるのが原因でしょ?
関連するコード全部読んだ訳じゃないから他の部分に影響あるかも知れないけど、ROM容量やアドレスに関連する変数を全て unsigned long にするといいかな? >>636
問題解決おめでとう。
三角波やサイン波の最大電圧が0.6Vくらいだから信号出力にノイズ(特にSPI通信中に)が乗らないといいね。 >>638
全部longに書き換えたら解決しました
ありがとうございます 密集した場所にioポート数以上のアナログセンサーを設置してその結果をPCのエクセルに反映させたいと思っています。エクスパンダーシールドというものでioポートを増設する方法もあるらしいのですがそれ以上の個数になっており良い方法があればアドバイス頂きたいです。
・上記シールドを2つ用意し、横に並べるなどし2つ繋げた物をArduinoに繋げることは可能でしょうか?
・構造的には上記シールドに使われているMCP23017を4つ以上使って自作は可能でしょうか?
宜しくお願いします。 >>643
アドバイスありがとうございます。
自信がなかったのですが教えて貰い助かりました。データシートを確認してみます。 Arduino Leonardo ETHでサンプルのWebServerを書き込んで使ってみたんですがシリアルモニタを開かないと何故かLANで通信できません
試しにモバイルバッテリーに刺してみましたがやっぱりLANで通信できませんでした
対処法無いでしょうか? >>646
シリアルの応答を待ってるとか?
シリアル関連をコメントアウトしてみたら? >>647
シリアル関連消したらできました
Leonardoは色々不便ですね もう一つの質問ですが
W5100のチップではEthernet.hが使えてEthernet2.hが使えなくて
W5500のチップではEthernet.hが使えなくてEthernet2.hが使えるのは仕様ですか? >>648
直接USBでPCにつなぐとUSB機器のように使えるから便利なんだけど
UNOとコンパチでは無いので使い慣れないと面倒だよね 優先度の高い割り込みハンドラ実行中に割り込み許可したら、優先度の低い割り込み入って来るよね?
割り込み優先度って、割り込み許可されたとき、それまで保留されてた割り込み要求を、どの順に処理するかってことでしょ? >>652
だよね。ちょっと不安になって書き込んだ。
サンキス 古いウォシュレットのリモコンが壊れたので、
Arduino UNOでリモコンを作りたい(動作と停止のボタン2つのみ)のだが
乾電池駆動の場合、どのくらいの間使えるかな?
実際にリモコンを作ってる人がいたら教えて欲しい
あとAliexpressで買った激安品だけど火を噴く心配はどうだろうか? sleepを使ってボタン押した時だけ動作150mA x 2秒 とすると
乾電池1200mAhで14400回ボタン押せる
1日10回なら約4年使える
---
LEDに流す電流とか電池要領考慮して↑のように計算してみればいいじゃん
自然放電は考慮しなくていいと思う Unoはスリープしても消費電流が絶望的だから他のマイコン使ったほうが良いと思うけど
https://www.gammon.com.au/power SLEEP_MODE_PWR_DOWNで10mAも食うのか… ■ このスレッドは過去ログ倉庫に格納されています