【送料高い】PIC専用のスレPart16【バーゲンなのに】

このエントリーをはてなブックマークに追加
853774ワット発電中さん
>>850
あっさり動きました(笑)
原因はトラ技付属のソースにバグがあったことです。
xlcd.h内の書き換えられた部分にひどい間違いがあります。

ちと外出しますので、詳細はのちほど。
854774ワット発電中さん:2007/11/25(日) 20:46:05 ID:5E58dQTL
そして原因判明ねw
さすがIDがQTL...
855774ワット発電中さん:2007/11/25(日) 20:49:02 ID:9uoVt6gq
最近はpic多すぎてどれを選んだらいいのかわからん。
そろそろ品種を整理してくれないかなー
856774ワット発電中さん:2007/11/25(日) 20:51:10 ID:yIR+M7yp
PIC-C liteを使ってたけど対応PICが少ないので
CCS-CのPCMを買おうと思うんですけど

PCM買って失敗したとかPCW買っておけば良かったとか思ってる人っている?

使おうと思っているPICは
12F675
18ピンのPIC(いろいろ)
16F877A
とかです

18シリーズに手を染める気はまったく無し
857のうし:2007/11/25(日) 20:55:55 ID:EuGDZl+O
あのお‥

>原因はトラ技付属のソースにバグがあったこと

創刊頃かららすぃし次号のコテ持ったナースが責任持ってますが‥
この2ちゃ〇と同じであまりムキーにならない方がいいとおもわれ。
858774ワット発電中さん:2007/11/25(日) 21:25:55 ID:N+hgGYw5
>>856
ICD-U40でのデバッグはPCWでしか出来ないんじゃなかったっけ。
PCWのプロジェクトウィザードで、初期設定の雛形が作れるのが楽でいい。
(結局手直しする事になるんだけど…)

最近はMPLABと統合させて使ってるのでPCWの出番なし。
特に不便と思ったことはないかな…。
859796=812:2007/11/25(日) 21:40:59 ID:6ymYpPAm
>>853
帰宅しました。

修正箇所はxlcd.h内の
#define DATA_PIN_7 PORTBbits.RB7
#define DATA_PIN_6 PORTBbits.RB6
#define DATA_PIN_5 PORTBbits.RB5
#define DATA_PIN_4 PORTBbits.RB4

#define DATA_PIN_7 LATBbits.LATB7
#define DATA_PIN_6 LATBbits.LATB6
#define DATA_PIN_5 LATBbits.LATB5
#define DATA_PIN_4 LATBbits.LATB4
に。

#define E_PIN PORTFbits.RF4 // PORT for E
#define RS_PIN PORTFbits.RF5 // PORT for RS

#define E_PIN LATFbits.LATF4 // PORT for E
#define RS_PIN LATFbits.LATF5 // PORT for RS
に。

そして、トラ技9月号基板でR/WはGND固定なので、
//#define RW_PIN PORTDbits.RD8 // PORT for RW
とコメントアウトしてください。
これにともない、RW_PINに関連するCソース部分を修正する必要があります。
(同様にコメントアウトすればOKでしょう)

修正点は以上と思います。
860774ワット発電中さん:2007/11/25(日) 21:59:04 ID:6ymYpPAm
>>857
筆者の方ですか?w

冗談はさておき、ヘッダファイルを開いて0.2秒で見つかるような
間違いを残しちゃあ、恥ずかしいよねってこと。
CD-ROM焼く前に、最低限の検証だけでもして欲しいものです。

それにおそらく、この筆者はバグがあることに気づいていたんだと
思うんですよ。その証拠にClock.cの中にある、この一行。
// while(BusyXLCD());
このコメントを外すと、タイミングによってはフリーズするんですわw

>>812にも書いたように、今回はオリジナルがMicrochip製だからと
信頼してしまったことが最大の敗因でした。
今後はソースがトラ技筆者によって汚染されていることも念頭に
おかないといけませんね。
(筆者は9月号の記事中で「改良」と記述していることも腹立たしいw)

ともあれムダに費やした時間が、ただただ惜しいです orz
861774ワット発電中さん:2007/11/25(日) 22:33:42 ID:DlGlgxFI
>>860

おれ無関係だけどこの書き方は許せない。
失敗の積み重ねがスキルアップに繋がっていると思っている。
確かに頭にくるときもあるが決して「無駄な時間」「ただただ惜しい」とは思わない。
少し考え方変えたほうが成長するよ。少し考えてみなよ。
862774ワット発電中さん:2007/11/25(日) 22:52:21 ID:cO5XQ03C
>>859
ありがとうございます。

なんか全然ダメダメだったのが
手の施しようがあるぐらいまでになりました。
LCDは良くなったのですが、
割り込み関係がまだダメみたいです。

トラ技のローダー上では
LATじゃなくてPORTに書いててもOKだったし
割り込み処理もうまく行ってたので
丸っきり試験してないわけじゃないんでしょうけど
ローダのソースが欲しいところです。

まあ、先に進んじゃおうと思いますけど。
863774ワット発電中さん:2007/11/25(日) 23:06:15 ID:txtKTM40
まだ使ってないから、よくわかってないんだけど
LATxとPORTxの差は読み込みの時
PORTx 実際の外部ピンの電圧のH/L
LATx 前に書き込んだ値(ラッチ? レジスタ?)
864774ワット発電中さん:2007/11/25(日) 23:18:39 ID:txtKTM40
16Fシリーズの時 PORTxに直接BCFやBSF使ってはまった経験が
あるからLATxの存在はうれしい。
AVRは後発だけあってよく考えてるよな
865774ワット発電中さん:2007/11/25(日) 23:20:27 ID:SL+4gCSD
>>859
少なくとも出力ピンに関しては
#define DATA_PIN_7 PORTBbits.RB7

#define DATA_PIN_7 LATBbits.LATB7
とは全く同じ動作をする筈なんだが。
それを書き換えたら動くっていうのは、なんか変な感じが。

それよりは
//#define RW_PIN PORTDbits.RD8 // PORT for RW
がアレだと思うなぁ。ウェイトがRWピン待ちになっているって事?
866774ワット発電中さん:2007/11/25(日) 23:21:00 ID:SL+4gCSD
>>865
RWピン待ちじゃないな。RWをRにしてEを待つんだっけか?
867774ワット発電中さん:2007/11/25(日) 23:27:43 ID:SL+4gCSD
あと、割り込みに関しては付録のブートローダ入りのやつは、
なんだっけか、代替割り込みベクトルをつかっているから、本来の割り込みベクトルとは
違う位置に書いてあるから、うんちゃらかんちゃら、ってことじゃなかったかな。
868774ワット発電中さん:2007/11/25(日) 23:29:38 ID:MeDOiNcm
>>860
本文読んでないけど、そこだけ見ると液晶のR/Wを使ってリード方向も
やってみようとして手を入れたってとこかね。ライト時にはポートに
出てるのは前回書いた値のはずだから、ビット演算もオッケーだろうと
思ったんだろうかね
869774ワット発電中さん:2007/11/25(日) 23:52:30 ID:6ymYpPAm
>>862
私の場合も同様にbootloaderを使うと動作したんですよ。
それがなおさら原因をわかりにくくしていた要因ですがw

Microchipのサイトにブートローダーのソースがあるので、
これが参考になるかも知れません。
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en530200

ざっとみた限り同社のLCD初期化ルーチンはLATxを使っていますね。
xlcd.hを書き換えて以降、ウェイトを短くしても安定しています。

なぜトラ技はPORTxに書き換えたのか、謎。
870774ワット発電中さん:2007/11/26(月) 01:56:58 ID:7YKZzOSX
>>865
出力ピンに関して、その2つの動作は異なる。
871774ワット発電中さん:2007/11/26(月) 02:07:15 ID:Fa3eWvKP
>>870
そうだっけ?詳しく
872774ワット発電中さん:2007/11/26(月) 09:24:54 ID:xei/epSF
AN587:Interfacing PICmicro® MCUs to an LCD Module
を開くと、
LCD_DATA     EQU  PORTB
LCD_DATA_TRIS  EQU  TRISB
;
else
;
LCD_DATA      EQU  PORTD
LCD_DATA_TRIS   EQU  TRISD
;
endif
;
LCD_CNTL    EQU  PORTA

てな具合になってて
MOVWF  LCD_DATA
BSF   LCD_CNTL, E
BCF   LCD_CNTL, E
なんてとこか
873774ワット発電中さん:2007/11/26(月) 12:30:15 ID:i2ssu/ll
839ですが、REAL ICE注文してみました。
高速オプション無しで。
意見くれた方ありがとう。
ついでにPICKIT2も買っておいたので、手持ちのICD2とあわせて3兄弟そろうことになってしまった。
874のうし:2007/11/26(月) 15:03:26 ID:1o35YBqA
筆者だとしたら他の電子工作系の掲示板にそれコピペしてあるのかな?
2ちゃんだけしか知らなかったりしそうだから、誰かいろんな掲示板を列挙してあげたら?
875774ワット発電中さん:2007/11/26(月) 15:28:36 ID:KEFGoxLO
LATレジスタとPORTレジスタだとPORTレジスタに書く方が一瞬速く出力されますかね?
876774ワット発電中さん:2007/11/26(月) 15:40:25 ID:nlVqr77F
そうなの?
877774ワット発電中さん:2007/11/26(月) 21:03:51 ID:Fa3eWvKP
>>870は、どこが違うのかわからん。
http://www.picfun.com/PIC24F/module/mod24F02.html
どちらに出力してもまったく同じ動作で、最終的にPORT Latchに
書き込み、出力モードになっていればそれがピンに出力されます。

878774ワット発電中さん:2007/11/26(月) 21:26:24 ID:bVxtgy4A
昔のPICではたとえばPORTBに対してBCFやBSFすると、レジスタが保持してる値ではなく
端子レベルを読み込んで書き換えて出力してたと思う。
いまはどうだかは知らん。
879774ワット発電中さん:2007/11/26(月) 21:31:24 ID:Fa3eWvKP
>>878
今でもそう。
だから、LATレジスタが出来た。
880846:2007/11/26(月) 22:00:22 ID:POkIoVIV
----まとめ----
12F,16Fの時代はPORTxに直接BCF,BSF使うと
IOピンのH/L読み込んでから書き換えるため重い負荷とか
連続書き込みを行うと意図しない値が書き込まれた。

16bitPICになってLATxが追加されて出力値を保持(ラッチ)
できるようになった。
動作として書き込み時は PORTxもLATxも同じ
読み込み時は
PORTx 実際の外部ピンの電圧のH/L
LATx 前に書き込んだ値(ラッチ,レジスタ)
(BSET,BCLR,BTGを使うならLATxじゃないとダメ)
ちゃんと使い分けましょう。
881870:2007/11/26(月) 22:23:11 ID:7YKZzOSX
詳細に書いてる時間ないから、データシートの該当する場所を書いとく。

dsPIC30F2011/2012/3012/3013 Data Sheetの場合、

「7.1 Parallel I/O (PIO) Ports」の記述
「FIGURE 7-1: BLOCK DIAGRAM OF A SHARED PORT STRUCTURE」の図
「7.2.1 I/O PORT WRITE/READ TIMING」の記述

あたり。
882774ワット発電中さん:2007/11/26(月) 23:19:16 ID:Fa3eWvKP
>>881
I/O PORT WRITE/READ TIMING
One instruction cycle is required between a port
direction change or port write operation and a read
operation of the same port. Typically this instruction
would be a NOP


すまんが、これのどこに、LATとPORTの違いが書いてあるのか述べてくれんか。

883774ワット発電中さん:2007/11/26(月) 23:21:53 ID:nC80BUkE
>>882
判らない人は無理にPIC使わなくてもいいんじゃないだろうか。
884774ワット発電中さん:2007/11/26(月) 23:38:51 ID:Fa3eWvKP
>>883
すまんが、オレの語学力では、そこに書いてあるのは
「ポートの入出力方向を変えたり、同じポートを書き読みはするときには、NOPをイッコ入れてね」
としか読めない。この行間に「書き込み動作はラッチとポートで違うよ」って書いてあるのなら、
オレは明日からAVRを使うw

885774ワット発電中さん:2007/11/26(月) 23:41:21 ID:s1PW6Arw
>>869
リセット繰り返してたんで
LCDのEピンに何気にテスタをつないだら
なんと安定したと思ったら
まただめになっちゃいました。

電気的におかしそう。

RWのラインもしっかりつないでみるかなっと。
886774ワット発電中さん:2007/11/27(火) 00:02:33 ID:We6WyhDD
>>880
LATxの追加はPIC18(core 8bit)から。
887846:2007/11/27(火) 00:30:24 ID:dnBBzuY6
>886
おおーそうだったのか18Fは使ったことないから知らなかった。サンキュー

>870 は何か別のことを言いたいのかも知れないが
>出力ピンに関して、その2つの動作は異なる。
LATxとPORTxは出力ピンも読み込み時の動作が異なるから
間違ってはいないと思う。例えば PORTAの出力が0の時
BSET PORTA,#0
BSET PORTA,#1

BSET LATA,#0
BSET LATA,#1
は違った結果になる。PORTxの方は最初のビットセットが有効に
なる前に次のBSETでPORTが読まれてしまう(882の英文は
このことを示したかったのかな)

888774ワット発電中さん:2007/11/27(火) 00:40:27 ID:Tv9PshZe
>>887
あー、やっとわかった。
PIC特有の嫌らしいアレの事か。
考えてみればその嫌らしさを消すためのLATレジスタなんだよな。
さんきゅ。
結果として、出力はLAT, 入力はPORTでやれば、問題は起こらない ってことかな?

889774ワット発電中さん:2007/11/27(火) 01:10:17 ID:5wzzOoGp
ルネサスのR8Cとかは
BSETで問題なくてLATxとかの概念ないけど
PICはLATxを作って解決するようになったの?
890774ワット発電中さん:2007/11/27(火) 01:37:53 ID:2qKWvfOS
禁プログラミング2日目
「あのときの」って昔のファイルが気になり始めた

何日なら我慢できる?
891774ワット発電中さん:2007/11/27(火) 01:54:16 ID:dnBBzuY6
>888
>結果として、出力はLAT, 入力はPORTでやれば、問題は起こらない ってことかな?
それであっていると思う。

AVRがこの辺うまく作ってる。
DDRx(TRISと同じ),PORTxがラッチ有りの出力用,PINxが入力用で別
PINxに'1'を書き込むと対応するPORT出力を反転させたり、入力モード時の
PORTxはビット毎のプルアップ抵抗有効/無効だったりと
892774ワット発電中さん:2007/11/27(火) 02:58:40 ID:j8+C/PAm
いままでずっと出力はLAT、読み込みはPORTでやってきたが、
問題は16BIT品にも当てはまるのかね?
最近、TCP/IPスタック見てるんだけど、出力にLAT使ってるとことPORT使ってるとこと
あって、統一されて無い感じ。
中の人でも認識に個人差があるのかな?嵌った経験の有無とかで。
893774ワット発電中さん:2007/11/27(火) 13:36:33 ID:JqMz585T
http://homepage2.nifty.com/zetatech/product/product.html
このページのじゃんけんゲームを参考にじゃんけんゲームを作ろうとしているんですが、
LEDマトリクスを2つ使いたいので、16F648Aの代わりに16F877を使い、
74HC138の代わりに16F84Aを使ってやろうとしているんですが、
74HC138から16F84Aに変わっても74HC138につながっていた抵抗値は一緒でいいんでしょうか?
あとLEDマトリクスを2つ使うんですが、TD62083は2つ使わなければならないんでしょうか?
TD62083に抵抗をつなげて、そこから枝分かれして、
2つのLEDマトリクスにつなげるといったことはできないんでしょうか?
894774ワット発電中さん:2007/11/27(火) 14:25:38 ID:EBuHlt/9
>>893
LEDマトリクス2個でも 16F648A + TD62083 + 74HC138(x2) + Tr(x16) で出来るよ。
ダイナミック点灯Duty:1/16だと少し暗くなるかもしれないので
TD62083部の抵抗を100〜220Ω程度に小さくすると良い。
895774ワット発電中さん:2007/11/27(火) 14:36:48 ID:JqMz585T
>>894
LCDもつなぐんで16F877にしました。
TD62083につないである抵抗を少し小さくすれば、1つでLEDマトリクス2つにつないで
点灯させることはできるってことですよね?
ありがとうございました。
896774ワット発電中さん:2007/11/27(火) 14:43:26 ID:j8+C/PAm
>>895

74HC138(x2)
ここ重要。PICに置き換えるなら2個いるってこと。
897774ワット発電中さん:2007/11/27(火) 14:58:29 ID:JqMz585T
>>896
74HC138を使うならTD62083は1つでもいいけど、
16F84Aを使うならTD62083は2つ使わなければいけないってことですか?
じゃあ2つ使わなきゃだめなのか・・・orz
898774ワット発電中さん:2007/11/27(火) 15:01:20 ID:EBuHlt/9
16F84Aは何の為に使うの? 要らないよね
899774ワット発電中さん:2007/11/27(火) 15:07:45 ID:JqMz585T
>>898
学校の課題で作ろうとしてるんで、
絶対に16F84Aを使わなきゃいけないんです。
なので、デコーダ代わりに使ってやろうかと思いまして。
900774ワット発電中さん:2007/11/27(火) 15:14:28 ID:DdJKiamQ
>>899
どこかで聞いたことある話だと思ったら>>442か。
アクチュエータは必要なくなったの?
901774ワット発電中さん:2007/11/27(火) 15:34:34 ID:k3JuK5Wx
前にも同じ話を聞いたな
PICスレなんてここしかないんだから特定されるぞ
902774ワット発電中さん:2007/11/27(火) 15:35:54 ID:JqMz585T
>>900
いや、アクチュエータは振動するモーターを使ってます。
一応回路を書いてみたんですが、入出力ポートをフルに使っていて、
見づらかったんで少しでも減らせないかなと思って、
減らせそうなTD62083の部分のことだけを書いて質問しました。
903774ワット発電中さん:2007/11/27(火) 16:00:58 ID:j8+C/PAm
>> 902

まずはそれをうp
904774ワット発電中さん:2007/11/27(火) 16:25:29 ID:DdJKiamQ
>>902
そっか。
他についてるものが無いなら877じゃなくて84Aで何とか
収める方向もありかと思ったけど、それじゃ無理だね。
905774ワット発電中さん:2007/11/27(火) 16:39:05 ID:Or+iyJWh
>>903
今は普段からネットに繋げる環境になく、テストもあるのでUPするのは結構あとになりますが、できたらUPします。
906774ワット発電中さん:2007/11/27(火) 16:52:27 ID:v5fgTi7I
>>905
16F84Aをデコーダがわりなんてつまんない。
どうしても16F84Aを使わなければならないなら、
16F84AにLEDの制御をやらせて、その他の処理を877に担当させるのは?
84Aと877は通信(or PORT)でやり取り。

907774ワット発電中さん:2007/11/27(火) 18:48:57 ID:dZ8Ev0AE
じゃんけんゲームしかしないなら、表示する画像(絵)の種類は限られてるんだから、
最初からそのような結線(表示するパターンごとに1port使用で済むような配線)をしてしまえば、
じゃんけんゲームで言えば、デコーダの類を使わなくても3ポートだけでマトリクスを制御できちゃうと思うんだけど。

こっちの方が結果的に手間が増えるだけかな。貴重なPICのポート消費は劇的に抑えれると思うけど。
908774ワット発電中さん:2007/11/27(火) 18:51:06 ID:k3JuK5Wx
char c = 0xFF;
PORTB = c;

これって
PORTBがすべて「同時に」1になる?少しずれる?
909774ワット発電中さん:2007/11/27(火) 19:05:57 ID:j8+C/PAm
1行目の方が気になるが、同時になる、と言い切っておく。
内部配線長がどうとか言わなければ。
910774ワット発電中さん:2007/11/27(火) 20:56:53 ID:Tv9PshZe
>>908
ちなみに、「ずれる」としたら、どっちにどうずれると思う?w
911774ワット発電中さん:2007/11/27(火) 23:53:40 ID:k3JuK5Wx
>>910
わからないけど実際にずれてる。
ナノ秒レベルで簡易DA変換を切り替えているがお城で見ると波形が一回下がってからあがる
やってみ
912774ワット発電中さん:2007/11/28(水) 00:33:23 ID:qUb252f5
>>911

ちょうどオシロつかってたんでやってみたが、ずれてるようには見えん。
外付けのCの影響じゃないの?
ナノ秒レベルって、1ナノ、2ナノのレベル?それならうちでは見えんし、ずれてるかも。
だが、それぐらいだったら許してやって欲しい気がするが、何か問題?
913774ワット発電中さん:2007/11/28(水) 00:36:07 ID:mgXENUel
遅延時間のばらつきなんてあって当然じゃないかと思うんだけど・・・
914774ワット発電中さん:2007/11/28(水) 00:40:55 ID:yfXRfg8I
また例の彼のような予感がする。
915774ワット発電中さん:2007/11/28(水) 00:43:19 ID:qUb252f5
http://aikofan.dee.cc/aikoup1/src/f0395.gif

LATG = 0;
TRISG = 0;
LATG = 0xFFFF;
LATG = 0;
LATG = 0xFFFF;
LATG = 0;
PORTG = 0xFFFF;
PORTG = 0;
PORTG = 0xFFFF;
PORTG = 0;
PORTG = 0xFFFF;

PIC24Fにて、32MHz動作時の波形。上からRG6、RG7、RG8
私的には十分に同時とみなせる。
916774ワット発電中さん:2007/11/28(水) 00:47:11 ID:R9p2Y/B3
32MHz / 4 = 8MHz
1 / 8 = 125 ns
2命令 * 125 = 250 ns

dsPIC33の80Mhzでやってみてくれ
917774ワット発電中さん:2007/11/28(水) 01:01:54 ID:ADtwM5v5
世の中に「同時」などというタイミングは存在しない。
・・・と思ってプログラムなり回路なり設計したほうが安全だよw
918774ワット発電中さん:2007/11/28(水) 01:36:58 ID:hst5aeph
>>908
そりゃあ、たとえばダイのパッド部分で同時でも、ボンディングワイヤの
長さによって、ピンに出てくるタイミングはずれるとか、ピンにつながった
負荷によって変わるとか、そもそもパッド部分でも完全に同時とは
言えないとか、だいたいデジタルつーても所詮はアナログ回路なんだから
立ち上がり波形にも微妙に差があるなんていうレベルの話をしたいなら、
当然違う
919sage:2007/11/28(水) 16:24:11 ID:PWSIkQW9
このたび秋月でPIC24FJ64GA002を購入し16F648AからICSPでプログラムを書き込むソフトを作成しましたが
書き込み動作が低速なのでEnhanced ICSPにてPIC24Fに書き込みたいと思っています。
そこで質問ですがデータシートに記載があるProgramming Executiveのデータはどこに存在するのでしょうか?ご教授願います。
920881:2007/11/28(水) 19:21:13 ID:ADtwM5v5
やっと修羅場を抜け出した・・・
>>870の件、既に>>871-892で決着しているようだが、いちおう書いておく。

出力に設定したポートへのデータ出力にLATを使う場合とPORTを使う場合の違いは

1. いずれの場合も、出力したデータはすぐに(次の命令で)LATから読むことが
できる。PORTから読む場合は、データ出力後、少なくとも1命令サイクル空ける
必要がある。

2. 外部回路の条件によっては、出力したデータがPORTから読めるまでにさらに
時間を要する場合や、データが読めない場合もあり得る。(注:ポートの入力
スレッショルド電圧特性の違いから、dsPICやPIC24では、PIC16やPIC18と比較して
この状況は起こりにくい。)

3. BSETやBCLRはポートからのデータ入力を伴う命令なので、上記1.と2.から、
LATに対する実行では問題は発生しないが、PORTに対して実行する場合は、
前回のLAT/PORTへの出力から少なくとも1命令サイクル(2.の条件によっては
さらに長く)間隔を開けて実行する必要がある。間隔が十分でない場合、
BSETやBCLRの実行によって、BSETやBCLRが対象としていないビットの出力データが
変わってしまう可能性がある。

4. 上記3.の制限はBSETやBCLRだけでなく、PORTを対象とした(PORTからの
データ入力を伴う)演算命令すべてに当てはまる。たとえばAND, OR, XOR等。

5. MOVによるPORTへのデータ出力の場合、PORTからのデータ入力を伴わないので
上記3.の制限Vには当てはまらない。

他にも違いがあるかもしれんが、とりあえず主要なものはカバーしてると思う。
921 ◆xcrOSgS2wY :2007/11/28(水) 19:29:28 ID:ADtwM5v5
>>919
お、なんか俺がいるww
MPLABを標準インストールしたとき、C:\Program Files\Microchip\MPLAB IDE\ICD2
の中にある
  pe.hex
  pe24f.hex
  pe33f.hex
等がProgramming Executiveのデータだそうな。

これはMPLAB 6.xの場合。まだMPLAB 7.xはインストールしてないので、
7.xでも同じ場所かどうかは分からない。

ところで、この中に32PE.hexとか32DE.hexとかいうファイルがあるんよね。
中身を見ると明らかに16bit PICアーキテクチャじゃないデータなんでPIC32向けの
データかなと思うんだが、ファイルのタイムスタンプは2007年3月〜4月。
半年も前からデータだけは仕込んであったのか・・・
922774ワット発電中さん:2007/11/28(水) 21:39:52 ID:EUpWvvhv
>>856
CCS-Cで16F877(A),16F88,12F683を主に使用していますが、私のレベルでは
バグに気がつかない。

ICD2(Clone)も使用できる(Cソース)し、ライブラリも有るので便利。
923sage:2007/11/28(水) 22:06:25 ID:N7gqNCIG
>>921
ご回答ありがとうございます。私の環境はMPLAB IDE V7.6ですが同じ場所に
pe24f.hex が存在しました。こんな場所にあるなんて!!!
32*.hexについても同じタイムスタンプで存在していました。
大変助かりました。ありがとうございました。
924774ワット発電中さん:2007/11/29(木) 03:13:12 ID:UiBS8S/W
情報を知りたくてカキコします。

電子工作で温度によってモーターをON/OFFする装置を
電池駆動で作ろうと考えています。
自分でいろいろと調べてみた結果、picの16F873(=pic1とします)を使えば実現できると
わかって一から勉強中で、picライタはpickit2(microchipの80%キャンペーン使用)を
考えています。

一応最終的な目標としては、上記の基本からセンサーを
最終的には3〜4つに増やして、モーターON/OFFの設定値(=設定温度)は
他のpic(=pic2)に入れて通信させるか、パソコンから設定温度を送信して
設定できるようにと考えています。
それプラスできる限りtotalの部品代を安価で済ませたいと考えてます。
(これは努力目標なので、必ず達成しようとはしていませんが・・・)

そこで質問なんですが、上記の目標を達成するためにもっとも良いマイコンは
やはりpicの16F873なんでしょうか?もし他に何かあれば名前だけでも教えて
いただけないでしょうか?とりあえず手がかりがpicしかないので、picに限らず
いろいろと情報を知りたいです。

どうかよろしくお願いします。
925774ワット発電中さん:2007/11/29(木) 04:14:37 ID:NzKjZ7OS
>>924
その程度ならどんなマイコンでもそういうラインアップがあるので、
「ベスト」とかそういう話にはならないと思う。

ベストなチップを探す時間は、開発手法や設計・実装の勉強に使って
ベストな脳みそを作るのに振り向けるのが吉。

とりあえず選定条件としては

・シリアルかUSBがあって -> 他条件での選択幅の為にシリアルがよい?
・センサが内蔵か外付けか -> 将来増やす+配置自由度から外付け+I2Cバス?1-wire?
・モータの制御はどうする -> PWM?それとも単純なON/OFF?

な感じで、まとめるとUART+I2C+PWMxNがあればまあ足りるだろうとなる。
あとは各メーカのラインアップ比較表で上記3項目にチェックが入っている品を
拾って、その他の条件(クロック内蔵かとか、消費電力とか、大きさ、コスト、
開発環境、普及度、とかとか)で一番気に入ったものを選べばよい。

で、最初に書いたとおり、これくらいの機能で本当にいいなら満たせない
チップの方が珍しいので、PICなら製品シリーズとして今後も使っていけるだろうし
とりあえず買って後は頭を鍛えようよ、ということになる。
926774ワット発電中さん:2007/11/29(木) 05:21:18 ID:bVb86jMR
>>924
入手性、価格等だけで、これなら買えそうというPICを拾い出して、
入手性、価格等だけで順位を付けて一覧にしてくれ。

その中からその用途に使えそうなのを(みんなで)ピックアップしてあげるよ。
927774ワット発電中さん:2007/11/29(木) 05:27:13 ID:J0TuroXy
プログラムの組み方次第ではI/Opinさえ足りてればどれでも可能そうなんだがw
928774ワット発電中さん:2007/11/29(木) 10:19:52 ID:cekb17tC
質問です

ICD2を使っているのですが、ブレークポイントで止める度にダンプに数秒かかるのですがREALICEだとフルICE並にレスポンスは速いですか??
もうすぐセールも終わりそうなので購入するか悩み中です。
929774ワット発電中さん:2007/11/29(木) 10:22:38 ID:bVb86jMR
>>928
セミナーで聞いた話では、8ビットPICのデバッグ時には全く速度は変わらないそうだ。
16ビットPICでは速くなるそうだが、どのくらい速くなるかまでは不明。
(手元にあるんだが、まだ使ったことがないww)
930774ワット発電中さん:2007/11/29(木) 15:32:27 ID:TBWjb/80
>> 928
仲間発見!
遅さに耐え切れず数日前に注文しました。
まだ来てないのでレポートは出来ません。あまり変わらなかったら売り飛ばすかも。
931774ワット発電中さん:2007/11/29(木) 23:03:21 ID:fYk+QoAE
個人でCCS-SのPCH、PCM持ってる人っている? 前からずっと欲しくて
ボーナスが出たら買っちゃおうかなと思ってるんだけどPCHはC18があるし
買う意味無いかなぁとここしばらく悩んでる…
PCMの方は本家の14bit用のCが無料では使えないみたいなので買うつもりなんだけど。
USBでPCと通信するためのプログラムってC18とPCHならどっちが作成しやすいでしょう?
PCHの方が作りやすいなら思い切ってPCHも買っちゃおうかな
932931:2007/11/29(木) 23:04:08 ID:fYk+QoAE
あ、使用するのは100%趣味です。仕事じゃありません。
933774ワット発電中さん:2007/11/29(木) 23:45:34 ID:ZxHHeu8t
これってお布施必須のヤシ?
934774ワット発電中さん:2007/11/29(木) 23:48:54 ID:GpDSZPxf
>>931
SDCCで、がんばれ
935774ワット発電中さん:2007/11/30(金) 00:07:59 ID:iVSSa0/t
>個人でCCS-SのPCH、PCM持ってる人っている? 

持ってるけど買ってない。使ってない。ゎるぃことをιて手にぃれた。
通報しました。
通報されました。
936774ワット発電中さん:2007/11/30(金) 00:09:02 ID:YXNwRxmJ
俺もPCMをそのうち買うつもりだけどPCBはいらないよね?
937774ワット発電中さん:2007/11/30(金) 00:34:09 ID:ot2Miz0D
PCDは糞だった。
ウィザードからコンフィグを選択できるんだけど
そのPICに合ったものが無い。具体的にはFRC16PLLがない
938774ワット発電中さん:2007/11/30(金) 12:25:26 ID:tzKqf8lp
>>936
PCMにはPCBが含まれてて、PCHにはPCBとPCMが含まれてるんじゃなかったっけ?
939774ワット発電中さん:2007/11/30(金) 12:55:02 ID:YXNwRxmJ
>>938
PCWがPCB+PCM
PCWHがPCB+PCM+PCH(PCW+PCH)
940774ワット発電中さん:2007/11/30(金) 13:02:16 ID:tzKqf8lp
>>939
そうか、PCWの方だったか
d
941774ワット発電中さん:2007/11/30(金) 16:17:56 ID:9OjC2JRj
PCBはMPLABに入ってるがな。
942774ワット発電中さん:2007/11/30(金) 21:52:50 ID:ejJkuhQJ
秋月 PICマイコン dsPIC30F3012−30I/P  600円
943931:2007/11/30(金) 21:57:34 ID:vVglOGoJ
やっぱり個人で持ってる人はあんまりいないのかなぁ。
944774ワット発電中さん:2007/11/30(金) 21:58:58 ID:ot2Miz0D
だから無料で落ちてるって
スレ読み直せ
945774ワット発電中さん:2007/11/30(金) 22:03:18 ID:v396TJp6
要するに不正コピーで手に入れればただで手に入ると…
946774ワット発電中さん:2007/11/30(金) 22:05:46 ID:ejJkuhQJ
>>944
SDCC
947774ワット発電中さん:2007/11/30(金) 22:38:01 ID:pLCGTIyY
今日がサンプル最終日だな...

一回目のオーダーから30日たてばまたオーダーできるのか?
20日くらいにまとめてオーダーしたからもう手遅れorz
948931:2007/11/30(金) 22:43:58 ID:vVglOGoJ
SDCCかー。存在は知ってたんだけど、中身は全然知らないんですよね。
みなさんお勧めですか?
949774ワット発電中さん:2007/11/30(金) 22:53:00 ID:YPP1U3YR
>>947
もちろんできる。そう書いてあるじゃん。
でも、残念だったねw
950774ワット発電中さん:2007/11/30(金) 23:16:19 ID:ADWXZBLe
高々数百円の無料サンプルをつかって製作納品ですか?
浮いたお金でたばこでもかうきですか?
951774ワット発電中さん:2007/11/30(金) 23:27:20 ID:pLCGTIyY
残念ながら未成年だからタバコは買えない。それに仕事でもないのす。
16bitPICはまだ通販だとなかなかないから、将来使う(だろうと思う) 分も含めていくらか調達。
あとアナログICとE2PROMをいくらか。
数百円ずつでもお金の節約に越したことはないですしね。

まあ、これ以上あっても使いきれなくなりそうだから、3回目が無くて良かったかもしれない。
952sage:2007/12/01(土) 17:38:14 ID:uDh2iL7b
PIC24Fのライターを自作しているのですが、誤ってDiagnostic and
Calibrationデータを消してしまいました。。
どなたか、8007F0H〜8ワードのサンプルデータをご教授いただけないで
しょうか?デバイス依存なのは理解していますが、現状PIC24Fが一個しか
無く初期値(FFFFFFH)よりはましだと思うので。
953774ワット発電中さん:2007/12/01(土) 19:15:35 ID:xIqvjM/Q
>>952

どれはどうやって見たらいいの?テーブルリードしないとダメ?
954936:2007/12/01(土) 20:42:54 ID:OJ/8sFEG
936だけどSDCCというのは知らなかった

で、いままで作ったPICCLiteのソースをいじってコンパイルしてみて
なんとか動かしてみた。


浮動小数点の計算させるとリンクでエラー出るのは単なるメモリー不足なんでしょうか?
>message: using default linker script "C:\Program Files\gputils\lkr\12f675.lkr"
>error: no target memory available for section "code_b"
PICCLiteだと容量半分も使わずに済んでたソースなんだけど
955774ワット発電中さん:2007/12/01(土) 21:56:58 ID:I4BwMLUC
>>924
似たようなことAVRでやろうとしてる
956774ワット発電中さん:2007/12/01(土) 22:02:11 ID:E4thFsub
>>952
オレの秋24F
:020000040100f9
:100fe000ffffff00ffffff00ffffff00ffffff000d
:100ff000ffffff00ffffff00ffffff007dfaff0084
957774ワット発電中さん:2007/12/01(土) 22:12:26 ID:6/t9zvAM
バーゲンが終了し(実はまだこっそり続いてるのかもしれないが)、
それに連動するかのようにスレの寿命ももうすぐ尽きる。
>>31のような異論もあったが、結果としてはタイミング良かったな。
次スレのサブタイは何にするかね・・・
958774ワット発電中さん:2007/12/01(土) 22:16:39 ID:zMa6RouA
前からおかしいと思っていたんだけど
http://ww1.microchip.com/downloads/en/DeviceDoc/70046b_jp.pdf
http://www.picfun.com/pic18/mod18x16.html
この資料によるとdsPICで内臓発振の16倍120MHz動作ができないことになっている。

http://ww1.microchip.com/downloads/en/DeviceDoc/70139E.pdf
これにはFRC PLL 16xが書かれているし
上の資料にはなかったHS/2 w/PLL 4,8,16x、HS/3 w/PLL 4,8,16x
も書かれている
FOSCのコンフィグレーションレジスタの内容も違う

どちらが正しいのでしょう

あと、HS/2 w/PLL 16xを12MHzのクリスタルで使う場合は
12/2*16=96MHzで動作するということでいいのでしょうか
microCからHS/2 w/PLL 16xのオプションをONにしていますが
なぜかFRC PLL 16xで動作してしまいます。
普通のHSモードでは12MHzで動作するので発振していなくて
内部動作に切り替わっていることは無いと思います。FSCMもOFFにしてあります。
959774ワット発電中さん:2007/12/01(土) 22:35:00 ID:zMa6RouA
960774ワット発電中さん:2007/12/01(土) 22:45:14 ID:6/t9zvAM
>>958
http://ww1.microchip.com/downloads/en/DeviceDoc/70046b_jp.pdf
http://ww1.microchip.com/downloads/en/DeviceDoc/70139E.pdf

どちらも、書かれた時点で正しい情報が記載されている。そして、「書かれた後で
新たに追加された情報が記載されていない状態」を「正しくない」と呼ぶのであれば、
前者は現在、正しくない。

でもまぁ、この場合、正しくないのは「古い文書の内容」じゃなくて「古い文書を
基準とする行為」だろうな。
961774ワット発電中さん:2007/12/01(土) 22:49:01 ID:6/t9zvAM
翻訳版の場合、「書かれた時点」は「翻訳前の原稿が書かれた時点」まで遡る
(場合が多い)から、なおさら情報の古い可能性が高まるね。

ってか、PICの日本語版データシート初めて見たw 読みづれーww
962774ワット発電中さん:2007/12/01(土) 22:52:40 ID:zMa6RouA
http://www.google.com/search?q=%22HS/2%22+%22PLL%22+%22dsPIC%22+-pdf&hl=ja&lr=&filter=0

I have one other question. I got some 14.7456 MHz from SFE, since I couldn't find any 7.3728 Mhz crystals
like you show for the 4011 in the dualPIC schematic. I checked the 30F family reference manual and
there is an HS/2 with PLL of 4x, 8x, or 16x oscillator mode. Could I use that mode with these 14.7456 MHz
crystals without having to change anything else? I'm ready to connect a 4011 up with a 4620 in my breadboard
now that I have I2C working. I think I can handle the rest once I get the oscillator configuration for the 4011 setup.

同じことを考えていた人がいました。

I set it to XT_PLL8. I have a heartbeat from the 4011 now. I2C is connected and I put the SCI stuff back
into the 4620 code. Now I just have to get a level shifter for the 4620's serial port so I can use printf()
to see what's happening inside when I try to talk to the 4011.

この後この人はXT PLL8をつかったようです。
私もXTでやってみたところ一応動きました。
しかしデータシートにはXTの入力クロックは4-10MHzと書かれているので
規格外の動作になるのでしょうか
963774ワット発電中さん:2007/12/01(土) 23:10:25 ID:6/t9zvAM
>>962
データシートに記述された範囲を超えているのであれば規格外と考えるのが相当。
964774ワット発電中さん:2007/12/01(土) 23:41:17 ID:xIqvjM/Q
>>952,956

気になってみてみた。

---------0--------2--------4--------6--------8--------A--------C-------E-------
0x8007F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 FF FF

0xFFばっかりなんだが、これって変なの?今まで気にして見た事無かった。
物は、DIRECTで買った24F128GA006
965774ワット発電中さん:2007/12/02(日) 00:06:16 ID:R7pL6AqI
内蔵クロックでも外部クロックでも同じ様に使えるように
7.3728 MHzのクロックをDigiKeyで50個ほど買いましたw
どちらも*16PLLで動作することは確認済みです。
966774ワット発電中さん:2007/12/02(日) 00:19:16 ID:Xu3iDTtt
>>957
つ【無料サンプル】PIC専用スレPart17【続行キボンヌ】
つ【いつのまにか】PIC専用スレPart17【中身がMIPS】
つ【変態から】PIC専用スレPart17【真人間へ】
つ【ツール安いよ】PIC専用スレPart17【チップも安いよ】
967774ワット発電中さん:2007/12/02(日) 00:23:52 ID:usRG/9hS
>>952
80 0000h〜80 07fdhはExecutive Codeだから、誤Eraseで失われるのは
80 07feh〜80 07ffhのCalibration Wordのみ。

>>964
読み出しデータは4バイトごとに00hが入る(24ビットのデータに00hを足して
32ビットのデータに見せかけている)から、>>964のデータはどこかおかしい。
多分、違うアドレスを見ているか、そもそも使っているソフトがそのメモリ
アドレスの読み込みに対応していない。
968sage:2007/12/02(日) 00:26:00 ID:FtoWtkK6
>>956,964
サンプルデータありがとうございます。0x807FEのデータは較正値なので
ここが違うと内部クロックを使用した場合の時間等に影響が出るのかなと
思っています。

とりあえず頂いた値を書き込んで使用したいと思います。
ありがとうございました。
969774ワット発電中さん:2007/12/02(日) 01:13:20 ID:BEPxFbui
>>967

3バイト単位で読んだんで0x00が入っていないのです。
以下の要領でぽちぽちと。

int main(void)
{
unsigned int add = 0x0000;
unsigned char byte1, byte2, byte3;

TBLPAG = 0xFF; // breakpoint

asm("tblrdh.b [%1], %0" : "=r"(byte1) : "r"(add));
asm("tblrdl.b [%1], %0" : "=r"(byte2) : "r"(add + 1));
asm("tblrdl.b [%1], %0" : "=r"(byte3) : "r"(add));

while(1); // ローカルウィンドウで値確認
}

やっぱいつの間にか消したのかな?
970774ワット発電中さん:2007/12/02(日) 01:28:40 ID:usRG/9hS
>>969
あーなるほど。そしたら、どうも値は消えたっぽいね・・・
971774ワット発電中さん:2007/12/02(日) 03:51:30 ID:BEPxFbui
質問です。

エラータのレビジョンは、メジャーレビジョンとマイナーレビジョンどっちで見るものなの?
972774ワット発電中さん:2007/12/02(日) 10:36:19 ID:usRG/9hS
多分、どっちで見るのかerrataの中に書いてある。
973774ワット発電中さん:2007/12/02(日) 15:12:11 ID:BEPxFbui
>>972
とうぜんエラータ見たが、書いてあるようには見えません。

The following silicon errata apply only to PIC24FJ128GA010 devices with these Device/Revision IDs:
<表>
The Device IDs (DEVID and DEVREV) are located at the last two implemented addresses in program
memory. They are shown in hexadecimal in the format “DEVID DEVREV”.
974774ワット発電中さん:2007/12/02(日) 16:19:14 ID:o9kkI9Jd
>>966
【真人間から】PIC専用スレPart17【変態へ】
のほうがいいな
975774ワット発電中さん:2007/12/02(日) 17:35:20 ID:s9KsWFH9
今まで自作のパラレルやシリアルのライタを使っていたのですが引越しの際に無くしてしまったようなので
その場しのぎにツェナーダイオードや昇圧素子を使わずにシリアルの5Vのみで16F84Aに書き込みしたいのですがどのような回路にしたらいいでしょうか?
976774ワット発電中さん:2007/12/02(日) 17:37:59 ID:cznGzq70
16F628Aなら・・・・
ttp://developer.s8.xrea.com/pic_programmer/

これで16F84Aもできたりしてw
977774ワット発電中さん:2007/12/02(日) 19:15:41 ID:s9KsWFH9
>>976
ダメもとで試してみたがやはりダメだった
まぁCMOSモデル向けの回路だから当たり前といえば当たり前…
978774ワット発電中さん:2007/12/02(日) 19:19:22 ID:c4X+xAi3
CMOSでないPICなんてあるん?
979774ワット発電中さん:2007/12/02(日) 20:30:07 ID:gylqdukq
てかPCとの相性は絶対に出るだろうな
980774ワット発電中さん:2007/12/02(日) 22:17:19 ID:TLhKBsXL
>>928です
レスくれた方ありがとうございました。
レスを見る限り劇的に速くなるわけではなさそうなので購入を諦めました。

>>930
届いたらレポよろしく!
981774ワット発電中さん:2007/12/03(月) 07:23:54 ID:v0c24Rq8
次スレ立てました。

【米粒から】PIC専用のスレPart17【32ビットまで】
http://science6.2ch.net/test/read.cgi/denki/1196633878/

すぐ思い出せるものだけになったんで足りてないとは思うが、コンパイラ販売元リストを
足しておいた。
982774ワット発電中さん:2007/12/03(月) 14:46:42 ID:v0c24Rq8
>>975
「シリアルの5Vのみ」ってのは、0V-5V出力のシリアルってことかね。
だとすると、0V/5Vをパタパタする出力をこの回路に入れると20V近く出てくる。
(無負荷の場合)
http://aikofan.dee.cc/aikoup1/src/f0409.gif
負荷がかかるとその分電圧は下がるから、適当に調節してくれ。
983774ワット発電中さん:2007/12/03(月) 20:45:48 ID:vNoR+6H+
>>982
パルス信号を交流と見立てて倍電圧整流とは気づかんかった…
でもこれだとWinのプログラミングできないときびしいな

俺が思うに一時的な利用なら
・006p*2でLM317(LM317すらないなら電池の持ちが悪くなるけど回路に対して直列と並列の抵抗入れる)
・乾電池の直列で13.5V、乃至は12Vを作る
この辺でいいように思う
984774ワット発電中さん:2007/12/04(火) 00:24:56 ID:4Fd8Wf3W
mikroC dsPICからプログラムを書いています。
コンフィグレーションビットを変更するとき

FOSCはチェックボックスから選択性
OSCCONbits.NOSC =

というようにするのですが
コンフィグレーションビットの内容とアドレスが違っています。
最新のものではないように思います。

例えば OSCCON (アドレス0742)では
OSCCONbits.NOSC
これは最新のデータシートではhttp://ww1.microchip.com/downloads/en/DeviceDoc/70138E.pdf (154ページ)
3ビットですがmikroCでは2ビットになっています。
また、OSCCONの中に3ビットのTUNがありますが、
データシートではOSCTUNという4ビットのTUNを含むレジスタがアドレス0744に新しく作られています。

hexを作った後に任意のアドレスのビットを書き換えるにはどうしたらよいのでしょうか?
OSCTUNを変更したいです。

MPLAB+C30では対応しているのでしょうか?
よろしくお願いします。
985774ワット発電中さん:2007/12/04(火) 09:13:48 ID:MX1/BQpt
なにこの流れ…
>>975
つ 通販
送料200円前後のところも結構あるから素直に必要な部品買え
986774ワット発電中さん:2007/12/04(火) 22:07:20 ID:B5EEnA7L
送料200円前後のところ?
987774ワット発電中さん:2007/12/04(火) 22:30:51 ID:9IG1G/Lp
>>986
普通郵便(定型/定形外)とかメール便とかが使えるところでってことでない?
988774ワット発電中さん:2007/12/05(水) 20:53:56 ID:tnXSoFz5
うめ
989774ワット発電中さん:2007/12/05(水) 21:20:21 ID:xZtP9cNv

990774ワット発電中さん:2007/12/05(水) 21:44:27 ID:LvnJEx4L
991774ワット発電中さん:2007/12/05(水) 21:49:36 ID:OHEiorQh
992774ワット発電中さん:2007/12/05(水) 21:50:07 ID:MJY+goUT
産めにご協力をお願いあふん
993ニシムラシュタイン:2007/12/05(水) 21:54:44 ID:rZtUV09x
朝にupしたのですが、画像ファイルがjpgでないと見れないとのご指摘
受けました。

ファイル名全て訂正しましたのでよろしく。
----------------------------------------------------------------

秋月のカラーグラフィックlcdをpicで試した。
他、秋月の sh7144のcpu単体のものから 実験回路ボードを作成した。
ライタも自作して、書き込みソフトもフリー 結構安くあがった。
他、picもxilink cpld の 書き込み機の自作と
書き込みソフトフリーソフトの組み合わせで まとめて買って さらに安くなった。

とりあえず、pic16f877a とcpld xc95108とsh7144 のi/o取り出しの
基本回路基板と それぞれのライタ の基板焼付け パターン図を
アップしておいた。いろいろ試したいが、それぞれで、書き込み機とか
買っていたら、財布が厳しくなるので作って実験してみた。

http://nisimuraxx.hp.infoseek.co.jp/sh7144.htm
http://nisimuraxx.hp.infoseek.co.jp/pic.htm
http://nisimuraxx.hp.infoseek.co.jp/xc95108.htm

他、picの場合 秋月のカラーグラフィックlcdも試してみた。

パターン図画像をftpでダウンロードできるように作成したのだが
無料hpのためか?? ftpのさせ方がよくわからない(サーバーのディレクトリ
構造の解説等が見当たらない)ので、とりあえず、httpでダウンロード
して、ブラウザから ファイル-名前を付けて保存 で 画像を保存できるようにしておきました。
とりあえずupした。

994774ワット発電中さん:2007/12/05(水) 22:18:27 ID:qqMoD+YW
マイクロチップPIC32 のマイクロ制御回路

マイクロチップは PIC の マイクロ制御回路(MCUs ) の32ビット系列を導入している。
新しい PIC32 家族は より強い性能と来、より大きい記憶は、複雑な埋め込まれた
設計の解決を助ける。


注意:
非英国のページは上がることができる不正確な翻訳自動翻訳ソフトウェアによって
発生する。

http://embedded-system.net/lang/ja/microchip-pic32-microcontrollers.html

wwwww
995774ワット発電中さん:2007/12/05(水) 22:29:51 ID:qoxYKW01
PIC16F88でUSARTを使用した送信について質問です

MPLAB SIM を使用してテストしているのですが
1. 非同期8bitに設定にてデータ送信する
2. 送信データはメモリより順番に取ってくるようにプログラム
3. データ送信途中で割り込みを発生させる(設定伝送速度より算出した8bit長より短い時間)

と、1データ目は送信できるのですが、2データ目以降の送信前チェックで TRMTビットが"1"になりません

割り込みを停止させれば2データ以降も送信可能です
これよりプログラムは一応正常とした前提でですが

これはシミュレータだからなのでしょうか
実物でもそうなのでしょうか

なお、受信は途中で割り込みがあっても処理できます
もしかして、受信側のほうが変なのでしょうか

PICが手元に無いため実際のテストが出来ません
ご教示いただければ助かります
996774ワット発電中さん:2007/12/05(水) 23:24:27 ID:5NJcno2x
>>995
シミュレータにかけたソースコードをアップロードしてもらえれば誰か
検証してくれるかも。
それから、このスレはもうすぐ終わるから次スレへ・・・

【米粒から】PIC専用のスレPart17【32ビットまで】
http://science6.2ch.net/test/read.cgi/denki/1196633878/
997774ワット発電中さん:2007/12/05(水) 23:44:26 ID:nvOiAu2o
というかもう埋めよう
埋め
998774ワット発電中さん:2007/12/05(水) 23:46:31 ID:GNBOV3/u
うめー
999774ワット発電中さん:2007/12/05(水) 23:46:36 ID:qqMoD+YW
>>995
シミュレータだからでも実物がそうなのでもなく単にプログラムのバグが原因、
という可能性がいちばん高い。
1000774ワット発電中さん:2007/12/05(水) 23:47:14 ID:GNBOV3/u
同意
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。