AVRマイコン総合スレ Part41 at DENKI
[2ch|▼Menu]
[前50を表示]
500:774ワット発電中さん
19/01/15 17:49:27.25 dsblupnX.net
自分が最終的に落ち着いたのは
uno,nanoは内蔵シリアル
pro mini, attinyはAliExpressで150円ぐらいのUSBasp
pro miniでシリアル通信が必要なときは、これまた150円ぐらいのシリアルコンバーター

501:774ワット発電中さん
19/01/15 20:36:19.53 aL4ZsaoC.net
>>468
一回書き換えると元に戻せないヒューズだけは、高電圧で書き換え
どのヒューズがってのは状況によって変わった記憶が
うろ覚えでごめん、なんか俺もそれで困った記憶があって、道具無くてそのときだけチップ書い直した

502:774ワット発電中さん
19/01/16 05:31:15.74 vHTTwZ0E.net
具体的にこのライターでってのが一向に出てこないんだなAVRの場合。
みなさん自作なの?
それとも>>483の言ってるのが正しいってこと?

503:774ワット発電中さん
19/01/16 06:30:50.19 JxKFcCud.net
なんの話してるんだ??
AVR ISPなんていっぱい出てるじゃないか。
互換品もいっぱいあるが不安なら純正品にしとけばいいじゃん。

504:774ワット発電中さん
19/01/16 07:03:43.52 nTTrVDtX.net
disりたいだけだろ?
じゃなきゃコミュ障

505:774ワット発電中さん
19/01/16 08:52:44.70 0POfzSoQ.net
2011年くらいからずっと AVRISPmk2 使ってて困ってないけど、「今一番」かどうかなんか知らんし

506:774ワット発電中さん
19/01/16 09:01:57.59 FsdT9eXf.net
RES端子を一度入力にすると戻せないってのが痛い

507:774ワット発電中さん
19/01/16 09:02:51.21 GUkZOlFZ.net
>>486
アホには無理だから他の石使え
そして此処には来るな
と言ってるんだよ

508:774ワット発電中さん
19/01/16 09:36:14.97 3BHnezLD.net
>>481
マイコン初心者なので、余計なトラブル回避したくて、
純正ライタ->純正ICEと来て、デバッグ環境まで手に入りました。

ただ、debugwireのヒューズ切り替えがめんどいので、
atmega328から移行を考えてます。
良さげな石ありますか?

509:774ワット発電中さん
19/01/16 09:39:49.71 dpoe4F92.net
最近、avrを堪能しようと思って、atmel-ice 買った。
ところで、ispで、tool から電源供給できるライターってあるのですか?
また、コマンドラインから、atmel-iceを使って、書込み実行する方法ってありますかね?
毎回 ctrl-shift + P で画面開いて、toolをiceに選択しなおして、memory開いて、flash,eeprom と
順番にボタン押していくのが面倒なんです。

510:774ワット発電中さん
19/01/16 10:02:12.26 xH9fo4XL.net
今なら
URLリンク(akizukidenshi.com)
これじゃね?
使ったことはないのだけど

511:774ワット発電中さん
19/01/16 10:32:44.58 50+mzAak.net
純正のAVRISPmk2ってとっくに販売終了していて互換品しかないんだがな。
>>492
DIP限定ならjtagのあるmega644とか。
SOPでもいいなら、俺的にはUPDIが使えるtiny1シリーズやmega0シリーズが快適すぎる。
UPDIのやつはリセットピンをIOにしても戻すは割と簡単だし。(ただし出力設定にしてない場合に限る)
>>493
atprogramでググレ

512:774ワット発電中さん
19/01/16 11:24:58.10 itHH39Ap.net
俺は純正のライタが高くて買えないので、泣きながら自作した。
URLリンク(i.imgur.com)
裏側
URLリンク(i.imgur.com)
書き込み後にリセットさせたくて、少し改造。
URLリンク(i.imgur.com)
RTS-CTSの直結ラインを0.1μFで優しく受け止め、リセットピンに接続。
パーツは秋月で全部揃う。
1300円くらい。

513:774ワット発電中さん
19/01/16 12:45:26.28 0POfzSoQ.net
ちゃんと AVRISPmk2が昔の製品って解るように書いたつもりなんだがなぁ

514:774ワット発電中さん
19/01/16 13:23:34.05 dpoe4F92.net
>>495
atprogram 初めて知りました。ありがとうございます。
ところで、以下のような fuse 設定をソースに記述しているのですが、
これを、どうやって、writer 書き込めるのかわかりません。
.elf ファイルにあるとは思うのですが。 -fs -f xxxx.elf では設定できませんでした。
FUSES =
{
.low = LFUSE_DEFAULT,
.high = (FUSE_SPIEN & FUSE_WDTON & FUSE_BODLEVEL1),
.extended = (EFUSE_DEFAULT),
};

515:774ワット発電中さん
19/01/16 14:08:48.08 50+mzAak.net
下手に抜粋すると間違いが起きそうなので、俺が実際に使用してるバッチ内容をコピペするから適当に変更してくれ。
atprogram -f -t atmelice -i UPDI -d atmega4808 program -c --flash --fuses --verify --file mega4808.elf
推測だが、コマンドの「program」が抜けてるんじゃないかな。
コマンド内にサブコマンドがあってさらにそれに対するオプションと書式がややこしいんだ。
-fsは--fusesと同じ、-fは--fileと同じだからそのままでいい。
atprogramの直後にある-fはツールのファームバージョンが違っても強制するオプションでかぶるから俺は--fileで書いた。

516:774ワット発電中さん
19/01/16 14:11:17.33 QwJrDHFk.net
atprogramってavrdudeとどう違うの?似たようなもの?

517:774ワット発電中さん
19/01/16 14:21:41.66 50+mzAak.net
AtmelStudioに付属してる純正のコマンドラインツールだよ。
基本的には純正ライタ・デバッガでしか動かない。

518:774ワット発電中さん
19/01/16 14:24:57.26 QwJrDHFk.net
なるほど純正だけなのね

519:774ワット発電中さん
19/01/16 15:51:23.50 WdmgNOi2.net
>>491
貴方のご意見の通りのようですね。
AVRはやめてPICを始めることにしました。
開発環境も書き込み器もすぐにこれだなというものの目星がつきました。
開発環境はすでにインストールし、PICとライターはもう注文しました。
感謝しています、ありがとうございました。

520:774ワット発電中さん
19/01/16 16:05:33.77 lkStCnQI.net
>>488のようなのが今の置き忘れられたAVRを象徴してるね。
面倒な初心者はディスり扱いで排除する貧相な度量。
Arduinoの構成パーツに成り下がり、単体では依然PICに追いつけず、こともあろうにそのライバルに買収された。

521:774ワット発電中さん
19/01/16 16:07:46.30 50+mzAak.net
MPLABでAVRも開発できるし書き込みもできるんだけど、
新しすぎて情報が少ないんだよね。

522:774ワット発電中さん
19/01/16 16:07:50.17 dpoe4F92.net
>>499
完璧にうまくいきました。 助かりました。
fuses の設定を間違えて、1個 ispできなくなったけど...
高電圧ライターは、入手するか、、、買うかどうしようかな。

523:774ワット発電中さん
19/01/16 16:11:11.67 50+mzAak.net
オツカレー
AVRリセッターでググレw

524:774ワット発電中さん
19/01/16 16:19:40.79 zAWLkHn0.net
いつか役立つかもしれないユニバーサルライタを買うというのもあり

525:774ワット発電中さん
19/01/16 16:21:19.87 0xCj1Zjt.net
>>505
気になって最近の情勢を調べてみたら、
どうやら、これからの初心者用はMPLAB IDEとこれ
URLリンク(akizukidenshi.com)
ということのようだね。
新参を拾い上げる度量もない古株にはいろんな意味で無縁なんだろうけど…。

526:774ワット発電中さん
19/01/16 16:27:53.38 VW4FbHbt.net
>>509
それ買わせて結局PIC使いに化けさせるという戦略だなw
さすがに良く考えてある。

527:774ワット発電中さん
19/01/16 16:42:01.88 AcYiB90F.net
AVRもPICも両方使えばいいじゃん

528:774ワット発電中さん
19/01/16 16:47:19.59 50+mzAak.net
>>511
おっしゃる通り。
初心者だからこそ両方使って、両方使えるようになれて、適材適所に使い分けてもらいたい。
MicrochipのおかげでAVRの新シリーズも安価なんだし。

529:774ワット発電中さん
19/01/16 17:45:05.20 dpoe4F92.net
>>511
そういうことですね。
有益な、情報が得られれば、それだけでありがたいです。
別に正しくなくても、きっかけとして、自分で検証すればいいだけなので。

530:774ワット発電中さん
19/01/16 19:02:30.48 k+F5W3C6.net
私は、PICとAVRが目の前に置いてある状況で、
「どちらを使っても構いませんよ」
と言われたとたら、どうしてもAVRを選んでしまう。
何と言えばいいのか、PICファンの皆様、PICは私の特異体質に合わないんですよ。
昔、PICを始めた時にアセンブラでプログラムを書いていたら頭痛がしてきて、
それでもライタなどの初期投資代金がもったいないので、



531:慢して、さらに2本目も書いたのだが、頭痛はひどくなり、 このまま続けていたら、PICのアホが私に乗り移ってしまいそうな恐怖に駆られてw 3本目はとうとうPICを諦めてAVRに乗り替えてしまった。 もちろんISPライタなどの金がまた掛かったが、プログラミング中の頭痛はなくなった。 AVRは良い。私のナスがママ、胡瓜がパパ、意のままに動く。 私の特異体質のせいだと思うから誰の参考にもならないだろうな。 (御精読を感謝します。怒っちゃヤーよ、ほら笑って笑って)



532:481
19/01/16 19:39:25.93 tlSYZtA7.net
Arduino NanoをライターにしてATmega328PにLチカをさせるところまで来ました。
>>482さん、アドバイスありがとうございます、ライター関連出費ゼロで済んでますw
外付けの16MHzのセラロックで動かしてるんですが、半部くらいの速度になってしまいます。
あと、内蔵クロックに設定すると動きません。
ま、ぼちぼち解明していくつもりです。
とりあえずお礼とご報告まで。

533:774ワット発電中さん
19/01/16 20:19:47.83 dpoe4F92.net
atmel-ice の他、
pic用で、pickit4 買ったんだけど、avrの対応はどうなっているのか良く分からんです。
UPDIだけの対応かな? 内部で12V生成していると思うので、avrの高電圧モードもあればいいんだけど。。。

534:774ワット発電中さん
19/01/16 21:24:56.29 yQ68hMrD.net
PICKIT4はATMEL-ICEと同等の対応見たいで12VはUPDI/HVだけのようです。
snapのUser GuideにPICKIT4vsSnapの比較が出ていてわかりやすいです。
MALAB Xより次期AS7の方がさきにPICKIT4対応できるのではと期待してます。

535:774ワット発電中さん
19/01/16 22:03:57.15 Hrxxgtjg.net
PICkit4は既にAS7で使えるようになってる

536:774ワット発電中さん
19/01/16 22:52:32.06 yQ68hMrD.net
>>518
おおAS7単体でなくMPLABも一緒にインストすればAS7で使えるようになるのですね。 TNX
snapもサポートしてくれないかな

537:774ワット発電中さん
19/01/17 00:58:31.25 xmtr98yn.net
マイコン始めようと思ってる、AVRとH8と迷って中。
やっぱAVRがおすすめ?

538:774ワット発電中さん
19/01/17 01:05:20.16 Q+iQkUt3.net
その二択ならAVR
H8は今更感しかしない

539:481
19/01/17 01:09:00.83 yT0B+Wvw.net
>>520
迷う理由を聞いてみたいです。

540:774ワット発電中さん
19/01/17 01:12:14.70 NSPFVMlH.net
H8のボードでしょ?
Arduinoと迷ってんじゃないの?

541:774ワット発電中さん
19/01/17 05:22:36.53 yis4hE/d.net
>>514
20年も過ぎればデバイスも開発環境も変わる、、、
とは限らないか

542:774ワット発電中さん
19/01/17 08:15:36.22 DFTURxFt.net
>>520
今から始めるならH8じゃなくてRL78じゃねえの。せめてR8Cだわ。
デバッグ環境考えるとルネサスのほうがいいと思うがねえ。

543:774ワット発電中さん
19/01/17 08:15:56.69 AqJSHLq+.net
>>519
MPLABは不要

544:774ワット発電中さん
19/01/17 08:45:00.93 CWoLrWiy.net
AVRのデバッグ環境が劣っているとも思えんけどね

545:774ワット発電中さん
19/01/17 09:30:01.35 gQzEYPOp.net
>>495
mega644、tiny1、mega0ですか、メモしときます。
644、中々いい朝お値段しますね。
後二つはまだ詳細分かってないですが、調べてみます。
最近はDIPじゃない方がむしろ都合いいです

546:774ワット発電中さん
19/01/17 09:32:36.86 sQRL5cMf.net
誘導ミサイルに頼りすぎるとドッグファイト能力が落ちるとかなんとか昔トップガンでやってた
誘導ミサイル:高性能デバッガ
ドッグファイト:基本的なプログラミング能力

547:774ワット発電中さん
19/01/17 10:05:33.09 JAqxnnR+.net
>>529 そですね。
そういう意味でのマイコン選びなのですが…
アルデュイーノやラズパイは、できあがりすぎていると感じました。
ただ、PICは統一性がなく、余計な手間がかかりすぎる。
その上で、AVR、H8(RL78、R8C)、Z80あたりを探っているのですが。
H8系は面白そうですけど簡易工作レベルでは、高性能すぎると感じます。
ゆえに、AVRが妥当かと。

548:774ワット発電中さん
19/01/17 10:35:41.44 CWoLrWiy.net
H8が高性能だって?
まあ、そう「感じた」んなら仕方ないけど・・・

549:774ワット発電中さん
19/01/17 10:52:49.22 QCZ9EK+q.net
AVRより高性能なのは間違ってない
コード見るとAVRはコンパイラがかなり苦しんでる

550:774ワット発電中さん
19/01/17 11:30:54.75 dyZV2em2.net
>>530
RL78とかは、24bit ADC とか、OPAMP x4 とか、機能が満載のMPU揃ってるけど、
小口での入手性や、開発環境考えるとAVRと、外部ADC,OPAMPというのが、妥当なんだろうなと思っています
。今度、仕事で使うけどね。
PICも比較的、機能充実しているけど、それなりのノウハウが必要な感じですね。

551:774ワット発電中さん
19/01/17 12:32:16.02 jSkYbzg1.net
RL78のことは全く知らないけどマイコンなら電源は5Vか3.3Vでしょ?
24bitのADCとか周辺回路も含めてどうやってローノイズ化するの?
温度変化や機械衝撃だけでも下位数bitはグラグラ動きそう。。

552:774ワット発電中さん
19/01/17 12:38:32.13 YBAu5xav.net
>>534
0.1uVオーダーって帯域にもよるけど
熱雑音の方が大きいな
普通の実装では全く意味を持たない世界

553:774ワット発電中さん
19/01/17 12:54:12.03 jSkYbzg1.net
>>535
そう、アンプ無しで脳波計ができる。

554:774ワット発電中さん
19/01/17 13:12:18.43 JAqxnnR+.net
レスありがとうございました。
しかし、ど素人レベルでも読めるAVRの参考書籍がAmazonみてもほとんどありませんでした。
H8系は、これはいけそう!って本が何冊か見当たりました。
PICの本、多いけシステムにど統一性が無いですし。
とりあえず、AVRとH8系を見ていきたいと思います。

555:774ワット発電中さん
19/01/17 13:18:09.28 GjkWII95.net
>>526
ふむFWのUpdateにMAPLABが必要だっただけで、対応FWを持ったPICkit4は
最初からAS7で使用可能なのですね。 

556:774ワット発電中さん
19/01/17 14:12:22.60 YvVo9clC.net
クロックの周波数変えたいだけなのにヒューズビットの決め方がわからん。
アホなのでPICに変えます。

557:774ワット発電中さん
19/01/17 15:54:13.78 tlH0JF1y.net
クロックの周波数を変えたいならCLKPRレジスタでは?

558:774ワット発電中さん
19/01/17 16:08:39.27 sQRL5cMf.net
ヒューズビット計算機とか
URLリンク(www.engbedded.com)

559:774ワット発電中さん
19/01/17 16:41:49.92 rOsqwnuw.net
Arduino IDEから適当な周波数を選んで「ツール」→「ブートローダを書き込む」では?

560:774ワット発電中さん
19/01/17 16:54:32.43 jge/9xRH.net
>>542
後半は何となくわかる。
前半の
>Arduino IDEから適当な周波数を選んで
を具体的に頼む。
現行のボードの中から選ぶってことなら選択肢ほとんど無いような。

561:774ワット発電中さん
19/01/17 17:11:19.22 rOsqwnuw.net
>>543
じゃあ、IDEに付属の「avrdude.exe」を使う方法かな

562:774ワット発電中さん
19/01/17 17:18:30.65 rOsqwnuw.net
>>541
このサイトで設定してavrdudeでヒューズを書き変える
ヒューズはL・H・E(Low,High,Extended)の3種類ある
例えば、Lヒューズを「0x7a」にしたければ
avrdude -C c:\avrdude\avrdude.conf -p m328p -P COM6 -c avrisp -b 19200 -U lfuse:w:0x7a:m
とかにする。引数はだいたい分かると思う

563:774ワット発電中さん
19/01/17 17:19:19.28 rOsqwnuw.net
ヒューズの書き換えは慎重にね

564:774ワット発電中さん
19/01/17 17:19:49.37 v+YVv32f.net
>>543
URLリンク(www.arduino.cc)
ここの Minimal Circuit
見れば載ってる

565:774ワット発電中さん
19/01/17 17:20:47.99 rOsqwnuw.net
フリーでGUI版があったりするから探してみて
連投すんません

566:774ワット発電中さん
19/01/17 17:21:49.59 EkGTa1uN.net
>>541
ありがとう、知らなかった。
これ使ってboards.txtを編集するという方法でやってみる。

567:774ワット発電中さん
19/01/17 17:25:42.59 EkGTa1uN.net
>>547
うんそれそれ、ありがとう。
ID:rOsqwnuw
ありがとう。
コマンドラインはなんかとっつきにくいけど、慣れてきたらGUI版から試してみる。

568:774ワット発電中さん
19/01/18 07:21:42.64 lx1J/wOG.net
存在しなければ、あるいは使いにくいなら、
自分で好きなようにヒューズ読み書きプログラムを作れば済む話しなのに。
>>474

569:774ワット発電中さん
19/01/18 09:33:16.20 RqV8m+ly.net
いや、だから作ってたって話なんだろ?

570:774ワット発電中さん
19/01/18 15:27:27.55 lx1J/wOG.net
そうか、そうれはスマンかった。

571:774ワット発電中さん
19/01/18 15:33:00.27 qcBWi2lF.net
前にAliでATtiny13A開発ボードとかいうよくわからん基板を買った(1枚60円くらいで5枚買った)
ISPがつなげられてLEDが2つ付いてるから13Aで遊ぶのにいいかなと思っていたけどずっと放置してた
URLリンク(i.imgur.com)
なんでmicroUSBコネクタが付いてるのかどうも気になってたけどよく調べてみるとtiny85乗せてファーム書き込むとDigisparkになるらしい
URLリンク(s3.amazonaws.com)(この回路図D3の向き逆じゃね?)

572:774ワット発電中さん
19/01/18 15:58:01.68 An6x4Zbc.net
>>551
必ずこういう口調で殺伐と畳みかけてくる奴がいるよね、このスレ。

573:774ワット発電中さん
19/01/18 16:37:15.96 lx1J/wOG.net
>>555
「殺伐と畳みかける」と受け取らせてしまったのなら申し訳無かった。
私としては雰囲気を悪くするつもりではなくて、ホントに純粋に単純に
「無いなら作ればいいのに」、「必要なら作ればいいのに」
なぜ作らないんだろ?と思ったんだよ。
作らなければ一生出来ないし、作ろうとすればいつかは出来る。
 「なさぬは人のなさぬなりけり」
今後は「殺伐と」にならないように書く時に気をつける。
どう気をつけたらいいかよく分らないけどw

574:774ワット発電中さん
19/01/18 16:53:59.43 cM9Rz04n.net
>>556
悪意が先に立つから
>AVRのヒューズ/ロックビット読み書きソフトを作っていて、
が目に入らないんだろ。
人としての品格の問題だから気をつけようがない、あんたの場合は。

575:774ワット発電中さん
19/01/18 23:31:46.07 egR6Lqh7.net
>>554
USBから電源を給電するのであれば逆だよね
JP2から給電した場合はUSBの5Vに接続する必要無さそうだし、回路図が間違っているのかもね

576:774ワット発電中さん
19/01/19 12:42:26.12 z83xjl0b.net
AVRドラゴンの追加部品セットがあればライターやリセッタ周りの悩みはかなり減るんだが
自由度ありすぎて困る

577:774ワット発電中さん
19/01/19 16:09:15.63 cnrSZwi7.net
>>557
多分、勘違いしていると思う。
 >>551 の > AVRのヒューズ/ロックビット読み書きソフトを作っていて

 >>474 の > 自分で好きなようにヒューズ読み書きプログラムを作れば済む話しなのに。
も私が書いたんだよ。
そうか、だから、
 >>552 の > いや、だから作ってたって話なんだろ?
という私にとっては意味不明のレスになったのか?
私のレス方針は「和を以て貴しとなす」と「アホの相手はしない」なのでw
怒られたのならとりあえず謝っておこう、と >>553 を書いた。
なお、私に人としての品格が無いかどうかはよく分らない。
人に言われたことはないけど、考えてみます。
(他の人には何の興味も無いでしょうから、この話題はこれで終わりにします)
私がAVRを始めた時の製作順序は、
1)秋月で購入したライタで1作目、2作目のプログラムを作る
AVRが気に入ったので使い続けることを決める
2)回路に影響されないROMエミュレータ方式のライタを作る
3)ブラックボックスがイヤなのでデバッガを作る
4)ヒューズ・ロックビットのGUIソフトを作る
5)パラレルライタを作る

578:774ワット発電中さん
19/01/21 08:43:24.09 rJaG0WOd.net
ny85の高精度版まだかよ

579:774ワット発電中さん
19/01/22 18:04:22.05 25ahaHrv.net
PWM AUTO-SHUTDOWN MODE

580:774ワット発電中さん
19/01/22 18:07:22.63 25ahaHrv.net
PICの場合、PWM AUTO-SHUTDOWN MODE があって、コンパレータのイベントで、
PWMのstop/startを自動的に制御できる機能がありますけど、
avrの場合、この機能のある品種ってありますか、割込みで制御すればいいだけなんですが、便利なので。

581:774ワット発電中さん
19/01/22 19:28:35.39 YilKcmeD.net
イベントシステムを搭載しているチップのA型カウンタは
イベントがHiの間だけカウント動作させる機能がある。
コンパレータ出力はイベントを発生できるので目的の動作ができるでしょう。

582:774ワット発電中さん
19/01/22 19:49:44.39 25ahaHrv.net
>>564
ありがとうございます。
tinyだと、
attiny1607 が該当しているみたいですね。
QFPしかないのは、残念。

583:774ワット発電中さん
19/01/22 20:07:58.01 25ahaHrv.net
>>564
attiny412も8pinでevsys対応してますね。

584:774ワット発電中さん
19/01/22 20:36:53.51 4N5QGeD9.net
AVRみたいなマイコンでprintfってコマンド打つとどうなるの?
PCみたいにディスプレイが標準端末ならまだしも
マイコンに標準端末って無いじゃん

585:774ワット発電中さん
19/01/22 20:55:04.42 SUk48xYi.net
>>567
何もおきない
標準出力をシリアル出力に設定しておくとターミナル等のアプリに文字列が出力されて便利

586:774ワット発電中さん
19/01/22 20:58:27.98 NlURk6OK.net
>>567
ArduinoみたいにPCとUSB接続してクロス開発するような処理系だとPC側に仮想端末を持たせて、これにprintf他の出力関数で文字列を出力(キーボード入力も)できる。
Arduino内で無くてもPCで起動されてる汎用端末のアプリとも同様に入出力できる。

587:774ワット発電中さん
19/01/22 20:59:27.65 3DIxSH8u.net
>>567
printfが呼び出す先、つまり putc とかを自分で作ってあげないとリンカーエラーでコンパイル
できない場合が多い。
たいていはUARTなんかを出力先にしてデバッグしたり。
もちろんディスプレイを付けてあげればパソコンのようなこともがんばればできるし、
Arduinoなんかは出来合いのもあるんではないか。

588:774ワット発電中さん
19/01/22 22:01:19.35 NlURk6OK.net
>>567
>>569 の他にもbluetoothユニットを介してスマホの仮想端末アプリとも同様の入出力できる。
また有線LANボードを追加するとミニサーバーを立ち上げて、HTMLを書いとけばLAN上のPCやスマホのブラウザからアクセスできる。
自分はArduinoに取り込んだセンサー情報を端末から読むときに使ってる。

589:774ワット発電中さん
19/01/22 22:48:56.69 4N5QGeD9.net
>>568
> 標準出力をシリアル出力に設定しておくと
そういうことか!
そういう設定ってプログラムの中でやるの?
それともヒューズビットか何かをいじるの?

590:774ワット発電中さん
19/01/22 22:50:12.17 3DIxSH8u.net
自分で作るのだよ

591:774ワット発電中さん
19/01/22 23:14:01.59 SUk48xYi.net
>>572
static int stdPutc( char c, FILE *stream );
static FILE suStream = FDEV_SETUP_STREAM( stdPutc, NULL, _FDEV_SETUP_WRITE );
static int stdPutc( char c, FILE *stream )
{
while ( !( UCSRA & (1<<UDRE) ) );
UDR = c;
return 0;
}
int main( void )
{
stdout = &suStream;
printf_P( PSTR("Hello world") );
}
ヘッダファイルとUSARTの初期化は省略しているので注意。(あくまでも標準出力を設定するサンプルなので)

592:774ワット発電中さん
19/01/22 23:14:14.87 2i7aTnu5.net
そもそも、Cにおいてprintf()ってのは関数を呼び出す以上の
意味はないからな…
printf()が具体的に何をするかは知らんもの

593:774ワット発電中さん
19/01/23 05:24:20.01 caq2itq4.net
コンソールアプリでC言語勉強はじめたばかりのガキ臭がする

594:774ワット発電中さん
19/01/23 06:41:25.57 lu5gAxuI.net
デバッガ使うまでも無い小さなプログラムならprintf()で変数の内容表示とか割と便利(出力先をLCDにしておいても良いし)
ただ標準のprintf()はコードが無駄に大きいので似たような関数を自作した方が良いと思う

595:774ワット発電中さん
19/01/23 07:16:10.17 Oqfjg8Jf.net
>>577
書式指定の処理が大変だもの…

596:774ワット発電中さん
19/01/23 12:22:20.49 32G9oJar.net
何故画面に出力される事が標準乃動作と思ふのだらうか

597:774ワット発電中さん
19/01/23 18:33:17.75 M/OW0BAx.net
>>576
平気で、printf()は「画面に」出力する「命令」です
なんて教える教師や教科書があるからなぁ…
そう言うのに当たっちゃったら、やむを得ない気がする

598:774ワット発電中さん
19/01/23 18:34:57.56 jPd+aunc.net
まぁパソコンのソフトウェア開発から入れば高級言語しか知らんだろうし…

599:774ワット発電中さん
19/01/23 18:36:45.59 i+LgiMn2.net
lcd繋げて、それに出力する様作っても良いんだよ!

600:774ワット発電中さん
19/01/23 18:38:28.80 HnGB1zOM.net
>>580
おまえらの世代はパンチカードだったかもしれんが、
入門者には画面と教えて問題ないだろ

601:774ワット発電中さん
19/01/23 20:40:03.41 RZdJJbBK.net
>>574
いまいち何やってるのかよく分からないけど
printf_UART()
なる関数を自作するよりかはスマートな方法なのね
たしかにprintf()で書いていた方が
UARTに出力するかLCDに出力するかそのときに応じて
ソースコードをほとんどいじらずに瞬時に対応できるよね

602:774ワット発電中さん
19/01/23 20:48:05.54 Oqfjg8Jf.net
>>584
マニュアルちゃんと読もうぜ
avr-libcのマニュアルに丁寧な解説付きで書いてあるぞ

603:774ワット発電中さん
19/01/23 21:54:34.91 lu5gAxuI.net
>>584
日本語訳のマニュアルも有るので一度熟読したほうが良いと思います
URLリンク(cega.jp)
URLリンク(cega.jp)

604:774ワット発電中さん
19/01/24 09:42:15.75 +PuFqesJ.net
URLリンク(elm-chan.org)

605:774ワット発電中さん
19/01/24 12:14:04.34 qPTBNqHl.net
久しぶりにマイコンいじった。mega3208ってやつ
これ8bitAVRコアにUC系のペリフェラルっぽいな

606:774ワット発電中さん
19/01/24 13:18:09.61 n3Rt6rFo.net
xmega系列になって従来のmega/tinyとちょっと変わったんだ。
UC系の周辺と揃えようって意思はあったんだろうね。
mega3208は名前こそmegaだけどxmega系の子孫なのよ。

607:774ワット発電中さん
19/01/24 14:33:52.73 Xou573Di.net
同じ処理を、3種類の環境でコンパイルしてみた。
cc5xは、制限の多いコンパイラで、ページを自分で割り付けなければ
ならないのと、固有の構文を多用する。
xcは、proバージョンでどのくらいコードがスリム化するんだろう?
gccベースという使いやすさと、PIC以外でも使えるので価格が折り合えば使いたいな。
avrgccは、データメモリとレジスタの転送でコードが膨らんでいるけど、対CPUクロックで考えると速度的に問題ないはず。要求プログラムメモリは要注意。PICは、word,avrは byteで単純比較できないけどね。

PIC cc5x (PIC16F18313)
; RAM usage: 51 bytes (11 local), 205 bytes free
; Maximum call level: 4 (+3 for interrupt)
; Total of 1027 code words (50 %)
PIC xc8 free (PIC16F18313)
Memory Summary:
Program space used 5ECh ( 1516) of 800h words ( 74.0%)
Data space used 41h ( 65) of 100h bytes ( 25.4%)
avrgcc (atmega48)
  Program Memory Usage 3586 bytes 87.5 % Full
  Data Memory Usage    42 bytes 8.2 % Full

608:774ワット発電中さん
19/01/28 23:25:08.21 74Zex59L.net
ATmega328PのUARTポート(RX, TX)とUSBシリアル変換器
URLリンク(akizukidenshi.com)
のUARTポート(TX, RX)をつないでPC上で立ち上げたTera Termをモニタ代わりに使用してる。
これはこれで問題無くモニタ出来てるんだけど他に問題があって
AVRの電源を切ってもAVRが稼働し続けてることに気付いた。
はじめ何が起きてるのかよく分からなかったけどテスターを当てていくと
USBシリアル変換器のUARTポートからAVRのUARTポートに電気が流れて
その電流が寄生ダイオードを経由してかAVRの電源側に回り込んで結果的に
AVRが稼働し続けてるっぽいことに気付いた。
大元たどるとパソコンのUSBポートの5Vが電気の供給源ってことになるね。
この状態でAVRの書き込みも出来るから恐ろしい。
AVRのUSBポートから流れ込んできた電気でAVRが稼働するってのも
AVRにとってあまりよろしくない状況だと思うんだけど何か解決方法ってあるかな?

609:774ワット発電中さん
19/01/29 00:41:28.05 5fr/4ilZ.net
そもそも電源の入っていないマイコンにUSBシリアル変換を接続しっぱなしにするのが間違った使い方。根本的な解決方法はない。
ポートに抵抗入れる、AVRの電源ラインにシャント抵抗を入れて電圧を下げるなどの対症療法はある。
しかし残留電圧でヒューズがリセットされないためデバッグワイヤが解除できない等の不具合が発生するので、その辺を理解して使うこと。

610:774ワット発電中さん
19/01/29 01:27:08.53 k48zQ8Sl.net
>>591
AVRに限らず禁止事項だよ。うっかりするとチップ内の保護ダイオードを壊したり、
外部にレギュレータがあると、こいつを破壊する。
とりあえずの対策としてはFT232XのRESET#をLowにしておけばOK
ATmegaの余っているポートをPull Downしておいて、ここにRESET#をつないでおく。
ATmegaの電源On時に、このポートをHiにしてRESET#を解除すれば普通に使えるし、
電源を落とせばFT232XはResetステートに入る。
FT232XはReset#がLoになっている間、UARTポーtははTri-state、入力は内部200kΩで
プルアップされる(データシートVer. 1.2だったらp. 23)
これで、ほとんどの場合問題はないが、Resetステートの時にUARTピンが浮くので、
気になる場合は弱く(高抵抗で)プルダウンしておけばよい。

611:774ワット発電中さん
19/01/29 02:48:36.73 8mXSpai6.net
わかりやすいわー

612:774ワット発電中さん
19/01/29 06:01:07.27 +FSj8ZJ+.net
>>591
根本的にはAVRの入力に74VHC04のような入力保護ダイオードが入っていない
バッファを入れる。インバータなので2段入れる。

613:774ワット発電中さん
19/01/29 08:55:41.87 AF5sg+3v.net
↑が正解
不都合だけじゃなく、流しすぎるとデバイスがお釈迦になるよ
オレは↓を使ってる
URLリンク(akizukidenshi.com)

614:774ワット発電中さん
19/01/29 12:02:11.55 GBVPzw3Y.net
小信号ダイオードはさんでオープンドレインもどき接続にして
USBシリアルからのHレベルを遮断すればとりあえず大丈夫なんじゃね

615:774ワット発電中さん
19/01/29 12:17:16.32 yBXyxlEE.net
>>592
>>593
AVR書き込むたびにUSBケーブルも抜き差しするの面倒くさくてさぼってたけど
やっぱこういう使い方禁則事項だよね^^;)
> FT232XはReset#がLoになっている間、UARTポーtははTri-state、入力は内部200kΩでプルアップされる
FT232XのRESET#ピンを制御するのはいい方法かも
ただ細かいことを言うとまっさらな状態のAVRに書き込もうとしたときは
RESET#ピンの制御は無理になるかな。
初回限定のほんとどうでもいい細かいことだけど。
>>595
> 74VHC04のような入力保護ダイオードが入っていないバッファを入れる
あ、この方法もいいね。ものぐさな自分にはぴったりの方法かもしれん。
VHCシリーズを選べば入力に保護ダイオードが入っていないことは
確約されるんだっけ?

616:774ワット発電中さん
19/01/29 12:19:54.72 b9fyunmq.net
>>598
VHCシリーズはVCCに関係なく入力電圧の上限が5.5Vまで印加可能だったと思う
簡易電圧変換なんかにも使われるよね

617:774ワット発電中さん
19/01/29 16:25:55.73 yBXyxlEE.net
>>599
VHC, LVC, LCX, VCXは入力から電源にむけて寄生ダイオードが無いから
電源に電流が流れることが無いのね
URLリンク(toragi.cqpub.co.jp)
一つ勉強になった
ありがとう

618:774ワット発電中さん
19/01/31 00:17:18.42 urqG5+GC.net
float型の変数を文字列に変換する際の定番の sprintf はメモリを馬鹿食いするから
次点の dtostrf を使ってみたんだけどこれも結構メモリ馬鹿食いするんだよね
もうちょい軽く済ます方法って無いかしらん

619:774ワット発電中さん
19/01/31 06:03:19.62 X2Vd5Ifm.net
>>601
float使わずにintで固定小数点数として格納する

620:774ワット発電中さん
19/01/31 17:51:59.93 45mnZPLm.net
おまいら巣から出てくるなや

621:774ワット発電中さん
19/01/31 18:34:45.34 pAwOkKrJ.net
固定小数点で間に合うならベストだね。
速度も有利

622:774ワット発電中さん
19/01/31 18:43:14.95 DV6EpONT.net
誰しもが通る系の道よ…
固定少数にしても表示が遅い、間に合わないってんで
LCD表示ルーチンの改良してみたり
割り込みでマルチスレッド的に出来ないか?
とか
アセンブラで書くか?
とか、やる訳よ…

623:774ワット発電中さん
19/01/31 19:47:05.69 r7y8o76G.net
1980年代のパソコンみたい

624:774ワット発電中さん
19/01/31 20:44:52.84 urqG5+GC.net
>>602
>>604
その発想は無かったわ
たとえばfloat型数値 3.1415 を小数点第2桁まで文字列にするとしたら
まずこいつをint型にキャスト


625:オて3を取り出し (int) 3.1415 → 3 取り出した3を引いて小数点以下を抽出し、 3.1415 - 3 = 0.1415 抽出した小数点以下に100をかけて再びint型でキャストし 0.1415 x 100 = 14.15 (int) 14.15 → 14 3と14を atoi() 使って文字列に変換。ピリオドを間に挟んで結合すれば 文字列 3.14 のできあがり。こういうことか



626:774ワット発電中さん
19/01/31 20:45:58.93 hxu1wqAa.net
ATmegaもtinyも8bitやで

627:774ワット発電中さん
19/01/31 21:01:24.78 ysN1Wi3R.net
>>607
>>602 >>604 の助言を無視して float で演算してどうするんだ?

628:774ワット発電中さん
19/01/31 21:12:49.71 a7jyaf99.net
30年前だがZ80でどうしてもfloatが使いたくて、MSX-C 買ったらできないでやんの。
しょうがないからアセンブラでやるfloatのライブラリが載ってる本買って、そこだけ関数呼び出し
に書き直してしのいだわ。

629:774ワット発電中さん
19/01/31 21:40:09.88 jvXK8rxN.net
sprintfが重いって話だろ?
floatの演算自体は仕方なかろうし、大した負荷じゃなかろう。

630:774ワット発電中さん
19/02/01 00:09:51.79 S1ArDI5h.net
まあでも小数2桁って決まってるんなら最初から100倍しておいて整数で演算するわな。

631:774ワット発電中さん
19/02/01 06:18:43.11 wqKgNkoQ.net
そう考えると、昔のBASICとか優秀だよな
あれしかメモリなかったのに

632:774ワット発電中さん
19/02/01 08:12:16.65 GESkO/eE.net
プログラムのフットプリントを意識出来ないのは池沼やで

633:774ワット発電中さん
19/02/02 17:49:37.05 B6fk9Cou.net
昔、友人が変数名がアルファベット1文字というVTL系のコンパイラを作っって
私にくれたことがある。
プログラムサイズは512バイト程度だったと思う。
付属のサンプルプログラムが「月面着陸ゲーム」 だった。

634:774ワット発電中さん
19/02/03 01:34:34.79 nxe4/MJx.net
Digi-keyにTiny3216¥119が入荷している。 マルツは¥166

635:774ワット発電中さん
19/02/03 04:12:18.91 1jBmDB8n.net
>>616
やっときたか!

636:774ワット発電中さん
19/02/03 07:07:15.57 RZYCs11Q.net
マルツってdigikey発注代行だろ?
それでこんなに取るのか
ボリ松もびっくりだな

637:774ワット発電中さん
19/02/03 07:42:25.48 4binZOhL.net
50円でボッタクリ。
じゃあ、Digikey で買えよ。送料払って。

638:774ワット発電中さん
19/02/03 12:49:52.32 8ZNRr/p5.net
すぐ欲しい数個で買って
数十百個になったら海外通販使う
新しい品種とかは前者で探すのが困難だけど

639:774ワット発電中さん
19/02/03 21:57:55.37 fqMmK1Ai.net
>>618 あなた本気で言ってる?

640:774ワット発電中さん
19/02/04 00:31:28.20 ywIii5HS.net
貧乏人は頭の中が貧しいから

641:774ワット発電中さん
19/02/04 01:09:40.55 JmCERjpC.net
>>621
どうせ人件費は0円とかいう無職の発想でしょ
親が買い置きした家にある食い物はタダ、みたいな

642:774ワット発電中さん
19/02/04 01:38:05.73 MJaJfAPE.net
>>623
話が妙に具体的だな、さてはお前…。

643:774ワット発電中さん
19/02/04 02:26:13.00 X+uUi4sh.net
>>623
おい!それってYO!

644:774ワット発電中さん
19/02/04 12:19:51.16 qgiXYbWd.net
秋葉逝ったついでにマルツで買う

645:774ワット発電中さん
19/02/04 13:33:36.41 9szrlDG+.net
店頭受け取りは送料無料!

646:774ワット発電中さん
19/02/04 14:36:58.54 L15laJmX.net
送ってないから当たり前

647:774ワット発電中さん
19/02/04 15:56:27.14 9szrlDG+.net
いやいや、Digikey取り寄せ品の話。

648:774ワット発電中さん
19/02/04 17:20:17.90 gBErcpkB.net
貧しいやつばっかりだな。
貧困は日本の問題だ。

649:774ワット発電中さん
19/02/04 22:19:09.18 JmCERjpC.net
>>625
爺さんしか居ないスレでsyamuなんかわかる奴ほぼいないだろ…

650:774ワット発電中さん
19/02/06 22:48:40.53 GDnkb5rg.net
ボン円、ガラるとしても0時過ぎかなこりゃ

651:774ワット発電中さん
19/02/07 00:04:56.54 yvxwWn1E.net
632です。神様、今週ボン円140円で買い戻しさせて下さい!

652:774ワット発電中さん
19/02/07 06:09:48.83 BiMXIdhR.net
>>633
はよ損切りしろや

653:774ワット発電中さん
19/02/07 12:58:35.55 HwlAc9hF.net
>>634
632です
goodなつっこみ(爆笑

654:774ワット発電中さん
19/02/16 20:18:56.09 27MspbiO.net
UARTで何かデータを受信したら割り込みを発生するテストプログラムを書いてみた。
volatile unsigned char moji='a';
ISR(USART_RX_vect)
{
char x = UDR0;
while (!( UCSR0A & (1<<UDRE0)));
UDR0 = ++moji;
}
int main()
{
UCSR0B = 0x00;
UCSR0A = 0x00;
UCSR0C = 0b00000110;
UBRR0L = 25;
UBRR0H = 0;
UCSR0B = (1<<RXCIE0) | (1<<TXCIE0) | (1<<RXEN0) | (1<<TXEN0);
while(1)
{
}
}
うまく動けばUART経由で一文字打ち込むたびに変数mojiがインクリメントされていきターミナルには
bcdefgh・・・
みたいな感じの文字が表示されてしかるべきなのになぜか
bbbbbb・・・・
といつまでたってもbしか表示されない。なにか設定おかしいところある?

655:774ワット発電中さん
19/02/16 20:51:41.29 F4GluCmK.net
ATMEGA328P使っておもちゃを改造した。
犠牲になったのはプリキュアのハッピーメロディマイク
URLリンク(i.imgur.com)
プリキュアの音楽が流れない酷いやつ。
マイクに入るように小さく工作
URLリンク(i.imgur.com)
無事に収まった
URLリンク(i.imgur.com)
アニメの音楽が流れるようになった
URLリンク(i.imgur.com)


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

1700日前に更新/263 KB
担当:undef