Arduino初心者熱烈大歓迎質問スレ part36
レス数が1000を超えています。これ以上書き込みはできません。
あけましておめでとうございます
本年も色々と教えてくださいませ(´・ω・`) >>4
停止の定義は?
電源止めれば止まるけど欲しい答えはそうじゃないんでしょう HALTがどんな状態を期待しているのか判らないのだけど、消費電力減らしたいならsleep.hで待機させるのが一般的。
いろいろなレベルで縮退運転モードに入れることが出来る。 Z80のHALTはプログラムカウンタを進めずにひたすら同じアドレスの命令をフェッチし続ける実装だったな。
だからDMAでHALT以外の命令に書き換えてやると何事もなかったように実行する。 #define HALT() while(1)
はどうかね >>11
そゆのは基本的にinline関数使え
define使うのはバグ避け考慮が面倒
#define HALT() { while(1); } 電気電子板の初心者質問スレで質問したところここで質問しろとの指摘があったので同じ内容の質問をさせていただきます。
Unity内のカーソル位置を取得しArduinoに転送し、その位置に応じたサーボモータの制御をしたいのですが具体的な方法がわかりません。
windowsとArduino間でシリアル通信を実装し転送する予定ですがarduino側、windows側ともにどのようなプログラムを書けば上手くいくでしょうか。
何週間か試行錯誤していますが一向にわかりません。有識者の方おられましたら教えて頂けますでしょうか。
電子工作というよりかはプログラム寄りの質問になってしまい板違いでしたら申し訳ございません。 どんな方法で転送するのかによる
例えば「Unity シリアル転送」と検索すると
こういう方法が出てくる
https://qiita.com/Ninagawa_Izumi/items/ff8ae0dbb1bf8a120866
要は検索の仕方がまずいんじゃないですか? 元スレでunityのスレに移動するって言ってたからもう来ないのでは。 >>15
その検索はしてませんでした…
PCから通信する事ばかり考えており盲点した。
どうやらUniduinoというアセットがあるみたいですね。
これを使って試してみます。また躓いた時は質問させて頂くかもしれません。 WS2812B LED向けのライブラリ、FastLEDのソースを読んだ人教えてください。
信号線のH/L作成はどうやって実現しているのですか。GPIOではとても間に合わないからPWMかなとも思いましたが、細かいレジスタ切替が必要なはずで複雑になりそうと思いました。 ピカピカしてないやつでも、NeoPixelはデバッグで使ってることある。
配線少なくて済むし 155個も繋げると電気食うんだよな(夜間用の電飾)
5V/10AのACアダプタで賄いました 輝度上げたら電源落ちた思い出w
デバッグは一線シリアルかな >>21
色分け&点滅で多数のエラーに対応できるナイスアイデア! >>18
Adafriut_NeoPixelのソースなら見たことあるが
クロックが何百MHzの機種ならC言語で実現してるが
数百MHz、数十MHzのクロックの機種の場合は機種ごとにインラインアセンブラで実現してるね
ESP32は特殊で赤外線の制御をする機能を使ってるみたい
Raspberry Pi PicoではプログラマブルIO使ってるね
FPGAのTANG PriMerのクロック16MHzのRISC-Vコアで
WS2812Bを光らせることに成功したけど
C言語では無理でインラインアセンブラでギリギリのタイミングたったよ あと、GPIOでWS2812Bを制御する場合は
WS2812Bにデータを書き込んでる間は割り込み禁止にしないと
割り込みが入るとチラチラと変な光り方をするので注意みたいです。 WS2812Bを制御するプログラムを書くには
ロジアナか、ロジアナ持ってない人は高性能マイコンを使って
H/Lのタイミングを実際に計測する必要があるかもしれないね WS2812Bの制御がなんでそんなにシビアなのかというと
0.25マイクロ秒が16MHzのクロックだと4クロック分
0.75マイクロ秒が16MHzのクロックだと12クロック分だからです。
非常にシビアな制御が必要です。 質問です。
for ループで 0から199まで200回ループさせます。
配列a[200]の中身をforループで全部serial.printlnさせたいのですが、たまに出力が間に合わず正確な出力がされません。
何がいい方法はないでしょうか?
よろしくお願いします ある時点のデータを送りたいが 送信に時間がかかって送信中に
配列上のデータが更新されてしまう、ということなら
・更新を一旦やめる
・ループで送信する
・更新を再開する
という風に改めたらドデスカ。
あまり長い時間更新を止めると不都合があるなら
・更新を一旦やめる
・200バイトすべてを一旦バッファにコピーする
・更新を再開する
・バッファの方のデータを送信する。
という風にすれば更新を停止する時間を短くできるとおもうず。しらんけど なるほどありがとうございます
今度試してみます!
少し調べたのですが、Serial.flush()はSerial.printに使っても効果ないですかね?Serial.writeには効果があるらしいですが。。
for{
Serial.print(a[i]);
Serial.flush();
}
みたいにその都度フラッシュを入れる感じです。 >>33
意味なし。送信を速く終わらせたいならボーレートを上げるぐらいしか出来ることがない。 区切り文字が来るまでだとか、ある程度の量が溜まるまで送信を控える様な処理を
しているときはflushすればシリアルドライバ内のバッファ上の中途半端なデータを
掃き出して送出はしてくれるだろうけれど、拝読する限りでは
今回の問題の本質は、ホントにそこなのかなぁ・・・
僅かながらそれで改善する可能性もあるのかな、ぼくもなんか違う様な気がするけども 質問です。
マウスカーソルが特定の範囲内に移動するとArduinoに接続しているサーボモータが指定の回転角まで動き、その範囲外を出ると0度に戻るようなシステムを作りたいです。
今はwindows側でC++でマウス座標の位置を取得するコードと、Arduino側でシリアルモニタにサーボモータの回転角を入力するとその角度まで回転するコードが書けています。
この後どのようにArduinoと通信すれば良いかわかりません。
具体的な方法を教えていただけますでしょうか。
本日中に完成させたいです。 あきらめろ。
windows側で範囲判定と角度指定それをシリアル通信でarduinoに送る処理を実装するだけ。
まぁwindowsのc++は板違いだが。 >>37
板違い申し訳ございません
windows側の範囲判定と角度指定はc++で書く、という理解で大丈夫でしょうか
そのコードが出来上がった後の"Arduinoに送る処理"というのがわかりません。
windows 側のコードの中にArduinoにマウス座標の情報を送信するコードを書くのでしょうか。
また、Arduinoに書き込むコードはどのような構成にすればよろしいのでしょうか。 送る処理は「win32api シリアル通信」とかでぐぐれ。モニターはそれをGUI化してるだけ
それ以外の部分はすきにしろ。それは自分で決めるべきことだし、どうやっても実現できる >>38
プロトコルも自分で設計する
mov x133 y355 みたいなコマンドでもいいしバイナリでもいい
arduino側でそれを解析するコードを書く
また領域から出たり入ったりした場合、
0に戻ってる途中で新たな座標をしていされた時busyを返して待たせるか
バッファ処理するとかも自分で定義して実装する >>40
少し道筋が見えたような気がします。
ありがとうございます。
Arduino側で解析する
と言うのは例えばif文のような形式で座標の数値に応じた制御をする
というニュアンスの解釈で合ってますでしょうか 送信する前に、Serial.flush()を入れればいいんじゃないの
バッファが空になったら送信
送信完了まで待って、無駄に処理を止める必要はないし
--
Serial.flush();
Serial.print(a[i]); バッファ捨ててどうすんのよ。素早く送信する関数じゃないぞ。 >>31
>たまに出力が間に合わず正確な出力がされません。
具体的にはどうなるわけ? USBに関わるよく似た質問かもしれませんがお願いします
・やってみたいこと
USB接続のゲームパッドがあり、ゲームパッドの各ボタンなどの数値をArduino等(ESP32等)で読み取りたい
・質問事項
ゲームパッド(USBタイプ)とArduinoとの接続方法はどのような形態にするのか
1. ゲームパッド→USBシリアル変換器→Arduino/UART
2. ゲームパッド→USBホスト→Arduino/SPI
仕組みがあまりよく判っていないのですが単にボタンの押されたデータを読むだけならば 1. の方法でよさそうな気がしています
そこでもし 2. で無いとダメと言うことならば
その仕組みをお教え頂ければありがたいかと思います
それではよろしくお願いいたします >>38
c#やDelphi,lazurusなどwindowsのデスクトップアプリを作る環境はだいたいシリアル通信のライブラリを誰かが作ってくれているのでそれを使う。ちなみにarduinoがどのcomポートつながっているかはソフト側からはわからないので使用者がcom portを指定してやる必要があると思う。 Serial.flush()
データの送信がすべて完了するまで待ちます。
(Arduino 1.0より前のバージョンでは、受信バッファをクリアする仕様でした) >>44
書き方が悪かった...
バッファをすべて送信して空になったら >>46
USBシリアル変換器はホスト向けのモノしかないように思います。
よって選択は2.になりますね。
USBホストとしてはwin10、ラズパイ等。ゲームパッド入力を受け取りarduinoに送るアプリの作成が必要です。
あまりスマートな構成ではありませんが思いついたのはこのくらい。
ちなみにゲームパッドは改造NGでしょうか。改造していいなら、ボタン接点だけを取り出して直結する方法もあります。ただデジタル信号のみの上、点数が多いとarduinoのポートが足りない。これはちょっとイマイチか。 >>46
ゲームパットの種類(機種)を変えても良いなら
Bluetooth接続のゲームパットをESP32に接続して使用するという選択もあると思う 改造ありなら
おまえら大好きI2C Expander 様々な回答ありがとうございます
>>50
やはり 2. の選択肢ですね
いろいろとウェブページを巡ってみましたがこれと言ったピンポイントな記事はなかなか見つけられませんでした
>ゲームパッドは改造NGでしょうか
全然問題ないです
そうですよね各接点をバラして送信すれば良いだけですから
>>52 さんも仰るとおりIICに変換してしまえばとても楽なように見えます
>>51
はい。その発想もありまして別途BLT式のゲームパッドというのも所持しております
ただ、ESP32を所持していませんのでさっそく発注したところです
こちらの方法が今のところ一番スマートな感じがしますね
ESP32用のゲームパッドライブラリとかもありますし
USB規格以前はATARI仕様とかで手っ取り早く取り出せそうでしたが
今時のコントローラは多機能ですので配線数を少なくしようとしてきた結果が今の状況なのでしょうね USB 接続のゲームパッドを接続するためには、接続される方はUSBホストにならないといけません。
ふつうにArduino Leonardo で作れるUSB機能はUSBデバイスなので使えません。
つうても、俺もArduonoでUSBホスト機器を作ったことがないのですが…
USBホストシールド ゲームパッド
で検索してみて。
USBホストシールド(という基板)をArduinoに組み合わせて、ホスト機能が作れます。 >>54
>USBホストシールド
一般的に出回っているのがUNOに載っけるシールドなのでサイズが極端に大きかったり
miniサイズのはなんだかパターンカットだとか配線を追加とやや煩雑な印象を受けました
ってことで探し回った結果、D1miniに載っかるシールドが見つかったので手に入れた次第です
現状、何も慌てていませんのでぼちぼちとやっていこうかなと思うところです
いろいろな助言などありがとうございました ESP32だと、最近こうゆうのがある
大体事足りる。ESP32-S3 N16R8 LGT8F328Pってどう?使ってる人いる?
Aliで100円ぐらいで売ってる
調べたらATMega328互換で評判いいみたいだけど Amazonなどで売られている下記製品
「Prament PWM 制御1チャネル 3.3 v/5v
ロジック ac 50hz 60hz 220v 110v のための
RobotDyn R AC ライト調光器モジュール」
上記モジュールの回路図が欲しいのですが、
どこにあるかご存じの方いましたら教えてくださいm(__)m >>59
RobotDyn AC Dimmer Module Schematic >>58
基本的にはクロックや消費電力などで上位互換だけど、
中身は全くの別物なので、使えないライブラリなどが存在する。
あとレジストリ直接いじり系は、全く動作しない。
けど、普通に Nano でプログラム練習+α程度であれば、問題ない。
互換問題があったときのために UNO か Nano を持ってることが条件かな?
328PB搭載 Nano が同価格で一時期売られてたこともあるよ。 328PB搭載prominiが最安125円でその時LGT8F328Pは75円やった
100個くらいバラ撒くというならともかく
ケースやケーブルまで含めた装置全体で2000円とすれば100円くらいの差で苦労を背負い込む事は無いと思う >>63
いまAliでpro miniは送料込みで最安500円ぐらいだよ
LGT8F328Pは200円ぐらい 11.11のセールでnanoが送料込み330円だったので10個買ったよ
STM32も値段戻ってきてるけど送料の安い店探すのがしんどい 場合によってはSTM32Fのほうが安かったりするからなぁ…なんだか stm32は安いしスペックいいんだけど何するにしてもflash馬鹿食いするし
そこら中にハマり処あっておすすめできないのがな 初心者には非Arduinoは難しいのでは?
STM32でもPICでも、プラットフォームごとにライターいるし picはあれだけど、stm32は初心者は絶対やめた方がいいけどarduinoも普通に使えるよ
ライターはいるけど中華stmlinkだと300円程度だし、arduino unoやUSB-serialアダプタをライターとして使うこともできる ESP STM PICといいながらAVRと呼ばずにArduino >>73
それにはとても興味あるなあ。考え方や他のやり方、必要精度からセンサの型式サジェストしてくれるAIメンターが欲しい デジタルポートに8vってマズい?
あと感度下げたりできんのかな?ノイズひらってしまう 何をしようとしてるのかサッパリわからんが、絶対規格超えて無茶な事すると簡単に壊れるからね
AVRとかのマイコンだと5.5V超えるとだいたい壊れる ありがとう
エンジンのピックアップ部に繋いでるんだけど仕様見ると~7.2vらしい
ノイズは調べてみるけど5.5vまでとなると抵抗とか使ったら良いのかな、電圧の下限値を理解してないのと状況によって電圧が変わるものだからどうしようか迷ってる 0.5秒間にスイッチのonになった回数をカウントして結果によってifで分岐したいのですがネットでattachInterruptを見つけて使ってみたのですがカウントが蓄積されていくので用途にあいません
void setupにattachInterruptを記載、void cntに割り込みして+1しています
attachInterruptを0.5秒間の結果だけ計測するか、他にいい方法はありますか? >>81
タイマーのクロックを外部入力ピンに設定して500msのカウント計ればいいよ(レシプロカルカウント方式) >>82
ありがとうございます、良く分かって無いので調べてみます。
ちなみに最初にpulseinで間隔を測定する方法を取りましたが0付近になったとき?にフリーズしたためダメでした >>82
ありがとうございます、良く分かって無いので調べてみます。
ちなみに最初にpulseinで間隔を測定する方法を取りましたが0付近になったとき?にフリーズしたためダメでした >カウントが蓄積されていくので用途にあいません
500msでゼロクリアすればいいのでは?
割り込み処理中ではmillis()使えないと書いてるページがあるけど、
実際にはmillis()の値が変化しないだけで参照できるからね
割り込み処理の先頭で前回カウントリセットから500ms以上経過してればカウント値を保存してカウントリセットでとりあえずはできる >>82の方法のほうがスマートだと思うけど、学習目的なら両方やてみるといいよ Arduino名作動画劇場①
コップの水がこぼれない車載テーブルをarduinoで.wmv
https://www.youtube.com/watch?v=-q7pv8vKH68 >>88
これ合成でしょ?
こんなにうまくコントロールできるわけない 20年ぐらい前だったけど、実験室で、レールの上においたもので似たようなことはやったことがある。一軸。
台車を手で動かしたときに、ビーカーを傾けて中の水がこぼれないようにする、みたいな。
倒立振子よりは簡単だった。
動画のように2軸で縦揺れのある自動車だとどうなるかわからないけれど、
「こんなにうまくコントロールできるわけない」
と断言できる根拠は、俺にはわからない。
ともすれば侮辱的な批判をするなら根拠を出して>>89 >>88
>PICはイタリア製のarduino(アルデュイーノ)を使用しています。
PICだったのか・・・(ごくりAA略 加速度起因の転倒覆水に対処しているだけで
飛来物や干渉物との衝突では液体がぶちまけられる側面を考えると
第一弾の装置は制御基板が水を被りそうで怖いデザインだったけど
第二段は面積が広くて多少安心感が増してますけど機械的強度というか
駆動力に不安を覚える踊り方してまするですな・・・ 81です。
結局millisで対応しました。
D3に接続してカウントしているのですが線をはんだ付けすると何もしなくてもノイズを拾います。
今は0.5sq位?のホームセンターの工作コーナーに置いている物に類似した線を使っています。
何かノイズを消す良い方法ないですか? コンデンサーは
arduino d3 --コンデンサー--計るもの
って感じで間に挟めば大丈夫ですか? プルアップorダウンとかのボタン周りの回路と設定はどうしてる?
1押しで複数回カウントされるならチャタリング対策が必要だが。 >>102
ボタンと書きましたがコイルで電気をが出来た時に反応させています
チャタリング等は恐らく大丈夫です
ノイズ発生はarduinoのD3に切りっぱなしの配線を繋いだ段階で出てしまいます 入力が一般的なスイッチじゃないなら、尚更入力周りの回路がわからんとまともに答えられんと思うぞ。オシロの波形とかあるなら別だが。 確かにそうですね...申し訳ないです。
オシロも無いのでとりあえずコンデンサーから試してみます。 タクトスィッチ+LEDで、Lチカを先にやった方が、いいような気がする ピンが浮いてるんじゃないの?
コイルがHi入力なら、プルダウン抵抗で大丈夫だろ
https://i.imgur.com/1yxHfyJ.png
Lowなら内蔵プルアップで
pinMode(3,INPUT_PULLUP); カウンターって言うと
カウント数をI2Cで送りつけるICってあまりないのね
24bits I2C のなら見つかったけど単価が高すぎだった
PCの水冷冷却ファン(4pin)を制御しようと試行錯誤していたけど
そのままだと各ファンの回転数を拾うのにファンの数だけピンが必要になるんだよね
やはりあまり需要がないんだろうなぁと Arduino同士でI2C通信するの簡単だぜ
デバイス作っちまえばいい この板であってるか分かりませんが。。
加速度センサ(mpu6050)を使って距離を測定するデバイスを作ろうと思ったのですが、ブレが大きすぎてなかなか上手くできません。(静止時に加速度が0にならないなど)
mpu6050はあまり向いていないのでしょうか?もっと精巧なセンサでやるべきでしょうか?詳しい方や似たようなものを作ったことのある方、アドバイスやオススメなどあったら教えてくださると助かります。
計算方法は積分で出すプログラむです。(0.015msごとに計測) 加速度センサはそんなものだよ。市販機器もキャリブレーションさせるでしょ。静止時のブレを記録して測定値から引く
加速度でなく、レーザーとか超音波、ホイール、GPSなんか使っても。用途次第 Attiny44をTinyCoreで使っています。
電源電圧の低下を検出して制御中の回路を遮断するプログラムを考えています。
最初は電源電圧をADCで監視して低下したら遮断したらいいと思ったのですが、
ADCがVCC基準なので、VCCを観測してもVCCの電圧は解らない事が解りました。
次にBODを使う方法を考えたのですが、
これだと電圧低下で動作をホールド(リセット)する事は出来ても、
回路を遮断するプログラムを走らせられません。
なにか現状のハードを大幅に改変せずに解決する方法は無いでしょうか。
よろしくお願いします。 >>113
回路遮断しないとどんな不都合があります? マイコンでやるなら十分な電圧を確保するしかないんじゃない?
1.8V動作のattinyにするとか、バッテリー電圧上げるとか、ボタン電池載せるとか >>113
tiny44はVRef1.1Vに切り替えできなかったっけ >>113
ADCの基準がVCCの状態でアナログ入力チャンネルを内部リファレンス電圧(1.1v)に切り替えてADC実行
VCC電圧 = 1.1 / (ADC値 / 1024)
これでVCCの電圧を配線無しで取得できる
たぶん\(^o^)/
コードが必要なら夜中以降(手元にスマホしか無い) ADCは変換時間がかかるので即座に反応できまへん
リセットIC出力を接続して割込処理くだちい 即座、ってどれぐらいの応答時間を要求されるのかで変わるような気がする。
本件はどれぐらいの応答時間がいるんだろう。 スピードならレジスタ直読みでIOポートから読み取り。
電圧検出みたいなのの場合は、スピード重視ならアナログ回路も考えないと Nanoを3.3V駆動にしたい時、PCとの間に3.3vレギュレーターを挟めば
レベルシフターを使わずに済みますか?
[PCのUSB] →(3.3Vレギュレーター)→ [Nano] → [3.3Vセンサー(I2C接続)] USB以外から電源いれるならUSB抜いてVCCピンからだけど、水晶発振が3.3Vに対応してなかったような。 初心者です。
AliExpress で Tzt pro-micro ATmega32u4 5v 16mhz のtype-c版を5個買いました。
PCに繋いだところ全てデバイスマネージャーに認識されません。
不明なデバイスとして出るとかではなくそもそも何も検出されません。
LEDすら点灯しないのですが、不良品ということでしょうか。
似たような経験がある方がいれば教えてくださると嬉しいです。 >>126
コメントありがとございます。
type-cケーブルが断線してるかチェックということでしょうか?
スマホでもチェックしましたが、データ転送・給電共に問題ないです。 TZTはそんなに悪いセラーじゃないけどなぁ
USBのGNDとボードのGND
USBのVCCとLDOのIN
それぞれ導通チェックで最低限電源がきてるかわかる たまにドライバーおかしいと不明なデバイス表記も無いことあるからドライバーの再チェックはどう? ケーブルが刺さってないのでは?
硬いコネクタのことがある
テスターあるならボードの5V端子に電圧でてるかで刺さってるかわかる
ここは壊れててもショートしてなければ電圧でるはず 解決しました!
代わりに手持ちの端子変換アダプタを組み合わせて接続したら光りました。
ケーブルの方はいくらやっても、ケーブルを変えてもうまくいきません。
type-c to type-c ケーブル等と端子変換アダプタは何か違うことをしているのでしょうか。
初歩的なところで勘違いをしていたのかもしれません。
コメントくださった方々ありがとうございました。 >>131
TYPE-Cって基本的にCC信号線で相手を接続を確認してからしか電圧を出力しないのよ。
だからTYPE-Bのの代わりに単にTYPE-Cのコネクタを乗っけただけのような代物だと
CC信号線処理してなくて、TYPE-Cの出力からは電力供給を受けられないのよ。
端子変換アダプタを入れると動くのはTYPE-Cからの端子変換アダプタが
TYPE-Cから電力供給受けれるようにCC信号線を処理してるから。 arduinoでタコメーター作ろうかと思ったけどusbとpc、デジタルポートとフォトカプラ足1本
の計2本だけつないだだけで反応してしまう、しっかりフルで配線しても多重に拾ってるのかとんでもない値になる
感度強すぎやろ Arduino Megaのかわりに
ATmega2560-16AUを使用したいのですが、
bootloaderの書き込みと、プログラムの書き込みを
Arduino IDEでする方法を教えて欲しいです。
下記を使って出来ますかね?
https://i.imgur.com/V1KebTA.png >>134
USBISPはArduino IDE(AVRdude)で使えないので別の書き込みプログラムが
必要です。 >>135
ありがとうございます。
ブートローダーを書き込むにはArduino IDE以外のソフトを使って
プログラムもArduino IDEで書き込めない
って事になりますかね? >>136
ブートローダーを書き込むのはArduino IDEで書き込めるようにするためです。 >>137
ありがとうございます。
すいません初心者で
ブートローダーってそういう事だったんですね >>134
この[USBISP]との組み合わせだとArduinoIDEに対応してないと思うので
ほかの対応した書き込み装置と組み合わせると良いと思う
入手性から考えて[USBASP]辺りが安価で入手性が良いと思う
また、他に所有するArduinoを書き込み装置にすれば(書き込み装置用のスケッチを書き込む)
ブートローダーの書き込みやスケッチ(プログラム)の書き込みが出来る USBispのファームウェアを書き換えるとUSBaspになるような記事がどこかにあったような USBispはusbconfig書き換えればUSBaspのFWで使えますけど、
USBaspも128KB以上の書き込みに対応したFWじゃないといけない。
初心者ならUNOでも使ってArduino as ISPするのがお勧めです。 みんな真面目に答えているけど
134の写真 初心者が、ICチップを扱うというのが、よくわからない?
チップを扱うというなら、初心者でないし.... 10年か11年前かな
3Dプリンターのファーム更新はチップを焼いて差し替えないといけなかった
当時はarduino触ったことなかったし当然ブートローダーも分からない。四苦八苦だったな つか>>134のセット売ればmega2560のボード2-3枚買えるんじゃね >>134です
色々みなさんすみません。
仕事でプリント基板設計をすることになって
プリント基板設計自体は初心者で
今、ATmega2560-16AUに注目していまして、
なんとか使えないかなと思ってまして
お伺いした次第です。
ATmega328PUなどは使ったりしたことはあるので、
このチップ版のブートローダ プログラムの書き込みは
なんとなく分かるのですが
2560が良く分からなくて、 >>145
AVRはmega328だろうが2560だろうが基本シリアルプログラミングは同じです。
チップと書き込み機を6本の線でつなぐだけです。
>>134のボードを使うならISPポートがあるようなので6pin/10pinの
フラットケーブルで接続するだけで準備完了です。 >>146さん
ありがとうございます。
あの画像のを使うとすると、
USBをPCへ接続と
6pin/10pinのケーブルを用意し、
それをArduino Mega に接続
という形で宜しいでしょうか? >>147
145で 基板設計をすることになって で
チップと書き込み機を6本の線でつなぐだけです。と教えてくれているのだから
チップの仕様とか調べるとか、しないのかなあ..
-
この段階で、仕事で基板設計なんて、無理だと思うんだけど はじめてするなら、いきなり本番のプリント基板って考えなくてもいいのでは。
書き込み+LEDちかちかを実現する最小限のものを、変換基板で実験すればいいのに。
昔と違ってプリント基板が安くなって、初期投資という観点だと、下手すると変換基板で作る方が高くなるかもしれないけど、
思い違いで組み換えしなくてはいけなくなったときとかは、変換基板の方が楽だと思う。 >>147
134の画像の10pinケーブルが付いたUSBISPをPCに接続し、10pinケーブルを
画像のmega2560テストボード10pin ISPポートに接続するだけです。 >>150さん
ありがとうございます。
ブートローダーは他のソフトで書き込み
(PropISP辺り?)
それからはArduino IDEで書き込むって感じですかね?
素人ですみません。
おプリント基板設計は業務で行うのですが、
ハード系の会社では無く部署もないので、
おそらく自分一人で行う形になるかと思います。 USBISPはProgispですね。
ブートローダ書き込んで16MHz水晶を取り付けてFUSEを書き換えて
USBシリアル変換アダプタでPCと接続すればArduino IDEから使用できます。 回路設計は詳しくても、Arduinoは初めてなのかな? Arduinoは多少かじってみた程度です。
ATmega386PUでUNO化させてちょこちょこと
シリアルやEthernetが楽に組めるんでいいかなと
プリント基板は全くです… まずはCADを覚えないと
またATmega2560-16auの話で恐縮ですが、
あの画像の機器を使用したとして、
下記のHPの内容でそのままできるのかなぁ…
USBISPと記載されていますが
GitHubから取ってきたやつを使えば…
https://forum.arduino.cc/t/mega2560-arduino-bootloading/508427 フォラム質問者のFuse設定は間違ってますね。 でもUSBISP+Progispで
ブートローダは書き込めたようですね。 解答にある手順はArduino IDEで
サポートされた書き込み機の場合なので、USBISPではできません。 >>157さん
ありがとうございます。
やはりProgispでやるって事ですね
分かりました。 5v与えても動かないフォトカプラ解体してみたんだけど中身はこんな感じで合ってるかわかる人いる?
uxcellのpc817
https://i.imgur.com/qQxMOrp.jpg 電流流しすぎて破壊しちゃったんでは
LED側がダイオードになってるかは確認した? うーんデータシートが無いからシャープのpc817の電流許容範囲でやってみたけどダメだった
ピンアサインが違う可能性も含めて色々してみたけどお手上げだった
まあこれはメーカー品買うとして
arduino nanoの互換品買ったんだけどDポートから3cm程配線を延ばすだけでノイズが入るんだけどそんなもん?
プルダウンとか使う感じ? >>161
>ノイズが入るんだけどそんなもん?
うん、Pull-UpとかPull-Downとか使うと良い感じ >>46
その後。
Bluethooth対応のゲームパッドをESP32で受け取れば簡単
と言うことでいろいろとやってみましたが結局挫折しました
何が引っかかったのか?
・そもそもBlueToothの現状を理解していなかった
BlueTooth(classic: BR/EDR) とBTE(BlueTooth Low Energy)とでは仕様からしてほぼ別物
そしてBlueTooth(classic)はDeprecatedな現状
・所持していたゲームパッドがBLE非対応だった
BLE対応であればNimBLEというご立派なライブラリがあるので対応が早くできたかもしれない
しかし所持していたのはなんちゃって中華品でありまたBLE対応品は高価だったのでそのためにわざわざ購入するのは躊躇した
だとすればこれだけ世間に出ているBLE非対応のゲームパッドを繋ぐ方法はあるでしょう?
って事でいろいろと見て回りましたがいずれもごり押し力業的な方法しか見つけられませんでした
要ESP-IDFだとかMStackCに特化しているとかArduinoIDEのESP32ライブラリを要ダウングレードなどなど
個人的には特殊な環境だと感じました
気軽にArduinoIDEでいろいろとやってみたかったのですけどね
(同じような事を書いている方も見受けられますね https://github.com/nkolban/esp32-snippets/issues/230 )
そしてなんと言っても悔しい思いをしたのがPC類やスマホ類では簡単にしかも追加の機能拡張など無しの標準装備だけで接続/認識できたと言うこと
あわせて自身にはArduinoIDE用のライブラリを作成する知識も技術が無かったこと
ですね
この悔しさはいつか見返してやろうということでこの件についてはしばらく距離を置いておこうとなった次第です
Status: Suspended >>159
どういう使い方をしたか図示した方がいいのでは。
フォトカプラもDポートも。
あと、最初はより正規と見做せるものを使うほうがいい。
より正規じゃないから怪しいのか、自分の使い方が怪しいのか切り分けに迷いがより入る。 簡易的なLEDテスターを作ろうとしてて、電流値も表示したいんだけど
Arduino単体で電流測定ってできます?
精度は±1mAぐらいでいいですけどね >Arduino単体で電流測定ってできます?
「単体」って何を意味してますか?
外付け部品一切なしで、電流を測れるポートがあるか? だったら、できません。
さすがにそういう要求はないか。
測定電流を最大50mAぐらいとして、それを最大1023のADCの100LSBに割り振るとしたら、
5Vのリファレンスで使うなら、0.5Vまでの電圧に換算すればいいことになります。
なので、LEDを通して流れてきた電流を10Ωの抵抗を通してグランドに落とし、
抵抗の電圧を測ればおおむね目的は達成できるでしょう。 >>167
ありがとうございます。それで一度作ってみます。
電流センサーとか売ってますけど、そこまで精度は求めてなかったり、
値段もそこそこするなぁーって感じで。
オペアンプとか使った作例もあったんですが、用途的には50mAで十分です。ありがとうです! ターゲットの回路に与える影響を無視すればオペアンプなしで抵抗高めでも大丈夫ではあるな。 >>166
マイコンの5V出力⇒LED⇒★⇒ 220Ω⇒GND
とつないで★部をanalogReadすればいいんでね? Arduino(ATmega328など)にプログラムを書き込む場合って
下図のモジュールと回路で書き込めますかね?
素人でごめんなさい。
https://i.imgur.com/pRY3iGa.png >>171
もしブートローダーを書き込んで無いatmegaなら
先にブートローダーを書き込む必要がある
新しくatmega328を買ってきた場合ブートローダーは書き込まれてないので写真の方法だと無理だよ arduino-cli のプロファイルを使った compile の質問
arduino-cli compile -b <fqbn> --dump-profile > sketch.yaml
sketch.yaml から余計なものを削除して
arduino-cli compile --profile <profname>
結果
Error during build: exec: "/bin/avr-g++": file does not exist
その後、パスを入れる箇所を探したけど、どこかわからず
windows環境でprofile 指定がうまくいってる人、教えてください
windows 10, arduino-ide 1.8.19, arduino-cli 0.31
fqbn を直接指定した compile と upload は出来ています >>172
ブートローダーは書かれていて
プログラムを書き換えたりする場合です。
その場合なら大丈夫でしょうか? >>174
リセット等の配線がされてないので、書き込み失敗すると思う 手動でリセットボタンをタイミングよく押せば大丈夫!w >>177
それで問題ないと思う
(リセットボタン等を省略するなら周辺の回路をもっと簡略化する事も出来るとおもう) >>178
ありがとうございます。
簡略化は
DTR-0.1uF-RESETで繋げる線だけで大丈夫ですかね?
まずいか…? >>179
すまん、写真のFT232XSをよく調べた結果、3.3V↔5Vの切り替えがジャンパ有るけど、TXやDTRのIO電圧は3.3Vに固定されているようです。
この場合、>177の接続方法を使用すると、リセット時に電圧が1.7V位までしか落ちないため、リセットに不具合が生じる可能性があります。
理想的にはIOレベルを変換することが望ましいですが、他には、IOが5VのUSBシリアル変換を使用するか、VCC(動作電圧)を3.3Vにするなどの方法が考えられます。
VCCが5Vである場合は、DTR-RESETを直接接続の方がうまく動作する可能性があります。 それでもATMEGAだったらぎりぎりリセットかかるけどLGT8F328でリセットかからずにはまったことがあった
20kオームくらいでプルダウンするといい感じにリセットがかかる >>180
>>181
ありがとうございます。
これは5VにしてもDTRは3.3Vなんですね
5VをそのままRESETに入れるのはまずいでしょうか? >>180
>>182
写真のスイッチサイエンスのFT231XSモジュールはVCC5Vの場合
DTRはレベル変換されて5Vで出力されています。 秋月のFT231Xは3.3Vのままです。 度々すみません。
下記の回路を基板上に作っての書き込みであれば
いけますかね?
VccはUSB側の5Vを使用するつもりでいますが
https://i.imgur.com/HDbzOnm.png >>164
その後のその後。
USB ケーブルの付いた GamePad も何をどうやっても認識されず
(USBのツリー表示には出てくるけどそこから先が何も出来なかった)
ところが中華製の無名無線 GamePad を繋いだら難なく Data らしきものが表示されることに
接続形態
GamePad→(ここワイヤレス/非BT)→USB無線レシーバ→USBホスト→D1mini
利用したサンプル
USB Host Shield Library 2.0
L examples
L HID
L USBHIDJoystick ←これ
流れてくるデータが読めればあとは対応が容易だったので
無事に ESP32 CAM WIFI Smart Robot Car の GamePad での操作ができるようになりました
子供達はなんだかとてもはしゃいでくれました
ぬこさんはいちいち威嚇ポーズしていましたね 電子工作初心者です
困っているのでお助けください
Arduinoで温湿度計のログをmicroSDに保存する回路を見よう見まねで組みました
ところが、コンセントから充電アダプタを介してUSB給電すると、数時間後には止まってしまいます
コンセントを抜き差ししたり、microSDをフォーマットしたりすると直ることもあります
PCに繋ぐと安定して動きます 回路はどこのを参考にしたとかACアダプタはどれかとか書くと喜ぶ人がいるかもしれんぞ > microSDをフォーマットしたりすると直る
書き込みって電力食うから電源が足りなくてそのタイミングで落ちてFATが壊れてるんじゃないのかな
ってことで電源交換、もしくは大容量のコンデンサ電源につないでワンちゃん ACアダプタの出力電圧は5.1Vだったかと思いますが、電流はわかりません(いま回路は手元にない)
オススメの電源があれば教えていただけますでしょうか
コンセントを使えればUSBでもDCジャックでも 電流容量もさることながら、スイッチングノイズやリプルが大きいものもあるので。
PCなら動いている、ということなので、問題の電源アダプタが原因で不用意にリセットが
かかったりしている可能性はあるね。
秋月のUSBコネクタ付きの5V ACアダプタ[AD-A050P200]はひどいことはなかったよ。 ラズベリーパイ用として、販売されているACアダプター
LAN,USBメモリ,SDが動いていても問題ないし、3Aとか出る。 >>186です
回路をよく確認したら、Real Time Clockモジュールがブレッドボードからもげ落ちそうになっていました
もともとピンが深く刺さらない作りになっているので気を使ってはいたのですが
もしかしたらこれで解決するかもしれません
(ちなみに、パソコンにつないでいても一日以上の長時間だとやっぱり止まりました) 振動が多いところはブレッドボードより基板を頑張って作ったほうがいい。 すいません質問させてください
arduinoとesp8266間をI2Cで通信したいのですが、うまくいきません。
ESP8266(マスター) -> Arduino(スレーブ)
とすると、I2Cスキャナーというプログラムでスレーブ側のアドレスが確認できました。
Arduino(マスター) -> ESP8266(スレーブ)
とすると、I2Cスキャナーでスレーブ側のアドレスが見えません。
ESP8266をスレーブで動作させるには何かテクニックが必要でしょうか? 回路同じ?違うなら違うとこチェック
i2cクロック下げてみる
プルアップ抵抗値変えてみる
ESP/i2cは使う人多いからないとは思うけどESPのarduinoのライブラリチェック(たまにライブラリ側が悪いこともある) レスが遅くなってすいません
回路は全く同じです
マスター側のI2Cスキャナーと下記のスレーブ側のプログラムを入れ替えて試しています。
#include <Wire.h>
void setup() {
Wire.setClock(20000);
Wire.begin(0x29);
}
void loop() {
}
また、今回はI2C接続のLCD(0x27)も接続して試してみました。
結果が
Arduinoマスター(I2Cスキャナー側)、ESP8266スレーブ
Scanning...
I2C device found at address 0x27 !
I2C device found at address 0x29 !
done
ESP8266マスター(I2Cスキャナー側)、Arduinoスレーブ
Scanning...
I2C device found at address 0x27 !
done
やはりESP8266がスレーブだと見えなくなってしまいます。
プルアップ抵抗値というのをどのように変えるかまだイマイチわかっていませんので、もうちょっと調べてみてテストしてみます。 すいません、書き忘れていました。
I2Cクロックを下げると行けるというのを調べてみたところ
確かに海外の書き込みでそんなやり取りがありましたので、
Wire.setClock(20000);
を入れて試しています。
I2Cスキャナー側にも同じように一文追加して試したのが上の書き込みの状態です。 さらにすいません、書き込みを見返していたらスキャン結果が逆でした。
ESP8266マスター(I2Cスキャナー側)、Arduinoスレーブ
Scanning...
I2C device found at address 0x27 !
I2C device found at address 0x29 !
done
Arduinoマスター(I2Cスキャナー側)、ESP8266スレーブ
Scanning...
I2C device found at address 0x27 !
done ESP8266はマスターしか対応してなかったような。アップデートで対応してるかもしれんけど。 >>200
軽く調べてみたらESP8266はハードウェアでのI2Cはないっぽい
ソフトウェア処理っぽいんだけど、SoftWire<SoftWire.h>を使ってみたらどうだろう?
↑思って調べたら <SoftWire.h>はマスターモード専用っぽいんだ
※内部的にはESP8266の場合、WireはSoftWireで動いてるのかも
で、GPT4様に聞いたら
ESP8266でSoftWireライブラリを使ってI2Cスレーブモードで動かすことは、現在のところサポートされていません。
SoftWireライブラリは主にI2Cマスターモードのソフトウェア実装を提供しています。
残念ながら、ESP8266をI2Cスレーブとして使用するための簡単な方法はありません。
ESP8266のハードウェアは、I2Cスレーブモードをネイティブでサポートしていないため、
I2Cスレーブ機能を実現するためにはソフトウェアベースの実装が必要です。
ただし、これは通常、パフォーマンスや信頼性の低下を伴います。 おお、GPT4様のお答えが聞けるとは!
chatgptに聞いてみた事もあったのですが、使えますって言ってきてコードも教えてくれたのでそれで試してみてましたが全くダメでした。
さっきGPT4様は使えないって言ってる、と伝えてみたら
"GPT4はまだまだリリースされていないので正確な情報ではない可能性が高い"
と言ってきましたw
とりあえずスレーブ動作は出来ないという事で納得しました
ありがとうございました。 PC新調した際にMBをまじまじと見たらUART1と言う3ピンがあったのですが、
BIOSでCOM有効にしたりすれば、USB変換刺さずに直にArduinoと通信出来るんですかね 昔だったらそんなの12Vだけど今だったら5Vかもな 今どきのは3ピンでUART1なんだな
うちのはさすがにバックパネルには出てないけどオンボード上で9ピンのヘッダコネクタがついてる(COM1って書いてある)
ちゃんと±12VのRS232C仕様だよ、チップセットはIntelのZ370世代 vscode+arduino cliて別のフォルダにまとめた自作クラス群、#includeできないのかい?
どうしてもコンパイルでnot found no such file or directoryエラーになってしまう
intelisenseも使えるし、ideでは通るんだけど、ide使うの止めれと毎回警告出るの邪魔だから一生懸命環境作ったのに >>210
そうはいうても、Arduinoの書き込みのときに、リセットのためにハンドシェークライン使ってるやん。 ファイル置く場所が悪いんだろ
vscode上のideで通る/通らない(includeの右クリックで開ける開けないなど)ってのはあてにしない方がいい。バグだらけだから Arduinoを電源を入れずに触っただけの超初心者が技術的な質問をします。
製品でRF Explorer−3G Comboと言う奴が有ります。
PCに繋ぐとデバイスマネージャーに仮想COMポートを作って通信します。
Silicon Labs CP210x USB to UART Bridge(COM5)
こんな風に繋がります。
コレをArduinoのUSBホスト機能を使ってSilicon Labsのライブラリを使って通信可能?
シリアル出力を取得してHC-05 BTモジュールを繋げて無線化とか可能でしょうか? その感じなら
RF~->USBhost->arduino->HC-05->...
って流れはできるはず
ただそれまんまなコードやハードの組み合わせを紹介してるサイトはないだろうから、それだけ複雑な作業を初心者が実現できるかは知らない >>218
了解です。スイマセンが自己解決しそうです。
検索「PICのUSBホスト機能を動かしてみる(CDC-Basic編)」がヒントというかずばり。
24FJ64GB002にホスト動作のさせてシリアル出力をUSBに変換してPCで通信。
コレのUSBに変換する部分を排除してHC-05 BTモジュールすれば出来るかもです。
お騒がせしました。 この全角半角混在は何なん?
こういうの意識しない人にソフト作れるんかねぇ
変数名などでコンパイラのエラー山盛するんじゃ 日本語入力ONしたまま入力したらよくそうなるだろ
プログラミングするときはOFFってるから起きない
色々なパターン考える習慣付けた方がいいぞ。そうしないとバグ山盛り >>214
builtin.librariesでいけました、一日かかりました
ありがとう >>220
見分けが付かないフォントを使っているから、本人も気が付いてないんだろう。
見た目が違うのに気にしない人間なら、プログラムどころかものづくりは無理。
ちなみに、GCCは変数に全角が使える。Unicodeであるならば絵文字も可能。 初心者を装って優しく教えてもらおうとする経験者だな 手段としてか、なるほど。類似観念として
質問内容への回答を得やすくするためにネカマに堕するのなら、
賛同はしないけど理屈としては解るんだ。一方、
知り合いのおっさんが女性だと騙りネットゲームで男子高校生をたぶらかして遊んでいたようなんだが
正直、あんなことしてて恨みを買って 何が楽しいのか僕にはよくわからない・・・
直接聞けと言われればそれまでだがもう十数年会ってもいないので其れも適わず; 目的の達成ができればあとはどうでも良いってだけじゃないかな?
住所握られてるとかじゃなければ別に怖くもなかろうし イケメンを騙りおにゃのことチャット愉しむとかなら まだ解らんでもないが
オッサンがネカマして男子高校生釣って楽しいものなのかねぇ;
ゲーム攻略を楽に進められるのかな? 恐ろしい世の中やな;
>>220 (半角全角混載でも 報告という)目的の達成ができればあとはどうでも良いってだけじゃないかな?;しらんけど(^p^; 逆に全角半角がそんなに気になるのが良く分からんな
ブラウザに等倍フォント使ってるのでなければ気が付かなかったりするが
ちなみにプログラム作るときは等倍フォントだから間違えようがないし >>228
向上心がある学生さん以外は、どんなに他人の褌を使おうが目的のものを作れれば終わりで良いのだろうな。
やる気のある人だけ非ArduinoとかArduinoのライブラリを作る側になればいい話。 >>229
ここでもかなり前から無理やりひねりだしたような質問が見受けられるけど
あれ暇つぶししてるだけだろ 「Arduinoに関する簡単なクイズを3つ作って!」
1. Arduinoのプログラムを書くために使われる言語は何ですか?
2. Arduinoのデジタルピンの最大数はいくつですか?
3. ArduinoとRaspberry Piの最も大きな違いは何ですか?
難し過ぎだろ。 >>235
Raspberry Pi:英国発祥の伝統的なデザートであり、フルーツパイの一種です。主な材料はラズベリー、砂糖、小麦粉、卵、バターなどです。
Arduino:Arduinoは、オープンソースのハードウェアおよびソフトウェアプラットフォーム
3の答え、食用に適するか適さないかだ! 「arduinoで動く超複雑なプログラムを教えて」 って聞くと
いいかんじのがかえってくる AI検索をネタにするのは、もう賞味期限切れって感じだな…
こんなに早く手垢がついてしまうなんて。 【接種率80%】 手遅れか、ワクチン接種者、…タヒ
://kizuna.5ch.net/test/read.cgi/hikky/1674967026/l50
ネタはネタでしかないからネタだけで満足しちゃう薄っぺらい人達には十分なのdスシ食いねェ! 再びすみません。
ArduinoMegaを使用し、ATmega2560 16AUにブートローダーを書き込みたいのですが
上手くいきません…
回路は画像の様にしています。
https://i.imgur.com/Z1GLUX3.jpg
上記の回路でまず、ArduinoMegaのUSBをPCに
ttps://kevinfundarek.wordpress.com/2015/11/10/programming-the-atmega-2560-with-the-arduino-ide/
上記のサイトを参考に、ArduinoIDEから
Atmega_Board_Programmer.inoを開き、
・ボード Arduino Mega 2560
・プロセッサ ATmega2560
・書き込み装置 Arduino as ISP
にして、ブートローダを書き込むを行っていますが、
正しく出来ずにエラーになります…
どなたかご教授頂きたいです。m(_ _)m >>243
スマホしかないから簡単に書ける範囲で
Arduino IDEの設定で「より詳細な情報を表示する」の「書き込み」にチェックしてエラーログを見せて
可能性
1.クロックが上手く発振できてない(配線をなるべく短くする)
2.配線と設定が合ってない
3.Arduino megaに書き込みプログラムを書き込んで無い 配線ミスだったらプログラマがエラー返してくると思う
プログラマが応答なしだから
> 3.Arduino megaに書き込みプログラムを書き込んで無い
これじゃないかな >>245
メッセージ的に「Arduino as ISP」を選択して書き込みしてない様に思える
「stk500」は別の書き込み装置のため
ログのもう少し上のavrdudeのオプションが見れればハッキリ出来ると思う >>248
Arduino は STK500 互換じゃなかったっけ? >>247さん
配線ミスでしょうか?
>>248さん
Arduino as ISP でブートローダを書き込んでいます。 > Arduino as ISP でブートローダを書き込んでいます。
この書き方だからそこが違う気がするんだよな
作業の順序としては
1 何も配線していない状態で>>243の画像の左上のボードにArduinoISPを書き込む
2 配線する
3 Arduino as ISP としてブランクのmegaに書き込む
ってなる。1はした? >>251さん
1の Arduino ISPは、
下図の画面から書き込む感じですかね?
ttps://i.imgur.com/trqYH9y.png そうそれ
ただそのメニューから選べるのがmega対応してるかは知らない
対応していなければmega対応のArduinoISP探して書き込まないといけない >>253さん
ありがとうございます。
Arduino ISPを配線何も繋がずに書き込んで
その後ATmega2560とArduinoMegaの配線をしたら、
ArduinoMegaのCOMポートが表示されなくなっちゃいました
配線を外すとCOMポートが出てくる感じです。
1のArduinoMega側?(ATmega側?) に合ったArduino ISP
を探すしかない感じですかね Arduino界隈の人たちは、何でAVR-ISPmkIIとかの真っ当なプログラマを使わずに苦労したいのか分からん。
まあ、純正品は製造終了なんだが。 最初の1回しか使わないのにマイコン本体よりも高いAVR-ISPmkIIとか買わなきゃいけないのか
俺は200円のNANO買ってTiny13やTiny44とかに書き込んでたけどな、もちろnanoやprominiも >>245
エラーメッセージ的にはArduinoIDE(PC)↔ArduinoMega(ボード)の通信に失敗してるみたい
>>254
>ArduinoMegaのCOMポートが表示されなくなっちゃいました
配線ミスして電源とか短絡(ショート)してるかも
243の画像の配線をまずやめて、ArduinoMEGAとATMEGA2560の2点で配線した方が良いと思う
画像の説明だとGNDがつながってない状態だし、FT231XSをPCに接続してもGNDのインピーダンスが高く信号の状態が良くないと思う >>260
ありがとうございます。
回路ミスですか
リセットにいく辺りの回路が良くないんですかね…
もう一度回路からやり直ししてみます。 >>259
商用利用で実務なのにArduinoでここで質問するのはおかしいねw 皆さんお騒がせしております。
最初、下図の回路で
ttps://i.imgur.com/KhPFdg3.jpg
Arduino Megaに、Arduino IDEの
ファイル→スケッチ例→Arduino ISPを開いて、
Arduino Megaに書き込み
その後、Atmega_Board_Programmer.inoを開き、
ツール→ブートローダを書き込む で、
書き込み完了
その後、Arduino Megaを外し 下図の回路にし
ttps://i.imgur.com/LGvOwcd.png
ATmega2560-16AUにLED点灯・消灯のプログラムを書き込み
書き込み完了で、LEDが点灯・消灯出来たのはよかったのですが、
プログラムを変えて(LEDの秒数など)ATmega2560-16AUに
書き込みをしようとすると、なぜかタイムアウトエラーになり、2回目以降のプログラムの書き込みができません...
仕方がなく、またArduino MegaからブートローダーをATmegaに書き込みをして
プログラムを書きこむというのは出来ます。
現状上記の様な状態です。
ご報告します。 >>263
もしかしたら、リセットの配線DTRかも >>264さん
ありがとうございます。
DTRにしたら2回目以降もプログラムを書き込む事ができました。
皆さんのご教授ありがとうございます。 >>262
どこがおかしいのかな?
仕事でやり始めたけど初心者かも知れないよ。 Rev4でESP乗っけるのかー
お値段も跳ね上がっちゃうのかなー >>266
たしかに、文系や営業の人が初めてみたのかもしれないしな。またはハードウェアを全く知らないソフト屋とか。
そういう人なら社会人でも初心者はあり得るな。 電気電子を専攻してる大学屋高専卒でやってたらバカだけどなw 現在主流の御三家(ESP32,STM32,ラズピコ)に比べてかなり見劣りするな 文系がこんなのに興味持っても仕方ないと思うけどな
分を弁えて作者の気持ち考えてりゃいいんだよ AliExpressでR4のコピー品が安く買えるのはいつ頃ですか? すみません。半年前は問題無かったのですが書き込めなくなりました。エスパーの方お願いします。 >>265
どういたしまして
>>274
貴方は素晴らしい質問者だぜ!
画像や図解が入っていて、問題の本質がクッキリと分かったんだ
しかも、説明文も丁寧だから、俺たち回答者はすぐに答えを見つける事が出来た
貴方のような優れた質問者に出会えると、この掲示板に来ている甲斐があるってもんだよ >>271、276
アホか? そんなん俺に言っても知らんわ! デジタルピンを3本使って000、001、、、111を出力するのに
0、1、2、、、7で表現する方法って有りますか? >>262,266
思うに「Arduino初心者熱烈大歓迎質問スレ」は
Arduinoの質問スレであって、初心者に対しては熱烈歓迎してるってだけで
ホビー限定や初心者限定じゃないんじゃない???
※業務(仕事)が絡む質問が煙たがれる傾向なのはわかるけど >>281
int num = 0~7; //とかをデジタルピンに反映したいって事?
https://pastebin.com/U32Twb9w
シリアルから0~7を入力してデジタル出力させるスケッチ >>281
ある
引数v として
最上位のピンは
(v & B100)>0 のtrue falseでHIGH LOW
中位は
(v & B10)>0
最下位は
(v & B1)>0
意味的にはこんな感じ いろいろありがとうございます。
いきなりdigitalwriteで複数本記述するような虫のいい方法が無いのかなと思ったのですが
やはり基本的には1本ずつ出力するプログラムを書くのですね。 PORTB= (PORTB & 0xF8) | val; >>276
RP2040は5Vで使えないよ。てかペリフェラルはRA4M1のほうが圧倒的に強力(それに見合うボードになっているかは別) >RP2040のほうがいいのに。
絶対的にどっちかが良いってことは滅多にない。
何をするのにこういう良さがある、は、ある。 void setup() {
Serial.begin(9600);
}
void loop() {
for (long i = 0; i < 1000000; i++) {
double x = sqrt(i);
}
} RP2040はPIOとSRAM容量と値段がかなり強い >>291
確かにデータシート見るとADCが14bitだったりペリフェラルいいね RP2040は手軽にUSB-Hostができるというのも選ぶ理由になるな 何ができるかについては、このスレの文脈なら「Arduinoでサポートされていることができること」だしなあ。 >>298
Arduino とは何か?
純正ボードのことか、開発環境のことか、言語のことか? RP2040は非Arduinoに発展させることもESP系より資料がある。 >>301
あなたが言い出したのだから、あなたの定義を述べるべきですよ。
質問に質問で返しても議論にならない。
どれでもいいけど、「Arduinoでサポートされていることができること」って何って話。
I/Oポートやレジスタをいじることも出来るんだからArduinoで直接サポートされてなくても出来ることもあるよね。
サポートって何だよ?ってのもあるけど。 >>295
ADCに限らず高性能化、高機能化した部分をどのように落とし込んでいくのか気になる
analogRead()の返り値は10bitだけど互換性を考えると単純に14bitを返すようにするわけにはいかないだろう
analogRead()のブロック時間は約100usだけどRA4M1 ADCの最小変換時間は約1usだ。多少遅くしたところで
100usもかかるわけがなく互換性重視するならダミーウェイトを入れてでも100usにするのだろうか
かといって本来の速度で使えないのではRA4M1を搭載した意味が薄れてしまうし アッパーコンパチな命令を増やす?
superAnalogRead()とかanalogReadEX()とか >>304
dueの例で考えたらanalogReadResolution();で対応かな? stm32なんかもresolution設定すればいいけどしなきゃデフォルトだと10ビット返しだな 大元のarduinoからして最初からチップの性能をフル活用するような設計仕様じゃないからな。 UNO R4がRenesasの戦略デバイスの側面も持っていることを考えると互換性を考慮しつつ
組み込みのエキスパートでなくてもリッチなペリフェラルをそれなりに使えるようなAPIが用意されるのでは
FPUもデフォルトでONになるだろうし arduinoやespって3.3と5vどちらも同時に使用しても問題ないのかな?
片方だけしか使ってはいけないとかあるのだろうか? >>312
評価ボードの3.3V 出力と5Vは同時に使ってOK ATMEGA328P-PUの単体利用できるところに魅力を感じてるから
R4に搭載されるCPUもブレイクアウトボード版使う的な単体利用できるとええなー 0.5mmピッチだぞ
このピッチ扱えるならいろいろなチップ使えるからそんなとこに魅力感じないだろ チップ単体でつかう奴がわざわざ
Arduino使わない気がする。 ATMEGA328Pはスペックは貧弱でも、単体利用できるからいいのであって。
これは、8bitのPICにもいえる。
マイコンボードの形式ならXiaoかM5atomでいい DIPで万能基板で使えるのはでかい。
非Arduinoかつ、基板起こせる人は、とっくにSTM32やSAMに移ってる >>316-317
ちゃんとした工具と使い方を勉強すればLFQFPのはんだ付けは一般に思われているほど難しくないと思うけどね
外付けパーツ的にはATMEGA328P-PU→RA4M1ならコンデンサが増えるくらいか?
というかAdafruitあたりからNano的なボードが出てくるんじゃね。それなりの値段にはなるだろうけど 10枚200円程度の既製品の変換基板に載せりゃブレッドボードで使えるから何も困らないな
ただブレッドボードで使いやすいqfpの変換基板ってあまりない。sopやtssopだったらいくらでもあるんだけどな
しかし万能基板っていう昭和っぽい呼び方はなんなんだよw 先日から万能基板で使えない言っている人が意味不明
DIPというか2.54mmピッチになっていればユニバーサル基板に載るよね 私は最近、もっぱら秋月のパワーグリッド基板を使っている。
最初の電源ラインの全体配線が不要になり、部品の電源への接続も簡単なので、
ハンダ付け作業時間がとても短くなった。
https://akizukidenshi.com/catalog/c/cboard11/
欠点はカットして使えないこと、パターンとのショートに気を遣うことかな。 USBホストシールドのPS4BTでサーボモータを動かしたいんだけどコードが分からなくて。
〇ぼたんで動かしたいです。 パワーグリッド基盤なんていうのもあるのかー
勉強になるなー
たしかにどこからでも電源拾えるのは便利そうだ 浮遊要塞を気にするなら
手配線しないでプリント基板を設計しる ブレッドボードみたいなもんだろ
使える用途に使えばいいし、使い方によっては便利 電源ラインなんだからむしろ容量あったほうがお得でしょ 電源だけに使ってもいいけど
必要に応じてパターン切って(切らなくてもいい)汎用用途のジャンパーにもできるんだよ ジャンパー代わりかーなるほどなー
回路が決まったら余計な経路は削っておけば不本意なショートを恐れることもないし、だいぶ便利そう 電源ラインをベタアースやガードと思えば嬉しい
電源ラインがスルーホール経由の格子状になってるからパターンカットは面倒そう パワーグリッド基板使ってるけどはんだブリッジしそうで結構気を使う
電源の接続にはんだブリッジは嫌なので0.32のメッキ線でつないでる
でもメッキ線だけで電源を配線するのに比べたら楽だし結構使える ・スズメッキ線など単芯で電源ラインを配線すると、
ハンダ付け時に加熱で延びて曲がるから難しいんだよね。
少しコツが要る。
・で、AC100Vなどの多芯のケーブルを剥いて芯線をを取り出して、
ネジって使うようになった。
加熱による伸びをネジレ部が吸収してくれる。
・今は秋月のPG基板を使っているので、
電源ラインの配線作業自体がなくなった。
>>337
私も「はんだブリッジは嫌」でやらない。
好きな人がいるのだろうか? 良く分かってないのだけどパワーグリッド基板だとハンダブリッジさせて電源に接続できるの? ピンとピンの間にパターンが走ってて、そのパターンに対して意図的に半田ブリッジすれば接続できる
半田ブリッジじゃなくても抵抗のリード線まげてはんだ付けしたりでもなんでもいいいけど
実際の商品見れば理解できる
https://akizukidenshi.com/catalog/g/gP-07149/ なるほど
で、そのハンダブリッジが他とブリッジしそうで怖いってことね >はんだブリッジだけで電源配線ができます。
https://akizukidenshi.com/download/img/yajima/AE-B3_C3_app.png
秋月が半田ブリッジで電源接続するように誘導してる
>>341
電源パターンのランドが近くにあるので信号線をメッキ線で配線するのに
ど真ん中を通しても結構きわどいんだよ インピーダンスを気にするレベルの回路ならプリント基板を作ったほうが良いのでは PG基板で配線中
電源ラインがないのが何か不思議でヘンな感じ
画像見てると眼がチカチカしてくるw
https://i.imgur.com/1syww7o.jpg これ電源ラインを赤い細マジック、グランドラインを黒細マジックで線引っ張ったら見やすくならないかなー はんだ弾くんじゃね
着色したフラックス塗ればいいのか CPU・デジタル回路のCR部品などはVss、Vddにダイレクトに接続することが多いから、
このスルーホール付き電源パターンは便利だろうな。
2電源が必用なオペアンプ・アナログ回路には不向き? ボードによるけど、両面に電源通ってるのがある
一つのスルーホールが4ラインに接続できるようになってるから2電源オペアンプでも余裕
でもユニバーサル基板でごちゃごちゃ配線するよりエッチング&ボール盤で基板作ったほうが楽だし
PC使えるなら業者発注やCNCフライスで作る方がはるかに楽 アマチュアなら1枚しか作らないだろうから、
どっちが早く安く作れるかだな。
過去に2回エッチング&穴開けやったけど、作業に疲れて3回目はまだw
https://i.imgur.com/AWZQh6W.jpg それだけちゃんとした物作るなら中華基板屋にチャレンジしよう
Kicadおすすめ 最近はAVRを使った簡単なもの+秋月のパワーグリッド基板
なので1日、2日でハンダ付け作業が終わる。
回路の追加、変更もよくやるので、プリント基板の3回目は遠いかな。 現在3自由度*4脚+センサーをヨー可動させるために1自由度の合計13自由度の多脚ロボットを制作中です
Servo.hで制御しようにも上手く行かないので調べてみたところArduinoの仕様で「同時」制御数が最大12であるという記述と
ライブラリの制限でそもそも何をしようと12台までしか制御出来ないという記述が見付かりました
解決方法として、同時に制御出来ないのならセンサーを可動させる際は脚のサーボは現状の位置でホールドさせるようスケッチを改変すれば行けるのか
はたまた素直にI2C接続のサーボドライバを入れて制御するしかないのかどちらでしょうか
後者は大きな設計変更が必要で、サーボの角度を直接指定Servo.hを使える方が書きやすいのと
D2-13とA0にサーボをアタッチ出来たので前者だと思いたいのですが >>363
TLC5940で16ChのPWM出力ができるよ LEDを1つ点灯させるプログラムでタクトスイッチを電源スイッチ(オンオフ)として使いたいんだけどうまくいかない
初期状態でLEDは消灯
タクトスイッチを押すとLEDが点灯
もう一回タクトスイッチを押すと消灯
(タクトスイッチを押す度にLEDオンオフ)
ということをしたいのだけど、動かしてみると
初期状態でLEDは消灯
タクトスイッチを押すとLEDが点灯
もう一回タクトスイッチを押しても点灯したまま、タクトスイッチで消灯できない
このプログラム(次レス)の問題点を教えて下さい int DENGEN = 2; // タクトスイッチ入力ピン
int LED = 3; // LED出力ピン
int DENGEN_i = 0; //電源オンオフ 0 か 1
void setup() {
pinMode(DENGEN, INPUT_PULLUP);
pinMode(LED, OUTPUT);
}
void loop() {
if(digitalRead(DENGEN) == LOW) {
switch(DENGEN_i) {
case 0:
DENGEN_i = 1;
break;
case 1:
DENGEN_i = 0;
break;
}
}
if(DENGEN_i == 0) {
digitalWrite(LED, LOW);
}
if(DENGEN_i == 1) {
digitalWrite(LED, HIGH);
}
} if(digitalRead(DENGEN) == LOW) {
これは不要なんじゃね
(digitalRead(DENGEN) != LOW)の状態だとDENGEN_iは変化しない
あと、せっかくDENGEN_iという状態フラグを設定したのだからあちこち参照しないでif(DENGEN_i == LOW) {とすべき
onになると500ms維持し、off操作は即時とかアレンジしていく途中のコードとみなしての評価 >>363
ブレッドボードでもシールドでも実際に13台サーボ繋いで
個別に動かすスケッチと12+1台で動かすスケッチ書いて実験すりゃいいだけの話
まあGithub読む知能があるならどちらもやる必要ないけどな
別に作るなとは言わないけどそういうのやりたいんならもっと基礎を固めてからの方がいいんじゃないか? 初心者によくあるけど
・人間の動作に比べたらCPUの動作ははるかに速い
・タクトスイッチのような機械的スイッチはチャタリングがある
・押した回数によって異なる動作をする場合(1回目はLED ON、2回目はLED OFFとか)は押しっぱなしなのか1回離して押されたのかの判定も必須
とかやりたいことと直接関係ないようなことも考慮しないといけないことをわすれがち プログラムも電子回路も理解しないで力技でチャタリングを除去するやり方
・水銀リレーを使う
・ホール素子を使った押しボタン式スイッチを使う 割り込みにしろポーリングにしろ50mS間隔くらいでゆっくり読む >>368
>>370-372
回答ありがとうございます
定数 HIGH / LOWは int 型として扱えばいいみたいですね
最初のフラグ定義のところで LOW なり HIGH を直接入れておけばいいと
チャタリングについて、スイッチの状態を見るところで試しに delay(300) を入れたら不安定ながらも点灯消灯の切り替えができました
20 とか 50 とか 100 だとだめで 300 でなんとか不安定ながらもという感じです
また後でちゃんとしたチャタリング対策をいろいろ調べて勉強してみます #define PIN_SW 2 // 電源スイッチ [Active Low]
#define PIN_LED 3 // LED [Active High]
enum PS {ON, OFF};
uint8_t sw_before = HIGH; // 前回のスイッチの状態
PS ps = OFF; // 電源の状態
void setup() {
pinMode(PIN_SW, INPUT_PULLUP);
pinMode(PIN_LED, OUTPUT);
}
void loop() {
uint8_t sw_now = digitalRead(PIN_SW);
if((sw_before == HIGH) && (sw_now == LOW)) { // エッジ検出
switch(ps) {
case OFF:
ps=ON;
digitalWrite(PIN_LED, HIGH);
break;
case ON:
ps=OFF;
digitalWrite(PIN_LED, LOW);
break;
}
}
sw_before = sw_now;
delay(50); // チャタリング除け
}
いろいろ雑だがこれでどうだろうか。応用するならタイマ割り込みで駆動すべきだが >>373
あと、タクトスイッチに10kΩプルアップ、GNDに1uFくらい付ければ50mSで行けるかも >>373
delay()を使わないタイプのコード
// 定数の定義
const int SW_PIN = 2; // スイッチ入力ピン
const int LED_PIN = 3; // LED出力ピン
const int STABILITY_COUNT_TARGET = 5; // スイッチの安定カウントの目標値
const int STABILITY_TIMER_MS = 10; // スイッチの安定化を確認する間隔(ミリ秒)
// 関数の定義
int switchOnCheck() {
static uint32_t previousTimer = 0; // 前回のタイマー値を保存
static int stabilityCount = 0; // スイッチの安定カウントを保存
static int previousSwitchState = 1; // 前回のスイッチの状態を保存
int currentSwitchState = digitalRead(SW_PIN); // スイッチの現在の状態を取得
if (previousSwitchState != currentSwitchState) { // スイッチの状態が変わった場合
if (STABILITY_TIMER_MS < micros() - previousTimer) { // STABILITY_TIMER_MSの時間が経過している場合
stabilityCount++; // 安定カウントを増やす
previousTimer = micros(); // タイマー値を更新
if (STABILITY_COUNT_TARGET <= stabilityCount) { // 安定カウントが目標値以上の場合
stabilityCount = 0; // 安定カウントをリセット
previousSwitchState = !previousSwitchState; // 前回のスイッチの状態を反転させる
if (previousSwitchState == true) { // スイッチがONになった場合
return 1; // 1を返す
}
}
}
} else { // スイッチの状態が変わっていない場合
stabilityCount = 0; // 安定カウントをリセット
}
return 0; // 0を返す
}
void ledToggle(int flag) {
static int LedState = 0; // LEDの状態を保存
if (flag == true) { // 引数がtrueの場合
LedState = !LedState; // LEDの状態を反転させる
digitalWrite(LED_PIN, LedState); // LEDの状態を設定する
}
}
void setup() {
pinMode(SW_PIN, INPUT_PULLUP); // スイッチのピンを入力に設定し、プルアップ抵抗を有効にする
pinMode(LED_PIN, OUTPUT); // LEDのピンを出力に設定する
}
void loop() {
int flag = switchOnCheck(); // switchOnCheck()関数を呼び出し、戻り値をflagに保存する
ledToggle(flag); // ledToggle()関数を呼び出す
} >>374-376
回答ありがとうございます
とりあえず実験して、中身を後で解読してみます 初心者で失礼します。
センサーやら色々と繋ぐとポテンショメーターの値が揺れて不安定になります。どういった対策がありますでしょうか? すごく根本的な質問で申し訳無いですが教えていただけないでしょうか?
arduinoを複数台、屋内の離れた箇所に設置。
それを一台のPCから集中管理。みたいなことをしたいんですが。
・uno+イーサシールドwith poeみたいな構成で、PoEから電源供給をして、unoには有線LANしか刺さっていない。という運用は可能なのでしょうか?
・またその時、スケッチの書き込みを有線LAN経由で行うことは可能ですか?
なんとなく調べた感じだと、後者はできるのでは…?という気がしているのですが前者はいまいちわからず…
単純にモジュールを指しただけではだめで、poeモジュールのOUTの+9VをジャンパかなにかでUNOに渡して上げれば行けるのでしょうか…?
ご教示いただければと思います。
よろしくお願いいたします。 >>379
原因を特定し、対処することが根本的な対策です
ただ、即効性のある方法として、2ほど提案します
・ポテンショメータの信号とGND間(Arduino本体付近)に、小さなコンデンサ(例えば0.1uFなど)を追加
※この方法は電源電圧が不安定な場合は逆効果になる可能性もあります
・ソフトウェア処理を行います、具体的にはソフトウェアローパスフィルターや平均化処理など >>380
>イーサシールドwith poeみたいな構成
広く知られてるものだと今は入手できないみたい?(詳細は未確認)
他の手段として
POEから電源を取り出すアダプター + Arduino ETHERNET shield2(互換品や類似品)
ただし、上記の組み合わせでスケッチの書き込みは難しいと思う
有線ではないけど、ESP32やESP8266ならネットワーク経由でスケッチの書き込み出来る >>381
ありがとうございます
0.1uFコンデンサは既に試していたのでソフトウェア処理の方調べてみます! ロボット()作ってる(自称)ってこんなのばっかだよな
>>363 足りない頭(arduino)で考えないで、もう一個頭を追加する
どうせ足以外を何かしたいってなるんだから
.>>363 ラズパイだとカメラはモニタを装着できるらしいけどarduinoでも画像処理って効くんですか?
ロボットっつったらやっぱステレオカメラとヘッドマウントディスプレイで没入感っすよね!しらんけど(^p^) ラズパイはスペック高いしhdmiなんかも備えてるから映像扱いやすい
arduinoUNOはスペック低いし映像出力とかない。扱えないことはないけど大変 >>382
ありがとうございます。
確かにちゃんと調べるとPoEついたシールド、ほとんど在庫ありませんね…
海外だとシールドじゃなくて本体にRJ45がついたモデルがいくつか出てくるんですけど国内にはあまり入ってないしそもそもディスコンな感じなんですかね…
諸々教えていただきありがとうございます。
Wi-Fiだとちょっと都合の悪い部分があるため、他の方法とか考えてみようかと思います! >>383
もし詳しい原因を特定したい場合は、
使用機種や配線の長さ、電源の状態や使用状況、接続機器の状況などを
詳しく記載してみてください、状態の写真があるとさらに特定しやすいです ArduinoでUARTを4つ使えるのってありますか? いろんなシールドを使って大活躍・・・arduino王が盾の勇者様だったんだよ説 >>390
Arduino Mega 2560 はどうでしょ。 >>392
フロー制御必要なプログラム書くやつは素人 >>396
全てのポートで「送信してレスポンス待つ」のか。
まあ、センサー相手ならそれでもいいな。 UARTですぐに返事よこさない相手というのもないなぁ。
逆に TCP/IP は途中で死ぬのが普通だからほんとめんどいわ。 フロー制御必要なものってなんだ?
今までtx rx 以外繋いであるもの見たことないわ UARTだって多量のデータを送受信しようとしたらどこかでフロー制御(かレート制御)しないと実用に耐えないと思うよ だだだだーーっとデータ垂れ流して受信するんじゃなくて
ack/nakみたいな応答と組で使うからハードでのフロー制御までいくことないな レシートプリンタでフロー制御するとボーレート上げれるってのは見たけどそれ以外見たことないな PCとつなぐときは、取りこぼししない程度の速度に抑えてしまうわ。
化けて困るデータはCRC付けるのでやばいことにはならないし。 最近はAVRを使った簡単なものしか作ってないので
UARTの送信割り込みを使っていない 48VDC電源でArduinoを駆動したい場合、皆さんならどうされますか
LM317はMAX40V、お安い中華DCDCモジュールは28V程 >>406
20KΩとLM2904のVCC/VSS直列でVCCには32V以下にはなって、かつICCは十分になるんじゃね?あとはメガオームオーダの分圧で7V位のref作ってMOSFET制御 >>406
そもそもそんな設計にしない。
指定されたらPoEモジュール使う。 >>406
Arduinoの消費電流がどの位で使うかによると思う
※少ないならリニア方式、多い場合や電力効率を良くするならスイッチング方式にする
1.LM317HV等の対応電圧の高いレギュレータを使う
2.トランジスタとツェナーダイオードを使って簡易的なリニアレギュレータを作る
3.対応電圧の高いスイッチングDCDCコンバータを使う
4.スイッチングDCDCコンバータを作る
入手性を考えたら(2)が早いかな
https://i.imgur.com/4OgPdhe.png (2の回路図)
※ArduinoUnoのVin(7~12Vに入力すると想定)
リニア式の場合、Arduinoが100mAも消費したら変換時の発熱が4W前後(48→8Vとして)有るので
それに合わせた放熱板設置等が必要かな LM2596SのDCDCだな。モジュールもチップも安くて入手しやすい DCDCコンバータで48Vから12Vを作るだね。
arudino動かすだけなら2~3千円くらい? LM2596SやMC34063Aは Vin (max) (V) 40 ってなってるな
俺ならDuty50%か25%で発振したあとコンデンサで平滑、ツェナーとトランジスタでリミット保障して粗い12Vか24V作って
安いDCDCモジュールかレギュレータかな
LM317HVで150mA使うと6.45Wも無駄になるし廃熱も考慮しないといけない おれならAliで「DC-DC 48V 降圧」で検索するw このまえアリで6V-36V入力CVCCコンバーター買って24V電源つないだらコンデンサが破裂したぞw
みたら耐圧16Vのコンデンサやった。
製品設計はカタログ通りでも製造工程で部品がすりかえられるんじゃないかなあそこは あらためて調べてみたら、DigikeyだとGAPTEC社の1D8E_4809S3Uが最大52.8Vになってて、わりかしリーズナブル。
少ない電流でも、それなりの発熱になるのでお勧めしないけど、LM317。
これの絶対最大定格40Vは、Vin-Vout なので、たとえばVinが50VでもVoutが40Vなら問題はないことになる。
といっても過渡的に高い電圧はかかる場合があるし対策は必要。 lcd1602で遊んでるのですが
1行目で1から99を足し算表示する→繰り返し
2行目は99から1まで引き算表示→繰り返し
void loop();に入れたらどっちかしか計算してくれないww
並列処理したいけど
なにをしらべたらいいのん? >>417
変数は独立しているか?
表示も独立して正しい桁に書いているか?
もしくは常に両方書いてるか? 1行目の処理が終わってから2行目を処理する、ということは押さえているのかな?
「並列処理したいけど」あたりにあやうさが潜んでる。
まずはソースコードを開示したら。 人間の目で「並列処理」しているように見えれば桶だよ
肩の力を抜いてぼちぼちやってみましょう windowsプログラミングでイベントドリブンや時分割学んでマイコンに移ったほうが良いと思うのだけど
いきなりマイコンでプログラミングはじめちゃう人も多いのかな 何の目的もなくプログラミングがしたいんだったらwindowsの方がいいと思うけど
プログラミング知らないけどマイコン使いたいんだったらいきなりマイコンの方がいい ちょっと上のロボットビルダー(笑)くんもそうだけど「同時」とか「並列」ってワードが出てくる時点でもう核地雷なんだわ
数字読めないのに応用数学に挑むみたいなもう初心者以前の問題 そういう地雷野郎は絶対にコード上げないよな
まあ書けないものを上げる事は出来ないからだろうけど く(p^ )
/(ヘへ いべんとどりぶん・・・
ヘ(^p^)ヘ
|∧ ぷりえんぷしょん!
/ おれのたーん! どろー!
手札から 熱烈歓迎・応援する心を墓地に送り、
ディスパッチ翁を召喚!! (^p^) 昨日からarduino始めました(^o^)ピヨピヨ Arduinoの前にまずプログラミングの勉強をすべきだと思うけど、低価格でハードルが
下がった結果Arduinoで初プログラミングて人が増えたんかね >>434
それだけでエスパーキボンヌ教えて君が跳梁跋扈する理由にはならないんじゃ
406だって単発聞き捨てだし >>433
ぼくもハロワとLチカ修了ボーイ
一緒に楽しんで頑張ろう!(^o^) 低価格とはいえArduinoは有料だけど
VisualStudioは学生は無料で入手できたような気がするゾ
ってことは、費用云々っつーよりも
(ダイアログベースのとかコンソール窓で
Windowsのプログラムを組むより、
Arduinoの)スケッチとかってのが初学者には やっぱ
取り組みやすくて受けがいいんじゃね?しらんけど(^p^; は?
Arduino IDE も無料だろ。
Lチカもシミュレータで確認しろ。 >>406
アマゾンで"KKHMF LM2576HV"で検索して出てくる500円のやつでええんちゃう? PCある前提だからLinux入れればいいのに
シリアルに結果吐くかコンソールに吐くかの違いでしょ PCある前提でもLinuxである必要って何だろう。Windowsでいいのでは。
初学者向けの情報ってメジャーなものに集まるわけだし。
>>437
何万円もするならともかく、数1000円を切る初期投資なら、費用が影響する要因よりも、
PCのプログラミングでやりたいことがなくて、マイコンでやりたいことがある人が、
いきなりマイコンでプログラミングをしているってことじゃないですかね。
コンソールやウィンドウに、Hello! World って書かせるよりも、
LEDが点滅する方がずっと楽しいって思える人もすくなくないはず。
特に誰の規制や指図も受けなくていい、趣味の領域なら「基礎勉強よりまずは動かしたい」は人情だし。 対応するCPUやボードが増えてきて
元々面倒くさいIDEがさらにややこしくなってる。
インストールするだけですぐ使えないと初心者には難しいね。 >>415
まぁ中華パーツやモジュールに信頼感は禁物だな そもそも基礎からコツコツ積み上げていったならここで聞く事は何もない筈だからな
つまりここに用があるのは基礎すっ飛ばしたアホだけ
叩かれたり塩対応もやむなしというかそうしなければならない >>446
極論でスレの趣旨>>1全否定してるオマエがアホなだけだろ
スレ違いだからどっかいけカスが arduinoやプログラミング初心者なのはいいけど
検索すらまともにできないネットやPCの超初心者多いからな
ぶっちゃけこういうスレは検索代行でしかない ここは初心者大歓迎スレですよ?
初心者を大歓迎できない人はどこか余所のスレでご活躍の程宜しくお願いいたします 人間相手にkwsk責めしたり回答に疑問を呈したりすると、まあその後の展開は
不毛なものにしかならないけど、aiチャットならその辺は無視できる
あと条件の小出しも大概は荒れて終わって何も得られないけど、霧が一つ掃わ
れることで見えてくる条件もあるわけで、最初に全ての条件を挙げて質問を作文
するのって、それ自体がかなり難易度高い
その辺のあやを丸ごと無視できるのがaiチャットの強味
まだまだ万能には程遠くても、人間相手より使い勝手が良い部分は確かにある 質問者の皆様へ
私はArduinoスレで、初心者の方々を大歓迎します。
初心者の方が質問や意見を投稿することを歓迎し、適切なフィードバックを提供することに最善を尽くします。
初心者の方々の質問や意見に対して、可能な限り優しく丁寧に対応いたします。
また、初心者の方々が投稿した成果が思ったよりも良くなかったとしても、それを受け入れます。
初心者の方々に優しく接することは、自分自身への利益になると考えています。
初心者の方々の質問や意見に丁寧かつ親切に接することで、自分自身も知識やスキルを向上させることができるからです。
また、初心者の方々に対して、わかりやすく説明することで、自分自身の理解力も深めることができます。
初心者の方々に対して、常にフレンドリーであることが大切だと考えています。
Arduinoスレに参加することで、初心者の方々がよりよい成果を得られるよう、私たちがサポートすることができます。
どうぞお気軽にご質問やご意見を投稿してください。
↑って心をもって、初心者の僕に接してほしい \(^o^)/ arduinoロボット作ってますけど上手く動きません!
どうしたらいいですか? >>456
まず服を脱ぎます
そして、質問の内容から足りないと思われる以下の情報をなるべく多く正確に開示します
- 問題の詳細についての情報: ロボットがどのように動かないか、具体的なエラーがあるか、プログラムが正しくロードされているか、など。
- 使用しているハードウェアの詳細: 使用しているArduinoボード、センサー、モーターなどの種類、および回路図など。
- 使用しているソフトウェアの詳細: 使用しているArduino IDEのバージョン、使用しているライブラリ、およびコードの詳細。
- 既に実施した手順: 問題を解決するためにすでに行った手順、試みた修正、およびその結果。
- 期待される動き: ロボットが期待される動作をしない場合、期待される動作についての詳細な説明。
- その他の背景情報: このロボットが何をするために作られたのか、制御システムの目的、およびその他の関連する情報。 >>457
面倒臭いです
そのくらい察してください
あなた本当に上級者ですか? 上級者ならエスパーで行間埋めまくって
さらに先を読む回答まで欲しい
これぞ経験と勘 arduinoを使ってプログラミングと簡単な電子工作をしてみたいです
プログラマやってるんでプログラミングはできます
電子工作の知識はほぼゼロです
最初はこれ買っとけみたいなのありますか?
(工作キット的なやつとか、バラで買ったほうがいいとか)
あと初心者向けに体系的に説明してる文献だったりウェブサイトあれば知りたいです 何か作りたいものがあるとかでないと飽きて放っておくだけになるからやめとけ まずアマゾンギフトカードを買います
初心者はそれから >>460
ELEGOOとかのスターターキット買えば一通り基礎を学べる
チュートリアル(英語)があるから全部やればざっくりどういうことができるかは理解できるはず
ググれば日本語での解説も沢山ある
とにかくやってみれば「あれもしたい、これもしたい」がでてくるだろうから
その時に基礎的な書籍買ったりして知識固めていけばいい
まずは買ってやってみよう
合わなかったとしても数千円の出費で済むから大した痛手にもならないよ >>464
ESP32ならいいけどAdruinoだと
LANかWiFiにつなぐの面倒じゃね? ESP32もAdruinoIDEで使えるので広義のAdruino てことはstm32もラズパイpicoも広義のarduinoってことか 俺もスターターキットをおすすめするわ
安いのならamazonで2〜3,000円であるっしょ
バラで買ってもそれ以上したりするし
あとハンダ付けグッズとテスターがあれば初期学習は十分 「Arduinoをはじめよう」
買ったけど殆ど読んでないわー Ethernetやりたいならそれこそ今月発売予定のArduino UNO R4 WiFiが良いんじゃね 初心者がネットやりたいならESPがいい。未発売な製品に比べて情報量が圧倒的に多い >情報量が圧倒的に多い
確度の高くない情報が圧倒的に多いのはうれしくないな UNO-R4 / ESP32
SRAM 32kB / 520kB
FLASH 256kB / 4MB
画像の多いWebとか喋らせるとかするには貧弱な気がするわ UNOはESP載ってるからそっち側には普通にフラッシュとか多いはずだよ
その辺どう連携されてるのかわからないけど どれで初めても良いと思うけど、スペック比べてうんぬんとかまだ先でいいよ
あれもやりたいこれもやりたいってなってから考えれば十分
:
初めから作りたいものが明確にあるならまだしも、右も左もわからない状態なら
キットに付いてるUNOを使いこなすだけでも十分な学習ボリュームが待ってる
:
まずはLチカから順番に覚えていけばいいし、途中で飽きなければいずれそういうスペックの高いやつにも目が行くようになるだろう ネットで検索するとハードウェアのレジスタを直たたきするようなスケッチが少なからず出てくるけど
教材としてみた場合これらは不適切なコードだと思う
そのようなコーディングは移植性を大きく損ない、より高性能なマイコンへステップアップする際の
障害となる可能性が高い。本来はメリット・デメリットを十分理解したうえで使用する手法だし
どうしても使用するならライブラリとして抽象化されるべきであろう ありがとうございます
>>460です
Amazonでキットが売られていたのでそれでまずは遊んでみようと思います analogWrite(6, time % 2);
time++;
delay(100);
これでLEDが点滅しないことがありました
timeはグローバル変数です。
スケッチを新規作成して書き込んだら同じコードでちゃんと動作しました
こういうのは電子工作ではよくあるんですか? 変数の初期化してなくてオーバーフローで止まったんじゃないの よくあるけどほとんどの場合自分が悪いなw
time%2でtime++だから、timeの値が小さい間は出力が小さいから光ってるように見えない 変数は初期化してたんですがデバッグしてたら%演算がうまくいってないことがわかって
コード削っていったら>>480のコードが動かなくて
スケッチを新規作成してコードをコピペしたら動くようになりました 微弱電圧でスイッチングする外付けの回路が無いのなら
analogWrite(はdigitalWrite(が正しい動作なんじゃないのか おそらく9割方は自分のせいでバグだと思ってるんですが、
電子工作ではコードが正しくても他の要因でコード通り動かないということがあるのかなと思いまして
実際ありますか?そういうこと アリで買ったRTC、未使用bitは0のはずが秒の3bit目がゴーストとして現れて
ライブラリそのまま使うととんでもない日時になったので、未使用bitをマスクするようライブラリ修正したことがあるわ
まったく動作しないんじゃなくてちょっとだけ挙動が違うICと雑なライブラリ作者が出会ってしまった悲劇 そうやって覚えてくもんよね…
Serial.println(time);とかは癖つけてみるとか >>480
>>483
chatgptの解答
それは興味深い現象ですね。ご説明いただいた状況から考えると、おそらくArduino IDEや開発環境の問題だった可能性があります。以下の原因が考えられます。
以前のコードや設定が残っていて、正常にビルドやアップロードが行われなかった。
Arduino IDEが一時的に不安定な状態になり、正常にコンパイルやアップロードができなかった。
ボードやシリアル通信の問題で、正常にアップロードが行われなかった。
新しいスケッチでコードをコピペして動作するようになったということは、おそらく開発環境の問題が解決されたと考えられます。電子工作では、開発環境やツールの問題も時々発生しますが、こういったトラブルシューティングも重要なスキルです。
今後、同様の問題が発生した場合は、以下の対処法を試してみてください。
Arduino IDEを再起動する。
コンピュータを再起動する。
Arduino IDEの設定を確認し、ボードやシリアルポートが正しく設定されていることを確認する。
必要に応じて、Arduino IDEを再インストールする。
問題が解決されたようで安心しました。今後も電子工作をお楽しみください。 質問する人は、いただいた回答を意識して最後までじっくり読んでほしい。
>>482 は 2つ(派生を含めて3つ)のことを書いている。
1.「よくある」
2. 派生して「ほとんどの場合自分が悪い」
3.「time%2でtime++だから、timeの値が小さい間は出力が小さいから光ってるように見えない」
>>488はこのうち 1 にだけレスを返している。
ある種の障害を持っていると、次のような読み方をする。(この障害は特別珍しいものでもないと思う)
「自分が期待したことが強く見えて、自分が期待していないことが軽く見える」
「最初に書かれたものが重要で、それ以下は重要ではないように見える」
多くの対話的な文章で「導入→(説明→)結論」の構造が見られるので、むしろ重要な内容は後ろに
あることが多いと思う。また「導入」では、質問者に対し、理解を示す内容が書かれることが多いので
そこが「自分が期待した内容だ」と受け取ってしまうと理解を誤ってしまう。 荒らしがおもちゃ手に入れて生き生きしてるわ
さようなら 愛の嵐っていうナチス軍服半裸美女の映画がむかしあったけど、
よだれの嵐って乾いたらものすごく臭そうやな;しらんけど(^p^; 質問です
wavtriggerという音声ファイルを再生する基盤がありまして
これは音声の同時出力が可能でarduinoからの通信や物理的なボタンで再生や停止をすることができます
昔買った物を持っているんですが今は10000円弱ぐらいするのでもう少し安くなんとかしたいのです
音声の同時再生を安価で出来るような基盤は他にありませんか?
最低でも5個の音声ファイルを同時に再生できるようなものがあれば教えていただきたいです プログラム書けばラズパイで出来そう
音声ファイルは自由に入れ替え必要?
再生長さは? WAVトリガー - スイッチサイエンス
https://www.switch-science.com/products/2491
これか。用途的にCD音質は過剰に感じるな
ぶっちゃけどれだけプログラムの作成に手間かけられるかじゃね?
技術的にはUNO R4やDue等の32bitマイコンだったら追加ハードなしで実現できそうだし >>501
とは言え、さすがに12bitは音悪いんじゃね? DFPlayerじゃね?普通は
AmazonでもAliでもお好きな所で、お好きな数を。。。
最近はチップが変わったとか心配もあるようだけど。
それでもシリアル通信で制御するので、好きなコントローラー、
ボタンでの制御も出来る。
アンプも付いているので、スピーカー直刺しも出来る。 みなさんありがとうございます
>>500
音声ファイルは自由に入れ替えしたいです
再生長さは3分程度のBGMを流しながら5秒程度の効果音を鳴らしたいです
具体的には数年前に作った試作品が下記でパチンコみたいなものを作ろうと考えています
今持っている部品で作品が完成した場合、テスト環境が失われるため複数の環境を安く手に入れたいと考えました
https://www.youtube.com/watch?v=-3hnjwLFEhg&t=7s >>501
aruduinoの新しいものが出るのは知りませんでした
ありがとうございます
>>503
DFplayerも調べてみます
貴重な情報をありがとうございます
聞いてみてよかった
ありがとう >>503
DFPlayerの新チップならシリアルから流し込んだmp3再生できそうだなとデータシート見ておもったよ
同時に5cchシリアル流すのがちとアレだけど安いマイコン5個にそれぞれバファリング通信させてそいつらを管理下におけば
でもそれならESP32を5個並べたほうが楽なんだよな WAVtrigger は14音源同時再生だから
DFPlayer 14個だと余計高いと思いました。 >>507
これは!安いですね!
大きいドットマトリクスだと表現力も上がりそうです
もう何年も電子基板をさわることがなかったので価格についても無知でした
ありがとうございます! >>502
出力アンプやスピーカーまでCD音質ならね。>>504程度だと22.05k/8bit/Monoでも過剰かも
てか極端ではあるがAVR8による実装例
8ピンICで遊ぶ【電子工作】 - ニコニコ動画
ttps://www.nicovideo.jp/watch/sm7607242?from=294
こっちの方が高音質に聞こえる
結局、ソフトを頑張るかハードに金掛けるかのどこで折り合いをつけるかって話じゃないのかな
既出のESP32なら高い計算能力とあり余るメモリに物を言わせれば1個で完結できる可能性が高い >>509
ごめんなさい。値段が変わっているようです。
少し前までセールやってました、今の店頭価格は不明ですが、通販は500円でしたね。
https://imgur.com/ERtXoxb.jpg こっちの4個入りは200円だよ
//eleshop.jp/shop/g/gL4K41I/ >>516
Processing は別の言語だろ。
Arduino 言語でPCをプログラミング出来ればって話。
まあ、Windows上で動かすことになるだろうけど。 エミュかシミュなかったけか
USBパラレルでIO統一すれば流行るかもしれんね >>518
C#とかpythonじゃだめなん??? 世の中にたくさん転がってるarduinoのアプリがそのままPC+USBパラレルで動いたら面白そうじゃん
C#やpythonじゃそうはいかない 言語の統一はだれでも一度は思うよね。
完璧な言語は無いし、常に進化してるから無理なんだけど。 >>524
おまえの秘蔵ライブラリはなんですくみずばっかなの?[^p^] arduinoスケッチはC++からの派生言語でしょ 微妙に流れの意図からズレてるから>>531の回答は撤回するね 自然言語最強伝説
そのうちGPTxがアセンブラコード吐くだろ
「arduino unoに収まるサイズでブラウザアプリのコードを作成しなさい」 >>534
unoではないが……
ttps://m.youtube.com/watch?v=nm0POwEtiqE >>534
「CASLで乗算プログラムを書いて」でプログラム書くよ。
ただ何故か、無茶苦茶遅くて1行/4秒ぐらい掛かる。
SPARC、MC68000 でも書いてくれる。 Windows(PC)にGPIOをのっけて、Lチカしたいという事?
なんだかなあ.... win2000頃はまだプリンタポート(パラレルポート)があってgiveio.sysで直接IO叩けたけど
今はもう汎用USBパラレルの時代も終わって、マイコンで好きなUSBデバイス作る時代になったな USBプリンタは標準クラスの中ではサポート状況がよくかつ速度が速い方だと思う >>532
入門しようとしてるものです C++って最高峰の難度だと聞いたことがあります
arduinoは難しいんでしょうか(T_T) 小学生向けプログラミング講座があるくらいだから
自分が小学生以下なら、スルー >C++って最高峰の難度だと聞いたことがあります
どんな言語でもそうだけど、全部を理解して全部を使いこなすのはたいていの人ができてない。
多くの人がわかる範囲で使って、いいものを作っていたりする。
英語だって、日本語だって、全部を完璧に理解することなんて難しいけれど、
Helloやコンニチハで、人とあいさつを交わすことはできるだろ?
まずはLEDを点滅させてみようぜ。 >>543 なかなかの情報通やな、そのとおりだ。
ちなみに、これは余り公にしてはいけない ここだけの秘密の話なんだが、
おまえの奥さんは世界最高の美女だから
ぞんざいにあつかわず、大切にしろよ(^p^) >>548
奥さん本人
キタ━━━ヽ(∀゚ )人(゚∀゚)人( ゚∀)ノ━━━!! AVRじゃなくLGT8Fなのですが、GPIOをLOWにした状態で電源オフ、電源電圧が5Vから0Vに
下がった場合、0Vになって完全に切れる前に動作電圧を下回ってフリーズ等した時点で
LOWにしたピンから電圧が漏れる可能性てありますかね?
可変電圧電源で試したわけじゃないのですが、どうもそんな動作をしてる様に見える >>551
ありうる。リセットもかからず動作が未定義になる電圧があるのは普通 >>552
セルフ電源オフをしたかったんですが思ったより難しそう! ポート出力やマイコン外部のFET、トランジスタをONにすることで、ハードウェアの電源OFFトリガーを引くような構造だと
電源がOFFになり切る前にFET、トランジスタがOFFになって、電源OFFに失敗するのは電源設計あるあるじゃないですかね。
FET、トランジスタをOFFにすることで電源がOFFになる方が簡単かも。 >Aidepeen NANO V3.0 5V 16M USB Type-C CH340 ATMEGA328P-AU大型チップ版
Auduino IDE 2.1.0+CH340ドライバ2023/2/11版
どーやってもアップロードできない+シリアルモニタがエラーを出す。
それも4枚全部。
USB-A、miniUSB、microUSBのパチもんUNO, NANOは正常にアップロード出来てる。
みんなどうしてるんだろ?
既出ならゴメンもう疲れたよ... >>555
例えば他のArduinoからブートローダーを書き込んでも失敗する? >>556
あぁ、その方法がありましたな。自信がないけどちょっとやってみる。 それにしてこれのAmazonの商品ページは例によってめちゃめちゃな日本語訳だな
「大型チップ版」っていうのはどこをどう訳したものか気になるな そんなの気にしてたら禿げると思うよ
蟻なんかでもなるべく英語表示にさせている Google翻訳を使ってるんだろうけど、
DeepL並にAIを使って精度上げて欲しいよな >>555
とりあえず自己解決。
1)まず、IDEがゴニョゴニョしてるのを見るため、
Arduino IDE 2.1.0 のファイル>基本設定>設定タブの 真ん中あたり、
より詳細な情報を表示するのコンパイルと書き込みにチェックを入れる。
2)次に、ウインドウズのデバイスマネージャを起動して、
ポート(COMとLPT)のNANO接続のCOMをダブルクリック、
port settingsの上のBits per secondを「57600」にしてOK連打
3)何かのスケッチ(エラーが出ないものが望ましい)をアップロードしてみる。
見てみるとavrdudeは書き込み成功していて正常終了。
そこからIDEがポートを開けないらしく、「当該ポートを開けない」と怒ってきます。
現在のところ、書き込みしか出来ません。
が別に書き込めればいいので(テストは他でやるので)とりあえずはOK(ぉい)
アップロード後はテスト通り動いているようです。
ボードマネージャー用の設定json書ければいいんでしょうけど私の能力を超えてます。 >>561
「マイコンボードに書き込む」じゃなくて「書き込み装置を使って書き込む」でうまくいかん?
megatinycoreがそうだったのであのへんにバグがあるのかもね クソ古いブートローダーが書かれているんじゃない?
Optiboot入れてあげなよ。 >>561
ボードを Arduino Nano から Atmel atmega328p Xplained とかに変えてみる 古いNANO(中華)と新しい目の(中華)だとコンパイル時にマイコン選択でOLDかどうか選択させられるんだけど、これってハード的になにか違うの?
それともファームウェアだけ?
後者の場合だとしたとき古いのを新しいファームウェアにする方法ってあります? あ、ひょっとして >>563 の方法でこちらも解決できる? Optiboot(Old/Newのどちらとも違うので注意)
https://github.com/Optiboot/optiboot
書き換え環境の作り方
https://ht-deko.com/arduino/bootloader.html
>>566
これで新しいNanoよりも更に容量が小さく新しくなるよ(空き容量が増える)。
ほぼ気持ち程度だけどね。 ども。555です。
報告が遅れてますが、FT232RLのUSBシリアル変換ボードを注文してたからでした。
で、USBシリアル変換ではOptibootに書き換えてるときにエラー(意味ねぇ)。
アマで売ってる赤いシリアル変換ボードですがねぇ。
しょうがなくUNO経由でOptibootに書き換え。
avrdude君がdoneしたからおそらく成功してると思われますが、
スケッチのアップはまともになりましたがシリアル通信ができない。
結果としては>>561から改善はされてないようです。
まぁ、使えてるかそれでいいんですけど。
皆様もUSB-CのNANOにはお気おつけください(´・ω・`) >>571
>スケッチのアップはまともになりましたが
ブートローダーを書き込んだ後にUSBC経由でスケッチのアップロードができてるなら
シリアル通信(CH340)は問題なく機能してるように思うけど
念のためCH340のドライバを再インストールしてみては?
あとは様々な通信速度を試してみるとか?
前にArduinoIDE2.0系のシリアルモニタで不具合があったことがある
不具合の組み合わせ忘れたけど・・・
試しに、別のシリアルモニタを使ってみたら?
例)ArduinoIDE1系 , TeraTerm , vscode , 他 >>571
> で、USBシリアル変換ではOptibootに書き換えてるときにエラー(意味ねぇ)。
シリアル通信で、ブートローダーの書き換えは出来ないでしょ?
それ出来るの STM32 ぐらいなのでは?
> スケッチのアップはまともになりましたがシリアル通信ができない。
ボード設定を Optiboot on 32-pin cpus、ATmega328p、16MHz に設定していますか?
シリアル通信は Serial.begin(115200); とかで設定しないと、適当な数字になってたはず。
ArduinoIDE のシリアルが少しおバカなので、別の PuTTY などを使ってテストしてみれば?
> 皆様もUSB-CのNANOにはお気おつけください(´・ω・`)
いや使い方の問題のような気がします。モノは間違ってないと思われ。。。 スマン
>>572 に答えが書かれていて、同じことを連投したみたいになってしまった。。。 5月もそろそろ下旬だがUNO R4はまだかね?
現品はともかく〇秘は何なのかとか
どのようなAPIが準備されるのかとか気になる所だ >>572
>>573
レスありがとうございます。
シリアル通信が出来ない、ってのはIDE2.0がNANOをUSBに刺した瞬間に、
Serial.begin()も書き込んでないし、何もしないのにシリアルモニターが勝
手にNANOにつなぎだして勝手にエラーを出すような感じです。Serial.()で
エラーを出すわけではありません(IDEの方でコケてるから当然通信はでき
ないわけですが)。
それでIDEを1.8.19にしたところ、ビンゴで何事もなくアップロードもシリ
アル通信もできるようになりました。オチがあっさりしすぎて何なんですが(´・ω・`)
どうもお騒がせしました。 にわかです
捨てずにとっておいたPS2英語キーボード
(101とか104とか)をUSBに改造しようと
おもいます
(16×8とか16×7とかがコントロールICに
きてるはずなのでそこを乗っ取り)
マトリックスの仕組みとかダイオードの必要性
とか74HC595とかは勉強しました
promicroと74HC595×2を使った回路図、
そのソースコードの典型例って
どこにあるんでしょうか?
(ふつうにUSBKBとして使えればOK)
arduino.cc
を見ても見当たらないのです
https://i.imgur.com/xtX76b4.jpg PS2の信号をデコードしてUSB_HIDに変換したほうが早いとおもう 自分の好きなようにキーを
レイアウトできたらいいな~と思うんです
capsをctrlに
numをtabに
とか(ありがちだけど) 割り当て変更するにしてもPS2信号読んだ方が楽。というかPS2信号自体がキー押下信号だからそれより上で読む意味がない。特殊な同時押しを検出したいとかなら別かもしれんけど。 PS2コントローラーはリピート管理もやってるから、本来リピートするキーを止めたいとかその逆だとベタ読みするしかないよな
どこまでやりやいかわからんけど USBとかBLEは鬼門に感じる
糖質さんが規格決めたんだろうな ゲームをしようと同時押しで死ぬ
>>581
SharpKeysで良くね? PS2キーボードの仕様を勉強しました
キーボードは、
Aを押した
Aを離した
という信号しか発しないんですね
押し続けている間のキーリピートは
パソコン側でやっている
これを
Aを押した(Bを押したことにする)
Aを離した(Bを離したことにする)
とすればいいんですね
信号をためこんでおいて
Aが来たらBに置き換えて送信、
ってそんなにうまくいくもの? >>586
>Aが来たらBに置き換えて送信、
マイコンなら楽勝(Arduinoで楽勝とは限らない)
似たような機能を備えた既製品だってあるでしょ 同時押し問題とかチャタリングとかでうまくいかないけどうまくいくよ なやむならやってみよう
やればできる!(できるとは言っていない >やればできる!(できるとは言っていない
ごめんなにいってるのかほんきでわかんない(^p^; >>586
PS2キーボードの信号をマイコンで直読みしてもリピートするよ >>590
とぼけてるんだと思うけど
いちお初心者向けに解説
やれば[やった通りに]できる!([期待していた通りに]できるとは言っていない やればできるかもしれません
抽選で当たるかもしれません >>591
それはdata ではなく
clk(搬送波)では >>594
PS2でパソコンがキーボードへ発行するコマンドが何種類かあるのは知ってるとおもう
よく使うものだとインディケータLEDの点灯コマンド Set/Reset Mode Indicator 0EDh
それ以外にキーボードが押した離した(メイク/ブレーク)発行をメイクだけにするコマンド
個々のキーリピートを設定する 0FBh, [Code]
キー押しからリピートが開始するまでの時間を設定するコマンド 0FDh
bit5,6(00=250ms,01=500ms,10=750ms,11=1000ms)
キー押し続けてリピート搬送するレート Set Typematic Rate/Delay 0F3h
bit0-4で30ms-2000msを指定
などがある
IBMの仕様だと3種類のキーセットから選べるようになっているけど
市販品だとそれは省略されているものが多かった 予想だけどwindowsのドライバがPS2キーボードがリピートする事をやめさせてwin側で管理するという事態が発生し混乱を招いているのかもしれない
マイコンを接続する場合には最初にリセットコマンドを送ってPS2キーボードがどのどうにふるまうか設定すべき めんんどくさいからQMKにしたら
作例はたくさんあるんだから キーボードがリピートする仕様だと文字入力以外の用途で都合が悪くないか
例えばゲームとかはメーク/ブレークの方が望ましいだろう >>598
QMK 74HC595 で検索したら
ATMega32u4 と74HC595×2を使った回路図、
ソースコードが出てきました
このページの内容をじっくり研究すれば
できそうな気がします
ありがとうございました >>600
74HC595でマトリクスしなくても、ProMicroを複数乗せて配線できれば
QMKの設定だけで何とかなるけど... いっそ1キーに3台ProMicro
たすうけつかいろで多重化
冗長設計(;^q^)しらんけど >>604
i2cだと多いとクロックストレッチが起きそう arduino mega2560が欲しいのですが今はアリで2000円弱ぐらいが最安値ですか?
もしuno r3やesp32でmega2560と同じぐらいピン数増やすには別でチップ増設しないとダメですよね? IO増やしたいだけならIOエキスパンダとかで良いのでは。 LEDをいっぱいチカチカさせたいだけならマトリックス組んでダイナミック点灯するなり
シフトレジスタ使うなりすれば必要なピン数をかなり削減できる >>610
3Dプリンタでオープンプロジェクトでmaga2560使ってる例では
必須で68pin 拡張用に37pin 3軸制御例だけどこれくらい必要な感じ?
ステッッピングモータドライバ5台分 15pin
エンドストップ近接センサー3軸6台 6pin
サーミスタx4 8pin
ファンコントロール3台 6pin
LCDディスプレイ 32pin
リセットボタン 1pin
サーボ4台 4pin(拡張)
拡張用の予備 33pin(拡張) 前に書いたことあるけどドットマトリクスでパチンコ作りたいだけです!
たいしたことなくてすみません!
unoだと僕の力量だとメモリ不足で作れそうにないのでmega2560かesp32にします
ありがとう 何を思ってか5x7ドットマトリクスLED買い込んじゃったが。
1)5x7マトリクスのドライバはかつて存在したらしい。今は入手不能みたい(MAX6952など)
2)MAX7219を使う。って生IC手に入れるよりも8x8キットから取り出す方が安いけど。それって8x8LED余っちゃう。
3)74HC595で地道にやりたいけど、ダイナミック点灯になっちゃうし。
4)いっそのことLED表示部を他のCPUに投げちゃう。
さて、どれでいこうか思案中。 HT16K33 で桶じゃね?
7x11でPCB起こしているところだけど >>617
その程度の用途に多ピンマイコンはもったいないなぁ。自分だったら
U74HC595AG-D16-T
ttps://akizukidenshi.com/catalog/g/gI-14053/
とか
MY9221SS
ttps://akizukidenshi.com/catalog/g/gI-09677/ はんだ付けできるならこっちの方がch数が多い
とかを使うな。いずれもデイジーチェーン接続出来てかつSPI(単方向)で制御可能 ArduinoでLチカで終わる人の割合ってどれくらいいるんだろう? >>620
ありがとうございます
シフトレジスタは念のため買っておいて一段落したら使ってみようと思います
探したらMAX7219という5年以上前に買ったものが出てきました
あれやこれややろうとして勢いを無くすとまた何年も放置になってしまうのんでとりあえずあほみたいなコードでやってみようと思います
自分勝手な意見ですみません!
シフトレジスタは今後勉強してみます
あとやはりarduino単体だとunoはメモリ不足なので結局megaでごりおししてみます
まだドットの配列のデザインからやってるので何年もかかります
https://i.imgur.com/oC9jEys.jpg
https://i.imgur.com/SE76F6E.jpg >>622
自分勝手で大いに結構
表示器制御以外にどんな処理やってるのか知りませんが 8x24ドットはメモリ的には uno nanoで余裕よ?
単色でしょ?
また7219は使いやすいICだけど、この場合3つカスケードすることになるけど3つ持ってる? 表示器はカソードコモンかな? 案外シフトレジスタの方が簡単かもよ? >>618
7219もrow毎のダイナミック点灯だよ?
シフトレジスタだとダイナミック点灯のrow切り替えを自分でやらなきゃいけないだけで。 >>623
7219は10個以上あります
メモリが足らないのは表示する絵柄を重ねたり(重ねた場合に非点灯の箇所もあります)ドットの動くパターンが多過ぎてスケッチ容量を圧迫するのではないかと思っています
最悪パターンのみsdカードから読み込む手段も部品も8年前に調達済みですがまずは試行錯誤してみます I/O エクスパンダなんて数十円で買えるだろ?
と、思ったら爆発的に値上がってるな。
国内でもチップ単体の在庫も無いね。MCP23S17/MCP23017共に。 74HC595のデータシートには出力ピンあたり35mAまでと書いてあるのだけど
IC全体で75mAの制限がある。8個点灯した場合1ピンあたり9.4mA
実際に実験したところ8.7mAで頭打ちになった
今時のLEDだと5mAでも充分明るいのだけどこれを1/16とかのダイナミック点灯するとかなり暗くなってしまうのでちういね そもそも仕様上時間管理能力に乏しいArduinoはダイナミック点灯の制御に向いていない >>629
どのくらいできると向いている というのか知りませんが余裕でやっています 人間の目に普通に見える程度ならかなり低い周波数で良いし、表示器で細かなタイミング制御も必要ないしな。 >>632
まぁそうだけど、タイマー普通に精度あるよね。usecあたりは怪しいけど 表示しかしないならその通りかもね。他に処理すべきことが少なからずあるのに
タイマ割り込みなしはメインループが無駄に複雑化し処理効率も悪くなる そこまで気にするなら最初からAVRとして使えば良いのでは。可読性で言えば関数として切り出せば良いし。 >>635
移植性を捨てたらArduinoの意味がなくね
SpresenseのArduinoライブラリはタイマの割り込みハンドラを
登録できる機能を提供しているんだし
UNO R4投入を機にテコ入れして良い部分では 移植性なんて考えてArduino使ってんの?
クロックも違うしIOだって違うからほとんど書き直しじゃね?
IO関係ない部分はCで書けばArduino関係ないし。 Spresenseを理由にタイマ割り込み主張するなんて、ルネサスRA4M1搭載が面白くないSONYのネガキャンとしか。
Arduino関係ないし、SONYが自前で開発してればよくね。 >>637
プリプロセッサレベルで解決できるだろ?
#ifdef、#ifndef、#else、#define、#undef だけで十分だろ。 そだね。
#ifdef BOARD1
main_board1()
#endif
#ifdef BOARD2
main_board2()
#endif
#ifdef BOARD3
main_board3()
#endif
いや、endif が要るじゃん。 arduino ESP32に書き込まれたスケッチ(プログラム)を読み出して
他のarduino ESP32に書き込んでコピーすることはできるのでしょうか?
この質問の理由は、
私はarduino ESP32を使って製品を作って販売しました。
せっかく苦労して作ったのにコピーされてはたまりません。
購入者が製品をコピーできるかどうかを知りたいのです。
ネットで調べたら
arduinoからスケッチの読み出しはできる みたいです。
しかし、その読み出したスケッチを
再びarduinoへ書込みできるかどうかが
はっきりしませんでした。 >>641
>できるのでしょうか?
不可能ではない
>コピーされてはたまりません。
コピーされることを前提に物事を進めましょうね
旧製品のことなんか忘れてとっとと新製品を繰り出していけばいいんですよ 普通に出来る
それが嫌ならそもそもArduinoなん使うなよとしか 読みだせたら書き込んでコピーできる
ESPは暗号化機能と読み出し不能領域持ってるからそれ使ってれば簡単には読みだせない(コピーできない)
簡単じゃなければコピーできる avrdudeでバイナリーをreadで保存して他の同じarduinoにwriteで書き込めば簡単に複製出来るぞ
そもそもプログラム入りを販売するな ごめんESP32か
esptoolでバイナリーの読み書き出来るのでは? そもそもarduinoのライセンス条項を読んでないだろ LGPLライセンスだったらソースの開示要求があったら提示しなきゃいけないんだっけ >>650
それは GPL
LGPLはライブラリについてのライセンスで、動的リンクならオリジナルのプログラム部分に公開の義務は無い
でも静的リンクしたら、GPLと同じになる
その辺をうまくクリアしても、リバースエンジニアリングを禁止してはならないって条項があるw
こぴーされて困るならarduinoなんか使うなってことよな LGPLのライブラリと静的リンクしても、元のライブラリのソースを変えていない
限りは、自分が作った部分のソースコードを開示する必要はない。
リンク可能なオブジェクトコードを公開すれば、ソースは出さなくていい。
それでいいのだけど、Arduinoの環境で、ライブラリとリンクする前のオブジェクトを
取り出すのってどうしたらいいのだったっけか。
めんどうなので、ぼくはソースコードを渡しているよ。 静的リンクしたら改変の有無に関わらず本体側にもLGPLを適用しなければならないんじゃないっけ?
読んでもよくわからん書かれ方してるから、気になったら自分で読んで頭沸かしてくれw そもそもarduinoのプログラム、ソースをコピーしなくても
新規で似ているのを作れるよね ピーコ品業者はそもそも自分でプログラムなんかせんやろね 続きを書かせればいいじゃん!
偽者には絶対書けねえ! 昔自分で書いたコード見て何でこんなことやってるのか理解できないと思った事は無いのか! DSO-150という安価なキットのオシロはコピー品作られまくってる
そのせいか製造元がそれ以降に出したファームウェアはコピー品では動かないようになっている arduinoで動くプログラムの製品をコピーって、大層なものがある? 少なくともコピーするより簡単なプログラムは知らないな ユーザー側でコピーしてまで使いたいなんてのはよほど特殊なケースだろ
コピーするには「元」が手元にあるんだし、元があるならコピーしなくてもそれ使えばいいんだから
そしてコピー品であってもユーザー側はそれがコピー品か判断するのは難しいし、ソース公開されてなければ中身がArduinoとわかることも少ない
328Pだったら「Arduinoかも」と思うことあるけど、STM32(製品でArduino採用してたら頭おか扱いされるチップ)だったらArduinoかもと疑うこともない
Arduino UNOがぽんっと製品に組み込まれてるなら分かりやすいんだけどな Arduinoスケッチ程度のプログラムなんてマイコンを普通に使える人なら簡単に再実装できる
しかもそのスケッチは100%オリジナルではなくコピペを含んでいるんだろ?
その程度のものに著作権を主張してもほとんど意味がない。他人も作れて当たり前なのだから 例えばソース自体はフリーで公開して基板を売るとかの方が現実的ではある 掃除してたらarduinomega出てきた
嬉しい
ブレッドボードも2つ出てきた >>669
うむ。
買ったら終わりとか余計に買っといて忘れるとかモズのはやにえなのはあるある。
ジャンク箱漁ったら電源ユニット(整流と定電圧のみ)3つ出てきた。
トランス買うのも今更だから中古のACアダプタどうかしようと考えている(´・ω・`) バイナリ、回路丸パクリされてもよい仕組みてないかな。
チップIDとDIPスイッチの組み合わせが合ってないと動作しないようにするとかは簡単すぎるな。
arduinoじゃないが、機能の割にはやたらと基板が複雑な製品もあるが、ああいうのもリバース防止のために余計な機能があるのかもなー 特性インピーダンスを計算し、微妙なカーブをつけ、カーブを端折ったら動かなくなるような際どい設計とか?
まあ、アホやなw ソフトなんかは今はウドだな。
いくら符号化してもパッケージは突破されたから、ウド経由のサービスばっか。
おかげでマイクロソフトはソフト屋からサーバ屋になった。 元宗教系の会社のソフト。トングル買わないと動かなかった
コピーできても "壺" を買わないと動かない
のちに、壺無くても、追加のお布施(料金)で動くようになったけど... ソースコードを配布しなくてよくて、バイナリや、ライブラリとリンク可能なオブジェクトだけの配布でいいなら
プログラムには、プログラムエリアを一部書き換える機能を実装する。
外部コマンドでひみつのIDを書き込む。
IDが正常でなければ、正常な動作をしない。
でいいのでは。 >>674
昔はドングルは台湾でコピー作ってもらってたな >>676
ドングル屋さんあったよね
ドングル持ってくとコピー作ってくれる店 ぐりとぐら あったよね
どんぐり拾いに行く途中で拾った卵でカステラつくって
みんなで仲良くたべる畜生どものはなし
今でも売ってるのかな? 食中毒の問題も孕む問題だし、
卵を奪われた親御さんの気持ちも慮れないあたりが
ほんと こん畜生だよね(^p^)
閑話休題、情け容赦ない世界を考えるなら、こぴーどんぐりでの不正アクセスのログを
監視してリスト化してしてたら、通常は顧客を切れないから黙ってても
不渡りだす直前直後あたりでは愉快なことになりえそうやね;しらんけど てゆーか、パクられる側になれるほど立派なプログラムなのか? 立派じゃないからコピーするんだぞ
「一万もしたのに中身ESP32で回路も何もねーじゃん。おまえらちょっとこのバイナリ落として焼いてみろ。400円で使えるぞ」 コピーするにしてもコピー元の時点である程度需要がないと意味がない。ソフトだけなら手間は殆どないだろうけど。 >>682は>>679へのコメントでした。
立派かどうかは主観の問題。 Arduinoで動くプログラムの製品って大層なものは無いしバイナリをコピーしてまで使いたい製品は無いし立派なプログラムは無いw 自分が作ってるのが大層なものや立派なものないってだけだろ
3Dプリンタやフライス、ジンバルなどの制御ファームもarduino使われてるのもある
やろうと思えば自作できるけどやる気しないレベルだぞ >>684
ほら。客観的根拠はひとつもでてこない。 >>641
最初の、この質問者は、自分が作ろうとする製品は、どのレベルなんだろう
質問内容からすれば、あれなんだけど...
-
ハード込みの製品で、arduino、 ESP32本体より他が高かったら、こんな質問はしないか... 仮に現在のレベルが低いのだとしても、ライセンスに対する懸念を、現在のレベルをもって茶化すのはゲス。
他人を嘲ってストレスを発散してても生産的じゃないよ。 守るのは無理で終わることをグチグチ聞いてくるオカマ野郎にはお似合いの返答だろ 商売するなら痒いところに手を届かせたい、そんな人向けにカスタムすることを売りにするのが良い気がするなー
汎用品なら買っちゃったほうが手っ取り早いしね
大量生産の真逆にこそ価値が有るかと思われる ポートのドライバをフックして仮想ドングルにすれば何も要らないよね 出来が悪いドングルならそんなでいいけど
単純な処理でもドングル側に任せるような仕組みにしとくと、開発側のドングル作成難易度低いわりにユーザーのクラッキング難易度が跳ね上がる
サーバー認証でも同じ。スタンドアロン動作ではなくプチクラウドな実装にしとくといい 少しずつ進めてたやつ繋いだ
他人のレベルなんか気にしたってしょうがない
作りたいものがあるんだったらまずやるだけだろ
シリアル通信のやり方がわからんかったらピン使いまくって繋げるだけだし細かいことは後回しだぞ
いずれさまになる
https://i.imgur.com/jMsP4ax.jpg
https://i.imgur.com/jy43YLw.jpg ESP32なら >>646、ATmegaはlock bitいじれば良いだけだろ >>696
そういう話じゃない
ライセンス的に秘密にできないんじゃね?って話だ >>694
ライセンスに対する懸念とか言ってるけどそれすら感情論やろ
感情論に感情論で返して何が悪いのか そういや007のまーだーらいせんすって 私掠船免状みたいなもんなんやろかいな?
●●●は何でそんなことを許可する権利がおのれにあると思うたんやろな?道理をしらんけど;
(ドレイク船長らがかっさらった富は、いつになったら返還するのかな)
発明 発見の類も、自然現象に所有権があるとなんで思うとるんやろうな
らいせんすというのも よくよくかんがえてみると不思議なもんやな >>699
arduinoの実行ファイルって一枚岩やろ
ライブラリを、まるっと含んでるから秘密にできないんでは? >>701
>>654
公式のFAQでずっとソース公開必要なしって言ってた 公開してないのと、くれって言われたときに出さないのは別の話じゃね? くれって言われてもソースは渡さなくていいって意味だよ STマイコンを始めたほうがいいかもね。
ATMega328程度の規模ならPICでもいいかも。 ライブラリが充実してて、買ってきたモジュールが動くかどうか10分くらいで試せるのがATMega328のいい所じゃないか ってか今どきの純正開発環境だったらGUIでポチポチ設定して
Generateボタンをクリックするだけでひな形が完成するしな
Arduinoのスケッチとにらめっこするより楽かもしれん そもそもオープンソースのリソースを一方的に利用しようって考えが邪悪
屁理屈つけてライセンス上の制限を回避したとしても敵は確実に増える >>641の質問者「ボク以外の人がArduinoを無料で使えないように世界中でバイナリコピー禁止に出来ませんか?(ドヤ顔)」
回答「シェアーする気もないのに、なんでArduinoを無料で使ってるの?」 >>693
I2CコントローラICで繋いで専用のPCB作っちゃえば
電源線と信号線の4線だけで済んじゃうぞーw
https://i.imgur.com/gPMhLT6.jpg >>714
そのうちやります
それよりその板自分でデザインしたんですか?
すごいなー ChatGPTは即レスくれる5chみたいなもんだとおもたは >>716
面倒な配線に嫌気がさしたのでKiCADの練習がてらにぼちぼちとPCB作ってたりします
ひと昔もふた昔も前ならPCB作成なんて個人では無理に近かったのですが
今はアプリで作成したファイルを渡せば1週間ほどでPCBが手元に届くので重宝しています
回線図さえ間違っていなければ配線間違いもほぼ皆無になりますし
それらをチェックする手間暇を考えたら個人的には断然お得ですね(精神的にも)
それなりの経費は掛かりますがその「手間暇の賃金」と考えております
お陰で複数の案件(やってみたいこと)が同時に進行するので今は楽しく時間を過ごせていますね GPT4まで進化しても
嘘を嘘と見抜けないようじゃ使えないからな pcb作る前に自分でやれるかどうかがわからんからなぁ
やれたら作ろうか 俺も自分でやれるか分からないなぁ・・・
そうだ!ChatGPTにPCBを書いてもらおう! >>720
ファクトチェックするAIが出来てる
いちばんの問題は大声の情弱 ファクトチェックってもgpt寄せ集めて多数決してるだけだろ
メディアが集まってやってる報道ファクトチェックと同じぐらい無能だからな chatgptはポートピア連続殺人事件の犯人すら教えてくれないからまだ使い物にならない >>719
PCB作成なんて40年以上前から個人でやってたでしょ。
一昔前って江戸時代を指してるのかな? >>726
かれが言ってるPCB作成は、自作エッチングのことではなくて、製造業者に依頼することではないですかね。 だいぶ昔から0.50や0.40mmピッチ、さらにはBGAが増えてきて個人じゃ無理だった
いや、自作してるやつもいるみたいだけどな。信じられない
俺は0.60mmピッチが扱える限界だった >>727
そうなのかな?
だとしても20年以上前からあるよな。 >>729
あるかどうかでいうと、ああ、名前を思い出せない、紙にペンで書いたら作ってくれるところが1990年代にもあった。結局使わなかった。
>>719は歴史家ではないので、個人視点であろう。
ぼくが知ってる海外製造の黎明期はオリメックスだったし、それは2000年初頭だったろうか。
普及途上にあるものは、最初は知ってる人が少なくて、ひろく認知が進んでいって、どこかの時点で、だれかが知っていく。
誰がどの時点で知ったという話を聞いて、そんなのもっと前からあったでしょ、と言ってもなあ、って気がする。
自分はもっと前から知ってたぜ、ならともかく。 >>730
紙に書いて送ると作ってくれるところね。埼玉の業者だったはず。
ただ、エッチングして表面に錫かなんかでメッキしてくれるだけだったから
自分でやってもそんなに変わらなかった。安かったけど。
「ひと昔もふた昔も前ならPCB作成なんて個人では無理に近かった」に対して異論を唱えただけ。
>>719 が正しいというのならそれを示せばいいんじゃね。
知った、知らない、知ってたとかはどうでもいい。 3鳩や
ヾヽヽ ヾヽヽ ヾヽヽ _ _
(,, ・∀・) (,, ・∀・) (,, ・∀・) ⌒, 丶| 丶| ソ フ_ ニ .| 十``
ミ_ノ ミ_ノ ミ_ノ  ̄). /、| /、| て ´__) ん しα
″″ ″″ ″″  ̄ あれれ
webからコピペしたaaだけど
後ろに何か付いてた 95年頃のPCBソフト高かったよなー。40万とかしてたよな。 丁度その頃プリント板用のCADもどき作ったわ、フットプリントのビットマップ画像貼って線引くだけの簡単なもの、ベタとかなかった
PC8801のbasicで作って熱転写プリンタで製図用の半透明な紙に印刷して焼いてた。なつかしいな >>731
思い出した。大越だ。
>ただ、エッチングして表面に錫かなんかでメッキしてくれるだけだったから
>自分でやってもそんなに変わらなかった。安かったけど。
なるほど。それだと感光基板で作るのと大きくは変わらなかったかも。
とはいっても、個人的には使う部品が小さくなって作る基板も密度が上がってきて、感光基板で
作れることが減ってきた。サンハヤトさんのWEBサイトを見ると、いまでもけっこう大がかりで
100万円をこえるような自前の基板製作機器が売られていることに感心してしまう。 >>732
若いから知らないよ
3段逆スライド方式とか知らないよ オーディオ機器を作ろう
↓
基板は完成、テストもOK
↓
ケースに入れよう
↓
ケース用のパネルカット装置を作ろう
↓
モーター速度コントローラーとソフトスタート回路基板完成
↓
モーターコントローラーと電源を箱に入れよう
↓
とりあえず木箱でいいや、パネルだけ3Dプリント、スイッチとボリュームを配置して完成
↓
グリップをTPU素材にしたいのでEnder?3をダイレクトエクストルーダー化←今ここ 派生した工作が完了せずどんどん積みあがっていく恐ろしい世界 ソフトとハード(基板加工や部品ハンダ付けなど)は何を作るにしても
似たような作業になるから、そんなに難しくない
でも外装(ケース作り)は作るもの毎に変ってくるので難しい。
ケース加工もアルミとプラで変ってくるし、文字入れもこり始めるとキリが無い。
いつも<いまいちだけど、もうこの辺で終わりにしよう>と妥協する。
既出だけど牛乳パック用検温器
台所で使うので防水にしたかったけど、スライドスィッチ回りで諦めた。
2回路3ポジションの手持ちスィッチがこれしかなかった。
センサ・ステンレス棒のXYZ方向の取り付け位置合わせが難しかった。
ハード、ソフトは初心者向け(一応LEDは各色別にPWMだけど)
tps://i.imgur.com/VEuciff.jpg プッシュスイッチで押すたびに切り替えるようにすると防水できるぞ!w Guts
更にタッチにすればワイヤー1本外に出すだけ ↑モジュールになってるのいいね
ICの方が安いから買ったら、小さすぎてハンダ付け地獄になった 基板発注も良いと思うけど、結局ユニバーサル基板でチョチョイと作って終わることが多い
自分用だから動けばオッケー基板むき出しの精神。
埃かぶり出したらビニール袋に入れて封印(´・ω・`) 俺もそれ。
他人の目に触れる工作は一応ケース・ボタン類はキレイにするけど、
中はメンテしやすいように空中配線上等、見せられたもんじゃないw >>755
これ知財の問題は大丈夫なんか?
任天堂って五月蝿そうだけど パターン書いて日曜の深夜に出すと次の週末には基板出来てくるから便利。
たいがい部品が足りなくて土曜に秋月に。 昔はリバースエンジニアリングの認識がかなり甘かったんだよ
任天堂外製のファミコンソフトもリバースエンジニアリングから生まれたんだから GameBoyはROMカートリッジにロゴが埋め込まれていてBoot時にそのチェックがあった
丸コピーすると商標権侵害になるのを狙ったんだっろうな >>757
試しに作ってみっかーで仕様決めないままユニバーサルで作り始めるとつぎはぎだらけになって
KiCADパターン清書して自分用に1-2枚エッチングして終わりになる事が多いなあ >>761
日米欧のなかで運用が一番厳しいのは日本
脆弱性の調査すら制限されている >>756
PCemuってはなぁ。技術的には興味津々だけど、
目的があればねぇ。ぶっちゃけ20世紀のノーパソ引っ張り出して来たほうが早い安いw
8801あたりだと必死で作っちゃかも。
ハードオフでBrain¥2kで買ってきたけど。
改造も進まず本来の辞書で使ってるの(´・ω・`) >>766
ぶっちゃけ実用って意味では、PCでエミュ動かせよ!で終わる。
ラズパイなら実用的にやってる人もたくさんいるみたいだけど、
言い換えればLinuxマシンで98エミュ動かしてるだけ
https://zenn.dev/karaage0703/articles/acafb8470e67b8
https://gizmon.co.jp/archives/3669 今のウインドウズ起動遅すぎ、初代i3マシンだと起動に20分もかかるw
お陰で24時間電源入れっぱなし、なんとかせえよ>マイクソフト >>769
捨てろ。
1万円以下の中古でも十数秒だぞw うんこのインピーダンスを測定できますか?
毎日記録したいのです
私のうんこではありません みんなそういうから試したことあるけど、遅いやんって感じやった 今のSATAのHDDがシーケンシャル200MB/S、4K1Q1T2MBぐらいでSSDがシーケンシャル500MB/S、ランダムは50MB/Sだぞ
不感症すぎんか ベンチは見てないけど、インストールから遅かったから、ふ~ん、書き込みが遅いんかいな~?って感じで
起動だけ早くなってもな~でやめた 初代i3だよwin11動かんやろSSD試したのもだいぶ前の話やから
今どきのなら速いのかもしれんとおもってググってみたが
SSDの値段で中古で速いPCが買えてしまうからPC変える 今のSSDは底値だぞ
まあ初代i3とか他の要因で遅くなってそうだし普通に2万前後のリース上がり品でも買った方が早そうだが 第4世代くらいで野口さん2~3人かな
諭吉さんになると第7世代くらいまで行ける ボーっと考えてたら、おんなじHDDでむちゃくちゃ速度差があるんだから
hddの速度のせいじゃないよな、やっぱり 初代i3だと、TPMの要件を満たさないからWin11対象外じゃん そんなの回避方法なんていくらでもあるだろ
初代i3だとおそらくチップセットはPM55なんでSATA300
500MB/SのSDD付けても266くらいで頭打ち、USB3にも対応していない、メモリもグラフィックもすごく遅い
次のSandy Bridgeと大きな差があるよ 第2世代もOpenGLが古くて
KiCADとかも一部動かなくなってきた。 最近のWindowsはメモリ16GBあたりが人権だろ
低スぺマシンでWindows使っている使う方が間違っている >>724
朝〇新聞がえらそうにファクトチェックとかやってたな 低スペックマシンでも起動さえしてしまえば、まあまあ普通には動いてんだよね(それなりに遅いけど、使えるレベル)
起動だけ異様に遅いんだわ、というわけで、電源切りたいときはスリープと休止状態を使ってしのいでるんだが
アップデート後に強制再起動されちゃったりすると、強制休み時間20分に突入(やってらんね~)
起動シーケンスに問題があると思うんだが、一般ユーザーとしては、手の出しようがないのがつらいところ パソコンのスペックは使う人の主観だしね。
個人的にはSSDであれば、メモリは8Mでもいい。4Mでも良いって人もいるだろさ。 ネタ切れだからスレチ話にたいしたツッコミが入らないんよ
どんどん質問ちゃって 質問いいっすか?
Battery capacity measurement using Arduino [Lithium-NiMH-NiCd]
tps://www.pcbway.com/blog/technology/Battery_capacity_measurement_using_Arduino.html
↑を参考にATMega328用をATtiny88に移植してバッテリー容量チェッカーを作ったけど、
ATtiny88はPWMピンが2本しか無くて、それぞれOC1A,OC1Bでタイマーピンなんです。
んで、テスト負荷の電流値をボタンで選べるんですが、0mAhにしても僅かに流れてます。
(PWMピンからFET経由で調節して流してます。)
調べたら、タイマーピンのPWMはディーティ比を0にしても完全にはオフにならないとのこと。
tp://www.musashinodenpa.com/arduino/ref/index.php?f=0&pos=2153
この場合、0mAhが選択されたらpinMode("FETへのピン番号",INPUT)とか入力にすればゼロになります?
なんかいい方法ありまするか? インプットに設定するとプルアップしてるとハイになっちゃうよ~
出力に設定してローにすればいいんちゃう? 1ピン犠牲にして、ハードでPWMとANDとってやるというもありかな、こっちのほうがソフトは簡単になる >>795
attiny88の16bitタイマーのPWM生成まわりの動作管理やってるレジスタについて調べるといいよ
TCCR1Aの4-7ビットが波形生成するか、どういう条件で波形オンオフするかの設定をしてて、このビットを全部0にすれば波形出力は止まるはず
// 停止前のTCCR1Aビット状態を保存
uint8_t before_tccr1a = TCCR1A;
// 4-7bitを0にして波形出力を停止
TCCR1A &= 0b00001111;
// 波形出力を再開
TCCR1A = before_tccr1a;
現物持ってないからデータシート見ながら適当に書いたけどこんな感じで何とかならないかな
ちょっと試してほしい >>796-798
レスありがとうございます!
出力に設定してロー、798さんのサンプルコードを試してみます!
ありがたや〜
ただ、LiquidCrystalのライブラリ使ってるからか、メモリがこんな感じでギリギリなんですがw
>最大8192バイトのフラッシュメモリのうち、スケッチが8182バイト(99%)を使っています。
>最大512バイトのRAMのうち、グローバル変数が257バイト(50%)を使っていて、ローカル変数で255バイト使うことができます。
がデカいみたい シリアル通信のペリフェラルがなんかあればその通信で使える液晶使ってもいいんだけど古いtinyだからないんだよね
やっぱmegaAVRの4809がいいわ
安いしペリフェラルしっかりしてる 4809 最近秋月で見かけてポチりかけたけどEEPROMちいせ~でやめた ATMEGA644とATMEGA4809を比べてもプログラムメモリが64kbと48kbでATMEGA4809は見劣りする。
ましてATMEGA1284の128kbと比べるとDIP40でATMEGA4809は劣勢だろ。価格も大して安くないし。 4809のDIPの方はなんか割高だしIO減るから使った事ないわ
128KB使い切れるのすごいな、そんなでかい規模のもの俺には作れそうにないしオーバースペックだわ 256KBなら充分充分、ぽちっと・・・・・まてい
256Bじゃんかw EEPROM といえば DS3231 のボードにへばっついてるんだよな
I2C チェッカでアドレスを探索すると2つ出てくるから何者?ってなって調べてみた
AT24C32(4KBytes) って I2C 経由で読み書きできるんだなって そういえば H8 tiny 3664 の EEPROM内蔵版が、中に別チップを載せてI2C接続していた。
当時はEEPROMのプロセスと、フラッシュメモリのプロセスが同居できないから、って聞いた。 最近のマイコンはEEPROMなしでフラッシュオンリーとかもあるよね R4 フォームファクターは同じだけどかなり変わってしまうな。 >>811
M5にEEPROM領域やMRAMあればいいんだけどな Arduinoに使われているマイコンatmega358やattiny202を
Arduino抜きでいじるには何を準備すればいいのでしょうか?
AtmelスタジオというIDEを入れる? >>815
このタイプの実装はダメか?
フラッシュメモリをEEPROMとして使う「裏技」:Q&Aで学ぶマイコン講座(47)(1/3 ページ) - EDN Japan
ttps://edn.itmedia.co.jp/edn/articles/1907/26/news018.html >>816
今だったら公式の開発環境はMicrochip Studio for AVRじゃね
てかボードは何よ?自作なら別途書き込み機が必要になるし
Arduinoベースのボードを使用したいならひと工夫必要かもね R4ならuClinuxやFreeRTOSが余裕で選択肢に入るから、外部プログラムも使うようなラズパイ要らずの大規模なものが増えてきそうだな。 >>817
まぁ、32bitMCUはそうなるな大抵。
プログラムメモリの消耗が気になるから避けてたが。 >>821
ESPとかならフラッシュも超大容量だし16バンクくらいガッツリとってループすればEEPROM相当に持つんじゃね
R4のRA4M1だってEEPROMレスでフラッシュの寿命保証はコード:データ=1k:100k程度だしな でかいモーターをNchMOSFETでオンオフと電圧監視とかする物を作った所、
確認&設定用のロータリーエンコーダー+SSD1306を繋いだ状態でモーターは無しと
外してモーターのみでは問題無いのに、両方繋ぐと稀にオンにした状態でフリーズしてしまいます。
電圧監視の為に完全な電源分離は出来ずGNDを繋いでるのでノイズが酷いのかなと
オシロで見てもそんなに乱れて無く原因がさっぱり
モーターのノイズが原因とした場合コンデンサを入れるんだと思いますが、
何を何処に入れるべきなんですかね Arduinoの電源に電解コンデンサ? あと写真も。
ノイズで誤動作、不安定、といった症状は、部品の有無と同じぐらい、実装の良しあしで発生する、とテキトウに思っておいていい。 オシロで見てんのにピンポイントで特定できないってのがわからん
ものすごいノイズ出てんのに、なんの問題もおきないやつを観察したら
ちょうどノイズが無いところでサンプリングしてたなんてこともあった
話の感じだと電流容量たりてないのかもしれんと思ったが >>828
モーター回すと瞬間的に僅かにヒゲは出るものの、安定してるんですよね
その瞬間的なヒゲが原因なんですかね ドコにひげが出てんの?
電源、入力端子、出力端子?
電源も共通だったら、モーターがオンした瞬間の大電流で電圧が0vに引かれて、マイコン部フリーズなんてのがありがち 書き方からしてオシロの選定や使い方が適切なのかも疑わしい ちょっと前のロボットくんと同じ臭いがする
作りたい物に対して知識が圧倒的に不足してる 基礎知識なんてどうでもいいんだよ
適当に0.1uFぐらいのチップをそこら中にちりばめて、電源には大きいコンデンサ入れて
長めなラインは名前なんて言うのか知らないけど300円ぐらいの銅箔テープ巻いてシールドしておけばたいていなんとかなる
配線に余裕があるならフェライトビーズを電源ラインなんかにつっこんどくのも 以前どうしてもGND繋ぐ必要がある場合Lを挟むとか見たんですが、1Mとかの抵抗挟んでも意味無いんですかね フォトカプラ使ってるらしいけど回路図じゃなくてユニバーサル基板の半端な配線図なのでさっぱりわからん ちょっと見ただけ・・・頭痛がするw
エンコーダA相B相を1Mと並列4558(?)に+入力で正帰還で突っ込んでるし
入力インピーダンスが1Mオームになり容量性、電流原のノイズに弱い
&入力にノイズ除去のフィルタ(L,R,C)ないし
A0,A1の波形思ってるのと全然違うのでは?
それ以外にも突っ込みどころ満載だろうな・・・
ブラシ有DCモータ使うならFA機器用の入出力使うなり
フォトカプラで絶縁するなり みんな、よくアレを見て解答するj気になれるね、そっちのほうに感心した。
「情けは人の為ならず」 やっぱりそうですよねぇ
こんな図を見て的確に回答する方が現れるのかwktkしていたのですが >>842
どういうつもりでそのことわざを書いたのかな 初心者大歓迎のスレなんだから、質問者に落ち度はない。
いつか追い抜け、見返してやれ。
負けずに質問すればいいよ。 ID:ZFM+v4glからそのような気概は全く感じられない
技術初心者は構わないが、日本語初心者は勘弁 みんなよく回答するなあ。
情けは人のためならず、やっぱり、自分の回答力を鍛えて成長するためですか?
みたいな? いいや
偶々4558ピン互換でパッと回路読めたけど
それ以外の部分は読んでないくせに適当に回答したよ
図のレベルが高すぎて 読めるか読めないか以前の問題だからなあ
もし>>843が本人だとしたらがっかりだよ 素人のふりした釣りだろ
さいきん、おんなじ手口の書き込みばっかり >>841
5V超えない様、ボルテージフォロワで入れてるだけです 書いてあることの99%がわからないけど興味があるからここに居るよ 頑張って>>826の実体配線図から回路図書いてみた
https://i.imgur.com/l6czMNx.png
予想だから間違ってるかもしれない・・・( ;∀;) やべ、motorのつもりがmoterになってる(笑) そういえばMOSFETは
なんでDrain側から電位を掛けるんだろ?
名前からするとSource側から
Drain側に流す(Gateで堰き止める)って感じるんだけど 電流と電子の流れは逆
電子はソースからドレインに流れる Nch-MOSFETはドレインがVcc側で
Pch-MOSFETはソースがVcc側だな
電子の流れが逆になるということは。うーん頭がこんがらがってきた ・Nch MOS-FETで、ソースからドレインへ積極的に流す使い方もある。
(もちろんPch MOS-FETで、ドレインからソースへ積極的に流す使い方も)
・J-FETは、ソースとドレインは入れ替えできる。
・Nch J-FETは、ソースとドレインがN型半導体 >>837
同意
自分なら別電源にしてフォトカプラ(フォトリレー)入れちゃうね
まぁ電源ラインとICの電源端子にパスコン入れてないのは論外だけど >>859
あっフォトカプラ入ってたんだ
だったらGNDも含めて別電源にしてやってみるといいよ
ひょっとしたらパスコンだけでも大丈夫かも知れないけど
回路図起こしサンクスです 真空管とか抵抗器は日本語なのに、
Gate、Drain、Sourceはそのまま英語・・・
戦後を境にもう日本語化しなくなったのかな?
電門、電排水路、電起源とか日本語なら分かりやすいのに >>868
でも真空管だって端子名はプレート、グリッド、カソードとヒーターじゃん?
元は日本語だったのかな? たまには熱陰極ちゃんのことも思い出してあげてください >>870
それ初期の直熱管って言うことね
そう言えば整流管もアノードとカソードって言うような
スレチなんでこの辺で。。 >>872
こう言うのあるけど、監視する割には電源にパスコンが入ってなかったり不釣り合いのような
https://akizukidenshi.com/catalog/g/gI-15746/
コンパレータにして設定電圧より上か下かでデジタル信号をフォトカプラを介して戻しても充分かな 目的がわからないからそこを目指すためのアドバイスがし辛いんだよね
手段としてあっているかの検討って目的あってこそだから この手の質問は一番難しいやつだからな
テスト問題だったら現象がきっちり定義されてるから対処も分かるけど、現実問題だとどんなことが起きてるか把握もできない
あてずっぽうに色々やるしかないんだよ >>868
高校の国語の教材で森鴎外の「舞姫」っていうのを読まされたが、その一節に
「房奴の来て電気線の鍵を捩るには猶程もあるべければ」ってあったが、
何のことかさっぱりわからなかった。
今になって振り返れば、「ボーイがやってきて電灯のスイッチを消すには」ということだと
わかった。 氷室京介や布袋寅泰に照明を消させるとは流石森鴎外ぱねぇな 機器の繋ぎ方について質問させてください
ttps://protosupplies.com/product/high-power-dual-mosfet-switch-module/
このタイプのMOSFETモジュールを2つ、arduinoで制御して自転車のウィンカーを作ろうと思っています
ウィンカー+線←→MOSFETのOUT+
ウィンカーGND線←→MOSFETのOUT-
トリガー←→arduinoの出力ピン
トリガーGND←→arduinoのGND
電源←→MOSFETのVIN+とVIN-
こんな感じの繋ぎ方でモジュール1つとarduinoのテストは動いたのですが、モジュールを2つ使って3本の配線で制御したい場合はどのように配線したらいいでしょうか?
素人考えだとこんな感じかなと思うのですがなんか違うような気もします
左ウィンカー+線←→MOSFEの1OUT+
右ウィンカー+線←→MOSFET2のOUT+
ウィンカーGND共通線←→両方のモジュールのOUT-
トリガー←→arduinoの出力ピン
トリガーGND←→arduinoのGND
電源←→MOSFETのVIN+とVIN- (スケッチ含めて)arduinoの出力ピンを別のピンにするだけ
あとはモジュール1つのときと同じようにすればいい >>880
すみません書き忘れてました
モジュール2つのそれぞれのトリガーはarduinoの2つの出力ピンに繋げる予定です
回路図を見るとMOSFETのVIN+とOUT+が直結してるため、879の繋ぎ方だとなんとなくうまく行かないような気がするので正しい繋ぎ方を教えてもらえると嬉しいです ああ、モジュール2つのときに共有GNDにしてるのか
モジュール1つのときは、ウィンカーGND線←→MOSFETのOUT- (arduinoなどとGNDは共有でない)
だから、モジュール2つのときは
FET1のウィンカーGND線←→MOSFET1のOUT-
FET2のウィンカーGND線←→MOSFET2のOUT- >>879
モジュールの回路図を見ればわかるけど+がコモン(共通)で-が吸い込み
左ウィンカー+線←→MOSFET1モジュールのOUT+
右ウィンカー+線←→MOSFET2モジュールのOUT+
左ウィンカー-線←→MOSFET1モジュールのOUT-
右ウィンカー-線←→MOSFET2モジュールのOUT-
だから共通にするのは+線で個別に配線するのは-線の方 >>882-883
お二人とも素早い回答ありがとうございます!
GNDは共通にするものというおぼろげな知識で考えていたので危なく壊すところでしたが今回はやはり+が共通なんですね
コモンという単語を知らなかったのでとても参考になりました
教えていただいた繋ぎ方で作ってみたいと思います chatGPTにコード出させることできるが
あのコード使って問題ないのかな?
権利関係とか? 心配ならGPTに「権利的に問題ないコード書いて」って言えばいいじゃん arduinoは色々な種類があると思いますがそのarduinoで使えるGPIOのピン番号を取得する関数などはありますか?
それとも仕様書を見て予めピン番号リストを入力しないと駄目だったりしますか? 誰かかまってやれよ。あっちから来たっぽいw
たぶん何かが壊れているw
Arduino互換機 2枚目 [転載禁止](c)2ch.net
https://rio2016.5ch.net/test/read.cgi/denki/1564674281/569 >>888
ボード構成ファイルの中にpins_arduino.hがあるはずだからそれを見て
親切にこんな感じで絵が入ってるボイードもある
// On the Arduino board, digital pins are also used
// for the analog output (software PWM). Analog input
// pins are a separate set.
// ATMEL ATMEGA8 & 168 / ARDUINO
//
// +-\/-+
// PC6 1| |28 PC5 (AI 5)
// (D 0) PD0 2| |27 PC4 (AI 4)
// (D 1) PD1 3| |26 PC3 (AI 3)
// (D 2) PD2 4| |25 PC2 (AI 2)
// PWM+ (D 3) PD3 5| |24 PC1 (AI 1)
// (D 4) PD4 6| |23 PC0 (AI 0)
// VCC 7| |22 GND
// GND 8| |21 AREF
// PB6 9| |20 AVCC
// PB7 10| |19 PB5 (D 13)
// PWM+ (D 5) PD5 11| |18 PB4 (D 12)
// PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM
// (D 7) PD7 13| |16 PB2 (D 10) PWM
// (D 8) PB0 14| |15 PB1 (D 9) PWM
// +----+
//
// (PWM+ indicates the additional PWM pins on the ATmega168.) >>889
互換機って時々ピン配置が違うやつがあるな >GPIOのピン番号を取得する関数
たぶんmegaとmicroを自動判別して1つのソースコードでどちらにも対応したいとかそういった事を考えているんだろうけど
これで機種判定するのはよくない
コンパイル時に _AVR_MEGA328__ とかのラベルが定義されているのでソレで判別、詳しくまとめたサイトとかはみたことがないからぐぐってたら
github.com/houtbrion/detectArduinoHardware
なんかいいのがあったのでこのソースコードみればいいね >>892
ありがとうございます
NUM_DIGITAL_PINSやNUM_ANALOG_PINSでピンの数は分かるという所までなんとかわかったのですがそれ以上は良くわからず困ってました
教えていただいたpins_arduino.hを見てみたらそのものズバリが書いてありました
助かりました
>>897
これも面白いですね
ピンのリストを提供するライブラリを作って組み合わせたら目的のものが作れそうです >>901
ここに挙げたときには在庫があったけどもうなくなったのね 40ってw
そんなもんなのか
wifiは技適まで販売おあずけだと AVR8じゃないし日本じゃ流行らんとか思われているんでしょ
回路図等は公開されたから載せるものの設計は開始できるようになったな R3使ってた時にも直接レジスタ触りたくなったしR4はまだまだ情報も少ないしなあ なんかピンが余ったからLEDつけときましたって感じがする
これ隠す意味あった? わざわざマスクしてあったから何かと思ったらこんなのかよ 売れ残ったXpノートに強引にwin7入れて売ってたの思い出すようなマイコンだのう
情弱しか買わんやろ >>908
RXほどではないにしろRAマイコンのドキュメントは日本語化されているし
AVRよりは読みやすいと思う。高機能な分レジスタの数は激増しているが
純正のFSPと連携できればマニュアルとにらめっこする必要性も減るのにね >>913
arduinoのAPI使わずにハードウェア直接触るならR4にこだわらなくてもいいかなって >>909
DCバレルジャックちゃんと付けろよなと何時も思う
斜めっているとついついリフローで直そうとするけど
熱をあてすぎるととろけちゃうんだよなw >>914
それはまぁ同意。R4よりRA4E1 Fast Prototyping Boardとかの方が
高性能かつピン配置で悩む必要もなく開発しやすいし >>909
esp32積んでるならルネサスいらなくない? esp32はシールドとして出荷して従来UNOでwebやBTできますって売ったほうが情弱受けしたろうに >>914
それだとR3やNanoである必要もなくない? >>918
ぼくたちですら思いつくことなんだし、何か理由があってそうしないのだろうなあ。 UNO形状のRP2040ボードのほうが良かった
もうありそうだが >>923
さがしても、あまりないね。
3.3VだとUNOフォームにするメリット薄いのかな。
Nucleo64を使うときに、Arduinoフォーマットのヘッダーを大活用してる人ってどれぐらいいるのかな。
ぼくは2列ヘッダーの方しか使ってないな。 >>924
GR-SAKURA、LPCXpressoV2、Nucleo-64、あとはterasICやDigilentのFPGA評価ボードなどなど
UNO形状にされた基板は多いけど、そのまんま3.3V系にしても微妙に使いづらかったんだよな
一応UNO R3世代になってから、シールドにI/O電圧を教えるためのIOREFピンなる物が追加されたが
既製品のシールドがそれを拾う造りになってないのが大多数だしねえ… UNOの冠を付けるからには、既存の5V系シールドとの互換性も大切にしたかったのかも。
教育機関とかだと「前と同じに使える」はとても大切だし。 内部でAVR8のレジスタ直叩きしてるようなペリフェラル依存の既存ライブラリぐらいかな、実際困るのは
一番有名なのはTimerOne
次は赤外線リモコンの送受信ライブラリあたりかな
まぁ純正ボードなんだし誰かがそのうちR4用に移植するデショ >>918
今回色々増えてるしピン数足りんのでしょ
あとA/Dコンバーターのクセとか RA4M1の汎用タイマは32bitが2本、16bitが6本の計8本ある
何本もあるタイマをTimerOne式で管理するのは筋が良いとは言い難いし
複数本のタイマを統合的に扱えるライブラリを作った方が良い気がする 元々筋悪い方式でtimerに限らず色々なのが実装されてきてるから
そういう変更は今後もやらないだろうな >>926
それならR4自体要らないな
用途的にR3で足りないなんてことはないし RAをサポートするライブラリが増えたらAVR以上にタイマの取り合いが過熱しそうw r4 minima 、回路図だと水晶乗ってるように書いてあるけど実物には載ってないんだな
wifiの方だと水晶端子がGPIOとしてマトリクスLEDの方に繋がってるしクロック源はオンチップのにして合わせたんだろうか ISL854102が逆電圧に耐えられる仕様ならVINから任意の電圧を入れて使えたのにね データシートのパワーツリーを信じるならVBUSから3.6V(SBDのドロップ分を含む)くらいを入れれば3.3Vとして使える・・・かもしれない レベルシフタshieldって
ありそうで無いんだな >Tech Specs
>Power
>DC Current per I/O Pin 8 mA
って書いてあるけどマイコンのデータシートを見ると
>許容出力電流(端子ごとの最大値)
>中駆動(注2)
>IOH -4.0mA(max)
>IOL 8.0mA(max)
Arduinoだと吐き出しで使われることが多いだろうから耐久試験になりそうだな
A0~A3のみIOH -8.0 mA(max)なのでArduinoの仕様と一致するけど 豊富な電源電圧で使えるのもいいけど
レベルシフターを内蔵してくれたらめちゃくちゃ使いやすそう 回路図を見る限りではピンヘッダの5Vに3.3Vを入れても動きそうかな
SBD越しにVBUSとORになっているだけだし。もちろんUSBは使用不可になるが すごいの出てきたな…
ttps://prtimes.jp/main/html/rd/p/000000130.000064534.html >>922
そうだよな。
必死にWIFIしながらなんかの処理も必死しようとなると
こうなってしまったのかもな >>944
えぇ・・・確かにすごいけど
ttps://pc.watch.impress.co.jp/docs/news/1305052.html
これと同じ雰囲気を感じる >>944
見た目が汚ねぇな。素人工作かと思ったら売り物かよ。
>>946
元々、軍用でクロックがやたら高い奴が輸入出来てたよ。
当時なので、FAX で注文だったけど、Amiga + アクセラレーターボードの 030 と
同じぐらいのスピードが出てたよ。ゲームはクロックを見てるから早くならなかったけど、
NetBSD とかは Sun3 より遥かに早かったよ。 >>944
たけー
普通にEPS32買ったほうがコスパええやん 同期式バックレギュレータは、制御電圧<出力電圧だと、下側FETがONになって電圧を下げようとするものがあるけれど、
ISL854102はそういうことはないのかな。
外部から+5Vに、ちょっと高めの電圧をかけたり、
あるいはVBUSの電圧が+5Vよりちょい高めになったときにどんなふるまいになるのかな。 >>933
水晶なしだとせっかくの内蔵RTCがゴミに・・・ ゴミだなw
ESP32載ってない方は自分で水晶つけろ
載ってる方はネットであわせろってことなんだろうな 内蔵オシレータでRTCは事実上使い物にならないからないからライブラリを用意しない
ならまだ理解できるけどRTCのライブラリを用意しておいてサブ水晶すらつけないのは矛盾がある
ArduinoとRenesasはこの仕様についてちゃんと議論したのか?
そもそもしれっと一ヵ月延期しているし、にもかかわらず回路図と現物の不一致があったり
公式リファレンスもUNO R4用に修正されていないしでどうなっているのかと・・
>>953
現物が来ていないのではっきりとはわからないけどサブ水晶の配線は引き出されているのかな?
回路図によればカットされているが QFPでピンは外に出てるからつなげようと思えば繋げられるんじゃないのかね がんばって水晶を付けたとしても、miniaだとVBATTが5Vに直結されているように見える。 出来るか出来ないかで言ったらユニバーサル基板にQFPなマイコンと
水晶を載せて動かしてい作例を見たことあるしおそらくできると思うけど
デザインガイドを満足しつつ0.5mmピッチを加工できる人は相当な手練れでは
発振回路だから繋がっていればいいとはいかないし雑に作ると発振しなかったり
発振が止まったりなどのトラブルが・・・ マイコンの発振器ってびっくりするぐらい安定してる
ブレッドボードに水晶刺して、コンデンサはリード線切ってない長いまま、それをブレッドボード用の15cmコードで引き回して~
って雑さでも動いちゃうほど >>958
なんなら隣の空いてる列からジャンプワイヤで飛ばしても発振するし 降雨センサー使ってSwitchBotのテープライト光らせたいです
ラズパイとかアルディーノとかESP32のやつは持ってるですがワイヤレスで2mくらいの設置距離と屋外は電池交換年2以内が希望です
正解教えてくださいお願いします 電池駆動の方はstm32とesp32載せといて、esp32は通信時以外完全電源オフ
stm32はスリープ駆使して雨来たらesp32の電源入れてble通信 >>961
m5stackのTimer Camera Fあたりがオールインワンでいいんじゃないかな 電池駆動ができるなら最悪スリープ使わなくてもバッテリー容量を増やすだけでなんとかはなるからな。 ttps://sample.msr-r.net/contents-m5stack/#toc16
ここが参考になると思う 一応arduino属っぽいからこっちで質問するけど
digisparkというのが前から売ってて、USBの箇所はattiny85だからV-USBでやってると思うんだけど
USBポートに刺した時の認良率ってどんなもんだろうか
回路図見る限りAVRの内蔵RCクロックで動いてるからキャリブレーションしたとしてもかなりの誤差が出るはずなんよね
「不明なUSBデバイス」とか出ないもんなんだろうか USBのやり取りはエラー検出あるでしょ
VUSBの中身見て無いからどこまでやってるか知らないけど 自分もattiny85+V-USBでUSB-HIDのデバイスはいくつか作ってて、
その場合tiny85内蔵のPLLで16.5MHzで動作させる事になるんだけど
季節が変わったりして気温差が出ると、よく「不明なUSBデバイス」になっちゃう場合があって、都度キャリブレーション値をいじったりして直してるので
digisparkでそういう不具合報告がないなら、キャリブレーション値を自動で修正したりする仕組みとかあるんかなーと よく考えたら自作で色々作ってたのがもうかれこれ10年前とかになるので、V-USBのバージョンが古いのも関係してるのか
そろそろ改修してみようかなって思って今リサーチし始めたってところです digisparkのファームウェアは少なくともINT0をハンドラではなくポーリングで待ってたり結構違ってました
情報アップデートしなきゃだめそうだ >>968
不明なUSBデバイスって出るならきちんと認識されてるってことだよ。 >>973
ホスト側でデバイスデスクリプタの読み込みに失敗してるからきちんとではないよ
digisparkのファームウェア解析中
tiny85は円高の時に大量に買ってあるから内蔵RCでちゃんと動くのなら今後が楽しみだわ digisparkをPC用のリモコンにして2年くらい使ってたけどたまに不安定になったなあ
USB3.0に挿すと認識しないしハブ経由だと不安定になったり、総合的な信頼性は低かった
ch552gが超安定でUSB3.0に挿しても使えるしfalsh16kなので俺はそっちを買い込んだ ch55xもarduinoとして使えるんだけどライブラリが全然無くてリモコンやOLEDとかAVRから移植したなあ >>976
これまでの経験だけどdigisparkみたいな内蔵RCのV-USBデバイスがUSB3.0ポートで動かないのはキャリブレーションをUSBホストの同期信号でしてるからで、
USB3.0の信号と相性が悪いのが原因なんだよね。まあUSB2.0ハブを経由させれば一応動く。クロックを外部オシレーターにするのが一番楽だけど。
って書いたまさに今、この3.0とのキャリブレーション不具合でV-USB使えねー問題があって萎えてたた事を思い出したわ
そのch552gにするかなあ え?
今から買うのだったらch32vとかじゃないの
中華ですらc51捨てて32bit移行してるし riscvはもう少し共通の開発環境ができればな
CH32Vの推奨の中華の開発環境は手を出しづらい >>981
ちゃんと動くUSBデバイス作りたいだけなのでarduino環境で実績のありそうなch552gで一度試してみるよ もうArduino初心者は居ないようなのでこのスレの役目も終了しますね… 5ちゃんねるもarudinom初心者です
有識者の方に質問したのですがよろしいですか? ベランダで園芸の気温測定用にESP32とDH22使ってるけど、
42度に達すると0.2度と誤表示されるエラーが発生してDH22を
予備に変えたら治ったんだけど、さっき46度と表示されて今度は
ESP32が不具合あったようでWiFiごと機能停止に至った
一応納豆の発泡スチロールに入れてるけど、ケースが大きいと
温度計とのケーブルが届かないんだよね
屋外での熱対策ってファン付ければ乗り切れる? >>987
家電製品ですら酷暑で故障続出
密閉してバケツに張った水の中へGo >>987 ですが、
午前中45度でフリーズしてて、電源入れ直したら55度まで上がって
その後は何故か正常にAmbientに記録されてました(日陰になると一気に10度下がってた)
日向そのまんまだと気温測定になってないですねw
とりあえず2mのレインボーケーブルを注文したので、ダイソーの発泡スチロール
のクーラーボックスとジップロック入りの水で挟むとかやってみます
コンクリートの照り返しだけで窓際でも暑さを感じるので日陰でも40度は行きそうです 発砲スチロールに密閉したら逆効果なのでは?
電気的特性、推奨周囲温度範囲-40℃〜85℃
温度測定なら10秒くらいスリープで一瞬稼働のループでOKやろ
フル稼働したいなら主要チップヒートシンクでも全然OKやろ 自己発熱するものを発泡スチロールのケースに入れたら温度が上がるばかりだけど、
本件は間欠動作とかで実質的にはほとんど自己発熱してないのかな? UNO R4をいろいろな環境でテスト中なんだけど、Win&MacはOKで、Linuxはエラーが出る。
こんな感じ。
Arduino:1.8.19 (Linux), ボード:"Arduino Uno R4 Minima"
/home/pi/.arduino15/packages/arduino/hardware/renesas_uno/1.0.2/cores/arduino/cm_backtrace/cm_backtrace.c: In function 'cm_backtrace_init':
/home/pi/.arduino15/packages/arduino/hardware/renesas_uno/1.0.2/cores/arduino/cm_backtrace/cm_backtrace.c:144:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
fw_name = firmware_name;
^
/home/pi/.arduino15/packages/arduino/hardware/renesas_uno/1.0.2/cores/arduino/cm_backtrace/cm_backtrace.c:145:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hw_ver = hardware_ver;
^
/home/pi/.arduino15/packages/arduino/hardware/renesas_uno/1.0.2/cores/arduino/cm_backtrace/cm_backtrace.c:146:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
sw_ver = software_ver;
^
/home/pi/.arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-ar: error while loading shared libraries: libfl.so.2: cannot open shared object file: No such file or directory
exit status 127
/home/pi/arduino-1.8.19/arduino-builderが127を返しました。
ボードArduino UNO R4 Minimaに対するコンパイル時にエラーが発生しました。 libfl2 パッケージを入れてないから。
ディストリが分からんからなんともアドバイスも出来ないけど、
apt-get install libfl2
なりすれば良いだけ。
--
$ apt-file search libfl.so.2
libfl2: /usr/lib/x86_64-linux-gnu/libfl.so.2
libfl2: /usr/lib/x86_64-linux-gnu/libfl.so.2.0.0
$ apt-cache search libfl2
libfl2 - SHARED library for flex (a fast lexical analyzer generator) >>994
sudo apt-get update
sudo apt-get install flex このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 204日 14時間 54分 52秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。