Arduino初心者熱烈大歓迎質問スレ part24
■ このスレッドは過去ログ倉庫に格納されています
すまんtiny85の高電圧はパラレルじゃないわ高電圧シリアルだ
ピンたんねーしな BODの設定は乾電池駆動の場合、1.8Vでいい?OFFでいい?
@OFF
A1.8V (1.7?2.0V)
B2.7V (2,5?2.9V)
C4.3V (4.1?4.5V) BODの設定は乾電池駆動の場合、1.8Vでいい?OFFでいい?
@OFF
A1.8V (1.7-2.0V)
B2.7V (2,5-2.9V)
C4.3V (4.1-4.5V) >>283>>284
動作保証が1.8Vからだしちゃんと動いて電池切れたら止まって欲しいなら1.8Vで
マイコンの動作保証はなくなって正しく機能しなくなるかもしれんが
動けるとこまでもがいて欲しいならBoD禁止でいんでね
そもそも1.8Vだと4MHzまでしか動かん(保証内で)がその辺は大丈夫か?
クリスタル用の発振器も全振幅モードだと2.7V以上無いと駄目だし
内蔵RC発振器に設定した上で分周してやらんとあかんのでは
措置済みで余計はお世話ならすまん >>280
> ICSPはRESETが必要なため
なんとなくそんな危険な匂いがしてましたw
> 1バイトは解放されてるわけで
すぐ開放するからっても割り込みがあれば、スタック積んだとこに更に積まれるわけで
なんせ63byteしかないですから
>もしアセンブラがインラインで書いてある場合は関数呼び出しじゃないので…
それはそうですね
今いじってるのは
extern "C" {
void TxTimedByte(char, char);
}
で定義された関数なので、1つ目の引数はr25+r24、2つ目はr23+r22へ渡されます。
値が入る前のr22-r25は当然保存されていると思われます。
charなので上位byteのr25,r23は0が入ってて自由に使えるはず。
そして1ビットシフト命令しか無くてくじけました…
スケッチで定義してもスケッチより先にコンパイルされてしまうので
苦肉の策で、プラットフォーム毎に使用ピンを設定するようにしました。
こんなかんじ
#if defined (__AVR_ATtiny13__)
#define UART_Tx 3
#elif defined (__AVR_ATtiny44__)
#define UART_Tx 2
#elif defined (__AVR_ATtiny85__)
#define UART_Tx 1
#elif defined (__AVR_ATmega328__)
#define UART_Tx 0
#else
#define UART_Tx 0
#endif >なんせ63byteしかないですから
Ttiny85だけじゃなくて、Ttiny13Aでも使うので63byteです >>286
ん?ビットシフトで挫けたってどういうこと?
どういう処理が書きたかったの >>286
オマケの話だが
3バイト以内のスタックならpush/popを使わずにout/inでGPIOR0〜2レジスタに避難する小技もあるぜ
GPIORnはその名の通りプログラマが自由に使っていいIOレジスタだ
フラグを持たせたりグローバル変数代わりに使ったりしてもいい
しかもin/outが使えるからRAMよりも1クロック早くアクセス出来る
さらに一部のGPIORはsbi/cbiの対象アドレスに有るからフラグに使うとsbic/sbisで高速分岐したり…
まぁ今回は空き確定のレジスタがあるから退避する必要はないが小技として書いておく ごめん13Aで使いたいんだったか
13AにはGPIORはないんだすまない
まぁ余談って事で許せ >>291
そういうのは無いんじゃないかな
実機デバッグもArduinoじゃなくてただのAVRとしてAtmelStudio使わないと出来ないし
JTAG対応のAVRを積んだArduinoが出たらワンチャンあるかも? 質問があるのですが、
X-CTUでArduino側のXbeeモジュールを動作させるとき、認識しなくなったのですが、
http://blog.prhyzmica.com/?p=110
このサイトの、3.Xbeeまわりで詰まったこと
にある、
ArduinoのリセットとGNDをつないでショートさせる
と言う部分を実行すると動作するようになったのですが、なぜこのようにすると動作するようになったのですか?
理屈がわからないので教えてほしいです。 Xbeeボロボロだな
なんでWROOM02や32買わずにこれ買う人がいるのか不思議だ >>293
ワイヤレスプロトシールドの回路を見たけど、けっこう危ういものに見える。
1本のUARTを共用するのだし、仕方がないか。
https://www.arduino.cc/en/uploads/Main/arduino_WirelessShield_SD_v3-schematic.pdf
UNOのUARTが、Xbeeと、UNO上のUSBシリアルの両方に繋がっているものだから、
XbeeとUNO上のUSBシリアルを通信させるときには、UNOのUARTは無効になっていないといけないということだろね。
そのためにはリセットが簡単な方法なんだろう。 >>296
293です。
教えて頂き、ありがとうございます。 そういえば、
UNOのRESETをGNDに接続しといて、TX,RXピンにつなぎたい物させば
USBシリアルとして使えるという裏技があったな
ちょっとどこいったかわかんないって時には覚えておくといいかも知れない。 つーーかarduinoの大嫌いなところは唯一のuartを書き込み&デバッグ用に占有したままな所 >>299
常に通信しているようなプログラムは確かにだめだし、書き込み時、外さないといけないけど、TXにシリアルプリンタつないだRXを割り込みピンにしたりして使ってる。 >>299
逆に言えばArduinoが普及した理由でもあるわけだな。
単体のマイコンとシリアル変換ICで実装してみれば初心者にゃハードルが高いとわかること。
嫌ならマイコン単体でやれよ、なぜArduinoに文句たれてる、馬鹿丸出しだぞw >>299
328PB使えよ
UART2個付いているぞ >>304
まぁarduino出た当初には存在してなかったからね
今ならまぁそれならいいと思える >>302
馬鹿でもなんでもいいわ
せめて644pだっけ?もう型番規則忘れたwあの辺使ってuart1つはユーザーに開放して欲しいと思う
まぁあの辺のマイコンじゃ書き込む環境も一括りにするのはあの当時じゃusb対応マイコン少なかったし難しいのは重々承知の上で、やはりuartは1つは欲しいところだと思う >>307
元々は大学の格安のマイコン実習用から始まって音楽とか非エンジニア向けのコントローラとして広まっていった開発環境だからコストが一挙に上がるICEが使え無いのはしょうがないね。 むしろ、
追加でART欲しいならソフトウェアでやってね
ハードな方は初心者のために取っといてやって
というスタンスなんだろ。
文句言うだけの無能のことは眼中に無い。 >>307
arduinoのオプションでjtagice互換のやつとか安く出してくれればよかったと思う
avr dragonみたいなやつ ADCのマルチプレクサのようなCH切り替えをUARTにも付ければよかったんだと思う
スケッチのアップロード時にはDTRからResetパルスが送られるが
これに同期してUARTの入出力をデバッグCHに切り替える
ブートローダーの終わりかスケッチの先頭でユーザーchに切り替える
というふうなシールド作って独自のブートローダー書けば解決できそうな気がする
ESP8266みたいにgpio1本犠牲にして内部でそれをやるという手もあるよな ESPでradikoが聴けたら10個ぐらい作ってると思うわ
ffmpegのESP版があればなあー 音声のデコードはデコードICに任せたらいいけど(radikoのコーデックHE-AACなのでAACに対応できれば)
swfから鍵の抽出とかrtmpのストリームとかespには荷が重そうな気がする その手のネット端末は、2000円で買える中古のスマホ買うのが最安だろうな いつもはArduino as ISPでbootloaderを書き込んだりしてるのですが、
FT232RLを眠らせておくのはもったいないと思い情報を集めて
avrdude-serjtagとavrdude-GUI-1.0.5でFuseBitの読み書きまでできました。
これは本家avrdudeに取り込まれたと告知にあったので、
avrdude.confを見ると id = "arduino-ft232r"; と定義されていました。
ところが、
ude.conf -c arduino-ft232r -p m328 を実行すると
avrdude.exe: error: no libftdi or libusb support. Install libftdi1/libusb-1.0 or
libftdi/libusb and run configure/make again.
上記エラーとなり、
https://forum.arduino.cc/index.php?topic=543678.0
こちらのトピでもavrdude6.3でft232r動かないと言ってる人がいます。
ArduinoIDE1.8.7 のavrdudeはversion 6.3-20171130でした。
1.8.8なら動くとか修正パッチがあるとか情報あれば教えて下さい。 >>321
それなw
結局、radiko専用スマホが最適解www >>322
エラーメッセージにある通り基本FTDIのドライバーなどが組み込まれていません。
ソースを入手してビルドすれば使えます。 >>324
レスありがとうございます。
本家に組み込まれたと書いてあるページもあり
avrdude.confに設定はあったので
組み込まれていないのは残念です。
FT232Rは非常手段として残しておいて
いつものArduino as ISPを使います。
gui-toolは便利そうでしたが、6.3に対応していないようでした。 AVR用のツールだがftavrwguiをダウンロードしたらええよ ftavrwgui に一致する情報は見つかりませんでした。
・キーワードに誤字・脱字がないか確認します。
・別のキーワードを試してみます。
・もっと一般的なキーワードに変えてみます。 ftavrw-gui
約 120 件 (0.32 秒) 前スレ
>>205
>>857
あたりに回答があるよ >>332
QFPのものもあるよ。
DIPは次のようなことじゃないかな?
DIPのものはソケットで付いているから、抜き差しが前提になってるわけだし。
・UNOで試作してから、DIPを抜いて自分の基板に載せかえる人の需要
・I/Oは外部の危険な信号に接している。万一、壊れたときに載せかえられることに安心を感じる人の需要 まぁまずブートローダー書き込んで差して使うというのがやりやすいってのはあるね
次に万が一壊しても差し替えられる unoは試作・実験マシーン!
組み込みはPro mini micro! 母艦から発進したPUはprominiの1/4のサイズ
コンパクトで高性能! 組み込みに最適
つか14pinくらいで充分だよな 十分、あるいは充分というのは自分に対して言えるのであって、他人に対して言えることなんて滅多にないよな。 お、おう…
別に押し付けるつもりはなくて、ちょっと同意が欲しかっただけなんだからね! Arduino化したESP32の質問です
HiLetgoRのESP32開発ボードを使っているのですが
ENボタンでリセットするとシリアルの出力が異常なデータになります
電源のリセットや書き込み時のリセットの場合は正常です
https://i.imgur.com/7NWz5nq.png
何か解決方法はありますか?
プログラムは以下の通りです
void setup() {
Serial.begin(115200);
}
void loop() {
Serial.println("test");
delay(1000);
} ESPは使った事無いけどsetup関数の初期化がミスったとかシリアルのデータフレームのビット位置がずれたとかリセットで変なゴミビットを拾ったとかかな?
ボーレートを9600やsetup関数の最初に数秒のウエート関数入れても病状は変わらない? >>340
回路図は?
プルアップしてコンデンサでプルダウンもしないと不安定。 原因が判明しました
ESP32が起動時にブートメッセージを76800bpsで出力するのが原因でした
不具合ではなく正常な仕様なのでとりあえずこのまま使うことにします
>>341-344
アドバイスをありがとうございました >>345
原因判明おめ。
こう言うとき安物でもオシロかロジアナが有れば直ぐ分かるんだけどね。 >>346
は?
ボーレイト違いなのに気付いてなかったのが原因なのに?
どうやったら直ぐ分かるのか解説よろしく。 >>347
オシロ、ロジアナで見れば期待している信号かどうかわかるでしょう? >>346
>>348
正論なのになんか変なのに絡まれてて可哀想(^^; esp使う時は76800でシリアルを使うようにすれば解決なのです。
ちょっと辺な値だけどね… 寧ろ多pinのArduino出して欲しく
1280pとか >>349
多分オシロ使ったこと無いんだど思う。
勿論シリアル端子の波形見るだけでもレートが変わったのは分かるけどRIGOLの数万円の入門モデルでさえプロトコル解析できるのに。。。 ESP8266/ESP32は起動時にシリアルに吐くの散々FAQじゃないか
あと、専用スレあるので、そっち行った方がいいと思う。 遊びレベルなら中華の800円ロジアナとpulseviewでも
ボーレートが違うくらい即わかるんだよなぁ >>353
普通のオシロじゃ無理クナイ?ストレージオシロかロジアナじゃないと。素のオシロってまだあるよね。安いやつとか。 HTMLから文字列を抽出したいんだけど、
HTMLパーサーの良いライブラリってある? >>357
まぁ今時は普通のオシロって存在しないに等しくてオシロ=DSOって状態ですからね
そしてプロトコルアナライザも当然みたいな。
アマゾンで1000円くらいのezfx2使ったキャプチャのやつでさえプロトコルアナライザ使えるし。
analog discoveryやdigital discoveryなんかでもarduino使いには十分な帯域あるしこの辺は持っていてもいいかと。 >>360
目的と予算書かないと答えようがない
テクトロで100万も出せばいいじゃんってなっちゃう >>360
1000円程度なら
HiLetgo 24MHz 8チャンネル USBロジックアナライザ
とか。
1万台だとlap-cとかかなぁ
3万出せるならanalog discoveryかdigital discoveryのどっちか
lap-cはごにょごにょ出来るのとお手軽な価格ですごく売れたイメージがある
持っていて損はないと思う ロジックアナライザがあるとRFリモコンのシリアルにどんなの流れてるか見れるなあ
古いアナログオシロとDSO150しかないや、
FPGAのキットでなんか作った記憶があるけどどこいったかわからん
ESP8226でロガー的なもの作ってみようかしらん >>363
オプティマイズのやつかな
あれも当時ありがたかったね
今時でああいうの出せばオープンソースで盛り上がった気がする
といっても今ならlap-cでいいじゃんと言われりゃそれまでだけど 超音波センサーのus-020ってのは、
どこにも売ってないんでしょうか?
出来るだけ距離が長いものを使いたいです。 オプティマイズのロジアナって EZ-USB を使ったものだったんじゃなかったっけ。
今、巷にあふれている1000円ロジアナはそういうものだし。
当時と違うのは sigrok みたいな使い易いソフトが存在することかな。 >>371
あらためてカメレオンUSBを調べてみたら、CPLDと組み合わせた製品だった。
今の1000円ロジアナは、EZ-USBだけだ。絞ってるな。 arduinoIDEのフォント変えたらめっちゃ見やすくなった
preferences.txt を開きエディタフォントをメイリオに変更
editor.font=Monospaced,plain,15
↓
editor.font=Meiryo,plain,15
コンパイル結果とか出るとこも背景黒で眼にキツイんで
\Arduino\lib\theme\theme.txt を開き
console.font = Monospaced,plain,11
console.color = #000000
console.output.color = #eeeeee
console.error.color = #E34C00
↓
console.font = Meiryo,plain,11
console.color = #ecfffc
console.output.color = #000000
console.error.color = #aa3300 raspberry piのraspbian上でarduino IDEを動かすと安上がりだけど、非対応のモジュールなんかがあって悲しくなった >>374
すんません 非対応モジュールって、マイコンハードウェア?ライブラリ?ラズパイのモジュール? ヒューズ書き換えをミスってpro miniが文鎮化した
↓このブログの通りやってもチップIDが0xFFFFのままだわ
「レンガにしちまったpro miniの救出作戦。mega328pヒューズリセッターに挑戦(^^」
3.3V8MHzのpro miniだからダメなのかな。もう諦めたほうが良いかな・・・ >>376
なんかこのやり方の部品費でProMini(中華)買えそうやなw 自分はやったことないけど、このブログにあるようにターゲットのPB6/Xtal1にどう接続するかがカギっぽいな ■ このスレッドは過去ログ倉庫に格納されています