初めてのPIC 0x12
■ このスレッドは過去ログ倉庫に格納されています
PICを触り始めて比較的日が浅いという初心者のためのスレです。
もちろん、日は経っているが自分はまだ初心者という方も大歓迎です。
PIC選びやPICを使った回路設計は誰でも最初は不安なものです。
恥ずかしがらずに何でも尋ねてみましょう。
なお、PIC関係のスレにはもう1つ「PIC専用のスレ」があります。
質問・回答する際は…
必ずPICの型番と開発環境を明記しましょう。
プログラムはレス内に直接書き込まず以下を利用しましょう。
http://codepad.org/
その際心がけることは…
品格に劣る回答者はスルー(相手すると逆効果)
素人玄人などと上から目線の回答者は無視
良い回答が出るまでしばらく再発言しないのもあり(良回答は後に出やすい)
回答者のアドバイスで後日解決したら結果報告
回答者は初心者に優しく
Atmel買収以降アンチによる荒らしも横行してるので見かけても無視
(特にスレ立て当初はこぞって荒らしに来るのでスルー)
必要なソフトなど(基本無料)
統合開発環境 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以降の型番で始めると無理なく始められます。
最初からPIC32で始めるのもあり。
MCCの利用でハードルはむしろ低いです。
http://akizukidenshi.com/catalog/g/gI-11902/
プログラムの書き込みには書き込み器が必要です。
持っていない場合はPICkit4などを購入しましょう。
なお、eBayやAliExpressで買えるPICkit3の中華クローンも十分な性能が報告されています。
PIC一覧、スペック検索
ttp://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1005
ttp://www.microchip.com/maps/microcontroller.aspx
過去スレ
0x11 2018/08/05〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1533446166/
0x10 2018/06/29〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1530265723/
0x0F 2018/05/01〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1525183933/
0x0E 2018/02/13〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1518524799/
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
では、質問どうぞ〜っ >>50
初期設定でInputだからいいんじゃない?
それでも俺なら明示的に宣言するけど。
それより、ループするでもなく、チャンスは起動時の一回切り?
スイッチ押しながら起動したときだけだよね、Bへ行くのは。 >>48
>AVRがMPLABX
すまん詳しく。デバッガとかはどうなるの? >>41,42,43,44,45,46,47
>>40です。ご心配かけました治りました!!
DVD再生もエクスプローラーの挙動もおかしいし、パソコン悪さしてんだろうと
mac(操作も分からんので置物)あるのでmacでmplabインストしようと思ってましたが、紹介されてますmicrochipのフォームを全部みると、これぞまさに同じ現象です!
レスで私の現象に一致する対策と思われそうな奴をピックアップ
@パッチをあてる
Aプロジェクトフォルダの名前を変える
Aを試しました。まず名前を変えてからmplabx v4.15起動→左のproject windowはno projectで何もないのを確認→終了して閉じる→エクスプローラーでMPLABXProjectsフォルダが作成し直されてるので削除。
→名前を変えたものをMPLABXProjectsに直す→v4.15起動→左のprojectwindowには何も無いのを確認→Open projectでプロジェクトを開いてみる→インジケーター止まらず開いた!!
新規作成もしてみる→waitingにならずにサクッと作成される!
この状態でアプリを終了→Closing projectのインジケーターでフリーズせずサクッと終了→もう一度起動して先ほどのプロジェクトが読めているのを確認
※設定ファイルやら消したりしてたので副作用?デバイスの固有のレジスタやらが分からず波線になってCtrl+クリックで飛べない。
→認識はしてるので一度ビルド通すと、波線消えて再起動後も現れない
v5.05でも試したら、5.05もちゃんとプロジェクト読めるようになりました。
※こちらは上記のレジスタを認識しない状態にはならなかったです。
ありがとうございました!
ちなみにWindows7 64bit Godmodeではありません。
管理者です。ショートカットには権限者で起動に設定してます。(してるしてないに関わらず不具合は発生) >>40です。将来の人用に置いておきます。
●起動時のフリーズ?及び終了時のフリーズ?
起動時の初期化動作のプロジェクトの読み込み途中で止まってしまう。(Opening Projects)
10%や13%など新行途中で止まっている
この状態だとプロジェクトが読めてないのでプロジェクトウインドウの各プロジェクトはInitialise...で中身が見れない。
当然ダッシュボードには何も無い
※一部のプロジェクトは観れるものがある場合有り
またFile-Open Project..で開く、サンプルから開く等をしても止まる。
新規作成してもwaitingで止まる(実際は作られてMPLABXProjectsフォルダに作成されている)
アプリを終了しようとすると、Closing native projectsのバーが出てきて、ずっと消えずタスクマネージャーで強制終了しないといけなくなる。
対策 for v4.15〜v5.05
@パッチあるならあてる
Auser-appdata-local-mplab_ide-Cacheの中身
user-appdata-roaming-mplab-ide-dev-versionの中身
これらを全て削除。
Bアプリが保存しているプロジェクトフォルダの名前を変えて→起動して中身空なのを確認して終了→フォルダの名前を元に戻す
※@〜Bという順番の意ではなく、対策@、Aの意。
Aで治った!@で治った!という人がいます。 MPLABXのキャッシュって起動毎に結構容量食ってるんだな
俺の環境でuserDirとcacheの二つで260MBも使ってる
しかも起動やビルド毎に書き込んでるわ
SSD運用だから、RAMdiskでやった方が
精神安定上良い気がしてきた
ちょっとメモリ買ってくる >>57
自己書き換え出来る品種は、昇圧回路内蔵してる。(書き換え速度に差は有ったかも)
高電圧かけるのは、書き換えモードに移行させる為 の意味が大きい。 >>58
すいません
PICじゃないけどAVRとかも高電圧をかけなくても焼き込み出来るって事は
内部に昇圧回路を内蔵してるから高電圧をかけなくても焼き込みできるって
ことなんでしょうか? >>59
高電圧の要らない不揮発性メモリーは、昇圧回路内蔵してる。 もうAVRはMicrochipの持ち物だから仲良くしようず 「昇圧回路の節約したから」で説明できるのかな。新しい(といってもかなり前からだけど) PICは低電圧書き換えモードもサポートしているわけだし。
低電圧プログラミングが許可されていない設定のときは、高電圧をかけないと外的要因では書き換えられることはないし
MCLRピンを入力ポートとしても使える。 (この場合は、MCLRピンを入力ポートとして使う外部回路にちょっと注意が必要だけど) MCLRの高電圧が低かったりすると、データ保持期間が短くなったりしますか?
許される範囲で高いほうがいいんでしょうか >>64
昇圧回路内蔵していない古いPICはなるかもしれない
昇圧回路内蔵してる新しいPICは前述のとおり単なる通常動作と書き込みモードとの切り替え信号に過ぎないからちゃんと書き込みモードに移行できるかそうでないかしかない Arduino IDEから書き込めるようにしないん? みなさん、PICには何を使って書き込んでいますか?
マイクロチップの純正品が5000円するのを見て二の足を踏んでいます Pickit3一択
昔は秋月よりマルツの方が安かった PIC縛りって言う訳でもなければSTM32なら500円以下だよ。 >>68
今はPICKIT3。
MPLABX 5 からMPLAB SNAP(2000円切り)が使えるはずなんだけど、SNAPは買ったものの 5に上げるのに二の足。 >>70
最新のマプラブXって5なのか
うちのマプラブはいまだに2.2とか使ってるわw PIC縛りを考えないなら、ブートローダ内蔵のマイコンから選択すると世話がない。 PICでもロット縛り考えなければ、発注時に書き込み依頼すればタダ
1万個くらいでもなんとかなるだろう >>68
中華PICkit3クローン、送料込み1200円程度。 中華製品ってどんな悪意を持った仕掛けを入れているかわからんけどな。 >>76
そう思うなら買わなきゃいい、お前の自由。 なんだ>>76は電子工作入門者・初心者の集うスレでも後ろ向き発言ばっかりしてる人じゃん。 マイコンの開発装置に何か仕込んだ所で何美味しい事あるんだよ。 書き込んだPICが勝手にネット接続してデータを送り続ける。スゴいテクノロジー。 ついぞ考えるのは CODE PROTECT で PIC に書き込んだ CODE をネット経由で盗む、だな。 それは、gpioしか使ってなくても何か盗めるのか? >>84
PicKIT 互換と銘打って ターゲットデバイスに書き込むときに CODE を盗んで隠し持っておき、トロイの木馬がこっそり吸い上げる仕掛けをイメージした。 やるならWIFIモジュールを積んだ基板の時の方がかくじつだな オラクルがJDK有償化するから
IDEとかどうなっちゃうんだろ? >>77
秋月のPICkit4の在庫でさえ600個程度なのにそんだけ売れてるなら良さそうだね。
ポチッたわ。 >>89
ランタイムまで有償化とか気が狂わない限り問題無い。 >>91
良く知らんけどJABAは11からランチタイムも有償化になるんじゃないんだっけ?
JABA10までが無料だと思ったけど違うの? >>91
一般向けのダウンロード無くすっぽいから実質JRE有料化だな
まあ、金払うのはJDK使う側なんだけど
んで、JDK使って作ったアプリはJREをくっつけて配布ってのが標準になるっぽい
まあ、openJDK使ってりゃいいんじゃねって感じではあるんだがな >>92
ランチタイムわろた
今一般に配ってるJREは8で、これが無料版ラスト
9, 10はあんまり使われないままサポート終了で、実質8の移行先は11ってのが現状
11はサポート有料のオラクルJDKとサポート無しで無料のopenJDKに分離
ってことなんで、IDE作る側がオラクルJDK使って料金をエンドユーザーから徴収するか、openJDKで今まで通りのどっちを選ぶかってことになるんだと認識してる
まあ、まだオラクルの気まぐれで変わることが無いとは言えない気もするがな もう自作するしかないな
赤の他人が作ったコンパイラも信用できないし、
ハンドアセンブルで頑張るしかないか
いやいや、そもそも基本となるハードウェア自身が信用できない
ロジックICでCPUを作るか?
だが、ロジックICが仕様書通りにできている保証はないよな
ディスクリートでやるか?
トランジスタは信用できるだろうか?
いっそリレーの方がいいのではなかろうか?
一部のリレーはスケルトン構造になって中にコイルと鉄片と接点しかないのが分かるから
そういうのを使って組んでみるか >>94
Javaはな。メモリリーク起こすのなんとかして欲しい。
こっちは使う側だけど、アプリ屋さんが凄く苦労してる。 >>95
もう手垢のつきすぎたネタで、何にも面白くない。
書くならデータセンター様のラックにでも実装してwidows 10走らせてからにして 初心者歓迎!!(老人会)
・データシート読んだ人に限る
・データシートに書かれている事以上の事は答えられません ______
/::::::::::,,:::::::::::::::::::::ヽ
/:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. PICは初心者向けではないことを見抜けないとPICを使うことは難しい
|:::::| /ヽ::::::::::::::::::::::|
|:::::|\ / ヽ::::::::::::::::::::|
ヽ:::|<(| こ(> \|ヽ:::::::::| ..
ヽ| h J:::::::::| .
\ L ヽ::::::/ .
\ー―┘ |:::/
__\__/ /V_____
/;;;;;;;;;/ く / ∧;;;;;;;;;;;;;;;;;; >>102
> レベルの低い初心者が増えただけ
レベルの低くない初心者とはどの程度の人のこというの?
これぜひ知りたい
この辺が問題の本質かも >>105
半田付けもせずarduinoとブレッドボードでLチカする初心者とか >>106
ちょっと書き方がわるかったか
「レベルの低くない」初心者とは、と書いたんだけどな
正しい初心者
望まれる初心者
こうあってほしい初心者
に訂正します クリスマス用のLチカを作成中
元ネタはhttp://www.geocities.jp/orange_denshi/led-part2.html#star
(そういえばYahooジオシティーズ来年で廃止になるらしい、こういう昔っぽいページもなくなっていくんだな)
秋月で円形のユニバーサル基板を買ったのでそれにLEDを並べてみたら20個でも行けそう(オリジナルはLED10個)
https://i.imgur.com/mGiQKY5.jpg
2.54mmピッチだとどうしてもきれいな星形にならない、1.27mmピッチだとそこそこきれいになりそう
量産するつもりはないが基板屋に注文してみたくなった
それよりプログラムを改造しなくちゃ点滅パターンもちょっと増やすかな >>105
他のマイコン触ってるけどPICは初心者とかかな?
食わず嫌いも割といるし。 >>109
手持ちにいっぱいあったから12F629
A/Dもコンパレータも使わないしI/Oだけ5本あればいいからもっと安い12F509とかでもいいんだけどね…
元ネタのHEXそのまま入れたらとりあえず10個だけ点滅したけど、20個用に改造したやつは点滅がめちゃくちゃだw
さてテストプログラムでも作ってのんびりやるか >>101
>PICは初心者向きではない
たしかに。
しかし、使い始めてまだ良く分かっていない人全員が PIC初心者だ。 MPLAB Harmonyは所謂
RTOSなんですかね?
Taskの箇所にプログラムを
記載するみたいですので LED10個のLチカがうまくいくのに+10個の20個Lチカがめちゃめちゃなのはなんでなのか?
しばらく悩んだけど基本的なミスがあることにやっと気づいた
MPASMはデフォルトの数値表示が10進も16進もあり得ると…
16進になってるのに気づかず10進のつもりで11から20個目でのLEDコントロールしてたから…10個まではうまくいくのに11個以上はメチャメチャ
こんなことにやっと気づいたおマヌケな経験でした >>116
エスパーすると電流の吸い込み吐き出しの絶対値の総和には上限がある。
守らないと暴走する。 >>118
エスパーするまでもなく、>>116は記述上の問題だった、と解決済みってことじゃないのですかね。
もうずいぶん長くMPASMを使ってないので、「デフォルトの数値表示が10進も16進もあり得る」というのが実感としてはわからないですが。 mpasmのDefault radixはMPLABXの場合はこんな感じで切り替えられる
https://i.imgur.com/g66LdpX.png
よくテーブルで
addwf PCL,F
retlw 8 ;Index0
retlw 14 ; 1
retlw 1 ; 2
retlw 2 ; 3
こんな風に書くけど
retlw 14 ; 1
が十進の14なのか十六進の14なのかはDefault radix次第です
明示的にD'XX'や0xXXなどの指定をすれば間違いないですが、大量にテーブルを書く時などD'XX'や0xXXを省略したいときにDefault radixを確認しておかないとハマります こんな人が住んでるんだから、こわくて質問できないわ
370 自分:774ワット発電中さん[sage] 投稿日:2018/08/14(火) 01:31:45.22 ID:wxHVQjQL [2/5]
>>369
初心者でも最低限データシートは読めよ
初心者を免罪符にして甘えんなボケ
549 名前:774ワット発電中さん[sage] 投稿日:2018/08/22(水) 03:53:44.84 ID:8jF5McIM
データシート見て理解出来ないならPICは使いこなせない
電気の素養の無い本当の初心者ならArduinoに逝け
635 名前:774ワット発電中さん[sage] 投稿日:2018/08/27(月) 03:41:46.21 ID:djjibUpr
コピペすら出来ないならPICなんてやめた方がいいよ。
ホントに、質問しっぱなし、事後報告無しのヤツばっかだねえ。
アンチが湧いてることと質問のマナーの悪さとは関係あるんかねえ。 >>121
怖がることはない、無視すればいいだけ。
そこらで吠えてる飼い犬と一緒。
むしろひもでつながれてるだけの飼い犬より安全かも。 そうそう。
きちんとデータシート読んで理解した上で
わからない所を質問すればいいだけだよ。 >>121
370は言葉はきついが内容は正しい。
549は初心者に対しては完全に間違ってる。
635は一般的な態度として正しい。
なので、あなたは質問しない方がいい。 >>124
>理解した上でわからない所
理解するのが前提ならわからない所なんて無いはずだろ、馬鹿か?
読んでみて、理解できない個所を明示して、それから質問するのが正しい。 >>123
今時、データシート程度の英語位読めないと、仕事でも困るだろ。 >>130
君、論理和と論理積の意味もわからないでしょ >>132
どういう論理を経ると>>130の書き込み(入力)からそういうツッコミが出てくるのか、
そのニューラルネットワークの構成と係数が気になる >>134
英語 || 日本語
英語 && 日本語
ちょっと君にはムリだったね >>128
初心者をそんなに扱うのやめようよ
だってひとつも質問・疑問がこないんだぜ
それなら、ここはなんの存在意義があるわけ?
なにを期待して書き込んでるの? ここは別に初心者質問スレではない。
というかこのスレとは別に「PIC初心者質問スレ」を建てたほうがいい気がするけどね >>138
> ここは別に初心者質問スレではない。
ということは、なんだったわけ? え、ここ初めてのPICでしょ?
別でPIC専用スレがあるし、玄人はそちらでしょ。
マイコン以前の電子工作初心者が来るなら電子工作初心者スレに誘導。 >121 データシートを読めという人がいるのが怖い。
>122 そんなのは気にしなくていい。(と変なたとえ)
>123 (変なたとえに対して)表現がおかしい
>124 きちんとデータシート見て理解してわからないとことを質問すればいい
>126 >124はうざい
>130 データシートの英語が読めないと仕事でも困るだろう
>132 論理和と論理積の違いがわからないだろう
>134 どうしてそういう展開になるのか
>136 英語 || 日本語 と 英語 && 日本語
俺としては単にデータシート(日本語、英語とは書いてない)を読もうぜ、という至極当たり前のことに
否定的になるのはおかしいと思う。
最初はデータシートやドキュメントが理解できないのは当たり前で、それを読みこなせるようになることが
電子デバイスやモジュールを使えることの前提だ。
初心者は、データシートやドキュメント(日本語、英語とは言ってない)の読み方を最初に学んでいくべき。
という話なのに、いきなり「英語が読めないと仕事でも困るだろう」と「英語」と「仕事」の話に
すっとんだのは違和感がある。
PICには英語のデータシートが多い。
使おうとしている型番の日本語データシートがない場合が殆どかもしれない。
でも他の品種に日本語データシートが存在するものはある。
数値の項目についてはそれらの日本語のデータシートをてがかりにして、辞書や翻訳ツールを使いつつ
読みこなしていくことはするべき。
それに、マイコンが趣味であって、仕事とは関係がない場合には、「英語が読めないと仕事でも困る」ような
人ばかりでもあるまいね。 質問すると上から目線で説教される
たいした回答が返って来ない
何故か自分の自慢話で盛り上がる
こんなんじゃ質問はしないだろ 自分の知らないことや間違ってることをタダで教えてもらうんだから
見下されるとか説教とかはしょうがないだろ
質問してやったから早く教えろ、という態度やら煽りやら釣り針がミエミエだから
いじめられるのよ ネットなんてなくて、周囲に聞く人もなく、英文マニュアルしかないのが当たり前で、洋書の資料を読み漁ったあの日…
楽しかったな。 >>147
昔はデバイスの進歩遅かったから、和訳データシートが出るまで待ってても良かったけどな。 ■ このスレッドは過去ログ倉庫に格納されています