X



トップページ電気・電子
1002コメント364KB
初めてのPIC 0x0e
■ このスレッドは過去ログ倉庫に格納されています
0001774ワット発電中さん垢版2018/02/13(火) 21:26:39.79ID:06sF7iiY
.
  _       _    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
0070774ワット発電中さん垢版2018/02/18(日) 16:43:20.10ID:PH7trzwK
>>69
MCCやHarmonyはあなたがダメ出ししたコードを吐く。
全く答えになってないね。
まあ、回答できないんだろうけど。
0071774ワット発電中さん垢版2018/02/18(日) 17:00:26.52ID:MZkAGnSR
>>70
MCCやHarmonyが >>58 のようなコードを吐いてるMCUは大丈夫
決して >>58 のようなコードを吐かないMCUがある
それだと>>58のコードはNG
0073774ワット発電中さん垢版2018/02/18(日) 17:08:57.91ID:i4Jzt5MU
あと
>それだと>>58のコードはNG
の理由もね。
そっちが元の質問なんで、いいかげん話をそらさず、よろしく。
0076774ワット発電中さん垢版2018/02/18(日) 17:27:43.59ID:mhwGHXO2
初心者さんには気の毒だけど
幾度かつついても具体的な回答を出せない>>ID:MZkAGnSRのようなヤツは無視
知識のあるヤツだけが回答してるわけではないから時間の無駄
0078774ワット発電中さん垢版2018/02/19(月) 02:57:01.91ID:wFRp/YEr
質問者です。
みなさん、貴重なご意見ありがとうございました。

やはり、全部のフラグについて、データシートにも
はっきりと書かれていないみたいですね。

また、みなさん先輩の中でも十分な理解でなく使って
いらっしゃる方も、いるようです。
そういう特性のことかもしれませんね。

みなさんのご意見を参考に、
フラグは、ReadOnlyも含めて、全部自分で上げ下げする
という自分なりの決まりを持つことにしました。

みなさん、どうもありがとうございました。

>>58の発言は、気になるところですが、>>77のような執拗な言動も
どうかと思いました。

ありがとうございました。
0080774ワット発電中さん垢版2018/02/19(月) 03:26:48.79ID:H6YmXlV3
データシートに全部書いてある
なんて時代は終わったのだよ

例えば非常にシンプルなUART
8bit, 16bit, 32bitで割り込みの仕様はまったく異なるのだが
データシートに1行書いてあるだけ
ここに十分な仕様が記述されているわけがない

条件が整っている時にセットされ続けるのか
条件が整った瞬間に1回セットされるのか

FIFO付きでもFIFO4, FIFO8 でその辺が異なる
0081774ワット発電中さん垢版2018/02/19(月) 03:28:26.32ID:H6YmXlV3
USBのデータシートを見たことがある?
レジスタが書いてあるだけ
あんなんで設計なんて出来ない
0082774ワット発電中さん垢版2018/02/19(月) 03:31:53.92ID:H6YmXlV3
8bitのUARTはエラッタシートに載ってないエラッタがあるから注意
タイミングによって送信がダブる
0083774ワット発電中さん垢版2018/02/19(月) 03:34:44.85ID:H6YmXlV3
>>77
Harmonyって書いてるんだからわかるだろうに
コードを検索すればたくさんヒットするよ

なぜ>>58がマズいか?
それは自分で考えなさい
0084774ワット発電中さん垢版2018/02/19(月) 03:42:47.43ID:H6YmXlV3
いやでも、PIC32のCLR, SET, INVは非常に便利だよな
他のマイコンも真似してほしいくらい

他のマイコンだと
クリアのみ可能
とかにすることで問題が発生しないようにしてたりするね

まあそういうことを一生気にしない人もいる
ごく稀に問題が発生してもノイズのせいにしたり
趣味の電子工作ならそれでも良いのかもしれない
0086774ワット発電中さん垢版2018/02/19(月) 06:17:41.54ID:DndN49x6
ID:H6YmXlV3の見ているデータシート(とID:H6YmXlV3が呼んでいる何か)と
私が見ているデータシートは別物だということが分かった。
したがってID:H6YmXlV3 から何かを得るのは不可能。
どうもお疲れでした>>ID:H6YmXlV3
0087774ワット発電中さん垢版2018/02/19(月) 06:31:00.34ID:bcmvJ8GZ
>>83
>なぜ>>58がマズいか?
>それは自分で考えなさい

説明出来ないなら出てこなければいいのに。
0088774ワット発電中さん垢版2018/02/19(月) 15:06:22.85ID:wFRp/YEr
>>87
苦労して会得したんだから、
簡単には教えたくないんだと思いますよ。
知っていても教えない
知らないから教えられない
黙っていれば、どっちかわからないから、
都合よく振舞っているんだと思うよ。
0089774ワット発電中さん垢版2018/02/19(月) 15:46:41.30ID:tY/Ur2KG
バカ「その問題間違っていまーす」
生徒「え?何処?何処?俺解いちゃったよ」
先生「何処が間近っているのかな?」
バカ「それは自分で考えなさい(キリッ」

どう考えてもコミュニケーションがとれないキチガイだろw
0090774ワット発電中さん垢版2018/02/19(月) 15:57:52.26ID:ZIehodQh
教える気も無いのに初心者スレでホラを吹く。
これ、品性の問題だからどうしようもないね。
0092774ワット発電中さん垢版2018/02/19(月) 16:33:39.40ID:ZIehodQh
ん?
場所と品性は関係ない。
どこだからどう振舞うかとかぶれること自体が品性の無さの表れ。
0096774ワット発電中さん垢版2018/02/19(月) 18:40:51.93ID:IHIY6N6t
最近のゆとりは、ただ反駁したいだけで中身が無い。
なので、「だって〜」「だから〜」と幼児並み。
0097774ワット発電中さん垢版2018/02/19(月) 18:41:51.09ID:IHIY6N6t
あ、そうそう、返す言葉は必ず「判らないですか〜」と決まってる。
0099774ワット発電中さん垢版2018/02/19(月) 20:59:12.38ID:NHBNS5dY
あぁ、そうだった。
少し前に馬鹿と阿呆の罵り合いに飽きてこのスレ見限っていたのに。
ちょっと怖いもの見たさで除いたら、結構有用な情報があったものでズルズルと見続けてしまっていた。
データ削除します。
0102774ワット発電中さん垢版2018/02/19(月) 22:18:57.56ID:SdcYFQFk
>>66
直結で期待通りだけどRssば1K位でセンサーの出力インピーダンスは1K位で分圧されないのはキャパシタがチャージするからでしょうか?
0103774ワット発電中さん垢版2018/02/19(月) 22:35:51.75ID:HHl9kwzK
>>102
追加する抵抗R1は信号源抵抗Rsに直列に入るだけですので、分圧というのは違うように思います。
センサーの直列抵抗が大きくなっていても大丈夫なのは、サンプリングのスイッチが短い時間だけ
ONしたときに、CHに一気にチャージするときに流れる電流をC1から供給できるからですし。

>>44で書かれていた「分圧」は右下の赤の回路ですよね?
0104774ワット発電中さん垢版2018/02/20(火) 04:33:46.67ID:/M/GSoNH
>>103
>サンプリングのスイッチが短い時間だけONしたときに

ちょっと認識が違う気がする。
サンプリングのスイッチは常にオンになっていてGO/DONEビットを
セットするとオフになってからA/D変換が開始される。
前回A/D変換したときにチャンネルセレクトを切り替えておけば
ずっとチャージしたままになる。
0105774ワット発電中さん垢版2018/02/20(火) 04:42:32.21ID:2hNtigHx
>>103
レスありがとうございます。
直結前の回路は赤色の通りです。
勉強になりました。
0106774ワット発電中さん垢版2018/02/20(火) 07:15:06.07ID:4WDdPvvS
>>104
あーっ。ご指摘の通りです。別のA/Dと混ざっていました。
PICのA/Dの場合は、サンプルスイッチはチャンネルセレクトを切り替えてから
変換開始までどれぐらい待つかを決定するために信号源抵抗(とコンデンサ)を考慮するのでしたね…。

チャンネルを切り替えてから変換開始までに時間的余裕がある場合で、変化も遅い信号をサンプルするときに
信号源抵抗を考慮する理由は端子のリーク電流でした。

>>105
…ということでして、おはずかしい。
チャンネルを切り替える必要がなく、変化の小さい信号源なら外付けコンデンサにあまり意味ありません。
0108774ワット発電中さん垢版2018/02/20(火) 14:26:52.71ID:sxwSGI4s
教えたがりでも知りたがりでも無いと思いますし、
少なくとも「>>107 アホの意味の無いイヤがらせ悪」よりはずっとマシだと思いまぁす。
0109774ワット発電中さん垢版2018/02/20(火) 20:20:04.03ID:7c0+pCZt
馬鹿なほど知ったかして、得意げに教えたつもりになってるから卯財
0112774ワット発電中さん垢版2018/02/20(火) 23:43:08.01ID:/ZUUQyDj
ほお
0117774ワット発電中さん垢版2018/03/04(日) 02:53:04.42ID:rKuVWl1b
>>109
> 馬鹿なほど知ったかして、得意げに教えたつもりになってるから卯財


教えようとしてるだけエライじゃん
イヤなのは、なんにも教えず説教をたれたいだけのジジイ
0118774ワット発電中さん垢版2018/03/04(日) 05:04:41.45ID:ccecnhQm
>>109
お前はバカだ、知ったかだ。と言うなら
どこが間違っていて、正しくはこうだ。
と書かないと、
あなた自身が、馬鹿な知ったか、に見えるよ?
0119774ワット発電中さん垢版2018/03/04(日) 12:44:53.67ID:VAihGLUA
初心者です。教えてください。

2つあります。

MPLAB Xをダウンロードしてインストールして、ふー炉じぇくとを作って、コンパイル(ビルド?)をしました。
画面の下部にあるエラーとかワーニングが出る窓の文字が小さくて、とても使いにくいです。
この文字を大きくするのは、どこをさわればいいでしょうか?
Toolsのoptionsの中にfont設定があるようですが、
outputペインのfont設定までは見つけられませんでした。

今まではMPLAB IDE8.92を使っていたのですが、それに比べるとコンパイルに時間がかかります。
もっさりした感じです。これで正解なのでしょうか?

どうぞよろしくお願いします。
0120774ワット発電中さん垢版2018/03/04(日) 12:59:16.83ID:wcyHmwr3
>>119
マウスのホイール押しながらホイール回す。

デフォルトだと、一度に8つ?のファイルを同時にコンパイルしようとするから、非力なマシンだと、かえって遅くなる。
0121774ワット発電中さん垢版2018/03/04(日) 13:09:18.31ID:HTfd+MOU
シングルコアCPUマシンならMPLAB 8.92の一択
最近は安くて早いPC充実してるからMPLAB X使うなら買い替え
0122774ワット発電中さん垢版2018/03/04(日) 13:58:19.51ID:hs6s6gNO
そりゃPCがボロ過ぎる
サクサク条件は64bit4コア8ギガかな
今時中古ノートでも2万もあればそろえられる

ケチって買わないならコンパイルのんびり待ちましょう
待つのは無料だからね
0123774ワット発電中さん垢版2018/03/04(日) 14:14:25.15ID:rBIbtYiw
JAVAで開発された物って
開発は楽チンなんだろうけど
メモリバカ食いだよな

オイラもXの遅さに耐えられなくなって
去年PC新調した口
ついでにSSD化も
デュアルディスプレイ化もして超快適
0124774ワット発電中さん垢版2018/03/04(日) 14:19:24.14ID:ZfY1muoi
>>120さん
どうもありがとうございました。できました。
この設定は、どこかのプロパティを開いて調整できるものではないのでしょうか?
よろしかったら、教えてください。

>>121,122
みなさん、ありがとうございました。
僕のノートPCは、17インチ1920*1200で広いんですが、
コア2ディュオというCPUですので遅いです。もっさり感たっぷりです。

あと、もう一つ教えてくださいませんか。
文字を大きくしたoutput paineですが、エラーの表示はどこを見れば良いのでしょうか。
どうせ僕のプログラムミスなので、
○○行目にsyntax error ; が必要 とか出れば良いのですが、
いろいろと表示されすぎて、わからないです。
0125774ワット発電中さん垢版2018/03/04(日) 15:12:48.37ID:aOv8xU2P
まず 英語 And c言語の勉強かな
0126774ワット発電中さん垢版2018/03/04(日) 15:22:38.94ID:2IPbFxZi
英語のNotice Caution、コンパイル時のエラーメッセージなんかは、
同じ単語が結構出てくるので、一冊ノートを作ってわからない単語を書き出してその意味を書いておくといいよ
ノートの単語が増えてこなくなったら、アルファベット順に再編するとかなんかしておく
その頃にはだいたい意味がわかるようになってる。

PCにText文章で作ってもいいけど、書いたほうが覚える感じがする(個人的に
0127774ワット発電中さん垢版2018/03/04(日) 16:24:29.92ID:ZfY1muoi
みなさん、ありがとうございます。
ご親切にありがとうございました。
なんとか、プログラムが動き出しました。
outputペインの文字サイズは、outputペイン上で右クリックして、settingに行くとありました。

error表示は、英語を頑張って読むことにします。
ただ、makeとか知らない言葉が出てくるので、メモしておくことにします。
Syntax Error in 123 とか、色を変えて出てくれるとありがたいですね。

あと、ビルド成功の文字を、若草色から変えたいのですが、わかりません。
上記の右クリック...の画面で、Build Successの色を青にしたのに、
若草色のままです。

PCは遅いので、関数50行、main 20行くらいでも、1分くらいかかります。
なんだかなって感じです。
0129774ワット発電中さん垢版2018/03/04(日) 16:32:24.18ID:hs6s6gNO
お金も無くて頭も無い半人前だけど
文句だけは一人前

なんだかなって感じです
0130774ワット発電中さん垢版2018/03/04(日) 19:59:41.22ID:ZfY1muoi
>>129
誰のことですか?
0133774ワット発電中さん垢版2018/03/05(月) 03:00:53.46ID:oMx5/vfy
コンパイラの途中経過には興味はない。
Cで書いて、コンパイルして .hex が出来て、picに書き込んで動けばオーケーです。
途中のmakeでこけるとかはMPLABの都合なので、僕らには関係ないです。
makeとかリンカーとかを知らなければマイコンが動かせない訳ではないでしょう。
0134774ワット発電中さん垢版2018/03/05(月) 06:52:59.27ID:XBhytWfJ
立派な考えなので全部のコードをハンドアセンブルして手打ちでhexファイルまで作って下さい。
ライブラリなんて安直な考えはダメですよ
0136774ワット発電中さん垢版2018/03/05(月) 12:59:42.15ID:u983ED6L
やりたいのはPICを動かすことだしね。
0137774ワット発電中さん垢版2018/03/05(月) 13:31:23.73ID:dgOXuntO
動かしたいだけなら全部、他人に作ってもらえばいいんじゃないの
仕事ならお金払って、趣味なら駄々こねれば。
0139774ワット発電中さん垢版2018/03/05(月) 21:57:40.66ID:qodsWXuS
C言語で組んで何が悪いのかね〜〜〜
出力されたアセンブラコード見て適正なコードが
出力されるようにCソース変更することでも結構
いい結果得られるし、だめなら直接アセンブラコードで
書けばいい。
ぐだぐだ言うやつはFreeエディション使ってるんだろ〜〜
Proモードでコンパイルすれば何の問題もない
0140774ワット発電中さん垢版2018/03/05(月) 22:22:32.04ID:u983ED6L
ていうか、メイクとかリンカーとか、知らないとpic使えないのか?
Cでソース書いて、コンパイルして、目的のことが出来たなら、それで充分。
0142774ワット発電中さん垢版2018/03/05(月) 23:57:39.45ID:bHHFUy5a
今確認したら MPLABX4.15 の javaw.exe で1.4GBも喰ってる
いつの間にこんな馬鹿喰いデブになってまったんだ、、、

あれ?なんか近くにそんな人居る、、、

4GB頭打ちの32bitOSだと修行僧とか忍耐力ある人じゃないと
運用無理じゃないの?
0147774ワット発電中さん垢版2018/03/06(火) 11:10:53.33ID:ulzeaAAM
PCを更新したのでPIC環境も最新にと思い、X IDEの3.61から4.15を入れて、XC8は1.45Bを入れた。
しかし、X IDEのツールチェーンに登録されない???
入れたドライブとパスは、D:&#165;Microchipです。
0148774ワット発電中さん垢版2018/03/06(火) 12:27:42.51ID:8YmzIyeu
おれIDE使ってないから、適当なこと言うけど、
javawコマンドは最大メモリ量とか初期メモリ量をオプション指定できるよ。
下記のページ見て-Xmsとか-Xmxとか起動する場所に指定してみたら?

https://docs.oracle.com/javase/jp/1.3/tooldocs/win32/java.html
例えば、-Xmx1G とかやればいいと思うけど、自己責任でどうぞ
0149774ワット発電中さん垢版2018/03/06(火) 12:28:39.94ID:8YmzIyeu
あ、Gは小文字だった。
-Xmx1g
0150774ワット発電中さん垢版2018/03/06(火) 12:45:35.95ID:6XObS/eY
>>142
Harmonyを立ち上げるとそのくらい使うねえ
まあでもメモリたくさんあるから気にしたことない
それより、MPLABXを複数起動出来るようにして欲しい
他の多くのIDEは出来るのにMPLABXは出来ない
0151774ワット発電中さん垢版2018/03/06(火) 13:01:24.05ID:RWmgan4v
mplab_ide.confに書けるらしいぞ
MPLAB メモリ削減でググって2番目くらいに表示される記事参照
0153774ワット発電中さん垢版2018/03/06(火) 13:33:08.79ID:/XiWlVVW
なんでこんなに重いんだ。
0154774ワット発電中さん垢版2018/03/06(火) 13:43:35.62ID:6XObS/eY
パフォーマンスや使用リソース量よりも開発効率や移植性を優先したから
つまりMicrochipが悪い
0156774ワット発電中さん垢版2018/03/06(火) 15:38:51.16ID:rdaQ5C2I
>>142
32bitの4GBの限界もそうだが、
32bit Windowsでは通常、32bitアプリは1プロセスで2GB(実際は1.5から1.6GBくらい)までしか使えない
64bit Windowsでは32bitアプリでも
実行ファイルにLargeAddressAwareのフラグが立ってれば4GB(実際は3.5GB程度)まで使える
0157774ワット発電中さん垢版2018/03/06(火) 16:06:59.85ID:OvFzO8UW
>>156
32bitだから4Gしか使えないなんてのは、Windowsの64bit売るための言い訳仕様に過ぎない
Windowsはメモリ利用効率が何気に悪い
linuxもBSDもハードウェア限界まできちんと使えるし、MPLABもWindowsより多少はマシ。
java環境がマシなだけかもしれないが。
0159774ワット発電中さん垢版2018/03/06(火) 16:27:01.18ID:rdaQ5C2I
今時、32bit Windowsを使うメリットなど無いし今はもう64bit Windowsが主流
NVIDIAなんて32bit Windows用の新しいドライバは作らないと発表してる
LinuxだってUbuntuで18.04から32bitのUbuntu Desktopはサポートされなくなる
スマホもPCも64bitが当たり前の時代だよ
0161774ワット発電中さん垢版2018/03/06(火) 16:38:21.22ID:3Di1dev6
あのーここはPICのスレなんですが

PICも32bitだとMIPSで様相が全然違うけど、
8bitのやつとなにか共通点ってあるの?
名前だけ?
0162774ワット発電中さん垢版2018/03/06(火) 17:06:57.31ID:6XObS/eY
16bitと32bitではペリフェラルの共通点はけっこうあるが、
8bitと32bitはそういうのもあまりない

もっとも、
8bitと32bitで同じペリフェラルだったとしたら、
8bitがよほどリッチか32bitがショボいか、
バランスが悪すぎると思う

開発環境は共通点が多い
0163774ワット発電中さん垢版2018/03/06(火) 17:32:52.77ID:skKFvcxQ
レジスタの名前とかは同じ名前をつけようとした痕跡があるな(よりリッチになってても)
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況