X



トップページ電気・電子
1002コメント364KB
初めてのPIC 0x0e
レス数が1000を超えています。これ以上書き込みはできません。
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
0954774ワット発電中さん垢版2018/04/29(日) 10:24:20.56ID:7IUNaJ3j
>>951
俺は使ってます。
ってか、俺の周りの人も会社も、マイコンはいろいろ使うせいか、エミュレータも割と安めのものを使ってる人が多いな。

PICについてはICDを使ってる人がいない。
PICKIT3×PIC32だと遅くてたまらん、という話もあるけど、PIC32を使わんし。
でも、PIC32でもPICKIT4なら少しはマシなんだろかと期待。
0955774ワット発電中さん垢版2018/04/29(日) 10:49:16.75ID:7IUNaJ3j
>>950
個人的には急いで買う必要はないけれど、
・今から始める人は3か4かを迷うであろうな。4が出るまで待つか、みたいな。
・Directにあるのに流通しないのは、Directは独立採算の商社として、一定のチカラがあるのかなと思ったり。
・それとも何かの理由で出荷を抑えているのかなと、もやもやしてみたり。
・SAM対応を標ぼうするのはまずいのでは、と社内の保守派からブレーキがかかってるのかな、と邪推を楽しんだり、
・出すならAVR対応に、と社内と推進派からクレームが入ったのかな、と邪推を楽しんだり。
0956774ワット発電中さん垢版2018/04/29(日) 10:55:08.19ID:5+H+Fb0q
買収前に4の設計が終わっていた、じゃないのか
0959774ワット発電中さん垢版2018/04/29(日) 13:06:21.81ID:7IUNaJ3j
趣味の電子工作を始めたい、部品を買う必要はありますか?
まあ、買う必要があるでしょうね。いつももらって済ますわけにはいかないと思います。

罵倒する前にちょっと考えて欲しい。
0961774ワット発電中さん垢版2018/04/29(日) 14:04:25.70ID:7IUNaJ3j
趣味だからこそ採算に囚われることなく買いたいものを買う。必要だから買うのではなく、買いたいから買う。
という立場もあれば、
趣味だからこそ実費としての出費は抑えたい
という立場もある。

違う立場をイメージできないことを罵倒することはないよ。
0963774ワット発電中さん垢版2018/04/29(日) 19:42:04.64ID:7IUNaJ3j
ID:d2WYD48g は無視することにしました。
0964774ワット発電中さん垢版2018/04/29(日) 20:36:08.93ID:8b4oySly
GW突入前にPIC18F46K22のI2Cで悩んだ者です。
MSSP1のI2CにEEPROMにアトメルの128KByteのAT24CT1024Bをぶら下げました。
何故か256バイトのページライトが出来ません。
128バイトまでは成功します。
なので128バイト以下でライトする様に使ってます。
何故?
0965774ワット発電中さん垢版2018/04/29(日) 21:20:36.41ID:Srh+Wmzb
>>964
指定したアドレスがページを跨いでしまうと書き込めない
アドレス0000で256byte書けるか試してみるべし
0970774ワット発電中さん垢版2018/04/30(月) 07:25:11.17ID:zMe29Zzj
おはようございます。以前質問させていただいた>>746です

おかげさまでLEDチカ、USART+TeraTermを用いたPCとのシリアル通信は
上手く行きましたが、USB - HIDクラスを使った通信でお手上げ状態になってしまいました…

デモの内容を確認するために、Microchip社ライブラリの真新しいフレームワーク(HID_Mouse - low_pin_count_usb_development_kit_pic18f14k50.x)を
秋月18F2550マイコンボード用のコンフィグレーション、LED用LATA、TRISA、Button用PORTA、TRISAへ適合するように
設定し直して、Debug Project で運用してみましたがダメでした…

宜しければ、ご助言いただけないでしょうか

以下、内容
0971774ワット発電中さん垢版2018/04/30(月) 07:28:59.82ID:zMe29Zzj
[system.c] - Configration クロックに関する設定
#pragma config PLLDIV = 5 // PLL Prescaler Selection bits (Divide by 5 (20 MHz oscillator input))
#pragma config CPUDIV = OSC1_PLL2 // System Clock Postscaler Selection bits ([Primary Oscillator Src: /1][96 MHz PLL Src: /2])
#pragma config USBDIV = 2 // USB Clock Selection bit (used in Full-Speed USB mode only; UCFG:FSEN = 1) (USB clock source comes directly from the primary oscillator block with no postscale)
#pragma config FOSC = HSPLL_HS
電源に関する設定
#pragma config PWRT = ON
#pragma config VREGEN = ON

Debug Project - Step Into で1行ずつ実行した場合
usb.device.c 582行目
USBDeviceState = ATTACHED_STATE; 
を実行すると、UnknownDeviceになる
→USBDeviceState が POWERED_STATE までしか進まない

その状態で、Debug Project - Reset→Continueした場合
USBDeviceState == CONFIGURED_STATE まで進むが、
app_device_mouse.c 258行目あたり
currentButtonState = BUTTON_IsPressed(BUTTON_USB_DEVICE_HID_MOUSE);
で、S1の状態を取得するものの、S1を押した状態にしても、離した状態にしてもそこから先へ展開せず
Main.cのwhile(1)ループへ戻ってしまう

その状態でまたContinue→Pauseして1行ずつ実行してみると
今度はusb_deviece.c 647行目
if(USBSuspendControl == 1){
USBClearUSBInterrupt();
return;
}
へ入りreturnしてMain.cのwhile(1)ループへ戻ってしまう そして、以下、変化無し
0973774ワット発電中さん垢版2018/04/30(月) 07:33:05.04ID:7OBUBQx8
通信なんだから
途切れ途切れじゃ会話が通じない

デバッグはUARTとかポートで
0974774ワット発電中さん垢版2018/04/30(月) 07:37:20.53ID:zMe29Zzj
>>934さん
お返事をしないままでいてすみません
アドバイスと温かい励ましの言葉をありがとうございました

スレは覗いていたものの、少し見栄っ張りで、「USB - HIDクラスできました〜」と成果を上げてから
お礼の言葉と一緒に書き込みたかったのですが、このようなところで引っ掛かってそのまま時が経ってしまいました…
力及ばずですみません

>>972さん >>973さん
そうなんですか!
勉強になりました!!

速レスありがとうございます もう少し挑戦してみます
0975774ワット発電中さん垢版2018/04/30(月) 09:54:04.82ID:zMe29Zzj
申し訳ありません
しばらく色々やってみましたが、自力では解決できないようです

懲りずにDebug Project の Continue で USBDeviceState ==CONFIGURED_STATEを獲得した後、
Step Intoを使ってスイッチOn/Offを押し分けて、mouse.movementModeの値をtrueにしたのですけど、
やっぱりカーソルが自動的に動かないです

皆様のお力に頼っても自分には無理でしたら、PS/2通信の方に切り替えて改めてそちらに挑戦してみようと思います
0976774ワット発電中さん垢版2018/05/01(火) 00:44:57.54ID:DBW73+I+
だからstep実行してはダメなんだって
ある一定時間ごとにデバイス(=PIC)が応答することをホスト(=PC)が期待している
step実行するとデバイスが応答を返さなくなるので正常動作しない
一度でもbreakしたらcontinueはできないと思った方がいい

mlaのソースの中に、ある間隔でこの関数を呼べ、とかコメントが書いてない?

デバッガでデバッグではなく、>>973のようにポートなりUARTなりに
状態を出力させるコードを書いてデバッグする必要がある
0977774ワット発電中さん垢版2018/05/01(火) 09:56:26.18ID:o4U5k+Rn
976さん
お世話になっております 

せっかく前の方々に適切なアドバイスをいただいたのに
十分に理解できなくてすみませんでした
ご指摘を受けて私にも状況が少しずつわかってきました

>mlaのソースの中に、ある間隔でこの関数を呼べ、とかコメントが書いてない?
拙い英語読解力で読んだところ、
1.main.c _ USBDeviceTasks();
2.usb_event.c _ USER_USB_CALLBACK_EVENT_HANDLER
あたりが該当するように思われます
とりあえず、1番でUSBDeviceState == CONFIGURED_STATEになり、
2番によって、LEDが高速点滅するところまで到達しましたが、
その先、Mouseのカーソルが自動移動するまでに至らないようです

USB通信のデバッグについては、先にもアドバイス頂いたように
ポートやUARTに状態を出力させる必要があるのですね
大変よくわかりました
ただ、電子工作入門1週間ちょっとの私には手に余るレベルのような気がします…
もういっそのこと、秋月PIC18F14K50マイコンボードを買って、ライブラリそのままで焼いてみようかと検討中です…

大変丁寧かつわかりやすいご助言をありがとうございました!
ご厚意を活かせるように頑張ります
0978774ワット発電中さん垢版2018/05/01(火) 16:50:36.79ID:ONtX2Myl
繋いだPCのデバイスマネージャとかにはもう出てくるよね?その状態だと。
SnoopyPro(USBスニッファ)の出番かな。
0980774ワット発電中さん垢版2018/05/01(火) 21:40:04.19ID:DBW73+I+
デバッグモードにせずに接続した場合、LEDは高速点滅するか?
またMLAの18F14K50のソースを流用した場合、ボタンはRA3ポートに接続されていることを想定しているが、そうなっているか?
0981774ワット発電中さん垢版2018/05/01(火) 22:13:08.74ID:o4U5k+Rn
>>978さん
ご助言ありがとうございます

ご推察の通り、私の環境でもPC(Windows 7 Pro 64bit SP1)のデバイスマネージャには、
HIDってことで表示されてます

>SnoopyPro(USBスニッファ)の出番かな
英語のも少し読みましたけど、古くて危なっかしい感じのレビューが目立ちますね…
それにWin7 ProではXPモードで運用する必要があるみたいで、
私の今の環境だとCドライブ:SSDの容量が大幅に不足していて難しいようです

USB通信のデバッグがここまで難しいのかと改めて思い知りました

>>980さん 
お世話になっております
>デバッグモードにせずに接続した場合、LEDは高速点滅するか?
はい、点滅しています

>またMLAの18F14K50のソースを流用した場合、ボタンはRA3ポートに接続されていることを想定しているが、そうなっているか?
18F2550用に自分の回路の都合でRA0へ書き換えちゃいました
buttons.c _ #define S1_PORT PORTAbits.RA0

これ、いけなかったですかね?
デバッグモードでは、ボタンに反応してるようでしたので、大丈夫だと思ってました
0982774ワット発電中さん垢版2018/05/01(火) 22:39:19.15ID:ONtX2Myl
面倒がないUSB スニッファだとこんなのもある。
freeusbanalyzer.com
試用期間中は至れり尽くせりな感じだけど、
試用終わるとSnoopyProとどっこいどっこいの機能。
0983774ワット発電中さん垢版2018/05/01(火) 22:40:46.80ID:DBW73+I+
>>981
> 18F2550用に自分の回路の都合でRA0へ書き換えちゃいました
それなら大丈夫
あと一息の気がする、頑張れ
0984774ワット発電中さん垢版2018/05/01(火) 22:42:33.88ID:o4U5k+Rn
【追記】
始めに、system.c _ void SYSTEM_Initialize()関数で、
ADCON1レジスタを全てデジタルI/Oへ設定するように
0b00001111; を代入し、 (18F2550 データシートp.262参照)
buttons.c _ #define S1_PORT PORTAbits.RA0 を元の
#define S1_PORT PORTAbits.RA3 へ戻し、
同じく buttons.c 内 void BUTTON_Enable(BUTTON button)関数でも
TRISAbits.TRISA3 = PIN_INPUT; とTRISAもRA3用に設定し直してみましたが、
やはり状況は変わらず、LED高速点滅はするものの、mouseは自動移動しないみたいです…
0985774ワット発電中さん垢版2018/05/01(火) 22:57:27.90ID:o4U5k+Rn
>>982さん
良さそうなソフトのご紹介をありがとうございます!
ただ、試用版の使用条件がめちゃ厳しいですねw
1度に10分間、4日間だけ体験可能の制限付きの中、初心者が使いこなすのは難しいそうですね

>>983さん
前のレスが行き違いになってしまいましたが、
それなら良かったですー
0986774ワット発電中さん垢版2018/05/01(火) 23:06:39.24ID:o4U5k+Rn
そろそろスレもおしまいですし、
お世話になってるので、次スレを立ててみようと思います
テンプレに特に変更の必要は無さそうですよね
スレタイと過去スレ一覧を書き換えるだけですが、やってみます
0989774ワット発電中さん垢版2018/05/03(木) 02:51:14.51ID:3zq/2ceR
>>987
>建てられました〜
他の人に、先にに立てられてしまった のか
慣れない自分にも 立てることができた のか 
0992774ワット発電中さん垢版2018/05/03(木) 09:54:32.12ID:n/fZNcO5
>>990
いや、話す人の思いやりが足らないだけ。
複数の意味に受け取られる表現になっていないかを、書き込む前に確認するべき。
0993774ワット発電中さん垢版2018/05/03(木) 10:02:52.35ID:zEtko/35
スレの終わりが差し迫っているのに次スレが立たない。

制限がかかって立てられない人がいる
立てる気もないけど、立っていれば来る人もいる

立てるのにひと手間がかかることは事実。

とりあえず、ここは立てた事実に敬意を払えばいい。
善意を装って、アンチなタイトルでスレ立てする屑もいるけれど、>>987はそうではない。
0994垢版2018/05/03(木) 12:20:07.39ID:M7Jzd9I1
残業時間を少なくするくらい空気や行間を読まないとなw
0997774ワット発電中さん垢版2018/05/04(金) 12:41:27.84ID:+d65Nnar
埋め

また質問させて貰いました
USB通信の道のりが険し過ぎる……
0998774ワット発電中さん垢版2018/05/04(金) 22:52:19.32ID:LkIbuCuM
232Cならチップだけど、USBはボードだなぁ・・・
はい、逃げてますw
埋め
1000774ワット発電中さん垢版2018/05/04(金) 23:00:30.82ID:O1HEuDOL
)((()(()()))())(()()()))(()())(((()())(()))()))))())(()(()(()(())((()(())()(
)()()))))))))((()())(((()(((()((()))((())(())(((()())))))))()(())(())(()((((
)()(()))()())())))())()()((()()())(())())(()((()(((()))(()(())(()))))()(((((
(())(()())()((((()()))()()()(())()())()(()))())))())((()(((()((()((())()))))
()))))())))())((()))((())))()())()(())()))())(()((((()()(((()(())(()()()((((
)()()((((())()()((()((()()())()))(()))((())))())))()()(())())())()(()((((())
))))((())()(((()(())()(()((())())()(()(()))()()()()())))()(((()())()()((()))
)())(()(()))(((()())()))())))))))(((((()((()()()))((((()()()()()()))()()(()(
(()((()())(((((()))((()()))))())(())))())))())(()(())(()())()()))(()))((((((
()()((())(())((((()(()()))))()())(((((((()()())))())()()()()))(()))())()()()
))())(()(())))))()(()(())(((((()))(()))((())()((()())((()))((())()())())(()(
()))())))())))))(()(()()())(()()())()))(()))(((()(()(())))((())(()()((((((((
)())()(((()(((())()))))()()(()(()()()(()())())))())()()(())()()()())(()((()(
))(((((((()((()()()())((())(()())())(()())(()(())()((())(())()()()()))))))))
())()))(()((((()())(()((())))(()(((())()()()()(())))))))))))((()()(()())((((
)))()(()((()))((()((()((()(()))()()))(((()))(())())())(()())))((()())())()((
))(()()(((())(()(((()())()))))((()()())))(())(()))(())(()))()()((()(())(())(
))(()(())))))()()()(()())((((((()(())((())())))()()()()((())()((())())(()())
())(())))(((()))()))()())(((()(())((()()(()())()))(()(()((((())()())()()()))
()))((())()))))))))))(()(((()(()(()))(()(()))(((((()()(((())))()(())))(((()(
)(()))()))()())())(()))((()()()(())((())())))((((())()())()(((((())(())))(((
(())())()()()()())(((())))(()()((((((((()))()((())()))))()()(()())))(()))()(
))))(()()((())()))))(()))(())(())()))(()(()()()()()()()())((((())((())((()((
((())()((()()()())(()((())))(())(()()()))()))()()(()((()((()((())())))))()()
()(())())(()(()(((((()((((())))(())())(())()))))))(())())(()(((()())(()())))
)))))((()())((((((())(())(((((()()))())((()())()())()))))))(())))((()))(((((
)(((()()))(()()(()))))()()))()()()(()(((((())((((()))()()))())))))(()(())(((
(()()((()()(()(())))())()((()())(((())((((((()))))))(())))((((()()))))))()()
)(()())(())()))())))())(()))(((())))((())))))((())())((((()((()((())((()()((
)))((())((()((())()))())(((((((())())((()))(())()(()))())())())()())()(())((
))(()(()((()))(((())((()())()(()()())(()))))))())()((((()())(())(((())()()))
)))())((((((()))))()(()(())((()())())))(()(()((()))()())()(())(((()()((())))
)())))(((((()((()))())()(())((()()))((()())())(())()(()((()()()))()()()(()))
))((()))))(())(((((()(()((()()()))))((((()(()()))(()))(((((())()))))))(()())
))())())(((()((((()()))((((())(()()())))(()()(()()))))()))(()((()()()))(()()
)))))(()(()((())))(())(()))()))(()(()()(((()(())(()((()))()(()))()()()((())(
(()((()()(())()))(()(((()()()))(())))()))()))))())(()()(())())(())((((()(()(
()))))))(()))()))(())(()((()()())())))(())(()()(()())(((())()()()())((((((((
)))(())((()(((()(())(()()()())()))))))((())))(())(((()()()()())(())())((()((
(()((()()(())(()()((())())((((())(())))()(()()()((())))())))()()(())))()()()
)))())((((()))(()))()()((()(((()()()(())(())(()())()()))))()((()(()()())(())
)((((())(()(()())))((()(((())))())((()()))())))))())()(((()((())()())(()(())
()((())))()())()(()((())(())(((()))(()(()(()((((()())))))(((((())))))(()))))
()(())(((()(()()))))))()(()((((())(()((((()())))(()))))()()(()()()))(()()())
))()()(()(()((()))))))())(((((()))()))))()))()(()()()(())((())))(()(((((()((
)()())()))))((((((((())()(()(((()()))(()()(())(()))((((())())))()()()))(()))
(()(()))()))(())())()))()((()()(())(((()))))())(((()((()(((((()())()()))()))
(())()())()()))(()))(())))())))())(()(()()()(((()(((()))))((()()))((())(((((
)))((()))(()((()())()((()))))(())))))))((()()(())(((()())()))((((())(((()()(
)(()())(((((())))(()()))))(()(()())(()))))(()(((())))(()()()))(())((())(()((
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 80日 1時間 33分 52秒
10021002垢版Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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