X



トップページ電気・電子
1002コメント377KB
Arduino初心者熱烈大歓迎質問スレ part28
レス数が1000を超えています。これ以上書き込みはできません。
0001774ワット発電中さん
垢版 |
2020/06/10(水) 05:28:40.57ID:B1nfFGXL
http://www.arduino.cc/

【質問者心得】
・スレに一応目を通してから質問しましょう
・回答者はエスパーではありません。状況が分かるように詳しく書きましょう
 詳しく書いてくれないと、答える方も困ってしまいます。答えようがないのです
【回答者心得】
・すぐにググレカスと言う前に「○○でググれカス」って言うような大人の余裕を見せつけてやりましょう
・節度ある初心者さんには、特に優しくね

前スレ
Arduino初心者熱烈大歓迎質問スレ part27
http://rio2016.5ch.net/test/read.cgi/denki/1585316143/

Arduino初心者熱烈大歓迎質問スレ part26
http://rio2016.5ch.net/test/read.cgi/denki/1579146318/

過去スレ


Arduino初心者熱烈大歓迎質問スレ part25
http://rio2016.5ch.net/test/read.cgi/denki/1568358922/
Arduino初心者熱烈大歓迎質問スレ part24
http://rio2016.5ch.net/test/read.cgi/denki/1554776918/
Arduino初心者熱烈大歓迎質問スレ part23
http://rio2016.5ch.net/test/read.cgi/denki/1541233445/
Arduino初心者熱烈大歓迎質問スレ part22
http://rio2016.5ch.net/test/read.cgi/denki/1534549073/
Arduino初心者熱烈大歓迎質問スレ part21
http://rio2016.5ch.net/test/read.cgi/denki/1527252804/
Arduino初心者熱烈大歓迎質問スレ part20
http://rio2016.5ch.net/test/read.cgi/denki/1514503488/
Arduino初心者熱烈大歓迎質問スレ part19
http://rio2016.2ch.net/test/read.cgi/denki/1500745528/
Arduino初心者熱烈大歓迎質問スレ part18
http://rio2016.2ch.net/test/read.cgi/denki/1485192244/
Arduino初心者熱烈大歓迎質問スレ part17
http://rio2016.2ch.net/test/read.cgi/denki/1471967293/
0006774ワット発電中さん
垢版 |
2020/06/10(水) 11:22:34.99ID:xk2LHFn1
ArduinoIDE で ツール->ボード->ボードマネージャ を起動すると
package_index.json と package_index.json.sig が壊れる不具合が出てる模様。
バックアップして元に戻せば治る。

まだ原因が追求できた所なので、世間の情報は検索してないのですが、
おま環であれば良いですが、zip展開版の 1.8.12 です。
同様の方はご注意ください。
0011774ワット発電中さん
垢版 |
2020/06/11(木) 10:17:02.14ID:DLM3tjCb
>>6
最新版1.9βだと問題ないらしい(うちもこれで治った)
根本解決ではなく、javaエラーある程度無視する仕様らしい?
なんかaeduino/javaともプログラム更新してない人含め、昨日突然同時多発的に始まったみたいね?
何があったのだろう?

https://github.com/arduino/Arduino/issues/10332
0013774ワット発電中さん
垢版 |
2020/06/11(木) 11:50:08.86ID:AgCKQ8TZ
WindowsUpdateはいろいろやらかしてくれるからな
1909入れてみたけどなんとなく変だったから1903に戻したし
0016774ワット発電中さん
垢版 |
2020/06/11(木) 12:49:01.99ID:Hc8hHSls
前スレでSeeeduino Xiao買ったって人、消費電力はどのくらいですかねえ 特にスリープモードではどうか気になる…。
0017774ワット発電中さん
垢版 |
2020/06/11(木) 13:42:02.32ID:QyXma9ob
今日になって、Arduino IDEが起動しなくなった!
Windows10で、Arduino IDEのバージョンは1.8.12
会社でも自宅でもダメだから、PC側の問題じゃなさそうだ。
困ったなぁ。
ひとまず>>11を試してみよう。
0018774ワット発電中さん
垢版 |
2020/06/11(木) 15:25:08.53ID:Gxc4jURp
>>14
最初の言い出しっぺですけど、この対策で問題解決できることを確認しました。
WindowsUpdate とは関係ないと思われます。

具体的なことがリンク先に書かれてますけど、package_index.json.sig を削除
するだけで良いみたいです。
起動時に警告が出るので、その通りにボードマネージャを起動するだけです。
次回以降は、警告が出なくなり、普通にボードマネージャも使えます。
0020774ワット発電中さん
垢版 |
2020/06/11(木) 16:20:19.25ID:YSBgWE88
屋外BOXを設置して、中に温湿度センサー等を置いて
ファンで通風しながらの気象ロガーを考えています。
現在湿度96%なんですが、センサーの基板等が心配です。
端子部や半田の部分にサビ止め等吹き付けたほうがいいんですかね?
kure5-56ならあるんですが。
0021774ワット発電中さん
垢版 |
2020/06/11(木) 16:28:23.52ID:tz3o3be3
>>20
直接雨があたったりしなけりゃ大丈夫じゃないかな。
この前森の中で3年働かせたセンサーの基板はピカピカだったよ
0022774ワット発電中さん
垢版 |
2020/06/11(木) 16:35:51.28ID:YSBgWE88
>>21
大丈夫そうですかね。一応ファンのフードを工夫して、
予備のセンサーも用意しておきます。
0025774ワット発電中さん
垢版 |
2020/06/11(木) 19:55:24.35ID:DLM3tjCb
>>18
うち、それだけでは解決しなかったな。
ジェイソン撃退で治るのは今までもちょくちょくあったけど、今回のはそれだ治らなかったから最新版再インストールやらjava更新やら色々やったわ。
0026774ワット発電中さん
垢版 |
2020/06/11(木) 21:35:05.35ID:FQ0OyqbP
>>24
やべぇ。
サンハヤトをサンハトヤと読んじまった。
関東ローカルネタですまん。
0028774ワット発電中さん
垢版 |
2020/06/11(木) 23:43:23.65ID:3JWOyUT4
見積書がFAXで送られてきて「社員旅行ですか?」って総務の子に聞かれたのは懐かしい思い出。
0033774ワット発電中さん
垢版 |
2020/06/12(金) 09:59:51.04ID:a8d7TP+O
このスレで「4126」を「良い風呂」と読めるの何人くらいだろう?
0039774ワット発電中さん
垢版 |
2020/06/12(金) 15:32:57.87ID:EC7rM4z4
DFPlayerでmp3playerを作りたいんですがどなたか私にスケッチ教えてください!
一般的なplayerと同じ動作させたいんですが・・・

全曲順番に再生する
STOP押したら停止、STARTしたら続きから再生
NEXT,PREVIOUSも欲しい

よろしくお願いします
0042774ワット発電中さん
垢版 |
2020/06/12(金) 16:38:01.01ID:QBjz7oLO
>>40
Arduinoありきでお願いします!
勉強のために

よろしくお願いします。
0048774ワット発電中さん
垢版 |
2020/06/12(金) 19:03:56.47ID:05zyOK3a
String a = " ABC";
のように書いてもStringの先頭に空白が入りません。
どうすれば出来るようになりますか?
0049774ワット発電中さん
垢版 |
2020/06/12(金) 19:18:21.74ID:xAu9C0sG
>>48

printf("%1s¥n", "ABCDE");
printf("%10s¥n", "ABCDE");
\sとか¥sとか駄目かな?
0051774ワット発電中さん
垢版 |
2020/06/12(金) 19:47:39.12ID:CAnCG+3m
パソコン連携のシステム作ってもらうのって
いくらくらいかかるの?
0052774ワット発電中さん
垢版 |
2020/06/12(金) 20:28:12.58ID:05zyOK3a
String a = String(" ABCD");

↑これで出来ました。
ありがとうございました。
0053774ワット発電中さん
垢版 |
2020/06/12(金) 21:17:40.45ID:oNiZPzaZ
>>43
ライブラリが古い

誰も知らなそうですね 残念
0056774ワット発電中さん
垢版 |
2020/06/12(金) 23:18:55.44ID:Glv2it7J
USBのシリアル1とソフトウェアシリアルを繋げて、USB->シリアル変換ケーブル的な物を作りたいんだけども、
よくある↓みたいなやつでXmodemとかYmodem転送をすると失敗するのはなぜなんです?
レートを遅くしてもダメ。
Teraterm To Teratermで試してて、普通のキー入力とかは双方やり取りできてる。

void setup() {
Serial.begin(9600);
Serial2.begin(9600); // ソフトウェアシリアル
}

void loop() {
if (Serial2.available()) Serial.write(Serial2.read());
if (Serial.available()) Serial2.write(Serial.read());
}
0057774ワット発電中さん
垢版 |
2020/06/12(金) 23:23:51.47ID:bdOBXvO/
それってマイコンいらなくてTXピンとRXピンから信号取るだけでいいんじゃね
まぁそれってただボードに乗ってるUSB-TTLUART変換チップ使ってるだけになるけど
0058774ワット発電中さん
垢版 |
2020/06/12(金) 23:24:32.79ID:Glv2it7J
今試してる接続はこんな感じです
Port1(usb) -> Arduino → TTL-USB変換 -> Port2

Teratermを二個開いてそれぞれPort1とPort2をオープン
Port1から2、または逆方向にてキー入力などが送信されることを確認
Port1からPort2にXmodem転送すると途中でこける
0059774ワット発電中さん
垢版 |
2020/06/12(金) 23:25:38.63ID:Glv2it7J
>>57
いやもちろんほんとにシリアル通信だけならおっしゃる通りなんですが、
実際はもうちょっと多機能なもので、そのうちの1機能としてシリアルケーブルモード的なのを実装したいんです。
0060774ワット発電中さん
垢版 |
2020/06/12(金) 23:33:01.56ID:bdOBXvO/
>>58>>59
ソフトウェアシリアルあんま処理能力高くないしどっかで処理が重なってこけてんじゃない?
実際のデータのやり取り見た?なんかロジックアナライザもってない?800円くらいの中華品でも十分
0061774ワット発電中さん
垢版 |
2020/06/12(金) 23:33:18.36ID:Glv2it7J
ちなみにその別機能ってのは、ArduinoとSPIで繋がるSDカード内のファイルを、Xmodem(正確にはYmodem)でPort1またはPort2に送信するって機能なんですが、
これは動いてます。
つまりArduinoからのファイル送信はうまくいってます。
おまけでSDカードを使わないPort1→2スルーモードみたいなのが作りたいんですよね
0062774ワット発電中さん
垢版 |
2020/06/12(金) 23:38:06.89ID:Glv2it7J
>>60
アナライザはあるにはありますが電池で動くような中華おもちゃです・・・
パケットキャプチャ的なものを間に入れるのが必要そうですね。

Port1と2のTeratermでパケット数がずれて止まるんで、処理能力不足は疑いましたが、
20MhzのNanoで4800bpsでもコケるって変ですよね…

転送先のMacPlusの方が遅い8Mhzですよw
0063774ワット発電中さん
垢版 |
2020/06/12(金) 23:40:53.22ID:bdOBXvO/
もしくは素直にUSARTを2つ以上装備したマイコンを搭載したモデルに変える
他に使ってるライブラリ等の関係でアーキテクチャを変えたくないならmega328PBとかmega2560とかそのへんが載った奴に
ちょっと変わってもいいならmega4809の載ったNanoEveryとか、だいぶ変わってもいいならSTM32F103C8T6にするとか
0064774ワット発電中さん
垢版 |
2020/06/12(金) 23:49:28.79ID:bdOBXvO/
>>62
SoftwareSerialの中身見たらわかるけどリソースをピンチェンジ割込みだけで済ませてタイマを一切要求しない仕様で
タイミング取るのにビジーウェイト使ってるからボーレートが遅いとCPUの拘束時間が長いし割込みが関わるとぶっ壊れやすいぞ
0065774ワット発電中さん
垢版 |
2020/06/13(土) 00:11:24.50ID:26a5jPQM
トライステートバッファを追加して御希望のピンをUSBシリアルのTXピンとRXピンと繋いじゃえば?
普段はバッファをハイインピーダンスにしておいてモードチェンジ時には逆にマイコン側のピンをINPUTでハイインピーダンスにして
そしたらUSBシリアルと直接繋がるしCPUの介在がいらない

トライステートバッファの制御に1ピン要るけども
0066774ワット発電中さん
垢版 |
2020/06/13(土) 02:10:21.53ID:a5IgSs+K
>>54
一通り調べましたよ

ここにいる人は詳しい人ばかりだから知ってる人がいると思ったんですけど

誰かDFPLAYER詳しい人いませんかー?
0068774ワット発電中さん
垢版 |
2020/06/13(土) 07:34:45.04ID:LdAtWWLp
だな
そして質問者本人が成り済まして正解のレスをする、いつものバターン
0069774ワット発電中さん
垢版 |
2020/06/13(土) 07:38:11.55ID:akgie4nK
途中に別の質問レスが挟まれてちゃんと消化されてるのがなんかウケる
0070774ワット発電中さん
垢版 |
2020/06/13(土) 07:57:52.00ID:NlfBoNGx
>>63-65
やはりソフトウェアシリアルで連続送信は無茶かもしれませんね・・・
NanoかProMicroの標準的な構成だけで簡単に実現したかったのですが、ちょっとあきらめモードです。

無くてもいい機能だし。
NanoEveryいいですね!
ねだんが高い以外はさいこうです
0071774ワット発電中さん
垢版 |
2020/06/13(土) 08:33:03.27ID:LgvPDcs0
>>66
上から目線で教えろで、調べたけどここには俺より詳しいヤツがいないってことですね。
わかります。
0072774ワット発電中さん
垢版 |
2020/06/13(土) 08:33:56.75ID:a5IgSs+K
>>67
質問の仕方が悪かったですか?

じゃあそのスケッチの書き方も教えて下さい
0073774ワット発電中さん
垢版 |
2020/06/13(土) 08:39:07.53ID:LgvPDcs0
>>72
「Arduino 開発 あなたの住んでいる市町村」
これでググると、対応する会社が見つかるので、電話かメールして見積もりしてもらいなさい。
0074774ワット発電中さん
垢版 |
2020/06/13(土) 08:49:50.37ID:A//2C5aH
>>70
安くてNanoがいいならこういう中華クローンで328PBが載ってる奴は?>>63でも書いたけど328Pと328PBは違うモノだぜ
https://www.aliexpress.com/item/32818544709.html
画像は328PになってるけどタイトルにPBとあって、実際にPBが載ったのが届く(レビューの一番上にあるウクライナ人の写真を参照)

328PBならUSART2つついてるし328Pで動くコードはまるっとそのまま移植できる

ただ、USART1のTXDとRXDはSPIのMISO、MOSIと被る・・・
しかしコイツはSPIも2つ持っててSPI0じゃなくSPI1を使えばUSART0、USART1、SPI1でピン被り無しで使える
0075774ワット発電中さん
垢版 |
2020/06/13(土) 08:53:11.45ID:PIaWSUtu
今は職業訓練所でもArduinoやってるとこあるから入学して教わればいいな
0077774ワット発電中さん
垢版 |
2020/06/13(土) 09:03:17.15ID:PIaWSUtu
>>70
片方がUSBつなぎでよけりゃ 32u4 のproMicroでいいじゃないのかね
クローン品がいっぱい安く売ってるし
0078774ワット発電中さん
垢版 |
2020/06/13(土) 09:12:54.94ID:xcgJ5muc
>>72
悪いどころの話じゃない、悪すぎる
お前が掲示板で質問に答えるとして
パソコンの使い方教えてください?
どうこたえるよ?
0079774ワット発電中さん
垢版 |
2020/06/13(土) 09:17:30.94ID:A//2C5aH
>>77>>70
そういやProMicro(32u4)でもいいならSerial1でUSART0使えるわ
デフォルトのSerialは内蔵USBのだし
0080774ワット発電中さん
垢版 |
2020/06/13(土) 09:40:53.91ID:a5IgSs+K
>>76
がんばります

>>78
しらねーよ お前がよくできた回答を提示しろよ
0083774ワット発電中さん
垢版 |
2020/06/13(土) 10:43:13.35ID:a5IgSs+K
>>81
色々ググってるんですが
基礎も含めて勉強中です

>>82
Lチカはできます!簡単な音楽再生もできるんですがplayerのように全曲通しで再生、前の曲、次の曲、停止、再生など駆使したいんです・・・
0085774ワット発電中さん
垢版 |
2020/06/13(土) 10:47:49.85ID:a5IgSs+K
>>84
DFRobotDFPlayerMiniです
0091774ワット発電中さん
垢版 |
2020/06/13(土) 11:10:42.45ID:a5IgSs+K
>>87
はい 全機能の存在は知っているのですが例えば「再生中の曲を停止する」というようなことが全然できなくて

例えばスイッチ押してmyDFPlayer.next()で曲が変わっていきますよね
でもこれを一時停止する、ってのができないんです


>>88
ありがとうございます 単体動作もやってみます
0093774ワット発電中さん
垢版 |
2020/06/13(土) 11:12:22.50ID:a5IgSs+K
>>90
すみません 気を付けます
0094774ワット発電中さん
垢版 |
2020/06/13(土) 11:15:21.38ID:a5IgSs+K
>>92
は?
0095774ワット発電中さん
垢版 |
2020/06/13(土) 13:08:04.41ID:SYilNLYi
↓関数を1つにすること出来ますか?

uint32_t dpll_number;
uint8_t dpll_number_0;
uint8_t dpll_number_1;
uint32_t dpll_number_2;
uint32_t dpll_number_3;

Wire.beginTransmission(Address);
Wire.write(66);
Wire.endTransmission(false);
Wire.requestFrom(Address,4,true);
dpll_number_0 = Wire.read();
dpll_number_1 = Wire.read();
dpll_number_2 = Wire.read();
dpll_number_3 = Wire.read();
Wire.endTransmission();

dpll_number = (dpll_number_0 + (dpll_number_1 << 8) + (dpll_number_2 << 16) + (dpll_number_3 << 24));

よろしくお願いします。
0101774ワット発電中さん
垢版 |
2020/06/13(土) 14:39:22.24ID:a5IgSs+K
YouTubeで人気ないジャンルなのがよくわかるわw
0103774ワット発電中さん
垢版 |
2020/06/13(土) 14:42:39.80ID:VdOz+qug
readの戻り値を操作してuint32に加えていけば使う変数は減るが、
0104774ワット発電中さん
垢版 |
2020/06/13(土) 16:04:11.11ID:SYilNLYi
>>103
ありがとうございます。
使う変数を減らしたいです。

uint32_t dpll_number;

Wire.beginTransmission(Address);
Wire.write(66);
Wire.endTransmission(false);
Wire.requestFrom(Address,4,true);
dpll_number = Wire.read();
dpll_number = Wire.read(); + dpll_number << 8
dpll_number = Wire.read(); + dpll_number << 16
dpll_number_= Wire.read(); + dpll_number << 24
Wire.endTransmission();

こんな感じはむりなんですか?
0107774ワット発電中さん
垢版 |
2020/06/13(土) 16:15:09.83ID:VdOz+qug
+=のほうが読みやすいと思う。容量がかつかつでもない限り、変数へらすより自分が解りやすいコードにしたほうがよいんじゃねーかな。
0109774ワット発電中さん
垢版 |
2020/06/13(土) 16:50:47.72ID:A//2C5aH
なんかスルーされた…?
共用体にすれば余計な変数も余計なビットシフトもいらずメモリはおろかCPUサイクルさえ節約できるのに
0110774ワット発電中さん
垢版 |
2020/06/13(土) 16:58:46.25ID:SYilNLYi
uint32_t dpll_number;

Wire.beginTransmission(Address);
Wire.write(66);
Wire.endTransmission(false);
Wire.requestFrom(Address,4,true);
dpll_number = Wire.read();
dpll_number = (dpll_number + (Wire.read() << 8));
dpll_number = (dpll_number + (Wire.read() << 16));
dpll_number = (dpll_number + (Wire.read() << 24));
Wire.endTransmission();

でやると>>95の出力と答えが違ってしまいます・・・
0114774ワット発電中さん
垢版 |
2020/06/13(土) 17:09:29.98ID:akgie4nK
>>111
共用体な

たとえばその32bitの変数を、4つの8bit変数としても同時に定義できる
そんでどちらかを書き換えればどちらも書き換わる(同じメモリアドレスなので)

4つ順番に1バイト入れてけば自動的に32bitとしても読める
0115774ワット発電中さん
垢版 |
2020/06/13(土) 17:14:25.73ID:gcrSmY5O
なんでこの手の人は結果だけを得ようとして基礎知識をちゃんと身に付けようとしないんだろう
いくらArduinoがHALやらラッパーやらで簡単に書けるように作られてるとはいえ
演算子も知らず式の書き方もわからないのにどうする気なのか…
0116774ワット発電中さん
垢版 |
2020/06/13(土) 17:26:52.53ID:w8WEaEKo
横からだけどドットマトリクス LED を連ねて使うのにビデオ RAM みたいな変数を使っていたから共用体のことは参考になったどうもありがとう
ビットシフトしなくていいしすっきりしそう
随分昔にCの勉強した時に共用体って見たような気がしないでもないが、今となってはまったく思いつかなかった
0117774ワット発電中さん
垢版 |
2020/06/13(土) 17:27:52.84ID:SYilNLYi
>>114
ありがとうございます。何となく理解できました。試してみます。

>>115
すみません・・・

dpll_number = Wire.read();
dpll_number += (Wire.read() << 8);
dpll_number += (Wire.read() << 16);
dpll_number += (Wire.read() << 24);

で、4294941493
>>95だと7510805になってしまう…
自分で調べてみます…
汚してすみませんでした。
0118774ワット発電中さん
垢版 |
2020/06/13(土) 17:44:03.16ID:VdOz+qug
変数へらして数バイトあけても、デバッグしにくくなってたら意味が無いような。
0119774ワット発電中さん
垢版 |
2020/06/13(土) 17:49:49.62ID:O7e5GJFA
共用体って考え方がすごい
初心者でビットの取り扱いに慣れてないせいもあると思うけど
慣れてないとビットがごちゃまぜになって分からなくなりそう
0122774ワット発電中さん
垢版 |
2020/06/13(土) 21:33:49.78ID:oW0nVJFI
>>111
4バイトlongと1バイトbyte[4]が同じ場所を占めるような変数宣言がunionでできる。
これやると、配列にreadデータを次々に4回入れたらその時点でlongの変数が出来上り。
まあ、変数のサイズやフォーマット依存なので、時間やメモリの制限きつくなければ普通にそのままでもいいような気も。
変数減らすだけなら、
uint8_t dpll_number[4];で。
ループもポインタも使えるし。
0123774ワット発電中さん
垢版 |
2020/06/13(土) 21:51:08.15ID:ocgOOkf1
>>122
横からすみません。読み出しまで含めたサンプルコードいただけませんか?
興味はあるのですが書き方がわかりません
0124774ワット発電中さん
垢版 |
2020/06/13(土) 21:58:30.24ID:VdOz+qug
>>123
初期化するだけだからコードも何もない。配列いじったら変数の対応するbitが変わる。逆もしかり。
0125774ワット発電中さん
垢版 |
2020/06/13(土) 22:02:53.69ID:O7e5GJFA
>>123
分からない事を聞くならまだしも
1から全部面倒見ろって
なんか違うんじゃない?
やってくれる人がいればいいけど
0126774ワット発電中さん
垢版 |
2020/06/14(日) 02:08:46.27ID:fy+dRD3W
>>125
うざっ
0127774ワット発電中さん
垢版 |
2020/06/14(日) 05:33:32.78ID:8Srsi5FR
>>117
これじゃ、ダメ?
おそらくArduino Unoとかだとint型が16bit整数なので値が変わるのだと思う
16bit整数だとWire.read() << 16やWire.read() << 24は0になるからね
だからuint32_tでキャストして32bit整数として扱うようにする

dpll_number = (uint32_t)Wire.read();
dpll_number += ((uint32_t)Wire.read() << 8);
dpll_number += ((uint32_t)Wire.read() << 16);
dpll_number += ((uint32_t)Wire.read() << 24);
0128774ワット発電中さん
垢版 |
2020/06/14(日) 07:33:05.23ID:8Srsi5FR
あと、>>95のは
dpll_number = (dpll_number_0 + ((uint16_t)dpll_number_1 << 8) + (dpll_number_2 << 16) + (dpll_number_3 << 24));
もしくは
dpll_number = (dpll_number_0 + ((uint32_t)dpll_number_1 << 8) + (dpll_number_2 << 16) + (dpll_number_3 << 24));
こうしないと
(dpll_number_1 << 8)
の部分がint型(符号付16bit整数)に1度変換されてからuint32_tに変換される
その時に符号拡張されて値がおかしくなる
0129774ワット発電中さん
垢版 |
2020/06/14(日) 07:40:15.96ID:13MxaMmL
>>128
今度はキャストの解説を求められるぜ!
多分、unisigned も単に符号なしで、ビット演算とか?
>>95 のコードで
--
uint32_t dpll_number;
uint8_t dpll_number_0;
uint8_t dpll_number_1;
uint32_t dpll_number_2;
uint32_t dpll_number_3;
変数名に無意味な number とか付いてる時点で察し
0130774ワット発電中さん
垢版 |
2020/06/14(日) 07:57:06.05ID:13MxaMmL
途中でポストしちゃいましました。

何故 _0 _1 が 8ビット で _2 _3 が 32ビットなんだろう?
元々のコード自体がきちんと動いてないんだろうな。

まず Wire.read() を全てシリアルに出力して、紙に書きだして
電卓使って、正しい答えを知らない限り、コードが正常動作してるか
分からないぜ!

共用体は有用だし、使いようによっては凄く便利なのだが、
たぶん多くが挫折するポインタの概念が分かってないと無理。>>123 がその例。
>>95 には程遠い世界だよ。
* と & の違いになり、void* が何故必要になったかまで、おんぶに抱っこ。

可読性が犠牲になったり、いずれ何処かででインディアン問題も出てくる。
0131774ワット発電中さん
垢版 |
2020/06/14(日) 08:07:28.30ID:8Srsi5FR
共用体の例
union {
uint32_t dpll_number;
uint8_t byte[4];
} a01;
a01.byte[0] = Wire.read();
a01.byte[1] = Wire.read();
a01.byte[2] = Wire.read();
a01.byte[3] = Wire.read();
Serial.print("uint32_t dpll_number = ");
Serial.println(a01.dpll_number);


>>177
>>95の例だと7510805になってしまうと書かれてるが
試してるコードではバイト順が逆になってない?
今までに付いてるレスは全部リトルエンディアンが前提になってて
Serialから送り出されるバイト列もリトルエンディアン前提なのだけど
実際はどうなの?
リトルエンディアンというのは最下位のバイトが最初に来て
最上位に来るバイトが最後に来るやつ
その反対でビッグエンディアンというのがあって最上位のバイトが最初に来て
最下位のバイトが最後に来るのがある
最近のマイコンはどれもリトルエンディアンに統一されつつあるが
0133774ワット発電中さん
垢版 |
2020/06/14(日) 08:25:20.98ID:13MxaMmL
>>122
文句ばかりで申し訳ないけど、>>115>>125 の意見がもっとも
と、個人的に思ってる。

> uint8_t dpll_number[4];で。
同じことを char で文字列扱って [5] が必要になる所で詰まる。
たまたま現在の処理系の long が 32ビット だってことに依存してる。
0134774ワット発電中さん
垢版 |
2020/06/14(日) 08:26:20.75ID:8Srsi5FR
シリアルじゃないかI2Cね
具体的にどのデバイスなのかな?
0135774ワット発電中さん
垢版 |
2020/06/14(日) 08:36:24.97ID:8Srsi5FR
longとかintは処理系依存なんでマイコンではなるべく
int32_t、uint32_t、int16_t、uint16_tなんかを使うわけだけどね
AVRだとint型はint16_tでunsigned intがuint16_t
なので代入文で右辺が-32768から32767までの範囲を超えてしまうとおかしくなるので注意
int32_t hogehoge;
hogehoge = 1000000L;
とかしないといけない
最近はM5Stick VやMaixduino、Maixbitなんかの64bitのArduinoも出てきてるので
longはあまり使わないほうがいいね
0136774ワット発電中さん
垢版 |
2020/06/14(日) 08:43:20.12ID:8Srsi5FR
そういえば、Arduinoでビッグエンディアンの製品ってあるのかな?
I2CやSPIではビッグエンディアンでデータ送ってくるものはありそうだけど
Arduinoが出だした頃は古いものは除いて新規のマイコンはみんなリトルエンディアンになってるし
Arduinoが対応してるマイコンは比較的新しいものが多いと思うのだけど
0137774ワット発電中さん
垢版 |
2020/06/14(日) 09:00:07.60ID:8Srsi5FR
64bitのLinuxなんかでもx86_64との互換性を考慮してリトルエンディアンばかりになってるね
64bitのPOWERもPOWER8からバイエンディアンになって
UbuntuやDebianでは64bitではリトルエンディアンのものしか出さなくなった
ARMもLinuxではリトルエンディアンだし、RISC-Vもリトルエンディアン
0138774ワット発電中さん
垢版 |
2020/06/14(日) 09:02:11.04ID:13MxaMmL
>>136
どうなんでしょう?
スイッチサイエンスの製品説明にも RISCチップ、ビット数 などは書かれているが、
インディアンは、データシートの後方にしか書かれてないんじゃないのかな?

数行で確認できるので、GitHub にあるかもしれないけど、
Serial.bigin(9600) を 115200 に変更する面倒を考えたら自分で書くよねw

モトローラーと共にビッグエンディアンも終わったんじゃないかな?
個人的には、バイナリのみのリバースエンジニアに、ビット長が不明で、
リトルエンディアンとか面倒で嫌いなんだけど。
0139774ワット発電中さん
垢版 |
2020/06/14(日) 09:14:46.05ID:8Srsi5FR
バイト長が不明な変数の場合はリトルエンディアンの方が扱いやすい
なにせバイト長に限らず下位バイトが同じ場所にくるからね
たとえば32bitの整数の0x76543210の場合
0x10 0x32 0x43 0x54 0x67
と格納される
これが16bitの整数の0x3210の場合でも
0x10 0x32
と格納される
下位のバイトの格納位置は変わらない
ビッグエンディアンだと
0x76 0x54 0x32 0x10
0x32 0x10
とバイト長が変わると下位バイトが同じでも下位バイトの格納位置が変わってしまう
0140774ワット発電中さん
垢版 |
2020/06/14(日) 09:20:08.80ID:8Srsi5FR
デバッガが高機能だとリトルエンディアンでも混乱することはないし
数のバイト列として扱う場合はリトルエンディアンの方が楽
マイコンとして扱う場合でも下位ビットが揃ってた方が楽
0141774ワット発電中さん
垢版 |
2020/06/14(日) 09:41:47.04ID:8Srsi5FR
話を戻して
>>94の方法で
1番目のバイトが53、2番目が155、3番目が255、4番目が255だとすると
結果が4294875957

>>128の方法でやると
これだと4294941493

Pythonで
(255<<24)+(255<<16)+(155<<8)+53を計算してみると
4294941493
(255<<24)+(255<<16)+(155<<8)+53+(255<<24)+(255<<16)-2**32は
4294875957

>>94のは明らかに(dpll_number_1 << 8)の部分が
符号拡張されて上位バイトに0xffff0000が追加されて値がおかしくなってます
0143774ワット発電中さん
垢版 |
2020/06/14(日) 10:53:47.88ID:kaLugr/R
>>133
よくわからないが、配列が4つなのはlongの仕様ではなく、そのセンサが8bitずつ4回に分けてデータを取得することに依存してると思うが。

おっしゃるように、longのサイズやバイト順なんて決まっているとは言えないので、>>122に書いたように、配列使って扱いやすくするのは良いが結合するのにunion使うのは勧めない。
0144774ワット発電中さん
垢版 |
2020/06/14(日) 10:57:03.48ID:UQdTBfRU
ライブラリでポインタ渡しの定義がされてない場合がかなりあってめんどい
まぁ書きゃいいんだけど
0146774ワット発電中さん
垢版 |
2020/06/14(日) 11:06:31.75ID:8Srsi5FR
>>145
(dpll_number_1 << 8)の部分は
2項演算子( << )で1項目のdpll_number_1がuint8_tで2項目の8のがint型
なので8のint型に合わせて結果がint型になる
一度int型に変換されるのでuint32_tに変換されるときに符号拡張される
0147774ワット発電中さん
垢版 |
2020/06/14(日) 11:09:48.07ID:8Srsi5FR
なので
((uint16_t)dpll_number_1 << 8)
もしくは
((uint32_t)dpll_number_1 << 8)
とやれば結果は正しくなる
0148774ワット発電中さん
垢版 |
2020/06/14(日) 11:14:09.46ID:8Srsi5FR
>>143
longじゃなくてuint32_tとやれば32bit確定なのでunionでも問題ない
マイコンの世界ではbit長が確定する場合は
なるべくint32_tやuint32_t、int16_tやuint16_tを使うほうがいい
0149774ワット発電中さん
垢版 |
2020/06/14(日) 11:20:13.12ID:8Srsi5FR
まあ、AVRは8bitCPUでその8bitでuint32_tを扱うわけで
共用体使った方が断然速いコードになるけどね
0150774ワット発電中さん
垢版 |
2020/06/14(日) 12:12:48.64ID:8Srsi5FR
と思ったけど
アセンブラ出力して比べてみたら全く同じコードだったw
0151774ワット発電中さん
垢版 |
2020/06/14(日) 12:16:02.35ID:UQdTBfRU
>>150
バイト単位のビットシフトは結構ちゃんと吐いてくれるよ
volatileじゃない仮変数も必要なければRAMに置かないし

ビットシフトとアセンブラで思い出したけどAVRGCCてswapを吐かない?

uint8_tのhogeに>>=4すると回数のカウントに別のレジスタ使ってループでlsrを回してるんだけど
lds ldi lsr subi brne stsで16バイト喰って20サイクルも使っている(しかも余計にレジスタ1つ使う)

andi swapなら4バイト2サイクルで済むのに
0152774ワット発電中さん
垢版 |
2020/06/14(日) 12:19:28.48ID:UQdTBfRU
>>151
ごめんロードストア入ってるのと入ってないのを比較した

後者は lds andi swap sts で12バイト6サイクル の間違いです
0153774ワット発電中さん
垢版 |
2020/06/14(日) 13:22:11.72ID:8Srsi5FR
違った
やっぱりunion使った方が速かった
unionを使って関数にした場合の該当コード
mov r14,r24
mov r15,r22
mov r16,r20
mov r17,r18
レジスタをコピーしてるだけ

シフトでやるとこんなになる
.LVL11:
mov r12,r20
mov r13,__zero_reg__
mov r14,__zero_reg__
mov r15,__zero_reg__
movw r14,r12
clr r13
clr r12
mov r16,r18
ldi r17,0
ldi r18,0
ldi r19,0
.LVL12:
mov r19,r16
clr r18
clr r17
clr r16
.LVL13:
add r12,r16
adc r13,r17
adc r14,r18
adc r15,r19
add r12,r24
adc r13,__zero_reg__
adc r14,__zero_reg__
adc r15,__zero_reg__
.loc 1 65 0
mov r24,r22
.LVL14:
ldi r25,0
ldi r26,0
ldi r27,0
mov r27,r26
mov r26,r25
mov r25,r24
clr r24
add r12,r24
adc r13,r25
adc r14,r26
adc r15,r27
015495
垢版 |
2020/06/14(日) 13:33:48.91ID:irae7Z5M
みなさんありがとうございます
>>117でおかしかったので、
dpll = Wire.read();
dpll += (Wire.read() * 256);
dpll += (Wire.read() * 65536);
dpll += (Wire.read() * 16777216);

昨日、↑のようにしたら正確な値を得ることが出来るようになりました。

>>128 >>141
ありがとうございます。納得できました。
dpll_number_1の値がおかしいことまでわかったいたのですが、
なぜおかしくなるのか理由がわかってスッキリしました。
こっちに書き換えます。
015595
垢版 |
2020/06/14(日) 13:34:18.45ID:irae7Z5M
>>130
ビット数が違うのは正常な値が出ているときに8ビットにしても大丈夫だったので小さくしました。

>>131
バイト順は正常でした。

>>134
ES9038Q2Mです
0157774ワット発電中さん
垢版 |
2020/06/14(日) 14:04:08.22ID:8Srsi5FR
>>154
>>127で書いたようにこうすればシフトでもうまくいくと思うよ
dpll = (uint32_t)Wire.read();
dpll += ((uint32_t)Wire.read() << 8);
dpll += ((uint32_t)Wire.read() << 16);
dpll += ((uint32_t)Wire.read() << 24);
0158774ワット発電中さん
垢版 |
2020/06/14(日) 14:16:29.43ID:kaLugr/R
>>146
シフト演算子もそれあるのか・・・
というかそれ以前に定数のintにならないならuint8_tのままだから
(dpll_number_1 << 8)
(dpll_number_2 << 16)
(dpll_number_3 << 24)
とかはまともに動かないよな。

<<するのはuint32_t変数だけにして
for (i=0;i<4;i++) {
dpll_number <<= 8;
dpll_number |= hogehogeread()
}
4つくらから上なら、自分はこのあたりがすき。
これはOK?

>>154
まちがいが起こりにくいように16進にしといたほうがいいよ
0159774ワット発電中さん
垢版 |
2020/06/14(日) 14:19:08.85ID:8Srsi5FR
節約したいならこんなコードでもいいかも
アセンブラコードみたらこっちの方が命令数が少なかった
dpll = Wire.read();
dpll += ((uint16_t)Wire.read() << 8);
dpll += ((uint32_t)Wire.read() << 16);
dpll += ((uint32_t)Wire.read() << 24);
0160774ワット発電中さん
垢版 |
2020/06/14(日) 14:24:05.87ID:8Srsi5FR
ちなみに私の環境とテストコードでは
>>154>>157はアセンブラコード確認してみたけどほぼ同じコードになるね
gcc、頭いい
0161774ワット発電中さん
垢版 |
2020/06/14(日) 14:42:42.85ID:8Srsi5FR
と思ったら
dpll = (uint32_t)Wire.read();
dpll += ((uint32_t)Wire.read() * 256);
dpll += ((uint32_t)Wire.read() * 65536);
dpll += ((uint32_t)Wire.read() * 1677216);
でテストしてた
そりゃ、157と同じになるわ

で、>>154で試したら間違った値出たよ
0162774ワット発電中さん
垢版 |
2020/06/14(日) 14:45:37.63ID:kaLugr/R
>>158
あ、下位から先に得られるんだから、これじゃ逆だorz
忘れてください・・・
0163774ワット発電中さん
垢版 |
2020/06/14(日) 14:53:59.51ID:8Srsi5FR
>>117も違う値になるね


まとめ

dpll = (uint32_t)Wire.read();
dpll += ((uint32_t)Wire.read() * 256);
dpll += ((uint32_t)Wire.read() * 65536);
dpll += ((uint32_t)Wire.read() * 1677216);

もしくは
dpll = (uint32_t)Wire.read();
dpll += ((uint32_t)Wire.read() << 8);
dpll += ((uint32_t)Wire.read() << 16);
dpll += ((uint32_t)Wire.read() << 24);

もしくは
dpll = Wire.read();
dpll += ((uint16_t)Wire.read() << 8);
dpll += ((uint32_t)Wire.read() << 16);
dpll += ((uint32_t)Wire.read() << 24);

でやれば正しい値になるはず
0165774ワット発電中さん
垢版 |
2020/06/14(日) 15:01:23.33ID:irae7Z5M
>>153
共同体も試してみます。ありがとうございます。

>>156
はい

>>163
ありがとうございます。
これで解決できました。

みなさん重ね重ねありがとうございます。
>>154が間違っていたんですか…
0167774ワット発電中さん
垢版 |
2020/06/14(日) 15:23:01.06ID:13MxaMmL
まぁ。。。思った通りの結果なんだけど、質問者は 実数(マジックナンバー) を掛けて終わり。
その数字に L を付けなくても気持ち悪くないんでしょうね。

初心者歓迎なので、結果 OK なんでしょうけど、.s の内容にまで発展したのは、
全体的に良かったのかな?w

途中で gcc の動作について出てたけど、rms の過去の発言でオプティマイズに
関する物が参考になる。また gcc のコードを読むと中間言語に落とす所のツリー
構造解析などは、非常に美しい。

for(int i = 0; i < 100; i++){} がオプティマイズレベルを上げて行くと
アセンブラを空にする、しない、議論まであった。結果は後者だったけど、
オプションで指定できる議論に発展した。

中間コードから先の .s はターゲット依存なので、それぞれのインプリ依存だけど。
0169774ワット発電中さん
垢版 |
2020/06/14(日) 16:47:22.49ID:PQU3aZYq
無知にマウント取りたがるやつって恥ずかしい。
赤ん坊の頃に泣いているのを放置されて育つとこいつみたくなるって育児書に書いてあった。
こういう同級生が社会で孤立して自殺している。
勝手に死ぬならいいけど自分の子供には同じようにしないで欲しい。
0170774ワット発電中さん
垢版 |
2020/06/14(日) 17:59:57.05ID:3rCM2Ugl
速さや美しさのレベルには全然到達しない
とにかく動かすだけでいっぱいいっぱい
0171774ワット発電中さん
垢版 |
2020/06/14(日) 18:48:57.20ID:+O/SLCi0
一つ前の関数と比較したいときに入れておく関数名を何にしています?
aの場合は、a_tempやa_dmpでいいですか?
0176774ワット発電中さん
垢版 |
2020/06/15(月) 23:36:38.56ID:QXOcqp1o
UNOを使ってて割込みハンドラを書いてるんだけど、インラインアセンブラでグローバル変数のアドレスを取得したいときはどうしたらいいですか?

例えばhogeというuint8_tのグローバル変数がすでに定義されているとします(volatile uint8_t hoge = 0xAA;)
このとき割込みハンドラのインラインアセンブラで lds r16,hoge と書くと値の取得が出来ます(レジスタ16に0xAAがロードされる)
しかし当然これはSRAMに保存された変数の値です(ちなみにこの時コンパイルされたコードを見るとちゃんとhogeのアドレスが即値で入っています)

今回はレジスタペアにhogeのアドレス(16bit)をldiで取得したいのですが書き方がわかりません(C言語でいう*hogeがしたい)
コンパイル後にbssセクションを見てhogeに割り当てられたアドレスを調べてldiの即値を書き換えれば当然得られるのですが
これだとグローバル変数の数や宣言の順番などによって毎回hogeのアドレスが変わってしまいそれに対応するために毎回この作業が必要です

前述の lds r16,hoge のようにコンパイル時に該当のグローバル変数に割り当てられたアドレスを ldi で用いる方法はありますか?
0177774ワット発電中さん
垢版 |
2020/06/16(火) 06:12:56.15ID:6vOgoD2d
ない Lならある もういい?
0178774ワット発電中さん
垢版 |
2020/06/16(火) 07:16:43.22ID:WBzOf6m0
>>176
AVRのアセンブラ全然わからんがこんな感じかな?

uint8_t hoge = 100;

void func21(void){

uint8_t ret1;
uint8_t addr_l, addr_h;
asm volatile (
"ldi XL, lo8(%3)\n\t"
"ldi XH, hi8(%3)\n\t"
"ld %0, X\n\t"
"mov %1, r27\n\t"
"mov %2, r26\n\t"
:"=r"(ret1), "=r"(addr_h), "=r"(addr_l)
:"memory"(hoge)
:"r27", "r26"
);

Serial.print("ret1 = ");
Serial.println(ret1);
Serial.print("addr_h = 0x");
Serial.println(addr_h, HEX);
Serial.print("addr_l = 0x");
Serial.println(addr_l, HEX);
Serial.print("&hoge = 0x");
Serial.println((unsigned int)&hoge);
}
0180774ワット発電中さん
垢版 |
2020/06/16(火) 07:20:53.91ID:WBzOf6m0
一番最後の行は
Serial.println((unsigned int)&hoge);
ではなく
Serial.println((unsigned int)&hoge, HEX);
でした
ごめんなさい
0182774ワット発電中さん
垢版 |
2020/06/16(火) 08:26:38.79ID:WBzOf6m0
変なレス付いてるのでわかりやすく解説
>>178

"ldi XL, lo8(%3)\n\t"
"ldi XH, hi8(%3)\n\t

の部分はインラインアセンブラによってこうなる

ldi XL, lo8(hoge)
ldi XH, hi8(hoge)

つまり、
labelをlo8()で括れば下位8bitのアドレスが即値として取得できる
labelをhi8()で括れば上位8bitのアドレスが即値として取得できる
ただそれだけ
0183774ワット発電中さん
垢版 |
2020/06/16(火) 08:39:16.45ID:WBzOf6m0
ARMなんかの32bitのRISC CPUでも同様の演算子が用意されてるね
ARMのThumb-2だと
movw r0, :lower16:label01
movt r0, :upper16:label01
こんな感じでアドレスを読み出せる
ARM64で48bitの仮想アドレス空間全体だと
movz x0, :abs_g2:label01
movk x0, :abs_g1_nc:label01
movk x0, :abs_g0_nc:label01
下位33bitのアドレスだと(ARM64のgccではデフォルトではlabelの範囲は下位33bit(8GB)まで)
adrp x0, :pg_hi21:data_label
add x0, x0, :lo12:data_label
0184774ワット発電中さん
垢版 |
2020/06/16(火) 09:23:17.22ID:n+Efu2ke
>>176です
lo8とhi8は知ってたんですが基本インライン構文だとコンパイルエラーになってしまって使えないものだと思っていました
拡張アセンブリ構文で入力オペランドなどをちゃんと宣言しないと駄目だったんですね

解決しました、皆様ありがとうございました
0185774ワット発電中さん
垢版 |
2020/06/16(火) 09:48:15.41ID:Pgkr833L
>>184
>>181も言ってるように、これはアセンブラにlo(),hi()を与えてるのではなく、プリプロセッサか何かがうまく変換して、アセンブラに与えられるのは単なるldiによる8bit即値代入に置き換えられたもの、って話だと思う。
0187774ワット発電中さん
垢版 |
2020/06/16(火) 14:04:56.40ID:WBzOf6m0
>>185
残念でした
>>178をコンパイルしてアセンブラリストを出力すると
インラインアセンブラ部分はこう出力される
ldi XL, lo8(hoge)
ldi XH, hi8(hoge)
ld r17, X
mov r29, r27
mov r28, r26

知らないなら変な横槍入れない方がいいよ
0188774ワット発電中さん
垢版 |
2020/06/16(火) 15:01:45.76ID:14w852a6
>>187
最終的にそのhi8やlo8のマクロを展開したあとの話だよ
要するにelfをダンプしたとき
そもそもldiの第二オペランドは即値しか入らないわけで
0189774ワット発電中さん
垢版 |
2020/06/16(火) 16:14:39.28ID:3qqBIzJo
リンカの仕事だと思うんだけど。
そりゃ実行可能オブジェクトにはアドレスが設定されてるでしょう。
0190774ワット発電中さん
垢版 |
2020/06/16(火) 16:19:54.10ID:WBzOf6m0
どこまでがアセンブラかという話になるけど
stringsで調べるとavr-as.exe自体にlo8とかhi8なんて文字列が含まれてる
hi8()やlo8はアセンブラ自体の演算子だよ?
AVRにはアドレスのlabelの種類はないかも知れないが
elfにはアドレスのlabelの種類の情報や値の情報なんかも入ってるはず
じゃないとバイナリを再配置するときにlabelの値を書き換えるときに問題になる
単なる即値とは意味が違うよ
0191774ワット発電中さん
垢版 |
2020/06/16(火) 17:25:46.21ID:WBzOf6m0
>>189
AVRのelfのシンボル情報見たけど、hogeの値は確定されてた
アセンブラが出力してオブジェクトファイルのシンボル情報を見たらまだ確定されてないね
リンカの仕事だね
0192774ワット発電中さん
垢版 |
2020/06/16(火) 19:25:53.57ID:WBzOf6m0
LinuxもelfだけどLinuxの場合だとロード時に実際のアドレスが決まるんだよね
だから実行時のアドレスは実際に実行するまでわからない
0195774ワット発電中さん
垢版 |
2020/06/17(水) 05:43:11.18ID:c/IWDanQ
実アドレスがどこになるのかなんて、プログラムの中の人には関係ないことです
0196774ワット発電中さん
垢版 |
2020/06/17(水) 05:58:09.13ID:q4kXx66X
64bitLinuxのgccで-mcmodel=largeを指定するとグローバル変数にアクセスするときに
リテラルプールから64bitの絶対アドレス読み込むようになるけど
実行時のアドレスはelfのシンボルテーブルの値と違うね
gccでデフォルトのオプションでfPIC、fPIEが指定されてる場合もあるのでその場合は
-fno-pic -mcmodel=largeとか-no-pie -mcmodel=largeとやらないといけない
0199774ワット発電中さん
垢版 |
2020/06/17(水) 09:53:00.58ID:0do6ad+8
で結局アホ毛のアドレスはプログラム内で求められるん?
0200774ワット発電中さん
垢版 |
2020/06/17(水) 10:10:14.18ID:Yg5ARl5E
おめーの毛のアドレスなんて分からなくても値はわかるから即値で0入れとけや
0201774ワット発電中さん
垢版 |
2020/06/17(水) 14:23:43.63ID:pRjaPZfn
ARDUINO 1.8.13 2020.06.16

[ide]
*複数のモニター設定でMacOSX> = 10.15でクラッシュする問題を修正しました。
*「ツール」メニューのボードリストにあるボードは、プラットフォームごとにグループ化されています。これは選択を行う必要があります
IDEに多数のボードがロードされていると、より簡単です。(ありがとう@matthijskooijman)
*「手動プロキシ」セクションのプロキシユーザー名/パスワード設定の保存を修正しました。
*「ツール/プログラマ」メニューでは、現在選択されているボードに関連するプログラマのみが表示されます。(ありがとう@matthijskooijman)
*修正:外部モニターを削除した後にIDEを再起動すると、スケッチウィンドウが表示されなくなる。
*シリアルモニター/プロッターが無効になっているときに、ボーレート/構成の変更を許可します。(ありがとう@matthijskooijman)
* jmdnsを3.5.5に更新しました。ネットワークボードの検出を改善する必要があります。
*起動時のライブラリスキャンの最適化。(@ricardojlrufinoに感謝)
*タブ内のファイル名の垂直方向の中央揃えが改善されました。(@ricardojlrufinoに感謝)
*アップロード中の進行状況バーのコンソールレンダリングが改善されました。(ありがとう@matthijskooijman)

[arduinoビルダー]
*修正後退:一緒にコンパイルする必要のある「ラッパー」コードを含むプリコンパイル済みライブラリを修正
プリコンパイルされた部分。
* Atmega2560 MCUでのコンパイル用の自動「--relax」を削除
*ブートローダーが.bin形式の場合のskethbook + bootloader hex mergerを修正しました。
*異なるパーティションをトラバースするときの相対パスエラーを修正しました(特に大きなスケッチのmacosxで)
*ライブラリ検出フェーズ中に#define変数を追加
*コンパイルからの改善された進捗レポート

[コア]
* AVRコアを1.8.3に更新:
-Wireクラスがタイムアウトをサポートするようになりました
-avr-gccを7.3.0-atmel3.6.1-arduino7にアップグレードしました
0204774ワット発電中さん
垢版 |
2020/06/17(水) 16:24:18.78ID:Yg5ARl5E
> *「ツール」メニューのボードリストにあるボードは、プラットフォームごとにグループ化されています。
> *「ツール/プログラマ」メニューでは、現在選択されているボードに関連するプログラマのみが表示されます。
> *シリアルモニター/プロッターが無効になっているときに、ボーレート/構成の変更を許可します。
> *起動時のライブラリスキャンの最適化。

このへん嬉しい
0206774ワット発電中さん
垢版 |
2020/06/17(水) 23:30:24.06ID:g1z1pArk
IDE1.8.13を早速使ってみたら、なんかおかしい。
1.8.13でコンパイルしてみたら、BME280で計測した室内の温湿度気圧が、湿度だけいきなり100%になった。
同じスケッチで1.8.12でのコンパイルだと40%くらいだったのに。
ちなみにBME280のライブラリはAdafruitの2.0.2。(使ってるBME280はスイッチサイエンス製だけどw)
IDEを1.8.12に戻してコンパイルし直したら、もとの40%台に戻った。
0207774ワット発電中さん
垢版 |
2020/06/18(木) 13:08:20.52ID:7M7zqFR5
今作ってるプロジェクトでBMP280使ってるから
その情報こわい・・・
0208774ワット発電中さん
垢版 |
2020/06/18(木) 16:19:24.62ID:QrMx/UiE
IDE1.8.13に更新したらDS1307+を使った時計の動作がおかしい
バッテリーバックアップしてるのにマイコン起動するたびに必ず2006/02/06 6:28:00で時間が上書きされてしまう
一字一句全く同じスケッチをIDE1.8.12で書き込むと正常に動作する(上記のせいで変わってしまった時刻は直したとして)

なんかI2Cが変だな?
0209774ワット発電中さん
垢版 |
2020/06/19(金) 10:12:05.07ID:5LW+tsbG
Arduino Pro Miniを基板に実装しよとしているのですが、ICピンヘッダーを使っても大丈夫でしょうか?
足が多くて取り外しの時に折れそうで怖いです。
0211774ワット発電中さん
垢版 |
2020/06/19(金) 10:17:18.65ID:NE0MOKec
ヘッダーって言うとだいたいオスのほうの事だけど(メスはピンソケット)
丸ピンていうとメスの方(丸ピンICソケット)を思い浮かべるが

ともあれオスメスが正しい組み合わせのソケット使ってればなんでもいいでしょ
丸ピンソケット使いたいならそれ用のヘッダをはんだ付けすればいい
0212774ワット発電中さん
垢版 |
2020/06/19(金) 10:32:52.25ID:5LW+tsbG
>>211
ありがとうございます。
抜き差しできるようにしたいのですが足が多いので折れないか心配です。
0215774ワット発電中さん
垢版 |
2020/06/19(金) 11:35:38.36ID:U4bIgPcP
ブレッドボードでも真っ直ぐ上に引き抜かないとピンが曲がるよね
0216774ワット発電中さん
垢版 |
2020/06/19(金) 16:16:59.06ID:LXA81rUn
入門しようといろいろ調べて、いざボードを購入しようと思ってるんですけど
どれを選べば良いですかね?
互換機は大量だし、書籍のお勧めが廃版だったりで悩んでます。
0217774ワット発電中さん
垢版 |
2020/06/19(金) 16:25:37.14ID:NE0MOKec
>>216
とりあえずATmega328P載ってる奴でいいんじゃないの?それが書籍でもwebでも一番日本語の情報が多いでしょ
つまりまぁUnoかNanoだな

形は好きな方でいいが(シールドが多いUnoかブレッドボードで使いやすいNanoか)最初は余計なトラブル(ハンダ不良とか)が無いように純正品を買っとけば?

https://www.switch-science.com/catalog/789/
ちなみにスイッチサイエンスでUnoを買うと永久保証がついてるよ
http://trac.switch-science.com/wiki/warranty
何か分かんねえけど動かなくなった!とか、ジュースこぼしてダメにした!とか、変な風にショートさせて壊したっぽい!とかでも新品に交換してくれるぞ
0220774ワット発電中さん
垢版 |
2020/06/19(金) 17:07:59.24ID:xqFvxaUk
最近、Aliexpres経由で注文したものが、中国内でのトラッキングを最後に行方不明になることが多い。
0223774ワット発電中さん
垢版 |
2020/06/20(土) 07:49:51.04ID:ZIwBI1oQ
>>221

220です。

アリのスタンダードとかシンガポールポスト便で連敗中。
空港までいって送り主へ返送とか、航空会社引き渡し後行方不明とか。
どちらも返金してもらった。
0224774ワット発電中さん
垢版 |
2020/06/20(土) 14:09:28.95ID:ILQB0Sav
>>222
別に誰に勧められたわけでもないが最初からAliExpressやeBay以外で買ったことが無い。
つまり純正品は一つも持ってないが不良品だったことも無い。
0225774ワット発電中さん
垢版 |
2020/06/20(土) 14:25:50.96ID:xolsFD+/
いまは時期が悪いね
アマゾンで国内発送ならすぐ着くから、Aliの3倍くらい出せば?
0226774ワット発電中さん
垢版 |
2020/06/20(土) 15:58:45.56ID:5eL2Ss9N
>>224
LEDがもげてるとか、promini3.3V版注文したのに5V版が来るとか日常茶飯事だぞ
更に裸TinyをArduinoで使おうとか生チップ買うと
平均して1割くらいは偽者とか高電圧リセットしても動かないものがある
0228774ワット発電中さん
垢版 |
2020/06/20(土) 16:49:20.45ID:jmLmJ40s
セラーの選び方が悪いんだろ
ピンからキリまであっての海外通販なんだから
そのクソのようなセラーを示しもせずにただ語られても困る
0229774ワット発電中さん
垢版 |
2020/06/20(土) 17:34:29.25ID:G5Oy5ryJ
これから始めよう!って初心者にAliexpressでセラーの目利きして買うとか届いたチップの真贋なんてわかるわけないんじゃ…?
0230774ワット発電中さん
垢版 |
2020/06/20(土) 18:46:28.07ID:jmLmJ40s
>>229
Arduino初心者が中華通販も初心者とは限らん
チップの真偽など素人でなくても届いてからじゃなきゃわからん
まだ食い下がる気ならもっと説得力のあるレスをしな
0234774ワット発電中さん
垢版 |
2020/06/20(土) 20:08:30.35ID:cX5F6jsR
監視して遺憾砲撃つだけの簡単なお仕事です
島取られても人拉致されても何もしないからなこの国の公務員は
0235216
垢版 |
2020/06/20(土) 23:14:51.55ID:wPYF9l73
使い勝手の良さそうなUnoで試作してみて、動かすの安価なボードって方向で行きたいと思います。
レスありがとうございました。
0236774ワット発電中さん
垢版 |
2020/06/21(日) 06:19:55.55ID:9pf8xlRs
まずはUNOで、何か作るならナノだな
この二つは素直に動く

他はクセが強い
0238774ワット発電中さん
垢版 |
2020/06/21(日) 07:41:16.75ID:1s87hKuj
ワシはpromicroのクローンばかりつこてる
ちょっと高いけどUSBシリアル内蔵で迷わずに済む
0239774ワット発電中さん
垢版 |
2020/06/21(日) 09:45:58.48ID:3CVn3jBa
unoから入るとそう思うのかもしれねーけんど
特にクセなんか感じねぇ、そんなもんでしょ
0240774ワット発電中さん
垢版 |
2020/06/21(日) 10:27:27.84ID:IC/J2ytr
OUTばかりで自己主張が激しいとか
アナログ多めで繊細とかw>クセ
0245774ワット発電中さん
垢版 |
2020/06/22(月) 08:29:13.63ID:SwBlZkRB
4.0の頃からそうだけど
クロック設定によっては1GHzで動作し64bit浮動小数点演算をハードウェアでサポート、もはやオーバースペック
…から繰り出されるLチカ
0248774ワット発電中さん
垢版 |
2020/06/22(月) 12:50:43.54ID:NaHOgblR
Teensyって凄いスペック・・・
趣味で使うとしたら、これどういった用途に使うの?
0250774ワット発電中さん
垢版 |
2020/06/22(月) 14:57:06.24ID:dvGfeTCw
>>248
すげえな。
GHzが近いクロックで100mAしか食わずにヒートシンク要らんのか。
比べるものじゃないんだろうけど、PentiumやK6の時代に持っていったらひっくり返るな
0254774ワット発電中さん
垢版 |
2020/06/22(月) 21:58:54.14ID:NaHOgblR
夜ちょっと夜食買いにコンビニ行くのにフェラーリ乗っていく感じ!
0255774ワット発電中さん
垢版 |
2020/06/22(月) 22:06:47.99ID:aS3K3Uh8
486DX2は一応ヒートシンク付いてたけど別にグリスとかも塗ってなかったし、ずらしたらすぐ外れたな
0258774ワット発電中さん
垢版 |
2020/06/23(火) 07:14:20.62ID:nqVjLTks
MaixduinoならWiFi使えて、CPUは400MHzの64bitRISC-Vが2コア
CPUが64bitなだけではなくて、Arduinoでも64bitで開発できる
浮動小数点演算は倍精度に対応
Flash 16M(Arduinoでは8MBをプログラムに使用できる)
RAM 8MB(うち2MBはAIプロセッサで使うのでArduinoでは6MB)
Arduinoも性能の幅ができたね

Sipeed Maixduino
https://www.switch-science.com/catalog/5707/
0259774ワット発電中さん
垢版 |
2020/06/23(火) 19:50:21.07ID:3nm9ohE6
どうしても行き詰ってしまったのでお知恵をお貸しください。

https://pastebin.com/n1nH1uks

内容としては
・Switch Caseで条件分岐している
・その中の一つのCase(今回はCase5)に IDEのライブラリ管理からインクルードしたST7032(LCD)用のライブラリを使用したを記載したコードを挿入
・表示桁数をそろえたいのでfprintを使用(unsigned longの変数表示今はテストのため99を表示)
・同じCase内のfprint以降のコードは実行されている(シリアルモニタで”5”が表示され、LCDには”99”が表示されている)
・なぜかそれより後のCase6以降が選択できなくなる


という状況になっています。
ループで回しているのでシリアルモニターで見ると0〜9まで表示されるはずなのですが上記LCDコードが入っているCase6より後ろのものが選択できないので0〜5までの表示になってしまいます。
これは何が起こってしまっているのでしょうか?

条件に応じて表示や動作を変えるように作りたいのですがこれだと複数の表示パターンなどを入れることが来ません。

どうにかCase5以降も正常に選択できるようにする方法をご伝授ください。
0260774ワット発電中さん
垢版 |
2020/06/23(火) 20:15:49.81ID:UcBOUudG
>>259
省略されると5が終わらないのか6の途中で異常が出てるのかわからん。異常の出てる当たりの前後にSerial入れて問題箇所特定して。
0261774ワット発電中さん
垢版 |
2020/06/23(火) 20:17:51.81ID:3nm9ohE6
>>259
もう少し切り分けできると思いLCD関係を外してみたところやはり同じような状態が再現されたのでLCDは関係なかったみたいです。

改めまして、LCD関係を除外したコードを用意させていただきました。

https://pastebin.com/z8855K86

こちらのように途中のCase内でfprintを使用するとそれ以降のCaseが機能しなくなってしまいます。
シリアルモニタで観察すると
0
1
2
3
4
05               <-fprintで成形されたi = 5の変数
0
1
と繰り返し表示されCase6以降が選択されません。
(期待動作として0〜4,05,6〜9を繰り返す)

fprintを使用したcase5より後ろのCaseも動作するようにするにはどうしたらよいのでしょうか?


ちなみにですがこのコードは問題再現のために作ったコードなのでforで変なループ回すなとかそういったツッコミはご遠慮ください。
単純にCase6以降が機能しなくなる原因とその解決方法をお伺いするために作ったものです。
0262774ワット発電中さん
垢版 |
2020/06/23(火) 20:18:12.48ID:B5pu82Jl
とりあえず char Val[2] = ""; をswitchの外に出してみ
forの1行上(loop直後)とか

switchのcase内で変数の初期化するなって赤字でwarning出てない?
0263774ワット発電中さん
垢版 |
2020/06/23(火) 20:24:20.26ID:Tfs6OtvI
>>261
コンパイルした時点でwarning出るだろそれ…

warning: jump to case label [-fpermissive]

note: crosses initialization of 'char Val [2]'


コンパイラがおかしいっつってるのにまずそこを解消しろよ
0264774ワット発電中さん
垢版 |
2020/06/23(火) 20:28:48.64ID:yRqnHefN
>>261
25、26行目削除
27行目 Serial.println(i); に変更
7行目8行目の間に Serial.println(i); 挿入

でやって
0266774ワット発電中さん
垢版 |
2020/06/23(火) 20:32:33.14ID:Tfs6OtvI
なんかごちゃごちゃ書かれてるけどcaseで変数をローカル初期化したらダメ
そこ直せば問題なくループが回るはずだが
0267774ワット発電中さん
垢版 |
2020/06/23(火) 20:33:09.05ID:B5pu82Jl
>>263
なぜ毎行に行間をつけるんだw
初心者は「コンパイル出来た=プログラムに問題は無い」と思ってる節があって(偏見)
コンパイル成功したときはコンパイラが出すメッセージを一切読まない…気がする
例えコンパイルが成功したとしてもwarningが出たらチェックしないといけないのだけどね
そしてできれば初心者のうちは表示される警告は全部潰していくべき
当然無視してもいいものもあるんだけどそれはもっと自分で動きが把握できるようになってからだと思う
0269774ワット発電中さん
垢版 |
2020/06/23(火) 20:41:16.74ID:Tfs6OtvI
まぁ狙った動作になってるからwarningが出るやり方でも問題なしとしていてcase fall throughとかunused variableとか出しまくるライブラリがあったりするからな
ライブラリの中で出てる警告なのか自分で書いたプログラムで出てる警告なのかわからんくなるんじゃねーの
それでも「こういう警告が出てる」って事実は質問に書くべきだと思うが
0270774ワット発電中さん
垢版 |
2020/06/23(火) 20:43:05.12ID:Tfs6OtvI
ちなみに jump to case label はArduinoIDEの警告レベルが初期値でも出るゾ 全てに設定すべきってのは完全に同意だが
0271774ワット発電中さん
垢版 |
2020/06/23(火) 20:56:03.38ID:3nm9ohE6
>>268
教えられた通り環境設定から警告レベルの変更を行いようやく>>262>>263でいわれたワーニングの意味が分かりました。
デフォルト設定ではコンパイル警告のチェックがOFFになっていたので今まで表示すらされてなかったので気づきもしませんでした…

なるほど、コンパイルは通るけどアラートが出まくるというのがあるんですね。



教えられた通り
>とりあえず char Val[2] = ""; をswitchの外に出してみ
を実行してみたところ確かに動くようになりました。

また、
>https://www.chihayafuru.jp/tech/index.php/archives/2990
の情報でも対策することができました。

ありがとうございます。
設定でアラートも表示するようになりましたのでこれからはもう少し原因究明に繋げられるように注視いたします
0275774ワット発電中さん
垢版 |
2020/06/23(火) 21:15:03.44ID:B5pu82Jl
>>271
ArduinoIDEってデフォルトでwarning完全無視なの?ひでえw
まぁ解決してよかったな
これで次からは赤文字出てたらしっかり読んで自分で解決できるぞ!
0277774ワット発電中さん
垢版 |
2020/06/23(火) 21:43:38.62ID:Tfs6OtvI
>>276
設定すると出るが
試に設定ファイル消してデフォルトに戻してみたら今は最初は「なし」になってたわ
インスコ仕立てで設定も何もしてないと一切出ない
0278774ワット発電中さん
垢版 |
2020/06/24(水) 00:13:40.94ID:3kVavPtt
>>261
char Val[2]="";
じゃないの?
これにsprintfでゼロフィル2桁数字文字列入れたら3文字目の末尾ゼロが溢れて変なところに書かれるのでは?
char Val [4]="";
くらいでどう?

こういうのは大きめにしたほうがいいと思う。sprintfも想定外数値入ったら二文字以上出力しちゃうだろうし。
0279774ワット発電中さん
垢版 |
2020/06/24(水) 03:20:32.19ID:3kVavPtt
>>273
ループカウンター入れて一定数超えたら餓死とリセット転生呼び出してください
0280774ワット発電中さん
垢版 |
2020/06/24(水) 06:12:15.39ID:DQPPXy0R
>>261
素直に考えれば、スタックにまず i が取られて、その上にVal[2] が載るだろうから
Valをオーバーフローさせたら i が書き換わるという現象は不思議じゃないね

ArduinoはC言語だから、Cのメモリ管理や文字列について学ぶべし。
マシン語の知識もある程度は必要なので、ちょっとやったほうがいい。

sprintf と fprint を書き間違いしてるところからして、コードを書くときは
スペルやらをもっと注意深く扱うべし
0281774ワット発電中さん
垢版 |
2020/06/24(水) 08:08:00.10ID:z2yFpll5
>>280
もう解決したことにたいして的外れなしかも間違ってることを堂々と書けるバカって幸せそうだな
0283774ワット発電中さん
垢版 |
2020/06/24(水) 09:56:34.11ID:rPSr9p/c
>>282
いつも出てくる煽りだから気にしない。
c++ではcaseブロック内の変数宣言は可能。初期化が実装依存なので注意/避けるべきだけど。
直接の原因は文字列のオーバーフロー説に同意
0284774ワット発電中さん
垢版 |
2020/06/24(水) 11:04:35.02ID:idx4ocmc
どうして間違った知識の奴ほど自身満々に書き込むんだろう

avrgccではcase内でローカル変数の新たに宣言して使ってはいけない
オーバーフローは全く関係ないし、ただcase内で変数を初期化するだけで正常に動作しなくなる
簡単に確かめられるのになぜ間違ったことを書き込むの?

もう一度書くが、オーバーフローは関係ない、avrgccにおいてcase内でローカル変数を宣言してはいけない

↓実行してみろ
https://pastebin.com/YK0TEBc2
0285774ワット発電中さん
垢版 |
2020/06/24(水) 11:14:14.83ID:Vxo/5Ezr
流し読みしてたからどっちが正しいか判らんけど

>どうして間違った知識の奴ほど自身満々に書き込むんだろう

これって自分にも当てはまってるって気づいてるのかな
0286774ワット発電中さん
垢版 |
2020/06/24(水) 11:25:24.76ID:YGubf9lW
まぁ今回に限って言えばはオーバーフローは確かに関係ないが…
そもそもまず何でいつもすぐ下らないマウント合戦になるのさ
しかも質問者は解決しててもう居ない終わった話でさ
他のスレでも基本そんな感じだけど…初心者熱烈大歓迎の看板は外した方が良いんじゃない?
0288774ワット発電中さん
垢版 |
2020/06/24(水) 12:46:47.09ID:U47H57SE
>>285
両方あってると思う。
問題が2つあるってこと。
宣言場所を移動して動いているのもたまたまかと。
0289774ワット発電中さん
垢版 |
2020/06/24(水) 13:30:09.46ID:WFSUppZy
a = 10u * 1000u;

10uとか、1000uの「u」ってなんすか?
0293別のマウント野郎
垢版 |
2020/06/24(水) 14:26:33.93ID:PQIjKxUd
今回の例はループカウンタはレジスタ上に取られてchar配列はRAM上に取られる予感
0294774ワット発電中さん
垢版 |
2020/06/24(水) 14:42:34.47ID:Y6sk5iyG
誰も口ばっかでオーバーフローのこと検証しないのな
さすがマウントスレ
0295774ワット発電中さん
垢版 |
2020/06/24(水) 15:05:18.60ID:YF0uttow
>>265>>278が書いてることは最低限修正がいるよね。
2文字の文字列のためには3文字分のエリアが必要なのに、2文字分しか確保してないし、
sprintfで2文字書いたら、どこかを壊して0を書き込んでる恐れがあるわけだし。
0296774ワット発電中さん
垢版 |
2020/06/24(水) 15:38:57.51ID:QQu+61sY
だが今回の05で止まる件とは無関係
[4]にしてやっても止まり、外で宣言すれば[2]でも止まらない

何で無意味に食い下がるんだかw>>278,280,295
0298774ワット発電中さん
垢版 |
2020/06/24(水) 17:23:21.48ID:YF0uttow
>外で宣言すれば[2]でも止まらない

すみません。
スコープの問題はすでに解決ずみだと思っていました。
↓これでもダメだろか。

case 5:
{ //スコープをくくる
char Val[4] = ""; //2で動くのは運がいい
sprintf(Val, "%02d",i);
Serial.println(Val);
} //スコープをくくる。ここまで
break;
0299774ワット発電中さん
垢版 |
2020/06/24(水) 17:53:09.38ID:adoH+goR
IDEをダウンロードするとこから寄付金送ったことある人いる?
0303774ワット発電中さん
垢版 |
2020/06/24(水) 21:12:21.89ID:55CIDkq9
当方Arduino初心者です。
サブPCでArduinoIDE環境が整わなく困っています。

有志から提供されたライブラリを使おうとするがコンパイルエラー。
提供されたライブラリがHID.hを参照しているがそれが見つからないとのこと。
メインPC https://imgur.com/uKwEapW
サブPC https://imgur.com/s7whb1f
確かにHID.hがなさそうですが、メインPCでインストールした記憶がなく、標準ライブラリだと思っております。
メインPC側のHID.hをディレクトリごとコピーしようとも考えたましたが、ライブラリディレクトリ内にHID.hが見つからず。

原因と解決方法をご教授頂きたく。
0304774ワット発電中さん
垢版 |
2020/06/24(水) 21:27:18.22ID:vk06cEyW
HIDって32u4が載ったデバイス用のライブラリでしょ?
ボードマネージャでサブの方にだけインストールされてないボードとかがあるんじゃない
0305774ワット発電中さん
垢版 |
2020/06/24(水) 22:10:10.14ID:QQu+61sY
>>303
arduino.ccからもらって来たarduino-1.8.12-windows.zipの中を見をてみたけど、
arduino-1.8.12\hardware\arduino\avr\libraries\HID\src
に入ってる。
0306774ワット発電中さん
垢版 |
2020/06/24(水) 22:31:36.94ID:55CIDkq9
>>304
>>305
返答ありがとうございます。
HID.hをコピーして 早速つぎの壁にぶち当たりました。
ディレクトリごと丸々コピーしたのが原因でしょうか。

〜以下エラーメッセージ〜

Arduino:1.8.10 (Windows 10), ボード:"Arduino Leonardo"

C:\Program Files (x86)\Arduino\libraries\src\del_opnt.cpp:25:56: error: 'nothrow_t' in namespace 'std' does not name a type

_UCXXEXPORT void operator delete(void* ptr, const std::nothrow_t& ) throw() {

^~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\src\del_ops.cpp:25:50: error: 'std::size_t' has not been declared

_UCXXEXPORT void operator delete(void* ptr, std::size_t) throw(){

^~~~~~

「yuushi.h」に対して複数のライブラリが見つかりました
使用済:C:\Program
「HID.h」に対して複数のライブラリが見つかりました
使用済:C:\Users\usename\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.3\libraries\HID
exit status 1
ボードArduino Leonardoに対するコンパイル時にエラーが発生しました。

「ファイル」メニューの「環境設定」から
「より詳細な情報を表示する:コンパイル」を有効にすると
より詳しい情報が表示されます。
0307774ワット発電中さん
垢版 |
2020/06/24(水) 22:32:49.35ID:55CIDkq9
連投と下げ忘れスミマセン

当方Cの知識もかじる程度で、引数の考え方すら曖昧なほどです。
エラーメッセージの解読すらままならない状況です。
0308774ワット発電中さん
垢版 |
2020/06/24(水) 22:36:26.01ID:wetK6tmH
あるべきライブラリが見つからなくて失敗してたんだから手動コピーで状況をややこしくするよりIDEをアンインストールしてインストールし直した方が良いと思う
0310774ワット発電中さん
垢版 |
2020/06/24(水) 23:09:15.79ID:uDR729Y2
ボードメニューからArduino Leonardoとか選べば、HID.hがメニューに現れるね
ボードメニューからESP8266を選べば、ESP8266用のライブラリが現れる
ArduinoIDEはそういう仕様になってるね
0311774ワット発電中さん
垢版 |
2020/06/24(水) 23:23:36.33ID:QQu+61sY
>>306
とりあえず、どのサイトを参考にしてるかを明確にすることです。
にしても、参考にしているサイトに書いてる通りの場所に書いてる通りのフォルダをコピーするのが鉄則ですよ。
>>305に書いたやつは>>305に書いた場所に無けりゃダメだし、重複してもダメです。
0312774ワット発電中さん
垢版 |
2020/06/24(水) 23:33:58.86ID:55CIDkq9
>>308
再インストールしてことなき得ました。
ありがとうございます。

>>309
なかったのでコピーしました

>>310
303のサブPC画像の右下でLeonardoを
選択していることがわかると思いますが、
HID.hが見つからない状況でした。

>>311
目的がグレーゾーンなのでなるべく表記しませんでしたが、
こちらのサイトを参考にしています。
https://qiita.com/sobassy/items/cb707e50f2f27a851886
0314774ワット発電中さん
垢版 |
2020/06/24(水) 23:36:46.54ID:55CIDkq9
みなさまありがとうございました。
動作まではうまくいっていませんが、コンパイルまではうまくいきました。
しばらく試行錯誤してみようと思います。

連投スマソ。
0315774ワット発電中さん
垢版 |
2020/06/24(水) 23:50:16.23ID:6aMbygFJ
>>303
前スレの852です。
私も似た様なコンパイルエラーが起こり、どうにもならなくなりました。
お使いのIDEはインストーラー版でしょうか?
そうでしたら、とりあえずzip版を使って見て下さい。私はそれでとりあえず一時凌ぎができました。

根本解決したかったのですが、インストーラー版の再インストールでは症状が治らなかったので、HDDの交換容量アップも兼ねて、OSのインストールし直し→IDEのインストールし直しになりましたけど。(メンドクサカッタ…。)
0316774ワット発電中さん
垢版 |
2020/06/25(木) 00:11:26.08ID:9i1Cxcli
重ね重ね申し訳ない。 >>303 です。
コンパイルと書き込みまでうまくいきましたが動作しない状況です。

https://qiita.com/sobassy/items/cb707e50f2f27a851886
上記参考サイトの下部
>SwitchはデバイスのIDが登録外だった場合、信号を受け付けなくなるので、ArduitnoのデバイスのIDをSwitchが認識できるものに変えてあげる必要があります。
とありますが、borads.txtを書き換えてボードに書き込みましたが動作せず。
LEDランプが光らないことから認識されていないと判断して、IDEでボード情報を取得。
BN: Arduino Leonardo
VID: 2341
PID: 8036
と表示され、VIDとPIDがboards.txtを書き換える前の数値と変わっていません。

度々申し訳ないのですが、原因と解決方法ご教授頂けませんか。
0318774ワット発電中さん
垢版 |
2020/06/25(木) 00:17:12.58ID:9i1Cxcli
>>317
サイトを参考している為、予備知識等ゼロに等しい状態です。

>>303時点でにわか知識を色々こねくり回して皆様にご迷惑おかけした末
状況把握のみを...と思ったのですが。
0319774ワット発電中さん
垢版 |
2020/06/25(木) 00:18:15.93ID:LMqpIkqU
変わってないってことはVIDとPIDを盗用するために書き換える箇所が間違ってるんでしょ
0320774ワット発電中さん
垢版 |
2020/06/25(木) 00:20:49.48ID:Q2psGCq3
一旦IDEを終了してファイルを書き換えてIDE再起動とか、そういうレベルの話?
0321774ワット発電中さん
垢版 |
2020/06/25(木) 00:26:08.09ID:9i1Cxcli
>>319
パスの確認と、
うまくいっているメインPCとの比較確認を行いましたが、間違いなさそうです。

>>320
盲点でした!と思って試してみましたが改善に至らず。
0322774ワット発電中さん
垢版 |
2020/06/25(木) 00:31:37.67ID:XuO2+NbX
すんません IDEって細かいコンパイルログとか出ないんですよね
usbconfigいじっても、それ関係がコンパイルにかからないような気がしてるんですが
0326774ワット発電中さん
垢版 |
2020/06/25(木) 00:42:59.68ID:9i1Cxcli
https://imgur.com/WIcjQ72

参考になるか分かりませんが、
書き換えたBords.txt と 書き込んだあとのボード情報の
スクショをあげてみます。

VID: 2341
PID: 8036
は選択した2行分の書き換える前の数値です。
0331774ワット発電中さん
垢版 |
2020/06/25(木) 00:51:48.46ID:9i1Cxcli
>>328
読解力がなく申し訳ない...。
書き換える行周辺のビフォーアフターが以下になります。

ビフォー
leonardo.vid.0=0x2341
leonardo.pid.0=0x0036
leonardo.vid.1=0x2341
leonardo.pid.1=0x8036
leonardo.vid.2=0x2A03
leonardo.pid.2=0x0036

アフター
leonardo.vid.0=0x2341
leonardo.pid.0=0x0036
leonardo.vid.1=0x0f0d
leonardo.pid.1=0x0092
leonardo.vid.2=0x2A03
leonardo.pid.2=0x0036

真ん中の2行を書き換えています。
とんちんかんな返答していたら申し訳ない...。
0335774ワット発電中さん
垢版 |
2020/06/25(木) 01:02:42.78ID:9i1Cxcli
>>332
いえいえ、ご丁寧にありがとうございます。

>>333
メモ帳ダメなんですね
一度メモ帳で保存したらアウトっぽいので...
再インストですかね...

>>334
やってみましたけど変わらずですね
(エディタはメモ帳でしたが。)
ボード情報を読み込むと、
書き換え前の数値になっていた為、
~~~.1を書き換えるのは間違えなさそうです。
>>326 スクショと >>331 コピペ参照
0336774ワット発電中さん
垢版 |
2020/06/25(木) 01:09:49.57ID:9i1Cxcli
>>333
再インストしてVScodeで編集してみましたが
やはりダメみたいです。
情報ありがとうございました。
0337774ワット発電中さん
垢版 |
2020/06/25(木) 01:18:27.39ID:7iiqvs3S
ArduinoIDEインストールするのは初めて?
別バージョンを入れたことがあるならインストールされるフォルダが変わってる可能性がある
つまり別バージョンのboards.txtを編集してるかもしれん
0338774ワット発電中さん
垢版 |
2020/06/25(木) 01:20:28.11ID:9i1Cxcli
>>337
私もそれを危惧して、
ショートカットからファイルの場所へと飛んで編集したので
おそらく間違いないと思います。
0339774ワット発電中さん
垢版 |
2020/06/25(木) 01:21:26.65ID:CL4wdfWO
>>335
参照サイトの下の方、zenito9970氏のコメントも見た方がいいかも
違うこと書いてある
0343774ワット発電中さん
垢版 |
2020/06/25(木) 01:45:03.28ID:7iiqvs3S
参考サイトには本分とは別のboards.txtのパスが書かれてるけど
そっちは存在したの
0345774ワット発電中さん
垢版 |
2020/06/25(木) 01:48:10.06ID:9i1Cxcli
みなさまご協力ありがとうございました。

Arduino Leonardo のボードマネージャをバージョンダウンしたら
書き換わりました。
最新のver1.8.3 からメイン環境と同じ 1.6.2 にして解決しました。

大変長い時間お付き合い頂きありがとうございました。
0346774ワット発電中さん
垢版 |
2020/06/25(木) 01:49:19.58ID:9i1Cxcli
>>343
お伝え忘れてました。
ありましたね。

バージョンダウンしたあとは
どちらも書き換えたので、結局どちらが影響してるのか分からず仕舞いです...。
0347774ワット発電中さん
垢版 |
2020/06/25(木) 05:58:51.17ID:h8Owpytb
Arduino Microか互換で、汎用ICでデジタル入力の足増やすのを計画してます。
74HC165
74HC153
74HC157
等の使い方調べてるんですが、他にも似た用途のものってありますか?
一応ダイオードマトリクスも検討してます。
0348774ワット発電中さん
垢版 |
2020/06/25(木) 08:36:29.29ID:BKQUCvDb
>>347
74HC597。ホールドレジスタとシフトレジスタを組み合わせたもの。8ビット入力
0351774ワット発電中さん
垢版 |
2020/06/25(木) 12:48:59.19ID:h8Owpytb
ごめん、ちょっと脱線するけどダイオードマトリクス?の一応確認で、
3本の入力線を、1,2番のポートに、1と2と1+2っていう風にそれぞれつないで、間にダイオードを入れておけば、
入力がどれか一個しか来ない時に検出出来るって事でいいのかな?
あとは、NOT二回入れればダイオードの代わりになる?
0353774ワット発電中さん
垢版 |
2020/06/25(木) 18:16:19.87ID:e/ydeB9B
抵抗値を何段階かでADCする方式も、IOポートの節約の目的には捨てがたいな
0355774ワット発電中さん
垢版 |
2020/06/25(木) 20:32:16.95ID:XuO2+NbX
>>322 です コメントありがとね 試してみるっす

「マウスをちょっと動かして離席状態を避ける」ってやつを焼いてみたが、
会社から借りてるシンクラだと、idVendorがちゃんと
してないとハネるんだよねー で書き換えしたいなーと いう話
0359774ワット発電中さん
垢版 |
2020/06/25(木) 23:30:30.95ID:XuO2+NbX
100均のプラレールもどきは、とりあえず買ってみたが
どう振動を与えたらいいのかよくわからんw
赤外線側に着目するのはスゲエ発想 それは気づかんかった できるのか

とりあえずdigisparcが4回に1回ぐらいしか書き換わらないのなんでだろー なんでだろー
0360774ワット発電中さん
垢版 |
2020/06/25(木) 23:42:40.09ID:7iiqvs3S
じゃあマウスがトンネルの天井になるような形でいいんじゃね
マウスを動かすんじゃなくてマウスパッドを動かすんだ
列車が通過するたびマウスが動いたことになると思うぞ
0361774ワット発電中さん
垢版 |
2020/06/25(木) 23:48:45.84ID:aQpTdzcv
秒針のある時計の上にマウスを乗せておく…とかっていうのがどっかにあったような
0362774ワット発電中さん
垢版 |
2020/06/26(金) 05:15:34.94ID:7tM7IEr+
>>361
それ
って1ヶ月前にもやってたよね?この話し。
厳密に言うと詐欺行為になるよ。
0363774ワット発電中さん
垢版 |
2020/06/26(金) 05:59:07.73ID:dMrzXwkz
Arduinoの*.hexはそのままAVRに書き込んでも動作しますか?
しますよね?
0368774ワット発電中さん
垢版 |
2020/06/26(金) 12:17:02.75ID:spk0+KMx
>厳密に言うと詐欺行為になるよ。
マウスを時計に乗せたら詐欺行為? なんで?

「マウスが動いていることをもって働いていることを監視している職場において、マウスを時計の乗せてマウスを動かしているふりをする」
みたいな条件が付かない限りは詐欺にならないのでは?
0371774ワット発電中さん
垢版 |
2020/06/26(金) 13:56:11.23ID:kFj7Cjr2
で、でたー!
厳密に言うと犯罪奴ー!
0373774ワット発電中さん
垢版 |
2020/06/26(金) 18:23:29.46ID:jBXTathb
PICはhexの中に設定入ってるけどArduino(AVR)は入ってないんじゃね
0376774ワット発電中さん
垢版 |
2020/06/27(土) 00:36:51.89ID:VySODFn4
C#なら2行でマウスプルプル

while(true){
System.Random rand = new System.Random(1000);
System.Windows.Forms.Cursor.Position = new System.Drawing.Point(rand.Next(-10, 10), 0);
}
0379774ワット発電中さん
垢版 |
2020/06/27(土) 09:54:31.65ID:GqiAma5x
>>372
ありがとうございます
やっぱ動作するんですね
Arduinoのボードは大きくて邪魔なのでAVR単体にしたかった
0382774ワット発電中さん
垢版 |
2020/06/27(土) 10:44:35.75ID:286JbQyE
System.Windows.Forms.Cursor.Position は画面全体の座標だっけ?
だとしたら、だけど、Xのマイナスってどうなるんだっけか。
0383774ワット発電中さん
垢版 |
2020/06/27(土) 10:46:57.93ID:286JbQyE
>>355
>会社から借りてるシンクラだと、idVendorがちゃんと
そもそも Thin Client だと、自作プログラムは実行できないかも。
0385774ワット発電中さん
垢版 |
2020/06/27(土) 11:15:15.68ID:286JbQyE
>>384
俺のマウスでもできなかった。なにかのザラザラをレンズを通して結像してそれの移動を見てるんだと思うけど、鏡を使ったら何を見てることになるんだろう。
昔のロータリーエンコーダのマウスならこういう改造は簡単にできたかな。
0388774ワット発電中さん
垢版 |
2020/06/27(土) 18:25:37.90ID:Ib1cQ0+F
Arduino IDEの新バージョンはボード選択メニューが階層になって選びやすくなったけど
ライブラリのメニューは変更なしか
次のアップデートで、ライブラリは別ウィンドウのダイアログで管理できるようになれば良いのにな
こんなにライブラリが増えるとは当初思っても見なかったわ
0391388
垢版 |
2020/06/28(日) 00:43:43.51ID:m28ss3hN
あ、今でも別ウィンドウで管理できるけど
自分でフォルダー作って好きに纏めたりとか出来たら良いんだけどな
0393774ワット発電中さん
垢版 |
2020/06/29(月) 20:54:56.97ID:Q45+zktt
それがなんかうまく行かなくて、ArduinoのIDEじゃないと動かない場合がある
0394774ワット発電中さん
垢版 |
2020/06/29(月) 20:57:17.98ID:ANAJ3kDu
同じgccでビルドしてるんだからどっか構築が間違ってるだけだよ
0396774ワット発電中さん
垢版 |
2020/06/29(月) 21:54:36.68ID:sTpgrg8y
何がどう動かないのかを書かないとなあ
ま、書けないから、直せないんだろうけど
0397774ワット発電中さん
垢版 |
2020/06/30(火) 06:43:40.29ID:X3AZeJaJ
PlatformIO IDEだと純粋なC++になる
Arduinoは純粋なC++じゃなくて特殊なことをやってるC++もどき
だからArduino IDEでコンパイルが通るのにPlatform IOだと通らないこともある
一番目立つ違いはPlatform IOだと
関数はその関数を使う関数よりも先に宣言しないと使えないのに
Arduino IDEでは宣言しなくても使えること
Platfom IO IDEを考慮してないArduino IDE用に書かれてるサンプルは
ほぼ間違いなく修正なしに動作しない

Platform IO IDEを使ってる人はその辺はなれてるから
簡単に修正して動かすことはできるけどね
0398774ワット発電中さん
垢版 |
2020/06/30(火) 06:52:56.00ID:X3AZeJaJ
たとえばPlatform IO IDEだと
こうしないとコンパイルが通らないが
#include <Arduino.h>

void func01(void);
void func02(void);

void setup() {
Serial.begin(115200);
func01();
}

void loop() {
func02();
delay(10);
}

void func01(void) {
Serial.println("func01");
}

void func02(void) {
Serial.println("func02");
}
0399774ワット発電中さん
垢版 |
2020/06/30(火) 06:53:47.21ID:X3AZeJaJ
Arduino IDEだとこれでコンパイルが通る

void setup() {
Serial.begin(115200);
func01();
}

void loop() {
func02();
delay(10);
}

void func01(void) {
Serial.println("func01");
}

void func02(void) {
Serial.println("func02");
}
0400774ワット発電中さん
垢版 |
2020/06/30(火) 07:04:47.80ID:X3AZeJaJ
あと、Platform IO IDEだとVScodeは自体は軽いのだろうけど
Platform IO自体がPythonで書かれてるようでかなり重い
2コアのCPUだと重すぎて裏で何か動かすこともかなり辛い
0401774ワット発電中さん
垢版 |
2020/06/30(火) 07:09:58.84ID:X3AZeJaJ
Platform IOのいい点は#include文が<>でも""でも
srcフォルダの直下を最初に見に行ってくれるので
ライブラリを毎回修正してる場合、
srcフォルダの直下にライブラリのソースファイルを入れておけばいい点
0402774ワット発電中さん
垢版 |
2020/06/30(火) 07:44:59.50ID:X3AZeJaJ
あと、Platform IOはフレームワークのバージョンをプロジェクト毎に指定してビルドできたり
FlashやRAMの多いマイコンならサイズ重視の最適化オプションではなく
速度重視にしたい場合もあるが
Platform IOなら、プロジェクト毎に最適化オプションを変更できたりいろいろ便利ではある
0405774ワット発電中さん
垢版 |
2020/06/30(火) 14:04:39.09ID:dPolC2AY
初心者スレなんで簡単に>>397-402の要点を書くと
初心者はPlatform IOに手を出さなくていいということ

で>>ID:Q45+zkttはどうなった?
0406774ワット発電中さん
垢版 |
2020/06/30(火) 17:35:46.62ID:NICbj4Sd
おおざっぱな質問なんですが
arduinoのadってどれくらい電力を消費しますか?
0407774ワット発電中さん
垢版 |
2020/06/30(火) 17:54:55.16ID:XnR/d/s2
>>406
大雑把過ぎるぞ
どのArduinoかによって載ってるマイコンが違うのに
あとADてなんだADCのことか?
とりあえずUnoとかNanoに載ってるATmega328PのADCの消費電力ならデータシートの522ページに載ってる
0409774ワット発電中さん
垢版 |
2020/06/30(火) 17:58:03.44ID:NICbj4Sd
データシートが258ページしかないんですが甘えないで探します
0412774ワット発電中さん
垢版 |
2020/06/30(火) 18:08:55.63ID:2789xb1F
>>409
勝手に日本語にした奴は公式じゃないから使うのやめとけ
あれたまに間違ってるし
ちゃんとMicrochip公式のデータシートを見ろ
0414774ワット発電中さん
垢版 |
2020/06/30(火) 18:12:22.66ID:NICbj4Sd
>>412
公式のやつも294ページしかありませんでした
他のやつもあるかもしれないのでサイトほってみます
0417774ワット発電中さん
垢版 |
2020/06/30(火) 18:15:21.39ID:NICbj4Sd
判明しました
みなさまありがとうございました
思っていたより結構消費するんですねー
0418774ワット発電中さん
垢版 |
2020/06/30(火) 18:17:27.97ID:zzJGHOCJ
バッテリープロダクトならあらゆる周辺回路は使うとき以外極力オフにしておこう
ADCは違うけど中には明示的に止めないとスリープしても動いてるのもあるし
0419774ワット発電中さん
垢版 |
2020/06/30(火) 18:28:38.99ID:7ZWaxe46
AVRのADCは0.2mA弱喰った記憶がある、そんで16MHzの本体が15mAとかだったような
たまに中華クローンで電源LEDがバカみたいな明るさになっててお前が光るだけでマイコン並みじゃねえかみたいの有って笑う
0421774ワット発電中さん
垢版 |
2020/06/30(火) 18:31:45.74ID:70L6Pwaf
>>419
スイッチのプルアップがおかしくて
スイッチ押すと異様に電力食うESP32中華製品とかあるし
0423774ワット発電中さん
垢版 |
2020/06/30(火) 18:34:04.01ID:st8CDjCG
なんか自分で中華製買うの怖くなってきた
おススメ中華UNO教えて
0425774ワット発電中さん
垢版 |
2020/06/30(火) 18:41:00.48ID:7ZWaxe46
まぁDIPがいいって人とかこのシールドが使いてえって人もいるかもしれないし
esp32とかでもわざわざUnoの形にしてるのあるしね
0427774ワット発電中さん
垢版 |
2020/07/01(水) 02:30:31.96ID:ri8kc3n0
完成したらUSBシリアルは不要なのでprominiでもいいんだけど
不思議とNANO互換のほうが安かったりするんだよな

純正ProMiniはA4-A7がボードの中央にあってピッチもずれてて使いにくいんだけど
中華ProMiniは端っこに修正されてる
https://www.aliexpress.com/item/33026933494.html
これはクリスタル交換も容易、16MHz←→8MHzや20MHzもできる
なんせ安いから躊躇無くコテ入れられるわ
LDOも交換しないと3.3V発生してくれないけどこれは外付けでもいいだろう
0429774ワット発電中さん
垢版 |
2020/07/01(水) 04:06:13.32ID:Tp3Vaevp
>>397
単なるプロトタイプ宣言。gcc ならオプションで制御できる。
-Wimplicit-function-declaration
ArduinoIDE と PlatformIO で同じオプションを付けないと全く動作が変わるし、
生成されるコードも大きく変わる。
0430774ワット発電中さん
垢版 |
2020/07/01(水) 06:08:41.98ID:weKOVamu
>>429
他人の作ったプログラムをコピペするなら必要かもしれないが
自分で作る場合はわざわざArduino IDEに合わせる必要ないと思うけど
ライブラリでトラブルにあったことは今のところないし
それに関数で使う前にプロトタイプ宣言が必要ないのは.inoのファイルだけだぞ
.cppや.cだと必要
0431774ワット発電中さん
垢版 |
2020/07/01(水) 11:07:20.72ID:Tp3Vaevp
>>430
> それに関数で使う前にプロトタイプ宣言が必要ないのは.inoのファイルだけだぞ
> .cppや.cだと必要

-Wimplicit-function-declaration って書いたのが見えてない?
プロトタイプ宣言無しでもコンパイル通る
もちろん .c でもな

ただそれを標準装備の ArduinoIDE のように常用するのは、どうかとは思うよ
ArduinoIDE使ってる人と、emacs+PlatformIO 使いが同じコードを書くとは思ってない
0432774ワット発電中さん
垢版 |
2020/07/01(水) 13:49:01.33ID:weKOVamu
>>431
だからArduino IDEがプロトタイプ宣言がいらないのが.inoだけで
.cや.cppはプロトタイプ宣言がいるんだよ
だからライブラリとかはプロトタイプ宣言がいる使用なの、Arduino IDEはね
0433774ワット発電中さん
垢版 |
2020/07/02(木) 05:07:34.15ID:Wa1cLL4t
32bitのArduinoはたくさんあるが
よく考えてみると16bit CPUのArduinoはあまりないね
全くないわけじゃないけど、どれも普及してない
ARMが8bit、16bitマイコンの置き換えを狙ったCPUコアのCortex-M0+を使った
SAMD21みたいなマイコンがあるから必要ないのかな?
0434774ワット発電中さん
垢版 |
2020/07/02(木) 06:38:37.47ID:wI0+UcHK
>>428
早く言ってくれよ
どれも2番が出力じゃないのかよ
マジックスモークだよ
0438774ワット発電中さん
垢版 |
2020/07/03(金) 04:52:23.30ID:tI5PBwNB
MicrochipとしてはArduinoはAVRやARMのSAMで押さえてるから
あえてPICでArduinoやろうとはしないだろうね
PIC32のArduinoはあるようだけど
0439774ワット発電中さん
垢版 |
2020/07/03(金) 08:59:05.90ID:gNUxlcuO
>>433
精神的な要因が多いのでは?
16bit位が丁度いいと思ってるけど、8bitで作れるようなものを16bitで作ると貶される(気がする)
コストを求める業務用ならともかく、趣味の世界では8ビットを16ビットに置き換えたほうが幸せになれる気がする
(主張はともかく家に在庫してるマイコンは8bitか32bitが大半を占めてる)
0440774ワット発電中さん
垢版 |
2020/07/03(金) 09:32:29.19ID:c1L+OymY
>>434
マジックスモーク…良いな
0441774ワット発電中さん
垢版 |
2020/07/03(金) 15:08:44.69ID:5wVu6GjW
リソースを節約する古き良き職人気質は、マシンパワーでぶん回す時代の流れに押しつぶされるんだね。
0444774ワット発電中さん
垢版 |
2020/07/03(金) 23:02:53.16ID:9SDhQQDo
今どき薪割りして風呂沸かしてる家なんか無い
やってるとしたら趣味の領域
それと同じだ
0447774ワット発電中さん
垢版 |
2020/07/04(土) 00:31:21.26ID:576uIAg1
セコセコしないで技術革新によるパワーの恩恵を十分に堪能すればいい
0451774ワット発電中さん
垢版 |
2020/07/04(土) 09:17:17.95ID:GOz77qVv
近所の銭湯の何軒かは薪、おがくずが燃料だ。昔からのところだけど。

乗り換えるだけのメリットがなければそれでもいいわけで、それはマイコンの選択も同じ。
0452774ワット発電中さん
垢版 |
2020/07/04(土) 14:35:40.59ID:eRJvJ6dq
我が家の近くの銭湯も解体現場から持ち込んだと思われる廃材が庭に積んである。
経費が安く済むからだろうな。
個人の家で薪の風呂は「ポツンと一軒家」くらいだと思う。
0455774ワット発電中さん
垢版 |
2020/07/04(土) 19:41:28.18ID:fEZ4iF/q
家庭で使われてる洗濯機の95%は全自動だ
洗濯板の方が隅々まで汚れが落ちるんだとか
二層式の方が洗浄力が高く、洗い・すすぎと脱水が同時に出きて
短時間に大量に選択できるんだとか言ってるが、それらの利点は業務用に於いてだ
それと同じだ
0456774ワット発電中さん
垢版 |
2020/07/04(土) 23:07:43.58ID:RSAH7SwQ
会社の制服は洗濯機禁止で手洗いせよと書いてあるので
帰ってそれだけ手洗いしてる

そのあと脱水は洗濯機
乾燥機もダメ
0465774ワット発電中さん
垢版 |
2020/07/08(水) 00:26:07.50ID:LsAbi4TJ
>>463
ゲーム製作集団のことかな?
タイトルの前にロゴが出てくるんで覚えてるんだろうと思う

Bio_100%
ttps://ja.wikipedia.org/wiki/Bio_100%25
0473774ワット発電中さん
垢版 |
2020/07/09(木) 04:53:09.86ID:ktcmP2Jy
>>472
ソースすら読まずにニュー速のスレタイだけを見て脊髄反射するから
何の関連も無い場所で何の関連も無い流れでクソレスw
まあ、ウヨさんの無能さにも最近は慣れて来たけど、一応言っておこう
文字読めますか、理解力ありますか、馬鹿ですか、と
0474774ワット発電中さん
垢版 |
2020/07/09(木) 05:14:07.53ID:gUwXHLKx
アリババを利用するなんて中国政府に個人情報渡すような行為誰がするんだよ
0475774ワット発電中さん
垢版 |
2020/07/09(木) 05:37:21.10ID:gUwXHLKx
アリババ元会長は中国共産党員

アリババ会長も中国共産党員......「赤い資本家」がIT企業に潜む
https://www.newsweekjapan.jp/youkaiei/2018/12/post-30.php
> そのような政治的洗礼を受けていたならば、
> マーは一企業人として資本主義風に金を稼いできたのではなく、
> 隠れ共産党員として市場原理を利用し、党と政府のために工作してきた、と言えよう。
> 日米の政財界と太いパイプを築いたのも、
> リベラルな企業人として世界経済に貢献したというよりも
> 「高級スパイ」として潜入したとみたほうがいいかもしれない。
>
> そもそも中国ではアリババほどの規模になると、
> 政府や共産党の触手から逃れて市場原理だけで経営などできない。
> 改革開放を掲げた政府の「社会主義市場経済」は建前。
> 実際の中国経済は共産党員である「赤い資本家」が国家資金を駆使して、
> 国民を搾取する官営資本主義だ。
0479774ワット発電中さん
垢版 |
2020/07/09(木) 11:55:13.43ID:6o1vgENl
俺aliexpress派
最近大分まともに届くようになった
物流が回復してきている
0480774ワット発電中さん
垢版 |
2020/07/09(木) 13:38:09.09ID:/P3fRpqs
ラズパイzeroはswitchscienceで買ったけど
Arduinoは全部中華互換機だなあ、
最初は尼で買ってあとはずっとAliexpress

switchscienceで面白そうなもの探してAliexpressで互換品買うといのもよくある
倒産すると困るので、俺以外の人はswitchscienceで買ってあげてください。
0481774ワット発電中さん
垢版 |
2020/07/09(木) 15:13:46.25ID:KSzrPGZH
習近平に忖度した安倍晋三が春節にコロナ満載の中国人観光客に熱烈ウエルカム
こういう事実は見えないふりなんだよね、こういうヤツって>>ID:gUwXHLKx
自分の都合のいい方向から見た都合のいい側面しか語らない便利な価値観の持ち主
0483774ワット発電中さん
垢版 |
2020/07/10(金) 15:08:55.26ID:OA3fuZmD
格安wifiモジュール「esp8266」「esp32」 が落ちてるみたいなので、ここで質問します

ESP8266でスマホのLINE通知を受信できますか?
通知があればESP8266でLEDとかを光らせたいです。
0484774ワット発電中さん
垢版 |
2020/07/10(金) 16:56:13.87ID:BMsaBw/G
>>476
中国批判するなら中国製品を着用するな、なんて考える方がいかれてるだけなw
ソ連誕生間もない頃、資本主義国家と貿易すべきかどうかが問題になったことがあった
レーニンはこう言った
資本主義者から買ったロープで彼らの首を絞めればいい
ということで貿易することになったとさ
0485774ワット発電中さん
垢版 |
2020/07/10(金) 17:09:46.01ID:gwGw4rpP
中国製、コストのみならずパフォーマンスも上がってきてるからな。
20世紀からアップデートしたほうがいい。

民生品だったら、日本製は C/P 悪すぎて話にならなくなってるし
0486483
垢版 |
2020/07/10(金) 17:59:24.30ID:OA3fuZmD
本スレが建ったようなので、質問を取り消します。
0487774ワット発電中さん
垢版 |
2020/07/11(土) 10:54:42.92ID:GiBOEFmg
>>483
出来る方法はあるけど、そういう質問をしてるレベルだと難しいと思う。

「なんとかのスケッチを書き込めば出来る」
っていう感じではなくて、いくつかのサービスを組み合わせてシステムを実現するかんじ。
0488774ワット発電中さん
垢版 |
2020/07/11(土) 23:40:59.23ID:SQsIxAJk
思うように動かず質問です。
Aruino nano互換機とPIRセンサーとサーボモーターを組み合わせ、
PIRに手をかざした時にサーボモーターが決められた角度動いて元に戻るようにしたいと考えています。


#include <Servo.h> //サーボモーター用ライブラリを読み込み


const int PIR_ON = HIGH; // PIRセンサーが反応しているとピンの値はHIGH
const int PIR_OFF = LOW; // PIRセンサーが反応しているとピンの値はLOW

const int PIN_PIR_SIG = 12;
const int PIN_Servo = 8;

Servo myservo;

void setup() {

pinMode( PIN_PIR_SIG, INPUT_PULLUP );
pinMode( PIN_Servo, OUTPUT );

myservo.attach(12);//servo変数をピンに割り当てる、ここでは12番ピン

}

void loop() {

int i = digitalRead( PIN_PIR_SIG );
if (i == PIR_ON) { // PIRセンサーが反応していたら
digitalWrite(PIN_Servo, HIGH);  
}
else {
digitalWrite(PIN_Servo, LOW);
}

}

Void loop中のサーボを動かすコードはどうすればよいでしょうか?
また、コードの中でおかしい箇所(たくさんあるかもしれません・・・)ありましたらお教えください。
0492774ワット発電中さん
垢版 |
2020/07/12(日) 00:39:38.04ID:NunQkGrW
>>488
サーボは8番ピンじゃないの
const int PIN_Servo = 8;
と設定したんなら
myservo.attach(PIN_Servo);
と書きましょう
0494488
垢版 |
2020/07/12(日) 06:43:28.85ID:KNKmkzUW
皆さんありがとうございます!
再度見直してみます。
0495488
垢版 |
2020/07/12(日) 09:27:38.33ID:KNKmkzUW
出来ました・・・!
感動です!
LEDも組み合わせましたが動作しています。
皆様のおかげです、ありがとうございました。
0496774ワット発電中さん
垢版 |
2020/07/12(日) 17:17:23.11ID:TvDsybsh
最初はそんなもんだ

初めてfortranで書いたプログラムが動かなくて先輩に相談したら
カンマがピリオドになってただけ。
自分じゃ半日眺めても分からなかった
0497774ワット発電中さん
垢版 |
2020/07/12(日) 17:20:27.31ID:RnLWy+FD
ELEGOOのMEGA2560スターターキット買ってチュートリアルどおりにやってるんですが、Lesson30のリレーが作動しません。
直前のLesson29で電源モジュールつけて、L293Dというドライバつけてモーターを動かすのはできたのでそれら部品は問題ないです。
Lesson30はリレーが加わっただけなのでリレー部品が壊れているのかと思いますが、壊れているかの確認方法がわかりません。
確認方法等なにかありますでしょうか。
0498774ワット発電中さん
垢版 |
2020/07/12(日) 17:28:32.15ID:TvDsybsh
リレーはコイルと接点でできている
コイルに電流流すと接点が閉じたり開いたり。

電池と豆電球があれば機能確認できるでしょ。
0499774ワット発電中さん
垢版 |
2020/07/13(月) 10:43:17.62ID:giIfGvY9
Arduino UNOを書き込み装置としてブレットボード上の328Pにブートローダを書き込みたいのですが、
avrdude: Device signature = 0x000000となりうまくいきません。
どういう手順で確認したらよいでしょうか・・・
0500774ワット発電中さん
垢版 |
2020/07/13(月) 10:55:17.88ID:5O/ADP7c
>>499
ArduinoISPのスケッチ・書き込み装置の選択までは有ってるので
結線ミスか配線の不良かブレッドボードの不良を疑ってみる
0501774ワット発電中さん
垢版 |
2020/07/13(月) 11:19:49.50ID:giIfGvY9
>>500
そうですよねぇ・・・
さんざん確認したんですが。

もうちょっとやってみてダメならUNOを2台使用する方法を試してみます。
ありがとうございます。
0502774ワット発電中さん
垢版 |
2020/07/13(月) 11:31:33.75ID:fMkVp/8x
動作しないの?
エラー出ても実際の動作には支障ありませんって書いてるホームページあったけど
あとAtmega328Pがブレッドボードにちゃんと刺さってなかったって人もいた
0503774ワット発電中さん
垢版 |
2020/07/13(月) 11:46:50.91ID:5O/ADP7c
>>501
なにか足りないのかも
写真とかアップすれば他にもアドバイスできるかも

https://i.imgur.com/T0vDehI.jpg
こんな感じで

↓正常に書き込みできた時の出力
Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of lock verified

avrdude done. Thank you.
0504774ワット発電中さん
垢版 |
2020/07/13(月) 11:54:35.61ID:fMkVp/8x
とりあえず、スケッチ>>書き込み装置を使って書き込む からLチカのスケッチでも書き込んでみて
書き込めるか&動作するか確認してみたら?
0505774ワット発電中さん
垢版 |
2020/07/13(月) 11:57:37.65ID:giIfGvY9
>>503
わざわざ写真までありがとうございます。
同じ配線はできているようなので、ブレットボードと配線の接触とかかもしれません・・・

ちょっと急ぎだったのでUNO2台を使用するやり方で1発成功しました。
お騒がせしました。ありがとうございました。
0506774ワット発電中さん
垢版 |
2020/07/15(水) 10:43:54.65ID:qAKj+IKE
Arduino NANO の3.3Vはどこで作られてますか?
FT232RLまたはCH340?
裏についてる3端子レギュレータじゃなさそうに見えます…
0508774ワット発電中さん
垢版 |
2020/07/15(水) 11:41:35.77ID:qAKj+IKE
>>507
ありがとうございます
やっぱそうですよね
いまいち自信がなかったもので
インターフェイスICなのにレギュレータも付いてるなんて
0510774ワット発電中さん
垢版 |
2020/07/15(水) 13:15:54.86ID:qAKj+IKE
>>509
FT232RLでもそんなもんなんですね
今、CH340使ってて3.3Vモジュールの動きがおかしいもので
FT232RLのやつに換えたらなんとかなるかと思ったんですが
3.3Vはオマケですねぇ
0512774ワット発電中さん
垢版 |
2020/07/15(水) 19:58:32.01ID:GfuhjTks
電池はモーター回せるくらいパワーあって短時間なら1Aとか取り出せるよ
0513774ワット発電中さん
垢版 |
2020/07/16(木) 00:50:14.27ID:v7h+UjFN
そういや外部からの5V入力は5Vにつないでいいの?
まぁつなげばわかるんだけどそれはナシということで
0514774ワット発電中さん
垢版 |
2020/07/16(木) 08:21:43.82ID:DD0zY5gm
>>513
大丈夫では。
レギュレータのLM1117はVOUT>VINでも大きい電流が流れない限りは保護ダイオードはいらないことになってるし。
0517774ワット発電中さん
垢版 |
2020/07/19(日) 21:07:26.39ID:85sYLCJn
アメちゃんが中国と取引すんなボケーって言い出した
アリは引き上げかも知れんね
0518774ワット発電中さん
垢版 |
2020/07/19(日) 21:11:05.05ID:1Sx7pPvj
いつかこうなると思ってた
買い溜めしておいてよかった
あ、今のうちにハンダ大量に買っとこうかな
0519774ワット発電中さん
垢版 |
2020/07/20(月) 14:22:15.14ID:02EmJ5gw
トランプ(共和党)が大統領選で負けても、香港の状況を考えると、バイデン(民主党)新大統領も掌返したように、中国に擦り寄る事もできないよね
その前に、軍事オプション実行の話も出てきてるみたいだし
0520774ワット発電中さん
垢版 |
2020/07/20(月) 14:28:31.06ID:GBRVMnCj
> 軍事オプション実行の話も出てきてるみたいだし
米国の空母艦載機で南沙諸島の中国軍基地を攻撃、とかやってくれないかな。
0521774ワット発電中さん
垢版 |
2020/07/20(月) 14:44:35.16ID:TtbRuQc+
米中戦争・米朝戦争を対岸の火事だと思ってる日本人!
戦争景気で儲かるとか、空母やら戦闘機がちょこちょこと交戦するだけだろと思ってる日本人!
今の戦争はミサイル攻撃だぞ!

中国が何万発のミサイル・何万発の核弾頭を配備してるか調べろ!
米軍基地はどこにある!?開戦即、数千発のミサイルが飛んで来るんだぞ!
日本が戦場になることを自覚しろ!
0522774ワット発電中さん
垢版 |
2020/07/20(月) 16:27:03.35ID:+8HMuZfg
米中が軍事衝突したらよっぽどじゃない限り第三次になるんだよなぁ…
0523774ワット発電中さん
垢版 |
2020/07/20(月) 16:59:21.20ID:GJKV7xuK
激突しないために日本はもっともっと中国にすり寄り媚を売り言いなりになろう
要するにこう言いたい訳だが、ハッキリ言うと流石にバカでも、それはおかしい
と気づいちゃうんで、平和万歳、命は何より大切、ミサイル怖いですねぇ、核は怖い怖い
と少し婉曲に言ってますw
0524774ワット発電中さん
垢版 |
2020/07/21(火) 14:21:57.36ID:9NSFg/c4
しかし中国ってどうしようもない独裁国家だよな。
シューキンペー見てると、総統を続けられるように憲法を改正した第二次大戦前のヒトラーを思い出す。
ヒトラーのポーランド侵攻のようにチベット、内モンゴル、ウイグル自治区を侵攻、占領して
悲惨なジェノサイドをやり、俺のもんだと勝手に宣言して、所有権が無い南沙の島々に基地を作った。
国民は金のためなら何でもやる金の亡者だし、
とにかく中国は世界平和のために一刻も早く滅んで欲しい。
0525774ワット発電中さん
垢版 |
2020/07/21(火) 16:23:39.60ID:ko9+s83f
>>524
その習近平に忖度しインバウンドを見込んで春節に中国人ウェルカムの安倍晋三にもひと言どうぞ
0526774ワット発電中さん
垢版 |
2020/07/21(火) 16:28:11.54ID:3WC4JOP6
そんなナチスと手を組んだ日本とイタリア
何考えてたんだか

今はアメリカに付いてるけど、これも逆張りかもねw
0527774ワット発電中さん
垢版 |
2020/07/21(火) 16:42:09.13ID:kE9rIfuI
石油資源の有無だね
アメリカべったりから抜け出そうと画策した田中角栄はハメられた
その意思を受け継いだ石破の息子は未だに冷や飯喰ってる
ボンボン育ちの無能安倍がでかい面して担がれて日本は亡国の憂き目
0528774ワット発電中さん
垢版 |
2020/07/21(火) 17:04:49.85ID:fnT69Ed0
君たち中国好きすぎだろwww
日本のマスゴミも大使呼んで映像見ながらインタビューすれば良いのにw
好きだかだぁ、絶対やりません、ってか
https://youtu.be/DwBaL-5o1oc
0529774ワット発電中さん
垢版 |
2020/07/21(火) 17:08:38.78ID:9NSFg/c4
毛沢東と紅衛兵で懲りたはずなのに、アホは過去から学ばないみたいだな。
とにかく諸悪の根元<中国帝国>が滅べば世の中は平和になる。
0531774ワット発電中さん
垢版 |
2020/07/21(火) 17:13:16.70ID:fnT69Ed0
えっ? 好きじゃないの? オレも結構好きだけどな
歴史、兵馬俑、謎の遺跡、大陸ロマン、なんだかんだ言っても良いところはたくさんある
嫌いなのは数々の拷問や残虐な刑罰にかける情熱と発想力、人を美食で食してたり
今は何より偽物の多さ。パクるのはまだ許せるけど偽物多すぎ
0532774ワット発電中さん
垢版 |
2020/07/21(火) 17:17:18.87ID:NrZzgBuj
それ過去の中国文化ね
わざわざ大雑把な定義持ち出して、後出しじゃんけん好きそうだな、あんた
0535774ワット発電中さん
垢版 |
2020/07/21(火) 17:27:52.23ID:fnT69Ed0
そりゃ歴史も長いし広いし大雑把にくくらなきゃ話できないだろ
あと年寄りと話すとわかると思うけど中国マジで好きな人多いよ
むしろ嫌いって人に会ったことないかも、、、公言しないだけかもしれないが
0536774ワット発電中さん
垢版 |
2020/07/21(火) 17:32:36.61ID:fnT69Ed0
あ、食べ物だけは別というか特におばちゃんは中国産と聞いただけで
やめた方がいいんじゃない?、って感じの反応する、まあわかるけどw
0537774ワット発電中さん
垢版 |
2020/07/21(火) 17:40:33.37ID:fnT69Ed0
しかしArduino全然関係なさすぎて酷いなw
ここがどうかは知らないが、けっこうマイナーなスレでも工作員だかシンパだかすぐ湧くけど
それだけ色々浸透してる。技術も向上も中国に献上して、安いよ、と喜んでたら
その安物さえ買えなくなって中国人をインバウンドでおもてなし、酷いよなw
お返しはコロナで色々壊滅、なんてこったい
0538774ワット発電中さん
垢版 |
2020/07/21(火) 17:52:58.47ID:+G1ybzKz
中国のせい、で済まそうとするのは
無能な政権を擁する国の無能な政権の常とう手段
迎え入れてんのは安倍晋三
0540774ワット発電中さん
垢版 |
2020/07/21(火) 22:15:04.87ID:GB9jCOxA
>>525
はい、アドルフ・ヒトラー総統に対するヨーゼフ・ゲッベルス首相みたいなのが、安倍晋三ですwww
0541774ワット発電中さん
垢版 |
2020/07/22(水) 15:27:45.18ID:EIvibuvv
>>538
トランプにハブられた習近平が何とかしてと泣きついてきたので、
阿倍総理が「じゃ国賓招待するから日本においで」と助け船を出した。
昔、天安門事件の後、世界で孤立した中国を助けるために
海部首相が訪中したのと同じ。
その後の東シナ海の石油掘削問題や尖閣諸島の中国軍艦の領海侵入を見てると、
中国政府がどんなに悪逆非道かがよ〜く分る。
絶対に信用してはいけない国だ。
0542774ワット発電中さん
垢版 |
2020/07/22(水) 15:46:03.96ID:EIvibuvv
昔、ベトナムがアメリカを追い出して一息ついている時に、
中国軍がベトナムに侵攻した。
 エ?ベトナムが米軍と戦っている時はベトナムをサポートしてたじゃないか?
 中国は領土拡張のためなら何でもやるんだな、しかも相手が弱っている時を狙って。
とビックリした。
中国は絶対に信用してはいけない国だ。
0543774ワット発電中さん
垢版 |
2020/07/22(水) 15:50:25.66ID:EIvibuvv
こんな話はいくらでも有るけどスレチだよね、悪いね、終わりにする。
0544774ワット発電中さん
垢版 |
2020/07/22(水) 15:51:34.01ID:o6ZkPee8
14億のうち10億人が死んでも、アメリカの人口を1億以下にして
まだ核攻撃の余力を持っていれば勝ちっていう、人命無視の共産主義国家って怖いな
でも戦争になったら共産国って強いんだよね
0545774ワット発電中さん
垢版 |
2020/07/22(水) 15:52:07.55ID:CtAHfKQX
>>541
絶対に信用してはいけない国に助け船を出したマヌケな安倍晋三のせいで国民大迷惑ってことですねわかります
0547774ワット発電中さん
垢版 |
2020/07/22(水) 15:54:51.71ID:HEsJXCQa
>>541
野良犬にお手して噛まれたら「野良犬の野郎けしからん」とは言わない、お手した奴がバカ
自分の手をかまれるのは勝手だけど国民犠牲にした安倍晋三の罪は万死に値する
そういう現実を見据えた議論しないと日本が滅びるぜ
0548774ワット発電中さん
垢版 |
2020/07/22(水) 16:02:09.68ID:Guq5+ldd
>>546
今Aliで2個買えば送料込み194円

もっとも、1個だけとかいうバカな買い方すると230円なので
徒歩でその店に行って水分も取らずに帰ってくれば確かに安いね
0549774ワット発電中さん
垢版 |
2020/07/22(水) 20:36:58.89ID:wsDQ8PjS
先輩方お世話になりますm(__)m

砂時計を2分ごとに180度回転させて、自動で砂時計を
上下回転させる
物を組んだのですが

サーボモーターが正確に180度回転してくれないんです_| ̄|○

170度くらいです。いろいろな数値を確認したのですがNGです

先輩方どの様な原因方法があるか教えてくださいませm(_ _)m

パルスモーターでやろうかも検討してます。
0551774ワット発電中さん
垢版 |
2020/07/22(水) 20:40:05.29ID:wsDQ8PjS
それと先輩方m(__)m

パルスモーターの先に付ける、ギヤなどの頭はどこに売っているのでしょうか?
いろいろとググったのですがダメです。

デカイ十字やデカイ円形の物を装着して、砂時計やオイル時計を
自動で回転させたいんです
0552774ワット発電中さん
垢版 |
2020/07/22(水) 20:59:09.63ID:xczfcZ0M
Ali なら gear で検索したら山ほど歯車が出てくるけど、
それは、俺の環境(過去の検索履歴)の影響?
0553774ワット発電中さん
垢版 |
2020/07/22(水) 21:03:39.12ID:xczfcZ0M
国内でバリエーションが多いのは協育歯車かな。ずいぶん昔に買ったきりだけど
https://www.kggear.co.jp/
0556774ワット発電中さん
垢版 |
2020/07/22(水) 21:09:36.27ID:ETtUvr91
>>549
サーボモーターってメカニカル的にリミットがあるんだよねー
SG90の正規版もそう
それでも200度くらいは行けるけどね、おかしいな
そして「DM」ってマークのパチもんSG90にはリミットが無い
記憶ではメカニカル的に360度回ってたと思う
これでどう?
0557774ワット発電中さん
垢版 |
2020/07/22(水) 21:12:07.02ID:wsDQ8PjS
皆さま
ありがとうございます

少しの間にこんなにサポートが
ありがとうございますm(__)m

360回転するサーボで試したのですが、180度正確に回転しないんですよ_| ̄|○

ステッピングモーター ですね。わかりました。
0558774ワット発電中さん
垢版 |
2020/07/22(水) 21:13:47.62ID:JdlKLg5q
使ってるモーターの型番ぐらい書いたら?
それと波形は?正確に出てんの?
0560774ワット発電中さん
垢版 |
2020/07/22(水) 21:17:18.71ID:wECwVSqI
>>557
それなら正確なパルス幅が出てるか確認するしかない
様子見ながら微調整
再現性が無いなら高いモーターに変える
0561774ワット発電中さん
垢版 |
2020/07/22(水) 21:36:14.69ID:wsDQ8PjS
>>558
サーボはSG90と言う、サーボモーターです。

360回転すると言う、サーボモーターも購入したのですが、ラベルが剥がされているのか、外観は全くSG90と同じです。
0562774ワット発電中さん
垢版 |
2020/07/22(水) 21:43:20.30ID:o6ZkPee8
原始的だけど、リミットスイッチを付けるっていうのは?
0度と180度につけて、押されたらモーターを止めるっていう感じで
0563774ワット発電中さん
垢版 |
2020/07/22(水) 22:15:27.24ID:wsDQ8PjS
>>555

ありがとうございます
欲しいのはこれです!

正式名称はなんて呼ぶのでしょうか?
カップリング?
0564774ワット発電中さん
垢版 |
2020/07/22(水) 22:47:49.74ID:ETtUvr91
>>563
ステップモーターの先につけてそれに砂時計を取り付けるの?
おもちゃレベルかと思ったけど違うの?
いやまあ詮索する気は無いけどさ
そりゃキッチリ180度だったらステップが一番さー
0565774ワット発電中さん
垢版 |
2020/07/22(水) 23:29:07.73ID:vytfHjrA
ラジコンサーボはローテーションサーボとか言われる一方向に回転し続けられる奴もある
だいたい型番が違うが(SG90Rとか)まぁ中華品なら同じままでも不思議じゃないな

あとSG90はパルス幅450us〜2550usまで受け付けるから190度くらい回転するはずだぞ

Arduinoのサーボライブラリだとデフォルトで544〜2450までになってるからそこまで回らないかもしれない
最少パルス幅と最大パルス幅をいじってみ
0567774ワット発電中さん
垢版 |
2020/07/22(水) 23:38:38.52ID:vytfHjrA
誰もライブラリのパルス幅設定について触れてねーじゃんよ
>>556だってSG90は180度以上回るはずだけどなって言ってるけど対処方法触れてないし…
0568774ワット発電中さん
垢版 |
2020/07/22(水) 23:47:35.55ID:TnBNE9hE
>>549
libraries\ESP32-Arduino-Servo-Library\src\Servo.h
のMIN_PULSE_WIDTHとMAX_PULSE_WIDTHを探して値の範囲を広げてみたら?
0570774ワット発電中さん
垢版 |
2020/07/23(木) 00:36:55.04ID:Blul4NCS
そもそもライブラリ使ってるとも一言もいってねーんだが
「僕の書いたコードでサーボがきちんと回転しません。なぜでしょう」
しか質問してねーから
0571774ワット発電中さん
垢版 |
2020/07/23(木) 00:46:37.26ID:vU1WSvVe
確かにそうだが
いくらなんでも
使ってなかったらアホだで
0572774ワット発電中さん
垢版 |
2020/07/23(木) 01:12:41.59ID:OP30JYQ5
ライブラリ使わないで自分で制御してる人はこんな事で躓かないんじゃね
0574774ワット発電中さん
垢版 |
2020/07/23(木) 08:54:07.27ID:wjqev0Ma
>>570
俺も今見たがそれを最初に聞かない回答者と、言わない質問者どっちもイマイチだなって思った。

つまりどっちも同じレベルの奴らなんだなって。

で、ライブラリはつこてんのか?
普通に考えてつこてんだよな。

となるとうえでかかれたとおり、ライブラリ内の最小、最大パルス定義の問題の可能性が高い。

変えすぎるとサーボぶっ壊れるから、少しずつ様子を見ながら変えるように。
0576774ワット発電中さん
垢版 |
2020/07/23(木) 16:19:40.81ID:23Alny8U
今度はそういうマウントできたか(´・ω・`)
ライブラリ使ってんならそれくらいは知ったうえで質問してるという見方もあるぞ
0582774ワット発電中さん
垢版 |
2020/07/24(金) 08:05:36.80ID:9u7OdQ8r
>>581
故障ですかね?
もう少し詳しい状況と、スケッチを教えてくださいませんか?
0583774ワット発電中さん
垢版 |
2020/07/24(金) 08:14:50.09ID:xcBzROrR
>>582
配線は間違ってないしスケッチも大丈夫なんです
やっぱアマゾンの安物は壊れてるんですかね
もうちょっと高いのを買ってみます
0584774ワット発電中さん
垢版 |
2020/07/24(金) 08:30:47.99ID:24j1+SRr
>>583
間違ってない、っていう意識がおかしい。そんなことだと、自分ではなくほかに原因を求めてしまう。
習慣的に、見落としや未熟のせいで何かおかしいことをしているかもしれない、って考える方が問題解決しやすい。

スケッチ、配線がわかる図、実際の配線の写真を質問に添えるといい。
0585774ワット発電中さん
垢版 |
2020/07/24(金) 09:03:03.29ID:iPnipTei
>>583
おまえ頭悪いんだろ? 自分でわかってるからそういうバカな文章書くんだ。
0587774ワット発電中さん
垢版 |
2020/07/24(金) 10:37:37.36ID:kKn0MV2i
アマの安いのでも壊れてた事は今までなかった
半田付けがひん曲がってたことはあるが
0589774ワット発電中さん
垢版 |
2020/07/24(金) 11:26:12.27ID:9u7OdQ8r
>>583
サンプルのblink.inoすら動かない、となったら初期不良でしょうね。私も、よく安物買いますが、初期不良はなかなか無いですよ。
ピン入力は動きますか? ボード上のパワーオンled(あれば)は、光りますか?
0590774ワット発電中さん
垢版 |
2020/07/24(金) 11:26:57.78ID:aV/BHYzW
583の行動自体は間違ってないと思う
>配線は間違ってないしスケッチも大丈夫なんです
これは配線やスケッチを疑って何度も確認したという意味だと思う
>やっぱアマゾンの安物は壊れてるんですかね
上の事からボード不良を疑ったと思われる

経験上マイコンの不良の可能性は低いが、ボードのピンヘッダの不良や配線不良(ブレッドボードの場合)は多く考えられる
結線場所が有ってるとして、配線自体の不良やブレッドボード不良には気づきにくい
マイコンボードを追加購入すること自体は不具合の検証方法としては悪くない
0591774ワット発電中さん
垢版 |
2020/07/24(金) 13:25:18.43ID:fSbbh/sb
最初に買う1個目くらいは正規品を買うべきだと思うんだよね
正規品だとまず初期不良は無いだろうから
後からパチモノ買って動かなかった時に原因の究明に役立つからね
0592774ワット発電中さん
垢版 |
2020/07/24(金) 13:30:56.10ID:U3CeIVnB
>>590
なんかね、そもそも転送に成功していなくてエラーメッセージも見ていない 気がする。
0593774ワット発電中さん
垢版 |
2020/07/24(金) 13:31:59.68ID:SGCdprH5
中華互換機で不良品に当たったことは無い。
初心者の場合人為的なミスの方が圧倒的に可能性が高いので
安い分複数台購入できるメリットの方が大きい。
0594774ワット発電中さん
垢版 |
2020/07/24(金) 13:50:55.07ID:k+h3iYOe
>>592
これ
アマで合計10数枚のArduino互換機買ったけど、ハードウェア不良は無いな
ファームが書いて無いボードが3枚あり、自分で書き込んだが
0595774ワット発電中さん
垢版 |
2020/07/24(金) 13:53:36.93ID:24j1+SRr
相談している本人が詳しい状況を開示したくないなら、手の出しようがない。
確実に間違ってなくて、それでも動かないなら、故障しかないでしょう。

たいていどこかで間違ってるわけですが。
0596774ワット発電中さん
垢版 |
2020/07/24(金) 13:54:04.23ID:k+h3iYOe
>>593
法規知らずに赤信号で走って、交通事故起こして、俺の責任じゃ無いと言ってるようなもんだな
0597774ワット発電中さん
垢版 |
2020/07/24(金) 13:56:20.56ID:24j1+SRr
もっとも、最初の1枚は、互換品じゃなく純正を選ぶ方がいいと思う。
動かないときに、より強く自分のせいにできるわけだし。

もしかして
>ファームが書いて無いボードが3枚あり、
↑これに当たったんだろか、って思うだけで、自分のせいじゃなく、ボードのせいかもって疑うわけだし。
0598774ワット発電中さん
垢版 |
2020/07/24(金) 14:04:59.09ID:k4tQ/Wq8
>>ID:xcBzROrR
>>591
正規品を扱うショップのステマかな?
中華互換機のせいで商売あがったり

>>596
この場合、相手もいない自爆だし公共物への被害も無いので、勝手に事故っててって感じね
0599774ワット発電中さん
垢版 |
2020/07/24(金) 14:07:37.95ID:k4tQ/Wq8
>>597
ファーム書いて無きゃスケッチ書き込めないんですって言うだろ
1台目正規品説に何の根拠も無し
初心者のうちは同じものを複数買うが鉄則
0600774ワット発電中さん
垢版 |
2020/07/24(金) 14:09:16.72ID:24j1+SRr
こんなところで嫌儲ふりまわす人ってめんどうくさい。
0602774ワット発電中さん
垢版 |
2020/07/24(金) 14:11:55.05ID:24j1+SRr
>初心者のうちは同じものを複数買うが鉄則
これも一つの道。
0604774ワット発電中さん
垢版 |
2020/07/24(金) 15:15:52.71ID:fSbbh/sb
>>598
>正規品を扱うショップのステマかな?
>中華互換機のせいで商売あがったり

なんだこの人妄想癖でもあるのか
0605774ワット発電中さん
垢版 |
2020/07/24(金) 15:21:03.03ID:FYYGIMnm
>>604
あまりムキになるとホントだったんだと思われるぜ
他にムキになる理由でもあるなら別だが
0606774ワット発電中さん
垢版 |
2020/07/24(金) 15:24:23.11ID:Gu0+XCbD
1台目は純正品買えって人が必ず登場するけどそういうことだったのか
数十台全部中華互換機な俺の経験で言えば不良品は1台も無いけどな
0607774ワット発電中さん
垢版 |
2020/07/24(金) 16:17:02.59ID:24j1+SRr
問題解決の力がある人は、それで良いんだ。

次のような人には純正の方が良いと思う。
・自分を疑う代わりに、これが互換基板だからダメなのかな? と考える人。
・構成部品(特にレギュレータ)の定格が純正品と違う場合に問題解決ができない人。
・ドライバーで引っ掛かったら困る人。
・掲示板で質問するときに、自分の使っているデバイスを説明できない人。

逆に
・互換基板だからって滅多に不良はない。おかしいのは何かが間違ってるからだ。
・構成部品の違いが問題になりそうなところにはタッチしない。あるいは必要に応じて交換できる。
・ドライバーの問題ぐらいググれば解決できる。
・Arduinoに関して掲示板で質問する立場ではない。
なんて人なら、Aliで一山なんぼで買えるもので良いわけだし。

自分ができる、大丈夫、問題ない、自分が初心者のときにもクリアできたってことと、
それができない、大丈夫ではない、問題がある、クリアできない人との話は切り分けないとね。
0608774ワット発電中さん
垢版 |
2020/07/24(金) 16:42:47.64ID:6xBVaESU
>>605
その手の人には、これがムキになってる様に写るんだね。
0613774ワット発電中さん
垢版 |
2020/07/24(金) 19:42:10.00ID:yKyNYVU8
どう見ても結論ありきのステマ>>ID:xcBzROrR
互換機でも初期不良なんて無いって意見が多数なのに言い張るステマ>>ID:fSbbh/sb
0614774ワット発電中さん
垢版 |
2020/07/24(金) 22:32:52.42ID:6xBVaESU
>>613
ボクはなんでもお見通しだいっ! てか?
見てるこっちまで恥ずかしいから止めてくれ
0615774ワット発電中さん
垢版 |
2020/07/24(金) 22:37:37.28ID:osuz81Pp
まあ確かに国内で正規品を扱ってるショップは苦々しく思ってるだろうねえw
気の毒だけど仕方ないねえ
0616774ワット発電中さん
垢版 |
2020/07/25(土) 07:43:15.79ID:u7yfTO+7
対立を煽っても意味がない。Arduino自体が互換品を妨げないものだし、オリジナル品と互換品の両方を扱ってる業者あるよね。
業務でも単品製造の特注品だと、Arduinoを組み込んだものもある。そういうところではオリジナル品が好んで使われる。
互換品であってもそれが普及の力になるなら、結果的にオリジナル品の採用も増えるさ。
都合が悪ければ、オリジナル品が互換品を締め出す手立てはあるだろう。それをしないのは、しないことにメリットがあるからと考える方がいい。
0618774ワット発電中さん
垢版 |
2020/07/25(土) 13:53:47.24ID:atsPRSiV
>>616
相反する事実を語っただけで対立構造だと思い込むステレオタイプ乙
あと、締め出せるものなら締め出してるが締め出せないだけ
今更どうやって締め出せるのか具体的に書いてみ
0619774ワット発電中さん
垢版 |
2020/07/25(土) 13:55:54.80ID:hpnmk+zF
>>ID:fSbbh/sb
互換品で不良率が高いという事実をデータで示さないとね
ここまではそうでないと言ってる人の方が多い
0620774ワット発電中さん
垢版 |
2020/07/25(土) 14:53:26.01ID:Gng+nWIy
中華のesp32-devkitcは自動書き込み失敗するのでコンデンサつけるというのは定番だと思うんだが
手を加えないとまともに使えないものはちょいちょいある
0621774ワット発電中さん
垢版 |
2020/07/25(土) 15:51:24.56ID:EPwsmJiJ
>>619

>>594の人がファーム書いてないのが10個中3個って言ってるじゃん
これをあんたは不良とは言わないのか
最初に買ったのがこれだったら初心者には手に負えないんじゃないか?
0622774ワット発電中さん
垢版 |
2020/07/25(土) 16:01:48.48ID:vm/B7qR+
>>621
自分の情弱を棚に上げて何でも初心者面で乗り切ろうって人は何を買っても不良品だろうね。
0623774ワット発電中さん
垢版 |
2020/07/25(土) 16:05:18.19ID:S/O2DgRH
>>621
>>619のレスから
>ハードウェア不良は無いな
は無視して、
>ファームが書いて無いボードが3枚あり
だけ取り出して、
>自分で書き込んだが
は無視なのね。
情報操作、歪曲、ご苦労様です。
0625774ワット発電中さん
垢版 |
2020/07/25(土) 16:09:12.15ID:c70KLwYF
>>621
それは不良品とは言わず、君のスキルが不良という。
初心者であることは学ばない、調べないの免罪符ではない。
0626774ワット発電中さん
垢版 |
2020/07/25(土) 20:38:37.22ID:u7yfTO+7
自分ができたんだからといって他人に同じことを求める人って、
同じことをもっとできる人に言われたら、才能のせいにすることが多いと思う。なんでだろう。
0627774ワット発電中さん
垢版 |
2020/07/25(土) 21:35:43.66ID:Z9aZAnUz
1個目は正規品でいいんじゃないの?
全部オープンなのに互換品締め出しとか
なんの話してんの?
理由は開発者の良心でしょう
0628774ワット発電中さん
垢版 |
2020/07/25(土) 22:27:37.57ID:n651kPOG
>>626
>自分ができたんだからといって
学ぶ、調べるができないなら無理、Arduinoなんかやめてどうぞ
0629774ワット発電中さん
垢版 |
2020/07/25(土) 22:47:04.26ID:EPwsmJiJ
中華のステマの気がしてきたぞ
>>621 で仮定の話をしたら俺自身の様に捉えてる
→日本語が不自由

ファームが書かれていないのを良品と主張
→日本では不良品、中華では良品

正規品を完全否定
→コピー大国の中華
0630774ワット発電中さん
垢版 |
2020/07/25(土) 22:50:41.49ID:u7yfTO+7
程度問題。できるかできないかじゃないだろね。
0631774ワット発電中さん
垢版 |
2020/07/25(土) 22:52:45.45ID:STKBoGxC
自分の手に負えないと不良品
で、都合が悪くなると中華呼ばわり

民度低いなあ>>ID:EPwsmJiJ
0633774ワット発電中さん
垢版 |
2020/07/25(土) 23:03:52.91ID:jwiNQhSO
1台目は正規品買え不良品が少ないから
互換機で不良品に当たったことねえし
ファームが書いてないのが3台て言ってる人いたろう不良品だ
それ不良品呼ばわりはスキル低すぎ
中華だ!中華だ!

可哀想な人
0636774ワット発電中さん
垢版 |
2020/07/26(日) 07:18:05.48ID:QOujk29c
匿名掲示板でステマが多いなんて当たり前だろうに
何をいまさら
特にArduinoやるような人は引っかかりやすそうだしな
0637774ワット発電中さん
垢版 |
2020/07/26(日) 07:21:02.50ID:QOujk29c
まあ、中華製はファームがかかれてないのを良品といってしまえるような品質ってことだ
初心者が手を出すものではないし、手を出しても失敗することも考えて行動しようね
0638774ワット発電中さん
垢版 |
2020/07/26(日) 07:31:45.38ID:QOujk29c
あと、Aliexpressは注文してから届くのに1、2ヶ月かかるからな
まともに動かないのが含まれてることを考慮して同じものを3個くらいは注文すべき
極端に安いけど、国内の業者とは使い勝手が違う
0640774ワット発電中さん
垢版 |
2020/07/26(日) 09:55:28.68ID:XkqEZOBy
アリでarduinoのch340ドライバ使わなくていいコピー品見掛けなくなったし
クローンも以前の二倍程度に値上げしたな
俺のpc、ch340使うクローンmegaにusb接続しながらシャットダウンさせようとすると
フリーズで完全に固まって電源ボタン長押しもやむなしなんだよね
0641774ワット発電中さん
垢版 |
2020/07/26(日) 10:03:06.33ID:XkqEZOBy
ブートローダーの事をファームと言えるなら最初から入ってないとまずいな
0642774ワット発電中さん
垢版 |
2020/07/26(日) 10:41:25.16ID:VAI7XCGI
Arduino互換機として売られてるならブートローダーが入ってないのは不良品だと思う
atmega328pのマイコンボードとて売られてるなら不良品じゃないと思うが・・・
なかには純正品の存在を知らない初心者もいるかもね
初心者に優しくできないならこのスレを開かないのが良いと思う
意味不明な質問をエスパーしたり、初心者に理解できる回答を考えるのが好きな人が回答すればいいんだよ(俺)
0644774ワット発電中さん
垢版 |
2020/07/26(日) 11:16:45.09ID:u140rkAO
クローンの話題が盛り上がってるついでに聞きたいんだけど、Nanoっていつの頃からかIDE内で旧式が(old)と区分けされたけど旧式と新型って機能的になんか違い有るの?

Nanoクローンってもれなく(old)だけど新式クローンって有るのかしら?
0645774ワット発電中さん
垢版 |
2020/07/26(日) 11:41:25.16ID:VAI7XCGI
>>644
気になって少し調べてみたら新・旧でブートローダーのサイズが違うっぽい
UNO R3なんかはNANOより後にでた製品らしく、ブートローダが新しくなってるみたい
NANO(旧)が2048バイトでUNOが512バイトっぽい
NANO(新)が無いので推測だけど512バイトに変わってるのかも
0646774ワット発電中さん
垢版 |
2020/07/26(日) 12:12:02.30ID:VAI7XCGI
新型のブートローダー書き込んでみたけど、ブートローダーの容量は2kBから変化しなかった
シリアルの速度が違うぐらい?( ↑新 ↓旧 )
Overriding Baud Rate : 115200
Hardware Version: 3
Firmware Version: 4.4
Vtarget : 0.3 V
Varef : 0.3 V
Oscillator : 28.800 kHz
SCK period : 3.3 us

Overriding Baud Rate : 57600
Hardware Version: 2
Firmware Version: 1.16
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us

NANO(旧)最大30720バイトのフラッシュメモリのうち、スケッチが924バイト(3%)を使っています。
NANO(新)最大30720バイトのフラッシュメモリのうち、スケッチが924バイト(3%)を使っています。
UNO   最大32256バイトのフラッシュメモリのうち、スケッチが924バイト(2%)を使っています。
0647774ワット発電中さん
垢版 |
2020/07/26(日) 12:30:16.23ID:o2sW5rXW
>>645
>>594 だけど、アマで買ったELEGOOのNANO3枚にブートローダが書き込まれて無かったから、USBaspのサイトを参考に、関連パーツを買って、書き込んだ
https://ht-deko.com/arduino/usbasp.html

でも、Arduino自体やICSP端子のことも分かって、とても楽しかったよ
Arduinoは、UNOはもちろんMEGAやPro Miniでも遊んでるし、関連サイトやブログが多数(世界規模だと無数!)あって玉石混交だけど、それはそれで面白いね
https://i.imgur.com/SeDthjU.jpg
0648774ワット発電中さん
垢版 |
2020/07/26(日) 12:31:44.69ID:VAI7XCGI
更に色々調べてみたら、NANOに新型のブートローダーを書き込んだら容量変化してたっぽい
コンパイル(検証)の時はブートローダーに関係のない容量が基準になってるっぽい
NANO(新)とUNOのブートローダーは同一の物だったので、512バイトで間違いないと思う
新型のローダーで1.5kBも容量が増えてとてもお得な気分(まあAVRの書き込み装置あるんだけど・・・)

旧 /bootloaders/atmega/ATmegaBOOT_168_atmega328.hex
新 /bootloaders/optiboot/optiboot_atmega328.hex
UNO /bootloaders/optiboot/optiboot_atmega328.hex
0649774ワット発電中さん
垢版 |
2020/07/26(日) 16:41:56.04ID:sDyfH409
>>639
まさにそれ
通販サイトでまともなセラーすら選べないんだろう
それって何について「初心者」なのかって話だけど、Arduino初心者として扱って欲しいらしい
必要な知識の検索すらできないのもArduino初心者だからってことらしい
全部>>642に任せる
0650774ワット発電中さん
垢版 |
2020/07/26(日) 16:51:12.03ID:9knC3LLz
328Pの載った互換機でわざわざブートローダ無しを作る方が面倒だろうね
載ってるチップが328PのクローンとかそもそもAVRじゃないとかなら可能性あるけど
0651774ワット発電中さん
垢版 |
2020/07/26(日) 17:32:18.58ID:WgvpMC6q
互換機はざっと20台以上買ったけどブートローダが書いてないのはひとつも無いな。
自分で飛ばして中華だからーとか言い訳してるだけじゃね?
お高い正規品を買ったらそんな言い訳もできないよねw
0653774ワット発電中さん
垢版 |
2020/07/26(日) 17:47:37.14ID:boieyM1B
>>648
詳しい調査ありがとうございます。
やっぱり違いはあるのですね!

そのうち新式の方にクローンも置き換わっていくのかしら・・・
0656642
垢版 |
2020/07/29(水) 01:09:27.75ID:Q+kYXwjv
>>649
よくわからないけど、任された!
技術力や知識力は無いけど、奉仕力で頑張る
0657774ワット発電中さん
垢版 |
2020/07/29(水) 14:32:22.87ID:51nyf0Ee
中華工作員がまだ暴れてるのか
いい加減スレチ
Aliや互換機の専用スレがあるだろ
0658774ワット発電中さん
垢版 |
2020/07/29(水) 14:41:08.79ID:51nyf0Ee
Aliexpressの工作員はArduino初心者をバカにして悦に浸ってるようだけど
Arduino初心者って中学生や高校生も多いんだぞ
あやしいAliexpressなんて勧めるなよ
Arduino互換機なら国内でだってそれほど値は張らないわけだが
いい年して、はした金を節約しないといけない貧乏人だってことか?
0659774ワット発電中さん
垢版 |
2020/07/29(水) 14:43:25.38ID:51nyf0Ee
今、Aliで注文したら届くのは9月か10月だぞ
年寄りにしてみれば1ヶ月、2ヶ月はすぐなんだろうがな
0660774ワット発電中さん
垢版 |
2020/07/29(水) 15:17:08.18ID:51nyf0Ee
みんながAliで買うようになったら日本国内にある電子工作のパーツ屋がどんどん潰れてくぞ
それで困るのは、結局、電子工作やってるやつら
0662774ワット発電中さん
垢版 |
2020/07/29(水) 15:23:31.48ID:EiS7tL8J
>>658
中学生くらいの子供に買い与えるなら
センサーとかいっぱいついてる3000円くらいのセットかなぁ
そして大いに破壊して雑な扱いしたら壊れるという事を学んでもらいたい
問題が発生したら一緒に考える
0665774ワット発電中さん
垢版 |
2020/07/29(水) 17:03:50.07ID:G7Ypk1kG
初めてのArduinoで純正品を買わないで動かない!詐欺だ!って叫ぶやつは初心者というよいか只のケチという気がしてならない
純正品にブートローダーが入ってなかったらそりゃもう何文句言ってもok
0666774ワット発電中さん
垢版 |
2020/07/29(水) 20:28:39.28ID:KCIMRWoi
初心者とか慣れてないやつなら純正買った方が無難だろうとは思う。
互換品は慣れてからでも良いんじゃね?
0667774ワット発電中さん
垢版 |
2020/07/29(水) 20:57:05.08ID:W/jm15QT
最初は正規品をって人は感情論に終始
挙げてる理由も全部否定されてる
0668774ワット発電中さん
垢版 |
2020/07/29(水) 21:05:55.38ID:ptYoo9Am
ブートローダーは自分で書き込むものだと思ってた
そんな俺の初めては秋月の奴
0670774ワット発電中さん
垢版 |
2020/07/30(木) 03:03:38.74ID:X4eJGY2o
>>668
俺も俺も
最初に間違ってLeo買ってなんか違うと気がついて何故かAE-ATMEGA買った
付属のFT232を取り付けしないでライタにしてLoder書き込んだ記憶がある
0671774ワット発電中さん
垢版 |
2020/07/30(木) 05:09:23.06ID:wTNGDy39
もう、ボードなんて買わないで秋月やAitendoでATmega328P買えばいいじゃん
自分でブートローダー書き込めない人は
ブートローダー書き込み済みの秋月やAitendoでATmega328P買えばいいんじゃね?
0672774ワット発電中さん
垢版 |
2020/07/30(木) 08:13:18.65ID:rTKRr089
Aliで安いのは中華チップのオンパレードだからな
それでも不具合はすごく少ないが
0673774ワット発電中さん
垢版 |
2020/07/30(木) 08:49:19.17ID:IfTnnrxW
もう、Seeeduino XIAOでいいんじゃね?
500円ちょっとでだいぶ安い、
いろいろ多機能でへんな互換機より便利
0675774ワット発電中さん
垢版 |
2020/07/30(木) 09:14:38.38ID:LH+ESgyv
>挙げてる理由も全部否定されてる
反対意見と否定は違うよね。
そういう観点もある、と言う話は出ているけれど、選択の余地のなく全部否定されるようなことってあったかな?
反対意見が出たことが肯定論の完全な否定であると考えることも、また感情的な行為だよ。

特に初心者は純正品を買う方が良いという考え方と、互換機で良いという考え方は矛盾なく併存できることなんだし排他的になる必要はないのにな。
0676774ワット発電中さん
垢版 |
2020/07/30(木) 09:17:42.75ID:LH+ESgyv
>ただADCが付いて無いのがイマイチ
え?
0678774ワット発電中さん
垢版 |
2020/07/30(木) 12:37:09.04ID:7ZuAb88s
>>666
同意
スキルが上がればブートローダー書き込みくらい分けないだろうけど、最初は何がなんだかわからない
いきなり中華は動かないときのハードルが高い
それでやめてしまうのはもったいないと思う
自分自身arduinoのおかけで電子工作のスキルが多少は上がったからなあ
ハードルの低さは半端な熱意の自分にはありがたい
0679774ワット発電中さん
垢版 |
2020/07/30(木) 12:54:05.45ID:8mETflVp
でも初心者が電子工作やるにあたってAmazonとかでスターターキット買って始めたりするからなあ
俺はネットで検索するクセが付いてるから全く困ることはなかったけど
0680774ワット発電中さん
垢版 |
2020/07/30(木) 13:14:51.59ID:j07ZLkFl
スターターキットはELEGOOかもしれんね。
0681774ワット発電中さん
垢版 |
2020/07/30(木) 13:26:02.09ID:j07ZLkFl
えれぐーのレッスンCD途中までやったけどね。
まあ最後までやれば何でも作れるようになるだろね。
そこまで暇じゃないけど。
0683774ワット発電中さん
垢版 |
2020/07/31(金) 02:32:18.26ID:Fh7brBAP
Elegooフィラメントは安くて普通に使えて良かった
再販してほしい
0684774ワット発電中さん
垢版 |
2020/07/31(金) 05:35:46.52ID:eBsEYuwe
ELEGOOはUSBシリアル変換の石にちゃんとATmega16U2使っていて
安いから好感もてる
0685774ワット発電中さん
垢版 |
2020/08/01(土) 13:26:35.69ID:FZVIJEab
こちらのURLのパワーパックを作ろうと思っているのですが

https://pwm.sigris-rabo.work/?page_id=199

線路出力の制御にリレーモジュールの省略されているので誰かそれの回路図を教えていただけないでしょうか?

なお使うリレーモジュールは汎用品になります
0686774ワット発電中さん
垢版 |
2020/08/01(土) 13:46:16.37ID:iRebmg3T
>>685
母線引き通し(線路出力制御用)リレーと方向指示リレーの事だと思うんだけど、それだったら
ArduinoNanoボードのD12=母線引き通し(線路出力制御用)、D13=方向制御
この2ピンからリレーモジュールの制御ピンに接続で良いかと
0687774ワット発電中さん
垢版 |
2020/08/01(土) 13:54:02.94ID:iRebmg3T
>>685
あと、URLの図面なんだけど、実際のNANOボードは3ピン有るんだけど
図面のソケットは28ピンしかないね・・・
上側の存在してないソケット分の2カ所がD12,D13です
0688774ワット発電中さん
垢版 |
2020/08/01(土) 13:57:02.53ID:ZL/BMcDQ
学術巨大掲示板群: アルファ・ラボ ttp://x0000.net
物理学 化学 数学 生物学 天文学 地理地学
電子 IT 工学 国語 方言 言語学 など
0689774ワット発電中さん
垢版 |
2020/08/01(土) 14:07:22.79ID:iRebmg3T
>>685
部品リストにリレー3個ってあるのにソースコードだとリレー2個しか使ってないから変だなて色々見てたら
https://pwm.sigris-rabo.work/?page_id=138
こっちのURLのソースコードだとリレー自体を使わなくなってるので、途中でリレー使うのやめたっぽい
0690774ワット発電中さん
垢版 |
2020/08/01(土) 17:16:47.33ID:dRLYZCgQ
>>689

ありがとうございます
もしよければ回路図や、可能であれば実体配線図の提示は可能でしょうか?
0691774ワット発電中さん
垢版 |
2020/08/01(土) 20:15:17.64ID:iRebmg3T
>>690
リレーが無くてもインバーター音を再現するパワコンとしては機能するので、まずリレー無で作ってみてはどうでしょう?
そこまで作業すれば↑の書き込みの意味を理解できて回路図・実配線図なしでリレージュールを何処に繋げばよいのか理解できると思う
それでもわからない場合は再び質問してみては?

追記事項(ちょっと気になった点をいくつか)
URLの回路図(nano互換基板のピンに対応)と書いてあるが実配線図は(秋月電子のPro Mini用)
実際のPro miniとは端子の位置が異なってる(K-10347で検索して説明書参照)
URLの回路では12Vから9Vを作ってるが12VをVinに入力するか5Vを5Vinに入力すれば動くと思う(省略可だと思う)
FETとマイコンの間にはダイオードしかないが、本来保護抵抗を入れるべき(容量性負荷の為)
0692774ワット発電中さん
垢版 |
2020/08/03(月) 07:05:44.20ID:bhEsg4P7
そういやさ、マイコンの出力だけで操作できるリレーってないの?

あったらすごい便利やん?
0693774ワット発電中さん
垢版 |
2020/08/03(月) 07:45:47.06ID:xuX0pky0
>>692
SSRは?
0695774ワット発電中さん
垢版 |
2020/08/03(月) 12:40:03.67ID:bhEsg4P7
>>694
そらモジュールならもちろんオッケーになるのはわかるんだけど、LEDくらいの電力で動くように電磁石スイッチってのは今の技術でも安くは出来ないもんなのかね…?と思って。

>>693
SSRも交流しばりあるからね…
0697774ワット発電中さん
垢版 |
2020/08/03(月) 14:03:03.07ID:0gLohmKr
これもトランジスタぽいのが見えるが…

ただこれでだめな理由は全くないな。
0698774ワット発電中さん
垢版 |
2020/08/03(月) 15:10:50.54ID:WrZy6mFa
通常のリレーだと小型の高感度タイプでも0.2Wくらい必要なので5Vなら30mA〜50mAくらい
リードリレーなら0.05Wくらいでも動作するものがあるから5V10mAくらいのもある
0700774ワット発電中さん
垢版 |
2020/08/03(月) 19:04:16.29ID:d1jlJj+d
>>699
COMは共通
NCはIN=LowでClose(COMとつながる)
NOはIN=LowでOpen(COMから切れる)
Highでは上の逆
0701774ワット発電中さん
垢版 |
2020/08/03(月) 19:49:22.56ID:30kfI14q
>>692
オムロンのG3VM-61CR1とか
東芝のTLP3543Aとか

3.3VのマイコンのGPIOでも10mA程取れれば10Aのスイッチングできるよ
もちろんDCのね(30Vか60Vまでだけど)
0702774ワット発電中さん
垢版 |
2020/08/03(月) 20:02:10.53ID:a6t6RU4X
DCでいいならPowerMOSFETと抵抗2本で55Aとかスイッチングできるじゃん
3.3VならVGS4Vまで引き上げる為にTr1個追加もしくは
VGS1V-3Vの低ゲートMOSFET使えばいいしさ
PWM駆動できるからモーター回転やヒーターの温度制御もなめらか
0704774ワット発電中さん
垢版 |
2020/08/03(月) 20:16:11.36ID:xuX0pky0
>>695
DC対応のSSRならいいのでは
0705774ワット発電中さん
垢版 |
2020/08/03(月) 20:17:45.45ID:xuX0pky0
>>702
絶縁が欲しいのかも
0707774ワット発電中さん
垢版 |
2020/08/03(月) 22:34:48.45ID:ixpDFPba
>>701
確かに、電磁パーツのスイッチングは小信号回路とアイソレートしときたいから、フォトリレーが良さそうね
0708774ワット発電中さん
垢版 |
2020/08/03(月) 23:15:23.09ID:vJWo4xIy
最近Arduino UNO Wifi Rev.2やArduino NANO EVERYなど328ではなくATMega4809を搭載したものを入手したのですが、CPUが変わったという事でタイマーライブラリのMStimer2が非対応な状況となっています。
これらATMega4809を搭載したArduinoでも使えるMSTimer2相当のLibraryはありませんか?

検索をかけて色々見て回っているのですがどうにも”328とはTimerの仕様が違うよ”的な記載ばかりでその運用について触れている記事を見つけることができませんでした。

よろしくお願いいたします。
0709774ワット発電中さん
垢版 |
2020/08/04(火) 02:13:23.76ID:obWxUhVQ
>>708
酔っぱらってるし、実機無いから未検証だけど、代用のコード書いてみた(短いからコード用のアップローダ使わず直書き)
まあ、多分動かないけど、こんな感じの手段が有る程度に思ってくれ(PIC以外のコードをまともに書いたことない( ^ω^)・・・)
TCB0,1,3でも良いのかな?(思考停止なので2を使ってみた)
void setup() {
TCB2.CCMP = 0x4E1F; //クロック20MHzの場合に1ms毎にタイマー割り込みを発生
TCB2.INTCTRL = 0x01; //割り込み設定ON
TCB2.CTRLA = 0x01; //タイマー起動
}
void loop() {
}
ISR(TCB2_INT_vect) {
const uint16_t RunMilliSecond = 100; //100msに1回実行の場合
static uint16_t CurrentCount = 0, PreviousCount = 0;
if (CurrentCount - PreviousCount <= RunMilliSecond) {
PreviousCount += RunMilliSecond ;
//実行するコード
}
CurrentCount++;
}
0710774ワット発電中さん
垢版 |
2020/08/04(火) 02:50:30.91ID:obWxUhVQ
>>709
ISRの最後にTCB2.INTFLAGS = 0;必要だと思う
もしくはTCB0.INTFLAGS = TCB_CAPT_bm; かも
0712774ワット発電中さん
垢版 |
2020/08/04(火) 03:46:19.87ID:wdGze6q5
自分の場合、Arduinoの電子工作は10種類(UNO, MEGA, PRO MINI, NANOの互換機)くらいしか経験無いけど、比較的新しいとは言え、市場に出て2年くらい経ってるチップの関数ライブラリが、本家のIDEに入って無い例って、けっこう多いの?
0713774ワット発電中さん
垢版 |
2020/08/04(火) 04:48:29.57ID:CchelQT3
外部の割り込み入力からarduino unoを復帰させる時、どのような方法が一番待機電力を少なくできるでしょうか?arduinoだとスリープ中でも結構待機電力ありますので、ESP8266にディープスリープ+トリガー待ちさせておいて、ESP8266が目覚めた時にトランジスタでarduino unoに電力供給する?
0715774ワット発電中さん
垢版 |
2020/08/04(火) 10:07:56.88ID:RI0/uDOL
しょせんArduinoなんて他人の褌で相撲とってる二次創作みたいなもんだ
日本的メーカー対応みたいなもんは期待しちゃあいけない
0716774ワット発電中さん
垢版 |
2020/08/04(火) 14:42:20.22ID:CchelQT3
>>714
ありがとうございます。これってGPIOからの割り込みでの起動に対応してるのでしょうか?ESPならライトスリープとかで、割り込みで復帰させられるようなのですが。
0718774ワット発電中さん
垢版 |
2020/08/04(火) 15:48:43.92ID:1G6bhwKh
>>716
基本のSleep ModeはPower-DownのようなのでINT0やINT1で割り込めるんでは?
試してみて教えてください。
0720774ワット発電中さん
垢版 |
2020/08/04(火) 21:00:51.81ID:xylZtSCf
>>709
いただいたソースコードをもとに試しでLチカを想定したコードを作成したところ
どうにもタイマーを起動するとタイマーの内容のもの以外がすべて機能しなくなるようで…

Arduino標準のBLINK(D13)とタイマーチカ(D7 プログラム内LEDAに相当)の
同居想定として作成してみました。

https://pastebin.com/i3QBKtec

これを起動するとloop内のものが一瞬だけ動いたかと思うと最初のタイマーが反応して以降
帰ってくることはなく結果的にBLINKは最初の点灯だけは起こり、その後機能せずタイマー内の点滅(LEDA)だけが点滅しました。

また、RunMilliSecondが100msではちょっと早すぎると思い2000にしてみても
減速はされず2000msとは程遠い速度で点滅しました。

>>711
こちら、サンプルコード自体は機能いたしました。
ものすごい多機能そうで理解できるまでちょっと時間かかりそうですが(汗
とりあえずサンプルコードの機能そぎ落としをしながら理解を進めたいと思います。


この4809を使ったArduino 価格は安いのですがUNOやNANOとはやはり大きく違うという事を思い知らされています・・・
0721774ワット発電中さん
垢版 |
2020/08/04(火) 21:39:01.13ID:5I5zF6uz
正規品買う気のない俺はAliで互換機見つけたと思ったら4808だった
とりあえず無印Nanoで足りてるしもうしばらく待つわ
0722774ワット発電中さん
垢版 |
2020/08/04(火) 21:48:37.85ID:ozm1pYih
>>720
今見たら色々間違ってましたね
ifの<=逆でした
× TCB0.INTFLAGS = TCB_CAPT_bm;
○ TCB2.INTFLAGS = TCB_CAPT_bm;(TCB2.INTFLAGS = 0;と被る)
まあ、他の方の情報のライブラリでいいと思います
0723おっさん
垢版 |
2020/08/05(水) 13:56:44.69ID:gBOjK4Cm
あるセンサーから測定値を取り出したいと考えています。
図面を見るとセンサーからのコネクタはRS485となっていたので
AMAZONで『KKHMF MAX485 RS-485 TTL−RS-485モジュールコンバータ』を購入しました。
ハッキリ言ってARDUINOではセットに付属されていたモノで遊んだ程度の知識しかありませんのですが、
見よう見まねで以下を作ってみたのですが何も検出されません。
ご指導いただけないでしょうか


#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX
#define PIN_RTS 13

void setup(){
Serial.begin(9600);
mySerial.begin(9600);
digitalWrite(PIN_RTS, LOW);
int test = 0;
}

void loop() {
mySerial.listen();
test = mySerial.read();
Serial.println(test, DEC);
delay(100);
}
0725774ワット発電中さん
垢版 |
2020/08/05(水) 17:08:30.14ID:OlZDXTJ0
RS485はコマンド送ってアンサー待ちしないといけない
複数つながる可能性があるから局番指定したり
チェックサム生成したり面倒臭い
2線式と4線式があって2線式だと自分の送ったコマンドをそのまま受信するからそれを除外しないといけないし
それをSoftSerialでやろうとすると更に難易度が上がるよ
0726774ワット発電中さん
垢版 |
2020/08/05(水) 19:12:26.69ID:CwSaQ5AQ
PIN_RTS は、RE DE の両方に繋いでるのかな。
それならDEのときにREをディセーブルすることになるし、自分の送ったコマンドは受けなくてすむかな。
485でも垂れ流しでデータ送ってくるように設定できるものもあるけど、センサーマニュアルを見ないとなんとも。

ところで>>723のモジュールだけど、DEがプルアップされていたり RS-485が2線とかデリカシーを欠くような設計。
0727おっさん
垢版 |
2020/08/05(水) 20:01:36.62ID:cmxVoe24
返信が遅れてしまい申し訳ありません。

>>724さん
そのとおりですね。センサーは

https://www.optex-fa.jp/products/dsp_sensor/cd22/

これのRS485版になります。
センサー自身に表示されている数値を手元で確認できるようにしたいと考えています。

>>725さん
2線式のコネクタが仕様されています。
今、手元にはセンサー単体のみで接続コネクタもない状態です。センサー片手に秋葉原を聞いて廻ったのですが手に入れる事ができず、コネクタに直接ワイヤーを繋いでいる状態です。


>>726さん
RE DEともに13ピンに繋いでいます。
モジュールについては色々と教えていただきたいです。
0728774ワット発電中さん
垢版 |
2020/08/05(水) 21:29:00.35ID:OlZDXTJ0
>>727
FA用のセンサーって事は工場で仕事に使うものを初心者スレで質問してるのかな?
工場でarduinoやラズパイって見たことないけど

工場で使うんだったら盤屋に依頼するのがいいんじゃないか?
CC-Link用のがあるんだから三菱のPLCですぐできるでしょ
0729774ワット発電中さん
垢版 |
2020/08/05(水) 23:07:44.37ID:oYjST5U7
>>727
まずそのサイトでマニュアルダウンロードしたら?
そもそも電源入れただけじゃ通信してないんじゃないの
0730774ワット発電中さん
垢版 |
2020/08/05(水) 23:25:27.72ID:kUZCLsv3
>>723
そのセンサーの仕様書読んでみたけど
センサーの設定が有ってる(9600bpsに設定)として、まずRS485モジュールを扱うコードが必要だと思う(送受信設定等)
さらに、データを読み出すにはArduino側から読み出し命令を出し、それの返信としてデータを受信する必要がある

CD22 シリーズの通信仕様は以下になります。
通信方式 EIA RS-485 準拠(半二重:局番設定によるマルチドロップ接続には非対応)
伝送コード バイナリ データ長 8bit ストップ長 1bit パリティチェック なし
ボーレート 9.6k/19.2k/38.4k/57.6k/115.2k/230.4k/312k/460k/500k/625k/833k/920k/1.25M (bps)
ヘッダ / データ区切り STX / ETX 
■ コマンドフォーマット
送信コマンド : STX (コマンド) (データ 1) (データ 2) ETX BCC
受信コマンド(成功) : STX ACK (返信データ 1)(返信データ2) ETX BCC
受信コマンド(失敗) : STX NAK (エラーコード) 00H ETX BCC
   ※ STX(02H)、ETX(03H)、ACK(06H)、NAK(15H)、BCC は網掛け部の XOR 演算結果
コマンドの種類 : C(43H) 個別機能コマンド
W(57H) 設定の書き込み(Write)
R(52H) 設定の読み出し(Read)

判定結果読み出し 送信 B0h 02h 返信 00h (判定結果)
bit:0 = 1 の時 判定出力 ON bit:4 = 0 の時はそのデータが既読であることをします
0731774ワット発電中さん
垢版 |
2020/08/05(水) 23:47:41.32ID:ShwXW6pD
>>730
あんた親切だなあ
それともすでにメンバー登録してあった?
興味本位で言ったけど面倒だからやめたわ
0733おっさん
垢版 |
2020/08/06(木) 00:45:28.45ID:sjKiJsBs
>>730さん
本当にありがとうございます。
>>727さんから「RS485はコマンド送ってアンサー待ちしないといけない」とありましたので、読み飛ばしていた仕様書の当該箇所をアナログ人間がわからないなりに解読しようとしています。これから色々試してみるつもりです。


>>731さん
もっともだと思います。
私は購入時にメンバー登録していましたが、メンバー登録が必要にもかかわらず安易にセンサーのサイトを貼ったことを反省しています。
不快な思いをさせてしまい申し訳ありませんでした。
0734774ワット発電中さん
垢版 |
2020/08/06(木) 01:10:35.91ID:dQgB9h/W
>>733
730です
想像ですが、予想した手順を記載します(RS485の通信したことない)( ^ω^)・・・
1.MAX485の出力ピンを出力ONに設定(DEをLOW>HI)
2.Serial.write(0x02);,Serial.write(0x57);,Serial.write(0xB0);,Serial.write(0x02);
Serial.write(0x03);,Serial.write(0xE6);(でたらめです)
3.Serial.flush()
4.MAX485の入力ピンを入力ON(REをHI>LOW)に設定(もしかしたら入力常にONでもOKかも)
5.MAX485の出力ピンを出力OFFに設定(DEをLOW)
6.データを受信

>>731
なんかネットで拾った
0736774ワット発電中さん
垢版 |
2020/08/06(木) 01:11:53.44ID:qXJLsa1c
6万もするセンサーポン使うのにデータシートすら読んでないとか
何かすげえな
おいらとは別世界の人だわ
0739774ワット発電中さん
垢版 |
2020/08/06(木) 01:33:33.78ID:agsyJYCi
あ、ちゃうか
ロジアナでもつないどきゃ出力はチェックできるな
面白そうではある
0740774ワット発電中さん
垢版 |
2020/08/06(木) 01:35:36.32ID:agsyJYCi
でもじっちゃんがセンサーはIICかSPIだけにしとけって言ってたからやめとこう
0745774ワット発電中さん
垢版 |
2020/08/06(木) 06:53:48.82ID:t89/X9dv
RS-485のインターフェース基板で2端子しか付いてないものって、安心して接続できるのは共通グランドが期待できる範囲だけだよな。
0746774ワット発電中さん
垢版 |
2020/08/06(木) 07:53:58.62ID:/RdpEj1Q
そういえば、昔どこかのスレでRS485をA、Bの2線にするか、
A、B、GNDの3線にするかの大論争があったな
0748774ワット発電中さん
垢版 |
2020/08/06(木) 11:13:35.23ID:dQgB9h/W
>>747
どちらともいえない、運用方法や状況、考え方によって変わると思う
RS-485は2線(or4線)で通信することを前提として考えられた規格だと思うのだけど
2線通信で不具合が発生する場合の対処の1つがGNDを接続する方法だと思う
(また外部ノイズを減少される目的でのシールドとGNDを接続する事と別に考えたほうが良いと思う)
機器A−機器Bで通信するとして、電源が絶縁されてれば問題は起こりにくいと思う
また、電源が共有の場合でも、通信側を絶縁すれば問題は起こりにくいと思う
多分業務用の高い機器は電源も通信も絶縁されてる可能性が高い気がする(←そんなの持ってないよ・・)
GND接続の有無で通信に問題が有る状況だとしたら、GNDを接続する以外の手段で問題を解決した方が良いと思う
0749774ワット発電中さん
垢版 |
2020/08/06(木) 11:18:08.64ID:V8nKybkJ
>>745
RS485はA-B間の電位差で信号を送るのでGNDとは直接関係無いんじゃないか?
GNDはコモンモードノイズ対策のシールド線用でGND間の電位差が問題になる様な場合は片側のシールドを浮かすだろうし
0750774ワット発電中さん
垢版 |
2020/08/06(木) 11:35:29.56ID:t89/X9dv
RS-485インターフェースICのメーカーの資料を提示して議論するべき。
0752774ワット発電中さん
垢版 |
2020/08/06(木) 13:45:07.71ID:zReUPyp0
部屋の換気具合を知りたいのでCO2センサーモジュールを買おうと思てるんだけどArduinoで使いやすいおすすめある?
0755774ワット発電中さん
垢版 |
2020/08/06(木) 23:46:38.77ID:9X+QUB86
>>752
最低、アナログ出力かシリアル出力が付いてればいいんでないの?
ノイズのこと考えると、シリアルが1番かな?
センシング面での性能は分からんわ
0756774ワット発電中さん
垢版 |
2020/08/08(土) 07:27:15.26ID:zFGmnYK/
ARMとかRISC-Vだとavr/pgmspace.hにあるpgm_read_byteとか使わなくても
直接、プログラム領域にある変数とか配列読めるんだね
Arduinoの作法としてはavr/pgmspace.hにある関数群使うのがいいのだろうけど
0757774ワット発電中さん
垢版 |
2020/08/08(土) 11:26:30.72ID:3OmqZVpQ
それはArduinoの作法じゃなくて搭載してるマイコンAVRの仕様なんで・・・マイコンのデータシートや命令セットを読んでもろて
ちなみにAVRでも最新のmega0とかtiny1とかAVRDAシリーズだとLPM命令を使わなくてもLD命令でアクセスできるぞ
0758774ワット発電中さん
垢版 |
2020/08/08(土) 21:53:24.65ID:c5JF+g9Z
不注意で328Pじゃなくて168Pがのったnano互換ユニットを買っちゃったが、(4枚) 168Pの方が良いことって1つでもある?
0759774ワット発電中さん
垢版 |
2020/08/08(土) 21:56:40.76ID:3OmqZVpQ
マイコン的には容量が少ない以外の差がない ので値段が安いのであればそこだけ
0760774ワット発電中さん
垢版 |
2020/08/09(日) 03:06:38.40ID:YPAdskZ6
>>759
ありがとうございます。
やっぱりそうですよね。
失敗しちゃったなぁ。
0762774ワット発電中さん
垢版 |
2020/08/09(日) 23:26:01.30ID:YPAdskZ6
>>761
いや、すでに目の前にあって、実際メモリ不足で書き込めないスケッチがあった。軽い目的に回そう。
0767774ワット発電中さん
垢版 |
2020/08/12(水) 02:25:11.35ID:3cDz/9fL
やすりで削ってレーザー刻印だから消しゴムじゃ消えないぞ
全額返金で168Pが無料で手に入るチャンスだけどそういうのは無いなw
チップ単体だとTiny12の刻印削ってTiny85として売ってるのはよく見かける
動かないとかチップIDが違うといえば返金してもらえる
0768774ワット発電中さん
垢版 |
2020/08/12(水) 10:34:08.48ID:Dw8Xx6vV
ひでえな中華
50円の詐欺のために50円のコストかけてないか?
0769774ワット発電中さん
垢版 |
2020/08/12(水) 11:41:19.07ID:vVOY7Dqt
>>768
販売先に日本が多いと、評価が上がるとか、日本人は余り文句を言わないで諦める奴も多いとか?
0771774ワット発電中さん
垢版 |
2020/08/13(木) 06:01:17.62ID:o12y0wFX
Aliexpressで買って届くまでに1ヶ月、2ヶ月待った挙句にそれが偽者だったらショックだよなw
0772774ワット発電中さん
垢版 |
2020/08/13(木) 07:39:35.43ID:/35kYQvX
さいきん10日くらいで届くようになってきた
0774774ワット発電中さん
垢版 |
2020/08/13(木) 09:56:16.20ID:54CFqnyS
https://forum.arduino.cc/index.php?topic=699473.0
AVRDAシリーズのコアが仮完成したみたいだ

https://www.microchip.com/wwwproducts/en/AVR128DA28
VCC=1.8Vでもフルスピード24MHzで動く今年発売したばかりの最新のAVRマイコンだ
tiny1シリーズやmega0シリーズに順ずる高性能な周辺機能を装備のうえ、ADCが12bitだったりDACが10bitだったりパワーアップしてる
命令セットは↑から変わってないので何時も通り使える上に、push命令とsbi命令とcbi命令のマシンサイクルが2から1に短縮され割り込みルーチンなど高速化
ROM128k/RAM16kの大容量でEEPROMもアリ、なんと28pin仕様にはDIP版もあるぞ!
0775774ワット発電中さん
垢版 |
2020/08/13(木) 10:14:28.19ID:CNTX7rkP
まあ、届いただけマシだと思わねば
何ヶ月も届かず、注文したことすら忘れて、
そのまま闇に消えていった注文品がいくつもある
0778774ワット発電中さん
垢版 |
2020/08/15(土) 21:52:40.28ID:+8PpU1Je
素人ですが質問させて下さい。
CH340シリーズのUSB変換モジュールで、USBからの5Vを給電しつつ信号レベルを3.3Vにするにはどうすればいいでしょうか?
少なくともCH340のVCCに3.3Vを入力する必要があるのですが、CH340の3V3端子とVCCをショートさせるみたいな話もありましたが、データシートを読んでも具体的にどうすればよいかわかりませんでした。

実際には↓のCH340Eが実装されたこのモジュールを使ってます。3.3Vという記載がありますが3.3Vで使う方法の記載はありません。
https://m.ja.aliexpress.com/item/33041987984.html

5V/3.3V切り替えができるモジュールもありますが、あれはチップのVCCへの入力前に5Vとは別に3.3Vへ降圧している?
そもそもCH340の3V3端子の使い方(用途)が不明です…
0781774ワット発電中さん
垢版 |
2020/08/16(日) 01:54:23.11ID:7teaR4JZ
>>779
ありがとう。私が見てたのはこちらですが内容的には同じですね。
https://www.mpja.com/download/35227cpdata.pdf

やっぱりUSBの5VをそのままCH340に使ってシグナルを3.3Vにするのは無理ぽいですね…
CH340のV3ピンは、5V給電時は3.3Vが出力されるので、チップ内で3.3V生成してるのだから、それなら5V動作時でも3.3Vで通信するモードがあってもいいのにと思ってしまった。
CH340積んでV5/V3.3切り替え付きのモジュールは、よく見ると別途レギュレターチップ積んでてそこで3.3V作ってるみたいでした。
素直に3.3V対応のUSBシリアルを買ってきます。

せっかくCH340単体で3.3V供給してるのになんか使い道無くてもったいないなぁ
0782774ワット発電中さん
垢版 |
2020/08/16(日) 02:00:15.42ID:9o/GovX2
USBシリアルなんて頻繁に買うものじゃないし
安さに釣られずおとなしくFTDIの買ったらええ
ワイは秋月で5V/3.3V切り替え可のやつ買った
0784774ワット発電中さん
垢版 |
2020/08/16(日) 03:58:53.70ID:NpkK4fjc
最悪だ
新しく買ったDUEに載ってるch340gにブートローダーが入ってないみたいだ
しかもこのボードicspピン付いてないし
Nativeポートは使えるけどProgrammingポートが全くデバイス認識されない
今度からicspピンついてる16U2が載ってるボードのみにしとこ
0785774ワット発電中さん
垢版 |
2020/08/16(日) 09:07:42.02ID:7teaR4JZ
>>783
ああ、なるほど!
CH340の3.3Vは自身のコア動かすためにあるのか!

>>782
はい、そうします(笑)

勉強になりました。
0786774ワット発電中さん
垢版 |
2020/08/16(日) 09:17:10.64ID:wvTH9f4z
>>784
CH340G自体にブートローダーって要る?
0787774ワット発電中さん
垢版 |
2020/08/16(日) 11:36:18.68ID:5lKcH6N8
aliで5vのprominiまとめて買ったんだけど、5v16mhzで書き込むと動作速度が半分になる。
3.3v8mhzで書き込むとオッケー。

間違えたんかなこれ?

ただ3.3v8mhzのやつでも、raw端子に繋げば5vで動かしてもいいんだよね?
確か12vくらいまで対応していると読んだことあるし。
0789774ワット発電中さん
垢版 |
2020/08/16(日) 12:54:45.54ID:y4+pmmSd
>>787
とりあえず OD しましょう。

耐圧はレギュレーターによるんじゃないのかな?
ヒューズリセットに12v使うので、チップ自体は壊れないだろうけど、
レギュレーターによっては、香ばしいことになるかも?

https://ht-deko.com/arduino/promini.html
ここの写真を見る限り、うちにある 5v版 だと思ってたものも全て 3.3v かも?
ずっと普通に 5v で使ってるわ。
0791774ワット発電中さん
垢版 |
2020/08/16(日) 19:08:53.44ID:NpkK4fjc
>>786
要らんのか?良く解からんが
ch340gに原因がある事は確かだ
0792774ワット発電中さん
垢版 |
2020/08/16(日) 20:49:31.44ID:ToDaud7V
ブートローダーを何だと思ってんの?
CH340Gはマイコンじゃねえぞ
0793774ワット発電中さん
垢版 |
2020/08/16(日) 22:57:08.49ID:CXIwVcEz
CH552Gはマイコンです。
USBのほか、UART、ADC、アナログコンパレータ、タイマ、PWM を装備し、
CH340Gのように働くことができます。
0794774ワット発電中さん
垢版 |
2020/08/17(月) 01:08:25.52ID:z2plY6r8
>>792
止めたれ
勘違いして恥ずかしいのは、本人が1番分かってるのに、そういう傷口に塩を塗る様なことは
0795774ワット発電中さん
垢版 |
2020/08/17(月) 03:46:46.35ID:rDyAt7W1
では16U2は?
0796774ワット発電中さん
垢版 |
2020/08/17(月) 09:09:03.35ID:Oj0PccPL
>>795
16U2はマイコンとして売られているもの。
ユーザーがプログラムを書き込むかあるいは、メーカーにプログラムを書き込んで出荷するように要求されるもの。
CH340Gは、USB-シリアルのブリッジとして売られているものなので、16U2と同じようには考えられないと思う。
(MCP2200の中身がPIC16F1459でも、MCP2200をマイコンとは言わない。FT232もたぶん中身はマイコン)

CH340Gが動作しないなら、もしかしたら本当に中身がマイコンで、プログラムのミスなのかもしれないけれど
外面的には、部品としての不良とみなして考えるのが自然だと思う。


電子工作をする一般エンドユーザーから見れば、
16U2が動いてなさそう…
16U2用のプログラムを書き込んだら治るかも
ハード的に破壊されているなら、少なくとも 16U2を載せ替えて、その上で16U2用のプログラムを書き込む必要がある。

CH340Gが動いてなさそう…
パターンやほかの部品に問題がないなら、CH340Gを載せ替えれば動くはず。

なんにせよ、>>784を書いた人のの主旨は「CH340Gが不良らしい」ということなので「ブートローダー…」はもういいよね。
0797774ワット発電中さん
垢版 |
2020/08/18(火) 23:16:45.57ID:2ssJrpkT
数年前に書いたスケッチを、久しぶりに改造しようかと思ったら、
PROGMEM prog_uchar hehehe[] の宣言が通じなくて、
コンパイル通らなくてあせった。
こんな時代なのね。
const char hehehe[] PROGMEM
プリプロセッサにしても意味不明な、、、
0798774ワット発電中さん
垢版 |
2020/08/19(水) 08:18:21.87ID:oUw0VpPB
PROGMEMの部分は__attribute__ ((progmem))だからね
だから宣言ではこうなってることになる
const char hehehe[] __attribute__ ((progmem))

するとprogmemというコンテキスト名で領域が確保される
0799774ワット発電中さん
垢版 |
2020/08/19(水) 08:26:50.37ID:oUw0VpPB
インラインアセンブラでこうしてやるとバイナリファイルをprogmemとして確保できるらしい

https://pastebin.com/nuPfavZ1

使い方はhogehoge.binがバイナリファイルでHOGE01がそのデータに割り当てたいシンボル名として
C言語で
IMPORT_BIN("hogehoge.bin", HOGE01);
extern const uint8_t HOGE01[];
とやればいいらしい
0800774ワット発電中さん
垢版 |
2020/08/19(水) 08:47:59.00ID:oUw0VpPB
間違えたコンテキスト名じゃなくてセクション名ね
progmemって要するにセクション名をprogmemにしてるだけっぽいよ
0802774ワット発電中さん
垢版 |
2020/08/19(水) 12:05:50.28ID:oUw0VpPB
実際にteensy4.0で試してRGB565の画像データファイル>>799でインポートして
LCDに表示できた
画像データはGIMPでCソース形式で保存するとRGB565に変換できるので
それをバイナリデータとして書き出す自作プログラムを作成
Arduino IDEではファイル名は絶対パスで指定しないとエラーが出たよ
0803774ワット発電中さん
垢版 |
2020/08/19(水) 12:59:20.62ID:xUkHyJPc
そういうのできちゃう人って
神様にしか思えないんだが
何がどうなってるんだろう
0804774ワット発電中さん
垢版 |
2020/08/20(木) 02:32:40.86ID:giZ5hrAX
ほんとに好きで勉強(・・・というか勉強しようと思ってやるんじゃなく好きで学ぶというか・・・勝手に調べる)してずっとやってりゃそのうちその神様とやらになれるよ
0805774ワット発電中さん
垢版 |
2020/08/20(木) 19:22:22.05ID:8qEcqUzL
pro microの3.3V/8MH版、USB/HIDなスケッチをテストしてて、ボード設定Leonardoで書き込んだら死亡しちゃった
これってbootloader焼きなおせば復旧するのかな? ちょっとすぐ試せないのでわかる人いたら教えてください
0806774ワット発電中さん
垢版 |
2020/08/20(木) 19:39:22.55ID:tTPb70mC
物理的に壊してなければ正しいスケッチとヒューズ設定にすればおk
0808774ワット発電中さん
垢版 |
2020/08/21(金) 18:43:23.80ID:B4smGZm+
>>805
書き込みをWindows上で行っているならば、pro microをH/Wリセットした直後に
ハードウェアマネージャでBootLoader用のCOMポートがが見えるようならば
IDEでブートローダを書き込めば直るかも
BootLoaderが見えない場合にはICSP経由でBootLoaderを書き込む
それでもダメだとわかんない
0809774ワット発電中さん
垢版 |
2020/08/21(金) 18:57:12.84ID:gUV1usUn
一度書き込めて二度目から書き込めなくなったときはこれ試してみて

612 名前:774ワット発電中さん[sage] 投稿日:2019/12/06(金) 20:41:59.26 ID:9sDeXhF9
>>609
リセットの手順ちょっと違った
pro miniの場合だけどこんな感じ
参考にしたページのアドレス貼れないからコピペ

Arduino Pro Mini側のリセットボタンを押しながら、
Arduino IDEのアップロードを実行し、
FTDI-USB変換ボードのTXが光った瞬間に、
Arduino Pro Mini側のリセットボタンを離す。
0810774ワット発電中さん
垢版 |
2020/08/21(金) 23:07:39.40ID:1pzV0KtY
俺のArduinoなんかブートローダ書き込み後1回目はスケッチ書き込めて
2回目からは書き込めない
そしてまたブートローダを書き込むとやはり次の書き込みは成功して
その次は失敗する
ゴミ
0811805
垢版 |
2020/08/22(土) 07:50:49.14ID:K//t8YpT
805です。コメントありがとうございます。Fuseビットは変わってなくbootloader書き込み直しだけでで復旧できました。

中華ProMicro2種(5V/16MHz、3.3V/8MHz)があって付け替えて試していたところボード設定を間違えました。
5V/16MHz⇒Leonardo、3.3V/8MHz⇒Liliypad USBと設定しておかないとおかしなことになっていたようです。

あとHIDなスケッチは曲者ですね。スケッチ書き込み後にCOMポート見失ったり、ポート番号が変わったりすることがあります。
環境はwin10ですがCOMポートがスゴイ勢いで増えていってます・・・いらないの消さないと・・・
0812774ワット発電中さん
垢版 |
2020/08/23(日) 07:17:56.26ID:sIJ7Fw4z
>>811
> あとHIDなスケッチは曲者ですね。スケッチ書き込み後にCOMポート見失ったり、ポート番号が変わったりすることがあります。

HID と COM が混在するのが難しいのですかね?
vUSB 関連を昔にいじったけど、結局、STM32 に落ち着いた。
STM32 も HIDデバイス にすると COMポート を見失うけど、
スケッチ書き込み時に、リセットを押すだけなので、そんなに困ってない。
micronucleus 搭載の Tiny85 も、それなりに癖はある。
0813774ワット発電中さん
垢版 |
2020/08/23(日) 16:38:49.67ID:rpPB0WUf
HIDでCOM見失うって良く見るけど、HIDモードが使えるやつはブートローダモードの
時しかスケッチ書き込めるCOMが見えないだけじゃないのかな
AT32U4(Pro Micro互換ボード)はH/Wリセットして8秒間だけスケッチが書き込める
COMポートが見えるようになる動作が普通みたいだけど
ブートローダー書きこんだ直後しかスケッチ書き込めないってやつも、IDEで書き
込むとき、書き込み開始してからタイムアウトするまでにH/Wリセットかければ
書き込めると思うけど
0814774ワット発電中さん
垢版 |
2020/08/23(日) 17:49:11.57ID:85oLwZpr
OTGと給電が共存出来ないAndroidタブレットを4Gモデム代わりに使ってArduinoに簡単な
信号を送る場合、イヤホンジャック経由で通信するのが簡単ですかね
0815774ワット発電中さん
垢版 |
2020/08/24(月) 03:00:41.63ID:TVDVmhG+
>>813
> HIDでCOM見失うって良く見るけど、HIDモードが使えるやつはブートローダモードの
> 時しかスケッチ書き込めるCOMが見えないだけじゃないのかな

それですよ。ただコンパイル終了時にタイミング良くリセットしないといけなかったり
シリアルモニタ開けなかったりするのが、見た目からすると不安定だったり、
COMポート が見失うという表現になる。
0816774ワット発電中さん
垢版 |
2020/08/25(火) 20:00:25.57ID:3ENwhmyY
Arduino nano every(ライターATSAMD11D14Aと分離したもの) をPCBAで作りたいと思っています。
https://www.avrfreaks.net/forum/how-burn-firmware-nano-every-bare-pcba-board
よさげな情報がありました。

Nano every:
ATSAMD11D14A bootloader : help to reprogramme D11 firmware;
ATSAMD11D14A firmware : simulate USB device,write arduino sketch to ATMEGA4809.

4809 bootloader : needn't
4809 firmware : any sketch you burn to it through Arduino IDE

という事が書いてありましたが、これって、ATSAMD11D14Aを考えれば、
実装された生の4809にUPDI書込みが可能だという事ですよね。
それで、もしも先人で成功されている人がいらっしゃったら、
真似させてもらおうと思っています。

どなたか、いらっしゃいますか〜?
0818774ワット発電中さん
垢版 |
2020/08/26(水) 13:32:54.32ID:2EreZomW
ぷろみにって「スケッチを書き込んでいます」が出た瞬間にリセット押して書き込むのが当たり前だと思ってた。

DTRのない4線のシリアルケーブルしか持ってないから…
0819774ワット発電中さん
垢版 |
2020/08/26(水) 23:28:37.00ID:U74fkIJ5
はんだごてが苦手なので、Seeeduino XIAO の
ピンを30セット分誰かに依頼したいです。。。
0821774ワット発電中さん
垢版 |
2020/08/27(木) 06:49:19.00ID:e17oAGXU
やりはじめたら途中で苦手ではなくなると思う。

だから、何かで練習するのがおすすめ。
適性次第で練習してもできない人はいるけどね :-P
0824774ワット発電中さん
垢版 |
2020/08/27(木) 12:24:32.06ID:rFA2i7rY
自分でピンヘッダを何度かやったけど、すっごく汚いんだわ。たまに接触していなかったり。youtube見てると感心するわ。ルーペ付き半田ごて台って初心者にいいかな?宙に浮かせての作業はむしろ難しくなりそうだけど。手先の器用さは普通だお。一応、安い温度設定コテは尼に注文した。
ほんと、誰かにやってほしい。。。
0825774ワット発電中さん
垢版 |
2020/08/27(木) 12:30:44.20ID:9e8ZgKws
趣味で20年以上安いコテを使っていて、最近温度調整コテ買ったら使いやすくて驚いた
濡らして温度下げて調整しなくていいのでホント楽
はんだ付けで悩んでいる人には救いの神だと思います
0826774ワット発電中さん
垢版 |
2020/08/27(木) 12:59:10.36ID:ThnPwTEo
ホムセンに売ってるような安い温調コテでも十分
適正温度にするだけで全然違うよ
温度はマジ大事
0827632
垢版 |
2020/08/27(木) 13:16:51.35ID:gTWGCzRg
ほうなん?
ハッコーのブースト付きのやつしか使ったことないけどそれとは違うよね。
どんな風に使いやすいん?
0828774ワット発電中さん
垢版 |
2020/08/28(金) 14:03:14.17ID:koz9K3VS
最近買ったMEGAの互換機の速度が遅いような気がしたので、
void loop() {
digitalWrite(2, HIGH);
digitalWrite(2, LOW);
}
の速度(周波数)を測ったら、UNO(純正)が112kHz, MEGA2560(互換機)が89kHzで、
やっぱりMEGAの方がUNOより遅いんだけど、これってそういうものなの?
それとも互換機なのがいけないの?

ちなみにTeensy 4.1だと9.8MHz出ました。
0829774ワット発電中さん
垢版 |
2020/08/28(金) 14:09:23.52ID:koz9K3VS
あ、loopのオーバーヘッドがあるから
void loop() {
while(1){
digitalWrite(2, HIGH);
digitalWrite(2, LOW);
}
}
とかにしないといけないのか。
それでもやっぱりMegaの方が遅い。
0832774ワット発電中さん
垢版 |
2020/08/28(金) 18:28:45.05ID:a7sC8Yqz
>>831
あなたの>>8282,829からそれをエスパーするのは無理だろうね
その速度比べて何の意味があるの?という疑問は別にしても
0833774ワット発電中さん
垢版 |
2020/08/28(金) 18:31:27.93ID:dRo4r1qE
せっかくレスしてくれた人に礼の一言もなく
自分の言い分だけを書きなぐって去っていく
これが美しい国ニッポンのゆとりさんw
0834774ワット発電中さん
垢版 |
2020/08/28(金) 18:43:54.01ID:koz9K3VS
>>832
どう書けば通じたのでしょうか?

ポートを直に触らずにArduinoの標準のライブラリだけで
I/Oをアクセスするときの性能を知りたかったんだけど
それって意味無いのでしょうか?

Arduinoに関してはは全くの初心者なので、
初心者にわかるように説明していただけるとありがたいです。
(いわゆるコンピュータに関する経験はそれなりにあるので、
一般的な専門用語や概念は説明無しに使っていただいて構いません。)
0836774ワット発電中さん
垢版 |
2020/08/28(金) 18:53:50.56ID:4Mv13uHP
質問しておいて、本人の意図しない回答だったにしてもなんらかのレスを返すのが一般常識ってことなんでしょ。
0838832
垢版 |
2020/08/28(金) 19:00:09.74ID:yWhSa4tP
>>834
あー、ごめん
君の相手は俺の能力では無理
他の人に聞いて
0839774ワット発電中さん
垢版 |
2020/08/28(金) 19:08:19.95ID:koz9K3VS
>>838
なんだよ、じゃあ最初から出て来んなよ
(意味:ありがとうございました)
0842774ワット発電中さん
垢版 |
2020/08/28(金) 23:37:25.32ID:F4Cy4ERo
>>ID:koz9K3VS
最初質問を読んだときはただ頭が弱いだけかと思ったが
どうやらそれに加えて人間のクズでもあるようだな
相手しなくてよかったな
0843774ワット発電中さん
垢版 |
2020/08/29(土) 00:24:04.19ID:jhi/eTM1
Arduinoのビット数を可変にしたいです。
ArduinoIDEだとF_CPUが定義されてしまうことまでわかったのですが、
F_CPUを定義しないで書き込める方法があったら教えてください。
よろしくお願いいたします。
0844774ワット発電中さん
垢版 |
2020/08/29(土) 04:43:11.44ID:Owbe7hPa
bit数ってのはマイコンのアーキテクチャで決まってる(Arduinoに乗ってるAVRなら8bit)
そしてF_CPUはクロック周波数であって、今載ってるマイコンのクロック周波数(UNOやNanoなら16MHz)ソフトウェアに教えているだけでbit数とは全く関係ない

マイコンのクロック周波数は普通は決め打ちしておくもの
そもそも基板に搭載されている水晶発振子で物理的にクロックが決まっているので・・・
(UNOやNanoに載っているATmega328Pは分周器を持ってるから半分にしたり1/8にしたりはできるが、それもヒューズビットというプログラムとは違う所の書き換えが必要)

F_CPUは「クロックを設定している」のではなくて『ボードに載ってるマイコンのクロックを教えている』のでハードウェアを何も変更してないのに間違った値にすれば動作がおかしくなるよ
0845774ワット発電中さん
垢版 |
2020/08/29(土) 10:06:25.94ID:UpK3pxKw
>>843
あなたの言う「ビット数」、「可変」ってどういうもの?
壮大な勘違いにならないよう、もうちょっと
0848774ワット発電中さん
垢版 |
2020/08/29(土) 12:51:47.36ID:jhi/eTM1
>>847
自由にクロックを変えられれば動作スピードとか電力とかいろいろ調整できるんじゃないかと思ったのです。
0851774ワット発電中さん
垢版 |
2020/08/29(土) 13:56:42.55ID:FlhOGPB6
PCで使われるCPUみたいなことは出来ないかな
動作クロックっていうのは水晶発信器などのクロックジェネレータって部品で
作られた信号の周波数で、これが8MHzだったり16MHzだったりするけど、
基本的に固定値なので周波数を上げ下げできない

発信器の動作クロックは下げられないけど、そのままでは早すぎるって場合には
分周って処理でクロックを間引いたりする

逆に上げたいとき(PCのオーバークロックもこの一種)には、ていばいき(逓倍器)を
使って発信器の周波数を2倍とか3倍とかにして使用する

で、Arduinoは逓倍器を積んでいないので、取り出すデジタル信号の周波数を
下げること出来てもそのままで上げることは出来ないよ
0853774ワット発電中さん
垢版 |
2020/08/29(土) 17:33:11.65ID:bFb4hpOH
省電力なら元々省電力を目的とした機器を選ぶようだと思う
0854774ワット発電中さん
垢版 |
2020/08/30(日) 01:16:22.26ID:SAneNFwO
横からだけどatmega328pは4MHzで動かすと1.8ボルトで動くようだが、そうなるとarduinoIDEの範囲外?ボード設定に触れたネット情報がうまく探せなかった
ニッ水二本で動くなんてすごいなあと思ったので試してみたい
0855774ワット発電中さん
垢版 |
2020/08/30(日) 01:23:47.17ID:PE4Y28UO
ATmega328PがいいならMiniCore使えば?
https://github.com/MCUdude/MiniCore
ヒューズビットの設定とかわからん!でもICSPつないでブートローダ書き込みコマンドから内蔵RCで1MHz〜で設定できるでしょ

まぁ1.8Vで使いたいならATmega328Pなんてロートルじゃなくて最新のAVR128DB32とかのほうがいいと思うけどね
まだベータバージョンだけどArduinoCoreもあるし(DxCore)
https://github.com/SpenceKonde/DxCore

AVRDAシリーズは1.8V〜5Vまでの全てのVCC電圧で〜24MHzまで動作保障だよ
0856774ワット発電中さん
垢版 |
2020/08/30(日) 09:47:29.11ID:seV49HTY
とりあえず動かすだけなら昇圧させればエネループ1本で5V100mAぐらいまでならいけるんじゃねーの?
0857774ワット発電中さん
垢版 |
2020/08/30(日) 09:55:44.67ID:HaeeiEDT
思考実験
Arduino自身のI/Oで、チャージポンプ昇圧して
自分の電源をまかなう、なんていうソフトできるんかな?
0858774ワット発電中さん
垢版 |
2020/08/30(日) 10:10:15.32ID:PE4Y28UO
ATmega328Pをを電池2本で動かすとして・・・
内蔵8MHzのクロックを利用するとしてヒューズのCKDIV8は有効にしておく
これでPOR時はクロックプリスケーラが効いてて1MHzだからどんな電圧でも動作する
起動後はタイマーを使ったPWMでDCDCコンバータを駆動(昇圧チョッパーなりチャージポンプ+リニアレギュレータなり)
(バッテリーからの電源にはダイオードを順方向で入れておくこと)昇圧後の電圧は分圧しておいてADCかACで1.1Vの内部基準電圧でモニタ
必要な電圧にまで上昇したらクロックプリスケーラを解除と同時にDCDCコンバータ用のPWMに使ってるタイマーを8分周に変更してメインプログラムへ

で出来るんじゃないかな
0859774ワット発電中さん
垢版 |
2020/08/30(日) 10:22:27.16ID:SAneNFwO
>>855
こういうのがあったのか、ありがとう
arduino 4mhzで検索してもなかなか出てこなかったので
セラロックつけなくちゃと思っていたけれど内蔵RC発振でも使えるのか
部屋の照明のリモコンを増やしたかったんです。なので少ない電池で動かしたい
0860774ワット発電中さん
垢版 |
2020/08/30(日) 10:29:38.30ID:SAneNFwO
>>856
待機電力が問題になるかなと思ったけど、待機時はどこも導通してなくてスイッチオンで昇圧回路から起動してブートローダーなしのマイコンも起動すればリモコンとしていけるのかな
0861774ワット発電中さん
垢版 |
2020/08/30(日) 10:48:11.96ID:HaeeiEDT
>>858
すんません、、、
ナバホ語かピダハン語を聞いているような
難しさで理解できませんでした
ガンダムに例えて解説してくれませんかw
0862774ワット発電中さん
垢版 |
2020/08/30(日) 11:09:50.94ID:uHzHYO3q
>>859
内蔵RCは精度が悪くシリアルで文字化けする場合がある
固体毎にOSCCALで調整すると改善するが、
-10℃〜40℃など温度変化の激しい場所では調整し切れない
基本クロック精度が悪いと、タイマーを使うディレイも狂って
周波数カウンタ、IRリモコンなどの用途で問題が発生する場合がある
0863774ワット発電中さん
垢版 |
2020/08/30(日) 12:22:08.76ID:SAneNFwO
>>862
arduinoを一台arduinoISPとして,atmega328pに直接?書き込んでいるのでシリアル通信できない問題は影響なさそうです
簡易オシロスコープで確認したところ赤外線の38khz も少しずれていたんだけどアイリスオーヤマの LED 照明は認識してくれました
季節による温度変化で駄目になるかもしれないな

低電圧動作を目的に4メガヘルツで動かすならセラロックが必須であれば精度も上がるのかなと思っていました
内蔵 RC 発振でも4メガヘルツで動くようなので挑戦してみます
いろいろありがとう!
0865774ワット発電中さん
垢版 |
2020/08/30(日) 13:53:49.08ID:PE4Y28UO
>>863
16MHzのクリスタルがついてるとしたら外部水晶用の内部発振回路を全振幅発振器から低電力発信器に切り替えて
かつプリスケーラを4分周に設定すれば何もハードウェア的な改造しなくても水晶の精度で4MHzで動くぞ
0866774ワット発電中さん
垢版 |
2020/08/30(日) 13:54:57.51ID:PE4Y28UO
追記
内部発振回路を全振幅から低電力に切り替えるのは全振幅発信機がVCC=2.7V〜しか動作が保障されてないため
切り替えはヒューズビットでどうぞ
0867774ワット発電中さん
垢版 |
2020/08/30(日) 15:06:17.76ID:SAneNFwO
内部発振回路に種類があったのは知らなかった
どうもありがとう調べてみます
0871774ワット発電中さん
垢版 |
2020/08/30(日) 20:22:52.08ID:gSNhVxX+
>>870
仕様上は7V〜12Vだけど、レギュレータICの発熱考えると、7Vに近い電圧がいい
自分は9Vのアダプタ使ってる
0872774ワット発電中さん
垢版 |
2020/08/31(月) 23:26:55.93ID:MuP4fU0P
安価な温湿度センサーであるところのDHT11で、気温と湿度を測りたいんですが、何度やってもnanになっちゃって困っています。

以前に使ったときは問題なく使用できたので、プログラムは間違ってないと思います。

VDDは5Vで動かしているのですが、シリアルプロッタで波形を観測したところ、一定の電圧(4V程度)を出力し続けているようです。
DHT11はデジタルのシリアル出力だったはずなので、この時点でおかしいと思うのですが、このような現象に心当たりはないでしょうか

Arduinoを変えたり、DHT11も複数試してみました。
回路が間違えてんじゃないかって思うのですが、データシート通りなのと、以前動いたのが気がかりです。

また、足りないところがあれば、補足するので教えて下さい。
0873774ワット発電中さん
垢版 |
2020/09/01(火) 00:04:32.02ID:uQ8yMlcJ
>>872
使用してるライブラリの名前とか配線状況を見れる写真とか動かないコードが有れば回答しやすい

>VDDは5Vで動かしているのですが、シリアルプロッタで波形を観測したところ、一定の電圧(4V程度)を出力し続けているようです。
>DHT11はデジタルのシリアル出力だったはずなので、この時点でおかしいと思うのですが、このような現象に心当たりはないでしょうか

うちのDHT11のSIGNAL(2番)をテスターで測ったら4.95Vだった(VDDは5.05V) ちょっとおかしいですね
これは外部のプルアップを使わずマイコンの内蔵プルアップを使用してでの電圧です

配線の不良も疑ってみては?
0874774ワット発電中さん
垢版 |
2020/09/01(火) 14:42:53.57ID:tlyK+QZv
Arduinoのdigital outを別の機器に繋ぎたいです
その機器は独自の電源を持っています
Arduinoと供に使う何とかCAPのようなArduinoから給電する機器ではありません
その機器のdigital inの回路がその機器の5V電源にプルアップしています
このような接続形態の機器にArduinoのdigital outを繋げますか?
なお流れる電流は0.5mAです
Arduinoのdigital入出力のピン1本とGNDのピンをその機器に繋ぐだけで良いのでしょうか?
0875774ワット発電中さん
垢版 |
2020/09/01(火) 14:55:38.93ID:Q/PtM9v3
>>874
問題無い

というか殆どの装置は入力保護でプルダウンかプルアップしてると思う
自作装置もそうするほうが良い
0876774ワット発電中さん
垢版 |
2020/09/01(火) 15:12:36.45ID:tlyK+QZv
>>875
ありがとうございました
でも理解できない事があります
Arduinoで外付けのLEDをLチカさせる時にArduinoのGNDピンと13番ピンの間に抵抗器とLEDを入れます
Arduinoの5V端子、13番ピン、GNDピンの3つを使うような記事を見た事がありません
これは13番ピンとGNDピンの間が解放か短絡か2択のリレーみたいなスイッチになっておらずArduinoの内部でGNDと13番ピンの間が5V電源に繋がっているという事ですよね?
Arduino側でArduinoの5V電源にプルアップ、別の機器側でもその機器の5V電源にプルアップでは不味くないですか?
0877774ワット発電中さん
垢版 |
2020/09/01(火) 15:45:11.09ID:tlyK+QZv
これを読んでも良くわからないので質問させて頂きました
ソースとしてもシンクとしても使えると書いてありますがOUTPUTに指定するピンに対しソース、シンクのどちらにするのかスケッチで指定する方法が書かれていません
outputに使うピンのソース、シンクどちらにするかのスケッチでの指定は無いと思えば良いですか?

http://www.musashinodenpa.com/arduino/ref/index.php?f=2&;pos=83

【OUTPUTに設定されたピン】
ATmegaのピンはソース(正の電流源)としても、シンク(負の電流源)としても機能し、
0878774ワット発電中さん
垢版 |
2020/09/01(火) 15:45:12.96ID:1fTodUDr
あなたが想像する回路図を描いてミソ
Aruduinoの電源と相手機器の電源が互いのプルアップ抵抗でつながるのってまずいのでは?ってこと?
0881774ワット発電中さん
垢版 |
2020/09/02(水) 17:26:28.52ID:WRxYTR8G
DUEのDAC0, DAC1にアナログ信号を出力するにあたり、
analogWrite(DAC0, value);
の代わりにポートレジスタを直接叩くようなことは出来ますでしょうか?
出来るとしたらどのようにすればいいか教えていただけるとありがたいです。

デジタル出力だと、例えばdigitalWrite(5, HIGH); の代わりに
PIOC->PIO_SODR |= (1<<25);
にするみたいなやつです。
0882774ワット発電中さん
垢版 |
2020/09/02(水) 18:30:57.08ID:4twaSAUm
すでに出力設定とか全部してあって値だけ変えるって話ならDAC0かDAC1のDACC_CDR
0883774ワット発電中さん
垢版 |
2020/09/02(水) 18:34:03.17ID:4twaSAUm
ごめん違ったDACCのDACC_CDRで良いわ
ビット位置で0と1だわこれ
0884774ワット発電中さん
垢版 |
2020/09/02(水) 20:10:58.87ID:WRxYTR8G
>>882-883
ありがとうございます。
チャンネルの選択方法がまだいまいちわからず、
DAC1に出力することしか出来ていないのですが、
とりあえず25倍ぐらい速くなりました。
0885774ワット発電中さん
垢版 |
2020/09/03(木) 14:12:56.94ID:j+KW//yO
>>884の続きです。下記の手順で両チャンネンルに出力できました。
1chあたり0.8Msa/sと、ほぼハードスペック(1Msa/s)通りになりました。
analogWrite()をあらためて測ったところ、0.13Msa/sぐらいは出ているで、
昨日の25倍というのは気のせいで、6〜7倍ぐらいのようでした。
アドバイスありがとうございました。

analogWrite(DAC0, 0);
analogWrite(DAC1, 0);
でとりあえず初期化。

書き込みモードの設定
DACC->DACC_MR |= bit(4)|bit(20); // Word transfer mode(bit4), Tag mode(bit20)

書き込み
DACC->DACC_CDR = x | (y<<16)| bit(28); // CDR[15:12] is CH for CDR[11:0], CDR[31:28] is CH for CDR[27:16]
0887774ワット発電中さん
垢版 |
2020/09/03(木) 18:17:00.38ID:8jiu3F95
Arduino Nanoで入力ピンの割り込み処理を行わせるプログラムを以下のように書いているのですが、割り込みの初期化時に必ず1回割り込みが発生してしまいます。

pinMode(2, INPUT_PULLUP);
attachInterrupt(0, func, CHANGE);

どうも、割り込み判定の初期値がLOWになっているようで、INPUT_PULLUPのようにHIGHを初期状態にした上で
割り込み判定をCHANGEやRISINGにすると、それをLOW→HIGHと判定してしまうようです。
(FALLINGでは発生しませんし、
pinModeのあとにdelayを入れても変わりませんので安定の問題でもないようです)

割り込み判定の初期値をHIGHにすることはできないでしょうか?
0889774ワット発電中さん
垢版 |
2020/09/03(木) 18:47:29.25ID:CxJaxSsr
AVRの割り込みは割り込みが無効の間も判定は常に行っていて有効になった瞬間に実行される
(じゃないと割り込み停止中に割り込み条件が満たされたことが検知不可能になるため)
それが嫌なら有効にする直前に自分で割り込みフラグを消せ

EIFR = 0x03;

で消せる(Nano、Unoの外部割込みの場合)
0890774ワット発電中さん
垢版 |
2020/09/03(木) 18:48:16.69ID:CxJaxSsr
>>888
それとこれとは話が別
ChangeにしてるってことはLowにしばらく引いた後Highに戻すときも拾いたいってことでしょ
Lowに引くときだけ割り込みたいわけじゃないのだろう
0891774ワット発電中さん
垢版 |
2020/09/03(木) 18:58:53.35ID:pfJMGwge
じゃあ普通に割り込み条件整ってるんでしょ
割り込み用のピンになに繋いでるのかな
0892774ワット発電中さん
垢版 |
2020/09/03(木) 19:16:50.51ID:8jiu3F95
>>889
EFIRは割り込みのマスクレジスタなんですね。
attachInterrupt前にEFIR=0x03することで回避できました。
AVRでの割り込み動作についても理解しました。
ありがとうございました。
0893774ワット発電中さん
垢版 |
2020/09/03(木) 19:19:20.67ID:8jiu3F95
>>891
ピンに何も繋がず、INPUT_PULLUPでHIGHに固定した状態で、attachInterupt(CHANGEまたはRISING)した時点で割り込みが発生していました。
INPUT_PULLUPした瞬間にピンはHIGHになっていることは確認しています。
0894774ワット発電中さん
垢版 |
2020/09/03(木) 19:27:52.48ID:CxJaxSsr
>>891
上でも書いたけど割り込みは無効の間も「割り込みフラグレジスタ」に記録される
無効状態でも割り込み条件を1回でも満たしていれ次に有効にした瞬間に割り込みが実行される
0897774ワット発電中さん
垢版 |
2020/09/04(金) 23:09:16.75ID:aFjtEL5i
>>889
昨日割り込みについて質問した者です。
その延長で教えて欲しいことがあるのですが、
割り込み判定を"CHANGE"にした場合に、立ち上がりなのか立ち下がりなのかを正確に取得する方法ってあるのでしょうか?

割り込み直後にピンの状態を取得しても、ものすごく短いパスルのような場合は割り込み時とは異なる状態が取得されてしまいました。
あらかじめ過去の状態を変数に保管しておいて、という方法ならその反対に変わったと判断できますか、これも処理が追いつかないと正確ではなくなりそうです。
トリガー情報が呼び出された関数の引数で受けられたりしたらベストなのですがそのようなものは無いですよね?
0898774ワット発電中さん
垢版 |
2020/09/05(土) 00:49:08.44ID:l7bTo89b
>>897
Low用とHigh用で2ピン使ってはどうかな
だけど そもそもCPUの処理速度が追いついてない様なので
意味がないかもね
0899774ワット発電中さん
垢版 |
2020/09/05(土) 01:07:26.99ID:l7bTo89b
1ピンでやるならカウンターをインクリメントしていって
0ビット目を調べるっていうのもあるね
ただどっちにしろ速度が間に合ってないっぽいけど
0900774ワット発電中さん
垢版 |
2020/09/05(土) 08:38:16.41ID:d+Ek/6cL
>>897
タイマーを外部クロック入力にして割り込み直後に前回値と比較すれば
Hi/Low/取りこぼしerrのステータス返す事ができるよ
1/2クロックまで、16MHzなら8MHzまで
それ以上のものすごく短いパスルはどうあがいても無理
0901774ワット発電中さん
垢版 |
2020/09/05(土) 08:50:32.54ID:kQ5Ba+cv
Cで書いたら割り込みはISRマクロで定義することになって、NAKED付けない限りr0とr1と割り込みルーチン内で使ってるレジスタのPUSHが入るし
そもそも該当の信号が同期化されて割り込みベクタに飛んでRJMP命令が実行される時点で4クロック分の時間を消費してるわけで・・・
Arduinoで書いてるなら使うレジスタを全部把握してISRにNAKEDつけて退避なしで組むとかほぼ不可能だと思うし
16MHzでやるには辛い仕様なんじゃないの。実際どういう目的で使ってどういう信号が来てるのか書いてみてよ
0902774ワット発電中さん
垢版 |
2020/09/05(土) 08:58:27.63ID:d+Ek/6cL
どうあがいても無理と書いたけどあれは嘘だ
外部クロック注入前に74HC4040等で文周すれば80Mhzくらいまでいける
「ごく短いパルス」というのがふんわりしすぎていて仕様を満たしているかわからん
0903774ワット発電中さん
垢版 |
2020/09/05(土) 09:01:47.66ID:Bh1COiwQ
外部部品OKなら外付けで何でもできるだろw
パルスカウント用に高速のマイコンつけりゃいいだけだし
0904774ワット発電中さん
垢版 |
2020/09/05(土) 13:26:20.70ID:51fz6+O0
>>897
割り込みトリガをトグルするとかどうかな
始めRisingでトリガして呼ばれたらFallingに変える
Fallingで呼ばれたらRisingに変える
0905774ワット発電中さん
垢版 |
2020/09/05(土) 15:31:15.46ID:kQ5Ba+cv
外部割り込みピンでもピン変化割り込みは使える、かつ同時にフラグが立ったときは割り込みベクタ番号の若い方、つまり外部割込みが優先して実行されるから
両方有効にして外部割込みはRISINGのみにする、外部割込み直後にピン変化割り込みのフラグを解除する行を追加
これで擬似的にRISINGは外部割込み、FALLINGはピン変化割り込みのISRになる・・・かな

まぁどっちにしろ信号の早さに対してマイコンのクロックが足りてないっぽいのでどんな手段をとろうが取りこぼしが起きるだろうけど
0906774ワット発電中さん
垢版 |
2020/09/05(土) 20:35:40.69ID:A9YmElxw
ノイズに付き合う必要も無いので短すぎるパルスは切り捨てる判断も必要
0908897
垢版 |
2020/09/06(日) 00:10:27.69ID:ENB3+WXk
返信が遅くなりすみません。いろいろとアドバイスありがとうございました。
今回の(CHANGEでのRISING/FALLING判定)は具体的な利用のものではなく、前回の延長としてそういったことはできないか、という意図でした。なので非現実的なことを聞いてしまったかもしれずすみません。

CHANGEでの割り込みで、関数の最初にHIGH/LOWを見てRISINGかFALLINGか判定した上で、それぞれカウントするという簡単なコードで試した際、タクトスイッチのチャタリングのような細かい周期の割り込みでは正確に拾えなかったことから質問させていただいた次第です。
(RISINGとFALLINGのカウントは常に1しか差が出ないはずがそうではなかったため)

電子工作は初心者で、ソフトウェア寄りな人間なので確実な方法を求めてしまいました。
ソフトウェアでの限界はある程度はあきらめることや、周辺回路でサポートすることも必要ということですね。いろいろと勉強になります。
0909774ワット発電中さん
垢版 |
2020/09/06(日) 02:16:19.40ID:/I1mLbcA
人間の手では50ms以上の速度でタクトスイッチを押すことは高橋名人でも不可能なので
50ms未満の変化はソフトウェア的に無視するよう書くべき
0910774ワット発電中さん
垢版 |
2020/09/06(日) 02:34:59.61ID:oL+Eils3
>>909
16連射ならデューティ50%としてON(OFF)時間は31.25msecだから高橋名人なら可能なんじゃね
実際には16連射より速かったそうだし
0911774ワット発電中さん
垢版 |
2020/09/06(日) 04:25:27.24ID:1lTnjv1t
makeして書き込めと言われたのですが、makeとは何でしょうか?
ArduinoIDEで出来かすか?
0912774ワット発電中さん
垢版 |
2020/09/06(日) 05:54:59.54ID:fQUA5CLB
makeとはソース(スケッチなど)をコンパイルリンクして実行ファイル(機械語HEXファイルなど)を作成すること
ArduinoのスケッチならArduinoIDEで可能、素のAVRのソースならAtmel Studioなどに読み込んでコンパイルリンク、Makefileが付いてるならgccとかで一気にできるんじゃない?
0913774ワット発電中さん
垢版 |
2020/09/06(日) 10:46:16.47ID:SzyzFnS5
>>909
連射は難しいけど、単発で1回押すだけなら20msぐらい余裕だよ。
意図的に短いパルス出そうとして頑張れば10msぐらいでもいける。
0915774ワット発電中さん
垢版 |
2020/09/06(日) 10:56:51.46ID:WAJ/rXk5
働いたらmake
0917774ワット発電中さん
垢版 |
2020/09/06(日) 12:41:54.17ID:SzyzFnS5
$ make love
make: *** ターゲット 'love' を make するルールがありません. 中止.
0918774ワット発電中さん
垢版 |
2020/09/06(日) 21:40:58.03ID:ZD43/FJ4
Arduinoで二酸化炭素センサMH-Z14Aを使おうとしてます。ネット上のソースコードであれこれ試してみてますが、二酸化炭素の値が「リアルタイム」で得られてないっぽいです。センサーに息を吹きかけると、その影響が出るのが20&#12316;30秒後くらいになってしまいます。二酸化炭素の値をリアルタイム(数秒以内)に得たいです。

これって、センサの仕様上しょうがないことなんでしょうか? 
データシートをみても、20秒のラグなどの情報は見当たらないし、ネット上の記事にも、このラグについて書いてありません。。どなたか、こういう、arduinoでのガスセンサの使用など詳しい方いらっしゃったら、教えてもらえるとありがたいです。
0920774ワット発電中さん
垢版 |
2020/09/06(日) 22:34:46.52ID:ZD43/FJ4
>>919
ありがとうございます。何度も見直していたところ、コードの一部にミスを見つけました。
無事、正常に動きました。
0923774ワット発電中さん
垢版 |
2020/09/07(月) 09:24:45.07ID:LV0oZfEy
「ネット上のソースコード」の話な
いかがでしたでしょうか系
0925774ワット発電中さん
垢版 |
2020/09/09(水) 20:44:28.18ID:vIId0cXf
不手際があってスケッチを保存してたフォルダーごとぶっ飛んだ。
電子工作・Arduinoを初めてからの2年間の膨大なスケッチが水泡に帰した・・・
皆さんもバックアップはマメにね。(T_T)
0926774ワット発電中さん
垢版 |
2020/09/09(水) 20:51:45.21ID:Q9XjItb9
ローカルだとバージョン管理めんどうじゃない?
github使ってるわ
0927774ワット発電中さん
垢版 |
2020/09/09(水) 22:54:48.19ID:P1kceNqA
どうせコピペばっかなんだからバックアップも版管理もいらねーだろwww
0928774ワット発電中さん
垢版 |
2020/09/09(水) 23:16:41.83ID:Q9XjItb9
>>927
何か自分で使った周辺ICとのインターフェース部分をリファクタリングしてライブラリを作るのにはまってしまって・・・
0929774ワット発電中さん
垢版 |
2020/09/10(木) 00:31:00.54ID:dduH55Nq
>>926
飛んだデータの量にも依るけど、それ悲惨すぎ
今どきPC使ってて、ディスク・イメージの定期バックアップも取って無いの?
専用アプリは色々あるし、データはもちろん、OSが飛んでも、最後のバックアップ時の状態に復元できるのに
0930774ワット発電中さん
垢版 |
2020/09/10(木) 03:28:52.39ID:C135njDJ
Windows標準のバックアップ機能がクソ以外の何者でもないというのが問題なんじゃない?
自分の環境じゃエラーばっか出てまともに動いた試しがない、あれじゃまともにバックアップする気にならん。
Macじゃ標準の機能が極めて簡単に使えて、部分リカバリも全体の復元もちゃんと可能。
0931774ワット発電中さん
垢版 |
2020/09/10(木) 05:33:10.54ID:v8mvgT7d
バックアップツールは復元できるかどうかそのときになってみないとわからないから信用できない。
データやメールの入っているフォルダをXCOPYコマンドで定期的にコピーするのが簡単で確実。
フォルダがたくさんあってもバッチにしておけばいいし。
0932774ワット発電中さん
垢版 |
2020/09/10(木) 08:19:00.32ID:tzSRtbTB
>>931
リカバリーメディア作ったときに、正常起動可能か試せばいい

自分は本体と同じ予備SSDも買ってるので、それを2カ月に1回くらいの頻度でクローン化し、それに入れ替えて継続使用してる
これで、元のSSDを挿せば、最低限、数カ月前の状態には瞬時に戻せるようにしてる

さらにWindows10のメジャーアップデート毎にも、復元を確認してるし、自動バックアップは毎早朝にスケジューリングし、終わるとスマホに(イメージの整合性もチェック)報告メールをさせてる

備えあれば憂い無し
0934774ワット発電中さん
垢版 |
2020/09/10(木) 11:19:23.66ID:MU4+BAqu
現状だとローカルバックアップよりクラウドに必要なデータバックアップの方がいいよ
自動化だって簡単だし、天災にも強い
0935774ワット発電中さん
垢版 |
2020/09/10(木) 12:37:29.15ID:dduH55Nq
>>934
ホントそうだけど、
インストールしてるアプリが多過ぎ、特に機械・電気電子関連CADやシミュレータ、そしてデータ(シミュレーション結果の動画とか)も多くて。。。
0936774ワット発電中さん
垢版 |
2020/09/10(木) 15:47:05.80ID:DiS0RqpV
液晶へのフォント描画で0〜Zは問題無いのにa〜が1コードずれてて必死に原因探してたら、フォントデータの
〜0x00}, // [
〜0x00}, // \
〜0x00}, // ]
の行末\で]の行がコメント化されてたのが原因だった…すんげー間抜け
0937774ワット発電中さん
垢版 |
2020/09/10(木) 21:16:51.43ID:1hDiic/e
最近のOSはデータをアチコチにばら撒き過ぎなんじゃーヽ(`Д´#)ノ
0939774ワット発電中さん
垢版 |
2020/09/14(月) 22:08:00.69ID:C5UrAw/o
>>685
で投稿した者です。

前回の質問したパワーパックの回路や筐体は組んで完成したのですが
https://pwm.sigris-rabo.work/?page_id=199

上記URLのプログラムを
Arduino Pro Mini上位互換マイコンにAE-ATMEGA328-MINIに
書き込めたのですが、電源ONしてもLCDディスプレイに何も表示されません。
助言をお願いできますでしょうか?
0940774ワット発電中さん
垢版 |
2020/09/14(月) 22:29:55.67ID:h3YwEjD+
回路の配線は合っていますか
電源投入後、電源ラインがつながる箇所の電圧は確認しましたか
プログラムが書き込めたことを何をもって確認しましたか
ご自身でどこまで調べましたか
0941774ワット発電中さん
垢版 |
2020/09/14(月) 23:20:51.92ID:Q8jWzoZ5
>>939
実配線図と回路図が異なってるので、確認するべきポイントがいくつかあります
1.LCDのVCCやGNDは接続されてるか?
2.LCDのVO端子(コントラスト調整端子にはコントラスト調整用の半固定抵抗等が接続されてるか?
3.LCDの説明書にあるバックライト点灯用の抵抗の取付は出来てるか?
0943774ワット発電中さん
垢版 |
2020/09/15(火) 07:38:46.57ID:1kAWo1o4
>>940
・回路の配線は何度か確認し、合ってはいます。
・テスターで3端子レギュレータの出力確認はしました。
・プログラムはIDE上で、問題なく書き込めました。

>>941
@接続はされています。
A・Bは後で調べてみます。

以上になります。
0944774ワット発電中さん
垢版 |
2020/09/16(水) 23:07:58.74ID:k3mouCXM
遅くなり申し訳ありません

先程2・3の方も確認し、バックライト点灯用の抵抗調整をしたら
LCDモニタに表示することができました。

助言ありがとうございます
0945774ワット発電中さん
垢版 |
2020/09/21(月) 12:18:29.88ID:uo54tun5
ここはArduino正規品のみですかね?
互換品の質問もおkですか?
0946774ワット発電中さん
垢版 |
2020/09/21(月) 12:34:36.96ID:aa5aNvnD
Arduino関連の質問ならおk
Arduino互換機の話題なら別スレが有る
0947774ワット発電中さん
垢版 |
2020/09/21(月) 12:43:10.29ID:uo54tun5
ESP32で読み取ったSDカード内のmp3ファイルをA2DPで送信したいと思い、A2DP関連ならArduino全般に当てはまるかと思ったのですが...スレチですかね?
ESP32の質問可なスレがパッと見つからなかったのでもしよろしければ誘導お願いしますm(_ _)m
0950774ワット発電中さん
垢版 |
2020/09/21(月) 21:14:22.16ID:aa5aNvnD
>>949
ESP8266やESP32はWiFiモジュールとしてだけではなく、コスパの良いマイコンとして使えるから人気有る
Arduinoで開発できるので、簡単にマイコン+WiFi(Bluetooth)を使った作品が作れる
手軽なボード状の物でESP8266はAliで200-300円,ESP32で400-500円位
ESP8266は32bitCPU SingleCore 160Mhz + WiFi
ESP32は32bitCPU DualCore 240Mhz + WiFi,Bluetooth
処理早くフラッシュ大容量でコスパ良いのでWiFi使わなくてもお釣りくるのよ
0952774ワット発電中さん
垢版 |
2020/09/22(火) 11:38:11.78ID:m9cqJIhf
そう、メモリを気にせずガンガン使える。
でも、ディープスリープからの復帰はリセットされるから、Loopの初めから始まる。
電池駆動で長期間動かしたい時とかArduino(ATMega・ATtiny)とか使うこと多いかな。
0954805
垢版 |
2020/09/22(火) 14:27:17.55ID:LFJUeHKe
TTGOってデバイスもおもろいよ
0955774ワット発電中さん
垢版 |
2020/09/22(火) 14:33:28.88ID:ERp/3/ze
お、それじゃあ俺は、Obnizを推すわ
かなりクセがあるけど、用途がハマればおもしろい
0956897
垢版 |
2020/09/22(火) 15:22:54.07ID:iK4AET+I
Arduinoに後からNW/bluetooth機能足すなら、最初からESP32使った方がコンパクトだし何より安いよね。ESP32(技適あり)で400円ぐらいだし。
DeepSleepの消費電力もものすごく省エネだし。
0958774ワット発電中さん
垢版 |
2020/09/23(水) 22:35:14.85ID:SI6E/iY2
>>953
M5Stack Basic?これはなに?ESP32が入った完成品?
自分でスケッチ書いて、そのままヤフオクで売れそう
0960774ワット発電中さん
垢版 |
2020/09/25(金) 11:17:05.56ID:FWvPhvct
Arduino同士のシリアル通信の事なんだけど、UARTを使った単純な通信にするか、I2Cやspiにするか迷ってる。衝突回避のほかにI2Cやspiを使うメリットってある?
0962774ワット発電中さん
垢版 |
2020/09/25(金) 16:54:37.87ID:Rq+TcvkO
通信距離も何を選択するかの要素となる
トランシーバが必要になるけど、UARTもRS485なら複数相手の通信が可能
0963774ワット発電中さん
垢版 |
2020/09/27(日) 09:37:02.83ID:fTfI3tk6
質問です。
DAC からの出力をピーク電圧の半分だけ下げて交流の形にしたいのですがどうすればいいでしょうか?
またその際、Zero などの 3.3V 系と普通の Arduino の 5V 系での違いや気をつけた方がいい点などがあれば知りたいです。
宜しくお願いします。
0965963
垢版 |
2020/09/27(日) 10:29:19.21ID:fTfI3tk6
>>964
御回答ありがとうございます。
そうです、そんな感じです!
コンデンサと抵抗でいいんでしょうか?
0966774ワット発電中さん
垢版 |
2020/09/27(日) 10:42:58.02ID:VNIz6ySr
>>965
正確には上記の回路だとうまく動かないと思います(DACの出力が弱い為)
ArduinoのDACの出力をオペアンプでバッファしてからコンデンサと抵抗で交流に変換するのが無難だと思います
また、必要に応じて交流に変換した後もオペアンプでバッファしてください(ただマイナス電源を用意するのが面倒なので無いほうが楽)
https://i.imgur.com/o4wxFwY.png
抵抗とコンデンサの定数はいい加減なので、必要に応じて計算してください
0967963
垢版 |
2020/09/27(日) 10:50:48.95ID:fTfI3tk6
>>966
助かりました。ありがとうございます!

この原理って何か呼び名がありますでしょうか?
ググって詳しく調べたいのですが、「コンデンサ 抵抗 負」とかでは上手くそれらしい結果が出てきませんでした。
0968774ワット発電中さん
垢版 |
2020/09/27(日) 11:00:58.98ID:VNIz6ySr
>>967
名称は詳しくなのですが
「ACカップリングコンデンサ」や「CRハイパスフィルター・RCハイパスフィルター」と呼ばれてると思います
0969963
垢版 |
2020/09/27(日) 11:17:28.94ID:fTfI3tk6
>>968
なるほど、ハイパスフィルターになってしまうんですね。
出力の形をそのまま維持できる方法はないのでしょうか?
0970774ワット発電中さん
垢版 |
2020/09/27(日) 11:28:25.53ID:oMwlLhsa
>>963の質問の意味をまだ理解できないオレは修行が足りないのだろうか・・・
0971774ワット発電中さん
垢版 |
2020/09/27(日) 11:45:42.64ID:VNIz6ySr
>>969
マイナス電源も用意するなら、オペアンプの信号をオフセットすれば出来る
マイナス電源無しの方法は複雑すぎて俺には出来ない・・・
https://i.imgur.com/MmZ8MAl.png
用途がわかれば別のアドバイスも出来るかもしれない

今更ですが、5V系のArduinoだとDAC付きって何があったっけ?
UNOやMEGAはDAC無いので・・・
0972963
垢版 |
2020/09/27(日) 11:53:15.83ID:fTfI3tk6
>>970
すみません、自分の知識不足故にお伝えする能力が足りてないのだと自覚しております。

>>971
5Vのだとないんでしたっけ?幸い今試そうとしてるのは Zero なんですが。
やりたいことは単純にスピーカーに繋げて音を鳴らしたいのですが、
そのままでも人間の耳には聴こえるかもしれないけれど、
何かそのあと処理する時にいろいろ良くない的な事が書いてあったので、0Vを中心にしたいなと思いました。
0973774ワット発電中さん
垢版 |
2020/09/27(日) 12:18:45.16ID:VNIz6ySr
>>972
5Vでも探せば有りそうだけど、有名な機種だとDAC無いのが殆どだったので
>>964の様な構造は市販のオーディオアンプでもごく普通に使用してる方法なので>>971の様に複雑にする必要はないと思います

アンプ付きスピーカーを接続するなら、抵抗+コンデンサ+バッファ(省略できる可能性有り)で十分だと思います
(そもそもSP側(アンプ)にカップリングコンデンサ付いてる可能性が高い!)

アンプ無のスピーカーなら使うアンプICにより、バッファ無で回路作れると思います
https://akizukidenshi.com/download/ds/njr/njm386bd.pdf
よく使われてるアナログアンプの推奨回路でもACカップリングコンデンサが使われてますよ〜
0974774ワット発電中さん
垢版 |
2020/09/27(日) 12:18:58.50ID:DECleiqp
ACカップリングコンデンサーを入れるとハイパスフィルターになるが
作ろうとしている装置がどういうスペックかを明確にすれば不具合を回避する方法はある

例えば生成する信号の最低周波数が10Hzなら、1Hzくらいがカットオフのハイパスフィルターを使えば
ハイパスフィルターとしては無いも同然という事になる
0975963
垢版 |
2020/09/27(日) 12:31:39.78ID:fTfI3tk6
>>973
まだスピーカーは調達してないので、参考にさせて頂きます!
(というか全然理解してないのでまずアンプ有りのスピーカーで確認しつつ、アンプ無しのスピーカーでも鳴るようにして理解を深めたいと思います)

>>974
人間の可聴領域より低いところに調整できれば事実上無視できそうですね。
こちらもいろいろ試行錯誤してみたいと思います。

知識不足からまだ釈然としてない部分は多いのですが、教えて頂いた情報を元に更に調べたり試行錯誤してみたいと思います。
皆様ありがとうございました。
0976774ワット発電中さん
垢版 |
2020/09/27(日) 12:35:41.88ID:h7CF0ENo
こーいっちゃ何だがただのオーディオアンプ

ま、変な沼にはハマらないようにね・・・ククク
0977774ワット発電中さん
垢版 |
2020/09/27(日) 12:40:59.85ID:VNIz6ySr
>>975
ダイソー300円のアンプ付きスピーカーを実験用に使ってます
買った直後に右用と左用を分離して、1個のアンプ付きスピーカーと1個のアンプ無スピーカーとして使ってます
0978774ワット発電中さん
垢版 |
2020/09/27(日) 13:58:24.84ID:G7p/AK/L
俺は386で十分だから沼の心配は無いw
でもポップノイズが気になるんだよなぁ〜
0979963
垢版 |
2020/09/27(日) 16:14:05.25ID:fTfI3tk6
>>976
「このハードディスクは音質がいい!」
今の時代なら「このSSDは音質がいい!」とかになるんでしょうかw

>>977
賢いですね!真似させて貰おうかな。

>>978
私の CPU は 486SX 16MHz です!

関係ないんですが自分が二つ買った Zero の箱を見たら
ABX00003 の 03068 と 03069 ってラベルが貼られてました。
これシリアルナンバーだとしたら純正品の Arduino ってそんな数しか売れてないの?って心配になりますね。
0980774ワット発電中さん
垢版 |
2020/09/27(日) 17:57:04.73ID:derENEKv
天下のSONYがこのSDカードに入れたデータは音質があがるSDカードを売ってるような時代だからな
0981774ワット発電中さん
垢版 |
2020/09/27(日) 19:37:29.01ID:gMaXjaXw
>>980
音源データ入れたUSBメモリーも、
外装の色によって、音質が変わるんじゃなかったっけ?www

赤色は情熱的な、とかなんとか
0983774ワット発電中さん
垢版 |
2020/09/27(日) 20:52:28.66ID:dSDI2a1o
ad9833波形ジェネレータがマイナス出力するのにも使えそうやな
0984774ワット発電中さん
垢版 |
2020/09/27(日) 23:28:13.61ID:DECleiqp
>>981
赤は酸化鉄で磁性体だから音が悪いんだったはず
青もコバルトで強磁性体で(ry
一番音がいいのは結局カーボンブラックだと柴崎先生が言ってたw
0985774ワット発電中さん
垢版 |
2020/09/29(火) 00:39:33.70ID:SsWUKXIr
車が近づいたらライトを光らせたいです。
5m〜位から反応させたいんですが高いレーザーセンサー買うしかないですかね。
0986774ワット発電中さん
垢版 |
2020/09/29(火) 01:53:31.46ID:MWOq7VDI
どんな状況かによる
別のセンサーが使えるかもしれんからもっと具体的に
0987774ワット発電中さん
垢版 |
2020/09/29(火) 07:46:07.34ID:GdgT1KoD
>>971
DACというよりPWMかな。ローパス入れないとまともなアナログにならんと思われ。
0988774ワット発電中さん
垢版 |
2020/09/29(火) 08:06:49.81ID:LUSj1puL
>>987
PWMじゃないDACが付いてる機種もあるよ。
ZEROとかDUEとか。
ArduinoではないけどArduino IDEで開発できるボードだと
Teensy 3.5とか3.6も。
0991774ワット発電中さん
垢版 |
2020/09/29(火) 09:07:37.64ID:C0CpTehL
NANOで1ミリ秒の割り込みを書いたんですが、期待通り動かないので教えてください。
スケッチ:https://pastebin.pl/view/81033221
結果:https://pastebin.pl/view/899b8269

if ((millis16()-ms1)>=1000){ で前回値より1000大きければの条件通過してるのに
millis16()-ms1が913になっています。これは毎回同じ値です。
millis16()内のcli(),sei()を有効にすればこれは解決するのですが、
カウンタ変数にvolatile付けているのになぜこうなるのか釈然としません。
詳しい方解説をお願いします。
0992774ワット発電中さん
垢版 |
2020/09/29(火) 10:05:55.82ID:O8PwvCfv
volatileを付けたからといって、ms=milliscntの処理中で割り込みが入らないわけではないよ
cli, seiが嫌ならmilliscntを複数回読んで2度同じ値だったら採用するとかする
0993774ワット発電中さん
垢版 |
2020/09/29(火) 10:21:01.68ID:MWOq7VDI
詳しく見てないけどloop内でmillis16()呼び出すの1回だけにしちくり〜
0994774ワット発電中さん
垢版 |
2020/09/29(火) 10:22:22.96ID:C0CpTehL
レスありがとうございます
割り込みが入って処理が遅れるのは構わないのですが
なぜ1013ではなく913になってしまうのか、そこがわからないのです。
0995774ワット発電中さん
垢版 |
2020/09/29(火) 10:24:42.21ID:C0CpTehL
>>993
ステトコードなので、if文の前後でmillis16()の変化を観測しています。
4箇所でデータ採取していますね
0997774ワット発電中さん
垢版 |
2020/09/29(火) 11:40:42.66ID:Xiz/Jy1y
ifの評価に使ってる値が残ってないのがわかりにくくしてるような。あとシリアル後に変数更新したら文字列の長さ分ずれると思う。
0999774ワット発電中さん
垢版 |
2020/09/29(火) 11:46:55.38ID:Jt0ySThT
>>986
50mくらいの道をバックして自宅ガレージに停めてるんですが、暗くて壁が見えづらいので家5m前に車が来たらライトが点くようにしたいと考えています

>>990
結構しますね…市販のライト改造したほうが安上がりな予感
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 111日 6時間 25分 37秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況