初めてのPIC 0x0e
■ このスレッドは過去ログ倉庫に格納されています
.
_ _ PICをさわるのは今日が初めて、という超初心者のためのスレです。
(O>――<O) PIC選び、PICを使った回路は、誰でも最初は不安なものです。
/ (・) (・) ヽ 恥ずかしがらずに何でも聞いてください。速攻で教えてくれますよ。
○ /▼\ ○ 質問のしかたは、初心者質問スレの発言1を見てくださいね。
|(ヽ二フ ) |
/  ̄ ̄ ̄ ヽ
f ヽ / | PIC関係のスレは、レベルに合わせて以下のスレもありますので、活用しましょう。
ヽ \ / ノ ・PIC専用のスレ
| \_ )(_/ ! 本家本元のPICスレです。口の悪い人もいますが、楽しくやってるみたい。
| | ここの話がわかるようになれば、あなたはもう一人前のPICerです。
| | ・マイコンソフト 悩み事相談室
| | ̄ ̄| | マイコンソフトやツールの質問は、こちらでどうぞ。的確な回答があります。
(_ノ ヽ_)
質問する時のコツ
・性格の悪い回答者はスルーしよう(相手すると逆効果)
・素人玄人などと 上から目線の回答者は、無視してください。相手してはいけません。
・そこそこ良い回答が出るまでしばらく再発言しないのもあり(良回答は後に出やすい)
・回答者のアドバイスで後日解決したら、結果報告しよう(とても喜ばれる)
・回答者は、僕たち初心者に優しくしてください。あなたも通ってきた道のはずです。
必要なソフトなど(基本無料)
統合開発環境 MPLAB X ttp://www.microchip.com/mplab/mplab-x-ide
コンパイラ (XC8 XC16 XC32) ttp://www.microchip.com/mplab/compilers (高機能版は有料)
コード生成プラグイン (MCC) ttp://www.microchip.com/mplab/mplab-code-configurator
マイクロチップ ライブラリ (MLA) ttp://www.microchip.com/mplab/microchip-libraries-for-applications
必要なハードなど
初心者はPIC16F1、PIC18F1以降の型番で始めると無理なく始められます。
プログラムの書き込みには書き込み器が必要です。持っていない場合はPICkit3(中華クローンでもまず大丈夫)を使いましょう。
PIC一覧、スペック検索 ttp://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1005
さ、質問どうぞ〜っ
0x0d 2017/10/25〜 ttp://rio2016.5ch.net/test/read.cgi/denki/1508935254/
0X0C 2017/07/27〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1501157324/
0x0B 2017/05/08〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1494235320/
0x0A 2017/01/04〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1483498857/
0x09 2016/09/07〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1473238791/
0x08 2016/04/30〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1461994030/
0x07 2016/02/05〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1454648249/
0x06 2015/07/18〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1437151298/
0x05 2015/04/07〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1428391368
0x04 2015/01/02〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1420205108 >>730
それを「アセンブラ命令を書く」というのか...
インラインアセンブラと比べて見ては?
コンパイラの最適化の設定は0〜3まであって
無償版はお試し期間を過ぎると0〜1しか選べない
試したければ最適化の設定を1にしてみれば良い
そもそも今は3になってる? >>721
8bit (PIC16F18326)と32bit の処理時間を比べてみました
ループ1周
8bit 388クロック
32bit 41クロック
圧倒的に32bitの方が速いですね
32bitの方は80MHzですので
クロック周波数を加味するとさらに差が開きます
8bitは1命令4クロックなのと、関数コールに時間がかかっているのが主な遅い要因のようです
ちなみに、
純粋にCPUの処理時間を比べるために
タイマーの待ち時間はゼロにしました
それ以外は>>710 >>716 >>717 のままです >>734
ヘーッ、ビット数で大きく違うんだ。
参考になりました。
ありがとう。 32bitでアセンブラでガシガシに組んだら
1ビット平均4.5クロックくらいになりました
SCLK HIGH 2クロック / LOW 2クロック
残りはループやデータロードなどオーバーヘッド
ただし、
純粋にCPU部分だけの性能なんで
回路やバスがボトルネックになるかもしれません
非常識なコードまで含めれば
最短、2クロック + オーバーヘッド
になります >>710
もういないかもしれませんが
SDOやSCLKはLAT*bits.LAT**のdefineだと思いますが
これに直接代入は危険です
ISRや他のタスクで同じポートグループにアクセスしてない確認が取れた場合だけにしましょう
取れた場合も、移植時やコード変更時の無駄なトラブルを避けるため、
直接代入は止めた方が良いです
割り込み禁止で包む
ASET / ACLR 命令を使う
LL / SC 命令を使う
LAT*SET / LAT*CLR / LAT*INV を使う
など、アクセス中の割り込みでも問題ないように 8bitでアセンブラで考えてみたけと
ループやデータ読み込みを除いても
1ビット送信に20クロックもかかってしまう
非常識な方法でやっと10クロック
ベテランさんだともっと縮まるのかな?
℃玄人さんとか 定期的に、
8bitを過大評価
32bitを過小評価
した書き込みが有るんだよな
PICは8bit信仰が根強い ARMなんか、APBに書き出すと1サイクルなのに何十クロックもかかるよ。 ここはPICスレなんでよろしく
PIC32の競合となるCortex-Mならともかく
Cortex-Aの話が何の脈絡もなく突然出て来ても
「で?」としか言えん センサをI2Cで制御して無加工のままUARTで吐くような
単純処理にしか使ってないので8bitで十分なワシ UART送信を詰め詰めで送るほどシビアなタイミングは要求されてないので
1バイト毎にTRMTビットをポーリングしながらのんびり送信してます。
それゆえエラッタとは無縁なPICライフでハッピー♪ 電子工作未経験ですが質問させてください
例えば、PICを用いた自作キーボードを作りたい場合、
デバイス側としては、電子回路(USBシリアル変換モジュール・USBケーブル含む)と
PICに書き込むC言語だけで完結できるのでしょうか?
VB.netを勉強せずに済むなら、書籍代や時間労力を節約できるので
教えていただければ幸いです よろしくお願いします USBシリアル変換だと
PC側からキーボードとして認識しない
PIC16F1454などUSB機能の付いたマイコンを使いましょう
電子回路(マイコン、キー、USB端子などを含む)
プログラムをマイコンに書き込む為の道具(PICKIT4など)
統合開発環境(ソフト、無償)
が必要 開発言語はC言語のみでOK
もちろん開発に使うPCは必要
質問の答えになってます? 一から作るのか先人の作例を真似するのかにもよるが
未経験者には結構ハードルが高いと思う
できればもう少し段階を踏む方がよいのだが >>746
結果だけ有れば良いという事なら18F2550の作例を何から何まで提供しますがw PS2/USB 変換器使って、PS2プロトコルで送ると超簡単 1.キーボードを買ってくる
2.分解する
3.観察する
4.デバイス外す
5.目的のスイッチと配線する
6.楽しむ >>747 >>748さん
>USBシリアル変換だとPC側からキーボードとして認識しない
>PIC16F1454などUSB機能の付いたマイコンを使いましょう
なるほど、勉強になります
USB内臓PICでUSB機器として作るとなると、
USBフレームワークとかHIDクラスとか難しそうだったのと、
仮想COM接続でシリアル通信するのが簡単という意見を読んだので、
USBシリアル変換モジュール(FT232RL USBシリアル変換モジュール)を使えば良いのかなと思ってました
でも、実はUSBミニBコネクタ付きのPIC18F2550のマイコンボードも発注済みなので色々努力してみようと思います
>開発言語はC言語のみでOK など
安心しましたw 以上、詳しくありがとうございました
とても勉強になりました C言語の勉強を頑張ります! >>749さん
まだPICでLEDチカすらさせたことないですw
自作キーボードとまで行かなくても、
電子回路内のタクトスイッチを押すと、PCのアクティブウインドウに"a"と送信されることを
目指して頑張ります
>>750さん
ありがとうございます
キーボードコントローラというものあるんですね
詳しく調べてみようと思います
>>751さん
貴重なご提案をありがとうございます
未経験者なので回路図もプログラムも難しくて理解できないと思いますけど
差し障りなければ、後学のために是非お願いしたいです
PIC18F2550のUSBモジュール内臓PICはもうじき届くと思いますので
いつか理解できるようになりたいです >>752さん
Arduino互換ボードみたいですね
読んだ書籍がPICだけなので、今回はPICでやってみようと思います
次回からそちらも視野に入れて検討してみます ありがとうございました
>>753さん
FT232RL USBシリアル変換モジュールを使った仮想COMポートのシリアル通信の外にも
PS/2-USB変換器を使ってPS/2プロトコル通信する手段も有効なのですね
ありがとうございます 勉強になります
あとで調べてみますね
>>755さん
ありがとうございます
分解して改造してみるというのが物作りには大事ですね
いつかやってみようと思います
以上、皆さま貴重なご意見をありがとうございました! 大変勉強になりました 度々すみません
>>751さん
受信専用の使い捨てメアドを用意しました
zyvzwywm★abyssmail.com (お手数ですが★を@に置き換えて下さい)
お作りになられた作例の回路図やプログラムのファイルなどをDLできる
サイトのURLをこちらへお送ってくだされば、後学のために勉強させていただきます
ご厚意に甘えてばかりですみません
ご面倒なら無視して下さって結構です >>759
あなたの現在のスキルとその理由なら、買った本を埋没費用としても、今からでも遅くないから、PICと同時平行でpromicroもやってごらん。
今からaliでポチって、ネットの情報だけで片手間でやってもpromicroの方が早く出来上がる。
ArduinoよりPICを選ぶ場面は今後出てくるから適材適所だと思うから買った本は無駄にならないとは思うけど。 >>736
非常識と思ったコードの方、
実用の可能性は無いかと思ったけど可能性ありそう
8bit送信するコードを256通り作って
1バイト単位で分岐する
LAT*INVへの代入15個とリターン命令の16命令で良いので
256個作っても16KB
80MHzで動くPIC32はどれもROMが64KB以上あるので
ソフトSPIのパフォーマンスが重要なら有り
当然コードはプリフェッチキャッシュには収まらないが
それでも真面目に1bitずつデータを作るよりは速い
CPU時間だけでいうと平均2.7クロックで1bit送信出来る トータル処理量よりもバス占有時間を縮めたいなら
送信するコードをRAMに展開する手も
1ビット送信に2命令8バイト使うので1回で送るデータ量は限られるけど
1ビット送信時間は2クロックに近づく NYTから
チェコでも人手不足でロボット化を推進
Robots Ride to the Rescue Where Workers Can’t Be Found
https://www.nytimes.com/2018/04/16/business/labor-robots-jobs-eastern-europe.html
Zbynek Frolik氏が、急激な受注を処理するために新しい従業員を必要としたとき、彼はチェコ中に
広告を出しました。しかし、応募してくる人はほとんどいませんでした。賃金を引き上げても、住宅補助を
だしても同じでした。そこで彼はロボットに目をつけた。
「十分な人間を見つけることはできないので、私たちはできる限り人と機械を入れ替えようとしています」
と、100以上の国々で最先端の病院用ベッドを販売しているFrolik氏は言う
東ヨーロッパでは、労働者不足の解決策としてロボットが採用されています。 チェコ共和国、ハンガリー、
スロバキア、ポーランドの企業が機敏かつ競争力を保つために、新しいタイプの雇用創出に役立っている。
近年、共産主義崩壊後の低コストの製造拠点となったこれらの国々の成長率は、世界的な回復に支
えられて5%となっています。
その中でチェコは郡をぬいていて、トヨタの車やデルの家電製品を生産するチェコ共和国の沸騰する
経済は失業率をわずか2.4%に下げ、欧州連合(EU)で最も低い。
しかし、人材の不足は、チェコ企業が拡大する能力をそいでおり、 チェコ連邦産業連合によると、ほぼ
3分の1の会社が注文を断りはじめている。
同社の会長のヤロスラフ・ハナック氏は、「これが成長にブレーキをかけるようになっている。もし企業が
ロボット化や人工知能を向上させなければ、彼らは姿を消すだろう」と言う。
労働コストも別の要因です。 東欧は多国籍企業を低賃金で誘致することで製造業の勢力となった。
しかし、その優位性は失われつつある。 チェコ共和国の月額平均給与は昨年8%増の1,400ドルで
した。 ドイツの3分の1ですが、今後も上昇すると予想されている。
そこで、企業は外国人労働者を増やすことが助けになると言います。 しかし、保守的な政府は
移民制限を続け、最近は外国人就労ビザに厳格な上限を設定した。
同様に、長期的に心配な傾向があります。 家族は、退職に向かう人々を置き換えるのに十分な
子どもを育てていません。
米国最大の自動車メーカーであるSkodaは、人口動態の変化や賃金圧力に直面するための
自動化を「大幅に加速すると」と言う。
中略
ロボットが人間の生計を助けるか脅かすかは、激しい論争を巻き起こしている。
批評家によると、将来の景気後退が起こると、労働者は苦しむというリスクがある。
「ロボットの電源を切って人を戻すことはできない」からだ、という。
チェコの組合は警告を発し「ビジネスリーダー、政治家、労働組合は、今後の産業革命に前向きに
責任を持って対応しなければ、雇用はさらに脅かされる可能性がある」と述べた。
今のところ、企業はロボット化が新しい仕事を生み出すと主張しているのだが。 産業用ロボットに国際的競争力があるとかいう日本にとっては有利じゃん。
本当にそうなら、だけど。 >>764
どっちみち、単純作業に高い給料出せないからな。 「人手不足」は、まあ結構多くシーンで「(安い賃金で文句を言わずに言われたことを正確にする)人手が不足」の意味だよな。 PICを含めてマイコンは単純労働から人を追い出すことに貢献してきたんですよ。 >>765
業界にいると分かるけど中国からの大量発注で今、日本のロボット業界は史上最高の好景気。
産業用が中心だが、ロボット製造メーカーだけじゃなく関連部品メーカーも。
パーツによっては1年待ち。 PICは即納だけどmurataのチップコンデンサが
納期38週間とか言われて新規量産着手できない状態 どのコンデンサメーカーも品薄だけど特に村田がヒドイ…
客にドヤされたmurata営業がTDKのセラコン持ってきたなんて噂話までまことしやかに囁かれる現実 少量生産だとdigikey辺りで代替品テキトーに買えばいいのだろうけど
量産だとそんなわけにはいかないのでしょうねぇ コンデンサごときで量産止まるとか
そんなことがあるのか
特殊なコンデンサ? >>778
量産だと、たとえば製造用部品リストに
ごくあたりまえの 1608サイズ 25V 0.1uF 10% R特性 として、
25V 0.1uF 10% TBK製作所 C16081ER104K-R12
なんて書いてあったとして、それが品切れだったときに
「代わりに大洋誘電とかムラ夕製作所とかの同等品がありますやん」
が通じなかったりしますよ。 まぁ、指定の型式以外は、使っちゃいけないんだから、しょうが無いね。 汎用部品でいくらでも代わりがあるものを
何もせず待ってるだけなんて考えられないんだよね
量産が止まるって普通は大損害なわけで それは調達部署がアホってだけ。
設計にはなんの落ち度もない 調達部署が調達失敗を隠蔽してた
とかならその言い分もわかるが 抵抗とか電解コンデンサなら他社同等品切替でもまぁ問題は起きないけど
コイルキャパシタは他社相当品に代えた途端、ライン検査NG出まくりで
変更指示出した購買が責任もって不良品買い取れ!なんてことも… 大口なら供給が危うくなれば事前に連絡が来るだろ
購入側も需要予測出してるだろうし
穴を開けたら大変だから間に合うように代替の部品認定や設計変更する >>785
いやいや。その「ちゃんとした変更手順」が大変ってことなんでしょう。
積層チップコイル、チップセラミックはメーカーが変わると怖い、って考え方もわかります。
ノイズ試験(特に出す方)、振動試験、温度サイクル試験からやりなおせ、みたいな。
それをやらずに、市場にでてから問題になったら、
それがたまたまのものであっても、他の原因が大きくてもやっぱり変えたからだ、なんてことになりかねません。
誰も自分では責任を取りたくないから、弱いところに責任を押し付けるでしょう。
OKを出したエンジニアに道義的責任を押し付けて昇進・昇給機会を奪うぐらいならまだしも、
量産を請け負っている会社が提案して代替品に置き換えて問題が起きたら目も当てられないことがありますよ。 PICを使う初心者も部品選定には気をつけましょうってことで そんな事言ってたらPICを使う初心者も癌には気を付けましょう
とか際限ない >>789
それ、何の初心者やねん…。量産にかかわるプロの初心者ですね。 そもそも部品選定に気を使う初心者ならPICを選ばない可能性が・・・ 意外とMicrochipは納期トラブル起こさないんだよな…
買収したAtmelとかはちょくちょくやらかしてたのに 実装始める前にチラ見して自分の使い方に関係なければ放置。関係あったら回避するよう実装する。
それだけ。 記載されていないエラッタだったら?
自分のバグかCPUのエラッタか分らなかったら?
正攻法が使えなくて、裏口で遠回りでしか入れないとしたら?
初心者には使いづらいだろうな。
初心者はありふれた使い方しかしないとは思うけど、
いっそエラッタの心配をしなくても済むCPUを選んだ方がいいのではあるまいか。 >>798
記載されていないエラッタが存在しないCPUは何? >>798
エラッタの心配しなくて済むCPUってなに? いろんな他社のマイコンやFPGAでもエラッタはあるのに
ちゃんと公開してる分まだいいでしょ 実装はじめる前に見ないと駄目ですよ
機能が全く使えないのもあるので
あと、記載されてないのもあるんで注意 機能が使えないのにスペックには機能を有するように書いてあるのはPIC位では?
ひどい会社だ >>804
マニュアルに書いてある全機能が問題なく使えるメーカーっ具体的にどこですか? PICしか使ってないと、
宣伝文句に嘘があるのは普通
だと思っちゃうのか PIC信者の方がキモチワルイ
欠点の指摘に対して全力で否定 嫌なら使わなければいいだけ
エラッタあるのは皆知ってる
中にはデータシートに記載されていないものもあるだろう
それでも使いたい人は使うし嫌って使わない人もいる
君は後者なだけであって、それを否定するつもりはない
君の気持ち悪い点は
使わないという価値観を他人に押しつけている所
皆がエラッタあるけどPIC使え!と君に押し付けているか?
君に押しつけているなら、そりゃ布教信者だな
エラッタを全力否定している訳では無い
エラッタを含めて使用する事を肯定しているだけ
君はPICエラッタ信者w エラッタの指摘が「PICを使うな」に見えるのか
病気だな PICにエラッタがあるのは十分わかったので、
それ以上新しい情報がないならもう来なくていいです 君がわかるだけじゃダメ
初めて君がわからないと
テンプレに載せれば良いと思う
良い点も悪い点も エラッタエラッタと連呼する粘着質では女にモテませんよ
くだらない書き込みをする暇があったら
その性格を少しでも直して外に出れば、彼女もできるかもしれませんね NYTから
デジタルの世界へ進出するGE
”G.E. Makes a Sharp ‘Pivot’ on Digital”
https://www.nytimes.com/2018/04/19/business/ge-digital-ambitions.html
General Electric社より積極的にデジタル化の波をを受け入れた老舗の企業はないだろう。
G.Eのデジタル化の野望は、同族企業の内部にGE Digitalを設立した2015年に全面的に展示されました。
最高経営責任者のジェフリー・R・イメルト氏は、2020年までにG.E.が「トップ10のソフトウェア企業」になることを
大胆に宣言しました。
今日、そのような野心はありません。 GE Digitalの支出は、レイオフとG.E.の急激な縮小目標の下で縮小されている。
昨年8月に最高経営責任者に就任したジョン・フラナリー氏は11月、GEの経費を今年25%(約4億ドル)削減
すると発表した。彼はG.Eのデジタルイニシアティブは、同社にとっては「非常に重要」なので、もっと集中した戦略が
必要だと付け加えた。
G.E. は判断ミスにより、大きな発電事業の問題をかかえており、それが財務部門のGE Capitalにも負債に関する
不確実性が残している。さらに、 サウスウエスト航空の事故でフランスのサフランで作られたエンジンがどう関わったのか 、
調査結果に注目を集めている。
しかし、GE Digital社の再考は、あらためてデジタル技術を採用している現代の工業用ソフトウェアを製作することの
難しさを指摘している。
低コストのセンサーやデータの氾濫、コスト削減、燃料節約、より優れた製品設計のための洞察を提供すべき賢明な
ソフトウェアなど、いわゆる産業用インターネットの重要なビジョンについては誰も異論を唱えていない。しかし、同社は、
壮大なビジョンを達成するために必要なすべてのソフトウェアを作成するという課題を過小評価してしまった、と
元G.Eマネージャーは述べています。
G.E.の技術力は、発電所タービン、ジェットエンジン、医療用画像機器などの大型機械の設計と製造にあると述べて
います。伝統的なソフトウェアスキルは、機械や工場操作を制御する特殊なプログラムにあります。 GE Digitalは、
クラウドベースのインターネットソフトウェア、データ解析、機械学習などの人工知能ツールへの飛躍的な進出でした。
UBSのアナリスト、Steven Winoker は述べています。 「GEは専門外の世界にあまりにも速いスピードで
飛び込んでしまい、それは金銭的なブラックホールになった」と。
どれくらいのGE Digitalに投資しているかどうかは不明ですが、数十億ドルにもなるでしょう。 昨年のハーバード
ビジネスレビューの記事では、2016年に「分析ソフトウェアと機械学習能力の開発に約40億ドルを投入した」と
書いている。
中略
「今我々は、一生懸命努力をしてる。今にいい結果を出してみせる」とルー氏は語った。
Flannery氏は、G.E.のデジタル産業に対する支持を一貫して宣言していますが、GE Digitalの
未来を保証するものではありません。 Flannery氏は会社を合理化するために事業を売却している。
GE Digitalを売却するかもしれない。
一部のアナリストは、G.E.の独立系のデジタルユニットは必要ない。電力や航空のような産業部門のような
すべての顧客に近づけるようなソフトウェアを開発するよう推奨している。また、財務分析会社のメリウス・リサーチの
スコット・デイビス最高経営責任者は、「GE Digitalは存在すべきではない」と断言する。 良いじゃねえかエラッタ連呼はここしか活躍する場がないのだからおおめに見てやれよ。 PIC信者って哀れというか、ミジメというか、気持ち悪いというか、普通じゃ無いというか、
なんかもう表現する言葉が見つからないな。
これからもガンバって使い続けて下さい、期待していますw >>817
今では、8bitマイコンは只の部品に過ぎないのにな。 エラッタみたいな事ってすべての工業製品に共通の事だろ、
自動車や飛行機は人命に関わるからそれなりの扱いになってる
それだけ。 ふうふうで冷めればいいけど
>>682みたいな対処法しかないとなると UARTエラッタ人ってずっと粘着してるの?
メーカーに問い合わせしないで?
ここでエラッタ粘着?? UART送信をTXIFで割込みかけて送信するなんて
しょっちゅう使っているんだけど
そんな送信がダブったなんて経験した事がないんだよな
粘着君以外で他に経験した人がいるの?
いるならもっと騒がれていいはずなんだけど
海外でも見ないよね、、なんでだろうね 本国は英語版で十分なので、日本語版はおまけですって某社もあるけどな。
エラッタどころかリファレンス自体も更新しやがらねえよ。
それどころか英語版のこんなふうにできますよの使用方法すら日本語版にはデータがないので公開できませんって言われてて流石に同情した。 >>827
えっ酷いね!
どこの会社?
インテル?STマイクロ? >>826
まともに検証してないだけだと思う
>>827
日本語なんかいらんだろ
更新してなくてもどうでもいい つか他のデータシート全部英語なわけでマイコンだけ日本語にしてもらっても無意味。 >>826
1人の書き込みだと思ってるのか?
少なくとも>>682 >>798は別の人
ていうか、
逆にバグ有りUARTを使ってて気づかないっていう方が驚きだ
普通に割り込みで作れば2重送信の可能性があるコードになる
あとはタイミングだけ
簡単な負荷テストで発生する
PICユーザーは動作検証しない
って言ってるようなものだ ■ このスレッドは過去ログ倉庫に格納されています