Arduino初心者熱烈大歓迎質問スレ part30 at DENKI
[2ch|▼Menu]
[前50を表示]
150:774ワット発電中さん
21/03/06 10:14:24.14 5DQdzG4y.net
>>147
どんな回路かに依りますが、普通、電源側の最上流でしょうね。電源のfailureにも対応してほしいんでしょうから。電流で動作するので普通のヒューズ同様直列につなぎます。

151:774ワット発電中さん
21/03/06 12:49:59.46 ewoxnTDF.net
>>144
電流にもよるけど、ポリスイッチという部品があります。
秋月電子とかで取り扱いしてます。

152:774ワット発電中さん
21/03/06 12:53:49.28 x0iW07H6.net
>>148
ご丁寧にありがとうございました!
早速発注してつくってみたいと思います
別の質問なのですが、
mosfetとトランジスタとフォトカプラの、スイッチとして使う場合の使い分けが分かりません
以下のような


153:なんとなくの認識をしているのですが誤りがあればご指摘いただけないでしょうか? 電源を2種類、回路を分けて使いたい時にはフォトカプラ (ノイズに強い) mosfetはトランジスタの一種で使い分けも何もなく、スイッチとして使うなら同じもの トランジスタは増幅器として使えるものがあり、mosfetはスイッチとして使うときに選ぶべき (mosfetのほうが流せる電流が多いから)



154:774ワット発電中さん
21/03/06 13:13:44.12 x0iW07H6.net
>>145
教えていただいたサイトで、
ihold以上の電流が流れると100秒以内に抵抗値が最大になる
itrip以上の電流が流れると10秒以内に抵抗値が最大になる
このように認識したのですが、以下の場合は抵抗値が最大でも3Ωということでしょうか?
URLリンク(i.imgur.com)
てっきり絶縁されるものだと思っていたのですが、電流の量を減らすだけのものなのでしょうか

155:774ワット発電中さん
21/03/06 13:55:06.99 XkO7b7Hp.net
>>151
電子部品一般に関する質問はこちらへ
初心者質問スレ 145
スレリンク(denki板)

156:774ワット発電中さん
21/03/06 14:14:46.52 WPk9ShU9.net
>>152
そこ殺伐としてるからヤダ!

157:774ワット発電中さん
21/03/06 14:23:54.26 eYjWfEK0.net
>>151
URLリンク(akizukidenshi.com)
これ読んできて
3ページ目でデータシートの読み方も分かるようになる

158:774ワット発電中さん
21/03/06 14:44:02.39 x0iW07H6.net
>>152
スレチでしたか、失礼しました
誘導ありがとうございます!

159:774ワット発電中さん
21/03/06 14:46:42.47 x0iW07H6.net
>>154
これまたご丁寧にありがとうございます!
拝見させていただき誘導先にて引き続き質問させていただこうと思います
本当にありがとうございました!

160:774ワット発電中さん
21/03/08 08:10:05.50 rZo8vzOl.net
atmega328-auを組み込んで、小型の回路を組もうとしています。
秋月の小型表面実装クリスタル16MHzを使って22pFのコンデンサで作成したら、速度が1/10程遅くなりました。
秋月のホームページでは、そのクリスタルの負荷容量は10pFと記載がありました。
調べたのですが、そのまま10pFを使って良いのかよく分かりませんでした。
使用するコンデンサを算出する計算式とかあるのでしょうか。

161:774ワット発電中さん
21/03/08 08:47:30.17 1lFkKpdD.net
>>157
まず根本的に色々おかしい
1/10でなんて発振しないし
発振できなければマイコンは動かない
とりあえず聞くが
328PのLowヒューズに設定した値をここに書き込んでみ?
自分でマイコンから作るということはArduinoとして売られるために設定された色んな事を自分でやらないとあかんのやで?

162:774ワット発電中さん
21/03/08 08:59:17.69 q2sthxBO.net
>>157
URLリンク(www.macnica.co.jp)
負荷容量が多少ずれても10%ずれはなさそうです。断続的に発振とかだと頻繁に動かないケースもありそうですし。
なにか別の原因がありそう(計測そのものが間違ってるの含め)

163:774ワット発電中さん
21/03/08 09:58:10.09 bp3YjbOH.net
クロック1/8にヒューズ設定されているに、100ウォン

164:774ワット発電中さん
21/03/08 11:29:13.04 q2sthxBO.net
>>160
クロックが1/10になったんじゃなくて
1/10程遅くなったと書いてるようだが
つまり9/10の9.4MHzくらい?

165:774ワット発電中さん
21/03/08 11:30:29.75 q2sthxBO.net
>>161
まちがい 14.4MHz

166:774ワット発電中さん
21/03/08 11:38:00.90 6V9XsgE1.net
そもそも遅くなる前がどんな条件か書いてないんだが?
なにと比べて1/10なんだ?

167:774ワット発電中さん
21/03/08 12:09:45.08 4rzqO5WI.net
328P使ったArduinoならまぁ16MHzじゃないの
1/10になって1.6MHzなのか
1/10下がって14.4MHzなのか

168:774ワット発電中さん
21/03/08 12:


169:11:24.19 ID:rZo8vzOl.net



170:774ワット発電中さん
21/03/08 12:13:59.72 rZo8vzOl.net
>>158
arduino as isp からunoとして書き込みました。ヒューズビットはどうなっているか、夜調べてみます。

171:774ワット発電中さん
21/03/08 12:16:02.35 z1dUd8Wv.net
ヒューズ設定が8分周になってんじゃね?
8分の1が感覚的に1/10程度と感じてるとか

172:774ワット発電中さん
21/03/08 12:16:20.38 rZo8vzOl.net
>>163
delay(100)
で1秒位待つようになりました。
組み込む前はarduino nanoをブレッドボードで組んで動かしていました。

173:774ワット発電中さん
21/03/08 12:21:45.52 4rzqO5WI.net
>>166
自分で設定してないなら工場出荷状態じゃねーの
工場出荷状態ならその水晶何も仕事してないから取って捨てても動くぜそれwww

174:774ワット発電中さん
21/03/08 12:47:32.70 bnpdkTvH.net
328P-PUだけどArduino Pro or Pro miniの5V,16MHzで書き込んでる

175:774ワット発電中さん
21/03/08 13:42:52.72 6V9XsgE1.net
もともとnanoで動かしてたスケッチを自分で用意したatmega328に入れて
nanoと同じ16MHzの水晶付けたのに遅いんですけど?ってことか
なんでUnoとして書き込んだんだ?
nanoで書き込めば?

176:774ワット発電中さん
21/03/08 13:53:18.44 q2sthxBO.net
>>165
ぉぃ

177:774ワット発電中さん
21/03/08 15:13:14.74 Xx50hh5K.net
>>172
妄想が膨らみすぎ

178:774ワット発電中さん
21/03/08 15:14:23.38 Xx50hh5K.net
>>169
ハゲ同意

179:774ワット発電中さん
21/03/08 16:44:52.57 rZo8vzOl.net
>>169
新品チップにいきなりプログラム流し込んでました。ブートローダ書き込んでおけば、確かヒューズビットも設定されたと思います。
家帰ったら試してみます。

180:774ワット発電中さん
21/03/08 21:58:16.77 ocbBsWmX.net
atmega328-auでスピードが出ないと相談した者です。
ブートローダを入れてから、プログラムを書き込んでみたら、正常になりました。
新品チップにいきなりプログラムを書き込んでも、ヒューズ設定されないため今回のような挙動になったようです。
皆様御解答ありがとうございました。

181:774ワット発電中さん
21/03/08 22:29:15.88 DhLIpdDj.net
ブートローダーなしって、ISPで書き込んでるんだよね?
何でArduino、しかも初心者スレに書き込んでんだ?

182:774ワット発電中さん
21/03/08 22:56:46.06 Y0Twa6jX.net
まぁええやんか

183:774ワット発電中さん
21/03/08 22:58:40.11 QsoEgZ8P.net
Arduinoコアで開発してりゃ別にいいんじゃないの
miniCoreとかISPでしかプログラム出来ないようなのもあるわけだし

184:774ワット発電中さん
21/03/08 23:13:15.18 OW2gBEKO.net
ArduinoIDE使えばみんな仲間

185:774ワット発電中さん
21/03/10 08:43:47.96 qa2YWvF+.net
>>177
こんなニキシー管時計を作ってます、arduino初心者です。
流石にこのサイズだとチップのみを使わないと作れませんでした。
マイコンもC言語も上手く動かせなくて、arduino始めました。
初めての自作基板です。
以前HV5812の転送速度で質問させていただきました。お陰さまで、9割り方完成でしょうか。
皆様のお陰でここまでこれました。
ありがとうございます。
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)

186:774ワット発電中さん
21/03/10 08:52:40.75 tTbZ/Owi.net
おーかっけー
外装とかどうするんですか?

187:774ワット発電中さん
21/03/10 09:36:57.12 V+L/Fc/S.net
リポの発熱大丈夫?

188:774ワット発電中さん
21/03/10 10:22:22.82 qa2YWvF+.net
>>182
外装はまだ妄想ですけど、
・ベースの枠に3dプリンタ
・周りの円周はウォールナット
・前面の枠と裏面は真鍮
・前面はサファイアガラス
に出来たらいいなって思っています。
小さいから材料費は安いんですよね。

189:774ワット発電中さん
21/03/10 10:24:51.16 qa2YWvF+.net
>>183
同じ回路のブレッドボード上では大丈夫でした。
今は更に表示後にdeepsleepさせてるので問題無さそうです。

190:774ワット発電中さん
21/03/10 11:31:26.53 WWip2vGk.net
>>181
なんで丸いん?

191:774ワット発電中さん
21/03/10 12:03:42.62 YkAQv8vu.net
エンコーダが横向きの竜頭もどきみたいに付いてるしリポついてるし腕時計なんじゃないの

192:774ワット発電中さん
21/03/10 12:11:34.45 qa2YWvF+.net
>>187
巷で売っている腕時計タイプにレイアウトを似せて作りました。
流石にこのサイズの腕時計は着けるのに勇気がいるので、エンコーダーを上側へ変更して懐中時計タイプにするつもりです。
これはこれで、一度完成させる予定です。

193:774ワット発電中さん
21/03/10 13:31:08.40 thomoe4E.net
>>186
腕時計だろ。

194:774ワット発電中さん
21/03/10 13:32:45.65 thomoe4E.net
しかしスゴいな。
初心者でもここまで作れるなんて
基板屋のおかげだな。

195:774ワット発電中さん
21/03/10 13:36:09.08 01d64rgT.net
>>181
ニキシー管、いいですよね。
私も、ニキシー管を制御したくて、arduinoに入門しました(初めはキットを組み立てたのですが、どうしても、クロスフェードがしたくて)。
完成を楽しみにしています。

196:774ワット発電中さん
21/03/10 13:51:46.40 xkgU95Hl.net
素晴らしい! 完成したらまた見せて。

197:774ワット発電中さん
21/03/10 14:54:53.52 qa2YWvF+.net
>>191
クロスフェードは私もやってみたいです。今回はスタティック点灯のみで作りました。次回作では実装したいです。プログラムでまた質問させていただくと思います。ネットでもあまり情報が見つけられなかったです。

198:774ワット発電中さん
21/03/10 15:16:35.04 jIEU+IK2.net
>>193
期待の新人やね
本職はなに?

199:774ワット発電中さん
21/03/10 17:29:54.65 qa2YWvF+.net
>>194
普通の事務職です。

200:774ワット発電中さん
21/03/11 06:21:34.65 4uYFOlbU.net
>>193
スタティック用の回路でも、ダイナミック用の回路でも、コーディング次第で、実現可能だと思います。むしろ、スタティックなら、プログラムはより単純でしょう(要は、ledのフェードと一緒ですから)。
タイマー割り込みの良い演習課題ですね。
クロスフェードすると、一気に高級感がまします(笑)。

201:774ワット発電中さん
21/03/11 07:44:29.00 IKnH+hT9.net
>>196
昨日youtubeで見た一桁のニキシー管キットのフェードシャッフルがすごい綺麗でした。
パタパタ切り替わるキレのあるシャッフルも好きですが、表示モードを切り替えることが出来れば最高ですね。
実はブレットボードで試したのですが、思った通りには動かなかったです。
まだ試したいことがいくつかあるので、やり尽くしても駄目だったら、また質問させてください。

202:774ワット発電中さん
21/03/11 07:49:09.96 M6vvJj7A.net
スタティック用の回路だとアノードでブランキング出来ないからゴーストがめっちゃ出て汚くなる
点灯状態からカソードを全部ハイインピーダンスにしても綺麗に消えないのだよ

203:774ワット発電中さん
21/03/11 08:57:41.39 ZzGOUysy.net
>>195
最後の最後に「決め台詞」気持ち良いかい?w

204:774ワット発電中さん
21/03/11 10:47:37.82 IKnH+hT9.net
>>190
今の環境は本当に幸せです。
4層基板、送料抜きで5ドルでした。
cad頑張れば何でも出来そうな気がします。

205:774ワット発電中さん
21/03/11 11:01:30.59 nYaodaz7.net
送料が高いんだよな

206:774ワット発電中さん
21/03/11 11:32:50.90 mfLpB2Ow.net
>>200
4層$5ってどこ?
中華基板屋よりさらに1/10の値段って興味ある

207:774ワット発電中さん
21/03/11 12:02:06.56 IKnH+hT9.net
>>198
確かに汚かったです。
アノードに回路を追加します。
スタティックのままで、アノード制御追加でもフェード出来ますでしょうか。
フェードしつつダイナミック点灯はプログラムできる気がしないです。

208:774ワット発電中さん
21/03/11 12:09:12.92 mfLpB2Ow.net
>>203
そりゃ出来るけどアノード制御でブランキングしつつ綺麗にクロスフェードするプログラムを作る


209:作業負荷はダイナミックの場合とほぼ一緒じゃん? それが達成できるならまぁダイナミックで動かせるようになるよ(つまりそのクソデカ高電圧シフトレジスタは1個でよくなるということだ) それより送料別で$5で4層やってくれる基板屋俺にも教えて



210:774ワット発電中さん
21/03/11 12:17:09.52 IKnH+hT9.net
>>202
ここで注文しました。
URLリンク(i.imgur.com)

211:774ワット発電中さん
21/03/11 12:20:17.10 IKnH+hT9.net
>>201
そうなんです。
だからまとめて注文したいですね。

212:774ワット発電中さん
21/03/11 12:21:36.39 mfLpB2Ow.net
>>205
サンキュー
50x50までか…

213:774ワット発電中さん
21/03/11 13:16:22.77 4uYFOlbU.net
>>197
>>198
なるほど、上流側の制御回路が必要ですね。
回路の追加ができれば、プログラムはそう難しくないはずですよ。

214:774ワット発電中さん
21/03/11 14:36:09.48 +6W+AJwV.net
ニキシーのドライバって出力にツェナーダイオード付いてるから
完全にオフにならないんだね

215:774ワット発電中さん
21/03/11 14:43:01.59 WLdnJkCW.net
>>209
完全にオフにするとブルードットと呼ばれる異常放電が起きたり
点灯してる電極のコントラストが悪くなってしまう
なので未点灯のカソードはストライキング電圧以下になるように電位を与えるのだ
低耐圧のトランジスタでやるためにツェナーが入ってるだけと思ってる人も居るがそうじゃない
300Vとかスイッチできる素子を使って作ったとしてもオフ時に電位を与えてあげないと見栄えが悪くなるんだ

216:774ワット発電中さん
21/03/11 15:32:44.51 4uYFOlbU.net
>>210
なるほど! 勉強になります。

217:774ワット発電中さん
21/03/12 01:23:54.56 Cp+qiijV.net
Micronucleus V2.5 が出てますね。
URLリンク(github.com)
64バイト小さくなったらしい。。。

218:774ワット発電中さん
21/03/15 21:09:28.53 QS3cTWoY.net
ネット上にホールセンサーを使った回転計タコメーターのスケッチ例が沢山あるけど、
ぜんぶ値がバラバラなので、どのスケッチを信じたらいいか分からないw
基準となる回転数も分からないしw PCファンぐらいしかないけど、これも信用できないw

219:774ワット発電中さん
21/03/15 21:22:27.67 6+Vr2LMf.net
つオシロ
つロジアナ

周波数カウンタはもっと高精度だけど
マイコンのクロック精度の問題が先だろう

220:774ワット発電中さん
21/03/15 21:44:26.91 QS3cTWoY.net
ロジアナは持ってないし、オシロは中華のDSO138しか持ってないw
DSO138でも15,000回転のモーターの回転数を図れますw?

221:774ワット発電中さん
21/03/15 21:59:21.54 WqnnGsec.net
今、DSO138現物がないので確認できないけれど。
100kHzぐらいの正弦波はなんとなく観測できていたと思う。
>DSO138でも15,000回転のモーターの回転数を図れますw?
250回転/秒。
光でも磁力でも1回転で1周期になるようなセンサーを付けて回転数を確認することは余裕では。

222:774ワット発電中さん
21/03/15 22:00:23.38 IHmWJEZ5.net
>>215
15000rpmなら250ppsでしかない。
持ってるならまずは使え。草生やして聞く前に。

223:774ワット発電中さん
21/03/15 22:07:11.05 QS3cTWoY.net
今すぐやってみますw

224:774ワット発電中さん
21/03/15 22:09:11.77 L5kV83Qi.net
信じる信じないっておかしいぞ
原理は理解してる?

225:774ワット発電中さん
21/03/15 22:12:18.03 QS3cTWoY.net
オシロのプローブをモーターの+、オシロのGNDをモーターのーに繋げば良いんですね?
なんか波形が出ました!

226:774ワット発電中さん
21/03/15 22:25:14.25 QS3cTWoY.net
>>219
スケッチがINT0のピン割り込みを使ってたり、Loop内だけでピンを読み込んでたりとか微妙に違うんですよ


227:



228:774ワット発電中さん
21/03/15 22:28:58.86 z3AogD/g.net
まずは単体のスケッチで試すんだ…
切り分けできないだろう… (´・ω・`)

229:774ワット発電中さん
21/03/15 22:51:12.74 vyf1R2Gj.net
>>220
赤じゃない!黄色だ!

230:774ワット発電中さん
21/03/16 08:09:17.25 boau9Fcx.net
>>221
時計だって自前クロックだけでやるスケッチもあれば
外部クロック使うこともあるやん
3種類違うのがあったら喜んで全部試すようじゃないと捗らんぞ

231:774ワット発電中さん
21/03/16 12:15:01.26 29dGi5oM.net
>>224
独りで勝手に捗ってて下さい

232:774ワット発電中さん
21/03/16 23:26:44.12 6cyB547/.net
測定原理が分かってない

スケッチが何やってるか分かってない

233:774ワット発電中さん
21/03/16 23:31:45.34 Vqyw25PG.net
>>226
原理も何もホールセンサーからの信号を拾えばいいだけですよ!
元々ソフトウェアの人間で自作のライブラリー作るぐらいなので、スケッチが分からないとかはないです!

234:774ワット発電中さん
21/03/16 23:41:34.48 6cyB547/.net
じゃあ一体なにに悩んでるんだ・・・

235:774ワット発電中さん
21/03/17 04:00:48.14 WesUyXR4.net
> スケッチがINT0のピン割り込みを使ってたり、Loop内だけでピンを読み込んでたりとか微妙に違うんですよ
アレだ
文字は読めるけど内容がわからない

236:774ワット発電中さん
21/03/17 09:57:58.16 WDv+I/xS.net
>>229
割り込みで拾ってもloop内で拾っても結果は同じはずなんですよ!
それがスケッチごとに最高1,000回転ぐらいバラバラな値がでるんですよ!

237:774ワット発電中さん
21/03/17 10:04:01.21 7U2uDwUl.net
>>230
そのサンプルプログラムと使ってるセンサや回路を提示しないと誰も助言しようがないのでは?

238:774ワット発電中さん
21/03/17 10:30:02.79 SKk220uK.net
>>230
元々ソフトウェアの人間で自作のライブラリー作れるくらいのオツムでどうにかすればいいんじゃねえの?(笑)

239:774ワット発電中さん
21/03/17 10:56:43.34 WDv+I/xS.net
もう自分でフルスクラッチからソースコードを書きました!
これで行きます!

240:774ワット発電中さん
21/03/17 11:09:04.88 E4qSYSys.net
それが正解!
誰が書いたかわからないオープンソースの問題点を読み解くくらいなら作った方が早い

241:774ワット発電中さん
21/03/17 11:24:20.02 uTmNMiiV.net
結局何しにここへ来たんだろう

242:774ワット発電中さん
21/03/17 11:44:43.93 gEzTcpcx.net
自慢話

243:774ワット発電中さん
21/03/17 11:55:22.00 lNz2wZY9.net
どのプログラムが表示している回転数が正しいかどうかは解らないけど自作コードで満足したそうです
めでたしめでたし

244:774ワット発電中さん
21/03/17 11:57:03.87 amVRG+PA.net
背中を押して欲しかったんでしょう

245:774ワット発電中さん
21/03/17 13:19:42.10 E9irK2Es.net
>>233
それで自分のと他人のどれかとは結果が一致したの?
それとも全部違うの?
どう折り合いつけたのかぜひ聞きたいわ、自己満足以外で

246:774ワット発電中さん
21/03/17 14:30:09.01 IOL56JZw.net
Dso138にはテスト用1KHz矩形波出力端子があるので
そこに接続して安定した1kHz(60000rpm)が観測できるものを選定
2台のArduinoがあるなら
1台に15000rpm(250Hz)のパルス出力するスケッチを書き
もう1台で計測して結果が良好なものを選定
これだけだと思うが

247:774ワット発電中さん
21/03/17 20:48:02.36 SRWg17hd.net
「ホールセンサーの出力がオープンコレクタになっている」に100ペリカ

248:774ワット発電中さん
21/03/17 21:08:19.22 jPl1IQug.net
>>240
後半、Arduinoでパルス出力するスケッチを書いたら
オシロか何かで期待通りパルス出ていることを確認してから
それと比較して良好か判断の手順な

249:774ワット粕ュ電中さん
21/03/17 21:16:55.76 YVvC85Zu.net
Dso138持ってるそうなんで動作確認くらいするやろ

250:774ワット発電中さん
21/03/17 23:41:37.95 gEzTcpcx.net
>>243
>>215-218 を読んでみよう。

251:774ワット発電中さん
21/03/18 01:07:33.47 5M6gXrjl.net
道具の持ち腐れってこと?
そんなん初心者以前の問題やね

252:774ワット発電中さん
21/03/18 02:24:44.19 F9noD7qN.net
>>245
初心者にマウント取りたいんならこっち池
スレリンク(denki板)
このスレは初心者熱烈大歓迎質問スレ

253:774ワット発電中さん
21/03/18 14:14:11.22 OeCVjVPA.net
EEPROM書き込みと構造体を組み合わせて利用ということを考えています。
標準EEPROMライブラリのEEPROM.putおよびEEPROM.getを用いると
構造体もそのままEEPROMに記録でき呼び出しもできるという記述を読んだので
試しにString型,int型を含めた状態の構造体をそのままputし、getしてみた
のですが、String型をの部分の文字列の先頭文字が欠けてしまいます。
今までは構造体を用いてはいてもEEPROM記録時はそれぞれの要素を
別個にEEPROMに保存し、String型もByte分割して保存していましたが
これではせっかくの構造体の便利さがもったいないなと・・・
EEPROM.put/getではやはり構造体の中のString型は扱えないのでしょうか?
念のため検証に使用したソースコードを記載します。
URLリンク(harigami.net)
上記を走らせると下記の出力が得られます
------From Var------
TName =1234567890AB
TValue1 =65532
TValue2 =65533
------ReWrite From EEP------ 最初の構造体に上書きで読み込んだもの
TName =234567890AB      <-文字目がかけてしまう
TValue1 =65532
TValue2 =65533
------Write From EEP------  別の構造体にで読み込んだもの
TName =234567890AB      <-文字目がかけてしまう
TValue1 =65532
TValue2 =65533
Done

254:774ワット発電中さん
21/03/18 15:16:14.83 7bvzBKn/.net
構造体にはstringのポインタが入ってるだけだから
構造体にはchar配列でテキストエリアを確保しといて
保存読込の時にc_str()とかで変換してコピーしないと駄目だと思う

255:774ワット発電中さん
21/03/18 15:40:11.69 QAdCWUDQ.net
>>247
雑に斜め読みしただけなんだけど
「hardware\arduino\avr\libraries\EEPROM\src\EEPROM.h」を見ると「get」と
「put」は第2引数に指定された変数の大きさを「sizeof」で取得して必要回数
グルグル回して変数のアドレスから1バイトづつ複写している
で、Stringはただのバイト配列ではなくクラスとして定義されているので、
アドレスから順番に読み出してもバイト配列と同じように読み出されないのかも
とりあえずStringの変数からアドレスを引っ張って中身を見てみたらどうかな
Sting str="012345"
uint8_t *addr =(uint8_t*) &str;
Serial.print(String(*addr)); <-文字コードが表示されるんじゃないかな
実機では試していないから間違ってるかも

256:774ワット発電中さん
21/03/18 15:53:16.05 ts+i1bvg.net
Cの伝統的な構造体は可変長データを中に持つようにはできてないんだよね
つまるところ >>248 の言うとおりだが、それで解る人かどうか。

257:774ワット発電中さん
21/03/18 16:31:11.73 VUwPHIot.net
EEPROMにはStringの文字は保存されてないね
危険なコードだ

258:774ワット発電中さん
21/03/18 16:40:36.57 yWc4J3IY.net
Stringとcharどっち使うのがいいんだろ
自分は便利だからString使っちゃうけど

259:774ワット発電中さん
21/03/18 17:07:54.62 ts+i1bvg.net
使いたい機能に向いてるほうを使うのがいいし、どっちでも実現できるなら好きな方でいいでしょ
メモリたりねぇってときは char でぎちぎちに書く事もあるかもしれないけど

260:774ワット発電中さん
21/03/18 22:48:46.15 aDUZs93V.net
Stringで実装してなんかやべー挙動だなってなったらchar使っときゃいんだよ
自分で使う分ならこれでおけ
人に納めるものなら原因特定しておいて、説明求められたとき話せればおけ
開発なんてそんなもん

261:774ワット発電中さん
21/03/18 23:15:39.92 BZq1htdL.net
確実に1バイト抜けるのなら先頭にダミー入れとくでもいいけどね

262:774ワット発電中さん
21/03/18 23:33:21.52 yftRTUEv.net
>>254
ポインターを理解しよう

263:774ワット発電中さん
21/03/18 23:51:49.58 ts+i1bvg.net
>>255
String class の buffer が指すメモリの文字列消して get したらなんもでてこないでしょ

264:774ワット発電中さん
21/03/19 00:04:21.01 RO68IZ/E.net
>>256
組込ソフト開発5年目の時、上司に「ポインタ変数に1足したのにアドレスの値が4増えておかしいです!」と騒いだのは内緒だ

265:774ワット発電中さん
21/03/19 00:29:40.00 +1bQQOiJ.net
皆様、色々ご回答ありがとうございます。
いただきました情報をもとにいろいろこねくり回してるうちにこの時間になってしまい
申し訳ありません。
>>248
Stringのポインタが入っているのみというキーワードをもとに
先の当方が記載したソースコードを見直してみると確かに
いったん変数内を書き換えるように35行目にて
Datacomp1.TName = "";
とやっているためポインタでつながっているおおもとの変数
が書き変わって出力時の表示の時に1文字目が消えて(書き変わって)
しまっていたようです。
その後同部分をDatacomp1.TName = "  ";のように空白を増やせばその文字分
出力の文字列も変化することを確認いたしました。
>>251
おっしゃるとおりポインタのおおもとの変数が常に健在の状況で
実験していたため、たまたま出力されていましたが構造体内のStringに文字があるわけで
はないのでEEPROM.put時も文字列ではなくアドレスだけ記録されており
書き込み部分をコメントアウトしてEEPROM.getだけしたものでは構造体内のStringは
空っぽでした。
つまり構造体の中に実体はありませんでした。

>>249
記載いただいたコードを実行してみた所、189という数値が得られました。
 URLリンク(harigami.net)
これは変数strのポインタアドレスが表示されているという事であってますか?
つまり構造体Stringには実体ではなくこのアドレスが入っているだけという感じなのでしょうか。
細胞のたらない当方の脳ではこんな想像理解しかできず申し訳ありません。

上記を元に色々こねてとりあえず以下のような感じになりました。
 URLリンク(harigami.net)
主たる取り扱いはStringを用いて、構造体への格納j時には教えていただきましたc_str()
で得たDataを構造体内のcharに複製する形をとりました。
また、主たる取り扱い時もcharに変更したバージョンもあわせて試してみました。
 URLリンク(harigami.net)


266:ba-04e67ce8e637 上記2種 いずれも書き込みに関する部分をコメントアウトして読み込みだけでも 文字列取得を行うことができました。 これらの記述で”ばっか、おまえこれやべーよ”なんてところがありましたら ご教授いただければと思います。



267:774ワット発電中さん
21/03/19 00:44:49.16 5vYzTG/5.net
>>259
strcpyのオーバーフローに注意して!

268:774ワット発電中さん
21/03/19 01:01:17.53 +1bQQOiJ.net
>>260
なるほど、確かにString型から持ってくるとき文字数カウントしないと危ない感じですね。
charで確保した文字数を超えないように制限を設けるようにいたします。

269:774ワット発電中さん
21/03/19 09:40:42.84 ZTt/+N5g.net
>>259
>つまり構造体Stringには実体ではなくこのアドレスが入っているだけという感じなのでしょうか。
String 変数 str には実体は入っていない(実体へのアドレスが入っている)
だから、構造体にString 変数 strを入れても実体へのアドレス以上のものは入らない
という感じ。なので、実体の文字列に到達するにはもうちょい工夫(というかStringクラスの内部構造の理解)が必要だが、
クラス内部を知らなくても、実体へのメモリアドレスを知りたかったら str.c_str() を使えばいいように設計されています。
構造体に&を付けて得られるメモリアドレス、&str というメモリアドレス、そして str.c_str() が返すメモリアドレスを見比べると面白いかもしれませんね。

270:774ワット発電中さん
21/03/19 10:31:20.92 ZTt/+N5g.net
熱烈大歓迎スレなので
>>259
>>262 の最後の行のを、せっかくなので自分でコード用意してみた
出力結果とそのコメントも後ろのほうにつけてあるので、興味があれば(なければスルーで大丈夫です)
URLリンク(harigami.net)

271:774ワット発電中さん
21/03/19 10:42:26.78 56IJVQc6.net
>>263
Auduinoのインストールディレクトリの↓の中のWStringがStringクラスだから
ソースを見てみると一目瞭然だと思う
Arduino/hardware/arduino/avr/cores/arduino/
Stringの中でchar配列のbufferをアロケートしてStringの文字列を入れている
c_str()はそのbufferのポインタをreturnしてる
内部でbufferのリアロケートもされるから文字列実体の場所はc_str()で取り出さないとわからない

272:774ワット発電中さん
21/03/19 10:46:34.26 ZTt/+N5g.net
>>264
他にintのデータメンバが2つある、とかソース見たから書けるわけで、私は読んでますが、
あれを読めって初心者にはしんどいかと思いましてねw

273:774ワット発電中さん
21/03/19 11:04:00.01 UuHTcai7.net
まあわざわざ標準クラスの中身見るのは本職ぐらいじゃね

274:774ワット発電中さん
21/03/19 22:04:25.05 QfVBqYZm.net
UNOのRAM領域2048バイトを88%使ってたら
挙動が不安定になったらしく一晩ハマっちゃった
デバッグ用のSerial.printをコメントアウトしたら68%まで
下がって良かった… かなり食ってたんだなこの豚ぁ

275:774ワット発電中さん
21/03/19 22:09:51.83 tKJkRZMy.net
そこに表示される容量はスタックを考慮されてないからな
あとSerial.printに文字列そのまま渡すとRAMに展開されるからFマクロでくくりたまえ
そうすればROMから読むようになる

276:774ワット発電中さん
21/03/19 22:15:24.96 Yn/MqfEf.net
>>268
Fマクロってprintfに使う方法はない?

277:774ワット発電中さん
21/03/19 22:30:53.59 tKJkRZMy.net
>>269
printf_Pにして文字列部分はPSTR()で

278:774ワット発電中さん
21/03/19 22:31:22.81 pT+TcL5g.net
PSTRとsprintf_Pでどうぞ

279:774ワット発電中さん
21/03/19 22:40:06.79 Yn/MqfEf.net
>>270
有難う

280:774ワット発電中さん
21/03/19 22:41:34.62 QfVBqYZm.net
>>268
さんくす
Serial.print( F("Thanks.") );
こんな感じね…
コレ知らんかったなあ…

281:774ワット発電中さん
21/03/19 22:52:43.40 OO6uQxh9.net
勉強になるぅー


282:!



283:774ワット発電中さん
21/03/20 05:30:16.65 XEu5akm0.net
ここ2ヶ月くらい集中してjavascriptやらフロントエンドやってたから
戻ってくるのにちと大変だった…

284:774ワット発電中さん
21/03/20 14:34:56.07 +N7dxOrq.net
ここ2ヶ月くらい集中して IchigoBASIC やら Go やってたから
戻ってくるのにちと大変だった…
やっぱC++が一番だわ

285:774ワット発電中さん
21/03/21 07:39:48.77 Yt+EQLp6.net
ここ2か月くらい集中してGoToトラベル中止してたから
客が戻ってくるのにちと大変だった…
やっぱGoToでラベルに飛ぶより関数呼んで戻ってくるのが一番だわ

286:774ワット発電中さん
21/03/21 19:07:35.03 BeLFz/VJ.net
GoToはあかん… GoToはあかん…

287:774ワット発電中さん
21/03/21 19:11:42.70 IJWQ4ghg.net
>>70
今時goto拒絶みたいなこと言ってると恥かくぞ

288:774ワット発電中さん
21/03/21 19:18:34.21 chWmkOUc.net
昔はカミソリgotoと呼ばれたものだが

289:774ワット発電中さん
21/03/21 19:51:53.95 1hxZiVl4.net
URLリンク(i.imgur.com)

290:774ワット発電中さん
21/03/21 20:14:57.15 BF0PKMfM.net
今じゃ昼行灯

291:774ワット発電中さん
21/03/22 07:58:58.36 HH8WjHMQ.net
Vue.jsみたいなクソリッチな開発したあとにarduinoもどると、ああ狭い部屋落ち着く…みたいな感情になる

292:774ワット発電中さん
21/03/22 08:14:30.06 VZEO8fRt.net
まぁ作ってるものがその程度なんでしょうw

293:774ワット発電中さん
21/03/22 10:10:36.43 kTeFxg1k.net
そりゃArduinoでバリバリなUXとか作らないしな。

294:774ワット発電中さん
21/03/22 16:38:18.62 VZEO8fRt.net
UX?
なんか誤解してない?w

295:774ワット発電中さん
21/03/22 19:26:07.45 JEolAMmh.net
なんかセールやってたからELEGOOのセットのやつポチってみた

296:774ワット発電中さん
21/03/22 21:46:58.10 r2t3W2gx.net
>>283
aruduinoで集めたセンサーデータをVue使って
システム画面やグラフ化したけど楽しかったぁ…

297:774ワット発電中さん
21/03/23 01:37:43.51 ILvqdq2k.net
ウェアラブルのためにとにかく軽くて小さくて
Bluetoothでリモコン操作できるのを作りたい
モーター2つの方向とPWM速度制御したい
マイコンはBeetle BLEで良いですか?
あるいはM5 Atomかなあ?

298:774ワット発電中さん
21/03/23 08:36:27.88 HE9ZrQMa.net
おなか痛くてシリアルモニタみてたらうんこもらしました!!!
どうすればいいですか!!!??

299:774ワット発電中さん
21/03/23 09:34:05.82 Njl/COJU.net
>>289
ピンクローターのコントローラーになら入れられそうだな。

300:774ワット発電中さん
21/03/23 10:05:54.76 O9sHbMdc.net
>>290
まずは服を脱ぎます

301:774ワット発電中さん
21/03/23 10:16:44.56 Fl+ktHwE.net
次にたたみます

302:774ワット発電中さん
21/03/23 10:50:45.71 YINWMMm7.net
>>291
ドキッ!

303:774ワット発電中さん
21/03/24 12:51:04.59 fZyPTlZx.net
ポチったスターターセットのやつ届いたから一旦全部出したらもう二度とケースに収まらなくなった...新手のパズルか?

304:774ワット発電中さん
21/03/24 16:30:44.37 en31eAcR.net
>>295
どのスターターセット買ったん?

305:774ワット発電中さん
21/03/25 12:05:04.29 5V6ym0aC.net
arduino mega ですが、Vinから9V供給した場合、5Vの端子からは2.7Vの電圧しか
出てませんでした。DCプラグから9V入れると5Vの端子からは5Vちかく出てました。
5V欲しかったらDCプラグから供給するしかないですかね・・・

306:774ワット発電中さん
21/03/25 12:20:51.81 Q9SJk1Y3.net
回路図見てみ

307:774ワット発電中さん
21/03/25 12:44:33.53 SoK89pmT.net
それしかないんならそれしかないんだろ

308:774ワット発電中さん
21/03/25 19:22:15.15 Nvy4c4aq.net
>>296
ELEGOOのスターター


309:Lットってやつ 何度もチャレンジしてたらきっちり入るようになった やっぱパズルだなこれは



310:774ワット発電中さん
21/03/25 19:24:35.22 Nvy4c4aq.net
あとDHT11使って温湿度モジュール使ってみた
それっぽい温度と湿度でて感動ー

311:774ワット発電中さん
21/03/25 22:38:15.47 APcILWzT.net
>>297
Vinに9V入力した場合でも5V端子には5V供給されるはずなので、何か間違ってるとおもう

312:774ワット発電中さん
21/03/25 23:33:50.89 O2wffFMX.net
>>297
MEGAの回路図見るとわかるけど、DCプラグとVin端子との違いは、ダイオードの有無だけでしょ?
中華コピーのArduinoとかで、オリジナルと回路やパーツが違ってるんじゃ無い?

313:774ワット発電中さん
21/03/26 07:40:06.44 DKJqIkRr.net
>>302
レギュレータをすでに壊してるに100ペリカ

314:774ワット発電中さん
21/03/26 10:14:14.09 YX0eEbrS.net
>>304
同じく5000ガバス

315:774ワット発電中さん
21/03/26 15:26:58.63 ux7cgTGx.net
ありがとう。組んでた回路全部外してVin供給だけにしてみたら
ちゃんと5Vでてました。ひょっとしてプログラム流し込むのに
USBケーブルつないでたけど、その影響だったりするのかな。
順番に組み上げていって原因探ってみます。

316:774ワット発電中さん
21/03/26 15:30:44.62 30TpuQUk.net
>全部外してVin供給だけにしてみたら


317:774ワット発電中さん
21/03/26 16:40:51.45 3zPb51UU.net
goto文使ってしまった・・・

318:774ワット発電中さん
21/03/26 18:11:59.79 3zPb51UU.net
URLリンク(www.engbedded.com)が落ちてるわ・・・

319:774ワット発電中さん
21/03/29 13:42:58.51 dCmWjRSM.net
まだ落ちてるわ。。。
engbedded.comに変わる代替サイトって無いのかな・・・

320:774ワット発電中さん
21/03/29 13:49:14.10 dCmWjRSM.net
いっぱいあったわ

321:774ワット発電中さん
21/03/29 20:45:10.91 D/Vrofjp.net
>>308
GoToとラベルは停止したり再開したりしてるから使う際は細心の注意が必要


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

282日前に更新/285 KB
担当:undef