PIC専用のスレ Part35at DENKI
PIC専用のスレ Part35 - 暇つぶし2ch800:774ワット発電中さん
12/02/10 23:01:13.04 Bv1D1pZb
>798
共用はダメというのは動作しないということ?

801:774ワット発電中さん
12/02/10 23:08:41.04 +8gRngGf
>>800
同時動作すると思う理由を述べよ

802:774ワット発電中さん
12/02/10 23:52:37.16 sPjDsS6f
>>797
サンクス!

803:774ワット発電中さん
12/02/11 00:41:09.41 gUDYMcXt
>>801
やっぱりダメか
ピン数の多いpicに変更するよ

804:774ワット発電中さん
12/02/11 00:47:26.65 HHW4MseV
>>803
共用できる可能性があると思ったのはどうして?

805:774ワット発電中さん
12/02/11 01:57:40.35 cOANEdDP
内部発信でダメなの?

806:774ワット発電中さん
12/02/11 01:59:08.96 d6/EvRY6
>>804
許してやれよ。
どう考えても共用なんて不可能なんだから

807:774ワット発電中さん
12/02/11 03:11:53.15 HHW4MseV
>>806
責めるつもりはない
「(初心者?)がどんな思考過程を辿るものなのか」に純粋に興味がある

808:774ワット発電中さん
12/02/11 09:36:49.82 kTYFATUK
マイコンにクロックを外付けするときに、ピンを2本占有される意味が分かりません。
クロックって、一定間隔でピッピッと電圧がかかってくるもんじゃないの?
だったらピン1本でいいのでは?
あと、セラロックとかクリスタルを使わずに、タイマーICの出力がそのままマイコンに入るようにしたら、
超低速動作させたりできませんかね?

809:774ワット発電中さん
12/02/11 09:39:18.67 2dYJpY9u
>>808
データシートのクロックの項を参照。色々なアプローチの仕方があるよ。
やりたい事のヒントも書いてある。まずはデータシートを三回ほど読んでみようか。

810:774ワット発電中さん
12/02/11 09:54:53.47 LzNaXxKX
データシート
データシート
データシート

3回読んだ

811:774ワット発電中さん
12/02/11 09:56:33.49 fxsOxVVW
外部CLK前提なら1本でもいいが、スタンドアロンでマイクロパワーなら
水晶抱いた方がいいに決まってんだろ

812:774ワット発電中さん
12/02/11 09:56:34.50 ggUGbFZu
産業?いた

813:774ワット発電中さん
12/02/11 10:06:02.15 kTYFATUK
「データシート読め」って、他のスレで言われるならまだ分かるけど、
マイクロチップの100ページも200ページもあるようなデータシートなんて、とても読んでられません。
表紙だけで1ページ、美辞麗句ばかり並べて中身の無いFeaturesやOverviewのコーナーだけで5ページとか
ユーザーを馬鹿にしてるとしか。
3行でまとめろ、とは言わないけど、USB内蔵とかでなければせめて30ページくらいにまとめてほしい。
だったら読む気になる。

814:774ワット発電中さん
12/02/11 10:17:18.69 hjZdQbDt
>>813
まだPICは良心的な方だよ。MIPSとか電話帳級だよ

815:774ワット発電中さん
12/02/11 10:20:49.69 nHH7rzEI
>>813
全部読まなくても必要なところだけよめばいいんだよ
何のためのナビゲーション付きPDFだと思ってる

816:774ワット発電中さん
12/02/11 10:23:08.82 ysT0Kndw
まず使う型番でぐぐって、
「最初に~しておかないとダメ」みたいな情報を探す
PICの場合は初期ピン状態がADC向けになってたりするので
その後は必要なとこだけ読めばいいんじゃないかな
マイナーなICだとぐぐっても出てこないから全部読むことになる
最初に読むべきなのはその時点でのエラッタかもしれない

817:774ワット発電中さん
12/02/11 10:24:30.19 req4qTyz
そこはPICじゃなくて水晶発振子やセラミック発振子の発振の仕組みについて調べたほうがいいんじゃないか・・・?

818:774ワット発電中さん
12/02/11 10:33:07.64 2dYJpY9u
>>813
データシート読まずに扱うのなら、無理だと思った方がいいよ。
質問に答える人はデータシート見て答えているんだし。

819:774ワット発電中さん
12/02/11 10:39:33.62 zIo+3gMD
あまりにもお客様すぎるだろw
能力も気概もないのに無理して使うなよww

820:774ワット発電中さん
12/02/11 10:43:47.29 req4qTyz
適当に検索したら分かりやすいサイトでたよ
URLリンク(www.piclist.com)

OSC1ピンだけで済ませたいなら水晶発振器を使うのはどうだい?

821:774ワット発電中さん
12/02/11 11:07:53.27 pETd7Bh4
この質問者はまず電気電子回路の知識がないからこうなってるんじゃないか?

水晶発振子とインバーターを使った発振器回路を調べてみると端子が2つ必要な理由が分かるかと。

822:774ワット発電中さん
12/02/11 11:14:25.58 fxsOxVVW
ピンアウトが少ないのがエライと思ってんじゃねーか?
それとクロックを作るだけで電力を必要とすることを知らない
ものすごいバカだよ

823:774ワット発電中さん
12/02/11 11:28:24.39 R1smv6YU
>>822
?

824:774ワット発電中さん
12/02/11 11:35:13.58 sBJNPEHT
スタンドアローンでマイクロパワーなら、水晶もセラロックも無しで32kHzなんじゃないの?

825:774ワット発電中さん
12/02/11 11:42:24.63 fxsOxVVW
マイコンてどれも水晶内蔵してるの?

826:774ワット発電中さん
12/02/11 11:49:45.99 NSnsKSV7
>>820
プロは後ろから入れる。

827:774ワット発電中さん
12/02/11 11:56:23.95 sBJNPEHT
>>825
誤差1%以内のオシレーター内蔵のが在る。水晶じゃないはず。

828:774ワット発電中さん
12/02/11 12:15:34.44 req4qTyz
どれでもってわけじゃないと思うけどよく使われるPICは、内部発振ができるはず
でも内部発振は水晶みたいに高精度じゃないから精度欲しいときとかは外部にセラロックとか水晶とかをつけるわけで・・・
とりあえず動けばいいなら内部発振でもいいんじゃないかな


829:774ワット発電中さん
12/02/11 12:50:35.89 zwBkrYyz
>マイクロチップの100ページも200ページもあるようなデータシートなんて、とても読んでられません。
>表紙だけで1ページ、美辞麗句ばかり並べて中身の無いFeaturesやOverviewのコーナーだけで5ページとか
>ユーザーを馬鹿にしてるとしか。

  なんかちょっと「ムカッ」っと来るのは 俺だけ?

830:774ワット発電中さん
12/02/11 13:13:47.77 3SLFsc9B
トランジスタみたいなFeaturesやOverview、ピンアウトまで全部一枚目に纏めろよ恥かしいって事を言いたいんだろう。
そういう書式のデータシートも有るけど、後ろがアセンブラコードの書き方指南書だったりして面白いぞ。

831:774ワット発電中さん
12/02/11 13:25:59.45 ofnPWE4y
途中からつまらなくなったけど、クロックとI/Oを共用しようと思ってた時に
どんな思考になってたのか興味ある

832:774ワット発電中さん
12/02/11 13:40:21.28 req4qTyz
TVのブースターとかPLCみたいな感じ・・・?

833:774ワット発電中さん
12/02/11 14:37:55.03 nHH7rzEI
あらかじめ型番指定されてて使い方だけ知ればいいなら邪魔かもしれんが、普通はこの石で何ができるか調べながら選定するんだよ。
そんなとき「美辞麗句ばかり並べて中身の無いFeaturesやOverviewのコーナー」がすごく役に立つ。

834:774ワット発電中さん
12/02/11 14:41:35.39 jU8i3VTh
>>813
それなら、悪いことは言わないから、この世界から足洗って
さっさと別の道を探した方がいい。
英文マニュアルで1000ページ超えだって珍しくない世界だし、
>813の都合に合わせるようなことはしないから。

835:774ワット発電中さん
12/02/11 15:48:55.24 /tDhj0rP
俺は、813の言っていることが分からなくもないな。初心者で、ちょっとだけ
応用してみようかって人に、datasheet読むのは無理。初心者用の良い解説書
を見付けるしかないんじゃないかな。どうせなら、コンピューターの動作原理とか、
クロックとは何かとか、そんなのまで書いてあれば、この人が読むにはぴった
りだと思うけど。

836:774ワット発電中さん
12/02/11 15:51:20.69 /tDhj0rP
ただし、俺もユーザーの一人だけど、datasheet読んでいて馬鹿にされたと
思ったことはないけどね。それは、書く側ではなくて読む側の問題だな。

837:774ワット発電中さん
12/02/11 16:22:01.39 Ajo47TOx
単に「読むのヤダヤダ-代わりに読んで全部教えろ」ってことだろ。

838:774ワット発電中さん
12/02/11 17:02:45.50 is5MhBg0
初心者はこんなところでうだうだ言ってないで、後関さんの本買って、
書いて有ることだけそのままなぞればいいんじゃないの?
それ以上やりたいならメーカーのドキュメントくらい読んでから来いw
その上で、何したくて、どこまでどうやって、何につまづいているかを、他人にわかるように表現しろ。

839:774ワット発電中さん
12/02/11 17:26:01.22 BVacvl4M
813は、その人物が持つ人間性がその能力まで影響してしまう良い例だなw

840:774ワット発電中さん
12/02/11 18:33:17.16 pN3l0odN
俺に300万くらい払ってくれたら、PIC16Fくらいなら全部読んでどこでも教えてやるよ。
100万調査日、200万はコンサル費用。一ヶ月で。

安いだろう?いつも損な仕事してると自分でも思う。

841:774ワット発電中さん
12/02/11 18:43:34.66 hjZdQbDt
>>840
100万日も調査に充てるのか。人生捧げてる感じだ。すげえ。

842:774ワット発電中さん
12/02/11 18:48:54.70 tSXU1YpN
40万で16F満タンまでならコーディングとデバッグするぞ


843:774ワット発電中さん
12/02/11 19:05:34.22 pN3l0odN
コーティングとデバッグだけなら、俺も40万で良いけど、
こういう輩は、どうせ仕様とか全然決まってないから、
お話聞いて、試用決定と設計までで160万くらいみとかないと、
赤字になるのさ。

844:774ワット発電中さん
12/02/11 19:34:43.41 H0papDGr
よし俺なら35万でやってやる

845:774ワット発電中さん
12/02/11 20:21:14.39 2dYJpY9u
なんか入札になってるw おれは実績精算にしとく。

まぁ、それはおいといて、データシートが嫌なら(?)やはり解説本かな。
そこで学んで、機能意味をデータシートと照らし合わせるのが近道かと。

846:774ワット発電中さん
12/02/11 20:35:23.32 pN3l0odN
>>845
だね。
せっかくPICには他のデバイスよりも、クロックや電源、AD特性などの解説が
丁寧に書かれている良い解説本が多いのにね。
813はそういうのも読んでないんじゃないかな。


847:774ワット発電中さん
12/02/11 20:54:13.43 Earuo4FZ
発振子絡みで便乗話題。
普通にPIC16やPIC18にセラミック発振子をつなげて
動作しているときに発振子付近の実装パターンを指で触れるとPICが暴走する。
これは指の抵抗で発振が不安定になっていると考えて問題ない?
セラロックでも水晶+セラミックコンデンサでも現象は起こる。
これを防ぐ方法は、パターンのコーティングしか無いわけ?

848:774ワット発電中さん
12/02/11 20:57:29.19 hjZdQbDt
>>847
原因としては7つあげられる。
あと、暴走って表現は雑すぎるからやめた方がいい

849:774ワット発電中さん
12/02/11 20:59:29.97 Earuo4FZ
>>848
現象としては
・リセットがかかる。
・見た目動作が非常にゆっくりになる(ダイナミック制御のちらつき)。

850:774ワット発電中さん
12/02/11 21:46:34.38 pN3l0odN
原因としてはいろいろあるけれど、パターンの長さや引き回しは規定を満足している?
GNDはきちんと安定しているかとかもあるしな。
あとは、あなたの静電気。

パターンを下手にコーティングすると、それはそれでまた別の問題が起きると思う(場合もある)。


851:774ワット発電中さん
12/02/11 21:50:31.68 wLYSWRae
16Fといっても最近の16F1938とかはプログラムメモリが16Kワードも乗ってる
けどいいのかな。

852:774ワット発電中さん
12/02/11 21:51:12.47 Earuo4FZ
>>850
発振回路はクロック端子の直近2cm以内には収まっている。
パスコン(0.1uF)もなるべく最短で入れてある。VCCピンが複数あればその数だけ。

853:774ワット発電中さん
12/02/11 21:58:14.07 Earuo4FZ
>>850
静電気とかアバウトな答えなら偉そうに書かなくていいです。

854:774ワット発電中さん
12/02/11 22:55:11.31 UCDG30Cl
人体の電位は電力線からの電界により商用周波数(50/60Hz)で変動している

PICのクロックドライバの入力(OSC1)側は高インピーダンスになっているため
人体が接触すると商用周波数の電圧が発生してしまう

それにより次のようなことが起こるかも
発振の停止あるいは発振周波数の乱れ
内部回路のセットアップあるいはホールド時間の不足による
メモリ化け、レジスタやフラグ化け、プログラムカウンタ化け

855:774ワット発電中さん
12/02/11 23:13:23.59 Earuo4FZ
>>854
それを防ぐ、電子回路上の対策はあるのでしょうか?

856:774ワット発電中さん
12/02/11 23:16:18.05 /+7iWb1l
>>854
奴には理解できない。
チンコで例えれてやれ

857:774ワット発電中さん
12/02/11 23:18:25.87 LzNaXxKX
>>855
物理的接触を避けるためにケースに入れるだけじゃダメなん?

858:774ワット発電中さん
12/02/11 23:24:21.41 BGogDOee
ICを包んでる樹脂使えばおk

859:774ワット発電中さん
12/02/11 23:35:28.58 omHAcyGo
>847,855

URLリンク(www.kyocera.co.jp)
のA3.


860:774ワット発電中さん
12/02/11 23:37:18.45 omHAcyGo
>859
発振周波数のA3
だな。
指でのチェックはお約束。




861:774ワット発電中さん
12/02/11 23:45:12.57 yd/1yyM2
>>855
指が直接触れないようにGNDに落とした金属でシールドする

862:774ワット発電中さん
12/02/11 23:45:19.29 Earuo4FZ
>>860
ありがとうございます。
発振子のマッチングに関しての知識が不足しているので勉強し直します。

863:774ワット発電中さん
12/02/12 00:54:58.84 8gsxX1f1
「触っても大丈夫なように」とか、子供みたいだな

864:774ワット発電中さん
12/02/12 03:12:20.30 g8dxnifK
PIC24FJ32G002でサーボモータを制御したいんですけど、
やり方載ってるサイトとかありますか?

865:774ワット発電中さん
12/02/12 03:19:01.43 8gsxX1f1
そんなの検索すれば即わかるだろ。いちいち書くなよ

866:774ワット発電中さん
12/02/12 04:07:47.87 0vWl2ycM
>>864

  それは、あなたが自身で調べることです (ミタ)

867:774ワット発電中さん
12/02/12 05:50:46.01 Ol1y/t1T
ミタさんPIC使えるのか

868:774ワット発電中さん
12/02/12 09:17:53.14 XzvyGGPz
>>867
カバンのなかにPICKit3が入ってます。l

869:774ワット発電中さん
12/02/12 10:12:44.50 ysI01+dA
>>825
なんか真珠入りマイコンを連想してしまった

870:774ワット発電中さん
12/02/12 10:22:16.35 2ds0RScL
占のうてみるかにゃ

871:774ワット発電中さん
12/02/12 10:47:48.13 DyFWmMA4
ちなみに、ダイワニャンもPIC使えるらしい。
秋月で16F88買っていた。


872:774ワット発電中さん
12/02/12 11:35:42.43 rqWpzu5s
writer509の、新型16Fバージョンの回路はまだですか?

873:774ワット発電中さん
12/02/12 11:36:46.24 rqWpzu5s
つかいい加減5Vオンリー書き込みでいいじゃんなぁ。
5V専用の安くて安定しているライタの登場求むわ。

874:774ワット発電中さん
12/02/13 11:28:20.06 5D0XjKJa
新規に何か作るのは大変だし、JDMも新しいPICに対応させるのは酷。
発想の転換で18F2550使えばPICkit2クローン出来るから、
回路を極限まで端折って作れば安くできると思う。
でも、僅かな投資だから素直にPICkit2買った方が良いと思う。

URLリンク(www.geocities.jp)


875:774ワット発電中さん
12/02/13 11:28:54.92 I3g2QSqP
なんでPICKITも買えない貧乏人がマイコンの開発をy

876:774ワット発電中さん
12/02/13 11:47:07.02 sx5yN7x1
>>875
趣味なんだから道具から作りたい人も居る。

877:774ワット発電中さん
12/02/13 12:00:23.07 628fv5OF
他力本願なのはイクナイ

878:774ワット発電中さん
12/02/13 12:05:43.58 jOlAqpCB
マイコンなんて貧乏人の趣味じゃん。
本体50円、基板50円、LED3.5円、パスコン1円
で、とりあえず何か作った気になれる。
3000円台のライターなんて法外に高価だよ。
こんな機器が必要だと知ってたなら、最初から4017と555だけ使って
フラッシャー作ったほうが安上がりだった。
と、俺の嫁が言ってました。

879:774ワット発電中さん
12/02/13 12:15:34.17 sgam+4FP
555は絶滅してなかった?

880:774ワット発電中さん
12/02/13 12:26:25.83 UHjHMHNW
秋月で普通にレールで売ってるけど。
絶滅したの?
今のうちに買い占めておくのが吉?

881:774ワット発電中さん
12/02/13 12:31:04.12 ESnn2H5q
555はバリバリ現役だぜ。
3909は引退したけどな。

882:774ワット発電中さん
12/02/13 13:14:44.14 sgam+4FP
ごめん。勘違い。
TIが555互換品の製造中止の記事で記憶違していた

883:774ワット発電中さん
12/02/13 13:38:25.62 sgam+4FP
555で出来ることはPIC12F615とか
使ってソフトでやるほうが工作は楽

884:774ワット発電中さん
12/02/13 14:18:29.36 Yubo60gl
555は、広い電源電圧と高い出力電流にアドバンテージがある。
なので、制御の対象が12V系とかなら電源回路やドライブ回路を簡略化できる。

ソフトで簡単に機能拡張できるマイコンほどの便利さはないけど、555も捨てたもんじゃない。

885:774ワット発電中さん
12/02/13 14:34:51.30 6igGFVMM
PIC16F84A PIC16F877 PIC16F887 と書き込み手順から自作のライタで凌いできたが
PIC18F26K22を使いたくなって書き込み手順のデータシート調べたら
CPUコアのプログラムメモリアクセス機能をライタから遠隔操作
するような複雑仕様で萎えた
でもPICKIT買ったら負けのような気がするんだ

886:774ワット発電中さん
12/02/13 14:56:39.03 Wyh1Eo7b
時は金なり
デバッガも役に立つかもしれん

887:774ワット発電中さん
12/02/13 14:58:37.63 ESnn2H5q
>>883
可変抵抗の値を A/D して周波数変えるとか
面倒くさいと思うんだ。


888:774ワット発電中さん
12/02/13 15:18:53.42 UHjHMHNW
555を「ゴーゴーゴー」と読むか「ファイズ」と読むかで、歳がバレます。

889:774ワット発電中さん
12/02/13 16:01:54.29 /8npZcWt
君のテレホンナンバー 555 オゥ~

890:774ワット発電中さん
12/02/13 16:03:49.29 WSFUUy1o
スリーファイブじゃないんですか……

891:774ワット発電中さん
12/02/13 16:54:07.88 ztmS8fVB
>スリーファイブ
999世代乙

892:774ワット発電中さん
12/02/13 17:52:25.39 628fv5OF
ゴゴゴ、風が泣いている

893:774ワット発電中さん
12/02/13 18:06:05.88 amSBcJ2s
>>878
なんのフラッシャか知らないけど、555使ってできることならそっち使ったほうがいいし多分楽しいんじゃ?
マイコンを選んだ方が圧倒的に楽、または既存のアナログ、デジタル回路では条件が複雑になりすぎる制御にマイコンを選択するのでは?

894:774ワット発電中さん
12/02/13 18:47:46.25 WSFUUy1o
PCのソフトなんて初期投資のPC買うだけであとはタダじゃないですか。
今時PCぐらい家庭に1台以上あるから実質ゼロ円。
マイコンというか電子工作は必要な部品選んで買い集める辺りで
もう既に敷居が高いと思います。

895:774ワット発電中さん
12/02/13 18:53:23.55 5kmGDCES
ゴーゴーファイブもあったな

896:774ワット発電中さん
12/02/13 18:59:25.53 zHgGIJOG
>>894
川柳のほうが楽しいぞ。人口多いし投資?もない

897:774ワット発電中さん
12/02/13 19:11:17.28 Wyh1Eo7b
原価厨って何が楽しくて生きてんの

898:774ワット発電中さん
12/02/13 19:49:33.96 /8npZcWt
原価上等よ 俺ら気合い入ってるからよォ

899:774ワット発電中さん
12/02/13 20:04:57.32 G+EC/ZrR
自分もクロックについて質問だけど、
picによっては発振子に1MΩの抵抗を
並列接続する理由は?

900:774ワット発電中さん
12/02/13 20:25:18.54 w6y+0gaw
帰還抵抗

901:774ワット発電中さん
12/02/13 20:33:45.55 iXjXZXFO
)900

名称ではなく、理由を聞かれています、軽石さん。

902:774ワット発電中さん
12/02/13 21:09:54.77 G+EC/ZrR
>>900
そうだね
ありがとう

903:774ワット発電中さん
12/02/13 21:35:19.42 p2PGvhtx
だれか、PIC24E扱っている人いないかい?
別に、知らないことを聞きたいんじゃなくて、
物珍しいから、使っている人がいないかなぁっておもっただけ。

趣味の工作なのに、わざわざ海外から取り寄せたし。

904:774ワット発電中さん
12/02/13 22:39:27.46 9kxMmbJ8
>>海外から取り寄せ

下手な国内業者から買うより余程早くて安いけどね

905:774ワット発電中さん
12/02/13 23:00:50.85 1eaQQRy3
PIC16F57マイコンデジタル時計キットVer.3(卓上型)
を使って作った自慢のプログラムを誰か披露してくれませんか?

906:774ワット発電中さん
12/02/13 23:38:02.24 jOlAqpCB
秋月に著作権あるんじゃないの?

907:774ワット発電中さん
12/02/14 00:15:29.28 kMv/IQ/S
AVRで同じようなのをスクラッチで作ったよ
JJYとGPSからの時刻取り込み機能付きのやつ
PICじゃないのが残念だ

908:774ワット発電中さん
12/02/14 01:52:29.03 ubrLiEI3
キット品を買ってあえて別の物を作ろうってことだな!ちょっと面白そうだ。
キット自体高いからあまりやりたくはないけど。

909: ◆yaya/99832
12/02/14 16:34:54.98 jz6MTVL0
質問です (´・ω・`)

【目的】
3.3Vで動く回路上のPICに、Pickit3(ICSP)でプログラムしたい。

【状況】
回路に Pickit3 を繋げて、MPLAB IDE の 『Program』 をクリックすると、
新品の PIC には 1度だけプログラムを書き込める。
もういちどプログラム(つまり、そのPICに上書き)しようとすると、次のようなエラーが出て、
プログラムできない。
  --------
  Address: 00000000 Expected Value: 00000025
  Received Value: 00000000 (※ 00000fff となるケースもあり)
  Programming Failed
  --------
ここで使用したのは、PIC12F509です。
念のため、3個の個体を入れ替えながら3回試してみたが、いずれも状況は同じ。

【進展】
回路の電源を5Vに変更してみたら、あっさりうまくいった(2度目以降の上書きプログラムができた)。

【質問】
電源を5Vにすればよいと分かったので、それで解決といえば解決だけど、
LEDとかがまぶしくてイラッとするので、できれば3.3V電源のままでICSPできるようにしたい。
回路の電源部分に、インダクタとかで5Vに昇圧する回路をくっつけて、プログラムするときだけ
スイッチでそっちに切替える・・・という強引な方法は思いついたんですが・・・
できればもっとスマートに解決できないでしょうか?
よろしくお願いします (´・ω・`)



910:774ワット発電中さん
12/02/14 17:02:32.01 LmDUsOWv
>LEDとかがまぶしくてイラッとするので
LEDの上にシールでも貼ったら?

911:774ワット発電中さん
12/02/14 17:15:50.38 LdjdZXcm
5V電源にして、使うときだけ3.3Vにレギュレータで落とす

912:774ワット発電中さん
12/02/14 20:57:33.74 oB3HTEPp
>>909
書き込み時はPickit3から電源を供給するとか。
切り替えがスイッチ以上に面倒か…

913:774ワット発電中さん
12/02/14 21:24:00.80 eQC/p+wq
PIC初心者です。
SPIを使ったPIC間通信がうまくいかず、行き詰まってしまったので質問させてください。
言語はC言語で、コンパイラはC18,C30を使用しています。
PIC24FJ64GB002(以降GB002)をマスター、PIC18F26K22(以降26K22)をスレーブとしています。
両方ともクロックは外部8MHzを、4倍にして使用しています。
ピン接続は以下のようになっています。(SSは今回使用しません)
GB002 | 26K22
SDO1: RB3(RP3) | SDI2: RB2
SDI1: RB2(RP2) | SDO2: RB3
SCK1: RB1(RP1) | SCK2: RB1

GB002のRB15にスイッチ、RB7,8にLEDがついています。
26K22にはRB0にLEDがついています。
GB002のスイッチを押すと、SPI通信で26K22にデータを送り、データがきちんと届いたら26K22のLEDを光らせるテストプログラムを作成していました。
しかし、スイッチを押しても26K22側のLEDはつかないため、通信がきちんと行われていないものと思われます。
どうすればきちんとSPI通信が行えるでしょうか?どなたかご教授していただけませんか?
以下にソース(main関数)を記述します。
//GB002
int main(void){
// 内蔵Pull up setting
CNPU1 = 0x1800;// CN0~15
CNPU2 = 0x0000;// CN16~CN30
// Disable Watch Dog Timer
RCONbits.SWDTEN = 0;
// SPI port setting
RPOR1bits.RP2R = 8; // RP1 is SCK output
RPINR20bits.SDI1R = 2; // RP2 is SDI Input
RPOR1bits.RP3R = 7; // RP3 is SDO Output
// all A/D converter disabled
AD1PCFG = 0xFFFF;
TRISA=0;
TRISB=0;
TRISBbits.TRISB2 = 1; // SDI port
TRISBbits.TRISB15 = 1;
PORTA=0;
PORTB=0;
SPI1Init();
CloseSPI1();
#define config1 (SPI_MODE16_OFF |SPI_SMP_ON | MASTER_ENABLE_ON | SEC_PRESCAL_4_1)
#define config2 (FRAME_ENABLE_OFF)
#define config3 (SPI_ENABLE)
OpenSPI1(config1,config2,config3);
ConfigIntSPI1(SPI_INT_EN | SPI_INT_PRI_4);
// main loop start
while(1){
if(PORTBbits.RB15 == 0){
// SPI start
// スイッチを押すとRB8のLEDがつき、通信が終わるとRB7のLEDがついて、RB8のLEDが消える。
PORTBbits.RB8=1;
PORTBbits.RB7=0;
WriteSPI1(0x01);
while(SPI1STATbits.SPITBF);
PORTBbits.RB7=1;
DelayMs(500);
PORTBbits.RB8=0;
}// SPI end
}// main loop end
CloseSPI1();
return 0;
}

914:774ワット発電中さん
12/02/14 21:24:40.16 eQC/p+wq
>>913 つづきです

//26K22
void main(void){
char data=0;
// all ADconverter disabled
ANSELA = 0xffff;
ANSELB = 0xffff;
ANSELC = 0xffff;
TRISA=0;
TRISB=0;
TRISC=0;
PORTA=0;
PORTB=0;
PORTC=0;
PORTBbits.RB0=0;
// SPI Init
CloseSPI2();
OpenSPI2(SLV_SSOFF,MODE_01,SMPMID);
TRISBbits.RB1 = 1; // SCK in
TRISBbits.RB2 = 0; // SDO
TRISBbits.RB3 = 1; // SDI
while(!DataRdySPI());
data = SSPBUF;
if(data != 0)
PORTBbits.RB0 = 1;
//while( PIR1bits.SSPIF!=1 );
CloseSPI2();
while(1);
}

915: ◆yaya/99832
12/02/14 21:35:38.08 jz6MTVL0
>>912
Pickit3からの給電で書き込めるんでしょうか?
Pickit3の要件 (中に入ってたポスターみたいな奴のRecommended Settings の欄)
によれば、『Power: Supplied by target』 となっています。
使い方の手順にも 『Connect power to the target board』 と書いてあるし・・・(´・ω・`)

>>909 はいまいち質問の書き方が悪かったですが、私の本音としては、
できれば 『3.3V のまま(電圧を上げるなどの細工をすることなく)PICに書き込むための条件』
を、いちばん知りたいです。

ポスターの説明書には、PICの電源については 『Target Vdd』 としか書いていません。
ポスターに電源に関する追加条件などが記されていない以上、 “うまくやれば” PIC本体の
データシートどおりの電圧 (つまり最低 2.0V) だけで、きちんと書き込める “はず” だと
思うんですが・・・ (´・ω・`)

どなたか Pickit3で、3V前後の target Vdd のまま書き込めた人はいないでしょうか? (´・ω・`)

916:774ワット発電中さん
12/02/14 21:46:01.21 cvD7gf/c
>>912
c30のspi通信はマスター側がデータを送信することで
マスターの送信データとスレーブの送信データが交換される仕組みみたいだよ。

プログラムとしてはスレーブ側の
while(!DataRdySPI());
の前に
SPI1BUF = 0xFF;   or WriteSPI1(0xFF);
を入れてみて。



917:774ワット発電中さん
12/02/14 21:47:00.92 cvD7gf/c
>>912じゃなくて>>913

918:774ワット発電中さん
12/02/14 21:48:38.03 CqEulPYk
>>915
書込みは4.5V以上ってなってねぇか
ムリすれば消去以外はできるようだが


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch