17/06/28 13:45:32.71 twh5L0IT.net
>>552
>MicroChipがわざとやったのでしょうか? だとしたら「ヒドイわ!」
とかほざく阿呆が出てきて乱したから。
570:555
17/06/28 13:48:23.07 wD27VW0A.net
555
571:774ワット発電中さん
17/06/28 14:29:55.18 KcTD5mO8.net
例えばxc8、PIC16F84Aで、プリスケーラ1/256を設定するとき
OPTION_REG |= 0x07; などとするのはなぜなんでしょうか。
直接 OPTION_REG = 0x07; ではだめなんでしょうか。
572:774ワット発電中さん
17/06/28 14:39:04.15 fw0XJmR8.net
>>556
最終的にレジスタが0x07で良いなら代入でよいけど、他のビットに影響がでないようにプリスケーラ関係以外のビットは0とorして演算前の設定を保持してる。
573:556
17/06/28 14:51:25.04 KcTD5mO8.net
>>557
ご回答の内容を読んだ上で、OPTION_REG の内容を眺めたら何となく理解できたような
気がします。このSFR上位5bitのうちいずれかの設定を、この行より前に行う場合、
便利というわけですね。ありがとうございました。
574:774ワット発電中さん
17/06/28 14:56:33.60 fw0XJmR8.net
調べてみたらOPTIONレジスタの初期値0xFFだからプリスケーラ部分を111
に設定するとき以外は使えないかな?
575:774ワット発電中さん
17/06/28 22:10:18.39 3XrwSGax.net
>>559
だったら設定しなくてもいいんでは?
|= でなくて &= でマスクしてからじゃ?
576:774ワット発電中さん
17/06/28 22:31:22.99 mY3pYlUz.net
>>560
変えたいところをAnd演算で一旦0にしてからor演算したほうが良いっすね。その方がコードとしては安全ですなー
起動時の条件で問題ない場合でもプログラム上で明示的に書くのはメモリや速度的にはマイナスだけどわかりやすいので
577:774ワット発電中さん
17/06/28 22:34:00.45 ZdXnSPwP.net
OPTION_REGbits.PS =
ってやりゃ済む話だろ、あとはコンパイラの仕事
578:774ワット発電中さん
17/06/29 00:46:20.75 Bqz4yi7G.net
レジスタへの書き込みは非常に気を使うべき
割り込みや別タスクで同じレジスタを書き換える可能性があるか
書き込んだり読んだりするだけで動作するレジスタかどうか
一瞬違う値が入っても問題ないか
などなど
PICの場合、8bit, 16bit, 32bitによって最適な書き方が違ったりする
579:774ワット発電中さん
17/06/29 12:50:09.09 yJ4/Ris5.net
クリアしてから、改めて書かないといけないの?
いきなり上書きではダメなの?
580:774ワット発電中さん
17/06/29 13:30:23.97 3zqGuwFU.net
(LATA0, LATA1, LATA2) を (0, 1, 0) にする関数を作ることを考える
LATA3~ は一瞬でも変わってほしくない
LATA3~ は関数コールを行うタスクや割り込み以外で(関数コール中にも)書き換えられる可能性がある
(LATA0, LATA1, LATA2) は同時に書き換えたい
ハードによる微妙な時間差は許されるが、ソフトによる大きな時間差は許されない
どのような関数の実装が考えられますか?
581:774ワット発電中さん
17/06/29 13:45:03.42 3zqGuwFU.net
LATA0~LAT2が一瞬違う値になるのもNGとする
582:774ワット発電中さん
17/06/29 13:51:29.97 ffs8J5/U.net
ID:3zqGuwFU もNGとする
583:774ワット発電中さん
17/06/29 13:52:02.19 moKNBow0.net
>>565
LATAの値をメモリに持って、メモリの値を書き換えてから、LATAに出力
584:774ワット発電中さん
17/06/29 16:29:37.79 ouyN9J/k.net
LATAに書く直前に割り込みが入ってLATA3~を書き換えられたら、LATA3~を改変してしまう
585:774ワット発電中さん
17/06/29 16:35:54.26 HefICKYr.net
読み書きで2命令以上かかるからわりこまれる可能性はあるわな
586:774ワット発電中さん
17/06/29 18:03:49.96 moKNBow0.net
割り込みを禁止にしてから、LATAを読んでメモリ上で修正してから出力でいいんでないの。
do {} while(0)を使えばマクロ化も可能かと
587:774ワット発電中さん
17/06/29 18:06:34.50 Bqz4yi7G.net
割り込みを禁止にすると言うことは、割り込み遅延が増えるということ
出来れば使いたくないが、他に方法が無ければしょうがない
割り込み禁止を解除するときは、コール時にすでに割り込み禁止だったときの事も考慮する必要がある
588:774ワット発電中さん
17/06/29 18:08:08.47 Bqz4yi7G.net
PICでは関係ないが、マルチコアの場合はその手は使えない
環境によっては割り込み禁止が許可されない場合もある
589:774ワット発電中さん
17/06/29 18:15:09.72 Bqz4yi7G.net
LATA0~LAT2が他から書き換えられない
という前提の場合には、
アトミックなXOR命令やINVレジスタを使うことで、割り込みを禁止せずに書き換えが出来る
LATA_INV = LATA & 7 ^ 2;
これは結構使える
590:774ワット発電中さん
17/06/29 18:22:43.24 Bqz4yi7G.net
ていう事でマイクロチップさん、
ANDとORを同時にアトミックで出来る命令や仕組みの提供をよろしく!
591:774ワット発電中さん
17/06/29 18:45:59.29 JBpmPdP7.net
それが出来たらどういう応用分野にPICが使えるようになるのか説明出来ないと検討もしないと思うよ奴ら。
592:774ワット発電中さん
17/06/30 02:32:19.52 06C5mYdB.net
LATでさえ昔はなかったのに
593:774ワット発電中さん
17/06/30 06:56:32.72 ZNTS2A1s.net
その時代、どうやって処理を書いてたんだろう
ソフトでシャドーレジスタ?
入出力を切り替えないから問題なし?
594:774ワット発電中さん
17/07/01 01:08:48.61 6QFwLAJL.net
>>578
>ソフトでシャドーレジスタ?
俺はそれやってたけどビット制御命令使ってるやつも多かった
潜在的に危ない製品も出回ってるんだろね
595:774ワット発電中さん
17/07/02 15:16:25.60 WXRfbLwy.net
>>579
ビット制御命令って
リードモディファイライト
をアトミックにやってるだけでしょ
LATレジスタが無いことに対してはまったくの無力かと
596:774ワット発電中さん
17/07/02 19:04:10.87 MY1hSEPk.net
マルチタスク化して、I/O操作用のドライバで一括管理する。
ドライバ部分はシーケンシャルにしか動かないから大丈夫。
なんていうのはやったことがあったなぁ。
別にそれを狙ったわけじゃなくて、結果的にそうなったっていうだけだけど。
597:774ワット発電中さん
17/07/02 21:04:13.59 T6+eJhxA.net
>>580
>LATレジスタが無いことに対してはまったくの無力かと
そういう意味のことを書いたつもりなんだけど
598:774ワット発電中さん
17/07/02 21:26:01.31 YKP45hna.net
>>577
昔はLATが無くても問題なかった。コアスピードが上がって
リードモディファイライトだとエラーする様になったから付いただけ。
599:774ワット発電中さん
17/07/02 22:59:12.93 0ljhrXBg.net
タスクと割り込みで書き換え不整合なんてソフトでどうにでもなる。
プログラマの能力が低いだけ。
どうにかできないようならそれこそエラッタってこと。
600:774ワット発電中さん
17/07/02 23:05:22.48 ALMYiy1C.net
>>582
すまん
読解力がなくて
601:774ワット発電中さん
17/07/02 23:09:34.66 ALMYiy1C.net
>>583
LATが無い問題はコアスピードや排他制御的なことは全く関係ない
ライトはポート出力のラッチの値、リードは入力端子のLOW/HIGH
と、リードとライトで値の意味が異なるのが問題
602:774ワット発電中さん
17/07/02 23:14:05.69 ALMYiy1C.net
>>486
出来るか出来ないかだけで言うと出来る
リソース、パフォーマンス、難易度、
この辺が問題だと
特に難易度はホビー用マイコンでは致命的
603:774ワット発電中さん
17/07/02 23:17:53.22 6JlKDbpL.net
ホビー用マイコンてどんなだよ
604:774ワット発電中さん
17/07/02 23:18:39.61 ALMYiy1C.net
8bit PIC
605:774ワット発電中さん
17/07/03 01:32:00.36 6ctLSGD4.net
産業用のおこぼれを頂いてるだけ。ホビー用なんか存在しない
606:774ワット発電中さん
17/07/03 01:36:58.95 cW1QpQax.net
俺はホビーで飯を食ってたとは知らなかった
607:774ワット発電中さん
17/07/03 06:29:34.77 RXN6idT+.net
ん?
仕事で使うひとが「初めてのPIC」で質問するか?
まさか
608:774ワット発電中さん
17/07/03 08:28:53.23 ChqAYLuv.net
ホビー用って、Arduinoやラズパイみたいに、産業用で使えるように設計されてないもんのことだと思ってた
どんなマイコンだろうと、回路が不安定要素満載の信頼性がホビー用でしょ
スイッチを内蔵プルアップで2mひっぱるとか、レジスタが割り込みで書き換えられるかもしれないとか、
産業用では絶対しないような、このスレ向きな使い方がホビー用ってことで。
PICはホビーも使える懐の広いマイコンですな
609:774ワット発電中さん
17/07/03 08:54:24.28 AvtLYnpm.net
>>593
仕事でラズパイ使ってますが何か?
610:774ワット発電中さん
17/07/03 09:11:27.81 ChqAYLuv.net
>>594
温度試験と加速試験した?SDの劣化加速は?
動けばいいってヌルい仕事がうらやましいです
611:774ワット発電中さん
17/07/03 09:49:44.43 aVLg2i0D.net
PICはエラッタ隠蔽がな
仕事では使いたくない
612:774ワット発電中さん
17/07/03 09:50:26.55 aVLg2i0D.net
動けばいいってヌルい仕事がうらやましいです
613:774ワット発電中さん
17/07/03 10:03:58.49 4EjB/oYz.net
Arduinoは Atmega328を使用した応用製品
614:774ワット発電中さん
17/07/03 14:55:06.92 oF8KzJq3.net
>>596
プログラムがうまく動かないときに、CPUのエラッタのせいかも?、と悩むのか…
考えただけでゾッとする。
615:774ワット発電中さん
17/07/03 20:17:26.86 XVaP/WTq.net
切り分けする能力の無い奴は哀れだな
616:774ワット発電中さん
17/07/03 20:28:37.12 RXN6idT+.net
切り分けが趣味な変態じゃないからな
普通の人は
能力関係なく
時間のムダ
切り分けの依頼であればやるけど、
普通は問題の発生はマイナスだから
617:774ワット発電中さん
17/07/03 20:31:17.66 RXN6idT+.net
問題があることが把握できればまだマシ
潜在的な問題を抱えたまま出荷して客先で問題が発生することも
「CPUのエラッタのせいです」は何のいいわけにもならない
618:774ワット発電中さん
17/07/03 20:33:28.52 RXN6idT+.net
Microchipの場合は隠蔽するから非常にたちが悪い
仕事では絶対に使いたくない
619:774ワット発電中さん
17/07/03 20:51:36.78 XVaP/WTq.net
なにファビョッてんだかwww
能力無いのがバレバレだぞwww
620:774ワット発電中さん
17/07/03 21:00:59.59 uZ+POxhc.net
仕事なら、自分が使う機能の分はテストしてから出荷すんだろ?
未知の不具合なんか発生すんのか?
使わないモジュールも全部ONにでもしてんのかw
621:774ワット発電中さん
17/07/03 21:09:01.26 ChqAYLuv.net
自分の能力がないやつほど、バグを他人のせいにするからな
このスレ見てればよくわかることだが、自分だけは違うと思い込んでる
そう思い込まないと人生やっていかれへんかわいそうな人なんだろうな
622:774ワット発電中さん
17/07/03 21:13:19.69 cW1QpQax.net
新品種に共通のUARTのバグの場合なんかは、ある品種で問題が発生すれば、
そのモジュールを使い回してる品種全てに適用されるべきエラッタだとマ
イクロチップでは当然認識できるわけだよね。
ところが実際のエラッタは特定の品種にしか発行されてないというのは
不誠実と感じるな。
まさかマイクロチップが気付いてないということはあり得ないと思うが。
623:774ワット発電中さん
17/07/03 21:56:06.72 RXN6idT+.net
>>605
それそのままMicrochipに
624:774ワット発電中さん
17/07/03 22:09:09.61 4dUsO4jT.net
* すいません最近電子工作を始めた初心者です。MPLABXでC言語を使ってLチカしたいなと思いプログラムを組みビルドさせようとしたところ
:: error: (141) can't open cpp.exe command file "C:\Users\ユーザー名\AppData\Local\Temp;C:\Users\ユーザー名\.atom\packages\cpp_s3bc.cmd": Invalid argument
というエラーが吐かれてしまい困っています。これは何のエラーなんでしょうか cpp.exeが開けないという意味なら→に表示されているパスはなんでしょうか、スレ民に教えていただきたいです。
625:774ワット発電中さん
17/07/03 22:11:34.00 RXN6idT+.net
がんばれ!
ファイト!
626:774ワット発電中さん
17/07/03 22:15:24.82 itRLUaoe.net
FPGA位迄の人には理解しにくいだろうがそんなにきれいにモジュール切った張ったしてICが出来て居る訳ではない。
ある石でモジュールの不具合でても違う石では起きないそんなのは十分有り得る
627:774ワット発電中さん
17/07/03 22:16:00.05 RXN6idT+.net
cpp.exe はコンパイラ
コンパイラはインストールしました?
してなければ XC8 をインストールしよう!
628:774ワット発電中さん
17/07/03 22:17:55.36 RXN6idT+.net
>>611
>>607 のUART問題は最近のほぼ全ての8bit PICで発生するが、エラッタには記載がない
629:774ワット発電中さん
17/07/03 22:19:41.56 RXN6idT+.net
タイミング依存で、クロック単位の非常にシビアなタイミングで発生する
潜在的に問題を抱えたまま出荷された製品も多いと思う
630:774ワット発電中さん
17/07/03 22:20:14.36 RXN6idT+.net
対策も難易度が高い
631:774ワット発電中さん
17/07/03 22:25:09.54 RXN6idT+.net
>>605なら、どんな発生率の問題でも、環境依存の問題でも完璧に評価して、バグなんか一切無いソフトやハードしか作らないんだろうけど
632:774ワット発電中さん
17/07/03 22:25:59.16 RXN6idT+.net
そんな人がMicrochipにいるといいね
633:774ワット発電中さん
17/07/03 22:51:32.68 4dUsO4jT.net
>>612
レス有難うございます
XC8はインストールされています。
URLリンク(imgur.com)
(これで大丈夫ですよね...?)
634:774ワット発電中さん
17/07/03 22:54:15.54 RXN6idT+.net
なぜ二個ある?
2回別の場所にインストールした?
635:774ワット発電中さん
17/07/03 22:56:45.49 RXN6idT+.net
どっちを選んでもエラー?
636:774ワット発電中さん
17/07/03 23:18:34.10 4dUsO4jT.net
>>620
インストール位置が悪いのかなと思って二回インストールしました。
どっち選んでも同じエラーを吐きます。
637:774ワット発電中さん
17/07/03 23:20:18.40 RXN6idT+.net
cpp.exe はどっちにもある?
インストールしたユーザーと使うユーザーは同じ?
638:774ワット発電中さん
17/07/03 23:24:48.82 Ofi0iLUs.net
ユーザー名に全角入ってても認識されるんだっけ
639:774ワット発電中さん
17/07/03 23:47:12.95 4dUsO4jT.net
>>622
一応両方入ってます。 インストールしたユーザーと使うユーザーは同じです!
640:774ワット発電中さん
17/07/03 23:49:53.29 4dUsO4jT.net
>>623
ユーザー名は全部半角英小文字になっているので多分大丈夫です...
一応includeがあるファイルとcpp.exeがあるファイルにパスを通したのですが、特に変わりませんでした...
641:774ワット発電中さん
17/07/04 07:14:00.35 qIYSAEUN.net
>>625
まさかコマンドプロンプトを開いてそこでパス通したとかじゃないよね?
それだと個々に開くアプリには反映されないよ
642:774ワット発電中さん
17/07/04 07:31:42.39 8vRvShOE.net
>>626
コントロールパネルからシステムの詳細設定開いてそこから通しました
643:774ワット発電中さん
17/07/04 10:19:21.25 htUu5/TD.net
X IDEも肥大化しすぎだよな
644:774ワット発電中さん
17/07/04 11:58:50.37 +XTQ1FSn.net
嫌だったらコマンドラインでmakeも出来るんだぜ?
645:774ワット発電中さん
17/07/04 13:45:10.93 jmpvzPuj.net
batファイルでコンパイルしている私が通ります
646:774ワット発電中さん
17/07/04 21:03:42.30 8vRvShOE.net
cpp.exeをcmdで起動してコンパイルしようとしたら、includeでエラー出た....
パス通したはずなんだけどなぁ
647:774ワット発電中さん
17/07/05 01:29:44.93 l1/ISZ2l.net
パス通さないでコンパイルしてますがw
648:774ワット発電中さん
17/07/05 20:2
649:5:56.28 ID:XWcJBPxT.net
650:774ワット発電中さん
17/07/09 13:48:32.12 /PXs1d95.net
PICのEEPROMが256byteと少なくて少々困っています
外部から受信した信号をPIC内で変換テーブルに従って変換したいんですが、変換
テーブルは結果を見ながら少しずつ調整したいのでEEPROMに置きたいと思っています
データ発生頻度は1ms間隔です
入力データが256パターンしかないならEEPROMで事足りるんですが・・・
やりたい事はVB風に書くなら
変換後の値 = EEPROM変換テーブル(返還前の値)
こんな感じです
シリアルEEPROMでも1ms以内で何とかなりますでしょうか
651:774ワット発電中さん
17/07/09 13:58:24.22 cl3wmIkv.net
>>634
で、通信内容のサイズは?1msで済むと思うサイズなの? ほかに作業しなくていいの?
652:774ワット発電中さん
17/07/09 14:47:14.74 pD+zbGQh.net
>>634
RAM狭いんだっけ?
653:774ワット発電中さん
17/07/09 16:39:20.02 VLHS+TFf.net
EEPROMもRAMも猫の額なのがPICの良いところでもあり欠点でもあり…
CRCなんかテーブル引きしたいところだけど、仕方なく延々とビットシフト計算させてる
654:774ワット発電中さん
17/07/09 16:55:03.59 pD+zbGQh.net
PICやめてmbedとか行けばええじゃろ
655:774ワット発電中さん
17/07/09 17:16:42.09 iwSeyzv1.net
PIC32使ってフラッシュ外付けでしょ
656:774ワット発電中さん
17/07/09 18:11:04.06 HAuIJIEt.net
>>634
変換先のデータの型が32bitとか64bitとかなら全然余裕
657:774ワット発電中さん
17/07/09 19:32:33.89 i+ha5mwl.net
フラッシュに置いといて、ファームと同時にテーブル入れ替え、で良かろう。
658:774ワット発電中さん
17/07/09 19:38:08.98 c4fR0Mpm.net
PICのアナログ入力に他所からのPWMを入力させて、電圧を測定出来ますか?
具体的に言うとTWE-LITEのPWM出力の電圧を調べたいのです。
TWE-LITEの送信元にアナログ入力が有って、受信側はそれをPWM出力します。
それをPICで測定したいのです。
何か特別な回路を組む必要があるのでしょうか?
659:774ワット発電中さん
17/07/09 19:43:32.98 HAuIJIEt.net
>>641
前提を無視かよ
>>642
PWMの周波数が速くなければそのままで
660:774ワット発電中さん
17/07/09 21:56:42.14 Tvgcg1f4.net
>>642
PWMの波を平滑してA/D変換器に入れれば。
場合によっては※にバッファアンプを入れたり、単純なCRじゃなくて2j次、3次のフィルタにしたり。
661:774ワット発電中さん
17/07/09 22:06:03.73 W+wDZTo2.net
前提がおかしけれぱそこから指摘すんの当然だろ?
662:sage
17/07/09 22:16:02.49 Tvgcg1f4.net
>変換テーブルは結果を見ながら少しずつ調整したいのでEEPROMに置きたい
この前提がおかしいのかな。
可能性のひとつとして、エンドユーザーがチューニングすることも考えられるし。
663:774ワット発電中さん
17/07/09 22:22:27.42 edy1SzM4.net
>>645
何がおかしい?
664:774ワット発電中さん
17/07/09 22:26:26.96 edy1SzM4.net
使い方の詳細を知らないのに、勝手に前提を無視して、さらに前提がおかしいとか
なかなか素晴らしい人ですね
665:774ワット発電中さん
17/07/09 23:24:01.82 jzxq5qtx.net
いろんな人がいるんです
666:774ワット発電中さん
17/07/09 23:24:35.34 jzxq5qtx.net
なぜなら物理的に許されているものは存在し得るので
667:774ワット発電中さん
17/07/10 08:49:42.09 Cm2Emk5X.net
>>634
必要なら外付け使うだけのこと。1msなら余裕だろ
668:774ワット発電中さん
17/07/10 09:12:48.71 CPmwvhzO.net
>>642
タイマでパルス幅を計測したほうが確実だったりして。
フィルタ組んでも脈流になるから精度を出そうとしたらそれなりに大変よ。
669:774ワット発電中さん
17/07/10 09:18:25.13 xwUCYlxi.net
PWMの振幅を見たいわけじゃなく、それの平均値が見たいのか?
670:774ワット発電中さん
17/07/10 09:19:10.59 xwUCYlxi.net
全く違うのでその辺を明確にしてください質問者様
671:774ワット発電中さん
17/07/10 11:11:09.72 wu5o+ybf.net
16f2705ならプログラム領域をプログラムで書き換えられるんじゃないの?
672:774ワット発電中さん
17/07/10 18:00:01.14 xwUCYlxi.net
で?
673:774ワット発電中さん
17/07/10 18:43:27.16 dtN0QfeT.net
>>655
16F2705ってなーにー
最近でた新しい品種?
674:774ワット発電中さん
17/07/10 19:08:03.51 wu5o+ybf.net
>>657
2→1
675:774ワット発電中さん
17/07/10 19:12:51.07 xwUCYlxi.net
なぜいまさら16F1705
676:642
17/07/10 22:06:31.43 6XISVUxE.net
>>643
>>644
回答ありがとうございます、とりあえずそのままやってみて
うまくいかなかったらフィルタを使ってみます。
>>653
単に平均の電圧が見たいだけなんで、厳密なもんじゃないです。
677:774ワット発電中さん
17/07/11 03:24:15.45 rgj03J3l.net
>>660
PWMって何だか理解してる?
瞬間瞬間の電圧で見れば1か0かしかないよ
(細かい話をすればアナログ的な挙動として1と0との遷移の途中で中間的な電圧もあったり
オーバーシュート、アンダーシュートもあるけど本質ではないから置いといて)
PWMの送り出し側と受け側で偶然周期が一致しちゃうとずっと0とかずっと1って事もあるし
「電圧」の平均で意味を見出すには送り出し側の周期の100倍とか1000倍といった高いサンプリングレートで計測する必要がある
PWMの「電圧」を測るには1と0の「長さ」の「割合」を計測しなきゃいけない
んだけど、それは面倒臭い(というかやはり高サンプリングレートを必要とする)から、アナログ的に電圧に変換して
計測した方が楽だよねってのが>>644さんが書いてるフィルターの働き
678:774ワット発電中さん
17/07/11 07:10:29.62 o2DjNazY.net
>>661
指摘のポイントがわかりにくい。最後の1行以外は、>>660の
> >>643
> とりあえずそのままやってみて
ここに掛かってるんだよな。
確かに >643の「速くなければそのままで」をやろうとすると、かなりシンドイ。
そもそもこれは元の質問の「PWMを入力させて、電圧を測定出来ますか?」の「電圧」を
>>653と同じ解釈をしていたんじゃないかと思う。
679:774ワット発電中さん
17/07/11 07:20:22.10 o2DjNazY.net
>>662に補足
>>653が可能性として語っているのは「青」で示す電圧。
たぶん>>642が想定している電圧は「赤」の電圧。
ところで「青」の電圧を「PWMの振幅」って言って良いものなんだろうか。
言わんとすることはわかるけれど、上下対象の波形以外で「振幅」は使わないようにしているので、ちょっと疑問に感じた。
詳しい人教えて!
680:774ワット発電中さん
17/07/11 07:27:14.63 9rv2AMlB.net
PIC24F触り始めたんですが、ピン割付がいまいちよくわかりません。
後閑氏のサイト見てもよくわからないです。
RPINR18bits.U1RXR = 8;
とか書かれても、その8はどこから出てきたという状態です。
C言語ではじめる PIC24F活用ガイドブックは買いでしょうか?
絶版でアマゾンでもプレ値がついてる状態ですが…
681:774ワット発電中さん
17/07/11 07:47:39.64 CzqbpwZP.net
データシートを暗記するくらい読み込んだらどうでしょうか?
ただで出来ますよ。
682:774ワット発電中さん
17/07/11 08:42:54.15 KRNlOPoe.net
後閑さん請負やってないんですかね?セミナーはやってたはずですけど。聞きに行けば?
683:774ワット発電中さん
17/07/11 11:38:10.24 vXwnyiuu.net
RPINR18
RPOR2
とかの言葉が出て来るけど、これが何の略なのかが、さっぱりわからない。
RPINR18 → Replace Pin INput Resistor 18
RPOR2 → Replace Pin Output Resistor 2 でしょうか?
684:774ワット発電中さん
17/07/11 11:57:31.84 S0iKAmU1.net
>>667
データシートを検索すれば出てくる。そもそもレジスタがどういうものか理解しないとpicを扱うのは無理。
685:774ワット発電中さん
17/07/11 11:58:31.60 70c59EZI.net
データシートに書いてあるやん
読んでないの?
読んでないのにこんなところで質問するの?
え?なに?これから分からない事があったら毎回ここで聞くの?
アホなの?
686:774ワット発電中さん
17/07/11 12:16:12.54 U6waF3T4.net
いつも思うのだがデーターシートっていうより取扱説明書だよな
687:774ワット発電中さん
17/07/11 12:25:39.96 S0iKAmU1.net
picで共通した部分やxcコンパイラの使い方とかから始めるような書籍とかサイトって意外とないから初心者につらいってのはあるかも。
688:774ワット発電中さん
17/07/11 13:35:24.40 vXwnyiuu.net
>>668-669が、簡単に言うから、
試しにPIC24FJ128GA204のデータシートを読んでみたけど、見つけられなかったよ。
RPINR
RPOR
の、先頭のRは、何の略なのか、教えてもらえませんか?
689:774ワット発電中さん
17/07/11 14:13:53.45 S0iKAmU1.net
>>672
remapらしいけど省略なしのレジスタ名にはremapはついてないな。データシートのレジスタのページがわかるなら各ビットの意味も書いてあるぞ。英語がわからんなら解説するし、レジスタ名で検索すれば日本語で解説してるサイトもあるぞ
690:664
17/07/11 14:37:50.53 9rv2AMlB.net
データシートは翻訳かけながら一生懸命読んでるんですが、今まで触ってたPIC12F836とは全く違いすぎて(というか多機能過ぎて)プログラムもコピペしないと動かないというレベルです。
レジスタとはなんたるや、プログラムはvbとphpとEMマクロぐらいしかやった事ないので、問題の切り分けに時間がかかります
691:774ワット発電中さん
17/07/11 15:00:38.86 vXwnyiuu.net
>>673
>remapらしいけど省略なしのレジスタ名にはremapはついてないな。
でしょ? 最初の文字R、わからないんですよ。
次のPINRは、ペリフェラル...入力...レジスタ だと思うんですけどね。
すぐにデータシート読めとか、>>668-669は、簡単に言うけど、
彼らも本当に理解してデータシート読んでるのか、疑問だな。
省略語は、100%理解して使いたいものです。
692:774ワット発電中さん
17/07/11 15:14:36.87 S0iKAmU1.net
>>675
本当にレジスタ名のRの意味がしりたかったのか。それはすまんかった。
実際に使う分には気にしないんでな。R以外は普通に書いてあるから、100%理解したいならデータシート読んで。
693:774ワット発電中さん
17/07/11 16:31:19.08 Y/0hRdiR.net
>>675
PPSの日本語マニュアルな。
URLリンク(www.microchip.co.jp)
全部日本語マニュアrのページな。
URLリンク(www.microchip.co.jp)
頑張れよ!
694:774ワット発電中さん
17/07/11 16:56:31.25 9rv2AMlB.net
あ、読んでたら何となくわかってきたかも
695:774ワット発電中さん
17/07/11 17:35:56.55 fFYP6pUF.net
データシート数時間で読んでみましたとか、どんな聖徳太子だよ
これでわかったとか書いてないとか片腹痛いわ
読みましたとか、マイクロチップのドキュメント全部読んでから歌えや
696:774ワット発電中さん
17/07/11 18:23:35.88 CzqbpwZP.net
使うモジュールだけ説明読めば充分。あとはザッと見で問題ない。
697:774ワット発電中さん
17/07/11 20:23:16.44 fFYP6pUF.net
>>680
わかる人はそれでOK。
読む前に先に掲示板で質問するような人はどうでしょう?
698:774ワット発電中さん
17/07/11 21:25:33.90 o2DjNazY.net
>読む前に先に掲示板で質問するような人はどうでしょう?
読む前に先に掲示板で質問するような人でも、>>681が言うところの「それでOKなわかる人」がいるんですよ。
じゃあ、なんで聞くか、ですが、自分で読み解くのが面倒だからです。
699:774ワット発電中さん
17/07/11 21:27:27.35 luhz9+D6.net
>>663
青の電圧は一般にPWM波の振幅といい、単位はVp-pで表す
例えば青矢印が3.3Vなら3.3Vp-pのPWM波と言えばおおよそ誤解なく通じるかと
赤の線はPWM波の平均値であり、RCやLC等のLPFを通せば得られる
PWM周波数に対してカットオフが十分に低い(LPFの時定数が十分長い)のであれば
より滑らかな波形が得られる
>>642が想定しているのはあなたの言う通り通常は赤の波形だろう
つまり意味合いとしては>>653
PICで青の値を読みたいケースは通常あまり考えられない
なので、PICの入力ポートに入れる前に適当なLPFを入れてPWMのキャリア成分を
十分に減衰させた状態でADして読み込めばいいと思う
700:774ワット発電中さん
17/07/11 21:34:58.02 dlzX9IxD.net
>>672
なんで今更PIC24?
今ならPIC32を選んだ方が
701:774ワット発電中さん
17/07/11 21:35:14.76 vXwnyiuu.net
RPINR
RPOR
の、先頭のRが、何の略なのか思いつきました。まだ確認してませんが、
Remappable のRではないですかね。
Remappable Pin select INput Register xx とか
Remappable Pin select Output Register xx とか。
ただ、未だにわからないのが、
昔からのポートの呼び方「RA0」とかの R が未だにわかりません。
H8なんかだと、ポートなので P で始まり、わかるのですが。
RegisterのRかなと考えていますけれども。
702:774ワット発電中さん
17/07/11 21:45:24.48 vXwnyiuu.net
>>676
>本当にレジスタ名のRの意味がしりたかったのか。それはすまんかった。
いえいえ、気にしないでください。
>実際に使う分には気にしないんでな。
確かにそうですけどね。
でも、略語(abbraviation)を知ることで、その構造や動作の「直行性」がわかります。
○○があるということは、△△もあるはず、とかです。
類似の略語も連想でわかるようになり、理解がいっそう深まります。
僕は、目次はあんまり見ないで、巻末の索引をよく使います。
略語が順番に並んでいるので、ページ数を見るだけで、どのカテゴリーの何の関連かがわかり、
データシートを読むのが、おもしろいです。
703:774ワット発電中さん
17/07/11 21:47:02.94 o2DjNazY.net
PWMの振幅と言った時点で何を言おうとしているのかはわかるんだが、それは正式な表現なんだろうか、って思うんだ。
振幅といえば50%の矩形波も含めて、デフォルトで平均値からてっぺんまでの電圧を指すよね。
単位はVp-pっていうけれど、正弦波ではp-pは振幅とは言わないわけだし。
704:774ワット発電中さん
17/07/11 21:50:03.42 YLZL3eVe.net
じゃあVrmsで
705:774ワット発電中さん
17/07/11 21:50:05.89 vXwnyiuu.net
>>684
PICの型番は、別にどれでもいいんですよ。
略語の説明が「データシートに書いてある」という人がいるから、
適当に24Fを選んだだけです。
結局書いてなくて「読め」と言う本人も、適当なこと言っているのがわかってしまいました。
706:774ワット発電中さん
17/07/11 21:51:40.49 luhz9+D6.net
>>687
まぁそうね
実務では振幅でも通じてるけどねぇ
正しくは波高値3.3Vp-pのPWM波かもな
707:774ワット発電中さん
17/07/11 21:52:06.26 Kr8wk/PV.net
略語ってabbreviationだよ。
わざわざ間違った英語書かなくても。
708:774ワット発電中さん
17/07/11 21:54:29.19 luhz9+D6.net
>>687
ああ、波高値だと単位は3.3Vの方が適切かも
まあ誤解なく伝わってることをちゃんと確認しながら進めれば多少の呼び名の違いはOKかと
709:774ワット発電中さん
17/07/11 21:56:48.15 luhz9+D6.net
>>688
Vrmsは平均値と同様PWMのduty cycleで変わるからちょっと...
710:774ワット発電中さん
17/07/11 22:12:35.74 o2DjNazY.net
ありがとうございます。たくさん返事を下すっているので、どこにぶら下げようかと迷いましたが
>>692
たしかに文書、口頭でも概ねちゃんと伝わります。
でも、いつもすっきりしないでいます。
あるお客さんから、ボトム電圧と、トップ電圧で表現すれば良いのでは? って言われたことがあります。
まあそれ以上に厳密な表現はないですね…
711:774ワット発電中さん
17/07/11 22:50:32.42 oQVwaf8o.net
>>693
あ、すまん適当に回答してた……
712:774ワット発電中さん
17/07/12 00:55:47.09 Wqqo2wVR.net
路上や公園?はあ???
あんな、縦横高さ10mでもう1立方kmだ。
嫌煙馬鹿、おまえらヒトの肺活量を立方kmとかで測ってんのか?
頭おかしい・頭悪いのもほどほどにな。
713:774ワット発電中さん
17/07/12 01:10:30.05 C39avP5Y.net
gbk?
714:774ワット発電中さん
17/07/12 03:44:25.42 rvK4KJ25.net
誤爆だろうけど頭悪い書き込みだな
10mの立方体が1立法kmってなんなんだ?
715:774ワット発電中さん
17/07/12 07:29:50.45 zkAiatp8.net
10m司法なら10x10x10で1000になるって言いたかったんじゃない?
立法だけに
716:774ワット発電中さん
17/07/12 08:02:00.44 3lSXyEgp.net
PIC10F322小さくて便利すぎ
NiMHの電圧低下をLチカで知らせる回路を5×5mmくらいで作れる
FVRをADCに送るとVddをADC変換値で読める
PWMもあるしいろいろ遊べる
717:774ワット発電中さん
17/07/12 08:32:20.11 XBDOFsGA.net
1キロ立方メートルだな
718:774ワット発電中さん
17/07/12 10:09:57.04 Abx/Y66L.net
おまいらネタコピペに反応して
律儀だな
719:774ワット発電中さん
17/07/12 13:38:01.17 /OBwajX2.net
型式ごとの専用編集ソフトを
1つ500kB程度で配置してくんねいかな
720:774ワット発電中さん
17/07/12 14:27:31.59 dNBuHsAI.net
どこに?
721:774ワット発電中さん
17/07/12 15:35:20.91 /OBwajX2.net
X IDEやめて
新たな開発環境として、だよ
Z80とかフロッピーディスク1枚でサクサク作れたじゃねーかよ
なんで500MBとかの世界になったんだよ
722:774ワット発電中さん
17/07/12 15:42:52.65 FcpgCKM6.net
30年くらい眠っていらしたんでしょうか?
723:774ワット発電中さん
17/07/12 15:48:46.00 EFRcfVnv.net
コマンドラインでコンパイルしろや
724:774ワット発電中さん
17/07/12 18:04:10.55 YEjg97oe.net
TurboPASCAL for CP/M80 がPIC/Windows用に出るのなら歓迎します
725:774ワット発電中さん
17/07/12 18:27:01.73 O0nI5dUB.net
CP/MのTurboPASCALって実行ファイルを作る際にはライブラリの要不要を
判断せずにけっこうなサイズのランタイムルーチンをがばっと結合するから
ROMサイズに余裕がないPICじゃ役に立たんと思うが。
726:774ワット発電中さん
17/07/12 22:25:30.16 dxWvJATZ.net
>>705
mbedならブラウザが動けばオンラインコンパイラでOK
727:774ワット発電中さん
17/07/12 22:43:33.90 dxWvJATZ.net
>>687
マイコンのPWMなんかだと片側が0Vだから、0V基準での振幅は3.3Vとかになるんでしょ。
「最大振幅」と言っておけばいいかもね。
728:774ワット発電中さん
17/07/12 23:02:01.81 YEjg97oe.net
>>709
RAMとかスタックは指定できた気がするけど?
729:774ワット発電中さん
17/07/12 23:06:52.41 YEjg97oe.net
>>709
ごめん、ROMな。組み込みの数kのROMベースのcp/mでも動かしてたから
単純な容量ならPICのほうが初期のCP/Mよりマシな気もしますが。
当時、高校生だったので間違ってたらごめんなさい。
1DぼDISKに2MのZ80のコンパイルスピードなら今ならどうなんでしょ。
730:774ワット発電中さん
17/07/13 03:40:34.90 ebjoa3nQ.net
PWMをフィルターにかけますけど、
0Vを基準に、0V←→5VのPWMは、フィルターかけると信号に戻ります。
では、0V基準で +2.5V←→-2.5Vの間を振動するPWM信号は、フィルターかけると
+ - で打ち消し合って(?)信号として出てこないのでしょうか?
731:774ワット発電中さん
17/07/13 07:23:30.31 XbrVCo59.net
>>714
>+2.5V←→-2.5Vの間を振動するPWM信号は
・+2.5Vの期間が50%なら平均電圧は0Vになります。
・+2.5Vの期間が40%のときは、平均電圧は-0.5Vになります。
と、いうことで、出力が「出てこない」ってことはありません。
732:774ワット発電中さん
17/07/13 07:23:37.50 7Wj4Frvf.net
信号が出ないという言い方が変だけど、もしデューティー比が50%なら平均は0Vという電圧になるね。
デューティー比がそれ以外なら0V以外の電圧が出るだろう。
733:774ワット発電中さん
17/07/13 09:05:34.81 5qchS1UH.net
>>714
DC成分があるかないかだけで本質的な違いはない
734:774ワット発電中さん
17/07/13 20:57:22.89 IROv585V.net
>>713
CP/Mは実行に数十kBのRAMが要るからPICとは条件が全然違うよ
735:774ワット発電中さん
17/07/13 22:26:56.65 XbrVCo59.net
+ - で打ち消し合って(?)信号として「出てこない」という感覚は、
「0Vは信号ではない」という思いから来てるのかな?って思っていたら、
「DC成分があるかないか」とか。
これも、なかなか面白い見方だな。
736:774ワット発電中さん
17/07/13 22:51:27.26 rLIMYYrA.net
>>714さんは実際に、PWMの出力インピーダンスがどれくらいで
負荷側の入力インピーダンスや誘導、容量分をどのくらいで使い、
どう観測して、PWMの精度とエネルギーの結果をどう出力するかに興味があるな。
フィルターでDCに変換してエネルギーは同じでも出力波形は全く別物になりそうだ。
737:774ワット発電中さん
17/07/13 22:56:26.29 XbrVCo59.net
んー。なんで別物?
2.5Vずれるだけじゃないの?
何かを見落としているかな?
738:774ワット発電中さん
17/07/13 23:03:25.41 rLIMYYrA.net
>>718
んなことはわかってて、8bitくらいでCP/MにturboPASCALかOS9とBASIC09がオンチップで載ったようなのが出ないかなと思ってる。
ラズパイがいい線いってるんだがちょっと違う。電気食い過ぎとかいりいりで。
739:774ワット発電中さん
17/07/13 23:10:47.92 XbrVCo59.net
>>722
いやいや。それならまんまそれをやった方が良いのでは?
今ならまだ低消費電力なZ80も入手できるし、権利関係があいまいだけど、
CP/MもCP/M版のTPも探せば見つかるんじゃなかったっけ。
(神崎康宏さんの、CP/Mパソコンを作る本にはお世話になりました)
740:774ワット発電中さん
17/07/14 00:08:50.27 lBwjuymZ.net
AVRならAVR on CP/Mってのがあるな
これも1チップではないと思ったが
まあどうせ1チップにならんなら>>723のようにZ80でやるのが一番だな
今なら秋月で在庫復活したAKI-80でいいだろ
741:774ワット発電中さん
17/07/14 00:10:34.37 lBwjuymZ.net
>>724
逆だった、cp/m on avrだな
742:774ワット発電中さん
17/07/14 08:55:59.48 t8gfJRNx.net
>>725
それだとTPのバイナリは動かんよね…
743:774ワット発電中さん
17/07/14 10:00:33.08 8EN19E7T.net
>>726
こういう奴だぞ。
URLリンク(spritesmods.com)
AVRで8080をエミュレーションてことだから、Z80を実装すればTurboPASCALも動くだろう。
744:774ワット発電中さん
17/07/14 11:00:28.30 nnQdkEi7.net
RAM64KBのPIC32MXがあるのにAVRなんか使わんでも
745:774ワット発電中さん
17/07/14 12:18:58.81 8EN19E7T.net
マイコンの値段次第でDRAM外付けもアリだろ。
URLリンク(akizukidenshi.com)
> PICマイコン PIC32MX270F256B-50I/SP
> 1個 ¥380(税込)
URLリンク(akizukidenshi.com)
> AVRマイコン ATmega88V-10PU
> 1個 ¥150(税込)
746:774ワット発電中さん
17/07/14 13:26:36.19 62AdFbH2.net
DRAM外付け出来るの?
747:774ワット発電中さん
17/07/14 15:07:06.57 EVrZfK3j.net
DRAMコントローラをIOポート実装とか
748:774ワット発電中さん
17/07/14 15:40:01.15 62AdFbH2.net
それは普通の日本語では「出来ない」という
749:774ワット発電中さん
17/07/14 18:00:00.71 eOxQcWbn.net
SRAMならありじゃね?その程度の容量はSRAMで。
750:774ワット発電中さん
17/07/14 18:08:15.64 62AdFbH2.net
メインメモリとして使えなきゃダメだろ
751:774ワット発電中さん
17/07/14 18:36:51.84 8EN19E7T.net
>>734
なんで??
752:774ワット発電中さん
17/07/14 19:19:12.86 DYJ/9TSN.net
エミュレーションなんだからSRAMをI/Oポート接続で余裕
何も工夫しないとアドレス線、データ線だけで24本必要で、ピン数の方が厳しい
753:774ワット発電中さん
17/07/14 20:23:08.74 t8gfJRNx.net
>メインメモリとして使えなきゃダメだろ
これが、SRAMで良いのでは? に対してのコメントだとするとおかしい。というか、あり得ない。
>>734は何に対して言った?
754:774ワット発電中さん
17/07/15 00:14:46.29 9tWjKYq+.net
>>737
最初にDRAMとか書いた人はなんでDRAMが出てきたのだろうな
755:774ワット発電中さん
17/07/15 01:24:08.28 tnciCutc.net
なんだ ID:62AdFbH2==ID:9tWjKYq+ は回路図も見れないド素人か。
URLリンク(spritesmods.com)
756:774ワット発電中さん
17/07/15 02:09:32.59 WamWU++7.net
回路図見るの面倒だから結論だけよろしく!
757:774ワット発電中さん
17/07/15 02:13:03.02 WamWU++7.net
あ、見れた
4bitバスか?
遅そう
アドレス空間に割り当てられるのか?
回路図だけじゃわからん
データシート見ないと
右にあるのはDRAMなのか?
結論だけよろしく!
758:774ワット発電中さん
17/07/15 07:31:19.44 NMWIuibT.net
>>333
衛星アンテナの中でダウンコンバートしてるのだからチューナーが受ける周波数の安定度なんてその程度。
衛星アンテナ分解したブログがあったから貼っとく
URLリンク(plaza.rakuten.co.jp)
パラボラの焦点に置かれたヘリカルアンテナのすぐ下に10Ghz帯の回路がある。
俺も専門家じゃないので調べながら書いてるけど、BSチューナーは±1.5MHzの許容度があるという記述がある。
URLリンク(www.nict.go.jp)
短時間の周波数変動(位相雑音)のスペックはもっと厳しいが、周波数安定度の要求はそんな高くない。
BSチューナーの中の局発が追従しているから変動が許される(AFC)
これ以上はスレも違うしやめるね
759:774ワット発電中さん
17/07/15 07:32:04.08 NMWIuibT.net
誤爆です
760:774ワット発電中さん
17/07/15 08:54:45.07 EAk9WDwg.net
ファミコンのターボファイルはSRAM(6264)をP/S変換してたな。
761:774ワット発電中さん
17/07/15 11:50:16.39 ihG1BMeO.net
>>727を見て、丸写しでDRAMまでそのまま作るなんて発想の人っているんか。
面白いのかな?
それをするぐらいなら車輪の再発明をする方がよっぽどよっぽど価値があるような気がする。
>>741
>アドレス空間に割り当てられるのか?
いくらなんでもそれを期待しちゃいかんと思う。
PIC32だったっけ、外部SPI RAMをメモリ空間に割り当てられるのって。
762:774ワット発電中さん
17/07/15 14:50:35.36 tnciCutc.net
> >>727を見て、丸写しでDRAMまでそのまま作るなんて発想の人っているんか。
いるよ。
URLリンク(star.gmobb.jp)
URLリンク(www.mikrocontroller.net)
URLリンク(petersieg.bplaced.net) 👀
Rock54: Caution(BBR-MD5:5549de2c873ac2edd146f280a5558991)
763:774ワット発電中さん
17/07/15 15:04:53.26 ihG1BMeO.net
>>746
ごめん。
いるかいないか、だったら、たいていはいるよね。
愚問だった。
764:774ワット発電中さん
17/07/15 15:05:53.23 qe/U9ypG.net
PIC32 Z80 emuで検索したらTOPにこんなの出てきた
PIC32MXで作るMZ-80エミュレータの製作
URLリンク(www.suwa-koubou.jp)
765:774ワット発電中さん
17/07/15 18:37:50.09 F1nON3j6.net
明日、PIC32MX買いに行ってこよう。 <
766:br> ブレッドボードで十分組めるな。
767:774ワット発電中さん
17/07/15 19:45:31.18 qe/U9ypG.net
>>749
>今回、エミュレータプログラムの公開にあたり、MONITORプログラムやCGROM、
>その他ベーシックインタプリタ、ゲームなどは、シャープやその他の製作者の著作物であり、公開はしておりません。
>このエミュレータで遊ぶには、別途入手してください。
768:774ワット発電中さん
17/07/15 19:54:14.90 qe/U9ypG.net
まあ、ネットを漁れば落ちてるかもね
769:774ワット発電中さん
17/07/15 19:56:28.47 SM3pf8h5.net
今の時代ネットを検索して大方の知識を得る時代
知識の均一化が進んでいる
つまらない時代になったものだ
770:774ワット発電中さん
17/07/15 20:12:09.83 73ngStNG.net
巨人の肩に載って何をすればいいかまでは教えてもらえないからそこから先はそいつの才覚なんじゃね?
771:774ワット発電中さん
17/07/15 20:19:35.74 SA7MTIpq.net
X68000なら、一式無償公開されているけどね
URLリンク(retropc.net)
とか
772:774ワット発電中さん
17/07/15 21:20:53.07 e808ZkPF.net
PIC32MXは確かに面白いものですが、個人で作るものにこれを使うほどのものが
どれだけあるかちょっと疑問に思っています
32bitの性能を生かし切れるものってどんなものがあるのか
誰か例題を教えてもらえませんか?????????
今のところ、8bitでROMとRAMがちょっと大きいものでも十分解決できると
思っています
(接続する周辺のデバイスが高性能化していてコマンド送れば結果が
直接帰ってくるデバイスが多くそれを加工する必要がなくなって
きている気がしています)
773:774ワット発電中さん
17/07/15 21:27:34.15 ihG1BMeO.net
>32bitの性能を生かし切れるものってどんなものがあるのか
>誰か例題を教えてもらえませんか?????????
この人をバカにしたような「?????????」はどういうつもりなんだろう。
例を出したところで、無意味だと否定するんだろね。
ジェイソンは便利だと思えば人を殺すのにだってチェンソーを使う、ってどこかで聞いた。
32ビットマイコンを「32ビットゆえに」でなくても、それが使いやすいと思えば何処にだって使って良いんだよ。
774:774ワット発電中さん
17/07/15 22:14:11.62 /FkYd7Dx.net
8bitで作れるものを32bitで作ってはダメを前提なのか?
さっぱり分からんわ
775:774ワット発電中さん
17/07/15 22:22:47.98 ihG1BMeO.net
>>756を書いてから、どこでそれを聞いたんだろうって、ぐぐってみたら
「13日の金曜日のジェイソンは1度もチェーンソーを使ったことがなかった!」なんて話が。
マジか。
…スレチすまん。
776:774ワット発電中さん
17/07/15 22:23:31.66 47h1xOAw.net
>>755
個人で作るものなら過不足もなにも自由でしょう
先に出てるMZ80エミュレータを作る人もそうだし
ワンチップでゲーム機を作ってる人もいるし
URLリンク(www.ze.em-net.ne.jp)
777:774ワット発電中さん
17/07/15 22:30:28.39 ihG1BMeO.net
「個人で作るものなら」って限定は要らないと思う。
778:774ワット発電中さん
17/07/15 23:12:36.65 ihG1BMeO.net
>>752
もう沢山の人が訳知り顔で言ってるようなことで退屈。
てか、その話だって、あなたが均一化の影響の中で訳知り顔をしたい他の人と同じことを言ってしまってるわけで、
あなたもつまらない人の一人ですね。
実際のところそれまでその状態であったことすら見えなかったんですよ。
昔は、電子部品屋さんは、有力な雑誌の作例に載ってるような部品さえ揃えておけば、お客さんに満足感を提供できました。
なんか変わった趣味を楽しんでいるつもりが、なんと日本全国の同好の士たちが、同じようなものしか作ってなかったんです。
今はどうかというと、電子部品のニーズが多様化したせいで、ちっこい部品屋さんではやっていけなくなりました。
一分野に限ってみれば、ある知識が広く共有されているわけですが、分野がすごく多様化してもいるわけです。
これが知識の均一化ですかね。くそったれな後ろ向けの話をしてどうするんですか。元気を出してください。
779:774ワット発電中さん
17/07/15 23:17:23.56 9tWjKYq+.net
>>755
画像処理、音声処理、UNIXなどintが32bitのほうが都合が良い物とか
どちらかというと個人のほうが恩恵受けると思うがね
780:774ワット発電中さん
17/07/16 00:26:56.02 zcJjyESh.net
>>755
「能力を使い切る」なんて考え方がもう青臭くてね
機能拡張の要請はいつだって発生するものだし、それに対して余裕を持っておく物だよ
781:774ワット発電中さん
17/07/16 01:42:57.95 pebdDEmJ.net
27年前に作ったDOS用のZ80エミュレータをWin7(32bit)上で動かして、
本物のCP/Mの上でCP/M版BASIC-80を実行したらそれなりに動いてる。
結構互換性は保たれているんだね。
URLリンク(imgur.com)
782:774ワット発電中さん
17/07/16 02:41:47.95 E7pLNk3U.net
>>755
今ならPIC32MMの方が良いかと
783:774ワット発電中さん
17/07/16 06:38:31.85 H6K8/tLx.net
最近PIC32厨が常駐しててウザイな
784:774ワット発電中さん
17/07/16 07:15:23.39 E7pLNk3U.net
お薦めのPIC
迷ったらこれを買え
(秋月に売ってるPIC DIP限定)
●USBなし
PIC10F200 マゾ専用 最低スペック 50円
PIC10F322 最安 45円
PIC16F18313 8pin 75円
PIC16F18326 14pin 130円
PIC16F18346 20pin 160円
PIC32MM0064GPL028 28pin 3.3V 175円
●USBあり
PIC16F1455 14pin 140円
PIC16F1459 20pin 180円
PIC32MX230F064B 28pin OTG 3.3V 270円
PIC32MX270F256B-50 28pin OTG 3.3V 380円
785:774ワット発電中さん
17/07/16 07:21:16.23 E7pLNk3U.net
最近出た PIC32MM0256GPM028 はすごく良いんだけど、
残念ながらDIP版が無く、秋月でも扱ってない
786:774ワット発電中さん
17/07/16 07:33:11.46 E7pLNk3U.net
8bitと32bitとスレ分けるか?
さらに過疎ることになるけど
787:774ワット発電中さん
17/07/16 08:11:44.16 TSWfFPbV.net
>>769
いらねぇだろ
PICスレ自体も既に複数あんだから
788:774ワット発電中さん
17/07/16 08:29:01.21 E7pLNk3U.net
だな
789:774ワット発電中さん
17/07/16 09:11:11.76 rxmYWWZ4.net
32ビットで50MIPのDIPマイコンが容易に入手できるのは、
PIC32だけ。
しかも趣味で使うなら十分安い。
790:774ワット発電中さん
17/07/16 09:11:57.50 rxmYWWZ4.net
>>772 50MIPS。
792:774ワット発電中さん
17/07/16 09:36:54.16 rM0Ayo5Y.net
>>766
>最近PIC32[厨」が「常駐」してて「ウザイな」
そうじゃなくて「PIC32の話題が出てきてそれはそれで活気があって良いことなのにそれを排除しようとする人がいる」ってことなんじゃない?
それとも自分が嫌いな話題は、スレの趣旨に合っていても出てきてほしくないってことなのかな?
793:774ワット発電中さん
17/07/16 09:45:08.29 h+hnNnu+.net
重い処理させようと思ったらPIC32よりもESP33とかラズパイの方がお手軽なんだよな
794:774ワット発電中さん
17/07/16 09:56:23.68 rM0Ayo5Y.net
>>775
もっと重い処理をするならWindowsパソコンの方がずっと楽になりますよ。
ここはPICのファンの話題のスレなんだから、つきつめれば「どっちの性能が」なんて二の次で良いんですよ。
795:774ワット発電中さん
17/07/16 10:54:44.72 xQiHdWl1.net
32bitバカは32bitをやたら薦めるくせに
何故かDIPや秋月取り扱いに強くこだわる
8bitやアセンブラにこだわるバカと同じ匂いがする
ようは気持ち悪い
796:774ワット発電中さん
17/07/16 11:07:28.01 rM0Ayo5Y.net
>>777
他人の趣味に対するあなたの許容度が低いだけって気がしますが。
797:774ワット発電中さん
17/07/16 11:07:54.89 t59QqF8L.net
傍から見れば、些細な事で突っかかってくる>>777の方が病んでるように見えるよ
798:774ワット発電中さん
17/07/16 12:10:48.20 0Y/C0atS.net
アセンブラが出来ない単なる馬鹿
知ってれば、場合に応じて使い分けができる
特に8-bitとかでROMサイズが小さいと Cだけじゃ入らない場面に出くわす
そういう場合、この手のクソ野郎は サジ投げるんだろ
見えてるよ
799:774ワット発電中さん
17/07/16 12:35:54.56 E7pLNk3U.net
PIC総合スレ(初心者用)です。
8bit, 16bit, 32bit
アセンブラ, C言語
パッケージ, 取扱い店舗, ...
などを排除するのはやめて、
幅広くPICに関して語りましょう!
800:774ワット発電中さん
17/07/16 12:42:22.47 rM0Ayo5Y.net
>>780
誰しも世の中のすべてのことを知り、出来るわけじゃないよ。
だから何かができないからってバカだというのはおかしい。
世の中が自分基準中心だと思い込んでるわけじゃないよね。
8ビットPIC+Cではダメだと思ってサジを投げて、他のデバイスに行っちゃうのも全然クソじゃない。
いちいち侮蔑的な表現しなくても仲良くやれるぞ。穏やかにいこう。
801:774ワット発電中さん
17/07/16 14:18:39.39 k9GwJ7AS.net
○ アセンブラ
CPUの命令を列挙した形で記述する非常に低レベルな言語
CPUに大きく依存したコードであり、C言語などの高級言語に比べて移植性に劣る
また、生産性や可読性や保守性も大きくC言語に劣る
現在では非常に使われる場面が限られており、
C言語で記述出来ない特殊な命令を使う必要がある場合や、
C言語では性能が問題になる場合に用いられる事がある程度
性能が著しく低い8bit PICなどで、
いまだにアセンブラ偏重主義者が存在する
802:774ワット発電中さん
17/07/16 14:27:14.11 k9GwJ7AS.net
○ C言語
高級言語の中では最も低級な言語
小規模組み込みプログラムでは、
いまだにこのC言語が使われる事が多い
803:774ワット発電中さん
17/07/16 14:43:49.40 zcJjyESh.net
アセンブラしか使った事ないのバレバレな。
804:774ワット発電中さん
17/07/16 14:44:45.53 7AQuWCLu.net
> 性能が著しく低い8bit PICなどで、
> いまだにアセンブラ偏重主義者が存在する
8ビットのPICには効率的なコードを出力してくれるCコンパイラが存在しないのでアセンブラの使用にメリットがある傾向がAVR等他のアーキテクチャに比べると高いってだけ。
805:774ワット発電中さん
17/07/16 14:50:31.64 rM0Ayo5Y.net
欠点があっても使いにくいところがあっても、それが好きだから、で良いんじゃないの?
自分と違う技術論を嘲っても意味なんてないのに。
技術の話で相手を不快にさせてもメリットないでしょ?
806:774ワット発電中さん
17/07/16 14:50:50.80 ZPEaK9LG.net
>>786
×効率的なコードを出力してくれるCコンパイラ
○効率的なコードを出力してくれるフリーのCコンパイラ
乞食はアセンブラに8bitで書いてろってこった
807:774ワット発電中さん
17/07/16 14:58:43.47 7AQuWCLu.net
> ×効率的なコードを出力してくれるCコンパイラ
> ○効率的なコードを出力してくれるフリーのCコンパイラ
XC8もPROエディションなら効率的なコードを吐いてくれると勘違いしてるのかな?
あれも相当効率良くないぞ。コンパイラの出力見れば分かると思うけどWを効率的に使ってくれないのでアセンブラで書いた場合の2~3倍とか平気でなるよ。
808:774ワット発電中さん
17/07/16 15:47:17.46 h+hnNnu+.net
コーディング時間×コードサイズ×実行時間の積を最小にしたいのでXC8proも選択肢としてアリだな
809:774ワット発電中さん
17/07/16 15:52:06.90 7AQuWCLu.net
> コーディング時間×コードサイズ×実行時間の積を最小にしたい
この条件ならPIC選んだ時点で間違ってるよ。
810:774ワット発電中さん
17/07/16 16:08:47.09 rM0Ayo5Y.net
>>791
PICのファンだから、って理由があれば十分ですよ。
恋人や料理をスペックだけで選ぶんですか?
811:774ワット発電中さん
17/07/16 16:16:23.51 ZPEaK9LG.net
>>790
コーディング時間×レビュー時間×コードサイズ×実行時間×デバッグ時間×リリース後デバッグ時間にしたら
アセンブラなんて天文学的時間になるよ
アセンブラな人はレビューすらしたことなく作って動いたら作りっぱなしな人も多いそうだが。
812:774ワット発電中さん
17/07/16 16:27:50.35 mkZJMJeR.net
>>789
それはあ~
それわお前さんがマヌケなだけ(あ言っちゃった(爆笑
普通はぁCコンパイルがコンパイリング後に吐き出すバイナリを意識してCの
ソースを書くもんだがwお前さんまさかそんな基本的な事やってないの?(嘲笑
特に組み込み分野でCで書くならこんなの常識(じょうしき)なんだよなぁw
あれ?もしかして今まで知らなかったとか?
813:774ワット発電中さん
17/07/16 17:08:33.94 mJe0nrdU.net
初心者スレで最適化について議論してる時点でただのアレな人なんだよなぁ
814:774ワット発電中さん
17/07/16 17:40:05.49 7AQuWCLu.net
8ビットのPICでのCコンパイラの使用はコード効率が宜しくないってのは紛れもない事実なので初心者スレでそういう話をすることは普通に有意義だと思うがなあ。
PICを使わなきゃいけない状況でもない限りは選択肢は他にもあるんだし、PICのセールスマンでもない限りは事実を否定する意味もあるとも思えん。
815:774ワット発電中さん
17/07/16 17:42:43.91 7AQuWCLu.net
>>792
> 恋人や料理をスペックだけで選ぶんですか?
> コーディング時間×コードサイズ×実行時間の積を最小にしたい
という条件なら、という話ですが何か?
816:774ワット発電中さん
17/07/16 17:45:54.58 7AQuWCLu.net
>>794
XC8でもソースの書き様でアセンブラと遜色ない効率のコードを吐く例でも挙げられたら良かったのにねw
817:774ワット発電中さん
17/07/16 17:47:14.13 7AQuWCLu.net
>>793
> コーディング時間×レビュー時間×コードサイズ×実行時間×デバッグ時間×リリース後デバッグ時間にしたら
> アセンブラなんて天文学的時間になるよ
馬鹿ならそうかもね。
818:774ワット発電中さん
17/07/16 18:03:54.18 rM0Ayo5Y.net
>>796
その話ってしょっちゅう繰り返されてます。
PIC関連すれをウォッチしている人なら、ああまたか、って思ってしまいますよ。
以前同居していた老人がそんな感じで、家族みんなが知ってるようなことを、
「みんな初耳だろうが」と前置きして何度も話していました。
個人的な話で申しわけないのですが、似たような話が繰り返されるたびにその話の書き手が、
十分なことをしてあげられずに見送った老人に重なって少し悲しいのです。
特筆するべきことならあなただけの大発見ってことはまずないと思うのです。
どこかのWEBサイトにリンクを張るだけで良いんじゃないですか?
こういう話は、比較の問題ですし、他のマイコンのコンパイラでの状況と比較した適切なサイトがあるかと思います。
なければ、その程度の問題でしかないとも言えますし。
長くなりましたが、コンパイラ云々の話は「もう見た」って人ばかりだろうし、
他の選択肢があることも、あなただけが特別知りうる立場ってわけでもなくて、みんな知ってるんじゃないですか?
その上でPICを使ってるわけですよね?
それともあなたは、
・これだけ何度も繰り返されている話をほとんどの人が初めて見る話だろうと思っている。
・ほかの人は他にマイコンがあることを知らない。俺だけが知ってる。俺は情報通だ。
なんて思ってるわけですか? そんなことはないですよね?
819:774ワット発電中さん
17/07/16 18:10:11.56 TSWfFPbV.net
アセンブラ爺かな?>>799
820:774ワット発電中さん
17/07/16 18:14:52.55 7AQuWCLu.net
>>800
> 長くなりましたが、コンパイラ云々の話は「もう見た」って人ばかりだろうし、
> 他の選択肢があることも、あなただけが特別知りうる立場ってわけでもなくて、みんな知ってるんじゃないですか?
>>788や>>794を見る限りではPIC用の最適化コンパイラの存在を盲信してる人はいるみたいだしそんな気はしないですね。
つか「長くなりましたが」なんて書くくらいなら文章を簡潔にまとめる努力をするべきでは?
821:774ワット発電中さん
17/07/16 18:20:34.88 R/yoTdl2.net
なんでも好きに使えばええやん。
俺はこんな使い方してるよ、と言う自慢をしてくれ。
822:774ワット発電中さん
17/07/16 18:25:43.38 S1NMenUi.net
いつも下らん議論してるよね、PICスレって
823:774ワット発電中さん
17/07/16 18:32:31.13 D4jQXszX.net
初心者スレだから致し方無い
824:774ワット発電中さん
17/07/16 18:42:19.78 S1NMenUi.net
でも自分は初心者じゃないと思ってる奴が暴れてるよね
手段が目的化してるっていうか、
アセンブリ言語を使えるとか、コンパイル結果を意識してCを書けるとか、XC8が非効率なのを知ってることが技術力だと思ってる節があるね
本当に何かを作りたいだけの奴はそんなことにはこだわらんし(だって単なる手段だから)、それが正解なのに
825:774ワット発電中さん
17/07/16 18:43:14.05 GOjKI1pq.net
ラダー最強
826:774ワット発電中さん
17/07/16 18:46:18.68 7AQuWCLu.net
>>806
手段の選択肢は多い方が良いが、それを理解できない馬鹿っているんだな。
目的が達成できれば手段はどうでも良いって考えか。
827:774ワット発電中さん
17/07/16 18:51:09.09 S1NMenUi.net
>>808
こういう考えの奴とは一生折り合わないだろうな、お互いが馬鹿じゃなかろうかと思ってるから
> 目的が達成できれば手段はどうでも良いって考えか。
そんなの当たり前じゃん
828:774ワット発電中さん
17/07/16 19:03:00.33 rM0Ayo5Y.net
割り切らないと、不安になる人がいるのは確かなんだけど、
>目的が達成できれば手段は「全く」どうでも良い
という議論でもないと思う。
目的がわりと達成できれば手段はわりとまあええやん。PIC好きだし。
で十分な答えだと思う。ここPICスレなんだし。
829:774ワット発電中さん
17/07/16 21:02:22.81 mIC74cxy.net
趣味としてのアセンブラで組むことが楽しいからアセンブラ専門だわ。
830:774ワット発電中さん
17/07/16 21:14:43.68 /974AZQV.net
恐らく、新参者に対する自己防衛だろうな。
くだんね。
831:774ワット発電中さん
17/07/16 22:08:20.59 k9GwJ7AS.net
ここは初心者スレ
初心者が勘違いするから、
アセンブラで組むのが一般的みたいな書き込みは
慎んでいただきたい
832:774ワット発電中さん
17/07/16 22:12:11.88 k9GwJ7AS.net
Cより先にアセンブラなんかを覚えたばっかりに
8bit PICから離れられない可哀想な人が
このスレにいる
833:774ワット発電中さん
17/07/16 22:18:36.30 k9GwJ7AS.net
実は最近、アセンブラに手を出そうと思った事象がある
SPIの通信ドライバ
32bit PICで、コアクロックと同じクロック周波数での通信を行う部分
1バイトのデータをやり取りするのに8クロックしかない
当然MCCやHarmonyではこの速度では通信出来ない
結論から言うと、フリー版のXC32でもC言語で作れたんですが、
良い練習問題になるので挑戦してみてください
834:774ワット発電中さん
17/07/16 22:57:16.48 ZPEaK9LG.net
>>815
ハードウェアモジュールやバッファってのがあるからな。
とはいえ簡単では無さそうですね。
XC32はMIPSのGCCじゃなかったっけ
835:774ワット発電中さん
17/07/16 23:33:11.91 zcJjyESh.net
必要な部分だけインラインアセンブラってのでもいいんでない?
836:774ワット発電中さん
17/07/17 01:18:45.09 DcPS9JUl.net
MCCのコードを単純にアセンブラで記述し直すだけじゃ無理ですね
もっと上位での工夫が必要です
837:774ワット発電中さん
17/07/17 07:03:49.02 tLOGVm3a.net
ここは初心者スレです
PICは工業高校や専門学校の教材などにも使われていて
プログラミングそのものの経験が浅い人もいるので
まだPICのアセンブラの知識がない人もいることをお忘れなく
838:774ワット発電中さん
17/07/17 08:17:21.31 3RHZp+/0.net
なんかアセンブラが難しいという風潮があるようだが本来逆だからな
つーか両方とも簡単で誰でもわかるってのが正解だが
839:774ワット発電中さん
17/07/17 08:19:02.19 I9uJ0b7p.net
>>820
まず日本語を勉強してからでいいんだぜ
840:774ワット発電中さん
17/07/17 08:20:49.21 3RHZp+/0.net
>>821
そりゃそうだな
で誰に言ってんの?
841:774ワット発電中さん
17/07/17 08:22:19.47 NB+n+GCp.net
アセンブラは単純で面倒
難しくはない
842:774ワット発電中さん
17/07/17 08:31:04.32 3RHZp+/0.net
>>823
で、そういうこというとアセンブラ爺が出てきて「お前ら素人には面倒だろうな」って言われるんだろうな
843:774ワット発電中さん
17/07/17 10:02:52.13 q3X0QRie.net
質問させてください
C言語に適したアーカティクチャーのマイコン
ということをききますが、どういうことなのでしょうか?
どのマイコンでも、C言語のコンパイラーはあるので、
適不適な関係ないと思うのですが。
よろしくお願いします
844:774ワット発電中さん
17/07/17 10:15:36.34 DcPS9JUl.net
全くC言語を意識しないアーカティクチャーの場合、C言語で使われない命令が速かったり、C言語でよく使う記述が遅かったりする
これだとC言語で書いた場合とアセンブラで書いた場合の速度差やコードサイズ差が大きくなってしまう
C言語に適したアーカティクチャーは、
コンパイラが吐かないような命令は減らし、
コンパイラが使いやすい命令を重視する
PICの場合は、もともとコンパイラを意識しない
アーカティクチャーであった命令形態から、
いくつかのコンパイラ用の命令を足しただけ
845:774ワット発電中さん
17/07/17 10:16:58.61 DcPS9JUl.net
近年、マイコンの性能はコンパイラで作ったコードで測られるため、コンパイラに適した命令体系と、性能の良いコンパイラは必須
846:774ワット発電中さん
17/07/17 10:17:50.26 KqHKqRBn.net
アーカティクチャーやめいw
847:774ワット発電中さん
17/07/17 10:30:46.79 DcPS9JUl.net
釣りだと思ったけどマジレスしてしまった
私の予想が正しければレスは付かない
848:774ワット発電中さん
17/07/17 10:34:07.30 KqHKqRBn.net
>>829
いや真面目であることは悪いことじゃない
この手の質問をする奴は、いわゆる女子的な質問をしている可能性もあるからな
つまり自分はこう思ってるんだけどあってるよね?同意してくれるよね?って言いたいだけのやつ
求める答えはそのとおりだねだけ
他人の意見を聞き入れるつもりは全くない最もめんどくさいタイプ
>>825がそうじゃないといいね
849:774ワット発電中さん
17/07/17 11:14:57.96 tLOGVm3a.net
PIC32で使われてるMIPSの基本命令は
まさにC言語をつくるための単純な命令セットを考えました的な感じですね
32bitCPUだけどこんなに単純
MIPS32 Instruction Set Quick Reference
URLリンク(www.cs.duke.edu)
850:774ワット発電中さん
17/07/17 11:21:43.53 tLOGVm3a.net
PIC24もC言語を作りやすい命令セットになってると思う
PIC24F ファミリ リファレンス マニュアル、セクション 02. CPU
URLリンク(www.microchip.jp)
851:774ワット発電中さん
17/07/17 12:00:46.26 tLOGVm3a.net
PIC24の命令セット詳細(英語)
16-bit MCU and DSC Programmer’s Reference Manual
URLリンク(ww1.microchip.com)
852:774ワット発電中さん
17/07/17 12:48:23.43 vO10BZFX.net
アセンブラバカが出ると炎上する
32bitバカが出てくると過疎る
853:774ワット発電中さん
17/07/17 12:57:01.03 ziTgEkgi.net
PIC32使ったこともあるが、趣味の制御対象なら大体PIC18ぐらいで十分なことに気づく
内蔵ペリフェラルやdipのピン数、パスコンなど外付けパーツの数はPIC18が有利。
大容量でかつ緻密な制御ならともかく、大したことしないのに32ビットにこだわるほうが滑稽
854:774ワット発電中さん
17/07/17 13:27:42.57 Hk/QuPnX.net
そういう100羽一絡げの議論よくない。
855:774ワット発電中さん
17/07/17 14:43:39.32 eG+Ddob0.net
能力の無い人間ほど、あーだこーだと言い訳が上手だなw
856:774ワット発電中さん
17/07/17 14:44:16.54 UTYyTvq2.net
>>835
Lチカ程度の事しかしないならPIC18どころかPIC12でも十分だよ
お前にPIC18は不要。というか実に滑稽
今日また一つ賢くなれてよかったね
857:774ワット発電中さん
17/07/17 15:02:21.11 KqHKqRBn.net
PIC32はMIPS32だからもはやPICなのかと言われると微妙
858:774ワット発電中さん
17/07/17 17:13:03.52 SChFaRbK.net
>>831
PDP-11の命令セットを眺めるとなるほどねと思うかも。
859:774ワット発電中さん
17/07/17 18:00:29.27 DcPS9JUl.net
>>839
意味不明
860:774ワット発電中さん
17/07/17 18:15:08.59 tLOGVm3a.net
>>840
これですか?
PDP-11/40 processor handbook
URLリンク(pdos.csail.mit.edu)
861:774ワット発電中さん
17/07/17 18:24:00.51 tLOGVm3a.net
PDP-11なんてDECのベストセラーの16bitミニコンで
Version 7までのUNIXがアメリカの大学でよく使われてたことしか知らない
DECに関してはこんな記事があるよ
業界に痕跡を残して消えたメーカー CPU設計に大きな影響を与えたDEC
URLリンク(ascii.jp)
862:774ワット発電中さん
17/07/17 18:59:35.38 KqHKqRBn.net
>>841
要は巷で流行ってるARMコア搭載のマイコンと構図は変わらんってこと
863:774ワット発電中さん
17/07/17 19:04:40.65 UTYyTvq2.net
DECは消えたけどDECの技術はSamsungに受け継がれたし、DEC魂はSamsungの
中に息づいてるよ
864:774ワット発電中さん
17/07/17 19:13:49.94 DcPS9JUl.net
>>844
構図とPICかどうかと
どういう関係?
865:774ワット発電中さん
17/07/17 19:18:22.07 DcPS9JUl.net
意味不明な屁理屈で32bitをこのスレから追い出そうと?
866:774ワット発電中さん
17/07/17 19:24:30.65 KqHKqRBn.net
>>846
>>847
わるいわるい、そんなつもりで書いたわけじゃないよ
そんなムキにならないでよ~
867:774ワット発電中さん
17/07/17 19:47:50.14 tLOGVm3a.net
>>845
URLリンク(pc.watch.impress.co.jp)
> さらに、旧DECのAlphaプロセッサ開発チームから
> 多数のアーキテクトとエンジニアを迎えることで開発力を強化した。
> K7を担当したDirk Meyer氏は元Alpha 21064/21264のアーキテクト、
> K8を担当するFred Weber(フレッド・ウェバー)副社長
> (Vice President、
868:Computation Producuts Group)は元NexGenのアーキテクトだった。 > その当時は、旧DECのJim Keller氏(Atiq Raza氏の退社後に退社)がK8を担当し、すでに開発を始めていると言われていた。 IntelはDECの半導体部門を買収してるし AMDはDEC Alphaの開発者を引き抜いてる Jim Keller氏はAMDのZENの開発責任者
869:774ワット発電中さん
17/07/17 19:49:24.47 wk/Iu1Nb.net
PICも8ビットと32ビットとでは同じ会社の組み込み用マイコンてだけで
応用用途も作る作法も大分異なるのだしスレ分けたほうが有意義と思うなあ。
同じ会社の製品て括りではもはやAVRもPICと同一スレにすべきという議論も
可能とは思うがそれはない方向なんだろ?
870:774ワット発電中さん
17/07/17 20:07:00.82 tLOGVm3a.net
>>850
スレわけるとARMやルネサスの信者さんが喜ぶよ
871:774ワット発電中さん
17/07/17 20:16:56.55 wk/Iu1Nb.net
>>851
誰かが喜ぶのだからそうするべきという賛成意見?
誰かが悲しむというなら反対意見だけどそうじゃないんだよね?
872:774ワット発電中さん
17/07/17 20:33:56.04 rSrwPqCy.net
趣味性が強くて感情的になりやすいってのはあるかなあ。
PICだけがスレがたくさんあるのも、なんだかんだ言っても感情的なものが原因だし。
873:774ワット発電中さん
17/07/17 20:41:09.68 tLOGVm3a.net
>>852
ルネサスのスレでここ一週間くらいのレスみてくるといい
874:774ワット発電中さん
17/07/17 21:16:29.88 wk/Iu1Nb.net
マイコンなんて必要に応じてPICでもARMでも適当なのを選べば
良いと思うけども、Microchipの社員でもないユーザーの立場で
PICに拘ってそれ以外のユーザーを敵視するって馬鹿とかしか思えん。
875:774ワット発電中さん
17/07/17 21:19:04.70 rSrwPqCy.net
>ARMやルネサスの信者さんが喜ぶよ
その人たちが喜んだとして、PICユーザーに何か不都合でもありますの?
876:774ワット発電中さん
17/07/17 22:50:44.60 DcPS9JUl.net
>>769
877:774ワット発電中さん
17/07/17 22:56:44.99 UTYyTvq2.net
別に分ける必要なし
878:774ワット発電中さん
17/07/17 22:59:58.18 rSrwPqCy.net
>>857
言われないと前に進まない人なのかな?
過疎るとどんな不都合がありますの?
879:774ワット発電中さん
17/07/17 23:02:43.26 DcPS9JUl.net
>>859
分けたいならそのメリットをまず上げるべきかと
880:774ワット発電中さん
17/07/17 23:06:54.73 DcPS9JUl.net
C言語で組んでいれば命令の差など些細な差
それよりもペリフェラルの差の方がソフト設計やハード設計をする上で重要
PICはどれもペリフェラルの作りは近い
特に16bitと32bitは非常に近く、
ピンコンパチであったりもする
881:774ワット発電中さん
17/07/17 23:09:21.56 DcPS9JUl.net
分けるなら分けるで、16bitをどうするかでまた揉めるぞ
882:774ワット発電中さん
17/07/17 23:19:21.35 DcPS9JUl.net
ビット数で分けたら、次はC言語とアセンブラを分けるとか言い出しそうだな
883:774ワット発電中さん
17/07/17 23:21:56.56 rSrwPqCy.net
>>860
まず基本的に分けないという姿勢でこれまでやってきたか、ってことがあります。
PICスレは名目上、分かれていますが、中身は混濁しています。
中国系禁止みたいに公序良俗に反するわけでもない、合理的なことが書かれた>>1とは
関係なしに喧嘩が発生します。そんなことならスレを再統合すれば良いのではないかと
俺は思うのですが、そうはなっていません。
これは「スレは統合が望ましいものである」という共通認識がないことの証明です。
分けるメリットは上にも書かれてますので俺が繰り返す必要もありません。
互いに感情を傷つけあうレスを慎まないなら分けた方が良いでしょう。
他の例でいえば、テスターのフルーク禁止スレは、たまに揉めますが、おおむね有効に
働いています。(その>1を読めば、公序良俗に反するものでもないことがわかります)
>>862
>分けるなら分けるで、16bitをどうするかでまた揉めるぞ
揉めたら分ければいいんじゃないですか?
884:774ワット発電中さん
17/07/17 23:25:30.11 rSrwPqCy.net
>>864を書いていて再認識したわけですが、
>互いに感情を傷つけあうレスを慎まないなら分けた方が良いでしょう。
おそらく、これが楽しいと感じる人が何人かいることが根源的な問題なんですよ。
885:774ワット発電中さん
17/07/17 23:27:08.49 DcPS9JUl.net
分けたら揉めない
という根拠は?
886:774ワット発電中さん
17/07/17 23:28:30.03 DcPS9JUl.net
PIC共通の話題はどこてする?
887:774ワット発電中さん
17/07/17 23:29:30.96 DcPS9JUl.net
既に2個もスレがあるが、
初めてスレだけ分けたいの?
888:774ワット発電中さん
17/07/17 23:33:50.37 rSrwPqCy.net
>>866
おっと。俺がそんなことを書いているとしたらミスです。どこかな。
揉めないではなくて、揉める頻度が減る、ですね。
根拠はひとつは、テスターのフルーク禁止スレです。たまにそのことで揉めますが、
分ける以前の揉め方とは段違いの平穏さです。ってこれ、>>864でも触れてるじゃあありませんか。
889:774ワット発電中さん
17/07/17 23:33:54.86 DcPS9JUl.net
テスタースレの分割が有効に働いてる?
またまたご冗談を
890:774ワット発電中さん
17/07/17 23:35:22.04 DcPS9JUl.net
揉める頻度が減る根拠は?
分けた場合のデメリットはちゃんと把握してる?
分け方は?
891:774ワット発電中さん
17/07/17 23:36:37.90 DcPS9JUl.net
>>861に対する意見は?
892:774ワット発電中さん
17/07/17 23:37:13.41 rSrwPqCy.net
>PIC共通の話題はどこてする?
PIC総合スレを作ればいいじゃあありませんか。
でもね、分ける以前に
> >互いに感情を傷つけあうレスを慎まないなら分けた方が良いでしょう。
> おそらく、これが楽しいと感じる人が何人かいることが根源的な問題なんですよ。
本当はこっちをなんとかした方が良いわけですが。
たぶんね、8ビットPICスレで「PIC32 ビットを使わない爺はボケだ」なんて言う人が出てきたら、
「スレチだ総合スレでやれ」って話になります。
893:774ワット発電中さん
17/07/17 23:38:37.69 rSrwPqCy.net
>>872
これも>>873で。
894:774ワット発電中さん
17/07/17 23:39:49.02 DcPS9JUl.net
スレの乱立は賛成しない
895:774ワット発電中さん
17/07/17 23:40:38.84 DcPS9JUl.net
揉めるのがイヤなら揉めない工夫を
スレを分けても解決しない
896:774ワット発電中さん
17/07/17 23:41:06.35 rSrwPqCy.net
>テスタースレの分割が有効に働いてる?
>またまたご冗談を
あー。
これからフルーク禁止スレで、フルークの話題を連投する人が出てきてもカウントしません。
有効に働いていないことにしたい人がきっといます。
897:774ワット発電中さん
17/07/17 23:42:52.31 rSrwPqCy.net
>揉めるのがイヤなら揉めない工夫を
たいしてデメリットのないスレ分けも工夫のひとつじゃありませんか。
で、それ以外に、何かありますの?
既に無視し続けるには不快すぎるからこういう話題になるのですよね?
898:774ワット発電中さん
17/07/17 23:45:40.47 rSrwPqCy.net
>スレの乱立は賛成しない
だったら有効にスレ分けが働いていないPICスレも統合する方向に。
899:774ワット発電中さん
17/07/17 23:46:00.11 DcPS9JUl.net
君自信、電気電子とは関係ない話題を延々してスレを汚してる自覚はある?
無いなら君も彼らと同じ
悪気が無いだけたちが悪い
900:774ワット発電中さん
17/07/17 23:46:31.96 DcPS9JUl.net
>>879
よろしく!
901:774ワット発電中さん
17/07/17 23:47:03.29 DcPS9JUl.net
あとは任せた
902:774ワット発電中さん
17/07/17 23:47:08.50 UTYyTvq2.net
分けたきゃ勝手に分ければいいよ
ただし後から俺ルール出してきておきながらそれを他人に強要しないのなら。
分かれた後も8bitも32bitもこれまでどおりこのスレで会話するけどその時に
「32bitは向こうのスレでやれ」とか一々強要してこないのなら勝手にどうぞ
903:774ワット発電中さん
17/07/18 05:44:00.91 7eWwVQ9B.net
まあ分けても過疎るだけだろうな
32bitバカってID:E7pLNk3Uみたいに薦めるだけで大したこと書てないから
904:774ワット発電中さん
17/07/18 06:31:46.08 6CAge1nZ.net
>>767が32bitバカか
32bitの話題が上がるだけで拒絶反応なんだね
病気か?
905:774ワット発電中さん
17/07/18 06:39:32.44 qfL0/tqD.net
分けたって出張合戦になるだけだから無用。
906:774ワット発電中さん
17/07/18 06:56:44.22 6CAge1nZ.net
まずは、初めてスレとして整備すれば?
テンプレとか
高くて性能の低い古いPICも普通に売ってて選ぶのに困るから >>6 にまとめたり、
PICの特徴をわかった上で使ってほしくて >>5 にまとめたり
そういうの、おれが来るまで誰もやってなかったよな
おれが勝手にまとめたテンプレに対して意見すら何も出ない
あとあれば良いと思うのは、PIC関連の情報へのリンク集
907:774ワット発電中さん
17/07/18 07:05:26.76 6CAge1nZ.net
開発環境の説明もほしい
PICKIT3
MPLAB X
MLA
MCC
Harmony
908:774ワット発電中さん
17/07/18 07:43:35.52 P/ytct1a.net
スレ分けるより、MicroChipに、AVRコア+PICモジュールのPICAVシリーズを出してもらうように運動しよう!
みんなが幸せになれる
909:774ワット発電中さん
17/07/18 07:52:47.58 f/XGLWLm.net
しょせん人間の醜悪さを競うような罵詈雑言のゴミ溜めスレだぞ
細かく分けても悪臭プンプンの分別ゴミ箱が増えるだけw
910:774ワット発電中さん
17/07/18 08:04:19.62 6CAge1nZ.net
>>889
PICコアのどの辺が不満?
911:774ワット発電中さん
17/07/18 08:13:34.49 qfL0/tqD.net
AVR8bitとか32の周辺ってそんなに腐ってた?
912:774ワット発電中さん
17/07/18 08:57:11.20 P/ytct1a.net
>>891
8bitのバンク切替なところ
913:774ワット発電中さん
17/07/18 08:57:33.59 P/ytct1a.net
>>892
PICに比べるとノイズ耐性が低い
914:774ワット発電中さん
17/07/18 10:37:18.96 DeG44/DB.net
C言語そのものというより、ライブラリや変数の型でコード効率や、スピードで問題出てくるからね。
PICの場合、不用意に浮動小数点をつかったり、8bit変数 ですむところに 16bit変数を使うとか、
printf等のライブラリを使うとかで、余計プログラムサイズが増える。
トレードオフの問題だけど、
関数呼び出しの、オーバーヘッドを意識して、あえて、変数をグローバルエリアに確保するとか。
915:774ワット発電中さん
17/07/18 11:04:43.13 P/ytct1a.net
>>895
8bitのPICの場合、実コード上では、グローバルとローカルでそんなに大きく意味があるとは思えない。
916:774ワット発電中さん
17/07/18 11:55:14.42 WBT7nM9D.net
>>893
32bit使えば解決
917:774ワット発電中さん
17/07/18 11:57:28.06 WBT7nM9D.net
>>895
不用意に浮動小数点を使うライブラリってどれ?
918:774ワット発電中さん
17/07/18 12:03:36.30 P/ytct1a.net
>>897
32bitの5Vのラインナップってたくさんある?
919:774ワット発電中さん
17/07/18 12:10:40.41 gbOT6R2z.net
5Vに拘るのはアセンブラバカ。
Arduinoでレベル変換たくさん使うバカと同類。
920:774ワット発電中さん
17/07/18 12:15:59.95 qfL0/tqD.net
そんなにレギュレータ載せたくないの?
921:774ワット発電中さん
17/07/18 12:55:54.86 nVjybN+z.net
そんなところで、RaspberryPi ZeroWが1300円なりか・・・
922:774ワット発電中さん
17/07/18 13:03:57.92 WBT7nM9D.net
5V馬鹿
アセンブラ馬鹿
8bit馬鹿
16bit馬鹿
32bit馬鹿
PIC馬鹿
>>890が正しいかも
923:774ワット発電中さん
17/07/18 13:29:16.31 WBT7nM9D.net
AVR馬鹿、RaspberryPi馬鹿、Arduino馬鹿はスレチ
924:774ワット発電中さん
17/07/18 14:47:09.14 WBT7nM9D.net
>>889
みんなって?
お前だけだろ
925:774ワット発電中さん
17/07/18 15:30:09.36 P/ytct1a.net
電源は3.3でもいいんだけど、FETをドライブするのにポート出力が5V欲しいんだよ
3.3で直でドライブできるFETはかなり減る。
プルアップしても良いんだが、5Vトレラントでもあまりやりたくない
直接Lチカするだけでも3.3だと抵抗値が5Vより面倒くさい。
926:774ワット発電中さん
17/07/18 15:54:23.60 DeG44/DB.net
>>898
たとえば簡単な温度計測表示等で、整数値演算でこなせるものを、float使ったりすることですよ。
もちろん、使い分けですけど。
927:774ワット発電中さん
17/07/18 18:07:55.69 WBT7nM9D.net
>>907
で、どうしたいの?
>>906
無いものねだりしてもしょうがない
時代的にはマイコンの電圧は下がる方向だから、
3.3Vでなんとかする方法を考えるか
先が無いのを承知で5Vを選ぶか
しかない
バンク切り替えの何が問題?
928:774ワット発電中さん
17/07/18 18:09:20
929:.84 ID:WBT7nM9D.net
930:774ワット発電中さん
17/07/18 18:32:00.85 J/AKPH0N.net
>>908
分かっているくせにわざわざ聞く嫌な野郎だな
本当に分からないのなら適正ないから事務屋でもやってろ
931:774ワット発電中さん
17/07/18 20:37:41.68 6CAge1nZ.net
言わなきゃわからん
932:774ワット発電中さん
17/07/18 21:35:36.70 /uarHnXn.net
5Vトレラントのオープンドレイン+外付けプルアップで強引に……
933:774ワット発電中さん
17/07/18 21:39:20.07 zKAMRjWg.net
バススイッチでいいんじゃない?
Cypressのマイコンは何故か5Vトレントが充実してるけどMicrocipのマイコン
(あと旧atmelのやつも)は5Vトレントじゃないか、トレントだとしても限られた
わずかなピンだけなんで基本的には5Vトレントなバススイッチを併用してるな
934:774ワット発電中さん
17/07/18 21:43:20.04 W2aAVRli.net
トレラントね
935:774ワット発電中さん
17/07/18 22:04:46.11 P/ytct1a.net
>>908
AVRコアにPICモジュールがなぜ欲しいかと聞かれたから
リニアアドレスで5Vそのままつなげられる頑強なIOとモジュールでDIPってのが便利だと答えたまで。
AVRはいい線っていると思うが、メーカーの対応としてはMicroChipのスタンスが好きなので。
それをないものねだりとか言われても困る。別にねだっているわけではない。
バンク切替の問題がわからない人に答えても無駄でしたね。
>>910さんの回答がナイスでした。
936:774ワット発電中さん
17/07/18 23:16:02.46 6CAge1nZ.net
>>889が無い物ねだりじゃないって?
運動しようとか言ってるわりに、
全く賛同を得ようという気が無い
変な人
みんなが幸せ?
お前が幸せになりたいだけだ
937:774ワット発電中さん
17/07/19 06:56:46.86 Y0WeyBA5.net
MicroChipって書き方が変です。
938:774ワット発電中さん
17/07/19 08:31:05.89 MCBRWJYc.net
>>916
PIC関係ないところで個人攻撃がお好きなお方ですね
939:774ワット発電中さん
17/07/19 10:12:21.19 NL5AYZ9m.net
AVRはスレチ
940:774ワット発電中さん
17/07/19 12:21:43.63 ctD0e0YN.net
1社がIDEを2つ持ってるのは不自然な感じがする。長期的にでもまとめて頂きたい。
941:774ワット発電中さん
17/07/19 21:13:09.87 gnJ4d3Ut.net
ここに書いても無意味
942:774ワット発電中さん
17/07/20 06:23:01.79 deVyL6yO.net
相手の発想を「馬鹿」と言う馬鹿
943:774ワット発電中さん
17/07/20 07:51:33.67 uSN7MDdK.net
PICって何がいいの?
944:774ワット発電中さん
17/07/20 09:28:26.77 lgLp4sGo.net
8pinが豊富なところが良い
945:774ワット発電中さん
17/07/20 10:05:08.02 z4oui2Fk.net
>>923
コピペ元がたくさんあること。
単純で制約が大きいので、やれOSだの、マルチタスクだのとややこしいところに
手を伸ばさなくても済むこと。
Atmel(AVR)などの敵対勢力はMicrochipが買収してくれるので、安泰に思えること。
などなど
946:774ワット発電中さん
17/07/20 10:06:18.91 0zN0toQM.net
ライターが安い
947:774ワット発電中さん
17/07/20 11:29:24.29 uSN7MDdK.net
>>924
8pinの作例を教えて下さい
>>925
コピペ元のリンク集をいただけると
>>926
最近はどこも安い気がする
ST-LINK/V2とかLPC-Link2とか
948:774ワット発電中さん
17/07/20 11:32:49.26 uSN7MDdK.net
マイコン自体の売りはありますか?
949:774ワット発電中さん
17/07/20 12:21:34.28 0zN0toQM.net
夏休みだね…
950:774ワット発電中さん
17/07/20 13:13:36.57 AvSuDKE+.net
ID:uSN7MDdK って質問者を装って、>>927のように周りの用事を増やしたり逆らうが目的。
相手にしなくていいでしょう。
951:774ワット発電中さん
17/07/20 13:21:36.67 siGPhp4j.net
わざわざ隠す内容か?
952:774ワット発電中さん
17/07/20 13:29:04.17 AvSuDKE+.net
煽り目的の人のために、わざわざ書いてやる必要もない。
953:774ワット発電中さん
17/07/20 13:31:22.72 AvSuDKE+.net
あ、>>931が書くことにケチをつけるつもりはございません。どんどん書いてあげてくださいな。
954:462
17/07/20 23:12:31.84 KhXkfk6b.net
久しぶりにここに来ましたが・・・
すみません 私がアスペでした
955:774ワット発電中さん
17/07/21 00:02:26.38 Zy3u7jSR.net
>>927
GDBとJTAGが使えるのはそこそこ安いけど、8bitクラスの書き込み器とデバッガは
PICが安いと思うな。ルネもだいぶ安くなったけどな。
AVRではDRAGON使ってるが、チップを選ぶのがいまいちだ。
956:774ワット発電中さん
17/07/21 06:22:10.01 Id4VyTdC.net
PICKIT3でのデバッグは精々8bitまでだな
16bitや32bitだとデータ転送が遅すぎて非常にストレス
32bitだとICD3が必須と言っても良いくらい
ただ書くだけならどっちでもいいけど
最近はROMブートローダーが内蔵していて、
ライターを使わずとも
いろいろなペリフェラルから書けるのが主流だけど
PICはそうなってないよね
ルネサスはE1が便利
RL78からRXまで使えてPICKITみたいに遅くない
957:774ワット発電中さん
17/07/21 07:07:33.49 zbVt1CU2.net
当てずっぽうでコード修正->デバイスで実行 を繰り返す人には致命的かもな。
958:774ワット発電中さん
17/07/21 07:15:23.90 XXWA6Tt7.net
ほいで
959:774ワット発電中さん
17/07/21 07:47:23.33 30IozQ75.net
8ピンだとデバッガは難しいな。
960:774ワット発電中さん
17/07/22 01:18:08.33 TfC4hBxV.net
XC8について質問さしてください
EEPROMの0x80~0xBFの間に
A1, B1, A2, B2, ・・・ , A16, B16
という順番で値が書かれています
これを uint8_t buff[16][2] の配列に入れたいだけなんですが、どういうコードを
書くのが一番よいのでしょうか?
多分やり方はいくらでもあって例えば
for (i=0 ; i<16 ; i++) {
buff[i][0] = read_eeprom(0x80 + i*2);
buff[i][1] = read_eeprom(0x81 + i*2);
}
でも
uint8_t j=0;
for (i=0x80 ; i<0xBF ; i+=2) {
buff[j][0] = read_eeprom(i);
buff[j][1] = read_eeprom(i+1);
j++;
}
でも何の問題もないと思うんですが、XC8においてもっとも最適な記述がしりたいです
961:774ワット発電中さん
17/07/22 01:27:36.98 lvDqxJsX.net
コンパイラにアセンブルコード吐かせて研究する
962:774ワット発電中さん
17/07/22 02:26:27.39 lvDqxJsX.net
簡易的な方法として、コンパイル後のサイズが小さい方を良いと判断する
963:774ワット発電中さん
17/07/22 05:54:20.04 4G2p61XR.net
ポインタ使わないなら
// uint8_t j=0;
padr=0x80;
for (i=0 ; i<16 ; i++) {
buff[i][0] = read_eeprom(padr++);
buff[i][1] = read_eeprom(padr++);
}
964:774ワット発電中さん
17/07/22 06:55:57.72 jlfjZwz9.net
>>939
同じタイプの多ピンで開発して、8pinに移植
965:774ワット発電中さん
17/07/22 07:11:06.74 jlfjZwz9.net
>>940
コンパイラの最適化が頼りない時は
自力で最適化を行う
uint8_t *buf = &buff[0][0];
uint8_t i = 0x80;
do {
buf[0] = read_eeprom(i);
buf[1] = read_eeprom(i+1);
buf[2] = read_eeprom(i+2);
buf[3] = read_eeprom(i+3);
buf += 4;
i += 4;
} while (i =! 0xC0);
スピード優先だとこんな感じかな?
サイズ優先だとループ展開せずに以下の一行に
*buf++ = read_eeprom(i++);
スピード優先も、もしかしたらこれを複数行並べる方が速いかも
966:774ワット発電中さん
17/07/22 07:24:00.73 jlfjZwz9.net
ガチガチに最適化するなら、
コンパイラが吐く結果や時間測定結果を参考に
>>945 のループの展開(ループアンロール)は、
高速化のテクニックの基本
コードサイズとスピードどちらを優先するかで
どの程度展開するかを決める
コードキャッシュが小さい場合など、
展開し過ぎると逆に遅くなる場合があるので注意
967:774ワット発電中さん
17/07/22 07:28:39.32 jlfjZwz9.net
do while はループ先頭で条件判断を行わないので
for より速くてコンパクトになる可能性がある
ループの最後で条件分岐するのが最適で、
この形になるように導く
for だと、
最悪ループの先頭で条件分岐し、
ループの最後で先頭にジャンプ
になるので、ジャンプが増える
968:774ワット発電中さん
17/07/22 07:32:05.80 jlfjZwz9.net
>>940 の前半は
コンパイラが糞だと非常に効率が悪いコードに
read_eepromのパラメータも、
乗算と加算を馬鹿正直にやるかもしれない
buffのアドレス計算も同じ
まともなコンパイラだと、
全くそんな事は気にしなくて良いのだけど
969:774ワット発電中さん
17/07/22 07:39:03.04 jlfjZwz9.net
いろいろ書いたけど、
大したループサイズじゃないし
コードサイズも余裕があるなら
吐かれるバイナリの質よりも
見やすくて変更もしやすいコードを心がけた方が
良い場合が多い
970:774ワット発電中さん
17/07/22 08:31:34.42 jlfjZwz9.net
コンパイラの最適化の設定も忘れずに
無料版でも1段階は設定可能
971:774ワット発電中さん
17/07/22 09:49:18.31 Sb5uusv4.net
>>945
検証できないから聞きますが、buffの配列に取得した期待値がそれで代入されます? 特定の言語処理系だからじゃなくて
スピード優先ならリテラルは敵なのでは?
スピード重視ならi+リテラルも遅くするのでは?
forよりwhileでスピードを求めてるのに実行遅くするような演算が全部の行に入ってるのはどうなんだろ
972:774ワット発電中さん
17/07/22 09:57:48.56 lkt4oF/S.net
昔のスパコンだと極力ループさせないようにしてチューニングしてたな。
4回回す場合は、同じのを4回書く。
容易に結果が分かる数値は、直接書く。
みたいな感じ。
973:774ワット発電中さん
17/07/22 10:33:25.91 T+b5JIhr.net
>>952
それ、ループアンローリングっていうコンパイラの最適化手法の1つ。
974:774ワット発電中さん
17/07/22 10:36:28.34 qk8L++04.net
>>951
前半
多重配列のデータのならび順はC準拠であれば決まっている
後半
(さらにループを展開しない限り)演算数は最小になっている
buf, i は、提示した2通りをそれぞれ試して
速い方を選べば良い
これよりさらに最適化するなら、
吐かれるアセンブラをみたり、
速度をはかりながらやる
975:774ワット発電中さん
17/07/22 10:37:44.00 qk8L++04.net
>>952 >>953
>>946 にそのまま書いたのに無視かよ
976:774ワット発電中さん
17/07/22 10:42:20.50 qk8L++04.net
>>951
出来れば君の案を書いていただけると
部分的でも
977:774ワット発電中さん
17/07/22 11:19:20.24 H4wXH4dr.net
>>940
0x80..0xBFだと64byte。32byteのbuffに読み込んだらまずいでしょ。
978:774ワット発電中さん
17/07/22 11:21:51.99 qk8L++04.net
あ、騙された
>>945も【i != 0xA0】にしないと
979:774ワット発電中さん
17/07/22 12:32:04.12 g+wBlK1Z.net
>>957
64バイトエリアに8ビットのデータが32バイトあるつーだけ
980:774ワット発電中さん
17/07/22 12:34:47.86 g+wBlK1Z.net
>>959
と、思ったけど1ワードのデータが32個かもわからんな
981:774ワット発電中さん
17/07/22 13:03:55.42 hv1lv5ch.net
>>960
uint8_t buff[16][2]
982:774ワット発電中さん
17/07/22 14:53:17.15 H4wXH4dr.net
>>959
よく見ろ。>>940の後半のコードはまずい。
983:774ワット発電中さん
17/07/22 15:42:26.22 Jdv45tdf.net
>>940
> EEPROMの0x80~0xBFの間に
>
> A1, B1, A2, B2, ・・・ , A16, B16
>
> という順番で値が書かれています
> これを uint8_t buff[16][2] の配列に入れたいだけなんですが、
要素数が 16x2 = 32個 ということなら EEPROM のアドレス範囲が違うのでは。
> どういうコードを
> 書くのが一番よいのでしょうか?
> XC8においてもっとも最適な記述がしりたいです
・コードサイズを最小にしたい
・実行時間を最短にしたい
以上の条件が両立するとも限らないので「一番よい」「最適な記述」は一概には言えない。
単に速くしたいのなら
buff[0][0] = read_eeprom(0x80);
buff[0][1] = read_eeprom(0x81);
buff[1][0] = read_eeprom(0x82);
buff[1][1] = read_eeprom(0x83);
buff[2][0] = read_eeprom(0x84);
~略~
buff[15][1] = read_eeprom(0x9f);
こんな感じで展開すれば良いし、短くしたいのなら
uint8_t i = 31;
do {
((uint8_t*)buff)[i] = read_eeprom(0x80 + i);
} while (i--);
と書くのが良いと思う。コード生成の結果はコンパイルオプション `-S' を使用して確認するべき。
何れにしろ XC8 のコード生成効率は PRO エディションでもお世辞にも良いとは言えないのでこんなことに頭を悩ますくらいならアセンブラで書くか他のマイコンを選んだほうが精神衛生上良いだろう。