【超初心者】PIC専門のスレ【鬼プロ】

このエントリーをはてなブックマークに追加
1PIC16(´-`)774
アセンブラのアの字もわからない超初心者から
HEXが読めてしまう鬼プロフェッショナルの為のスッドレ(#゚Д゚)だ!ゴルァ

例の如く基本リンクだ
http://www.google.co.jp/
http://www.microchip.co.jp/
http://www.microchip.com/

またーりやっておくんなまし
SX関係もどーぞ
教えて君はとりあえずGoogleくらい使おう
2774ワット発電中さん:04/02/24 19:54 ID:271J9zjs
電子工作の実験室
http://www.picfun.com/

秋月電子通商
http://akizukidenshi.com/

千石電商
http://www.sengoku.co.jp/
3774ワット発電中さん:04/02/24 23:09 ID:Y2zX5R0Y
4774ワット発電中さん:04/02/24 23:43 ID:MvUo/fXc
●PIC・AVR 初心者のためのスレッド-3サイクル目●
http://science.2ch.net/test/read.cgi/kikai/1067082692/

PICプログラム教えてください。
http://pc2.2ch.net/test/read.cgi/tech/1066643187/
5774ワット発電中さん:04/02/25 00:07 ID:ddi1G3Cc
あら、機械工学板にもあったんでつか
6774ワット発電中さん:04/02/25 02:44 ID:XjADZcT+
ttp://www.luberth.com/analog.htm

これ作りたいんだけど・・・・・・・・・・・・だれか試しにつくってよ(w
7774ワット発電中さん:04/02/25 20:26 ID:NMN/fukY
作りたいなら作ってみればいいんでないかい?
8PIC わからん です:04/02/28 23:47 ID:XsuzISSN
MPASM Assembler を使ってプログラムを書き始めた者ですが、
宣言した変数への値の格納方法について 教えていただけませんでしょうか。

たとえば、CBLOCK で

CBLOCKH'0C';ファイルアドレス0Ch番地から変数を割り当てる
DATA1;(DATA1 は、0Ch 番地)
DATA2;(DATA2 は、0Dh 番地)
DATA3;(DATA3 は、0Eh 番地)
DATA4;(DATA4 は、0Fh 番地)
DATA5;(DATA5 は、10h 番地)
HENSU_X;たとえば変数(HENSU_X という変数 (11h 番地))

ENDC;CBLOCK終了

と ファイルアドレスを割り当てたとして、あるレジスタの値によって格納先を
変える良い方法は、ないものでしょうか?

たとえば、

MOVLWH'AA';リテラル AAh をWレジスタへ
MOVWFHENSU_X;Wレジスタの値を変数 HENSU_X へ 移動

と、したあと . . .

たとえば、Wレジスタの値が、

W = 1 なら HENSU_X の値を-> DATA1 へ格納
W = 2 なら HENSU_X の値を-> DATA2 へ格納


W = 5 なら HENSU_X の値を-> DATA5 へ格納する
と いった具合です。

BTFSC などで 分岐して そこで処理させることは、できますが、もっと
良い方法って ないものでしょうか? 詳しい方 いらしゃいましたら
教えていただけませんでしょうか。
(初めて使ってみてるのは、16F84A と いうICです) 長文すみません。
98:04/02/28 23:53 ID:XsuzISSN
▲名前 が、へんに なってしまった。(^^;
10774ワット発電中さん:04/02/29 00:01 ID:LwbmprLd
>>8
FSRに値ぶち込んで
INDFにデータ読み書きすれば良いのではないですか?
11774ワット発電中さん:04/02/29 00:22 ID:6cpjrvDT
>>8 こんなんどうよ?
 MOVLW   リテラル
 CALL     ADGET
 MOVWF   FSR
 MOVF    HENSU,W
 MOVWF   INDF
 GOTO    NEXT

ADGET
 ADDWF   PCL,F
 RETLW    DATA1
 RETLW    DATA2
 RETLW    DATA3
 RETLW    DATAn
漏れだったらこうするけど
まあ参考程度に
128:04/02/29 00:26 ID:DFZFHhkF
>>10 さん
早速のご返事ありがとうございます。
間接データアドレッシングのところを使うのですね。
資料をもう一度見ながら調べてみます。
解決できそうな気が 少ししてきました。
本当にありがとうございます。
138:04/02/29 00:36 ID:DFZFHhkF
>>11 さん ありがとうございます。
FSR レジスタ が、まだ理解できていない私には、難しすぎですが、
11さんの プログラムが、理解できるように がんばってみます。
ありがとうございました
14774ワット発電中さん:04/02/29 18:13 ID:tbB0Tmhh
秋月ピクグラマーVer4カッテキタヨー!
15774ワット発電中さん:04/03/01 00:33 ID:BHHFSV+g
>>14
俺も買ったよ!
でも気を抜いてチップ抵抗ずらしちゃった。
戻したら動いたから良かったけど。
16774ワット発電中さん:04/03/02 01:12 ID:hqJzOz+o
CCS社HPでPCWHの30日限定の無償デモ版を今更ですが、
見つけました。
これは30日を超えても再インストールすれば、再使用できる
ものなのでしょうか?ご存知のかたあれば、教えてください。
17774ワット発電中さん:04/03/02 01:39 ID:OPM872fy
>>16
可能か不可能かわかりませんが、良識ある大人のすることではありません。
良いと思うなら、ちゃんと買うべきです。
18774ワット発電中さん:04/03/02 07:29 ID:FfcGxTDV
>>17の言うとおり。
無償でCが使いたいなら、フリーをうたってる
Cコンパイラを使っていればいい。
19774ワット発電中さん:04/03/02 17:47 ID:WVCdEZ2Q
PICからPICに8ビットのデータを送受信したいです。
何種類かのシリアル通信用の機能が内蔵されてる
みたいですがなんていう機能を使えばいちばん簡単でしょう?
使いたいPICは16F819です。

また参考になるwebサイトがあれば教えてください。
20774ワット発電中さん:04/03/03 00:11 ID:lq/FLxd1
>>19 SSPモジュールをSPIとI2Cのどちらかで使うかってだけで
何種類もあるようにみえないが
21774ワット発電中さん:04/03/03 14:40 ID:DalrNFGQ
>>20
すみません データ−シートめくってたら何種類もあるように
見えてしまいました。
なんせシフトレジスタさえ触ったことがないのシリアルはむずかしー
22774ワット発電中さん:04/03/03 16:32 ID:wcmA76aY
おまいらどーやってアセンブラ覚えたんだよ
・゚・(ノД;)・゚・
なんだよMOVなんちゃらてよ
ううう・゚・(ノД`)・゚・わぁぁぁん
23774ワット発電中さん:04/03/03 19:06 ID:S14J6WJ6
ヨシヨシ
(゚д゚)つД`)ヒックヒック
24774ワット発電中さん:04/03/03 19:27 ID:znrMvi4l
>>22
アセンブラで挫折する位なら、Cから入った方が良いぞ。
周りのPGみてても、Cは知ってもアセンブラハアな香具師らばかりだし。
それでもそれなりのPG作れるわけだ。
なにか、簡単なものを作って(音系、光物)それをどんどん膨らませればよい。
そのうちにアセンブラに入り込んでいく気がするが。
ガンガレ
25774ワット発電中さん:04/03/03 19:32 ID:znrMvi4l
26774ワット発電中さん:04/03/03 22:10 ID:m6p42nl+
前、HI-TECH PICCの評価版インストールしたんだけど動かなかったんだよな。
使い勝手はどうですか?
27774ワット発電中さん:04/03/03 23:26 ID:JeG/NKP8
フン、どうせ俺はPA始めちまったよ。今更。。。。
28774ワット発電中さん:04/03/03 23:35 ID:C/nBzRi5
>>26
HITECのインストールできない問題がある。但し、展開後にMPLABに組み込み可能。
ここ嫁。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/index.htm
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/hitechc_inst.htm
今分かっている問題:
windows2000やWindowsXPのパソコンの環境によっては、setup.exeを実行すると、
アプリケーションエラーで前に進めない問題があります。
対策は、一回インストーラで展開されたものがあればよいので、
どうしても本家からDLしたものが、うまくインストールできなければ、
ここに一度展開してzipしたものがあるので、これを解凍して
cドライブに置いてください
29774ワット発電中さん:04/03/04 00:38 ID:xOf3uwxW
SDCCも、一応PIC対応になってる・・よね?
30774ワット発電中さん:04/03/04 00:54 ID:JFvaCyV3
>>22
アセンブリ言語わからなくて、これから新規の勉強ならPICはヤメトケ
31774ワット発電中さん:04/03/04 00:59 ID:YZV1Uy8x
>>30
(・∀・)カエレ!!
>>22
(・∀・)新規の勉強にPICはオススメ
32774ワット発電中さん:04/03/04 01:05 ID:DkkFvrNL
PIC勉強するなら、時計を作ってみることをお勧めするね
十分実用になるのが作れるし
>>22がむばれ
33774ワット発電中さん:04/03/04 01:41 ID:p/jJTQ6J
漏れは初めて作ったのがPWMを作るだけってやつで、時計は2番目。つか今作ってて、あとはハンダ付けすれば完成でつ。
34774ワット発電中さん:04/03/04 02:46 ID:jfRo1iRe
ソースきぼんぬ
35774ワット発電中さん:04/03/04 09:00 ID:WHruxJcD
漏れがはじめて作ったのはLEDが点滅するだけ。
2番目はADB/PS2変換アダプタだったなぁ。
MaceのキーボードとマウスをPCでも
使いたくて作った。
PIC一個じゃ漏れの実力ではうまくいかなくて、
2個使ってデータやり取りしながら処理させた。
確か完成まで二週間くらいかかったな。

もうMacもUSBになってしまったけどね。
3635:04/03/04 09:01 ID:WHruxJcD
あれ?MacがMaceになってる・・鬱
37774ワット発電中さん:04/03/04 10:53 ID:wSjf4Fou
main  mov  on_tim,#200  ;オン時間
    mov  off_tim,#50  ;オフ時間
    mov   repeat,#20  ;オン/オフの呼び出し回数
    call  pat_1
    goto  main
pat_1             ;オン/オフを呼び出すところ
    call   on
    call   off
    djnz  repeat,pat_1
    ret    
on mov loop_on,on_tim    ;オン時間を一回loop_onへ代入
on_1  mov  rb,#1
    djnz  loop_on,on_1
    ret
off mov loop_off,off_tim   ;オフ時間を一回loop_offへ代入
off_1  mov  rb,#0
    djnz  loop_off,off_1
    ret
3837:04/03/04 10:53 ID:wSjf4Fou
 今日は、大先生様方!
 ここ1ヶ月前から秋月電子で買ったPICライターとそのアセンブラ?で練習をしているものです。
色々うかがいたいことがあります。 今、LEDを光らせているのですが、高速でON-OFFをさせて明るさを調整してます。 
 例えば、下のプログラムでmainで指定した繰り返し回数(on_tim,off_tim)を直接on_1の中で扱うと
失敗します。(明るさが変わりません) この原因は何でしょうか?
3937:04/03/04 10:58 ID:wSjf4Fou
on mov   ;オン時間を一回loop_onへ代入
on_1  mov  rb,#1
    djnz  on_tim,on_1
    ret
/*こんな風にした場合のことです。*/
40774ワット発電中さん:04/03/04 11:17 ID:K4UGks0f
>>39の1行目の mov は消し忘れだよね?

on_1のループを抜けたとき、on_timは0。
on_1に2回目以降来るとき、
on_timは0になっているので明るさは変わらない。

>>37の場合はon_1のループに入る前にl
oop_onに値をいれてるから正しく動く。

PA使ったことないので間違ってたらごめんね〜。
4137:04/03/04 12:14 ID:L6fQbs3y
>>40様 添削ありがとうございます。
>>39の1行目の mov は消し忘れだよね?
*(゚Д゚)<ハイ先生! 気をつけます。
>>on_timは0になっているので明るさは変わらない。
設定値を一回目のループで使用してしまい、2回目以降は初期化されないと
言う理解で宜しいでしょうか!
42774ワット発電中さん:04/03/04 12:33 ID:jfRo1iRe
…。
なんか悔しいので漏れもMPASMで粘ってみる(w
43774ワット発電中さん:04/03/04 12:53 ID:K4UGks0f
>>41
おkだと思います。

どーでもいいけど、pat_1内でonとoffを呼んでるけど
pat_1内に直接書いちゃった方が良いんじゃないかと思った。
あと、loop_onとloop_offは干渉すること無いから一つで良いのでは。。
メモリが有り余ってるなら良いけど。
4433:04/03/04 12:56 ID:p/jJTQ6J
漏れも初めて作ったPWMのソースを貼ってみよう。

LISTP=PIC16F84
INCLUDE"P16F84.INC"
ORG0
MAIN
BSFSTATUS,RP0
CLRFTRISA
MOVLWB'11111111
MOVWFTRISB;
MOVLWB'00000011';TMR0
MOVWFOPTION_REG
BCFSTATUS,RP0

MAINLP
MOVFPORTB,0
MOVWF0C
MOVFTMR0,0
SUBWF0C,0
MOVFSTATUS,0
MOVWF0D
MOVLWB'00000001'
ANDWF0D,0
MOVWFPORTA
GOTOMAINLP
END
4533:04/03/04 12:59 ID:p/jJTQ6J
TABが消えちまった…見づらいけどSPACEに入れ替え。
LIST P=PIC16F84 ;
INCLUDE "P16F84.INC" ;
ORG 0
MAIN
BSF STATUS,RP0
CLRF TRISA
MOVLW B'11111111
MOVWF TRISB
MOVLW B'00000011'
MOVWF OPTION_REG
BCF STATUS,RP0

MAINLP
MOVF PORTB,0
MOVWF 0C
MOVF TMR0,0
SUBWF 0C,0
MOVF STATUS,0
MOVWF 0D
MOVLW B'00000001'
ANDWF 0D,0
MOVWF PORTA
GOTO MAINLP
END
4642:04/03/04 14:36 ID:jfRo1iRe
_| ̄|○ なんか無力さが悲しい
47774ワット発電中さん:04/03/05 21:43 ID:Bd+5+p1Z
○|_| ̄
とりあえず寝れや
48774ワット発電中さん:04/03/07 13:17 ID:YUGdu4TO
後継スレage
49 ◆ofP4/J0ADg :04/03/07 19:48 ID:5Jdpxz16
5026:04/03/08 00:07 ID:boOcgKvg
HI-TECH C、再度インストールしたらできました。

MPLAB 4.12.12
HI-TECH PICC Lite V8.02 PL1
をインストールして、
www.gifu-nct.ac.jp/gakuseikai/club/brass/nannda/pic/pic.htm
のようにいじってもMPLABのバージョンが古いせいかだめでした。そこで下記のような試行をして動くようになりました。

インストール時に作られたregdll.batの中で、regsvr32のパスが指定されていなかったので、
C:\WINDOWS\SYSTEM\regsvr32 Suite_HITECH16.dll
のように指定した。実行してみた。その後MPLABを立ち上げて、

Project→Install Language Tool→
Language Suite:HI-TECH
Tool Name:PIC-C Compiler
Executable: CコンパイラのPICL.EXEのパスを指定
Project→New Project→Language Tool Suite:HI-TECH
(このメニュは後からEditできないので、Newで作るときに指定する)

これで動いた。今度アセンブラ出させて素性しらべてみよっと。
51774ワット発電中さん:04/03/08 12:54 ID:ADUXxScy
>>50
単に MPLAB 古すぎなんじゃ……
v6.x 使えとは言わんけど、せめて v5.70.40 使えば問題ないんじゃ?
52774ワット発電中さん:04/03/08 18:28 ID:6zfFI4uA
だれか面白いもん作ってよ
53774ワット発電中さん:04/03/08 21:34 ID:fsATIaMg
本当に面白い物はここに書けない悪寒

俺は大学の春休み利用してジャンク屋で買った基板から汎用IC取って、
PICに繋いでいろいろ試して勉強してる。経済系の学部だけど。
54774ワット発電中さん:04/03/08 23:40 ID:Qg+89vzk
よく7セグLEDなんかを使う時

GET_DATA
          ADDWF   PCL,F          ;PCレジスタに数字を加えてジャンプ
          RETLW   B'00000000'      ;Code 0
          RETLW   B'00000000'      ;Code 1
・・・・
          RETLW   B'11111100'      ;Code 8

てことやりますよね。でも良く考えたら一番初めの命令のプログラムカウンタが
255とかだったらまともに動きませんよね。これ問題のある使い方では・・

今回255個のデータを用意したのですがどうしたらうまく意図したデータをもって
帰れるでしょうか?
55774ワット発電中さん:04/03/09 00:02 ID:jLxMegLz
>>54
半分ずつに分けて、おのおの
org 0x100
org 0x200
とかで分けて拾ってくる。255個一気は無理。
56774ワット発電中さん:04/03/09 00:11 ID:uLpUjd5U
>>55
なるほど
何気に使ってたORGを使えばいいのですね!
250個ぐらいにして使ってみたいです。
ありがとうございました!
57774ワット発電中さん:04/03/09 00:43 ID:jLxMegLz
255なら、0〜254だから大丈夫か…
58774ワット発電中さん:04/03/09 01:29 ID:uLpUjd5U
          ORG       0x100
GET_DATA   ADDWF     PCL,F        ;PCレジスタに数字を加えてジャンプ
          RETLW     B'00000000'     ;Code 0
          RETLW     B'00000000'     ;Code 1

こうやったらADDWFの命令を実行するとWレジスタ+1番地に飛んでしまいます。
(MPLABのシミュレーターで)デバイスは16F84Aです。

プログラムカウンタをウォッチしてみると上位ビットが0のままで変化しません。
無理やりPCの上位ビットを1にしてやると思うように動作しました。

なぜでしょう?見落としがあるのかなあ もしかしてバグ?
59774ワット発電中さん:04/03/09 02:11 ID:jLxMegLz
>>58
PCLATHセットしとかないとダメっすよ。PCL弄ると、PCLATHから上位ビット読まれるから。
60774ワット発電中さん:04/03/09 05:03 ID:uLpUjd5U
>>59
何度もありがとうございます。
やっと完成しました。(ソフトだけ)
プログラムカウンターなんて気にしていじったことなかったので
結構悩みました。

AVRはもっと使いやすいのかなあ?

ちなみに棒の先にLED16個つけて振ると
文字が浮かび上がるのを作ってます。
後2つシフトレジスタと2Kワードくらいのメモリつんだ
PICがあれば解像度的にもっときれいなのが出来そうだ
61774ワット発電中さん:04/03/09 15:23 ID:xZWt5oVh
○_○
○○○  ←LED7個
○_○

これで電子サイコロ作ってよぉ〜ジタバタジタバタ
62774ワット発電中さん:04/03/09 21:53 ID:CTnr73r/
>>61
そんなもん自分で作れない奴は才能無いから
電子工作なんてやめたほうか吉。
63774ワット発電中さん:04/03/09 21:56 ID:XjI/IYIu
64774ワット発電中さん:04/03/10 17:35 ID:ZecZXp2r
>>62
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
>電子工作なんてやめた"ほうか"吉。
65774ワット発電中さん:04/03/10 18:16 ID:lraJRBgJ
>>64 >>62
そんなにいぢめるなよ。
これを見つけたよ。日本語プログラム。まるでぴゅー太。しかし、実力はおそろしい。
フリーソフト

http://hima.chu.jp/
66(´∀`∩) ◆R4000nX4Mk :04/03/10 18:19 ID:x20c8r7p
 うぁ久々に見たら進化してますね。>>65
6750:04/03/10 21:51 ID:Pu+T6FZR
>>58 ->>59 PCLATHセットしとかないと
ほらだからあきらめてCコンパイラにしなさいって
68774ワット発電中さん:04/03/10 22:11 ID:oURKaDEU
Cコンパイラ使うとアセンブラに比べてどのくらい楽になりますか?
アセンブラから入ったのでCでPICをいじる感覚がいまいちつかめないです。
69774ワット発電中さん:04/03/10 22:53 ID:ZZx5fOR5
アセンブラで十分だよ
演算ルーチンダウンロードして使ってるから
16BIT演算だろうが32BIT浮動小数演算だろうが
ちょっと面倒だけどできるようになったし

前迷ってたのも

             ORG     0xFC
GET_DATA_TOP   MOVLW   H'01'
             MOVWF   PCLATH
             MOVF    NUM,W
             ADDWF   PCL,F          ;PCレジスタに数字を加えてジャンプ
             RETLW   B'11111111'       ;0
             RETLW   B'11111111'       ;1
             ・・・
             RETLW   B'11111111'       ;255

こうやれば256個までならできるようになりました。



でもC使ったことないので
トランジスタ技術のおまけのH8でCを勉強しようと思ってます。
PICのCってそんなに便利?
70 ◆2sc380BR9U :04/03/10 23:30 ID:Mn51DwGA
>>54 >>69
テーブルデータの扱いで、PCLATH からみで嵌る人多いね。

ttp://www.microchip.com/1010/suppdoc/appnote/all/an556/
これ読みゃ256越えもpage越えも怖くはありません。

WEBのPIC製作記事なんか探してみるより本家のアプリケーション
ノート読んでたほうがよっぽど効率的ですぞ。
71774ワット発電中さん:04/03/10 23:48 ID:wSwfI0U2
英語わがんね
72774ワット発電中さん:04/03/11 10:11 ID:vx3Gd5CE
>>69
Cを使ったら、アセンブラなんて使う気も起きません。
自分はhitec c liteを使っています。
73774ワット発電中さん:04/03/11 10:47 ID:nrGbgbMW
>>65
> 値段を、ローカル変数。
> 2の、乱数。値段は、それ。
日本語だとかえってわかりにくくないかい(´Д`)
74774ワット発電中さん:04/03/12 00:47 ID:ajTmvx4P
スイッチ一つでPWMのデューティー比を、
スイッチON
デューティー100%
スイッチOFF
2秒以内にスイッチON
デューティー50%
スイッチOFF
2秒以内にスイッチON
デューティー25%
のようにするにはどのようにしたら良いのでしょうか。
ディップスイッチなどで抵抗値を変えてデューティーを変えるような
例ばかりで見つかりませんでした。

75774ワット発電中さん:04/03/12 01:30 ID:18/ov/Rs
>>74
このPWMサンプルを改造すれば何とかならない?
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/pwm1.htm
LED1を0から127まで切り替えているから、これを
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/bin/pwm1.txt
スイッチの判定文にして、
if( ( GPIO3==0 )&&(mode =1 ) { led1 =64;mode=2};while (gpio3==0);
if( ( GPIO3==0 )&&(mode =2 ) { led1 =0;mode=3}; while (gpio3==0);
if( ( GPIO3==0 )&&(mode =3 ) { led1 =127;mode=1}; while (gpio3==0);
見たいにすればいいとか?
76774ワット発電中さん:04/03/12 01:56 ID:bWS4hI9A
>>74
懐中電灯でも作るのかなあと想像してみたり

とりあえずフローチャートを作ろう
PICはCCPってゆう機能のついたやつがいいなあ
この機能があるとCCP1Lレジスタに255を代入すると
DUTY比100% 0を代入するとDUTY比0%になり簡単


1
SW=ON?
YES 2にジャンプ
NO 1に戻る

2
DUTY比を100%にする
SW=ON?
YES 3にジャンプ
NO 2に戻る

3
DUTY比を0%にする
タイマカウンタから1引く
カウンタ=0?
YES 1にジャンプ
NO 次の命令
SW=ON?
YES 4にジャンプ
NO 3に戻る

4
DUTY比を50%にする
SW=ON?
YES 5にジャンプ
NO 4に戻る

5以降は3と4の繰り返し(DUTY比だけ変えて)
77774ワット発電中さん:04/03/12 01:56 ID:18/ov/Rs
ところで、さっきのサイトのBBSみていたら、もうMPLAB6.43出ているんだね。
http://www.microchip.com/1010/pline/tools/picmicro/devenv/mplabi/mplab6/11135/index.htm
78774ワット発電中さん:04/03/12 02:14 ID:wq3Awx3r
PICのCCPって、Dutyの0%,100%は出せなかったんじゃ?
わずかに波形が出てしまうと記憶していますが
79774ワット発電中さん:04/03/12 02:22 ID:bWS4hI9A
>>78
PICのCCPは10ビットの分解能があります。
CCPR1L(上位8ビット)
CCP1CON,5-4(下位2ビット)
なので上位8ビットしかいじらなければ
DUTY比0%でもわずかに波形が出てしまったり
DUTY比100%のつもりでも99.6%だったりします
下位の2ビットもいじってやれば問題ないと思いますよ
80774ワット発電中さん:04/03/12 07:56 ID:V7fr9i9W
速度が要らず計算が必要で、かつ無理やり計算しなくていいようにテーブルでごまかそうとしても
数が異常に増えそうだとCがうらやましくなる。
8174:04/03/12 11:13 ID:ajTmvx4P
>>75
>>76
ありがとうございます。
かなり素人な質問なんですが、スイッチをOFFにしたのにpicのタイマカウンタ
は働くのでしょうか。それともpicのために別な電源が必要なのでしょうか。
picでパルスをつくりFETでスイッチングを考えています。

          ●-------------------------------------抵抗-●----    
| |
| PIC   GND |
-----------D-----●--●-●-1 8-●------------●--------- | -----
| C | | 2 7 |       | |
電池 D C = | 3 6 | | |
| C | ●-4 5- | -----抵抗--FET---------●
スイッチ-----コ--------●------------●
      ン GND


下のような調光器をDCコンで動作するものを考えています。
これをDCコンもろともスイッチ一つで。
ttp://modrock.hp.infoseek.co.jp/
8274:04/03/12 11:14 ID:ajTmvx4P
失敗した....
8374:04/03/12 11:16 ID:ajTmvx4P
          ●-------------------------------------抵抗-●----
| |
| PIC   GND |
-----------D-----●--●-●-1 8-●------------●--------- | -----
| C | | 2 7 |       | |
電池 D C = | 3 6 | | |
| C | ●-4 5- | -----抵抗--FET---------●
スイッチ-----コ--------●------------●
      ン GND
8474:04/03/12 11:17 ID:ajTmvx4P
あれ、できない....
アスキーアートって難しい....
8574:04/03/12 11:21 ID:ajTmvx4P
もう一回...

          ●-------------------------------------抵抗-●----
| |
| PIC   GND |
-----------D-----●--●-●-1 8-●------------●--------- | -----
| C | | 2 7 |       | |
電池 D C = | 3 6 | | |
| C | ●-4 5- | -----抵抗--FET---------●
スイッチ-----コ--------●------------●
      ン GND

ダメだったらもうやめます....
86774ワット発電中さん:04/03/12 11:27 ID:bWS4hI9A
半角スペースはたくさん入れても1個にしかならないとおもわれ
全角スペースを使うべし
8774:04/03/12 11:35 ID:ajTmvx4P
          ●-------------------------------------抵抗-●----
          | |
          |     PIC     GND |
 -----------D-----●--●-●-1  8--●--------------●------ | -----
 | C    | | 2  7 |       |     |
電池 D   C = | 3  6 |       |     |
 | C    | ●-4  5- | -----抵抗--FET---------●
スイッチ-----コ--------●------------●
       ン      GND
8874:04/03/12 11:41 ID:ajTmvx4P
          ●-------------------------------------抵抗---●----
          |                       |
          |      PIC     GND         |
 -----------D-----●--●---●-1  8--●--------------●------ | -----
 |     C    |  | 2  7 |       |     |
電池     D   C=  | 3  6 |       |     |
 |     C    |  ●-4  5- | -----抵抗--FET---------●
スイッチ-----コ--------●------------●
      ン      GND
89774ワット発電中さん:04/03/12 11:45 ID:V7fr9i9W
AAエディタ使えよ
9074:04/03/12 11:47 ID:ajTmvx4P
          ●-------------------------------------抵抗-----●----
          |                        |
          |      PIC     GND          |
 -----------D-----●--●---●-1  8--●--------------●-------- | ----
 |     C    |  | 2  7 |        |     |
電池     D   C=  | 3  6 |        |     |
 |     C    |  ●-4  5- | -----抵抗----FET---------●
スイッチ-----コ--------●------------●
       ン       GND
9174:04/03/12 11:49 ID:ajTmvx4P
あー、もうやだ。どうやってもずれる。
これでわかってください......
92デム(ry :04/03/12 12:07 ID:C2wDsHkq
>>74
2ch用AAエディタは此処に逝ってダウソロードし解凍汁!
http://aaesp.at.infoseek.co.jp/

AAの書き方見本スレは此処
http://science2.2ch.net/test/read.cgi/denki/1072100443/l50

9374:04/03/12 12:29 ID:ajTmvx4P
               ┌-------------------------------------抵抗-----●----
               |                                     |
               |          PIC     GND                 |
┌----------D-----●---┬---●-1  8---●--------------●----------∩----
 |        C         |   |  2  7   |            |          |
電池       D       C=   |  3  6   |            |          |
 |        C         |   └-4  5--∩-----抵抗----FET-----------┘
スイッチ----- コ----------●--------------┘
         ン       GND
94774ワット発電中さん:04/03/12 13:25 ID:PbqDGc3d
新手の荒らしかw
95774ワット発電中さん:04/03/12 13:48 ID:dooIH2JO
74はあぼーんします。
96774ワット発電中さん:04/03/12 14:13 ID:tADknzlH
>>93>>75
乙。
8ピンタイプならCCPの無い12F629/12F675が候補だね。
それなら、ソフトPWMだから、どっかに書いてあったHITECH-Cのソースが
参考になるよ。あれは127段階だったけど、自分で256段階とかもっと
それ以上のステップを作れると思うよ。
97774ワット発電中さん:04/03/14 07:00 ID:mJQ4OK8r
どうも、MPLAB6.43とHI-techPIC Cでは、デバッガのシミュレーションで
Cのソースコートによる、リアルタイムanimateデバッグができないらしい。
MPLAB6.42が安定しているとの事。
自分も試したら、あらら緑色の矢印がでなくなったよ。
http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1060489554/
98774ワット発電中さん:04/03/14 18:25 ID:/jgZx5gP
ttp://science2.2ch.net/test/read.cgi/denki/1075302609/745より転載します

745 名前:CLRF TMR1L 投稿日:04/03/14 04:24 ID:Vi0TuBWy

PICマイコンのTMR1を外部入力の計数カウンタとして
使用する場合、まず最初にエッジの立下りが無いといけない、
というのはデータシートにも書いてあるのですが、
TMR1がONの状態でTMR1HレジスタやTMR1Lレジスタに00H
などを書き込んだ場合にも、同じことが起こってしまい困っています。
TMR1がON状態でTMR1Lなどに値を書き込むのはやはり邪道なのでしょうか?
TMR1を計数カウンタとして使用するには、TMR1H,TMR1Lレジスタをクリアせずに
増分のみを監視するしか方法が無いのでしょうか?
同じ経験をした人がいたら助けてください。おねがいしまふ。

・・・・というか激しくスレ違いの予感が
99745:04/03/14 18:52 ID:Vi0TuBWy
>98

転載ありがとうございます!
100774ワット発電中さん:04/03/14 19:28 ID:0Fl6lTd0
>>98
TMR1L/Hを読み書きする時にはTMR1を止めろとデータシートに書いてある。
ちゃんと嫁。
101熱暴走 ◆2SA784NN.A :04/03/14 21:31 ID:YY+5HB1A
えーと、なんだかよくわからないけど、ここに簡易DVMのHEXを貼っときますね。

:020000040000FA
:1000000064008A0183017428F0000308F1008C3039
:100010008100AD0B0F28FA30AD000130AE061E3066
:1000200085002C0A0339AC008207192835283A28A4
:100030003F28AF1C24282408A0002508A10026087A
:10004000A2002708A300AF01200886000E3085001B
:100050002F1844281F1944289E3084000008A80047
:100060001E08A9001F152F144428210886001630E9
:1000700085004428220886001A3085004428230879
:100080002E0486001C3085000B1171088300F00ED1
:10009000700E09000F398207DE3414347A34763456
:1000A000B434E634EE34D434FE34F634FC34AE34B6
:1000B000CA343E34EA34E8342A088002840A2B0821
:1000C0000318682880020318672880036928013014
:1000D0008002840308002A088007840A0318800A23
:1000E0002B088007840308008F30840020308000B4
:1000F00081308400CF30800001309F009F30840029
:100100008E30800003309400DE308500853084001E
:10011000A13080008601863084008001F4308100A7
:10012000303090007B309200AC0101302D08AE01E0
:10013000AF010730A9006030A800A0308B002F1C51
:100140009F28050820390319A8280310A90CA80C1A
:100150000130A7000330AB00E830AA00283084004B
:100160005C200318B5286B20A7012708031D4A202F
:10017000A700A601AB016430AA00A60A5C20031800
:10018000BD286B20A60326080319A708031D4A20D3
:10019000A600A501AB010A30AA00A50A5C2003183D
:1001A000CD286B20A50325080319A608031D4A20A6
:0E01B000A50000084A20A4000230AF009F28DE
:02400E00513F20
:00000001FF

回路図は http://science2.2ch.net/test/read.cgi/denki/1072100443/102 あたりに...
102745:04/03/14 22:40 ID:fijPq8Ix
>100
ありがとうございます。英語データシートに
TMR1を一旦止めろと書いてあるのを確認しました。
ということは、TMR1をリセットする方法では、
正確な計数カウントはできないということですね。
増分のみを監視する方法でやってみます。
ありがとうございました。

103774ワット発電中さん:04/03/14 23:15 ID:rkHIfqSV
>>102
TMR1を止めて0000hを書き込んでスタートするのはOKでないの?
プリスケーラ小さくてそれでは狂いが出るなら0001とか補正値を
書き込んでスタートとか
104745:04/03/15 01:22 ID:R746c2Wp
>>103
実は、ものすごく遅いパルスを計数するので、
TMR1をONにした瞬間に入力がHighだった場合と、
入力がLowだった場合とで、補正値が0000にも0001にも
なりうるのです。他のデジタルポートでHighかLowか
監視するという方法もあるかもしれません。

105774ワット発電中さん:04/03/15 09:11 ID:DkObt7TS
>>104
そこまでいうなら差分・・だけど、読むときにも止める必要なかったっけ?
106774ワット発電中さん:04/03/15 10:34 ID:DkObt7TS
>>105
読むときは止める必要なかった。すまん。上位を読んで下位を読む間(又はその逆)に
インクリメントすることを考慮しなきゃならんだけだった。

107745:04/03/15 14:03 ID:R746c2Wp
>>106
Microchip社のErrattaリストによると、TMR1H/Lを読むだけで、
正常にカウントアップしなくなることもあるようです。(汗)
だんだんPICが解んなくなってきました・・・
108774ワット発電中さん:04/03/15 15:21 ID:DkObt7TS
>>107
なんか頭痛いね・・・もうTMRを計数につかうのやめて、
外部割り込みで16bit変数をincしたら?割り込み停止して読み出す。
割り込み停止期間にパルス来ても割り込み再開時ちゃんと割り込み掛かる・・・よね?
109774ワット発電中さん:04/03/15 16:25 ID:3qU4s1zZ
>107
デバイスの型番は何なのでしょうか?
110745:04/03/15 16:42 ID:R746c2Wp
>>108
なるほど、試してみます。
・・・割り込みの勉強せねば・・・
111745:04/03/15 17:34 ID:R746c2Wp
>>109
16F873です。16F87x用のデータを見て作業しています。
112774ワット発電中さん:04/03/15 19:21 ID:79aCxlW7
ccp1かccp2をcapture modeにして
RC2/CCP1かRC1/CCP2を出力ポートにして
TMR1H:TMR1Lを読みたいタイミングで、データを出力すれば
CCPR1H:CCPR1LまたはCCPR2H:CCPR2Lに取り込まれる
というのはどうでしょう
113774ワット発電中さん:04/03/15 19:45 ID:3qU4s1zZ
>110
計測するパルスの幅と周期はどの位なのでしょうか?

下手なカウンタを使うより、割り込み無しのプログラムでチャッタノイズを除去しつつ
カウントした方が良いような気がします。
114745:04/03/15 21:24 ID:R746c2Wp
>>112
なるほど!これならTMR1を読む間にカウントアップするとか
考えなくて済みますね。CCP初挑戦・・・

>>113
計測するパルスは、0から10^7cpsくらいまでです。
パルス数が多いときには、プリスケーラと
ソフトウェアカウンタを組み合わせて、
TMR1帯域の限界に達したら、外部F/Vコンを使用して
ADからカウンタの値を取り込むようにするつもりです。
(カウント数が多いときには、オーダーが判ればOKです。)



115774ワット発電中さん:04/03/15 21:52 ID:3qU4s1zZ
>114
CCP のコンペア・モード
ttp://park16.wakwak.com/~mimi/pic/assembler/ccp/compare.html
PIC16F873のCCP機能
ttp://www.hobby-elec.org/pic7_4.htm
116745:04/03/15 23:26 ID:Am9b0gTY
>115
どうもです!
117774ワット発電中さん:04/03/16 07:59 ID:gt8KMRZH
どなたかWIZ-Cを使ってる人います?
日本語アニマルないのでよくわからん・・
118774ワット発電中さん:04/03/16 15:42 ID:uJXSqED3
>>117
Hitech cとか、picant cとかccs-cとかなら知っているんだけど。
そういえば、工作でRS232Cキーボードが欲しいと思って調べたら
http://www.solitonwave.co.jp/picant/Samples.pdf
ここのサンプルプログラムの22ページ23ページ、
こんなハードで動くのかと思って http://www.picant.com/c2c/c.html
から評価版DLしてやってみたら、見事に動いたよ。へぇ〜こんなので
PS/2キーからRS232Cのデータ変換できるんだなと感心したよ。
CMCONとかはレムる必要があるが、多分4メガのセラロックつければ
PIC16F84でコンパイルしても動くよ。
パソコンなしでRS232Cのテストできるので、マジお勧め。
119774ワット発電中さん:04/03/16 18:09 ID:dlTDi0DC
>117
使ってますが、何か?
プログラム自動生成のチェックを外すと(Project > USE Application Desiger)
FED-Cと同じなので、日本語マニュアルがネット上にあるでしょう。
IPIから買ったのならば、FED-C日本語マニュアルがCDRで同胞されています。
120774ワット発電中さん:04/03/18 11:30 ID:PgFvZX58
下記の条件を満足するフローチャートを書いてください
また、そのフローチャートを元にコーディングをして下さい。
@電源投入時5sec間はDuty100%制御
Aその後、PWM制御を行う。方式は下図参照
  電源電圧 15V以上で、Duty 75%制御
  電源電圧 11V以下で、Duty 100%制御とする。
B本プログラムは1msのタイマ割込みで発生するものとし、
出力のON,OFFも1ms単位で行われるものとする。

 Duty[%] 
100┝━━━━━━━┓
   │     ↑      ↓
75 ┝ーーーー━━━━━
   │     l      l
   │     l      l
   │     l      l
   └─────────
          11   15
          高圧電流[V]

板違いかもしれませんが、誰か分かる人いたら教えてください・・・
私は電気のことはさっぱり分かりません でもせめてフローチャート
ぐらいは理解したいので・・
121774ワット発電中さん:04/03/18 12:06 ID:f+s27Pev
仕事か?
甘えるな
122774ワット発電中さん:04/03/18 12:14 ID:joPfpofy
うわあああああああああああ
http://www.ccsinfo.com/demo.shtml
123774ワット発電中さん:04/03/18 12:19 ID:GeaSz8fa
>>120
そういうのはフローチャートより、ステート遷移
で考えたほうが楽だと思うよ。

それぞれの動作状態に番号を振って、どこから
どこに移るのか、移る条件は何かっていうのを
整理すればそのまんまプログラムにできるだろ。

124774ワット発電中さん:04/03/18 14:38 ID:YsyHdRoR
>>122
freeがあるんだね。
125774ワット発電中さん:04/03/18 14:45 ID:omVS3GWH
>120
電気のことがあんま分からなくても
高圧電流[V]って書くのヤメレ
126774ワット発電中さん:04/03/18 20:45 ID:YsyHdRoR
ttp://homepage.mac.com/ryofox/ryo/CCS-C/ccsc.html
(((( ;゜Д゜)))ガクガクブルブル
127774ワット発電中さん:04/03/18 21:21 ID:zbGlFXf9
>>120
> 本プログラムは1msのタイマ割込みで発生するものとし


> 高圧電流[V]
128774ワット発電中さん:04/03/19 08:34 ID:q6QrRR9w
>>126
この人、何を怒っているんだろうね。なんか怖い人だ。
129774ワット発電中さん:04/03/19 13:15 ID:bvA0Aacf
>>126
なんかこのままでは完全にいちゃもん付けのような。
向こうからのメールは問題切り分けのために必要なことが中心だし
これを「自分たちにはまず非はないということが前提」っていわれてもねえ。
コンパイラの最適化らしい現象にもいちゃもんつけてるし・・・おれも昨日はまったけど
130774ワット発電中さん:04/03/19 13:48 ID:BPksx096
>126
2→パスを切り替えればすむ話じゃない?
開発環境を複数入れる場合にはよくあること

3→1byte...あたりまえじゃん
コメント部にマルチバイトを認めるかどうかはコンパイラ次第

4→単なる最適化

5→変数のスコープを言っているの?
同一スコープ内で重なって確保されるならば問題だけど
スコープ外ならあたりまえ

6→途中にスペースが入るとダメなのはよくある話、階層や総文字数は実装依存
まぁ普通は255文字ぐらいまでだろうけど
シングルバイト文字文化のソフトでマルチバイト対応を期待してもねぇ

8→Microchipって結構まともな対応なのね
131774ワット発電中さん:04/03/19 14:45 ID:bvA0Aacf
>>130
5→たぶん、最後に変数aを参照した行以降に実行される部分のみに変数b
参照部分がある、などのように関数内でaを扱う部分とbを扱う部分がはっきり
分かれていて、同じアドレスを割り当てても問題ないという場合な予感。
avrgccでも時々見る。
132774ワット発電中さん:04/03/20 03:42 ID:orcl1hFe
PICほしゅ
133774ワット発電中さん:04/03/20 09:18 ID:T7DBtGgd
MPLABでも深いディレクトリだったら、最後のオブジェクト生成のときに
文句言われるよね。
134774ワット発電中さん:04/03/22 15:37 ID:jAKIR4vC
ところで、サンハヤトのオンボード書き込みアダプタを使ったことある人います?
もし、おられたら使用感とかコメントいただけるとうれしいです。

http://www.sunhayato.co.jp/technicaldata/CT-PIC-P/
135774ワット発電中さん:04/03/22 15:59 ID:lvXjT0aU
コメントもくそも、ちゃんと書き込めるよ。
いちおうすべてのPICを書き込むので、スイッチで
作動とプログラムを切り替えているが、負荷の調整
もしくは、romライタのテストを回避するだけで、あんなスイッチはいらん。
で、オンボード書き込みはつかってみると結構便利かもしれない。
値段も安いので、試してみるべし
136134:04/03/22 16:15 ID:jAKIR4vC
>>135
情報ありがとうございます。思っていたより便利そうですね。
今度、買い物リストに入れて行きます。

;時計を16F84で作ってみようかと思ったんですけど、7セグメントLEDの直下にそいつを
;配置して小型にしようと目論んでたんで、オンボードで書き込めるならありがたいな〜、
;なんてふと思っていた次第で。
137774ワット発電中さん:04/03/22 16:54 ID:lvXjT0aU
ほほっなるほど
PICは書き込みのときには4本(電源入れると6本か)しか使わないから
それ以外のピンは放置でおけー。

んでPICで時計というのは誰しも1回は
考えることだけど、いろんな理由で結構めんどいよ。

プログラムはそうでもないんだけど、
すべてPICで組むと処理の都合で速度が変化して
結果的に精度がよくない。んで、1日あたりに誤差を収束させて
しまおうと帳尻を合わせるルーチンとか作ったりしたけど、
やっぱダメで、さらにいろいろやったけど
最終的にRTCを別に用意してそれを読むということの落ち着いた。
138774ワット発電中さん:04/03/22 18:07 ID:tjKXB2f+
>>137
タイマ割り込み使えば誤差なんて生じないけど
事実、もれの作った時計は全然狂わないが
139774ワット発電中さん:04/03/22 18:15 ID:lvXjT0aU
いろいろやったんだけどやっぱ最終的な累積誤差が
でることがわかってRTCに任せたよ。
いいところまでは逝くんだけど、
最後のツメられなかったということ。すまんねヘタレで。
けど、RTCくっつけたおかげで、とりあえずバックアップは
RTCだけで済むし、カウントはすくなくでもいいし、結果良かったかな。
と思ってます。
140774ワット発電中さん:04/03/22 18:28 ID:fIpj2QSN
秋月でやっと16F88.
http://akizukidenshi.com/catalog/items2.php?c=new&s=date&p=1&r=1&page=#I-00567

やっぱこれが18ピン最強?
141774ワット発電中さん:04/03/22 18:34 ID:lvXjT0aU
>138 神として聞くが
時刻合わせした直後の処理ってどうしてます?
おいらが考えると時刻合わせ直後のキー待ちとか解消できなかった。
そのため、スイッチを操作させると必ず遅れる結果に・・・
細かい時間調整が必要なので、1日あたりに約500msくらい
づつ遅れてしまうととんでもない時計が出来上がった。

けっこうつらかったのよ。
142774ワット発電中さん:04/03/22 18:36 ID:jAKIR4vC
16F88に対応したPICプログラマのファームはまだ出てないようですね。
143774ワット発電中さん:04/03/22 19:10 ID:tjKXB2f+
タイマ割り込みを使いPIC内部にRTCを構成すると考えてほしい。
割り込み処理で計時を行い、通常処理(mainloopと言うんですかね)でスイッチの監視、表示デバイスの制御とかを行う。
このように処理を分けると、状態がどうであれ常に正確な計時が行われる。
時刻合わせに関しては、スイッチを操作した瞬間に計時関係のレジスタを初期化するとかで対応しました。

でもなんだか、漏れも不安になってきた
間違ってたらごめん
144774ワット発電中さん:04/03/22 19:20 ID:lvXjT0aU
さんきゅです。なるほど。実はずいぶんやったんですけど。
なんかい作り直しても同じ現象が発生。で、処理で遅れるのならば最初から
遅れる分薦めちゃえ・・・とばかりに夜中に帳尻とるルーチンを入れたり
したけど、結局はボツですわ。(藁
で、わたしなりの識者に聞いたら 一発目にRTCで解決しないの?
っていわれて 目がさめたって感じでRTC採用。一発解決。

ただそのときの経験でプログラムで長時間の時計をつくっちゃいかん
という先入観が植えられたとおもふね。
あのときにPIC神がいてくれたらよかったのに・・・・
145138:04/03/22 19:28 ID:tjKXB2f+
146774ワット発電中さん:04/03/22 20:40 ID:8CQpKE2D
PICで時計は誰でも一度ははまるのかなあ?
俺もまったくおなじプロセス経験あります
147774ワット発電中さん:04/03/22 20:46 ID:tpujusGU
PICで時計かぁ。
漏れも作ったことあるな。
でもアセンブラを書く要領がわからなくて(未だに)結局完全に自分の世界に入ったソースになってしまった…。
148774ワット発電中さん:04/03/22 21:10 ID:BS83z3Uu
公開してしまえ〜
オープンソースだ(w
149774ワット発電中さん:04/03/22 21:33 ID:IavBhTBx
cc5xはどう?

PIC C Lite より対応デバイスがずんと多い。
16C628対応は嬉しい!

モジュールサイズは1Kまで。
結構使えそう。

http://www.bknd.com/cc5x/index.shtml
150774ワット発電中さん:04/03/22 22:44 ID:kOjSv9tK
PICで時計作って狂うとか言っている人って、タイマーに値を再設定しているんじゃないかと思う。

つか、俺、それでハマった。
再設定止めてフリーランにしてから狂わなくなったよ。
151熱暴走 ◆2SA784NN.A :04/03/23 02:02 ID:3ZRv/Wzd
>>150
>PICで時計作って狂うとか言っている人って、
>タイマーに値を再設定しているんじゃないかと思う。

手前味噌だが、>>101 では割り込みルーチンでタイマーの再設定
をしているが、全然狂わないよ。
 狂う原因は、大体こんなもんじゃないかと。
1.タイマー割り込みで割り込みルーチンに入るが、タイマー再設定
  までに掛かるクロック数が条件分岐等によって変わり、徐々に
  誤差が蓄積されていく。
2.パイプライン等の影響で、TMR0 に書き込む命令より2クロック
  遅れてからインクリメントが始まるのが考慮されていない。
3.他要因による割り込み処理によって,或いは明示的な操作に
  よって割り込みがマスクされている時に TMR0 オーバーフロー
  が発生するものの保留となり、タイマー再設定に掛かる時間
  が変化する。

>再設定止めてフリーランにしてから狂わなくなったよ。
まぁ、これも一つの手だわな。
152774ワット発電中さん:04/03/23 07:12 ID:pDUfxBLz
普通はフリーランでしょ
Microchip社はそのつもりで設計してる
153774ワット発電中さん:04/03/23 08:19 ID:x5RpaEqK
>>151
3.のように割り込み禁止をしているときは対策が困難ではないかと思う。
タイマーがオーバーフローしてから、割り込みルーチンに飛ぶまでの時間が
禁止しているときとしていないときとで一定じゃなくなるわけで。
タイマー0の再設定をすると、プリスケーラまでクリアされるしフリーラン
でないと誤差の解消は事実上困難じゃないかな。
154774ワット発電中さん:04/03/23 08:56 ID:im9uCQxG
hit-ech c v8.02PL1ってシフトレジスタのバグある?

これが通らなくて(無視される)val = (val >> 1);
これが通る。             val = (val >> 2);
155774ワット発電中さん:04/03/23 10:14 ID:7DHfssFw
>>153
やっぱり極力割り込み禁止せず、タイマ再設定せずににやるのが一番だろうなあ。
これなら理論上は端数誤差とクロック誤差しか出ない。
工夫すればそんなに大変なことではないように思う。
例えば1周期6.5536msecのタイマがあったとすれば、152カウントで
1秒だが端数は3.8528msec出る。これもカウントしておいて、
65536を越えるときは153カウントで1秒数えればうまくいく。
この端数値を調整すればクロック誤差まで調整できるかも。
ADCで外部温度取得して温度補正したら神!(w

156774ワット発電中さん:04/03/23 11:14 ID:9f8hSLqS
あのさ
16F88のデータシート欲しくて
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/16f88/ の
http://www.microchip.com/download/lit/pline/picmicro/families/16f8x/30487b.pdf
をAcrobatReader6Jで開くと、エラーになって読めないんだけど、誰か確かめてくれないか。
157774ワット発電中さん:04/03/23 11:24 ID:im9uCQxG
pdfに問題なし。
158154:04/03/23 11:29 ID:im9uCQxG
自己解決。 パッチが出てるのね・・
159774ワット発電中さん:04/03/23 11:49 ID:7DHfssFw
>>155
すまん、割り込み禁止はしてもいいわ。
160774ワット発電中さん:04/03/23 14:12 ID:T2h8qyHr
時計の件だけどまるでPICが悪いみたいじゃん。
同じ問題はどのCPUでも起こるでしょ。
んで解決方法もみんないっしょだとおもう。
おれとしてはRTCを別搭載って手がいいとおもうけどね。
プログラムをあれこれ工夫するのはアマチュアとしてはたのしいけど
その時間があったらより確実なRTCに渡したほうが
いいんじゃない?
161774ワット発電中さん:04/03/23 14:53 ID:yh2z770R
僕も16F88のデータシートで読みとりエラー109が出るのですが、
どうしたらよいでしょうか? 16F877はちゃんと読めるんですが。
162774ワット発電中さん:04/03/23 16:43 ID:m5aMhvVL
>>157
>>161
Acrobatのバージンは?
163774ワット発電中さん:04/03/23 17:35 ID:woz1xmYK
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは?
>Acrobatのバージンは? >Acrobatのバージンは?
164774ワット発電中さん:04/03/23 17:50 ID:81CNlZoy
>>160
下手の道具しらべ
165774ワット発電中さん:04/03/23 17:51 ID:81CNlZoy
大もうけだなww
166164:04/03/23 17:52 ID:81CNlZoy
実況の誤爆スマソ
167161:04/03/23 20:06 ID:ZyvhHpSk
acrobat 5.0です。Readerじゃなくて、pdfを作成できる商品版のやつです。
168シナ人:04/03/23 20:24 ID:jFvHU49Z
ピッキングについて教えてくれるスレはここですか?
俺、三和ロックなら得意だよ。普通のピッキングと違うのは最後に
はさみの先端みたいなものを差し込んでガチャンと回さなきゃ駄目
なんだけど。
169熱暴走 ◆2SA784NN.A :04/03/23 20:40 ID:68NNAejd
>>152
>普通はフリーランでしょ
>Microchip社はそのつもりで設計してる
TMR0はそうかもしんない。
 ただ、計時用途に関してはTMR1モジュールが正にそれ用に設計
されていて、CCPモジュールと組み合わせると、CCPRxレジスタ値
でオーバーフローする1/Nカウンタが構成できるので、>>151
1〜3の要因は回避できると思われ。



TMR1とCCPモジュールがあればの話だが。

>>153
>タイマー0の再設定をすると、プリスケーラまでクリアされるしフリーラン
そういえば >>101 のはプリスケーラ使って無いや。
170774ワット発電中さん:04/03/24 09:38 ID:aPRVE5wK
>>155
>例えば1周期6.5536msecのタイマがあったとすれば、152カウントで
>1秒だが端数は3.8528msec出る。これもカウントしておいて、
>65536を越えるときは153カウントで1秒数えればうまくいく。
タイマー割込みに端数が出ないように、水晶の周波数の選定をした方が
良いんではないか?
20MHz とかじゃなくて 10.24MHzみたいのをを使えば、
整数計算だけになるので割込み処理も楽になると思うが。
時計ぐらいなら、CPU速度を落としても、支障がないだろう。

でも、トラ技の今月号のキッチンタイマの記事は、
タイマーのプリセットしてるな…

あと、時計の精度って、どのくらいのものを期待してるんだ?

171774ワット発電中さん:04/03/24 10:37 ID:QjuwUfdK
良く行く掲示板からのこぴぺっす。
簡単に説明すると、16F88は、シリアルとコンパレータがが使えて機能的に人気のある
PIC16F648A(627/628)と、ADコンバータ搭載であるPIC16F819の良いところを足して
2で割りそれを改良した様なものです。
現在、書込みツールについては対応しているものが少ないですが、いずれこれが普及するでしょう。
現在の取り扱いは、IPI,秋月電子通商です。参考価格320円@2004/3/24現在

主な特徴

・低消費電力で低電圧動作(2Vから動作可能、76マイクロアンペア@2V/1MHz)
・低スリープ電流(スリープ時0.1マイクロアンペア@2V)
・4KWのプログラムメモリー空間
・内部で発振回路を持ち8段階の選択ができ、その最高周波数は8MHz
・内蔵発振器には、チューンレジスタが6ビットあるため、25度時で±1%を補償
・2系統の外部クロック搭載可能、2つ目のクロックは、TIMER1に直接使えるので32.768KHzなどの安価なクリスタルを接続して時計などが簡単に構成可能
・電源ピン以外の16ピンのIOを選択可能(RA4のみ入力)
・10ビットアナログ入力4チャンネル搭載
・2系統コンパレータ、プログラム可能基準電圧発生回路内蔵
・I2CとSPI搭載
・UART(同期/非同期)内蔵であるため、RS232Cの構築がハードウェアで対応可能
(但し、16F648のUSARTのポートと、16F88のポートはピン配置変更がある)
  PIC16F627,8/648 : RB1=RX , RB2=TX
  PIC16F88 : RB2=RX ,RB5=TX
・USARTは外付けオシレータなしでも57.6Kbpsまで対応可能
・RA5のポートでは定番だった出力オープンドレインは、通常のポートと同じトーテムポール出力になった
・CCPR1レジスタがあるため、簡単にPWM構成可能
・小型化の流れである6ミリ角のQFNパッケージのプロダクトがある
172774ワット発電中さん:04/03/24 15:05 ID:F+4vOyYa
秋月で売ってた12.8MHz発振モジュールと16F84Aで時計作りました。
いま電波時計に改造中。
173774ワット発電中さん:04/03/25 10:18 ID:FbICqEDU
>>156
僕もよめません。AcrobatReader6(最新版)です。
ひょっとしてバージョン落とせば読めたりする?
174熱暴走 ◆2SA784NN.A :04/03/25 14:19 ID:kxEHD67h
>>173
5.0 だけど、問題無く読めるよ。
175774ワット発電中さん:04/03/25 15:48 ID:HaYu2xMb
16F84Aなどで、TMR0オーバーフロー割り込みを使った割り込み処理を行う場合についての質問です。
割り込み処理が終わる前に次のTMR0オーバーフロー割り込みが発生してしまった場合、そのとき終わらなかった割り込み処理と次の割り込みはどのように扱われるのでしょうか。
電波時計を作ろうとしているのですが、割り込み処理が多くなりすぎてその辺のことが不安になってきました。
176774ワット発電中さん:04/03/25 16:07 ID:REVsxnEh
単純に考えてスタックを食いつぶし、動作不定になる。
177774ワット発電中さん:04/03/25 16:19 ID:NOOc+/s9
>>175
そうならないように、PICみたいなプアなCPUでは、
割り込み直後にまず、割り込みを禁止するのが普通。(INTCON GIEだっけ?)
178774ワット発電中さん:04/03/25 17:15 ID:HaYu2xMb
>>176
>>177
ご回答ありがとうございます。
やはり割り込みがダブるとおかしくなってしまうんですね。
自走クロックによる時刻の更新と受信信号による時刻の更新がダブったときにそういう状態になってしまっていたようで、リセットしたときしか通らないはずのサブルーチンをなぜか実行してしまっていました。
原因がわかったのでなんとか解決できそうです。
179774ワット発電中さん:04/03/25 19:54 ID:XdZq5O8Y
PICでは割込みが起こったら、多重割込みを禁止する為自動的にGIEをクリアして
RETFIE命令でGIEはセットされる、このとき他の割込み要因が有ればまた割込みが発生する
だから有る割込み要因を処理中に他の割込み要因が発生しても、時間的遅れがあるが処理出来る
しかしTMR0オーバーフロー割り込みが発生して、ユーザーがINTCON<T0IF>をクリアする前に
再びTMR0オーバーフロー割り込みが発生したら当然これを検出出来ない
長くてスマソが自分が16F876で使用している割込みルーチンだがこれでも問題無く処理出来る
 movwf w_temp
 swapf STATUS,W
 movwf status_temp
 clrf STATUS
 movfw FSR
 movwf fsr_temp
 movfw PCLATH
 movwf pcl_temp
 bsf  PCLATH,3
 btfsc PIR1,CCP1IF
 call int_ccp1
 btfsc PIR2,CCP2IF
 call int_ccp2
 btfsc INTCON,T0IF
 call int_t0
 btfsc INTCON,INTF
 call int_int
 btfsc PIR1,TMR2IF
 call int_tmr2
 btfsc PIR1,TXIF
 call int_tx
 btfsc PIR1,RCIF
 call int_rc
 btfss pcl_temp,3
 bcf  PCLATH,3
 movfw fsr_temp
 movwf FSR
 swapf status_temp,W
 movwf STATUS
 swapf w_temp,F
 swapf w_temp,W
 retfie 
180774ワット発電中さん:04/03/25 20:58 ID:HaYu2xMb
>>179
ご回答ありがとうございます。
割り込み処理の前にGIEをクリアしておけばダブった割り込みは保留になるということですね。
そのソースでは、どの割り込みが発生したかによって処理をわけているんですね。
参考になりました。
こういうやり方が思いつかなかったので、私の書いたモノはスイッチの処理なども全部タイマ割り込みの中に押し込むという変なプログラムになっています。
181774ワット発電中さん:04/03/25 21:19 ID:Z+hHkN2z
>>180
つか、割り込みは最小限の処理だけで抜けるのが常識だべ。
182774ワット発電中さん:04/03/25 21:26 ID:XdZq5O8Y
>>180
177は間違い
>そうならないように、PICみたいなプアなCPUでは、
>割り込み直後にまず、割り込みを禁止するのが普通。(INTCON GIEだっけ?)
GIEのクリアはPICが勝手にやってくれる
183231:04/03/25 21:29 ID:GQ8aD9CI
タイマー割り込みは、注意しないといかんですね。
私の場合は、オシロを使って、割り込み処理時間を見ながらプログラムしています。
#int_timer0
void tim0(){
  set_timer0(200);
  bit_set(a_port, 0);
    :
    :
    :
  bit_clear(a_port, 0);
}
として、aポートの0番をオシロで確認。予想通りの周期でパルスが
出ていればOK。さらに割り込みの中の処理内容によって、波形のdutyが
長くなっていくので、時間的な余裕もよくわかります。
mainは無しで、割り込みだけのプログラム? 売るほど作りました。
同期回路のようで処理が楽になりますから。
184774ワット発電中さん:04/03/25 21:37 ID:HaYu2xMb
>>182
GIEのクリアは自動だったんですね。
レスを良く読まなくて申し訳ありませんでした。
>>183
オシロで処理時間を見るというのはいいアイデアですね。
私もやってみようと思います。
最初はステップ実行でシミュレーションして確認していたのですが、分岐条件が多くなりすぎて手に負えなくなりました。



それと、178で書いたリセットされてしまうという不具合は割り込みとは別の要因で起きていました。
テーブルがPCLATHで指定した範囲をアドレス2つ分だけはみ出していたんです。
それで、戻る先がなくなってリセット…という感じだったんだと思います。
185774ワット発電中さん:04/03/25 21:51 ID:N72r26nm
>>180
ん? 割り込みがかかって割り込み処理が始まると「自動的に」GIEがクリアされる
→割り込み処理先頭で明示的にクリアする必要はない ですよ

問題は割り込みルーチン内で、例えば>>179さんの例では
 btfsc INTCON,T0IF
 call int_t0
で、int_t0ルーチン内で、割り込みを処理したマークとしてT0IFをクリアすると思う。
そうしないとその後TMR0割り込みがかからなくても、他の割り込みかかってこの
ルーチンに入ったとき、またTMR0割り込みがかかったように見えてしまうから。

でもって、
割り込みルーチン
↓A
T0IFチェック
↓B
int_t0ルーチンcall
↓C
T0IFのクリア
↓D
int_t0処理
↓E
int_t0 ret
↓F
割り込みルーチンretfie(GIEがセットされる)
で、D以降でTMR0割り込みがかかっても割り込みルーチンを抜け、
GIEがセットされた時点でまた割り込みがかかるのでいいが、A〜Cで
かかったTMR0割り込みに関してはどうしようもない。
この区間を出来るだけ短くするしか方法はないのではないかな。
場合によっては先頭でINTCONを丸ごとファイルレジスタにコピーしてから
INTCONまるごとクリアして、あとでゆっくりコピーをチェックなんて
どうだろ?と思う。やったことないけど。
186183:04/03/25 21:54 ID:GQ8aD9CI
オシロで見るやり方は、我ながらいい方法だと思っています。
紙の上で一生懸命説明しても全然理解しない新人に、
mainと割り込みと関数にそれぞれ信号を出して、多chオシロで
見させたら、プログラムの流れを一発で理解してくれました。
処理の流れ(分岐)によっても長さが変わるので、各ルーチンの
動作がよくわかります。
それ以来うちの部署では多chオシロが引っ張りだこです。
187774ワット発電中さん:04/03/25 22:14 ID:D0JOm+JI
なぜロジアナを・・(Ry
188774ワット発電中さん:04/03/25 23:37 ID:1+9EQd2s
MPLABのシミュレーションじゃ駄目なんですか?
漏れはオシロもロジアナも無いからMPLABフル活用でアセンブラ打ってますが....
189774ワット発電中さん:04/03/25 23:53 ID:XdZq5O8Y
大金持ち・ロジックアナライザ所持
金持ち・・オシロスコープ所持
小金持ち・秋月のPICプログラマー所持
このスレではこのようなヒエラルキーがあるって事ですか
>>188 同志と呼ばせてくだされ
190774ワット発電中さん:04/03/26 00:52 ID:McOGa3zC
どのスレとは言わずそーゆー階層はあるさ。
素人がすげーもんもってるケースもよくあるけどさ(笑
191774ワット発電中さん:04/03/26 01:05 ID:vmNeIf3a
多CHオシロでプログラムお稽古とはゴーセーな・・・
LEDでも並べれば十分でゲショ・・と、貧民は嘯く
192774ワット発電中さん:04/03/26 02:40 ID:2s/uigbe
>>191
多くの場合は、LEDでOKだけど、
さすがに、10ms周期の1mSパルスは見えないでしょ?
また、リセットICの減電圧時のRESET出力なんかも....

>>187
この場合、ロジアナで何を見るの? ロジアナだとシングルで1回取って
ゆっくりと解析か、遅い周期のリピートトリガしかかけられないので、
今回の場合はオシロが適当と思われます。

私、自慢なんですが、個人でロジアナ(岩通4641)、オシロ(テクトロTDS3054B)、
などを保有しています。いわゆる計測器オタです。
193774ワット発電中さん:04/03/26 02:44 ID:GLM0LA/4
学校で廃棄された測定器拾ってウハウハ
オシロ5台
ロジアナ1台
スペアナ3台
さすがに型番は伏せるけど、怖いから。
194774ワット発電中さん:04/03/26 09:51 ID:spjdnTX+
PICでロジアナ作るっていうのはダメですか?
秋月の4行液晶あたりでさ。
オシロは無理でもゼロイチ表示なら大丈夫だろ。
なんなら液晶のキャラジェネのフォントを作って棒であらわしちゃえ。
195774ワット発電中さん:04/03/26 09:55 ID:ITQMW0/G
>>193
お城一個くれ。
うちのアナログお城は、壊れてスイープしなくなっちゃったんだ。
196774ワット発電中さん:04/03/26 11:23 ID:X2EdLvKK
100〜10KHzぐらいのパルスを出してパソコンの
サウンドカードの入力を使うってのはどう?
197774ワット発電中さん:04/03/26 12:43 ID:LfQtaR0w
ロジアナじゃジッタが見えないじゃん。 ここはオシロ
198774ワット発電中さん:04/03/26 15:12 ID:gNis7MOR
ぬるぽ
199熱暴走 ◆2SA784NN.A :04/03/26 15:50 ID:qvun39vu
       _
┌――─┴┴─――┐
│ セルフサービス .│
└―――┬┬─――┘
        ││   ./
      ゛゛'゛'゛ /
         /
     | \/
     \ \
      \ノ
200774ワット発電中さん:04/03/26 16:27 ID:gNis7MOR
     ∧
    <  >_∧
= ()二)V`Д´)<ぬるぽ
    \ヽ ノ )
    ノ(○´ノ  ガッ
   (_ノ(__)
201774ワット発電中さん:04/03/26 22:40 ID:vvQ2OmK0
わろyた
202774ワット発電中さん:04/03/27 01:28 ID:2lIKF6Ul
HI-TECH PICC Liteの日本語リファレンスってありますか?
25のサイトだけでしょうか。
203774ワット発電中さん:04/03/27 12:49 ID:gvp2y5Mi
秋月のPICプログラマで、16F88対応ベータバージョンが公開されてました。
http://akizukidenshi.com/down/tk/picpgm_v4/index.htm
204774ワット発電中さん:04/03/27 13:01 ID:MEZO6v3u
>>195 自分の首振っとけよ
205774ワット発電中さん:04/03/27 14:00 ID:T6WxmqBE
>>203
とうとうでましたか。あとは、フリーのCがあれば、ホビー最強なんだけどね。

>>204
http://www.nintendo.co.jp/n09/p_motion/
を応用して、オシロスコープを作ろうかなと。
バーサオシロ
206774ワット発電中さん:04/03/27 15:15 ID:kdqwKauY
     ∧ ∧
    ( ´・ω)
    (⊃⌒*⌒⊂)
     /__ノωヽ__)
   ∧_∧ パシャッ パシャッ
   (   )】
.   /  /┘
  ノ ̄ゝ
207774ワット発電中さん:04/03/28 18:47 ID:CwMreixH
>>205
知ってたら教えて欲しいんだけど…
振って字とか絵とか出す奴、バーサライトって言うけど、バーサって何?
208774ワット発電中さん:04/03/28 19:06 ID:RsP63ORz
なんだろうね
とりあえずぐぐれ
209774ワット発電中さん:04/03/28 19:31 ID:kst00DqS
uniVERSAl LIGHT
210774ワット発電中さん:04/03/28 19:46 ID:xNtond/E
みなさん、何かプログラムを作るとき、ソースを書く前にどのような準備をしていますか?
たとえば、仕様書やフローチャートなど。
211 ◆ab8wLGyd2o :04/03/28 21:36 ID:LEYFEE2O
>>210
私は、仕様から決めます。
ICのピン配列の書いてある紙をつかって、ラフに回路図を書いて、デバイスの
検討を行い、そのあとにプログラムを作り、回路を手作りしてから清書ですね。

私も、新しい回路とプログラムができましたのでよければ使ってください。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/develop_log/development.htm
212774ワット発電中さん:04/03/28 21:48 ID:84szQagT
↑なにげにかこいいIDだ
213774ワット発電中さん:04/03/29 11:10 ID:u4+rvZrv
PIC プログラマ Ver4
http://akizukidenshi.com/down/tk/picpgm_v4/index.htm

2004.03.29 サンプルプログラムLEDTEST.ASM
AVRプログラマー(avrpgm6.exe)に添付されているサンプルプログラム
LEDTEST.ASM;のバグ修正版。
ledtest.zip
214774ワット発電中さん:04/03/29 18:01 ID:TvH5JjI8
超初心者ですが。
PICって1メートルくらいの高さから落として壊れるって事はないですよね?
書き込めたPIC16f819が急に書き込めなくなったから心配なんですが。
215774ワット発電中さん:04/03/29 18:10 ID:n8c13fld
教訓
壊れないとは思うが、電子部品は大切にせよ。
216774ワット発電中さん:04/03/29 18:15 ID:TvH5JjI8
>>215
ありがとうございました
217774ワット発電中さん:04/03/29 19:05 ID:/CrOnWFj
218774ワット発電中さん:04/03/29 23:19 ID:nsdssMCr
F675にJDMプログラマで手を出してみようと思ってるのですが、
http://osaka.cool.ne.jp/feng3/pgm6/jdm_vdd.html
をみてるとうまく書き込めないみたいです。

これって外付けセラクロックにして、セラクロック-PIC間にスイッチつけて
書き込むときはスイッチオフにすれば改造無しでJDMで読み書きできるのでしょうか?
219774ワット発電中さん:04/03/31 04:21 ID:aVEiR/nv
>>218
はて?よく読めばある程度の結論が書いてあったり、そのページのリンク先にも
詳しく書いてある。自分が独自の方法を思いつき疑問に思ったら、実験するがよろし。
誰も試していないから誰も答えられないはず。
220774ワット発電中さん:04/03/31 09:58 ID:n+Br0HRO
秋月のライターがお勧めでつよ。最新の16F88にも対応しているし、
221774ワット発電中さん:04/03/31 11:25 ID:Bu7fXPm+
http://www.ipishop.com/ の
PIC-KeyはSX-Keyの様なICSP専用のICD機能付きのPICライタです。
はどない? 今、なんか不具合で注文中止中らしいけど
222774ワット発電中さん:04/03/31 19:38 ID:XDjTFaJO
>221
今日、不具合品と交換のPIC-Keyが来ました。
(例の20MHzじゃ動かない18F1320が原因)

基本的には、FED社のWIZ-C統合環境が無いと全機能使えないので
ライターだけ(+PIC-Key-UNIV)として買うには、ちょっと高いかも。

USBさえあれば電源不要はとっても便利。
223774ワット発電中さん:04/04/01 12:07 ID:b9E0Qw2z
>>222
WIZ-Cって、どんなん?買って後悔しない程度には動く?
224222:04/04/01 14:59 ID:xxPA6+oA
>223
好みにもよるので何とも言えませんし、他社のン十数万とか使った事無いですので。

最初から英文マニュアル通りに学習すれば、かなり上手に使えるようにはなる。
サンプルプログラムとか一応付いて来るので、机上でエミュレーションすれば
実機を組まなくてもある程度は動作が確認出来ます。

FED-Cから使い初めて、WIZ-Cになってバグも少なくなって良くなったと思う。
アセンブラも、浮動小数点演算も一応使えるらしいので、これ一つで全部OK。
特に、統合環境でのICDデバッグやデバイス書き込みに関しては圧倒的に便利。

開発は、イギリスのベンチャー企業なのでサポートとかは殆ど期待出来ませんので
日本語マニュアル、ネットでの応用例たくさん、プログラムのデッドコピー マンセーの
教えて君にはちょっと辛いでしょう。
225774ワット発電中さん:04/04/04 00:36 ID:Jx2mSnpK
MPLAB 6.45リリース!されたっす。
http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1060489554/i62-65
226774ワット発電中さん:04/04/04 14:38 ID:2oX+829K
ワンチップマイコンを弄ったことの無い初心者です。
今度、バイクの燃料制御用に回路を組んでやろうと思ってるのですが
CPUは何がオススメですかね?
友達に聞いたところPICが手軽だよと、いわれたのですが・・・
227774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 14:43 ID:onoY5tr2
>>225
ダウンロードに逝ったら、6.50だったよ...
http://www.microchip.com/1010/pline/tools/picmicro/devenv/mplabi/mplab6/11189/index.htm
228774ワット発電中さん:04/04/04 14:52 ID:GqWK6HXb
初心者でバイクの燃料制御って・・・度胸ありすぎ
229774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 14:57 ID:onoY5tr2
>>228
新聞で「エンジン爆発」報道が出るのを期待しちゃいまつ。
前に務めていた職場で、磁気軸受けの制御ミスでタッチダウンが発生!凄いことになったーよ。
230774ワット発電中さん:04/04/04 15:04 ID:5kdtylrM
>>226
ご自分が怪我をなさるぶんには構わないのですが、道路を汚したり、ましてや
他人を怪我させるようなことにならないことを祈念します。

まずはLEDをチカチカさせることからじっくり取り組んでください。
231226:04/04/04 15:12 ID:2oX+829K
ledのチカチカは学校の実習でやったことあるんです。
燃料制御と言っても、ガソリンの噴射口の[on/off]の時間で燃料の吐出量を
決めてるだけみたいなんで。
いけるかなと。
エンジンの回転数と、アクセルの開け方を参考に、噴射時間を決めるだけなんです。
>229
そう簡単にはエンジンって爆発しないですよ。
232774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 15:26 ID:onoY5tr2
>>231
意外に冷静でつね。
でも、Watch Dog Timerで暴走防止だけは忘れないでね....>>230の意見も尊重してね....
一見、簡単に見えることほど深刻な事故に繋がる危険が潜んでいるものです。
大阪府高槻の公園遊具の児童指切断事故なんて業者の責任だし....
233226:04/04/04 15:48 ID:2oX+829K
そうですね。
安全策について注意しておきます。
ただ、エンジンは燃料を多量に噴出しても、少なくてもエンストしてしまうものなので
あんまり気にしなくてもいいかなと。
234226:04/04/04 16:08 ID:2oX+829K
32×32の2次元配列に燃料データをいれて、
適時データを取り出したいのですが
そういう使い方にはむいてますか?
235774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 16:10 ID:onoY5tr2
>>233
DIP SWの設定に応じて、タイミングとるだけなら、DIPパッケージで作り易いマイコンがいいでしょうね。
PICとかで十分な気がします。では、気をつけて....
236774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 16:14 ID:onoY5tr2
PICマイコンはレジスタ数(RAM)があまり無いからダメでしょう。
もっとRAM領域の多いものでないと....H8とかは?
http://akizukidenshi.com/catalog/items2.php?c=h8kit&s=popularity&p=1&r=1&page=#K-00159
237226:04/04/04 16:15 ID:2oX+829K
ありがとうございます。
本格的にPICについて調べてみたいと思います。

余談ですが、
ttp://fcdesign.free.fr/index.html
こんな感じに使おうかと。
エコラン用です。

どうもありがとうございました
238226:04/04/04 16:17 ID:2oX+829K
>236
PICはメモリが少ないのですか?
H8の方が少ないって話を聞いたのですが・・・

もしかしてだまされてる?
239774ワット発電中さん:04/04/04 16:21 ID:pVFNmPAv
>>226
自分のことを初心者ですと宣言してなんになるの?
もしかして初心者ならやさしく教えてもらえると勘違いしてる?

240226:04/04/04 16:21 ID:2oX+829K
>236
これだけのスペックがあれば問題ないですね。
H8とPICではどちらのほうがプログラムは組みやすいでしょうか?
以前にpc-9801で遊んでいたころに、masmで常駐ソフトを組んだことはあるのですが
逆にCなどについてはさっぱりです。
241774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 16:23 ID:onoY5tr2
>>238
PICにはレジスタ(一部はSpecial FUnction Register)とプログラムメモリとEEPROM(非力)
しかない。Flashは書き込むのに時間がかかるからお勧めではない。
実験するだけなら、32×32のデータはRS232C等のインターフェース経由でパソコンに
転送して実験するほうが良いかと....

H8ならオンチップ上に2kとかRAM多いでつよ...
242774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/04 16:25 ID:onoY5tr2
>>240
MASM経験者なら、H8の方が良いかも....
PICは減算命令が他のチップと違って癖あるし、第一、add with carryのような命令付いてるのは
一部だし....
243226:04/04/04 16:50 ID:2oX+829K
>241>242
H8の方が扱いやすそうですね。
何か上手くいきましたら、またお礼程度書き込みさせてもらいます。
丁寧なレスポンスありがとうございました。
244774ワット発電中さん:04/04/04 16:54 ID:8wAKt4tR
H8もPICもそれぞれに長所があるので、それを考えよう。
多分バイクのエンジン制御だったらH8かな。
車載で云々がでているが、
PICはいちおう某メーカのエアバックとかに採用されている事を付け加えておくよ。
245774ワット発電中さん:04/04/04 19:11 ID:dhAucBsV
初めてPICのEEPROMに挑戦しようと思って
ネットでいろいろと調べたのですが、あまり詳しく説明されていなかったので
以下のコードを作成したのですがプログラマでリードしても何も書き込まれていない状態でした。
御教授いただければ幸いです。

      INCLUDE"P16F84A.INC"

EPAD  EQUH'10' ;EEPROMアドレス用変数
EDATA EQUH'11' ;データ用変数

      MOVLW   10H;アドレスをWにセット
      MOVWF   EPAD;変数にセット
      MOVLW   D'10';データをWにセット
      MOVWF   EDATA;変数にセット
      CALL    EPWR
EPWR
      BCF     STATUS,RP0;バンクを0にセット
      MOVF    EPAD,0;アドレス変数をWに移動
      MOVWF   EEADR;アドレスをセット
      MOVF    EDATA,0;データをWに移動
      MOVWF   EEDATA;データをセット
      BSF     STATUS,RP0;バンクを1にセット
      BSF     EECON1,WREN;ROM書き込みを許可
      MOVLW   55H;特定ワードをWに移動
      MOVWF   EECON2;特定ワードをセット
      MOVLW   0AAH;特定ワードをWに移動
      MOVWF   EECON2;特定ワードをセット
      BSF     EECON1,WR;書き込みをスタート
WRLOOP
      BSF     PORTB,0
      BTFSC   EECON1,WR;書き込みが終了したかチェック
      GOTO    WRLOOP;終了してなかったら戻る
      BCF     STATUS,RP0;バンクを0に戻す


      END
長文申し訳ありません。
246774ワット発電中さん:04/04/04 19:15 ID:8wAKt4tR
247774ワット発電中さん:04/04/04 19:20 ID:dhAucBsV
日本語版のデータシートは印刷して一様読みました。
一様その通りにしたつもりなのですが…
248774ワット発電中さん:04/04/04 19:25 ID:8wAKt4tR
>>226
ここぐらいまでは良く見るけどね。バイクのステータス表示
エンジンの吸排気は、基本的にテーブル処理で、電磁ソレノイドを操作して
動かす。プログラム自体はそんなにも難しくないと思うけど、
電源系のトラブルと、ノイズに悩まされるよ(w
良い勉強かも。スタンドたてて十分検証してから走りにでてくれよ(w
249774ワット発電中さん:04/04/04 19:29 ID:ocWKq0Dv
>>247
考えられる事
●PICがうまく動いていないのでは?
MCLRの処理がされていない。(プルアップとか)
レゾネータ、もしくは発振回路をつけていない。
電源電圧が低すぎる。

まず、プログラムの先頭にLEDを1秒間くらい4,5回ちかちかさせるプログラム
をいれてみたらどうだろう。
250774ワット発電中さん:04/04/04 19:42 ID:ocWKq0Dv
ちなみに今MPLAB 6.50でシミュレーションしてみたけど
問題なく動いているね。
251774ワット発電中さん:04/04/04 19:43 ID:ocWKq0Dv
バイクのタコメータ張り忘れた
http://www.geocities.jp/ms5_s/laboratory/off/040111/38.jpg
252774ワット発電中さん:04/04/04 19:52 ID:ocWKq0Dv
>>247
実際書いてうごかしてみたよ。
チャンとEEPROMの10Hに0Aがかけているよ。
INCLUDE文の次に
__CONFIG H'03FF1'
いれてみたら?
アンダーバーは2回ね
253774ワット発電中さん:04/04/04 19:58 ID:ocWKq0Dv
>>245
あ、なんども書いてスマソだが、
このプログラムをマトモに動かすとEEPROMの寿命を激しく削るので
ENDの前に

ENDLOOP
GOTO ENDLOOP

位は入れたほうがよい。
あと最初のEQU とHがくっついているが、これは離しているよなぁ?(W
254774ワット発電中さん:04/04/04 21:07 ID:ImIeafAF
エンジン制御なら
http://science2.2ch.net/test/read.cgi/denki/1073050278/
ココの前半に PICで作り方が書いてある。
255226:04/04/04 21:19 ID:2oX+829K
>248
>251
>254
皆さんthanksです
同じ事を考えてる人は多々居るんですね。
256245:04/04/04 22:10 ID:dhAucBsV
>>249
>>250
>>252
>>253
みなさんありがとうございます。
252=253さんの言う通りしてに新しいPICに書き込んで電源を入れると
うまくいきました!
本当にありがとうございました。
257249=250=252=253:04/04/04 22:40 ID:rqhRLs26
>>256
どういたしますた
258245:04/04/04 22:47 ID:dhAucBsV
あ、同一の方でしたかw
ID見て無かったです。
失礼しました。
259774ワット発電中さん:04/04/05 20:03 ID:gkyq3XVh
AVR
260774ワット発電中さん:04/04/06 10:02 ID:s5FWaLQL
>>259
スレ違い
261774ワット発電中さん:04/04/06 15:21 ID:j3igT300
>>228
日本語のコメントをつけると、表示がバグるのは直っている?
262774ワット発電中さん:04/04/06 16:20 ID:h5gTFYFH
PICに興味を持ち、手始めにLEDを光らせたいと思っています。
LEDのひとつひとつをばらばらに光らせたいと考えたとき
理論上はいくつまで制御できるのでしょうか?

かなりへんてこな質問だとは思いますがどなたかお願いします
263774ワット発電中さん:04/04/06 16:40 ID:a8FXjGgc
>>262
どの石を使うかで変わってきます。
例えばPIC16F84なら入出力が13本あるから
6*7のマトリックスにして42個かな?
264774ワット発電中さん:04/04/06 17:07 ID:h5gTFYFH
>>263
どうもです。
入力を他に使う場合、数も変わるということですね。
265774ワット発電中さん:04/04/06 19:23 ID:a8FXjGgc
>>264
(;´д`)
そうじゃなくて、18ピンのを使うか、40ピンのを使うかで違うってこと。
266774ワット発電中さん:04/04/06 20:27 ID:h5gTFYFH
>>265
足の数?
18ピンのやつが手ごろでしょうか
267774ワット発電中さん:04/04/06 22:53 ID:eog1gX0K
>>262
使う石はPIC(とトランジスタ)だけですか?
他の石も使っていいならシフトレジスタICなどで利用可能数はかなり増えます。
例えば
8LED+4本(4to16デコーダーIC使用で15バンク)で、12本で8×15=48個制御とか、
10LED+2本(例えば16bitシフトレジスタで16バンク)で、12本で10LED×16=160個
とか。
3本でここまでやる例も(7segmentLED8桁。LED素子数で64)
例はAVRだがPICでもできると思う
http://elm-chan.org/index_j.html
テクニカルノート−AVR: ISP端子の活用−【LEDディスプレイを接続する】
268774ワット発電中さん:04/04/06 23:15 ID:ABXTr+Kv
話端折ってすみません。
当方マイコン初心者です。
これから本格的にはじめようと思うのですが、
どのマイコンを極めればよいのか非常に悩んでいます。
PIC、AVR、H8といろいろ有りますが、
将来性からも考えてどの石がお奨めか、ぜひ背中を押してやってください。
プログラム言語はCで行こうと考えています。
269774ワット発電中さん:04/04/06 23:48 ID:f3XMpDnH
Cで開発するならH8がいいと思うよ。
開発環境も秋月のキットだけで、でソフトからハードまで一通り揃えられるし。
詳しい解説書も最近ちらほら見られるようになってきた。
まあ、どのマイコンを極めるにしても、興味と気合と時間がないとだめぽ。
がむばれ
270774ワット発電中さん:04/04/07 00:02 ID:qQlrxDL/
>>269
どうも、ありがとうございました。
PICスレなのにどうも失礼しました(本当は誤爆だったんです)

H8ですか。
ではさっそくトラ技の4月号の付録あたりからはじめてみようかと思います。
興味はバッチリです。気合入れて行きます!
271774ワット発電中さん:04/04/07 03:40 ID:iEIV/+3g
アセンブラは必須なのだが
272774ワット発電中さん:04/04/07 09:15 ID:5Rnd0w0S
>>267
ラッチ付きシフトレジスタをLED分だけ用意してやればいくらでも可能だな
LEDじゃないがこんなのがある(4線で4096個)
http://www.noritake-itron.jp/kit/sck25616l/index.htm
273774ワット発電中さん:04/04/07 11:05 ID:ELLa6b23
>>262
PICの許容損失からいうと、
各ピン25mA、全体で200mAだから、LEDに15mA流すとするとだと10本くらい
同時点灯がいいところかな?
274774ワット発電中さん:04/04/07 11:06 ID:ELLa6b23
>>273
あ、18ピンの16F628の場合ね。
275774ワット発電中さん:04/04/07 19:22 ID:bpvIwtKo
ランダムにLEDをぱかぱか点滅させたいんだけど
乱数どうやって発生させてるの?
ってGoogったら
ttp://www25.cds.ne.jp/~kamiken/electro/sakuhin/28/28soft.html

あったよぉ・゚・(ノД`)・゚・うれちぃ
276774ワット発電中さん:04/04/08 08:50 ID:FcxAz02C
mplab6.50を使っている人は、mplab6.43以前に作ったプロジェクトファイルの互換性に
問題があるそうなので、プロジェクトを作り直した方がよいらしい。
http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1060489554/67
277774ワット発電中さん:04/04/08 10:18 ID:4yuMCSxW
これからは16F88だね
いちろくえふぱちはち
高性能で安い!!
278774ワット発電中さん:04/04/08 11:18 ID:7uvYfJAA
すいません。ブラウザって何処にあるんですか?
解凍したものをブラウザにドラッグドロップしなさいと言われたんですが・・
お願いします。
279774ワット発電中さん:04/04/08 11:21 ID:eiQ0PYTL
>>278
あなたがここを見るのに2ch専用ツール(2chブラウザ)を使わず、
WindowsなりMacなりの標準の機能を使って見ているなら、それがブラウザ。
とりあえずこのスレを表示させて、そこにドラックドロップ。
280278:04/04/08 11:51 ID:Du+Ysh7i
>>279殿
無事解決しました。
本当にありがとうございました。
281774ワット発電中さん:04/04/08 13:45 ID:Gff2XI2a
>>275
全てのビットが0だとと動作しなくなるので、初期値に注意。

PICじゃないのだが
昔、その原理で光るクリスマスツリー用のイルミネーションを知人に作ってあげた事がある。
でも、「しばらく見てたら気持ち悪くなった。」って言われちゃったよ。
282774ワット発電中さん:04/04/08 15:14 ID:nXOBz78i
>>281 確かに動作しないですね(暇な奴

>昔、その原理で光るクリスマスツリー用のイルミネーションを知人に作ってあげた事がある。
>でも、「しばらく見てたら気持ち悪くなった。」って言われちゃったよ。

ワロタ
点滅を遅くしてジワジワ点滅ならいいのかな?
283774ワット発電中さん:04/04/08 19:51 ID:t0g2cdKl
16F88はバク多くて使えねえです
284774ワット発電中さん:04/04/08 20:35 ID:4ndG4L3Z
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/16f88/index.htm
PIC16F87/88 (Rev. B1 Silicon) Data Sheet Errata

ファイルがよめねぇ・・
285774ワット発電中さん:04/04/09 16:18 ID:fxyBSuLl
>>284
たった今更新されたぞ
Download Page: PIC16F87/88 Data Sheet Errata
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/16f87/11087/index.htm
286774ワット発電中さん:04/04/09 19:20 ID:Md68brWP
>>283
バグが多い???もまいがバグじゃないのか?
元々トリッキーな仕掛けのおおいデバイスですが何か。
250円でこれだけテンコ盛のシーピーユーもないとおもうぞ。
4`ワードもプログラム入るしさ。
大体エラッターみたら、精度の修正と、タイマー1で外部オシレータ
を使うときにはICSPを併用するとオシレータにダメージがあることくらいしか
書いてない。
内部クロックも8段階でアクティブにチェンジできるし、面白いと思うが。
これよりも16F819のRB3の件の方がえらッ太なんだが。
287 ◆5NCmSbJ6eM :04/04/09 19:54 ID:Xq5zw2s/
d
288 ◆dldv8ou06I :04/04/09 19:55 ID:Xq5zw2s/
g
289 ◆0Xlmo1D8C6 :04/04/09 19:56 ID:Xq5zw2s/
test
290 ◆gH3TxDOMuA :04/04/09 20:04 ID:Xq5zw2s/
'
291 ◆N3Q8oyYA5o :04/04/09 20:06 ID:Xq5zw2s/
l
292熱暴走 ◆2SA784NN.A :04/04/10 00:08 ID:AVTvKMqt
>>287-291
こちらでやってくれ。

てすと(AA, 書き込みテスト,フシアナ,トリップ,◆●★)
http://etc.2ch.net/test/read.cgi/qa/1081243927/
293774ワット発電中さん:04/04/10 08:23 ID:qBFwimlI
2004/04/10 06:46:05 PIC プログラマ Ver4
http://akizukidenshi.com/down/tk/picpgm_v4/index.htm

2004・04・10 ベータバージョン
4.hexファイルをpicpgm6.exeに関連付けすると、hexファイルのダブルクリックでpicpgm6.exeの起動
および hexファイルのロードを行うようにしました。
294774ワット発電中さん:04/04/10 13:43 ID:RJvHiOUi
秋月のライターをUSBにして且つUSBから電源取っている人を発見
ttp://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/elec/aki_pic_usb/index.htm
295774ワット発電中さん:04/04/14 19:51 ID:r4FLbHlF
2004・04・12 PICPGM6ベータバージョン
http://akizukidenshi.com/down/tk/picpgm_v4/index.htm

1.PIC16F88対応。
2.PIC18F452で、CPBを有効にすると、WRTC,WRTB,WRTDも有効になってしまう不具合を修正。
3.PIC12C5xx,PIC16C5xシリーズのIDワードをファイルからの読込むときの方法を修正。
4.hexファイルをpicpgm6.exeに関連付けすると、hexファイルのダブルクリックでpicpgm6.exeの起動 および hexファイルのロードを行うようにしました。
5.引数で、HEXファイル、デバイスを指定できるようにしました。詳しくは、ヘルプファイルをご覧ください。

圧縮ファイルを解凍すると、PC側ソフトのインストールファイル(setup.exe)と、新ファームウエアファイル(ppgm636.HEX)が現れます。
PC側ソフトをインストール後、ファームウエアのアップデートを行ってください。
お気づきの点がありましたらご連絡ください。
296774ワット発電中さん:04/04/15 10:47 ID:VQ1E0lWC
ソリトンのPIC-Cコンパイラ
http://www.solitonwave.co.jp/picant/details.htm
誰か使ってる?
297774ワット発電中さん:04/04/15 13:34 ID:X3PZoOIH
>>296
int と long しかない。
printfがない。
298774ワット発電中さん:04/04/15 17:36 ID:pr62KtjS
>>296
http://www.picant.com/c2c/c.html
の、日本語版。バージョンは本家の方が高い。
PIC16F84だけ、ずっと使える。
主にヨーロッパ圏で使われているっぽい。
価格は安い。コードはたまに変なコードを吐くが、オプテマイズはまあまあ。
これをcと思って使っていると痛い目にあう。
cぽい言語と思えば、アセンブラで書かないだけ楽。
ちなみに、間違ってもGrich RCのcコンパイラは使わないほうがいい。
Grich RCのデバッグをやっているみたいになる。
ccscは後閑さんが解説したので結構使われている。
漏れ的には、MPLABと統合できるHi-tech PIC-CのLiteバージョンがいいと思うが。
Hi Softのコンパイラは出来がいいよ。マイクロチップのアプリケーションノートでも
度々でてくるし、自社のCを使わないというのが(w
299774ワット発電中さん:04/04/15 17:40 ID:vtSwLaSS
>>298
日本語のリファレンスとかありますか?>Hi-tech PIC-CのLite
300774ワット発電中さん:04/04/15 18:12 ID:pr62KtjS
>>299
ないっす。
参考になるのは、散々外出だが、
主に、インストールと、実例
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/index.htm
cの組み立て方(少ないけど)
http://www.gifu-nct.ac.jp/gakuseikai/club/brass/nannda/pic/pic.htm
あたりを参照すべし
301774ワット発電中さん:04/04/15 18:15 ID:vtSwLaSS
>>300
私もそこ見たことあります。
英語リファレンス辛くてMPASMに帰りました。
302774ワット発電中さん:04/04/15 18:22 ID:OtQM7PBa
数キロバイトぐらいアセンブラで書け
303774ワット発電中さん:04/04/15 20:22 ID:ZfC0FD7e
>>302
かわいそうに・・・・・・・・・・・・・
土木の測量用冶具をアセンブラで作れる?おまえは天災だな
おれは盆栽だからCの三角関数で組み込んだ。すぐ終わった。
304774ワット発電中さん:04/04/16 00:57 ID:qEwfzVlX
超初心者ですみません。
PICって書き換え耐久回数はどのくらいですか?
あんまり書き込みを繰り返すと支障が出るのでしょうか
H8なんかは100回前後と聞きますが
305774ワット発電中さん:04/04/16 00:58 ID:CZx2cuLS
仕事でH8使っていくつか基板作ったけど、PICいいね。
コストの関係でH8は無理ってのをPICだといけそう。
ロジックで組むより楽でH8より遥かに安い...。もっと早く導入すべきだったなぁ。
306774ワット発電中さん:04/04/16 01:48 ID:jnlx/KCD
>>304
12F675のデータシートみたら、
プログラムメモリー 1万回
EEPROMデータメモリー 100万回
年数40年だよ。
うまく使えばこんな良い石ないよ。150円
>>305
癖のある女みたいで、中を知れば面白い。(知れば知るほどドツボに)
量産だと、かなり値段が落ちるからね。それと量産時ICSP対応にすれば
生PICをリールで買って、検査時にチェックピンで書き込めば、
製品検査時に書き込みも済んで、書き込み代が無くなる。
307774ワット発電中さん:04/04/16 01:51 ID:jnlx/KCD
>>304
H8はルネサスになってから1000回になった。日立時代は100回。
あくまでも保障値。100回書いたから終わりってわけじゃない。
マイクロチップは元々EEPROMを主力にやっていたから、そのノウハウがあるのだよ。
308774ワット発電中さん:04/04/16 04:07 ID:o0oW91hJ
ここ、2年PICをやっていています。
そろそろ、H8かなと思いつつも、PICもより安く高機能になってきて
なかなか、出番がありません。
一応、秋月電子通商のH8のKITを組んで、少し慣れておいて、
その時が着たら、本格的にやろうとは思っていたのですが。。。。
もともと、PCが専門なので、FTDI(USBのインターフェース)を使って
PICを外部IO制御+αで使ったりしています。
アセンブラがややクセがありすぎていやなので、CC5XというCコンパイラを使っています。
シンプルで信頼性の高い製品です。ただ、演算ライブラリしかないので、万人向けではないですが、
チップ依存のライブラリは、データシートを見ながら、自分で書いた方が柔軟性が高いと思っています。
309774ワット発電中さん:04/04/16 12:36 ID:t9AvNYjS
>>307
http://speana-1.hp.infoseek.co.jp/toragi/toragi_3.htm
幸いにH8Tinyには、E-7という非常に安価な(といっても、2万円近くする)
エミュレータがあるので、これを使用すれば、上記の問題は発生しません。
ただし、エミュレータは、ステップ実行する毎にフラッシュメモリを書き換えるため、
何度もデバッグしていると、デバイスが使えなくなるという問題があります。
H8Tinyの公証書き換え回数は、100回までとなっていますので、
100ステップのステップ実行をすると、それでデバイスが使えなくなる計算です。
(実際には、もっと使えるようですが・・・)


ぶわはっははは。実はエミュレータ買おうと思ってたんだが、買わなくてよかたー
310774ワット発電中さん:04/04/16 12:42 ID:t9AvNYjS
PIC16シリーズは、16ビットタイマーがあるくせに、16ビットアクセスが無いのが超難点なんだよな。
16ビットタイマーの値を読むときに
インプットキャプチャが使えないときには、
1)Timer1Hを読む
2)Timer1Lを読む
3)もういちどTimer1Hを読んで、さっきのTimer1Hと値が変わ
 っていたら、もう一度Timer1Lを読み直す。
 (場合によっては、これによって生じた誤差分を引く)

ってな事しなきゃならんのが欝。
311774ワット発電中さん:04/04/16 13:07 ID:Voo9beGQ
>>310
16F88や16F627のTIMER1は、コンペアーモードがあるから、比較したいカウンター値を
CCPR1H,L CCPR2H,Lにぶっこめば、一致したときにCCP1EとRTIE、GIEを
イネーブルにしておけば勝手に割り込みがかかるので便利だけど、
12F675はTIMER1あるのに、コンペアレジスタないもんな(;´Д`)オイ
それと罠に陥ることとして、フリーラン(カウンターを止めない)で読むときは
必ず同期モードT1CYNCを0にして、同期させないとだめぽ。
フリーランのときは>>310の処理がマストになるね。
312774ワット発電中さん:04/04/16 13:57 ID:gi2J12do
質問があるのですが?

現在、877をつかっていろいろ遊んでいるのですが。
RB6,RB7ピンをつかいたいのですが、うまくつかえなかったのです。
どうやら、CONFIGRATION BITのDEBUGを0にしなくては、いけないところまでは調べたのですが。
今度は、MPLAB上で変更する手段がわかりません。

つかっている環境は、
MPLAB6.50
PIC C LITE(フリー版)
です。

ぜひ、教えてください。
313774ワット発電中さん:04/04/16 14:10 ID:Voo9beGQ
>>312
ん?
CONFIGの部分のBit11は、常に1にしておけばいいんだよ。
このデバッグモードを0にしたら、RB6,RB7はデバッグ用のポートに割り振られるから
通常のI/Oとして使えない。
また、このデバッグモードについての詳細は公開されていない。
(どこかに、個人的に解析したものはあるかもしれないが)
結論はBit11を"1"に設定するべし
314312:04/04/16 15:20 ID:gi2J12do
>>313
勘違いしていました。確かにその通りですね。
こちらの方も何とか行きました。ありがとうございます。
もっと、精進したいと思います。
315774ワット発電中さん:04/04/16 18:11 ID:Voo9beGQ
PIC製品を調べていたら
http://www.gemtree.com/p84/index_cz.htm
同じページの面白ソフト
http://www.gemtree.com/download/desktop.exe
316774ワット発電中さん:04/04/17 14:08 ID:RtdgZPxD
>>310
AVRだって、それは(16ビット転送)できまい?(出来たっけ?)
H8あたりは
MOV.L R1,R2 (R1=R1H+R1L=16bit)
とかあるんだけどね。
いかんせん、H8は高い。
やっぱ1チップ300円とかのPICは、貧乏人にはミリキテキなんだよねぇ。
317774ワット発電中さん:04/04/17 14:37 ID:ebif49Jq
AVRだと下位を読むと上位が自動的にテンポラリに入る仕組みなので
16bitタイマー値には同時アクセスが保証されます。
318774ワット発電中さん:04/04/17 20:20 ID:3vpP5WoN
319774ワット発電中さん:04/04/17 20:30 ID:3vpP5WoN
12F683

それにしても、これを早く発売してほすぃ

12F675の改良型と思われ
容量2倍、内部発振回路32k〜8MHz、PWM搭載
12F683
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/12f683/index.htm
このライター、秋月ライターでは未サポート、入手ルートも未確認。
Cコンパイラもどうなってる?
当面は、12F675だね。
320774ワット発電中さん:04/04/17 23:58 ID:gNHdUPIG
>>319
Status = Future Product か。
8ピン系は液晶が繋がらないからなぁ。
321774ワット発電中さん:04/04/17 23:59 ID:gNHdUPIG
>>317
え、そうなの?いいなぁ。
322774ワット発電中さん:04/04/18 04:24 ID:t9gdtSOO
マイクロチップのデザインが変ったよー
http://www.microchip.com/
323774ワット発電中さん:04/04/18 04:35 ID:t9gdtSOO
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1926&type=-1&label=A
秋月が国際化

Akizuki Denshi Tsusho Co.,Ltd.
web: http://akizukidenshi.com/
Address: Nomizu Bldg 1F, 1-8-3 Soto Kanda
City: Chiyoda
Country: Japan
Postal: 101-0021
Fax: +81-3-3251-3357
Description: Programmers and demo boards and kits.
324774ワット発電中さん:04/04/18 04:50 ID:t9gdtSOO
mplab ide 6.50が分かりにくいところに移動
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469
マイクロチップはC17,C18,C30を売るための戦略?
325774ワット発電中さん:04/04/18 14:47 ID:MukrisUx
>>324
ダウンロードしようと思ったら404返されるんだが…
326774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/18 16:23 ID:Lj7tsoIe
>>325
Microchip社のHP見てきたら確かにMPLAB IDE 6.50のDownloadができなくなっているようです。
6.40は下記にて可能の模様...(なんかバグでもあったのなら嫌だな...)
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1999&ssUserText=Download&DesignDocSelect=&x=10&y=9

8ビットマイクロコントローラでなく、16ビットまたはDSPなら以下からどうぞ....
MPLAB Visual Device Initializerというのもあります...
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1475&category=devSoftware
327774ワット発電中さん:04/04/18 16:46 ID:2kuDX01L
6.43までは取れるみたいですね。
http://ww1.origin.microchip.com/downloads/en/DeviceDoc/mplab643.zip
6.50引っ込めたのか?
謎だな。
328774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/04/18 17:03 ID:Lj7tsoIe
>>327
このスレの>>227で漏れがV.6.50をダウンロードしたのが 2004/04/04 でした。
その後、1週間はDLできたと思いまつ...
>>324さんが言うように戦略なのか?それともバグなのか?
329774ワット発電中さん:04/04/18 17:35 ID:fC4GMS8k
こんにちわ!
超初心者ですがご教授ください。
最近、電子工作を始めようと思い、HPを探していたら
初心者はPICプログラマーを作ってみようと書いていたので
早速買って作ってみたものの、どんなものをプログラムして
いいのかわかりません。
こういうものを作ってみるといいよみたいなことを
ご教授ください。
こんなアホですが宜しくお願いします。
330774ワット発電中さん:04/04/18 17:40 ID:MJpvYWsz
まずはLEDを点滅させてみれ
あとは時計とか
331774ワット発電中さん:04/04/18 17:41 ID:sM/TEa15
>>329

実用性あるものとして電子サイコロ

必要なもの:PIC16F84(あたり)、18ピンICソケット
7セグLED, 抵抗(7セグ用のは集合抵抗がカッコいいかも)
タクトスイッチ
ユニバーサル基板 ハンダ少々
以上。

ちょっと拡張すればラーメンタイマーもOK
332774ワット発電中さん:04/04/18 17:46 ID:pzcRavxu
電子工作自体が初めてなら、もっと他のキットを作ったがいい。
いきなりPICはきつ過ぎる。
例えばエレキットとか
http://www.elekit.co.jp/index.php
333774ワット発電中さん:04/04/18 20:33 ID:u4Cj42qx
ラジオ系は完成したら聞こえる感動があるので取っ付き易いかも。
334774ワット発電中さん:04/04/19 08:51 ID:6wEZOgIr
>>333
ラジオは「うまく行かなかったときにテスターだけで調整が困難」というデメリットも。
あ、キットを買うんだったら、まー大丈夫か。
つっか、最初はLEDとスイッチと電池で光らせて見れ。
光ったら、それに2SC1815あたり繋いでみれ。
335774ワット発電中さん:04/04/19 15:14 ID:7UMwzsHP
6.50 は ftp.microchip.com から入手可能みたい
/tools/picmicro/devenv/v6xx/v650
336774ワット発電中さん:04/04/19 15:28 ID:OP5/SLKg
>>335
そこにいけるのは知ってるが、そのあとの肝心なzipファイルがhttp,ftpとも
落とせないんだよ。
337774ワット発電中さん:04/04/19 15:53 ID:7UMwzsHP
>>336
じゃあきっと貴方のやり方が悪いんだね。
私はたった今落とせたから。
338774ワット発電中さん:04/04/19 16:13 ID:OP5/SLKg
http://ftp.microchip.com/download/tools/picmicro/devenv/v6xx/v650/mplab650.zip
ああ、これね。
View で落とせて、DLだとNGとはどうも。
いずれにしても、正規のたどり方ではないね。
もう10日前に6.50を落として使っているので、落とせるとか落とせないとかの問題はしていない。
新しいサイトになって、6.50のリンクがなくなったのは何でかを知りたい。
それとも、単にサイトリニューアルでリンクを作っていなかっただけとか。
誰か情報知っている人教えて。
339329:04/04/19 17:32 ID:P3cCkF8r
返信ありがとうございます。
電子工作初心者なので、キットなどを作ってみたいと思います。
ご親切にありがとうございました。
340774ワット発電中さん:04/04/19 17:57 ID:WVeESG5+
みんなMPLABのバージョン幾つ?
やっぱり最新のやつ使ってる?
漏れはなんか6.XXになってから大幅にインターフェース変わって使いにくいから、
5.0使ってる…
341774ワット発電中さん:04/04/19 18:04 ID:LjUkcc5W
>>340
俺6.40かな?
16f819使う時に思いきって換えた。

結局、テキストエディタでソース打ってる。
342774ワット発電中さん:04/04/19 18:05 ID:OP5/SLKg
6.xx使ったら、もう5.xxには戻れない(W
機能が違いすぎ
343774ワット発電中さん:04/04/19 19:05 ID:GA7urw61
>>340
同士。
新しいのも落としてみたけど使い方わからなかった…。
344774ワット発電中さん:04/04/19 19:24 ID:cpi4BYXy
簡単な英語が読めないんだろ。そうだろ?
345340:04/04/19 20:30 ID:WVeESG5+
>>344
そうですが何か?
>>343
おお、同士キター・゚・(ノД`)・゚・
新しいのは使い方覚えるのかなり体力消耗する…w
個人的にはMPLABはデバッグにしか使わないので今のままで十分だけど、
でもやっぱり新しいデバイスを使う時新しいのバージョンのを使わないといけなくなるなぁ。
346774ワット発電中さん:04/04/20 03:04 ID:3dfPtFw4
microchip.com、元に戻った?
でもエラーが出るとこもあって中途半端
347774ワット発電中さん:04/04/20 14:17 ID:aQQknfMn
Project -> Project Wizard...
->次へ->デバイスの選択->次へ->
Select Toolsuite => Active toolsuiteにMicrochip MPASM toolsuite選択
->location には C:\Program Files\MPLAB IDE\MCHIP_Tools\mpasmwin.exe (多分自動的にそうなってる)
-> プロジェクト名 test01とか、好きな名前を、
Project directroy はBrowseボタンで、好きな所に作る。
-> 次へ->ソースの選択はないから次へ->完了

そのあとFile ->new
ここにソースを書く、どっかからのコピペでもよし。
書き終わったら、file ->save でさっき作ったフォルダーに保存。名前は適当でいい。

次に、こいつをプロジェクトに取り込むので、
Project ->Add File to Projectとして、今セーブしたファイルを取り込んで融合。
あとはF10一発コンパイル。
シミュレータは、Debugger -> Select Tool -> MPLAB SIMで出来る。

日本語にするには、よくいくサイトのBBSに書いてあったので引用
1.MPLAB 6.50を起動
2.File -> New で新規のテキスト画面を表示させる
(もしくは、既存のWorkspaceを開く)
3.Edit ->Propaties... を選択し、TextタブのSelectFontボタンを押し、
 以下の設定を行う

    フォント名 Terminal
    スタイル 標準
    サイズ 6 (5,6,9,12,14で好みを選択)
       5-豆粒、6-標準、9-半角ぽい、12-でかい、でかい半角
       それ以外の数字は設定不可
    書体の種類 OEM/DOS (日本語を選択すると等倍にならない)

4.OKを2回押す

どや、簡単だろー。MPLAB5なんて使ってられなくなるよ。
348熱暴走 ◆2SA784NN.A :04/04/20 16:37 ID:uS8PMNcZ
| \
|Д`) PICデ エコーマシン ツクッタケド、HEX uプ シテモイイ?
|⊂
|
349774ワット発電中さん:04/04/20 17:10 ID:aQQknfMn
>>348
щ(゚Д゚щ)クレ
16F819あたり?16F88?16F873/16F877?18F452?12F675?
350774ワット発電中さん:04/04/20 17:11 ID:BfexFsnS
くれー
351熱暴走 ◆2SA784NN.A :04/04/20 17:27 ID:uS8PMNcZ
では、お言葉に甘えて・・・
回路図は↓に投下しときます。
―VVV― AAで電気・電子回路図を描くスレ ―||―
http://science2.2ch.net/test/read.cgi/denki/1072100443/114-

:020000040000FA
:1000000064008A018301F428F0000308F10009303C
:1000100081001F190E281E08A4001F159501200835
:1000200086008510A0198514051121088600851009
:10003000A11985148511851A1514061024180614A3
:10004000A0030512051605158515200886008510E4
:10005000A01985140511210886008510A1198514A1
:100060008511851A95140610A4180614A00305120C
:10007000051605158515200886008510A01985141C
:100080000511210886008510A11985148511851A8E
:100090001515061024190614A003051205160515DA
:1000A0008515200886008510A019851405112108E2
:1000B00086008510A11985148511851A95150610DD
:1000C000A4190614A00305120516051585152008A8
:1000D00086008510A0198514051121088600851059
:1000E000A11985148511851A15160610241A0614EF
:1000F000A003051205160515851520088600851034
:10010000A01985140511210886008510A1198514F0
:100110008511851A95160610A41A0614A003051257
:10012000051605158515200886008510A01985146B
:100130000511210886008510A11985148511851ADD
:1001400015170610241B0614A00305120516051525
:100150008515200886008510A01985140511210831
:1001600086008510A11985148511851A951706102A
:10017000A41B06140512051605158515A00BDD2810
:10018000A103210FDD280310803086000015000038
:10019000061DA113860C800100150000061D211309
:1001A0008001860C00150000061DA1128001860C3E
:1001B00000150000061D211280010B11710883003B
:1001C000F00E700E0900051205160515851520089C
:1001D00086008510A0198514051121088600851058
:1001E000A1198514851108008F30840074308000B7
:1001F00081308400CF3080003030900081309F000B
:100200009F3084001E3080001C30850085308400C3
:10021000A1308000970192308400FF3080007F3051
:100220009500003086008630840000308000043065
:10023000920091010C30970003309400A001A101BD
:100240000830A600E7200614A003E3200614A0034C
:10025000E3200614A003E3200614A003E320061401
:10026000A003E3200614A003E3200614A003E32068
:1002700006100512051605158515A00B2229A10BE0
:100280002229A60B2229FF30A1008630840003100A
:100290008030860000150000061DA113860C800129
:1002A00000150000061D21138001860C00150000BA
:1002B000061DA1128001860C00150000061D2112EA
:0E02C0008001E23081009101A0308B006629A0
:02400E00422F3F
:00000001FF
352熱暴走 ◆2SA784NN.A :04/04/20 18:18 ID:uS8PMNcZ
>>351 の製作後記
・消費電流は12mA程です。
・起動後、DRAM全ビットに対して8回ダミーアクセスを行っているので、
 音が出るまで2秒程掛かります。
 (ダミーサイクルって、全ビットに対してではなくてDRAM単体に対して
  でしたっけ?)
・DRAMに1bit品種を用いた(手元にこれしかなかった)ので、アクセス
 に時間が掛かり、サンプリングサイクル内に間に合わせる為にアクセス
 手順ルーチンはダミーアクセスでしか使ってません。 サンプリング周期
 でアクセスするコードは上記ルーチンを展開したものになっています。
 (多ビットIO品種のDRAMや、16F873等のIOピンの多いPICを使えば、
  必要なマシンサイクルを減らせるので、サンプリング品質の向上や、
  エフェクトの応用が狙えるでしょう)
・ディレイタイム設定のビットスイッチ読み込みは、当初、弱プルアップ
 されたRBをディップスイッチでGND間にR=1.5kΩで落とす/さない
 で判定しようとしたが、1.5kΩだと重い?のかAD変換にノイズが乗る為
 断念。 現状の回路ではRB2にDRAMの入力容量がぶら下がっている
 為か、一旦Hをスキャンすると次のラインのスキャンでもHが読めてしまう
 現象の為、1ラインスキャンする度にRB2にLを出力して放電。 これの
 解決に時間が掛かった。
353(´∀`∩) ◆R4000nX4Mk :04/04/20 18:36 ID:XfLoY5gQ
 面白い試みですね。
 音を聞いてみたいのですが無理?
354774ワット発電中さん:04/04/20 20:07 ID:uJg5opJH
ぉ、エコーマシンですか。
なんか最近はPIC/AVRにDRAM直結するのが流行っているよね。
355熱暴走 ◆2SA784NN.A :04/04/20 20:45 ID:WsmjGPaY
>>353
スマソ。PCに録音しようとすると何故か激しくノイズが・・・
 それにエコーゲインのVRの設定によるのかブレッドボードで
組んでいるせいか、はたまたフィルタまわりの設計が悪いのか、
なんかたまにボツ・・・ボツ・・・とたまに発振!?している様な... orz
それと、音質もサンプリングレートが低い為、よくありませんです。
356774ワット発電中さん:04/04/21 01:40 ID:joKPdkjO
若松でDRAMの4164が370円で買えるみたいですので、
明日部品を買って挑戦しようと思います。
357熱暴走 ◆2SA784NN.A :04/04/21 13:31 ID:WNtdRjqA
>>356
     マ、マジですかー!?

     /∧_/∧      /∧_/∧    オロオロ
   ((´´ДД``;;))    ((;;´´ДД``))    オロオロ
   //    \\     //   \\ オロオロ
  ⊂⊂((  ヽノヽノつつ ⊂⊂ヽ// )) つつ  オロオロ
   しし((_))       ((_))JJ

4164タイプはメーカーによって1番ピンがN.Cじゃなくて
/REF(リフレッシュ)ピンになっているので、1番ピンは
GNDではなく、+5Vラインに繋いで下さいです。
(と、いうか互換性を考え当初からそうすべきだった...)

それと、>>352 への自己レス
ダミーサイクルは、電源投入後 200uS 程非アクティブな
状態にした後、8回行う。 が、正解・・・
358774ワット発電中さん:04/04/23 17:55 ID:I9PWOb6t
2004・04・23 PICPGM6ベータバージョン
1.PIC16F88対応。
2.PIC18F452で、CPBを有効にすると、WRTC,WRTB,WRTDも有効になってしまう不具合を修正。
3.PIC12C5xx,PIC16C5xシリーズのIDワードをファイルからの読込むときの方法を修正。
4.hexファイルをpicpgm6.exeに関連付けすると、hexファイルのダブルクリックでpicpgm6.exeの起動 および hexファイルのロードを行うようにしました。
5.引数で、HEXファイル、デバイスを指定できるようにしました。詳しくは、ヘルプファイルをご覧ください。
6.PIC16F88追加に伴うPIC16C715の不具合修正。(20040423:V6.3.2&ppgm637.hex)
359774ワット発電中さん:04/04/26 17:56 ID:gDVGJYKg
質問させて下さい

PICでRS232C通信をさせるオモチャを考えています。
その場合、クロックの精度はどの程度必要なのでしょうか?
以前試したものではXtalとか、セラミックの発振子を使ってうまく行ったのですが
今回の物にはポート数が欲しくて内蔵のRCクロックを使って見たいのです。
実は内蔵クロックって使った事が無いのです。

RS232Cの規格やMicrochipのANも調べてみたんですがどうも
見つかりませんでした。

スタート、ストップビットまで入れてもせいぜい10bit程度なので、+/-5%程度
取れてれば良いかと思うので、内蔵クロック(公称1%)でも良いかと思うんですが、
やってみた事有る方います?
360774ワット発電中さん:04/04/26 17:59 ID:/F1VvngJ
361774ワット発電中さん:04/04/26 18:01 ID:/F1VvngJ
362361:04/04/26 18:02 ID:/F1VvngJ
>>359だった(´・ω・`)
(´・ω・`)(´・ω・`)(´・ω・`)
363359:04/04/26 18:21 ID:gDVGJYKg
>>361

どうも有難うございます。

内蔵クロックでいけそうですね。
364774ワット発電中さん:04/04/30 23:54 ID:jE0n2VkU
凄いですねぇ〜。
今度は今流行りの基板付きですね〜。
ttp://www.picfun.com/picbook8.html

明日、早速紀伊国屋でも行くか・・・。
365774ワット発電中さん:04/05/01 00:21 ID:PhHA50uf
部品代約6000円
イラネ
366774ワット発電中さん:04/05/01 00:49 ID:7kECiOCS
>>364
基板が1枚400円@P板 っていうのはいいかもね。
367774ワット発電中さん:04/05/01 20:57 ID:C6kaSg1x
秋月のPICプログラマキット Ver3でic-progは使えますか?
ブランクの12c509aを読み込むと全部0000になってしまいます。
0fff〜0fffで最後が違う値にならないといけないんですよね。
環境はwindows2000で、Enable NT/2000 DriverとEnable Vcc control for JDM
やポートの設定などはひととおり試しました
368367:04/05/01 21:18 ID:C6kaSg1x
すいません使えないようですね。解決しました。
369774ワット発電中さん:04/05/02 01:50 ID:EiKMih22
秋月のVER4アップグレードキット(1500円)と
74HC4066,7812,7805、抵抗とソケットと74HC14(ADM3202の代わり)
と、15V位のACアダプタを集めれば、格安のキットができるよ。
http://akizukidenshi.com/catalog/items2.php?p=1&q=K-00200
http://akizukidenshi.com/pub/faq/K-00038/20040402095533-Manual.pdf
これで、格安につくりました。
370774ワット発電中さん:04/05/03 01:45 ID:HOAVoFsX
2004/5/1
マイクロチップテクノロジー MPLAB6.51アップデート
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469
http://ww1.microchip.com/downloads/en/DeviceDoc/MP651.ZIP
Version 6.50 -> 6.51 Interim Release
Add this text about the v6.51 Interim release:
New Features:
- Alt-key underline added to all menu items
- Project manager speed enhancements (v6.50 make facility slowed this down)
- Bitfield mouseovers
- Structure member pointer support (StructName->MemberName)
- Beta version of PM3Cmd
- Beta version of Visual Procmd

New device support:
PRO MATE II
- PIC16F54/57
- PIC12F635 advance support
PICSTART Plus
- PIC16F716
- PIC18F2331/2431/4331/4431 advance support
MPLAB ICD 2 Programmer
- PIC12F635 advance support
MPLAB SIM
- PIC16F785
- PIC18F8310
- PIC18F8390
371774ワット発電中さん:04/05/03 09:37 ID:DX4BdtwZ
>>369
74HC4066がメーカーによって耐圧が違うから要注意だったよね。
結構、無理な使い方をしているから、耐圧が低いものを使うとアウトだったような。
372774ワット発電中さん:04/05/03 14:30 ID:C3xTXUI1
>>371
アナログ的に動く74シリーズはメーカでまちまちですね。
注意しないとけっこう填ります。例えばワンショットとか、(74HC123とか)
はメーカで時定数がちがったりします。

さて、秋月のライタのお話ですが、参考程度に解説します。
一番食うのが、窓付きPICで、代表的なものとして、12C508
(In-Circuit Serial Programming? (ICSP?) Guide
http://ww1.microchip.com/downloads/en/DeviceDoc/30277d.pdf
P50参照)
IPP Programming supply current 50 mA max がある。
これをコントロールするのは、TC74HC4066AP Toshiba
http://www.semicon.toshiba.co.jp/td/ja/General_Purpose_Logic_ICs/CMOS_Logic_ICs/20011002_TC74HC4066AP_datasheet.pdf
スイッチスルー電流がアナログスイッチ一つあたり25mA
これを2つ束ねているから、最大で50mA取れる。ICCには殆ど電流は流れないので、問題はない。
オン抵抗はTYP 45Ω/2 = 22.5 Ωだが、
全抵抗分 = 13V / 50mA =260Ω
PICの等価抵抗 = 260-22.5 =237.5Ω
PICに掛かる電圧 = 237.5 x 50mA = 11.875Vとなり、
電圧最小値の12.75Vを満足できない。
逆算すると、このスイッチの抵抗は約5Ω以下にしないとならない。

しかし、例えばこれがフラッシュ型だと話は代わって、例えば16F84Aとかだと、
Ippの書き込み電流が200uA maxなのでPICによる電圧降下は無視できる。
また、最近の16F627Aや12F675などのデバイスは書き込み電圧はVCC+3.5V以上あればよい。

整理すると、
1.窓付きの古いタイプやOTP(例えば12C508)は、ワーストケースで計算するとスペック不足
2.フラッシュ型のマイコンについては、問題ない

但し、実際にはプログラムがコンペアをしているのでエラーがもしあれば、
書き込みアプリが警告をだすだろうし、窓付きは開発段階の一過性で使用される場面が多く、
量産には、専用のライタを使用するか、書き込み業者にて書き込む。
(もっとも、このライターで量産を出している企業も現実多いけどね)
12C580Aを実際にオシロスコープやカレントセンサーで状態を測ったことがあるけど、
ワーストケースの半分以下でした。Vppも12.75Vギリギリでています。
それに、今はそんなデバイスなんて使わない方向でしょう。16F88とか12F675とかあるので、
わざわざOTPなんてホビーでは使いませんし。(余談ですが、デジキーに12F675のフラットがあります)
つまり、実際の使用用途として問題は殆どでないです。
それをいったらJDMライタは、なに?(w
企業量産なら、マイクロチップ純正、もしくはメーカ保障完成品を買えということです。
参考までに。
どこかに、自分のところのライタの比較で秋月のライタを比較していたけど、
ttp://einst.hp.infoseek.co.jp/speed/compe.html ここの説明で200Ωとなっているのは、
昔は確かに4000番の66をつかっていたのでそうでした。
あと、キットで2万超えは高い・・・・世の中結局コストなんだよね
373教えてエライひと:04/05/05 23:45 ID:IbNbr5a8
ttp://elm-chan.org/works/motor/pmcc.src.txt
このソースをアセンブルしようとしています。
MPASMと秋月PAどちらもエラーが出て止まってしまいます。
今朝から調べて相違点に関して解説しているサイトも発見しました。
ttp://www.try-net.or.jp/~el_dream/pic/subuse.html
参考にして修正作業していますが悲しいかなまだビギナーの私には
eedata-235; 0,166
-の扱いがわかりません。
それと
jbSW_FL,step_lim; Forword limit SW ?
でもエラーが出てしまいアセンブルできません。
その後の行でも大量のエラーを吐き出してくれます。

もう18時間以上PCの前にいてかなり煮詰まっています。
今から少し休みたいと考えています。

詳しい人、噛み砕いて解説して頂けませんでしょうか?
宜しくお願いします。



374774ワット発電中さん:04/05/06 02:14 ID:/cQtQOKK
初心者がいきなり生意気なことするな。
まずはMPLABのチュートリアルにしたがって簡単なプログラムを書いてみろ。
話はそれからだ。
375熱暴走@エロいひと ◆2SA784NN.A :04/05/06 03:15 ID:pm/IyIAQ
>>373
一番上のURLのサイトをザッと見たけど、コンパイラに何使ってるか
書いてないねぇ。 eedata とか snb とか PA クサいんだが、PA だと
最後の end はエラーになるし。
>>eedata-235; 0,166
手持ちのPAでは - はエラーになる。

サイトに BBS があるようだから、そこで聞いて味噌。
376774ワット発電中さん:04/05/06 04:23 ID:/cQtQOKK
>>373は自分が使っているアセンブラ標記について理解していないのがそもそもの大間違い。
ロジックを理解して自分が使っているアセンブラ用に書き直したほうが勉強にはなるが、たぶんそれは無理だろうねw





377>>373:04/05/06 06:44 ID:XAWSmBpf
>>373です。

>>374
LED1個の簡単な回路を組んでそれを点灯させるプログラムは一応理解出来ました。
>>375
試して頂いた様でありがとうございます。
やはりエラーになるんですね。
マルチになるので当該BBSでの質問は控えていました。
そちらで聞いてみようと思います。
>>376
MPASMのほうが私としてはとっつきやすい感じがしてそちらを使って
プログラムを始めたばかりですので正直、理解しているかと言われれば
生まれた赤ん坊が「あ〜、う〜」発音している段階だと思います。
少しづつ覚えていこうと思います。

皆さん、ありがとうございました。
378774ワット発電中さん:04/05/06 10:28 ID:GySLifPw
>>377(>>373)
PAは癖があるし、サポートももうしないから、
MPLAB6.51を素直に使ったほうが自分のためでもあるよ。
379>>373:04/05/06 18:51 ID:kwExyGfy
774ワット発電中さん
>>373です。

MPLABを使っていこうと思います。
少しづつ前に進みたいと思います。
ありがとうございました。
380774ワット発電中さん:04/05/06 20:33 ID:KDBFAW9V
PICのMLが面白いことになってるなw
381774ワット発電中さん:04/05/06 23:38 ID:DDwCrytI
ちょっと見ビ○コが激しく糞なんだがあってる?
382774ワット発電中さん:04/05/07 01:07 ID:ugqi8FZ4
>>381
琵琶湖?
383774ワット発電中さん:04/05/07 01:39 ID:bPtpqirC
>>381
ビスコ?
384774ワット発電中さん:04/05/07 01:41 ID:iEIV/+3g
ビッコ カタワ
385774ワット発電中さん:04/05/07 01:41 ID:/i/pmOjk
>>380
ROMライタの始末書ってやつ?
386774ワット発電中さん:04/05/07 13:47 ID:+aZA+c71
ML一通も届いて無いぞ?
いつの話だ?
387774ワット発電中さん:04/05/07 15:40 ID:KOLfbj0Z
>>386
ttp://www.freeml.com/ctrl/html/MessageListForm/picfun

あと、新しいPICCコンパイラ。名前を変えたみたいだよ。
Welcome to the SourceBoost IDE and C2C C-compiler homepage
http://www.picant.com/c2c/c.html
388774ワット発電中さん:04/05/07 16:58 ID:+aZA+c71
>>387
サンクス。
今見たらなんかメールが別のフォルダに移動してたみたいで、ちゃんと届いてたw
さて今からじっくり見るとするか。
389774ワット発電中さん:04/05/07 17:11 ID:+aZA+c71
取り合えずざーっと目を通してみた。
まぁ、k藤はいつもちょっと使用してるソフトのバージョン等の書き漏れがあるとバンバン叩きまくるけど、
今回は正論だな。というかそう言わざるを得ないw
つーかこのスレ本人見てるんじゃ(ry
390774ワット発電中さん:04/05/07 20:33 ID:Cl1lgqpC
まぁこちらはヽ(´ー`)ノマターリいこうぜ
391774ワット発電中さん:04/05/07 23:19 ID:gu25KBmQ
マイコンをつかった回路の電源が急に落ちた時、失いたくない最低限のデー
タをデータEEPROMに退避させようとおもいます。
このように、元の電源がなくなっても、そのデータを移動させるわずかな間、
マイコンに電力を供給するためにどのような部品で、どんな回路をつかうの
がのが一般的なのでしょうか?

392774ワット発電中さん:04/05/07 23:26 ID:ypMdHlkV
スーパーキャパシタとか
393774ワット発電中さん:04/05/08 00:17 ID:+lg+dRO8
>391
書き込みのために電流が必要な場合は、普通の電解コンで4700uF位にチャージしておいて
チビチビ使うと数十秒くらい持ちますけど。。。

EEPROMだと書き込み回数の制限とか有るので、普通はSRAMを電池でバックアップ
するようにするとほぼ無限回の書き込みに簡単に対応することが出来ます。
394774ワット発電中さん:04/05/08 20:05 ID:Y70zfxlo
>>313
16F87xのデバッグモードの詳細は、本家の
On-Chip Debugger Specification
にあります。
395774ワット発電中さん:04/05/09 02:15 ID:P8Z5+02z
>>391
FRAMとか、NOVRAMってのも世の中には有る訳だが・・・
396774ワット発電中さん:04/05/09 13:40 ID:TyU0YCrQ
>>391
EEPROMは書き込みに数msかかるので、
データ数が多いとバックアップ時間がかかるね。
保存すべきデータのサイズとの兼ね合いもあると思うな。
397774ワット発電中さん:04/05/09 15:25 ID:63Hc6eDm
>391
Vcc -(A)- ダイオード - (B) - 抵抗 - スーパーキャパシタ - GND
マイコン回路の電源は(B)からとり、(A)を監視すればいいんじゃない
398774ワット発電中さん:04/05/10 19:56 ID:VIyDSjPt
>>397
参考になりまつ。
399774ワット発電中さん:04/05/12 10:17 ID:IQofFFVD
安さにつられて16F648A買ったけど84のプログラムが動かない。。交換性あり
って聞いたけど、、インターネットで648の情報って少ないんだね(´・ω・`)
だれか教えてくれたらうれしいよ。。
400熱暴走 ◆2SA784NN.A :04/05/12 10:41 ID:5H2Msjvm
>>399
648A に限らず、アナログ機能ブロックを持ったPICは
デフォルトで(リセット後、何も操作しないと)ポートAは
アナログ入力になるんでない?
 648A はコンパレータ積んでるから CMCON レジスタ
を操作しないとダメかと...
(他にも何かあるかもしれんが)
401774ワット発電中さん:04/05/12 11:40 ID:XrpfrT1i
>>399
アセンブラで書くのなら、16F84Aのレジスターアサインとまったく別物。
16F6X8A /16F627A系のレジスターアサインは、どちらかというと16F877に近い。
たとえば、デジタルとして使うならばCMCONの部分には0x07をセットしないと
RA0〜RA3の入出力ができなかったりする。面倒でも、使用するデバイスの
仕様書は墨から墨まで読むべきである。
このため、簡単なプログラムなら僕はCを薦めるよ。
CCS、HITECH、SourceBoostなど、フリーウエアのC言語開発環境は
いろいろそろっている。
402774ワット発電中さん:04/05/12 12:13 ID:qUr2/mFK
だね。とりあえず

MOVLW VRCON
MOVWF FSR
MOVLW B'00000000' ;DA Power OFF
MOVWF INDF
;---------------------------------------
MOVLW CMCON
MOVWF FSR
MOVLW B'00000111' ;Comparater OFF
MOVWF INDF
;---------------------------------------
と初期設定する。

403774ワット発電中さん:04/05/12 13:03 ID:IQofFFVD
>> 400,401,402
親切に教えてくれてサンクス!!(・∀・)
ピン配置も84と同じように使えるのでてっきり84のメモリ&ポートの
拡張版と疑わなかったのレス。。。今までアッセンブラしかつかってなかったので
Cにも挑戦してみます。まずわお礼まで!
404774ワット発電中さん:04/05/12 16:33 ID:PKGcar4E
すんません、オイラも質問!
MPASMでリロケータブルに書く場合で、連続した変数領域を確保するにはどうしたらいいですか?

  CBLOCK 0CH
  HOGE1,HOGE2,HOGE3     ;HOGE1=0CH,HOGE2=0DH,HOGE3=0EH
  ENDC

↑こうすると、定数として扱われてしまい、RAM領域の確保はされません。
405774ワット発電中さん:04/05/12 19:45 ID:i7D0ppTN

          ;' ':;,,     ,;'':;,
         ;'   ':;,.,.,.,.,.,,,;'  ';,
        ,:'           : :、
       ,:' \  ,,. 、./  ノ( ::::::::',
       :'  ●     ● ⌒   :::::i.
       i  ''' (_人_) '''' *   :::::i      ぬるぽぉーーーーーー!!!
        :    {+ + +}      :::::i
       `:,、   ̄ ̄      ::::::::: /
        ,:'        : ::::::::::::`:、
        ,:'         : : ::::::::::`:、


406774ワット発電中さん:04/05/12 21:09 ID:YlTLX2Ax
>404
CBLOCK 0CH
HOGE1 ;HOGE1=0CH,HOGE2=0DH,HOGE3=0EH
HOGE2
HOGE3     
ENDC
,じゃなくて改行じゃないかな
407774ワット発電中さん:04/05/13 00:13 ID:02S25R5o
>>406
駄目でつ。
408774ワット発電中さん:04/05/13 00:32 ID:sXPw22yR
>>404
   CBLOCK H'0C'       ;使用する変数を定義する (0Ch から〜 メモリーを確保する)
   HOGE1,HOGE2,HOGE3,HOGE4  ;変数 HOGE1,2,3,4
   HOGEHOGE1,HOGEHOGE2   ;変数 HOGEHOGE1,2
   HOGEHOGE3,HOGEHOGE4   ;変数 HOGEHOGE3,4
   DELAY1,DELAY2,DELAY3    ;変数 DELAY1,2,3
   A_OUT,B_OUT        ;変数 A_OUT と B_OUT
   ADDRESS1          ;変数 ADDRESS1
   ENDC

試してみたけど こんな書き方でも正常にできましたけど
私のこの書き方は、構文まちがいかな?
CBLOCK 0CH の書き方が気になるけど?
409404:04/05/13 01:27 ID:tIC3YnHj
わざわざ、ありがとうございます。
>404のやり方でエラーが出るわけではないです。
うまく説明できないのですが、
リロケータブルにすると、メモリに変数として確保されません。
HOGE1〜HOGE3は定数扱いになってしまいます。

画面ウプッたので良ければ見てください。
http://matsuya.dyndns.tv/2ch/img-box/img20040513012523.gif

問題は、WatchウィンドウでHOGE1〜HOGE3が変数として認識されない。
UDATAで確保した、AFO1〜AFO3が0Chから確保されてしまう。

目的は、HOGE1〜HOGE3を連続したメモリに領域確保して、
間接アドレッシングでアクセスしようと思ってました。

この例ではUDATAでも連続した領域確保がされているのですが…
410404:04/05/13 04:10 ID:p+7bwAC6
すみません。自己解決しました。
CBLOCKの"C"は、Constantsの"C"なので、定数扱いの様ですね。

3Byte連続確保するなら、↓こうすればOKですね。
      UDATA
HOGE1  RES   3

HOGE2,HOGE3を直接指定したいなら、
#DEFINE  HOGE2  HOGE1+1
#DEFINE  HOGE3  HOGE1+2

Watchウィンドウで監視したいなら、
HOGE1のアドレスから+1,+2のアドレスをWatchウィンドウのAddressへ
直接入力すれば、Symbol Nameは表示できませんが監視できますた。
411774ワット発電中さん:04/05/14 08:17 ID:ChRQObYG
ニュースです。
ハイテックソフトウエアのホームページが一新されました。
http://www.htsoft.com/
PICC Lite Compiler
http://www.htsoft.com/products/PICClite.php
mplab6.xx用サポートファイル
http://www.htsoft.com/updates/mplab/mplab6/update.php
デモソフト一覧
http://www.htsoft.com/downloads/http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1060489554/r92
412774ワット発電中さん:04/05/14 09:27 ID:regzs2Lb
>>411
> PICC Lite Compilerって、最適化が商品版に比べて抑えられている、とか、
そういう限定はないんですか?

413774ワット発電中さん:04/05/14 10:05 ID:p5aB9spc
>>412
日本のリセーラーに聞いてみたら?
http://www.htsoft.com/purchase/distributors.php
414774ワット発電中さん:04/05/14 10:42 ID:v3DHkXTr
秋月のPICプログラマーVer3を貰える事になったんだけど、
16f819 と
12f675
には対応していないよね?
415774ワット発電中さん:04/05/14 12:25 ID:p5aB9spc
416774ワット発電中さん:04/05/14 13:14 ID:e5BJkMMm
>>414 対応していない Ver.4からOK.

>>415
調べて分かることしかお前だって分からんくせに
何を大口叩いているんだか.
何か発明でもしてからそんな口はきけよ.
性格悪いんだよ、専門バカが.
417774ワット発電中さん:04/05/14 14:47 ID:p5aB9spc
>>416
ハァ?大体専門バカってなんだ?意味わかんねえな。
世の中にはGoogleという強い検索エンジンがあるのに、
これを>>414そのまんまいれてやれば、引っかかるだろ。
http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&oe=UTF-8&q=%E7%A7%8B%E6%9C%88%E3%81%AE%EF%BC%B0%EF%BC%A9%EF%BC%A3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%83%BC%EF%BC%B6%EF%BD%85%EF%BD%92%EF%BC%93
聞く前にこれくらいしてから聞けっていいたいわけよ。
418774ワット発電中さん:04/05/14 18:27 ID:bS4g4WZc
馬鹿晒しage
419774ワット発電中さん:04/05/14 18:27 ID:bS4g4WZc
oremobaka?
420774ワット発電中さん:04/05/15 17:19 ID:yhC0fo18
その通り
421774ワット発電中さん:04/05/15 18:59 ID:TctejZUY
>>1 を嫁(゜ζ゜)
テメーが解っても、初心者で解らん奴だって沢山このスレ見てんだから、そいつらの参考になるように書けばいいだけ話だろ?一行で終わるんだからw
後々PICを始めようと思ってる奴の為にもなるんだからもっとおおらかに見てやれよ。話題に溶け込みたいって場合もあるだろうし。

>>414は気にすんな。漏れも629使えるようになった程度のレベルだから初心者とあまり変わらん、ガンガレよ(・∀・)つI
422774ワット発電中さん:04/05/16 02:21 ID:nHtli280
PIC16F88
18pinで多機能は良いが、
USARTのRX,TXが、RB2,RB5だ!
激しく使いにくいと思うのは俺だけか?
423774ワット発電中さん:04/05/16 02:44 ID:Fs25F20c
>>422
16F819や16F628とピンコンパチにして欲しかった・・・・・・
ま。今に始まった事ではないけどね(w
424774ワット発電中さん:04/05/16 11:36 ID:fu+MGJNl
PICでオシロ作れないかな。と思ってググったら
トラ技2000年7月の記事でPICを使って簡易オシロを作る記事を見つけたのですが、
バックナンバーはもう在庫がなくて購入できなくて、
とりあえずトラ技のホームページでプログラムは入手できたのですが、
回路図が探してみたのですが見つかりませんでした。
どこかに回路図を置いてあるページありませんでしょうか?
425774ワット発電中さん:04/05/16 11:53 ID:axfeZPts
426774ワット発電中さん:04/05/16 11:53 ID:gvGXwzhF
バックナンバーのコピーサービスがあるぞ。
427774ワット発電中さん:04/05/16 12:49 ID:fu+MGJNl
>>425
それ買うお金があればオシロ買えるので…
>>426
検討したのですが、残念ながら回路図の乗っている
具体的なページ数が不明なので利用できないのです…。
428774ワット発電中さん:04/05/16 13:49 ID:gvGXwzhF
429427:04/05/16 14:04 ID:fu+MGJNl
>>428
わざわざお調べいただいたのに申し訳ないですが、
AVRを使った方のオシロの回路図はトラ技のホームページから手に入るのですが、
picの方のが見つからないのです…
430774ワット発電中さん:04/05/16 14:11 ID:reMqWgCp
>427
ページ数は
P240〜251(簡易デジタル・オシロスコープの製作)
431774ワット発電中さん:04/05/16 14:17 ID:4o8XMRkP
>>429
トラ技に毎月ついてる過去記事データベース(CDROM内)であっさり調べられたぞ。
2000/07のP.240から12ページだ。
432427:04/05/16 16:14 ID:fu+MGJNl
レス有り難うございます。
できれば回路図の乗ってるページを教えていただけないでしょうか?
433774ワット発電中さん:04/05/16 16:24 ID:KTXpyB5s
>>432
12pageくらい全部コピーしなさいよ・・・・
434774ワット発電中:04/05/16 16:28 ID:o81GKmN5
質問があります。
PIC16F873でpage2のプログラム実行中に割り込みが入ると
割り込みが終了してもPC+1に戻らずpage2の初めの方(0800付近)に戻っている様な動作をします。

割り込みをしなければ問題なく動きます。
0004でpclathを避難させてクリアーし、retfieの前で復帰させています。
page1のプログラムだけしか使わないときは割り込みを入れても問題なく動きます。

よろしくお願いします。
435434:04/05/16 16:32 ID:o81GKmN5
訂正
page1→page0
page2→page1
436774ワット発電中さん:04/05/16 17:11 ID:6GfObA0U
>>432
回路図もってるけどうpすると逮捕されるからしない
437774ワット発電中さん:04/05/16 18:22 ID:gB+BAt31
>>436
回路図だけなら大丈夫だと思うが…
回路図上げただけで逮捕なら>>428のサイトの管理人もタイーホだなw
438774ワット発電中さん:04/05/16 21:10 ID:cH+VIWZp
439774ワット発電中さん:04/05/16 21:24 ID:jibXrGhF
>>438
>>427が言ってるのはPICを使ったやつじゃないか?
440774ワット発電中さん:04/05/16 22:12 ID:KTXpyB5s
>>439
しかもオシロじゃなくてロジックスコープだし。
PIC使用ロジックスコープなら回路図なんてもんじゃなかった。
単なる入力とブロック崩しなどと同じVideo出力回路だけ。
このカラーオシロスコープはどうなってるのかな?
単にデジタルRGB出力+CXA1645とかではないのかな・・ソースから想像付かない?


441774ワット発電中さん:04/05/16 22:12 ID:PZ49rsX9
>>424
PICのは外部にRAM付けたりけっこう複雑。
その分、AVRのに比較して実用性は上のような気はするが。
442774ワット発電中さん:04/05/16 22:20 ID:KTXpyB5s
ソース覗いてみた。
equ定義からだいたい想像付くんでない?
csync        equ    ra.2    ; C.SYNC出力ピン

red        equ    ra.5    ; 赤出力
green       equ    rb.0    ; 緑出力
blue       equ    re.0    ; 青出力

we        equ    re.1    ; SRAM ~WEピン
oe        equ    re.2    ; SRAM ~OEピン
;cs       equ    -    ; SRAM ~CSピンはGNDに直続
443熱暴走 ◆2SA784NN.A :04/05/16 22:53 ID:60J8VuM7
>>427
自分の市町村の図書館には置いてないの?

>>434
PDFの Instruction Descriptions の CALL 命令の説明に
 (PC)+1→TOS,
 k→PC<10:0>.
 (PCLATH<4:3>)→PC<12:11>
とある。 ひょっとして、page1 上のプログラム実行中のインタラプトが
原因ではなく、割り込み発生時に PCLATH<4:3> が b'01' or b'11' だと
割り込みベクタアドレスが h'0804' になるのでは?
(MPLAB だと h'0004' に飛ぶけど...)
444熱暴走 ◆2SA784NN.A :04/05/16 22:56 ID:60J8VuM7
>>434
スマソ... 割り込みの後が問題なのね。
よく読んでなかった... ○| ̄|_
445熱暴走 ◆2SA784NN.A :04/05/16 23:02 ID:60J8VuM7
>>434
>page1のプログラム実行中に割り込みが入ると
 (略)
>初めの方(0800付近)に戻っている様な動作をします。
page1 って、h'0800' からだよね?
割り込み処理内で割り込み要因をクリアしてなくて、
retfie で GIE←1 された瞬間に再度割り込み発生に
なってるんでは?
446熱暴走 ◆2SA784NN.A :04/05/16 23:06 ID:60J8VuM7
>>434
度々スマソ。 >>445 はやっぱ無し。
>>444 で自分で書いてるのに... 疲れてるらしい l|l|l ●| ̄|_ l|l|l
 もう寝よう...)
447434:04/05/17 12:02 ID:18HgZyqV
>>443
レスありがとうございます。
page1に入ってから多重割り込みが発生していたのが原因でした。
割り込みの管理難しい
448774ワット発電中さん:04/05/18 15:55 ID:CQrIcxdJ
ネットに公開されていた回路を組みたいのですが、
PICにプログラムを書き込む環境がありません。
ライタを買うのももったいないので、どこかで書き込んでもらいたいのですが、
どなたか、秋葉でPICに持参のプログラム書き込んでくれる店知りませんか?
ぶしつけな質問ですが、どなたかご存知の方が居られましたら、
どうか教えてください。
449774ワット発電中さん:04/05/18 17:04 ID:798kMgYq
>>448
IDが、CQになってるし(W

書き込みサービスは無いよ。JDMライタ でぐぐってもそ
RCDライタなら、もっとかんたんやで。
http://osaka.cool.ne.jp/feng3/pgm6/rcd.html
http://www.ic-prog.com/
http://cgi.biwa.ne.jp/~jr3roc/pic/
450448:04/05/18 18:56 ID:CQrIcxdJ
>>449
有難うございます。
JDMライタを作製することにします。
451774ワット発電中さん:04/05/18 23:01 ID:IH3owacl
PICでTimer割り込み処理中に外部INT割り込みが入った場合
INT割り込みフラグはセットされるのでしょうか?

またこの場合Timer割り込み処理が終了したら
また割り込み処理に戻って今度はINT割り込み処理を
させることは可能でしょうか
452774ワット発電中さん:04/05/18 23:19 ID:fMFN1Jb3
秋月の広告見ると
16F84A \350
16F648A \220
16F88 \300
16F84Aがとても割高に感じる
453774ワット発電中さん:04/05/18 23:43 ID:Y+CW0GXg
>>452
648が在庫が沢山あるか、沢山仕入れられるから安いんじゃないのかな
454774ワット発電中さん:04/05/18 23:51 ID:Y+CW0GXg
で、質問ですが、
AC12Vの入力を取りたいのですがプルアップ抵抗噛ますべきか、
フォトMOSリレー(静音化の為)使って取るべきか、どちらがいいのでしょうか?
455774ワット発電中さん:04/05/19 00:16 ID:Fzc2Wrg1
>>454
フォトカプラのほうがイイのでは?
456454:04/05/19 00:49 ID:1z0xTRAi
よく考えてみたらそうですよね。失礼しますた
457774ワット発電中さん:04/05/19 03:19 ID:ZnIixMMO
抵抗分圧とツェナーではだめ?
抵抗で12Vを5Vか4.5Vくらいに分圧、それ以上の入力電圧が来た時用に
ツェナーでクリップさせる。12V以上来ないなら、抵抗のみ。
458774ワット発電中さん:04/05/19 15:25 ID:xdftOh+T
>>451
データシート読めや。
459774ワット発電中さん:04/05/19 19:06 ID:P+INfWZR
>>458
そんなこと言う前に、おしえてえろいひと
460452:04/05/19 19:32 ID:6i83kibb
>453
在庫や仕入れの関係だろうけど、性能的には 16F88>16F648A>16F84A だし
バイナリレベルで16F84Aコンパチだったら問題ないのにな。
461774ワット発電中さん:04/05/19 19:37 ID:yFccgVF2
Ver4キットを買わせるための価格設定だったりして(w



漏れは、F88に釣られてVer4買ったのだが…
462774ワット発電中さん:04/05/21 08:30 ID:ljSATRtB
16F84AはMicrochipのウェブサイトでの価格も結構高いですよ。
生産が減っているのでは?

http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1005&mid=&lang=en&pageId=74
16F84A $3.42
16F648A $1.83
463774ワット発電中さん:04/05/21 21:19 ID:OCVC7kaw
ネットで探すと16F84Aでの製作例とか多いから需要も多いだろうに
Microchipもひどいな。1種類くらい起動時は16F84Aとコンパチの
作ってくれればいいのに
464774ワット発電中さん:04/05/21 22:20 ID:gIOcHCTR
FSRの一つや二つをいじるだけなんだから別にいいじゃん。
今となっては84を使うメリットが見つからん
465464:04/05/21 22:21 ID:gIOcHCTR
訂正
×FSR
○SFR
466774ワット発電中さん:04/05/22 09:53 ID:nuqx5hgX
リセット直後にコンパレータが有効になっていてデジタルI/Oができない、
というのは初心者が躓く定番だけどね。
467774ワット発電中さん:04/05/22 09:57 ID:Yt7AZbti
>>466
だよね。
CMCONだけでも 00000111 を初期設定にしてほしかった。
アナログコンパレータって大抵の機種でリセットONになってるけど、
こうしないと、電源投入時に壊れるとか、なんか不具合があったんですかね?
468774ワット発電中さん:04/05/22 14:13 ID:nuqx5hgX
>>467
アナログコンパレータと同一ピンのデジタルINがシュミットになっていない
ものがあるからじゃないのかな。
469774ワット発電中さん:04/05/26 08:38 ID:nNQVANWo
PICのギャングライター使っている香具師いる?
使い心地とか教えてくだされ、プリ〜ズ
470774ワット発電中さん:04/05/26 12:04 ID:PnLM8fnl
_| ̄|○
秋月電子のPICプログラマ ver.4のファームウェアアップデートに失敗した…
471774ワット発電中さん:04/05/26 16:53 ID:XbLYthX9
>>470
失敗するとどうなるの?
472774ワット発電中さん:04/05/26 18:42 ID:wAB2oRS4
>>470
V3のPICに戻して、ファームをダウンロードしてきて、
VCC,MCLR,GND,RB6,RB7をV4のチップに配線して、焼直せば使える。
473774ワット発電中さん:04/05/26 20:41 ID:V8aMHjSw
秋月のPICプログラマの最新ファームでF88焼いてる香具師いる?
プログラムソース(MPLAB 6.50 MPASM)で、

__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF

と設定しても、AE-PICプログラマのCFG2の設定は常に、
FCMEM,IESOとも Enable となってしまうのだが?
バグ?
474774ワット発電中さん:04/05/27 13:26 ID:shBrzZpb
つーか秋月のライターソフトはコンフィグレーション読まなかった様な…
475774ワット発電中さん:04/05/27 14:19 ID:ksWA4Fh/
>>473
MPLAB6.51にてテスト。

LIST P=PIC16F88 ;
INCLUDE "P16f88.inc" ;
__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF
ORG 0;
nop;
END;

ビルド結果
:020000040000FA
:020000000000FE
:02401000FC3F73
:00000001FF

LIST P=PIC16F88 ;
INCLUDE "P16f88.inc" ;
__CONFIG _CONFIG2, _IESO_ON & _FCMEN_ON
ORG 0;
nop;
END;

ビルド結果
:020000040000FA
:020000000000FE
:02401000FF3F70
:00000001FF

MPLAB6.51はデータを生成している模様です。
秋月Picwriterでは、無視されているっぽいです。
ベータ版ですからしょうがないですね。
秋月にメールを出せば信じられないほどの速さで直してきます。
476473:04/05/28 21:36 ID:AUQOmJ1m
>>475
そうですか、ありがとう。
秋月にメールするマンドクセ-し、
それほど困ってないから、しばし待ってみます。
秋月の人はここ見てないかな?
477774ワット発電中さん:04/05/29 00:02 ID:C5X1vlJt
MPLAB6.5を使っているのですが
builtしたときに出てくるoutputウインドウに、messageを表示させないようにしたいのですが、どうすればいいでしょうか?
ご存知の方いらっしゃいましたら、ご教授願います
478774ワット発電中さん:04/05/29 01:56 ID:H7DemIav
>>477
むりぽ
479774ワット発電中さん:04/05/29 02:18 ID:Gev9Ui9G
>>477
outputウインドウの枠の一番下にカーソルを合わせ、マウスの左ボタンで
ドラッグしたまま上方向に持ってってみ。
 message が表示出来ない程の高さに縮まるだろ?
480774ワット発電中さん:04/05/29 02:23 ID:hW2r/HJY
>>479当たり前のこと書くな馬鹿!
481774ワット発電中さん:04/05/29 20:30 ID:yE2j0eZC
>>477
Project/BuildOptions.../Project/MPASM Assembler/Categories/Output/Diagnostics level/Errors Only

にすると、大分減る。
482477:04/05/29 20:50 ID:xF9vft+k
ありがとうございます。
バンク0以外のメモリにアクセスするとmessageばっかり出てきて、error探すのが大変だったのです........
これで快適に開発できます。
483774ワット発電中さん:04/05/30 13:55 ID:pZ6Ww5Im
激遅レスだが、
>>482
それを止めたいだけだったら
 errorlevel -302
をソースの前のほうにでも書いておくほうが良いと思うぞ。
484774ワット発電中さん:04/05/31 10:34 ID:VcOO6gv8
>>483
ですね。PICの12F675のサンプルにも
errorlevel -302
 movlw  0xa4
 call    0x3FF        ; retrieve factory calibration value
 bsf    STATUS,RP0    ; set file register bank to 1
 movwf  OSCCAL      ; update register with factory cal value
 bcf    STATUS,RP0    ; set file register bank to 0
errorlevel +302

っていうのがあるよん。
485774ワット発電中さん:04/05/31 12:43 ID:7yXTI1Gj
MPLAB6.52でたよ

>>484
お、それはOSCCALのルーチンだね。
クロックアップできるんだよね。
486774ワット発電中さん:04/05/31 14:57 ID:+yNkNon3
>>484
errorlevelは、おいといて^^; その部分、俺だったら

  movlw   0xa4    ;<-????
  call    0x3FF   ;これも*.LKRファイルで定義してラベルにしたいーw
  banksel  OSCCAL
  movwf  OSCCAL
  banksel 0
てな感じのほうが後々のためになるよーん

487774ワット発電中さん:04/05/31 21:11 ID:B17nLDWb
CCPのスペシャルイベントトリガを使い、正確なインターバルタイマ
(50000回のサイクル数で割り込み発生)にしたいのですが、
プリスケーラを使うとうまくいきません。

TMR1のプリスケーラを1:8として
50000回 / 8 = 6250 (H'186A')
CCP1H = H'18'、CCP1L = H'6A'
と設定したのですが、50001回のサイクル数になってしまいます。
「サイクル数=(CCP1H,CCP1L)×プリスケーラ値+1」となってしまうようなのですが、
何か対処法はありませんか? 使用環境は、PIC16F88とMPLAB6.50です。
488774ワット発電中さん:04/05/31 23:34 ID:2iUDwMQl
>>487
どうせクロックの周波数誤差があるから、50000でも50001でも
いいんじゃないの?
1/50000=0.002%だよ?
489774ワット発電中さん:04/06/01 00:03 ID:FmD8BSE5
>>487
6250→6249にしたらどう?
490489:04/06/01 00:05 ID:FmD8BSE5
ごめん。プリスケーラを使ってるのか。それじゃだめだね。
491487:04/06/01 00:33 ID:7qn+PyB1
レスども。
>>488
まあ、そうなんですが、ちょっと疑問だったもので。

>>489
そうなんです。プリスケーラを使わないなら、
CCP1H,Lの値を-1すればいいのですが…
ダメな事がはっきりしてスッキリしました。
ありがとうございました。
492489:04/06/01 01:15 ID:FmD8BSE5
しかし、解せないのはなぜ50001サイクルだと分かったかだ。
単なる測定誤差なんじゃないか?
493774ワット発電中さん:04/06/01 01:39 ID:ZCOl4omr
>>492
MPLABのstopwatch機能で分かるよ
494774ワット発電中さん:04/06/01 03:45 ID:l6RFfgcL
質問です。
PIC18シリーズの命令でBZっていう命令があると思いますが
Zっていうのはstatus,zのZとして見て良いでしょうか?

英語に弱くて首が回りません
495774ワット発電中さん:04/06/01 08:36 ID:qammXMmN
>>494
そうです。
496774ワット発電中さん:04/06/01 10:31 ID:l6RFfgcL
>495
THX
497774ワット発電中さん:04/06/01 15:59 ID:l6RFfgcL
24V同期三相モーターを駆動させながらロータりーエンコーダーで速度計りながら
秋月LCDにデータ表示させてるんだが
timer1とtime2を両方使っている時に割り込み中に動作が不安定(途中で止まったり、ループをぐるぐるしたり)
になります。

糞コード晒してみます。
http://up.isp.2ch.net/up/4f48e69faed5.txt

黒回路と動画もあるんだがみたい香具師いる?

電子工作半年の分際で調子に乗りすぎたか
498497:04/06/01 16:03 ID:l6RFfgcL
×黒回路→○糞回路
499774ワット発電中さん:04/06/01 19:52 ID:85DRkds6
>>497
長いな...
ソースファイルをブロックに分けてアセンブルしたあと
リンクした方が後々楽にデバッグできるぞ。

ラベル retfielp 以降の4行はだいじょうぶか?
500774ワット発電中さん:04/06/01 20:05 ID:g4Uf4Vyt
>>497 ぱっと見コードが見づらいな、
割込みの処理が長すぎる気がするが、全部読んでないのではっきり言えないけど

    btfsc  pir1,0
    goto  tmr1int
    btfsc  pir1,1
    goto  tmr2int
a)   movf  tempfsr,w    ;fsrを帰還
    movwf  fsr
    movf  temppc,w    ;pcラッチを帰還
    movwf  pclath
    swapf  tempst,w    ;ステータスの値を帰還
    movwf  status     
    swapf  tempw,f     ;Wレジスターの値を帰還
    swapf  tempw,w
b)   clrf  pir1
    retfie

気が付いた所で
・a)からb)の間でpir1<0:1>がセットされても処理できない
・b)でSTATUS<Z>がセットされるのでメインルーチンで問題になる
b)のclrf pir1が癌の様な気がする
501774ワット発電中さん:04/06/01 20:54 ID:EUi2BXgz
>>487
6249にして不足分だけループカウントで時間稼ぎした後タイマ値セットしては?
502497:04/06/01 21:23 ID:l6RFfgcL
>>499
本が推奨したMPLAB4.70使ってるが6.x0にした方がいいかな
デバックはストップウォッチしか知らないし
デバック勉強します。

>>500
>ぱっと見コード見づらいな
同感です。

>・a)からb)の間でpir1<0:1>がセットされても処理できない
1秒あたり十回ぐらいは割り込み無視されても構いません。

clrf pir1削除してみましたが変わりませんでした。
clrfはZに影響するんですね。見てませんでした。

デジカメの動画モードで撮りました
モードはMC12でやる気のない矢印を見て頂ければ分かると思いますが
3回転+90度→3回転+90度→3回転+90度→3回転+90度→逆回転で約20回転後始めた角度に戻る
という動作です。
割り込みを有効にすると最後の逆回転約20回転の中盤で次の動作に進まなくなります。

正常 (約3MB)クイックタイム形式?
http://v.isp.2ch.net/up/0320e64dfaaf.mov

失敗(約4MB)
http://v.isp.2ch.net/up/efb1cf4c9150.mov
503774ワット発電中さん:04/06/01 21:27 ID:85DRkds6
>>487
50000ならぷリスケーラーなしでも16bitでカウント
できるんじゃないのか?周波数が高いのか?
俺のかんちがいか?
504774ワット発電中さん:04/06/01 23:06 ID:l0DFgY4M
12F675とか8ピン系のPICを使ってみたいのですが、
オススメのライタってなにかありますか?

個人的に調べたところでは、秋月で売ってるLEAP-PSTARTが
純正互換、完成品で手っ取り早いと思うのですが対応デバイス一覧に載ってないようです。
それともファームウェアをアップデートすることで使えるようになるのでしょうか・・・
505774ワット発電中さん:04/06/01 23:21 ID:tZ2IS466
>>504
世界一簡単な超低価格のRCDライター
http://osaka.cool.ne.jp/feng3/pgm6/rcd.html
506487:04/06/02 00:15 ID:PICuvzeL
>>501
それをやっちゃ、CCPの意味が…

>>503
50000回でシミュレートしていて、そのままカキコしてしまいました。
50000回なら16bitで足りましたね。スマソ。
実際使っているクロックは12.672MHzです。プリスケーラ不使用で
切りのいい値は 20msec、63360(H'F780') CCPは(H'F77F')なのですが、
割り込み頻度を少なくするため、プリスケーラ1:8で 100msec毎の割り込みにして
時計を作り、丸一日走らせていたら予想以上のズレが生じたので、
おかしいな?と言うわけでした。
507774ワット発電中さん:04/06/02 00:28 ID:6nCVnCZK
>>506
ちょっとまて。12.672MHz ÷ 63360 = 200Hz → 5ms だろ。
計算違いしてるんじゃないのか?
それとも俺の勘違い?
508507:04/06/02 00:53 ID:6nCVnCZK
すまん。タイマ入力がfosc/4だから合ってるね。
509504:04/06/03 01:14 ID:BFpHPGJL
>>505
なるほど、こんなものもあるんですね。
こっちも調べてみます・・・
510774ワット発電中さん:04/06/03 06:21 ID:qtCCX/3n
hitech software では、PICC-18のベータ版テスターを募集しています。
一部抜粋
If you are interested, you must also fit into the following categories:
・You have a current extended support contract
・You have a (preferably large) project
that builds and works with the PICC-18 compiler
you are currently using.
・You are willing to share your project with us.
or, If you can't share your project,
you are willing to compile your project
and do some comparative tests for us.

詳細はこちらを参照してみてください。
http://www.htsoft.com/forum/all/showflat.php?Cat=&Number=12210&page=0&view=collapsed&sb=5&o=31&fpart=1
511774ワット発電中さん:04/06/03 10:03 ID:LgxeN/0U
>>510
そんな難しい英語をそのまま載せるな。ちゃんと和訳してから上げろ。ここは初心者スレ
っていうこと忘れているのか?それとも自慢?
512774ワット発電中さん:04/06/03 10:06 ID:1xmY5apc
>>511
無料の翻訳ソフトもつかえないなんてかわいそうですね。
ちみには到底関係ない話だから、無視しても大丈夫ですよ。

> こんにちは、
> 私たちは、現在HI-TECH PICC-18コンパイラーの新バージョンに取り組んでいます。
> また、私たちは、喜んで外にあるベータ試験を手伝う顧客を捜しています。
> 興味を持っていれば、さらに、次のカテゴリーに入らなければなりません:
> 流れを延長された支援契約を持っています。
> 現在使用しているPICC-18コンパイラーを建造し働く(むしろ大きな)プロジェクトを
> 持っています。
>
> 喜んで私たちとプロジェクトを共有します。
> あるいは、プロジェクトを共有することができなければ、喜んでプロジェクトを
> コンパイルし、私たちのためにいくつかの相対的なテストを行います。
>
> 次のことを注目する、私たちのもとへ送られるすべてのコード/プロジェクト、
> 安全な/個人にしておかれ、目的のテストのために私たちによって使用されるだけである。
> 私たちは、実際にプロジェクトが行うことに興味を持ちません、私たちは、
> 実際の世界のプロジェクトの例で、それにもっと興味を持っています。
>
> 興味を持っている場合、その後、私と連絡をとってください
> [email protected]
>
> あなたの電子メールにあなたのコンパイラーの通し番号、
> および使用するプロセッサー(s)を含めてください。
>
> ありがとう、
513774ワット発電中さん:04/06/03 11:15 ID:RbbapNLf
まぁあれだ、ここはPICの初心者スレであって、
人生の初心者スレではない。
英語を読むくらいは一般常識。
514774ワット発電中さん:04/06/04 17:52 ID:mIEBuysr
PIC16F84のPORTBから、秋月で売ってる液晶SC1602に4bitで接続していますが、
ポート節約のため、そのデータラインにタクトスイッチをパラに接続して、
スイッチを押した時、抵抗を介してGNDに落とすというやり方で、
スイッチ入力も兼ねたいのですが、電気的に何か問題ありますか?
OPTIONレジスタでプルアップしておいて、通常はTRISBをINPUTに、
液晶出力の時は、TRISBをOUTPUTにするという使い方で大丈夫でしょうか?
よろしくお願いします
515774ワット発電中さん:04/06/04 18:45 ID:yTtDzAyO
>>514
問題ないです。しかし、PIC16F84使うのなら、オシレータ内蔵で16F84より安い
16F88,16F648A,16F819等をお勧めします。
516774ワット発電中さん:04/06/04 19:22 ID:L0tzat/i
>>514
スイッチが押されているときに液晶にデータを送ろうとすると化けるのでは…
517774ワット発電中さん:04/06/04 19:28 ID:sPKN0CVy
>>516
化けないために直列に抵抗が入ってるんだろ
518774ワット発電中さん:04/06/04 20:28 ID:mdfBQqMC
>>514
プルアップ抵抗/スイッチでGNDに落とすための抵抗 比を
Loになる程度充分大きくして、
出力Hi時にGNDに落とす抵抗を通る電流に負けずにちゃんとHiになる
ようにすればいけるかな。
519774ワット発電中さん:04/06/04 20:51 ID:zVYSkmFu
>>514
スイッチをGNDじゃなくて出力ポートに接続し、
通常はHigh、ポートを読むときだけLowにすれば
抵抗比は気にしなくていいけどね。
そもそもポートを節約しようとしてるのだから却下かもしれないけど。
520514:04/06/04 21:37 ID:gW2shkCu
皆様ありがとうございます。
とりあえず挑戦してみます。
521774ワット発電中さん:04/06/05 04:06 ID:rGgYig3w
>>511 >>513
>>1 をよく読め。
522774ワット発電中さん:04/06/05 04:53 ID:uO/X92+L
523774ワット発電中さん:04/06/06 18:32 ID:vsS7bZWg
>>521
プッ
524:04/06/07 16:35 ID:ztg+HAvF
AKIプログラマーキット到着し、10日程経ちました。
LEDチカチカ、LCDユニット(LM16155)に名前の表示位は出来るようになりました
私のような本物の超初心者が読むべき解説のサイトをお教え下さい。
命令(ニモニック)、内容、その解説です。
525774ワット発電中さん:04/06/07 16:40 ID:YT4ektcv
526774ワット発電中さん:04/06/07 17:42 ID:ztg+HAvF
>>525
ググルというのは良く見ていますので、やって見ていますが判りません
何しろ「超」ですので、具体的にお教え頂けませんか?
527774ワット発電中さん:04/06/07 17:54 ID:Tjn9vhip
「超」初心者と名乗るなら、なおさら検索してこい。
具体的に…だって?
なら知りたいキーワードを検索窓にぶち込めば良いだけのことだ。
528774ワット発電中さん:04/06/07 17:59 ID:C+t8KPv8
超初心者はあきらめなさい
529774ワット発電中さん:04/06/07 18:08 ID:ztg+HAvF
>>527 >>528
超初心者が超初心者を名乗ってどこが悪いんじゃ
530774ワット発電中さん:04/06/07 18:18 ID:9b881CNd
>>524
とりあえずココへ行ってみ。

http://www.picfun.com/
531774ワット発電中さん:04/06/07 18:19 ID:PloXzbgP
単なる厨だったようです
以降スルーの方向で
532774ワット発電中さん:04/06/07 18:22 ID:ztg+HAvF
>>527 >>528
超初心者のスレにきちんと初心者として質問をしているのにそんな回答をすると
どこかの小学生のように殺されるぞ!!
533774ワット発電中さん:04/06/07 18:28 ID:dRL8Sp99
>>528はもっともな意見だと思うのだか。
それに反して逆ギレとは厨以外の何者でもない。
534774ワット発電中さん:04/06/07 18:29 ID:dRL8Sp99
すまん、興奮した。正しくは>>527
535774ワット発電中さん:04/06/07 18:40 ID:ztg+HAvF
>>534
何に興奮したのか不明だが、532の意味は?
536774ワット発電中さん:04/06/07 18:49 ID:+YhdRdzb
>>535
なんで?532は自分が書いた事でしょ?俺様にもわかんねよ
537774ワット発電中さん:04/06/07 18:58 ID:ztg+HAvF
>>536
貴方様は何に興奮されましたでしょうか?
御回答頂けますでしょうか?
もしかして文章をお読みになり、読解することが出来ない人ですか?
538774ワット発電中さん:04/06/07 19:05 ID:+YhdRdzb
>>537
?だけど答えます。

・何にも興奮してません。そもそもどこから「興奮」って言葉の出所が分かりませんw
・はい
・読解できない文章でなければできるつもりです。
539774ワット発電中さん:04/06/07 19:07 ID:YT4ektcv
>>537
picいぢる前に、とりあえず病院行って来たほうがいいと思う。
内容はともかく、噛み合ってないレスを返してるのは確実に貴方の方。
540774ワット発電中さん:04/06/07 19:18 ID:ztg+HAvF
>>538
>すまん、興奮した。正しくは>>527
出所は534
>>539
一応病院に行って来ます
貴方もね!

541539:04/06/07 19:26 ID:YT4ektcv
>>540
なぜ?

私は貴方の発言が噛み合っていなかったので、
脳に障害があるのではないかと思い通院を促しました。

私が、病院行かなければならない様な事(or発言)しましたか?
反射だけでその様な事を言うのはただの厨房ですよ。
542774ワット発電中さん:04/06/07 19:48 ID:ztg+HAvF
>>541
どこが噛み合っていないのか教えて下さい。
私は初心者として、超初心者のレスに質問したのです。
どこが病院に行かなければならない(脳外科?)のでしょう?
暴言(俺様とか)又はにべもない返答をする人間と私とはどちらが正常なのでしょう
それとも世間常識が通じないのが2ちゃんねるで、それ以外の人間は精神病院行きですか?
543774ワット発電中さん:04/06/07 19:50 ID:IwkbEUbg
>>530 にはお礼も言わず、
煽りっぽいレスのみに煽り返しているID:ztg+HAvF
は荒し確定。みなさんスルーでおながいします
544774ワット発電中さん:04/06/07 20:11 ID:ztg+HAvF
>>543
530がまともな回答と認めているようですね。
それ以外はまともじゃ無いということですな。

いまさら遅いですが 530 さん有難う御座いました。
545530:04/06/07 20:51 ID:9b881CNd
答えて損した気分だなぁ(w

俺も ID:ztg+HAvFは、クソ厨房&荒らし認定。
546774ワット発電中さん:04/06/07 20:56 ID:IVTQ5oBP
まぁまぁ・・・あなたの心にウォッチドッグ
(のぼせたら定期的に頭を冷やそう。逝って良しという意味ではない(^^;))
547774ワット発電中さん:04/06/07 21:22 ID:lUBvXvL5
>524
●PIC・AVR 初心者のためのスレッド-2サイクル目●
ttp://science.2ch.net/test/read.cgi/kikai/1040610345/443-

443 名前:HS 投稿日:03/07/08 20:53 ID:BZremeh/
ここに書き込むのは初めてで、場違いだったらごめんなさい。
PICのアセンブラについて、何か良い本、もしくはHPなどありましたら、教えて頂きたいです!
特にアセンブラプログラムについて、勉強したいので、例などが載ってると嬉しいです。
お願いします。


444 名前:名無しさん@3周年 投稿日:03/07/08 21:56 ID:DtMkEXxx
>443
一般的な所では、著書も有るので便利な
ttp://www.picfun.com/
リンクが有り、ちょっと例が参考になったのは
ttp://www.interq.or.jp/japan/se-inoue/pic.htm
ちょっと古いですが、実用で参考にしている本は
http://www.cqpub.co.jp/hanbai/books/34351.htm
(全ソースファイルCD付き)

アセンブラだけと限定するとテクニックが定石のみとなり発展しにくいです。
C言語系のコンパイル結果(アセンブラ出力)から、効率の良い方法が見つかる可能性も有ります。


445 名前:若輩 投稿日:03/07/09 08:24 ID:EzPEz+QI
個人的にコレとデータシートがバイブル。

PICインタフェースハンドブック The Third Edition
ttp://www.mal.jp/book/book-PIH3E.html

最初に買ったのは、薄くてお手軽な444氏の2番目の物でした。
Cを知っててアセンブラを始めた私はカルチャーショックの連続でした。
今はアセンブラで解説されたアルゴリズム集みたいなのがホスィ。。。
548774ワット発電中さん:04/06/07 21:26 ID:lUBvXvL5
982 名前:ガイシュツ ◆atMKiSyUTU 投稿日:03/10/25 08:55 ID:YZtOJbJN
次スレ用テンプレ案です。よかったらどーぞ

個人でも手軽に使えるオールインワンのマイコンチップ
PIC・AVRについて語るスレッドです。

過去スレ
●PIC・AVR 初心者のためのスレッド●
ttp://science.2ch.net/kikai/kako/981/981417210.html
●PIC・AVR 初心者のためのスレッド-2サイクル目●
ttp://science.2ch.net/test/read.cgi/kikai/1040610345/

参考になるページ
PIC-microchip ttp://www.microchip.com ttp://www.microchip.co.jp/
PIC関連-後閑さんのpage    ttp://www.picfun.com/
System.out ttp://www.ex.sakura.ne.jp/~leocrim/crimson/index.html
PICな日曜日 ttp://www.kimurass.co.jp/picindex.htm
PIC入門 ttp://www.interq.or.jp/japan/se-inoue/pic.htm
549774ワット発電中さん:04/06/07 23:53 ID:LP7vk/xz
>>548
時代はC言語ってかんじだが、まちがっているのだろうか。
この人の全部うごいたぞ。
アセンブラなんて最初から学ばなくてもいいのでは
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/
550774ワット発電中さん:04/06/08 00:17 ID:HZ12o05+
>>549
間違ってる。
時と場合により使い分ける。
551774ワット発電中さん:04/06/08 00:27 ID:88xb3zRX
>549
FED-CVer10.0とPIC-KeyでオンボードICDしてます。
ttp://www.ipishop.com/picprog.html
ttp://www.ipishop.com/picsoft.html

FED−Cを使ってGMカウンターを作ってみたい
ttp://www.asahi-net.or.jp/~gt6s-sbic/electro/fed-c/6-0.html
とか参考になります。
552774ワット発電中さん:04/06/08 00:29 ID:KNVL7wIG
本日秋月電子通商で販売している「AKI-PIC プログラマキット Ver3」
を買ってきました。ジュンク堂でアセンブラ入門の本も買ってきました。
553774ワット発電中さん:04/06/08 00:37 ID:wYOcRlgo
>>549
その通り
C言語、もしくは高級言語を取得すべきである。
今更アセンブラとか逝っているのは、単なる懐古主義か、頭が石膏のように
ガチガチの応用の聴かないやつである。
アセンブラで小数点演算簡単にできんだろうに。
554774ワット発電中さん:04/06/08 01:40 ID:xFvKLC3V
>>552
ガンカレヨ!
555774ワット発電中さん:04/06/08 04:07 ID:rbGOJNOc
>>553

> アセンブラで小数点演算簡単にできんだろうに。
固定小数点。

でも、趣味ならばアセンブラいらないんじゃない?
判らないことは判らないままでも良いのだし。
556774ワット発電中さん:04/06/08 08:40 ID:nKG3g6pa
>>555
コンパイラの吐き出したコードが、
割り込み処理とかで、レジスタとかがちゃんと保存されているかどうか
とか、逆アセンブラを読むくらいの知識はあったほうがモアベターよ。
557774ワット発電中さん:04/06/08 10:55 ID:NT6741/N
>>553
http://www.vector.co.jp/soft/win95/prog/se318076.html
ってことは、これはCコンパイラなので、当然、小数点演算できるわけですね
558774ワット発電中さん:04/06/08 12:12 ID:ZIVWsLXN
「Cでなんでもできるからアセンブラは覚えなくてもいいですよね」
って奴は、
「そのうち日本語マニュアルが出るから
英文マニュアルは読めなくてもいいですよね」
とか言っている奴と同レベルのDQNだと思う。

そういう奴は一生アセンブラのできない四流技術者やっててくれ。
俺も、商売敵は増えない方がありがたいしな。
559774ワット発電中さん:04/06/08 12:48 ID:f7MDz+25
アセンブラに固執しなくても、ある程度の用途ではCで開発するのが
格段に早いんだけど。アセンブラは最近殆どつかわなくなったなー。
アセンブラ使うほどタイトな設計をしないし。
150円程度のマイコンがCで作れるのはすごいよね
560774ワット発電中さん:04/06/08 13:00 ID:5Oaw1nyn
昔はCコンパイラも高価で、有難みもひとしおだったものじゃ
561774ワット発電中さん:04/06/08 13:03 ID:HZ12o05+
まぁ、趣味で使う場合と、実務で使う場合では話が違うと思うが。
ただ、トラぶった時に、アセンブラが読めないと不便ではある。
562774ワット発電中さん:04/06/08 13:50 ID:/fANndpH
>>548
有難う御座いました、大変参考になります。
貴方のおかげで気持ちが救われました。
563774ワット発電中さん:04/06/08 15:00 ID:S4y4FUhB
>>560
もっと昔は2PASSアセンブラ(ラベルだけ。「マクロって何?」の時代)も高価
だったから、ハンドアセンブルしてた…相対アドレスの計算がメンドかったw
564774ワット発電中さん:04/06/08 15:05 ID:7xyKtLot
正直、16F84程度でLEDやリレー動かしたりちょっとタイマー回す程度な
応用だったら、Cなんて持ち出すよりアセンブラでやった方が速いと思う…。
565774ワット発電中さん:04/06/08 17:19 ID:QQsKVIYR
PICなんて命令コードが少ないんだからアセンブラつかったって苦にはならないけどね。
MPLAB IDE様さまだよw
566774ワット発電中さん:04/06/08 17:55 ID:UCFsTkzX
私中学の時膝たけだったけど、女子からも男子からもダサいとか
ヤンキー、スケバンみたいとか凄かった。散々言われた。
でも突然短くして騒がれるのも嫌でできなくて、高校入学を機に
ミニにしました。男へ挑発じゃなくて、ミニが定番になってて
それに見慣れてるから長いのが変だと思うんです。だから女子は
ミニスカートなんです。確かにミニにしてからの方がモテるけど。
現に私は女子校にいますが皆短くしてますよ。そのうちロングが
流行れば皆そうするんじゃないですか?
でも私は男の人が短パンはいてても、触りたいとも思わないです。
>>1みたいな考えの人がいるからいつまでも痴漢などの性犯罪は
なくならないのかなーと思う。
567774ワット発電中さん:04/06/09 00:03 ID:yls5wGNt
>>566
こういう誤爆は、おじさんにはちょっとうれしい!
568774ワット発電中さん:04/06/09 23:19 ID:YQy7KbSw
先週の土曜日の出来事・・・

さあ!秋月でプログラマーキット買って
半田付けも終了!!CDもセットアップ終了!
ボードとPCの通信もバッチシ!!
どらどらPIC12C509Aをセットして・・・
ん?「プログラム」
ここをクリックかな??
お!なんだか動いてるぞ〜感激。。。
ん?どうなったのかな??
もう一回クリック!!
あれれ?今度は何にもならないぞ?



「PIC12C509Aはワンタイム商品です」
569774ワット発電中さん:04/06/09 23:29 ID:z32G8SLl
>>568
PIC12Fxxx買ってくれば・・・(;´д⊂)

あ、それはそれで(バージョンアップしないと)動かないか。
570熱暴走 ◆2SA784NN.A :04/06/10 16:24 ID:nGuBqiNP
電子サイコロ作ったんだが、うpする?
571774ワット発電中さん:04/06/10 18:02 ID:spXF/nCc
MPLAB6.53が出たよ
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469
>>570
picファン獲得作戦(w
12f629 or675?
572熱暴走 ◆2SA784NN.A :04/06/10 18:44 ID:nGuBqiNP
>>571
16F84
・1〜4ダイス(SW設定)
・2〜6V(低電圧側はLEDのVf次第)
・手動 or 自動停止(SW設定)
・ダイス毎のストップボタン
・オートパワーオフ(70〜90秒,5uA@5V),
 スタートボタンによるウェークアップ

ソースは何処にうpすればいい?
573774ワット発電中さん:04/06/10 20:15 ID:UZmLV3Qs
>>572
16F84じゃなくて、12f675で作ったサイコロなら見てやってもいいが。
18ピン以上のpicじゃ面白くもなんともないっていうか、小学生の夏休みの工作だろ。
574774ワット発電中さん:04/06/10 20:23 ID:h5VByaXx
>>572
hexを直接カキコしてくれればOK
帝で逆アセンブルもできるし
575774ワット発電中さん:04/06/10 20:33 ID:wJsA/Zxd
PICにDSPが有るんですね〜〜
これを使うと何が出来るんですか??
わかる人教えて下さい。
丁愛のDSPみたいに高機能過ぎないので
電子工作には良いのかなとも思います。
(ツールもフリーみたいだし)
うまい活用方法は無いものですかね?
576熱暴走 ◆2SA784NN.A :04/06/10 21:14 ID:nGuBqiNP
>>573
8PINだとサイコロ1個になってしまうので、検討段階で却下しますた。

ソース(tab文字数=4です)
tp://radio.s56.xrea.com/radioup/circuit/radio_0066.txt

回路図
―VVV― AAで電気・電子回路図を描くスレ ―||―
http://science3.2ch.net/test/read.cgi/denki/1072100443/

バイナリ
:020000040000FA
:1000000064008A018301E3288C0003088D00040842
:100010008E00860186308400FF3080001E3085000F
:100020008F009830810006089500F03080009E080F
:10003000031920281E0C03181F281B0503190F1471
:100040000F0885001408820745283B2831288615AB
:1000500013080F058500193095196D20951D762020
:100060005328061512080F058500183015196D2044
:10007000151D76205328861411080F0585001730AA
:1000800095186D20951C76205328061410080F052E
:100090008500163015186D20151C76201A30951B1A
:1000A0006D20951F7620940A150E0339013E140227
:1000B000031894019B0A9C08031D9C03A00FA10335
:1000C000A10A0B110B100E0884000F100F088500F9
:1000D0000D0883008C0E0C0E090084000130000214
:1000E000031C0800801B13308000080084000130CE
:1000F000000703190800801FF63080000800150E65
:10010000033982070134033407340F341B1B9E1458
:100110001B1F9E1008009C08031D0800C5309C0092
:100120001E101F181E141F109D08031D9D03221C66
:100130009C282008AE209000A21CA128200EAE20F2
:100140009100221DA72821082006AE209200A21DA2
:100150000800210E2006AE2093000800A3000739F6
:1001600082070F341D340734153405341134000070
:1001700023081B07AE2819090319A211180903192E
:10018000221117090319A2101609031922100800D9
:10019000061B08009D08031D080006309D00D120A5
:1001A0000800A21DD628A2111F140800221DDB285A
:1001B00022111F140800A21CE028A2101F1408001E
:1001C00022101F140800813084000F3080001E3080
:1001D00085008530840080010030860086308400F0
:1001E000F030800094019B01A001A101A2019F01B8
:1001F00001309000910092009300A0308B000130FC
:100200009E00FA309C009C08031D03299C009C085A
:10021000031D072902309E00FA309C009C08031D34
:100220000E299C009C08031D12290F30900091009C
:10023000920093009E019A08031D1B290330A3001E
:100240009D01FF309C009C08031D2D29FF309C0060
:100250009D0B2D29A303031952291A09031D2329D4
:100260001B08A10718309D007F20A2008B2086204C
:10027000BB20C8201E081F040139220403191A29B3
:100280009A08031D36298B208620BB20C8201E0813
:100290001F040139220403191A291A09031D4329CD
:1002A000D12036298B121E308500860186308400CD
:0A02B000803080008B156300E32806
:02400E00F33F7E
:00000001FF
577熱暴走 ◆2SA784NN.A :04/06/10 21:16 ID:nGuBqiNP
訂正

回路図
―VVV― AAで電気・電子回路図を描くスレ ―||―
http://science3.2ch.net/test/read.cgi/denki/1072100443/126

○| ̄|_
578774ワット発電中さん:04/06/11 10:07 ID:845XavJU
>>577
AAでよくそんな複雑な回路をかけますね。(w
すごく複雑なさいころでつね(w
579774ワット発電中さん:04/06/12 17:39 ID:w7OPuse8
PICでモータの回転方向の制御したいんですが
そのモータは、かける電圧の正負で回転方向が変わるんですけど
PICから負電圧ってどうやってだすんですか?
580774ワット発電中さん:04/06/12 17:43 ID:MIBqNOpM
つりかも知れんけどPICからモーターを回すための電流をとることは出来ませんw
市販のHブリッジICなどを使うと楽です。
581774ワット発電中さん:04/06/12 18:15 ID:QCYdg4Rr
>>579
TA7291でも使えば?
582579:04/06/12 18:16 ID:w7OPuse8
つりじゃないっす(_ _)レスありがとうです
PWMで回転速度は制御できるみたいですよね。
それで負電圧だせたら、逆にまわるかなー
っておもったんですが・・・
基礎から勉強やりなおしですかねΣ( ̄□ ̄)
583774ワット発電中さん:04/06/12 18:21 ID:MIBqNOpM
TA8429Hってのもお勧め。3Aも流せる。
584774ワット発電中さん:04/06/12 18:24 ID:KVHMm2Vp
模型で使う小型のモータで自分の実験用に割り切れば、
2SC1815と2SA1015のエッチブリッジで動くよ。
現に、オモチャ分解したら、こんなのがあったわけだし。
トランジスタのコレクターとエミッタにはダイオード必須。

ま、本格的にやる場合は、FETがオン抵抗が小さくて便利だよ。
後閑さんのサイトも参考に。
http://www.picfun.com/equipj37.html
585774ワット発電中さん:04/06/12 20:27 ID:rSV9z6mk
ソースきぼんぬ!
586774ワット発電中さん:04/06/13 15:35 ID:BMXQ7/o3
MPLAB6.53をインスコしようとしたけど、
32%で止まるOTL
587774ワット発電中さん:04/06/13 16:02 ID:lNDfOMvy
>>582
PICから直接モーターを回す話はおいといて考えるなら、
モーターを逆回転させるには、負電圧を出すのではなく、
例えばモーターの+を+5Vに、−をGNDにすれば正回転、
モーターの+をGNDに、−を+5Vにすれば正回転
ってな感じで制御すればいい
588冗談レス:04/06/13 16:28 ID:UI4U6ZaJ
マブチモーターなら2.5Vでも回るから、±2.5Vの電源を使うのはどうよ?
PICのVddに+2.5Vを繋ぎ、Vssに-2.5Vをつなぐ。
"1"出力で正回転、"0"出力で逆回転。出力フローティングで停止。
589774ワット発電中さん:04/06/13 16:41 ID:K23XDcAA
>>583
TA8429Hはいいね。お勧め
TA8440Hは取り扱い注意だ。簡単に壊れるぞ
590774ワット発電中さん:04/06/13 18:07 ID:FbAapNjl
>>586
そんなあなたに
http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1060489554/
ZIPに戻したようで。
591774ワット発電中さん:04/06/13 20:33 ID:lNDfOMvy
>>588
低インピーダンスな2.5Vを用意するのが難しいと思われ。
592774ワット発電中さん:04/06/13 20:36 ID:lNDfOMvy
同じタイマーから2つのPWMを生成できるマイコンで、
2つのPWMをトランジスタ経由してモーターの両極につなぐというのも
おもしろいかも。PWMの差分で正転逆転する。
面白いだけで無駄遣いかもしれない
593熱暴走 ◆2SA784NN.A :04/06/14 02:11 ID:D1IcxHRz
>>578
>すごく複雑なさいころでつね(w
工 エ エ (´д`) エ エ 工

じゃ、>>573 のリクエストにも応えて、12f675 バージョンをば...
★仕様
・1 or 2ダイス(SW設定)       ・2〜3.5V(低電圧側はLEDのVf次第)
・手動 or 自動停止(SW設定)    ・ダイス毎のストップボタン
・オートパワーオフ(70〜90秒),スタートボタンによるウェークアップ
★ソース(tab文字数=4です)
ttp://radio.s56.xrea.com/radio/src/radio0005.txt
★回路図
―VVV― AAで電気・電子回路図を描くスレ ―||―
http://science3.2ch.net/test/read.cgi/denki/1072100443/132
★バイナリ
:020000040000FA
:1000000064008A018301C728A0000308A100040836
:10001000A200333085049530840033308000853071
:1000200084003B3080009A3081000508A70095309D
:1000300084008001A30130082D05031D23158530A0
:100040008400260882074C283F283328250E0F39C4
:10005000230420388500183080002930A71A6F202B
:10006000A71E78205C2825080F3923048500183046
:1000700080002830271A6F20271E78205C28240E45
:100080000F39230410388500283080002A30A71843
:100090006F20A71C78205C2824080F3923048500D2
:1000A000283080002C30A7196F20A71D78202B3016
:1000B00027186F20271C7820A60A04302602031870
:1000C000A601AD0AAE08031DAE03B20A0B110B1058
:1000D0002208840021088300A00E200E090084005D
:1000E00001300002031C0800801B4F308000080014
:1000F00084000130000703190800801FBA30800017
:100100000800AA08031903340134AD1BB014AD1F55
:10011000B0100800AE08031D0800C530AE00301056
:10012000311830143110AF08031DAF03331C9B2866
:100130003208A120A400B31C0800320EA120A500A3
:100140000800B400073982072034323400341234F6
:1001500002341334000034082D07A128290903199B
:10016000B3102809031933100800AB08031908005D
:10017000AF08031D08001830AF00BF200800B31CF3
:10018000C428B31031140800331031140800903023
:100190008400FF239000073099009930840080018B
:1001A0009F019F30840060308000303090008130AB
:1001B00084000F30800096308400800195308400E8
:1001C00008308000A601AD01B201B301B1010330D6
:1001D000A400A500A0308B000130B000FA30AE00C2
:1001E000AE08031DF028AE00AE08031DF42802304F
:1001F000B000FA30AE00AE08031DFB28AE00AE081A
:10020000031DFF282030A400A500B001AC08031D89
:1002100006290C30B400AF01FF30AE00AE08031D5C
:100220001829FF30AE00AF0B1829B40303193B297E
:100230002C09031D0E296030AF008120B3008A20F5
:100240008520AE20B520300831040139330403196C
:100250000529AC08031D1F298A208520AE20B52062
:100260003008310401393304031905292C09031D11
:100270002C29BF201F298B1285018530840008306E
:10028000800096308400083080008B156300C728FA
:02400E00843FED
:00000001FF
594&rlo;ンーキャシ(´・ω・`)&lro;:04/06/15 10:33 ID:EY+Ap0wQ
この12F629や16F88が書き込めるソフトに
http://members.aol.com/dl4yhf/winpicpr.html
日本語パッチが出た!
http://feng3.cool.ne.jp/winpic/winpic.html
RCDライター
http://osaka.cool.ne.jp/feng3/pgm6/rcd.html
と共に使えば(゚д゚)ウマー
595774ワット発電中さん:04/06/15 14:30 ID:f6dKYVJu
>>594
名前とかが逆順だけどどうやったの?ヒマなら教えて。
596594:04/06/15 15:35 ID:EY+Ap0wQ
>>595
http://science3.2ch.net/test/read.cgi/denki/1086330979/l50
>>593
動いたよーPICKITに書いてみた。
マイクロチップがdsPICでコンテストやってるよ。
ICD2キットが安く手に入る。
ワールドワイドの展開で7/24までやっているそうだよ。
コンテスト期間中にICD2を買っても、コンテストに出るのは絶対ではないらしい。
また、コンテストで優勝すると、
Harley Davidson® Motorcycle or $15,000USD cash!
だってさ!
598(・∀・)ニヤニヤ lo:04/06/15 15:53 ID:EY+Ap0wQ
599774ワット発電中さん:04/06/15 16:10 ID:ERwjJRFo
>>598
どれ買えばいいん?
600774ワット発電中さん:04/06/15 16:40 ID:EY+Ap0wQ
どこでコンテスト・キットを購入することができますか。
?DM300015コンテスト・キットは、ヨーロッパのアメリカあるいは部分で、
あるいは任意のマイクロチップに認可された分配者から買いマイクロチップ
から世界的に購入することができます。あなたがDM300015でICD 2を買うこ
とを計画すれば、分配者があなたのクーポン中のICD 2割引を尊敬するために
認可されます。販売代理店へのdsPIC設計コンテストに参加していることを
示してください。(マイクロチップを買う、コンテストの最初に
クーポン能力を持っていなかった。)。
困難を経験すれば、接触[email protected]
マイクロチップは分配者を認可しました。

Where can I purchase the contest kit?
? The DM300015 Contest Kit can be purchased from Buy
Microchip in Americas or parts of Europe or from any
Microchip authorized distributor worldwide.
If you plan to buy the ICD 2 with the DM300015,
distributors are authorized to honor the ICD 2
discount in your coupon. Indicate that you are
participating in the dsPIC design contest to the
sales representative.
(Buy Microchip did not have coupon capability
at the start of the contest).
Contact [email protected]
if you experience any difficulty.
601774ワット発電中さん:04/06/15 16:55 ID:2qJMWm6e
>>325
いい加減にしろ!
テメェのノー味噌にリセットIC埋め込むぞゴラァ(゚Д゚ )
602774ワット発電中さん:04/06/15 16:56 ID:2qJMWm6e
601は誤爆です…ハズカシイOTL
603774ワット発電中さん:04/06/15 19:14 ID:EY+Ap0wQ
>>602
(:D)| ̄|_ =3 ブッ
604774ワット発電中さん:04/06/15 19:20 ID:Ip1dVsMe
>>600
で、いくらで買えるん?
605774ワット発電中さん:04/06/15 22:22 ID:5S3g1GA+
>>604
単体で299jするボードにコンパイラとか付けて、139jだそうだ。
606774ワット発電中さん:04/06/16 08:59 ID:weIZUNSt
>>605
そういえば、昔、TIがDSPボードを1万円くらいで売っていたよね。学習用とかで。
あぁいう安いDSPってもうナインんですかねえ? スレ違いごめ。
607774ワット発電中さん:04/06/16 10:46 ID:fs53kWjl
>>606

秋葉の若松でSH-DSP評価キットが1万程度で売ってる。
608(`・ω・´)シャキーン  &rlo;ンーキャシ(´・ω・`)&lro;:04/06/16 10:47 ID:aOY/Lba9
秋月のPICライターV3.5+V4のアプリ、ファームがパワーアップ!

http://akizukidenshi.com/down/tk/picpgm_v4/index.htm
609774ワット発電中さん:04/06/17 14:36 ID:OckFXh+p
HI TECH PIC C liteでかける唯一のデバイス、16F684はデジキー以外で売っているところをご存知ですか?
US$1.54で買えるし、10BITADが使えて14ピンで2Vから動いて8メガヘルツまでの
内部オシレータもっていて、コンパレータがあるから、秋月さんあたりに
取り扱ってもらいたいです。
http://ww1.microchip.com/downloads/en/DeviceDoc/41202C.pdf
610孤独な学生:04/06/17 18:18 ID:WAXpdpMM
PIC16F87Xの電源電流について聞きたいのですが
どのくらい流れるのでしょうか?
参考になるかどうかわかりませんが、ソース電流が25mAと書いてありました。
(規格表を見ても載っていないもので)
611774ワット発電中さん:04/06/17 18:20 ID:XEfHUmA7
データシートくらい見ようぜいぃ
612熱暴走 ◆2SA784NN.A :04/06/17 19:37 ID:2+JuHCWD
>>611
禿銅

データシートには、動作時とスタンバイ時の消費電流も載っている。

ttp://www.microchip.co.jp/ 米黒チップ・テクノロジー
→各種ドキュメント 日本語ドキュメントもダウンロードできます。
→PIC16F87Xデータシート(約1.80MB)

で、辿り着けるよ。
613774ワット発電中さん:04/06/17 19:45 ID:cWaSCCKN
>>610
今でも電流値なんかは日本のmicrochipで提供するデータシートには載ってないんだっけ?
・・・・いま確かめたが日本語版には書いてないな
本家本元のデータシートをあたるべし。
ちゃんと本社へのリンクも張られていることだし。
614774ワット発電中さん:04/06/20 13:50 ID:ErxTmRHT
教えてください。
PIC16F88で外部EEPROM(24LC256)とI2C通信をしようと企んでいるのですが、
F88にはSSPしかありません。(MSSPではない)
この場合、F88をI2Cのマスターとするには、SSPは何の役にも立たず、
ソフトでシコシコやるしかないと言うことでよろしいでしょうか?
615774ワット発電中さん:04/06/20 14:19 ID:NrLM0DEw
>>614
PIC16F88のdatasheet p.89より
An overview of I2C operations and additional information
on the SSP module can be found in the PICmicroR
Mid-Range MCU Family Reference Manual
(DS33023).
Refer to Application Note AN578, “Use of the SSP
Module in the I 2C. Multi-Master Environment”
(DS00578).
616774ワット発電中さん:04/06/20 15:41 ID:Du3cDI9V
>614
Q24 シリアルEEPROM(IIC)のアクセスがうまくいきません。
ttp://www.geocities.jp/michi_kou/faq.htm#Q24
617774ワット発電中さん:04/06/20 15:52 ID:Du3cDI9V
>616
I2C通信の使い方
ttp://www.picfun.com/c15.html
618774ワット発電中さん:04/06/20 17:32 ID:kd4fQAIY
>>614
すまん、masterか・・・
じゃだめってことですね
http://ww1.microchip.com/downloads/en/AppNotes/00554c.pdf
619614:04/06/20 18:24 ID:0eqX2Z8q
すみません。マニュアル読みつつ居眠りしてしまいました。
半日が無駄に。  _| ̄|○

16F88+ソフトでI2Cは使った事があるので、
I2Cの仕様については、一応分かっているつもりですが、
SSPモジュール付きのPICを使うのは始めてで、
英語が苦手な為、はまってしまいお聞きしました。

>>618
駄目ってことですか。 ありがとうございました。
620614:04/06/20 18:27 ID:gXa6KW89
↑「16F84+ソフトで…」ですた。
621anyone moderator:04/06/23 13:18 ID:2GUiGpdD
Hi,All
HI-TECH PICC Lite Compiler
Freeware PICC Lite Compiler v8.05 is available!!
HI-TECH Software is pleased to announce the release of a totally free
ANSI C compiler to support selected Microchip devices.
The HI-TECH PICC Lite compiler is a freeware version of
our industrial-strength PICC compiler and supports the
16F877, 16F877A, 12F675, 12F629, 16F627, 16F627A, 16F684,
16C84, 16F84 and 16F84A devices.
http://www.htsoft.com/products/PICClite.php
622774ワット発電中さん:04/06/23 13:50 ID:5757UTN1
だいぶ以前に水銀線ランプ寿命計の代替物の話題があったような
気がするが、使用済みの廃棄品が入手できました。
電極10本あるLCD(9セグメントバー?)にSSOPのPIC16LC554-04/SS
と32768Hzの水晶とボタン電池がついてました。
これが使い捨てなのね〜
623774ワット発電中さん:04/06/23 16:48 ID:jgSr8ByP
そういや、PICのポートは負論理なんですか?
624774ワット発電中さん:04/06/23 16:50 ID:mSy6+9Fs
625774ワット発電中さん:04/06/25 00:24 ID:DN+hTR2t
たまには、こんなのもいいでしょう
http://www.fsinet.or.jp/~mad/0026.htm
626774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/06/25 00:45 ID:gFufzXBA
>>623
http://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf
例えば、16F873の場合、RA4だけオープンドレインだったり...(SEE FIGURE 4-2)
627774ワット発電中さん:04/06/25 10:49 ID:g/eXujZX
>>621
ぴーあいしーしー ぴーあいしーしー
う〜ん、なんか口にまとわりつくんぁ〜(笑)
ぴーあいしーしー ぴーあいしーしー
ぴーあいしーしー ぴーあいしーしー
628774ワット発電中さん:04/06/25 11:04 ID:g/eXujZX
>>626 え?みんなじゃないの!?
629774ワット発電中さん:04/06/25 17:46 ID:R5QbKmCV
>>627
新しいハイテックのピーアイシーシーの
ファイルゲットの方法やインストールの情報があるよ。
いい難いね。

http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/index.htm
630774ワット発電中さん:04/06/25 23:54 ID:7atFokpO
12F629のICSPについて

12F629のICSPを試された方はいらっしゃいますか?

12F629を使って簡単なシリアル通信のオモチャを作ろうとしてるんですが、
どうも書き込みエラーが多発するようです。

12F629単体に書き込んで基板に取り付けると動作に異常は発生しないのですが
基板に取り付けたPICにはエラーが多発します。(一応、いろいろ対策してますが)

EETOOLS社のライターでは書き込みできるのですが、時々エラーが発生し、
PIC START PLUSだとブランクチェックもまともに出来ません。

最初、ケーブルが長いせいかと思って、どんどん短くして最後にはDIPのICに
空中配線して回路を作って見ましたが駄目です。

それどころか、VccとGNDに104のセラミックキャパシタを取り付けただけの
DIPの石をPICSTART Plus に挿してみた所、ブランクチェックも出来ません。

16F84に自作のパラレルポートライターを使って書き込んでいた時はこんな事は
発生しなかったのですが、困ってます。

どなたか、同様な経験をお持ちの方はいらっしゃいますか?

631774ワット発電中さん:04/06/26 00:12 ID:nph5O7tu
>>630
mplab6.xxのICD2のヘルプを見ると良い。
まあ、似たようなものだ。
容量性の付加つけたらタイミング狂う。
オシロあれば、こんなことはすぐわかる。
ICSPのデータシートを良くみれば、こんなところで聞く事も無いだろう。
632774ワット発電中さん:04/06/26 01:45 ID:dPN6YEXr
>>631

情報ありがとう。

しかし、解決できるような情報は見つからなかった。

VccとGND間に入れる104は負荷では無い。(「付加」にはなるかも)
オシロ位持ってるが、VccとGND間の104が問題になるなら、ICSP自体が無意味?

そもそもPIC START Plus でICSPをしようとする事自体が間違いなのか?

Patch to enable ICSP programming with MPLAB® PM3 and MPLAB® v6.50
というのが出てるのも臭い。

ダウンロード出来ないようだし。
633774ワット発電中さん:04/06/26 02:41 ID:AkgHuApg
>630
MPLAB ICD2のICSPの使い方
ttp://www.picfun.com/icsp03.html

特に問題なりそうなのは、
VCCをどっち側から供給するか。
MCLRは10Kでプルアップだけしか繋げない。
書き込み時のクロックとデータには他の負荷は接続しない。
634774ワット発電中さん:04/06/26 03:00 ID:AkgHuApg
PIC12F629/675のプログラミングでは、Vddが適用される前に
Vppが上昇してプログラミングモードに必要な電圧になっていることが必要

JDMプログラマで12F629/675に再書き込みできない問題
ttp://osaka.cool.ne.jp/feng3/pgm6/jdm_vdd.html

つう事なので、プログラマ+PICとターゲットの電源は完全に切り離さないとダメ。
かつ、VPPの立ち上がりを邪魔するものは、MCLRには一切繋げられない。
635774ワット発電中さん:04/06/26 03:26 ID:AkgHuApg
PIC12F675,PIC12F629の内部発振モードで使用するBG、OSCCALの説明2
ttp://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/other_info/index.htm

OSCCAL(90h 6bit left side)で使用するデータについては、
プログラムメモリー領域の最終アドレス03FFhに書き込まれている。

秋月Ver4ライターなら、OSCCAL,BGの値はマイコン内のデータを使用するのチェックを
外せばよいのですが、買って来たPICにこれを最初からやると工場設定値がなくなるので、
一度リードしてください。
636774ワット発電中さん:04/06/26 07:42 ID:vcUi/bDR
>>>630
picstartでICSPをやる事は可能ですよ。
サンハヤトから、こういうのも出ていますし。
http://www.sunhayato.co.jp/technicaldata/CT-PIC-P/
但し、それなりのケアは必要です。一番大きいのはVCCをシステムから
切り離してあることですね。ライターのVCC制御に移ったとき、システム
全体の5V電源をライターが供給するなんてなると、旨く動かないですし。
私の経験からすると、GP0とGP1を出力で使っていると、大抵その先につながっている
ものに影響される(LEDなど)ので、影響の出ないような電流まで落とすか、
ジャンパーなどで切り離すか、これらのポートは入力として使うほうがよいです。
参考までにAVRでの説明がありますが、これとほぼ考え方は同じでしょう。
http://elm-chan.org/works/avrx/report.html
MCLRは12f675であれば、100KΩでよいです。
プルアップでもダウンでも問題はないでしょう。
理由は、内部でパワーアップタイマーと内部リセットオプションを__configで指定
(もしくはライタソフト)することで、
このピンは使わなくて済みます。プルアップダウンについては、これをつけないと、
消費電力が増大(といっても相当小さいですが)する為の予防策です。
10Kでは、VPPに12Vがきたら、VCCに10kを通して流れるので、もっと大きな
値にするか、ダイオードなどでカットするようなハードが必要でしょう。
このpic自体の電源も、インピーダンスを高くするために、電源を切り離すか
ダイオードを入れるかなどの工夫が必要になります。
参考になれば幸いです。
637774ワット発電中さん:04/06/26 07:44 ID:vcUi/bDR
訂正です。プルアップは10Kでも問題は無いです。
638774ワット発電中さん:04/06/26 18:01 ID:T+4FKdcG
ICPしたいなら、素直にAVRにしておけ。
16Mの28ピンデバイス(ATMEGA8)が@260円だ。
639774ワット発電中さん:04/06/26 19:18 ID:vcUi/bDR
>>638
現在の設問は、>>630
>12F629のICSPについて
>12F629のICSPを試された方はいらっしゃいますか?
という事に対しての提案であり、質問者は出来上がった装置に対して、
AVRの代替は考えていないと思います。それに、12F629を知っていれば、
16メガの28ピンデバイスを提案する事は、大きさ的にも価格的にもパフォーマンスが悪いと考えます。
AVRについては、
http://science3.2ch.net/test/read.cgi/denki/1078586301/
でお願いします。
640774ワット発電中さん:04/06/26 21:18 ID:Zb+s67Pe
>>638
ここでの布教活動はどうかと。
漏れもAVR使いだけど、8Pinデバイス相手じゃAVRの出番は無いよなorz
641774ワット発電中さん:04/06/27 04:14 ID:x/KklR5f
結局、悩んだ末にディベロップメントキットとCコンパイラかっちまった…
3割引とはいえ4万の出費はさすがに遺体
642774ワット発電中さん:04/06/27 04:18 ID:5TPYabTB
誰か秋月のPICNICって作った人いる?
触ってみた感想とか聞きたい。
643774ワット発電中さん:04/06/27 15:38 ID:ujZO8out
>>632
F629が乗っている側の電源を入れっぱなしの状態でPIC-STARTpulseと接続し、ICSP書込みして見れ!
644774ワット発電中さん:04/06/27 17:38 ID:tgIhg/oo
>>640
それはそうだな。
AVRの8ピンは高いのに16ビットカウンタついてない、とか、
確かに魅力的な商品ではない。
645774ワット発電中さん:04/06/27 18:11 ID:tgIhg/oo
>>644
書いた後で調べてみた。
例えばATTINY12は、DIGI−KEYで@130円(25個購入の場合) です。

PIC12F629-I/P-NDは@122円(25個購入の場合)だけど秋月でも10個120円だし。


646774ワット発電中さん:04/06/27 19:47 ID:8TWEEw3+
AVRってもうアトメル見放したんじゃなかったっけ?
それにAVRは電気PICに比べて無駄に食うし、AVR自体の情報も少ない。
まぁ、良い所といったらアセンブラがPICより癖が無い所だろうけど、
複雑なものはどっちみちCで作るから一緒だし。
647774ワット発電中さん:04/06/28 11:41 ID:JDZSy7ji
PICは毎苦労チップの主力商品だけど、
AVRはア止めるにとって刺身のツマだもんな。
力の入れようが全く違う。

電力-性能比で見ると最近のAVRの方がPICより省エネだよ。
648774ワット発電中さん:04/06/28 12:24 ID:ZuXiW6O7
>>647
とはいっても、低電力でベストソリューションになるのがやっぱしpic
AVRのファンクションはちょいと多いかなって所。
あと、絶対的にPICの方が参考文献おおし。
AVRでは到底0.00099マイクロアンペアでスリープなんて出来ない。
649774ワット発電中さん:04/06/28 17:46 ID:CNyPmrkh
>>648
まぁAVRがPICに比べてマイナーなのは、その通りなんだが、
>あと、絶対的にPICの方が参考文献おおし
というよりも、データシートあれば、全く困らないので、参考書そのものが必要でないという事だ。
和訳もあるしな。PICはワンチップマイコンとして特殊な命令、特殊なアーキテクチャだから
参考文献がいるのだよ。


650774ワット発電中さん:04/06/28 19:10 ID:g5ORN85A
PICの参考書とかも特殊なインストラクションセットとか
16F84を使った回路の説明とかばかり。
Timer、EEPROM関係や新型に付いたAD変換やUSART
SSP(I2Cも)あたりを解説してるのが欲しい。

結局データシートとpicfunがたより


651774ワット発電中さん:04/06/28 19:34 ID:vsmuJDsK
>>649
わざわざPICスレでやることも・・・適材適所でFA?
といいつつ

消費電流は結構差があるのねー
32kHz
PIC12F629    9μA(2.0V)
tiny12      40μA(1.8V)

パワーダウンモード
PIC12F629  1nA〜3.5μA(2.0V) 3nA(5V)
         なんでこんなに幅があるの?3.5μAは+125℃の値でしょうか
tiny12     ヨメネーよ(1.8V)/50nA?(5V,85℃)〜2.2μA(5V,85℃)
         実際はいくらなんじゃろ?

12F629にゃ16bitタイマあるのね・・・・orz
652774ワット発電中さん:04/06/28 20:45 ID:AYRW8+Wd
>>651
そう、その16ビットタイマなんだが、ラッチがついていないから、
16ビット一度に読む方法がナインんだよ。(止めればいいんだが)
だからTMR1H読んでTMR1L読んで、もいっかいTMR1H読んで、
さっき読んだTMR1Hと値が代わっていない事を確認せにゃならんのよ。
そもそもTMR1H読んで、TMR1L読む間にTimerが進む事をかんがえると
結局使い物にならん。
というわけで、結局8ビットとして使うか、1:8プリスケーラ入れて使うしかないんだな。これが。

653774ワット発電中さん:04/06/28 20:55 ID:3WlDbUJI
>>652
そうだったね。でもまあ8bitタイマをごちゃごちゃして16bitのまねごとするよりずっとましとはいえる
654774ワット発電中さん:04/06/29 01:22 ID:waGh2bIh
というわけで、ICD2を買いマスタ。
なるほどこれは浅田飴(w


ところで、この"BUILT-IN STAND"とかを考えた香具師は、
世間をナメていると思います。
655774ワット発電中さん:04/06/29 10:02 ID:KgQA3HkA
>>654

> ところで、この"BUILT-IN STAND"とかを考えた香具師は、
> 世間をナメていると思います。

なんで?
656774ワット発電中さん:04/06/29 10:17 ID:jiNPUX+j
>>651
それはエクステンドでしょう。インダストリアルならマックスで0.7マイクロアンペア。
実際私が100個スリープモードにして計ってみたけど大体
0.001マイクロアンペアでした。(但しMCLRはVCC直結)

ランクがあって
I付インダストリアル=工業用の方がスペックがいい
E付エクステンド=拡張(単なるインダストリアル版のロット落ち)
エクステンドは殆どみないけどね。製品でいっぱい仕入れて格安でやる場合、
歩留まりを上げるためにエクステンドを発注することがあるよ。
657774ワット発電中さん:04/06/29 14:08 ID:43GUySTw
>>652
こんなのでいいんとちゃう?
割り込み禁止
TMR1H読む(H1)
TMR1L読む(L1)
TMR1H読む(H2)
割り込み許可
L1>=128だったらH1-L1採用
L1<128だったらH2-L1採用
658774ワット発電中さん:04/06/29 20:52 ID:zrbUFCEb
>>657
TMR1H読む(H1)
TMR1L読む(L1)

H1を読んでからL1を読む間にクロックが進んじゃうので、だめ。
先にL1を読まなきゃ。
659774ワット発電中さん:04/06/29 21:07 ID:NZTqWNNK
>>657
movf  TMR1H,w
movwf TH
movf  TMR1L,w
movwf TL
movf  TMR1H,w
btfss  TMR1L,7
movwf TH

こんな感じ?
660774ワット発電中さん:04/06/29 21:11 ID:NZTqWNNK
>>658
遅れは一定になるのであまり問題にならないような気もするが。
考慮して解釈すればよし
どうしてもTMR1Lを先に読んで、その値を破棄しないという条件なら
うーん・・・・・わからん
661774ワット発電中さん:04/06/29 21:13 ID:NZTqWNNK
>>659 補足
TMR1L取得とbtfss TMR1L,7の間でタイマは進むと思うけど、
判断の境界付近であるTMR1L=128あたりだとどっちにころんでも
同じ事なので数カウントの進みは問題なしと思う。

PICは脳内ユーザーなので間違ってたら笑って
662774ワット発電中さん:04/06/30 01:24 ID:w1oRXR3d
>655
ほれ!

パッケージの謎の出っ張り。
http://up.isp.2ch.net/up/ecef4e5123ec.JPG

正体は"BUILT-IN STAND"。
http://up.isp.2ch.net/up/5b05244bc933.JPG
663774ワット発電中さん:04/06/30 01:28 ID:lXmn9K/O

つっか、PICには「InputCapture]っていう概念が無いのか?
664774ワット発電中さん:04/06/30 01:30 ID:lXmn9K/O
>>662
"DO NOT THROW AWAY PLASTIC PACKAGING"
ビルトインぢゃないじゃん(核分笑)
665774ワット発電中さん:04/06/30 01:47 ID:q66rokIA
>655
>662

ちなみに、あの後閑氏も愛用!
http://up.isp.2ch.net/up/5070c1ec2dcf.JPG
666774ワット発電中さん:04/06/30 01:56 ID:J5MhTOte
まず、外形をどうにかするという考えは無いのか・・・○| ̄|_
667774ワット発電中さん:04/06/30 08:44 ID:034RvVib
mplab6.60が公開されたよエロ化と
668774ワット発電中さん:04/06/30 10:19 ID:zul8QwrG
669774ワット発電中さん:04/06/30 10:33 ID:zul8QwrG
ZIPぶっ壊れてるってサーー (:D)| ̄|_

http://forum.microchip.com/tm.asp?m=44565

670774ワット発電中さん:04/06/30 12:12 ID:V4WMkmUB
>>663
12F675には無いな。
671774ワット発電中さん:04/06/30 16:18 ID:cANR0WY0
>>669
本当に解凍できないな。
Microchip最近おかしくない?
672774ワット発電中さん:04/06/30 17:26 ID:cANR0WY0
一応FTP貼っとく。
これならOKだった。
>>669より
FTP://devtools:[email protected]/devtools/mplab
673774ワット発電中さん:04/06/30 18:16 ID:u+1ShAOK
しっかし、毎回zipファイルって壊れてるよなww
674774ワット発電中さん:04/06/30 21:23 ID:V0LcekRd
あいたーいな
675774ワット発電中さん:04/07/01 00:16 ID:Eyzdy+9G
マイコン(MP-Z80)、I/Oボード(AB-10)を使ったプログラムについて
質問があるのですがよろしいでしょうか?
まだマイコン習いはじめたばかりで。
676774ワット発電中さん:04/07/01 00:56 ID:syHue4hc
>675
ここでは、スレ違いも良いとこでしょうか。

Z80で検索すると、この辺かな

PICアセンブラ統一スレッド
http://pc5.2ch.net/test/read.cgi/tech/1060182978/

ちょっと前にレスして、こっちに潜んでいる人は詳しい人が生息中かも。
AVR H8 etc. マイコン総合スレ
http://science3.2ch.net/test/read.cgi/denki/1078586301/

この辺の業界の開発系は、テクニシャンがいるかも。
パチンコ、パチスロの基盤のプログラム
http://pc5.2ch.net/test/read.cgi/tech/1066208836/
677774ワット発電中さん:04/07/01 14:01 ID:cx9yS/+z
>>675
誘導

【Z80】古CPU質問雑談スレ【6809】
http://science3.2ch.net/test/read.cgi/denki/1088657482/l50
678630:04/07/02 15:26 ID:xI16BY08
>>633
>>634
>>635
>>636
>>その他の皆様

いろいろとご教授有難うございます。
遅レスすみません。

色々やってみました。

もともと、書き込みする状態ではターゲットボードには負荷らしい物は何も
無いので、負荷のドライブによって影響されるような事は考えにくいのです。

VccとGNDのパスコンとMCLRの10KΩとセラミック振動子位です。
(内蔵OSCではちょっと精度(温特)が足りないみたい)

これらの部品でも影響を受けるのかと思い、最後は単に12F629の足をリードで5cm程
伸ばしただけの周辺部品無しでPICSTARTPLUSに接続してみましたが、何度かPICSTARTPLUS
で読み書きすると読み書き不能になる石が出るみたいです。
(石かライターのどちらかが不良品?)

他のROM Writerでは、書き込み速度を下げたり、書き込み電圧を調整してエラーを
出さないように出来るんですが、PICSTARTPLUSでは調整不可能のようですね。

仕方無いので、現在、EETOOLS社のライターでトライしてます。

こちらは、書き込み速度を下げて書き込んでやれば通常に使えるみたいです。

MPLABが使えないのが痛いのですが、もともとアセンブラでソース書いて
MPASMでアセンブルするのが普通だったので、これでも良いかな?

PICSTART PLUSを買ったお金と時間が勿体無かったかな?
ヤフオクにでも出すか?

とりあえずご報告まで。
679774ワット発電中さん:04/07/03 20:40 ID:rB3HO6k9
12F675のA/D変換って

電源電圧が5Vの時
・測定可能電圧は0〜5V
・分解能は5V÷1024(10bit)=4.8828125mV≒4.9mV
ってことであってますか?

680774ワット発電中さん&rlo;(どけイイもでうど) Oo .(`・ω・´)&lro;:04/07/03 22:19 ID:Zc8VrSne
>>679
http://ww1.microchip.com/downloads/en/DeviceDoc/41190c.pdf
41ページのFIGURE7-1 BLOCKDIAGRAMで基準電圧がADCON0.bit6のVCFGビットで変更可能なので
気をつけること...VCFG=0なら電源電圧が基準になる...
電源範囲が2V-5.5Vでも動くので回路的にレギュレータで精度良く5Vなのかどうか確認が必要...
VCFG=1ならVREFピンの入力電圧が基準電圧になる...
ページ43にADCON0のビット割り当てが掲載されているので参考のこと。
681679:04/07/03 22:36 ID:rB3HO6k9
れすありがとうございます。

Vrefを設定すると測定可能範囲は
GND-Vrefってことですよね?

USBの電源って十分に安定してるかな…
682774ワット発電中さん:04/07/04 07:10 ID:D7bJl82e
>>681
してないよ。
電圧ドロップはかなりある。ケーブルに依存する。
DCDCでもかませとけ
683679:04/07/04 12:43 ID:EdTRHNw3
DCDCってことは昇圧?ってことでしょうか?
5Vとるのに78L05だといくら何でも入出力電位差なさ過ぎで無理ですよね?

やっぱり0-5Vを4chで計りたいので、VddをUSBから取るつもりです。
684774ワット発電中さん:04/07/05 11:11 ID:ueQz7TJo
>>683
仕様によって要求される精度は変わる。
相対的な変化でさほど精度もいらないのであれば、USBの電源をつかえばいいし、
高精度が必要なら、それ専用の電源を作りVREFにするか、PIC電源にするか
(3.3Vにするなど)すればいいし、VRの角度検出(ロボットの足の角度とか)なら、
ジャストな電源(それなりに安定は必要)でなくてもよい。
683は4ch使いたいということなので、USBパワーをそのまま使うということだけど、
電源もパソコンの電源なので4.9V〜5.2Vくらい変動。
お勧めは、USB電源を直前で3.3VのシリーズレギュレータをかましてPICを3.3Vで動かせば、
ダイナミックレンジは落ちるものの、安価に精度よく使用することができます。
685774ワット発電中さん:04/07/06 00:20 ID:u1y03AKD
PICでAD変換した振幅変調信号を復調した例とかって無いですかね。
686774ワット発電中さん:04/07/14 00:54 ID:Asz6B+zp
PIC12F683が生産中らしいですが、国内代理店での販売はまだですかね?
687774ワット発電中さん:04/07/15 10:27 ID:hbvWJqi8
>>686
http://jp.digikey.com/scripts/DkSearch/dksus.dll?Detail?Ref=256304&Row=365575&Site=JP

PIC12F683-I/P-ND     IC MCU FLASH 2KX14 8DIP

276円/1個  176.92000円/25個
688774ワット発電中さん:04/07/15 23:35 ID:1AsgZdfI
12F675と12F683の違いって
プログラムエリア1Kword→2Kword
RAM 64byte→128byte
EEPROM 128byte→256byte
タイマーが1つ増えてCCPが使える
内部発振のクロックが選べる(31kHz〜8MHz,8種類)

以上でしょうか?
689774ワット発電中さん:04/07/15 23:45 ID:w7pi9k04
>>688
8ピンPICのクセにPWMが出せるですか?
690774ワット発電中さん:04/07/16 11:01 ID:gUKDVE7H
PIC12F683のTimer1、コンペアモードとキャプチャーモードを期待していたが

    無かった orz

まあ、Timer2が使えてPWM使えて内部8MHz動作だからいいか
OSCTUNEで±12%を32段階で調節できるのか・・・でosccalがなくなって工場で1%にしてるという

   ついていくのがやっとだ orz
691774ワット発電中さん:04/07/16 15:26 ID:kLfkKg2a
>>690
TABLE 11-1: CCP MODE ? TIMER RESOURCES REQUIRED
CCPMode : Timer Resource
Capture:  Timer1
Compare:  Timer1
PWM:    Timer2

によれば、Timer1でキャプチャして、Timer2でPWMっていうのはOKなんすかね?



(それでなんで10bitPWMなんだかよくわからんが)
692774ワット発電中さん:04/07/16 17:03 ID:H4t+1Dch
>>691
CCPモジュールが1個しかないんだから、同時に使うのはダメなんじゃない?
CCP1CON で、Captureに使うか、PWMに使うか決めているんだし。

693774ワット発電中さん:04/07/17 01:18 ID:Knap/mVn
>>687
英語に苦労しましたが、注文しました。ありがとう。
ライタも12F683対応にバージョンアップしました。
694774ワット発電中さん:04/07/17 09:56 ID:ILa2n27q
>>693
日本のDigi-Keyサイト程度の英語がわからないのなら、電子工作辞めたほうが身のため
695774ワット発電中さん:04/07/17 19:25 ID:9q1Mwjkh
12F683のウリは内部発振のクロックが選べるようになった
とこですかね。秋月はいくら位で売るのかな?

ところで秋月で売ってるPICの現状はこんなもんでしょうか

8pin 高性能12F675(\150) 安価12F629(\140)
ADコンバーター付で10円しか違わないから絶対12F675
18pin 高性能16F88(\300) 安価16F648A(\220)
差はADコンとSSP(SPI&I2Cs)かな、この機能使わないなら648A
ただ648Aは古いとEEPROMバグが面倒そう
28pin 高性能16F876A(\850) 安価16F876(\650)
違いはコンパレーターの有無だけ? 安いほうがよさそうだけど
28pin自体がは中途半端なポジションか
40pin 高性能16F877A(\600) 安価 同じ
でかくていいならこれ選べばOK。



696774ワット発電中さん:04/07/17 20:43 ID:YD+a7sxY
>>695
P板.COMの\400基板でPIC入門しようとしてます。
ライタはPICerを自作する予定。
推奨はPIC18F2220なんですが、入手の手軽さとライタの
対応から16F876を使おうとしてます。
新しい型の16F876Aが気になるんですが…
メリットはコンパレータと書き込み制限が一ケタ上ぐらい?
697774ワット発電中さん:04/07/17 21:31 ID:9q1Mwjkh
>696
16F87xAのデータシート
ttp://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf
のP222に違いが書いてあるよ。

他は電源電圧が2.2V〜5.5V → 2.0V〜5.5V
AD変換のクロックが4通り→7通り。くらいかな

秋月だと40pinの877Aの方が安いからなんかもったいなく感じるね。
データシート共通だからなおさら
まあ俺のもライターが40pin焼けないからどうしようもないけど
698774ワット発電中さん:04/07/17 21:52 ID:x78ihR0F
>>696
悪い事言わないから16F84Aにしておけ。
大抵の本も16F84Aを対象にしてるし、ネットでの資料も、作例も多い。
そんなマイナーな石はやめておいたほうが吉だ。
699774ワット発電中さん:04/07/17 22:49 ID:9q1Mwjkh
>698
今更16F84Aはないでしょ。
プログラムのバイナリだけ持ってきて組むなら84A必要というのは
判るけど、自分でプログラム組むなら多機能のを覚えたほうが
いいよ、最初にコンパレーターさえOFFにすれば84Aと同じように
使えるし、インストラクションは共通だし 何も問題はないでしょ

特に今回のP板.COMの基板って16F873,876限定だけど
AD変換、PWM、シリアル通信、I2Cモジュールの実験ができるように
なってるわけだし
700774ワット発電中さん:04/07/17 23:06 ID:lSq7YOjG
本当の初心者なら、資料が豊富な16F84で慣れるというのは十分ありだと思うが。
何々が違うだけとか簡単に言う人もいるが、それすら理解できない場合もある。
そういうところが理解できるようになってから、最新や安価な奴に移るのがいいと思う。
701774ワット発電中さん:04/07/18 17:53 ID:whkZTnt6
質問!

PICのライター作って、アセンブラ勉強を3回断念しますた。

アセンブラ以外(もっと簡単なコンパイラ)はありますか?
どうせまた断念するので、低機能、低価格(できれば無料)
がいいんですが。
702774ワット発電中さん:04/07/18 18:01 ID:YPHUyso7
>>701
断念した原因をさぐらないと繰り返しになると思われ。
レジスタとメモリの区別がつかんとか、バンクが分からんとか?
703774ワット発電中さん:04/07/18 18:05 ID:HGTNbLu/
>>701
>どうせまた断念するので、

断念するのがわかってるなら、
時間の無駄なので最初からやらないほうがいいと思われ。
704701:04/07/18 18:10 ID:whkZTnt6
>702
断念した原因
もちろんレジスタとメモリの区別はつかないし、BANK0と1は
意味が分からない。
LEDをピカピカさせるのに3日も考え込む言語は嫌。
やっと光ったLEDの光る順番を変えるのにまた3日・・・

>703
そういうわけにはいかん。
もう8000円くらいでライター買ってしまった。
705774ワット発電中さん:04/07/18 18:24 ID:YPHUyso7
>>704
最初は3日かもしれんが、次にやるときは3分だろw
あんたが、CやBASICのエキスパートなら適当な試用版を使ったら?
これから勉強するってのなら、俺は勧めない。

AVRの一番安いやつなら、メモリもバンクも無いから初心者向けかもね。
ライターは\200ぐらいで作れる。
基本が理解出来てから、PICに戻って来てもかまわないだろ?
706701:04/07/18 18:35 ID:whkZTnt6
>705
AVRって何?とてつもなくエッチなもの?
いちおCは大学で学んだが、ほぼ完璧に記憶にない。

んでは、AVRをぐぐりに逝ってきます。

707774ワット発電中さん:04/07/18 18:38 ID:HGTNbLu/
>>704
>もちろんレジスタとメモリの区別はつかないし、BANK0と1は意味が分からない。
コンパイラを変えたところで、これは変わらない。

>LEDをピカピカさせるのに3日も考え込む言語は嫌。
これもロジックの問題だから、
コンパイラを変えた所で大して変わらない。

>やっと光ったLEDの光る順番を変えるのにまた3日・・・
最初はそんな風でもしょうがない、
次のステップとして、光る順番を楽に変更できるようなロジックを考えればよいだけでは?

PICに限っては、アセンブラの情報が豊富だから、アセンブラでいいと思うが、
たぶん、コンパイラの導入に挫折しそう・・・

あと、最初から、断念するからとか、
8000円のライタを買ってしまっただとか、
しょうがなくやってても・・・
708774ワット発電中さん:04/07/18 18:39 ID:KdEiCxBu
>>705
AVRなら、Digi-Keyで、
STK500とATmega8を買って来い。
http://jp.digikey.com/scripts/DkSearch/dksus.dll?Criteria?Ref=298756&Site=JP&Cat=32179145
STK500(スタータキット)が8960円で
http://jp.digikey.com/scripts/DkSearch/dksus.dll?Detail?Ref=298780&Row=204545&Site=JP
ATMEGA8が、25個で6522円(1個260円)だ。
送料が2000円だ。

で、コンパイラはWinAVRを拾って来い。所謂AVR-GCCだ。

これで、アセンブラ覚えることも無く、STK500上のタクトスイッチでLEDを光らせる事が出来る。
オレの愛娘(小学5年)の夏休みの宿題にしたいくらいだ。
709774ワット発電中さん:04/07/18 18:43 ID:KdEiCxBu
>>708
難点は、AVRの安直さになれると、二度とPICなんか使いたくなくなるって事なんだが。
あ、厨房は 「atmega8 日本語」でググると、日本語訳データシートが手に入る。

710774ワット発電中さん:04/07/18 21:35 ID:1AYAv1l/
>701
全て無料の最強開発環境 MPLAB6.x with HI-TECH PIC C
ttp://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/picmel/index.htm
711774ワット発電中さん:04/07/18 21:45 ID:AZrEDrto
>>704
バンクだけはC言語にしたら意識しないですむかな。
レジスタ、メモリなどに関しては・・アセンブラほど意識しないですむが、
やっぱり基本概念くらいわからないとC言語でもBASICでも使えない。
AVRでもPIC程じゃないが事情は同じ。ただPICよりいくらか単純なのでハードルは低い。
というわけでどうしてもPICが困難ならAVRで基本を覚えるのは賛成する。
あれでだいたいのことがわかれば、その後PICを理解するのも容易だと思われ。
712701:04/07/18 22:01 ID:whkZTnt6
AVR調べますた。こっちの方がよさげですな。
情報ありがとうございます。
でも、せっかく作ったライターがもう無駄になるのが・・・(T_T)

母校のサイトでPICの講座を発見!
少し勉強してみますた。んで、また挫折しかけ。

頼む、一生のお願いだから、レジスタって何か教えてくれ。
メモリと何が違うんだ?PICには何個メモリがあるんだ!?
あと、バンクも意味がわからん。てゆうか、TRISとPORT
の違いが分からん。アホ母校、ちゃんと説明汁!

結局、何がしたいかというと、女手一つで漏れを育ててくれた母
の為に、超高機能お風呂センサを作りたいんだ。←最終目標
713774ワット発電中さん:04/07/18 22:36 ID:ifZ4T2jg
>>712
PICの勉強する前に、コンピュータの一般的な知識を
身に着けた方がいいのではないかと。

いにしえのZ80の入門書とか。
714774ワット発電中さん:04/07/18 22:39 ID:nrg0MHvM
>>712
PICアセンブラってそんなに難しいでしょうか?
リア厨の漏れでもEEPROMの読み書きくらいは余裕でできますよ。
はじめはややこしいですけど。
自分はこれだけで基本的な事は分かりましたよ。
http://www-tech.edu.kagoshima-u.ac.jp/~toya/gijutu/jugyo_siryo3/pic/pic_asemble_nyumon.pdf
あとは本を見れば結構簡単に理解できますよ。

ちなみにレジスタは変数のようなもので、バンクはメモリを有効に使うために使われてるもので
必要に応じて切り替えます。
でTRISはポートを入力か出力を決めて、
PORTはポートをHIにするのかLOにするのか決めるレジスタです。
715774ワット発電中さん:04/07/18 22:49 ID:9PeNVG6e
>>712

>レジスタって何か教えてくれ。 メモリと何が違うんだ?

PICに関して言えばメモリと同じ。
他のCPUでメモリと言われるものが「ファイルレジスタ」
こいつはたくさんあるが、あまり複雑な計算はできない。
数字の出し入れとカウントアップ、カウントダウンくらい。
もっと複雑なことをするには、特殊なメモリであるWレジスタを使う。
こいつはもう少し融通が利く。できるのは
 任意の数値をWに入れる
 任意の数字と加算、論理和、論理積などの演算(なぜか減算はできない)
 ファイルレジスタから数字をコピー
 ファイルレジスタへ数字をコピー
 Wとファイルレジスタの間で各種演算
などなど。
他のCPUではWレジスタ相当のメモリが複数ある場合がある。
AVRではWレジスタ相当が16個、ファイルレジスタとWレジスタの中間的なものが16個、
ファイルレジスタ相当が0〜多いものでは32kバイトとか

これとは別にプログラムが書き込まれているフラッシュメモリがある。
PICやAVRではプログラムに使うメモリと計算に使うメモリは別の場所が
あてがわれている。

なんでこんな面倒なんだと思うだろうが、あなたが計算するときも、
どっかに書いてある数字を読み取り頭に入れ、その数値と他の所に
書いてある数値との間で計算していくと思う。そのとき計算中の
数値を覚えている頭の中の場所=Wレジスタ、計算結果を読み取ったり
書き出したりする紙=ファイルレジスタ(メモリ,汎用レジスタ)と考えればよし
16F84でこの紙は2ページあり、ファイルレジスタとして使えるのは
1ページ目で、記入欄が68個ある。

でもって、この紙だけど、使いやすいように紙の上端付近がマークシートになっている。
ここをマークしたら紙への書き込みだけじゃなく、外にいろいろ仕事ができるという
便利な機能がある。また、外から信号が入ったら勝手にマークが入るという機能を
持った部分がある。こいつが特殊機能レジスタ(SFR)。
こいつはややこしいことに1ページ、2ページ両方にあり、必要に応じて
ページをめくらなければならない。(バンク切り替え)
先に書いたファイルレジスタも、メモリが多いPICだと1ページ目に入りきらず、
必要に応じてページをめくらなければならないことになる。

>TRISとPORT の違いが分からん。
TRISAが1になってるbitに対応する足は入力ピンになる。入力はPORTAの対応bitに反映される
TRISAが0になってるbitに対応する足は出力ピンになる。PORTAに書き込むと対応ピンに反映される

>アホ母校、ちゃんと説明汁!

   ・・・・・・・・・・・・・・・・・・・・・・・・・・・・
  正直、PICの初歩くらい独学でも勉強汁!といいたいが
716774ワット発電中さん:04/07/18 23:15 ID:1AYAv1l/
>712
レジスタって何

ttp://www.picfun.com/memory03.html
読み書き可能なデータ格納専用のメモリの事で、2種類のレジスタがある。
(1) Special Function Register (SFR)
CPUの機能動作を指定したり、周辺デバイスの機能、動作を指定するためのレジスタです。
(2) General Purpose Register (GPR)
汎用のデータエリアとして使用し、変数やバッファとして使います

PICのメモリ構造

ttp://www.picfun.com/memory01.html
プログラムメモリ、データメモリ、スタックメモリ、EEPROM
以上、4つのメモリーが有る。

バンク

データメモリは128バイトを単位とする「Bank」から構成されています。
PICの命令が、バンク操作をせずに直接にアクセス可能なデータメモリ範囲は
128バイトしか無いので、それ以上の範囲をアクセスするためにはバンクという
概念を導入して機能を拡張しています。
717774ワット発電中さん:04/07/19 00:19 ID:gSZvOeoe
>>715
>任意の数字と加算、論理和、論理積などの演算(なぜか減算はできない)
SUBLWでできませんでしたっけ?
718774ワット発電中さん:04/07/19 02:00 ID:eiFFpW2H
>>717
リテラルのこと言ってるんだろ?
ADDLWはあってもSUBLWは無いんで、Wレジスタからいきなり-3とか出来ない。
719774ワット発電中さん:04/07/19 03:16 ID:m0Jsp9Eh
>718
SUBLWは有るよ。ただ動作が k - W → W だけど
なんか変な動作だなと最初は思ったけど、意外と便利かも
W - k → W なら W + (-k) → W で代用できるわけだし
720774ワット発電中さん:04/07/19 08:49 ID:Tks10OsQ
>>713
Z80みたいに「普通の」マイコン覚えたら、PICがいかに変態的かバレちゃうからやめとけ。

スタックはないし、非破壊のコンペアはないし、ボローの時にキャリーが立たないし。
721774ワット発電中さん:04/07/19 11:32 ID:3AkphkAT
>>720
Borrow = !Carry ってことだよね。
別にPICに限ったことじゃない。
722774ワット発電中さん:04/07/19 17:24 ID:fi7/d8/h
>>712
秋月のPICBASICって手もありますよ・・・
723701:04/07/19 22:25 ID:03vM3Bgp
みんなちゃんと教えてくれて有難い板だ。が、漏れにはちとむずい。

>714
情報THANX。めちゃ分かりやすい。
できれば、この他のPDFの在り処も教えて下さい。
724774ワット発電中さん:04/07/19 22:45 ID:msncu7Go
>>723
>1
結局、メーカーが出してる資料が一番だったり…
せっかく日本語のメーカーサイトがあるんだし。

後、俺が参考になったのはこれ。
ttp://g211008082139.dhcp020.icnet.ne.jp/~hero/pdf/PIC.PDF
725714:04/07/19 23:13 ID:gSZvOeoe
>>723
どこかの大学のページから拾ってきました。
http://www-tech.edu.kagoshima-u.ac.jp/~toya/gijutu/courseware/index.htm
726774ワット発電中さん:04/07/21 12:10 ID:SVkoaJ4S
>>714
> リア厨の漏れでもEEPROMの読み書きくらいは余裕でできますよ。
おい、ほんとかよ?
727774ワット発電中さん:04/07/21 13:42 ID:d4ywjVyq
>>726
> EEPROMの読み書き

読むのは「いーいーぴーろむ」だろ? 書くのは「EEPROM」のままでいいや。

それとも「いーつーぴーろむ」「いーすけあぴーろむ」か?
728774ワット発電中さん:04/07/21 13:43 ID:SjRFxmgI
>>727
なるほど、それなら三菱鉛筆でも書けるな。
729774ワット発電中さん:04/07/24 16:58 ID:I80uufc4
http://akizukidenshi.com/down/tk/picpgm_v4/index.htm

10.PIC16F630/676をサポートしました。現行のボードでは14ピンパッケージに対応できないため
配線の引き出しが必要です。ボードの修正内容は、picpgm6を起動し、メニューバーからヘルプの
"ボード修正.pdf"を実行し開いたファイルをご参照ください
 (20040724:V6.3.32β & ppgm639.hex)
730774ワット発電中さん:04/07/24 19:48 ID:yMve2xb4
秋月のPIC一部値下がりしたのね、で>695を修正

・8pin 高性能12F675(\150) 安価12F629(\140)
ADコンバーター付で10円しか違わないから絶対12F675
・18pin 高性能16F88(\250) 安価16F648A(\220) 一応16F84A(\350)
差はADコンとSSP(SPI&I2Cs)かな、この機能使わないなら648Aでもいいかも
でも30円差ならF88か。648Aは古いとEEPROMバグが面倒そうだし
・28pin 高性能16F876A(\850) 安価16F876(\650)
違いはコンパレーターの有無だけ? 安いほうがよさそうだけど
28pin自体がは中途半端なポジションか
・40pin 高性能16F877A(\500) 安価 同じ
でかくていいならこれ選べばOK。

16F88と16F877Aが値下がりしたのは大きいね。
16F877Aは前に並んでなくて、後ろの棚に置いてあるので気をつけて
731774ワット発電中さん:04/07/24 21:51 ID:jREbO86U
>>730
買い置きしてると吊りたくなるorz
732774ワット発電中さん:04/07/28 21:16 ID:5NkNGWkQ
これからPICを勉強しようと思ってる者です。
入門書として後閑哲也さんの本を買おうと思ってるですが
下記の2冊のうちどっちがお勧めでしょう?

A)電子工作のためのPIC活用ガイドブック
B)電子工作のための「PIC18本格活用ガイド」

A)はPIC16、B)はPIC18を中心に書かれてるんですよね?
PIC16を勉強してみて機能が不足するようならPIC18に進めば
いいのでしょうか?
それとも今後はPIC18が主流になる(?)のならいきなりPIC18
から勉強した方がいいのでしょうか?

最終的には自作のセンサ回路からの信号をPCに取り込む
ということをやりたいのですが。

あるいは他にいい入門書があれば教えてください。
よろしくお願いします。
733774ワット発電中さん:04/07/28 21:40 ID:lB5HmE4y
>>732
とりあえず後閑さんのHPに16/18どちらも概略があるので
それ読んで取っつきやすそうなのにしたら?
参考に出来るHPも多い16の方が良さそうな予感。
18って秋月みたら40pinのでかいパッケージのしかないし
734732:04/07/28 22:23 ID:5NkNGWkQ
>>733
アドバイスどうもです。
部品と情報の入手のしやすさは大事ですよね。
PIC18ってまだそんなに普及してないのかな?
とりあえず16から始めてみます。
どうもありがとう。
735774ワット発電中さん:04/07/29 14:59 ID:4jQkerPO
すみません おしえて君で申し訳御座いません。

CCSのCですが 液晶表示器がうまく動きません。
参考書は 後閑氏の C言語プログラミング入門です。
中にあった LCD_LIB.cをインクルードして利用してるのですが
何も出なかったり 変な文字が どんどん出続けます。
結線も確認して 問題ないのですが何故でしょう??
736774ワット発電中さん:04/07/29 15:03 ID:/IR77yRh
>>735
LCDはPIC始動時初期化してる?
ウェイトの長さはOK?
(クロックが異なれば回路図通りでもだめなことある)
737774ワット発電中さん:04/07/29 16:30 ID:4jQkerPO
>>736
ありがとう御座います
初期化も手順どうりで
ウエイトも ルールの3倍以上取っても駄目でした・・・・

ブレッドボードなのがいけないのでしょうか・・・
738774ワット発電中さん:04/07/29 17:18 ID:W58E9E5u
>>737
LCDつないだポートはきちんと出力指定してます?
#USE STANDARD_IO(port)指定でなく、入出力指定していないとか
739774ワット発電中さん:04/07/29 18:11 ID:4jQkerPO
>>738
ありがとうございます
他の動作は、動いてるんです  涙・・・

それと 近況報告
数分前 PICの方向を間違えたため 16F877Aと三端子レギュレーターが昇天いたしました。 涙・・・・ なむ〜
740774ワット発電中さん:04/07/29 21:36 ID:m6tuI0du
ttp://www.imes.boj.or.jp/japanese/kinyu/2000/kk19-2-2.pdf

p61
実際問題として国債引受による財政赤字のファイナンスを実行するには、
財政法の日本銀行による国債引受禁止条項を変更しなければならず、
法改正の審議の間に政府がハイパー・インフレーションを引き起こそうとしていることが「国民にわかってしまい」市場が何も反応しないうちに既成事実として債務削減が達成できるとは到底考えられない。





日銀こんなこと議論してるよ。。。。。


(((( ;゜Д゜)))ガクガクブルブルジョンジョロシャー
741774ワット発電中さん:04/07/31 01:50 ID:ivkao9gn
アセンブラでよければ、LCD用ルーチンくさるほどあるんだが・・・
742_:04/07/31 03:36 ID:QEbzn4Xg
 相談させていただきたく H8マイコンスレッドから誘導されて参りました。
 いまモータ駆動系につながったエンコーダからのパルスをPIC 16F84Aを使って
カウント しています。(B相変化割り込みを利用して四逓倍カウントするプログラム
を作りました)
 PICからの出力は8bitsのパラレルです。その出力を秋月のAKI H8-3048に直接接続
しています。(文字通りの直結です)
 回路を組んで実験をはじめたのですが、どうもPICからの値が安定しません。
終いにはPIC自体が動作しなくなりました。
 電源なのか、リセット回路なのか、それとも別の問題なのか判らないので原因を
調べているのですが、引っかかっているのが「H8マイコンと直結」している部分
です。通常のロジック回路の接続と同じように考えて直結としたのですが、本来で
したら、ここには何か部品を挿入するべきなのでしょうか。それともプルアップ
もしくはプルダウンなどの処置をするべきなのでしょうか。H8マイコンの方では
内臓プルアップなどは使用しておりません。PICには電源5vが供給され、リセット回
路も正常に動作、GNDもきております。エンコーダはRB6,RB7ポートに接続されてい
ます。
743774ワット発電中さん:04/07/31 03:56 ID:sgImScyF
>>742
>エンコーダはRB6,RB7ポートに接続されています。

これで8bitパラレルはどうやって出してるのか?
744774ワット発電中さん:04/07/31 05:02 ID:/yt92f7s
>>742
とりあえずラッチ入れとけ。
745774ワット発電中さん:04/07/31 07:15 ID:10v/lFlD
>>742
入出力設定は問題ない?H8が出力になってたりして
エンコーダの入力レベルは?実は5Vじゃないとか
746774ワット発電中さん:04/07/31 09:03 ID:9DJme1m1
PICの水晶発振子はちゃんと規定の発振をしてますか?
747774ワット発電中さん:04/07/31 09:21 ID:u40uChJe
>>742
H8/3048があるんだったら、PICなんか使わずに
ITUチャネル2の2相クロック入力使えば?
748774ワット発電中さん:04/07/31 09:54 ID:ma1OtB1Y
>>742
まずは不具合原因の見極めが大切。

エンコーダーからのパルス入力を直接PICへ入力するの止めたほうがいいですよ。
バッファを入れてもちょっとしたノイズの影響で割り込みを使うとカウントが崩れます。

とりあえずプログラムが完璧か確認したければSGを入手しましょう。
へたれの秋月SGでも使えばPICのカウントが正しいかわかります。

去年おいらもPICでエンコーダーのカウントを測定したけど、割り込みを使ったらカウント値が
時々おかしかった。
SGを使うとまったく問題がないが、エンコーダーの入力は時々こけてた。
オシロを使って波形を見たけど特に問題はないように見えたが、SGとエンコーダーで
明らかに挙動がちがっていた。

対策としては遅いパルスだったのでレベルをプログラムで読み込んでH−>Lを判定
するようにしたらSGとエンコーダーのカウント値はぴったりと一致した。


PIC自体が動かなくなったのは別の理由だね。
エンコーダーの入力電圧とか、大丈夫かな?
PICは安いから新品に交換してみるのも手だね。

749742:04/07/31 09:59 ID:QEbzn4Xg
 なんかたくさんお返事いただけて有難いです。ありがとうございます。

>743
 RB0〜5ポートが下位6bits、RA0〜1ポートが上位2bitsになっています。
 Bポート変化割り込みを使いたかったもので、こんなことになってしまい
ました。上記のポートは全て出力ポート、RA2ポートのみが入力になり、
カウンタクリアにしました。

>744
 ラッチですか。やってみます。

>745
 エンコーダからは5vのパルスが出てきています。

>746
 たぶん……手元にオシロがないので波形の確認はできません。

>747
 エンコーダを二つ読む必要があるのです。二相クロックは一本
だけですし、IRQを使って読むのは一度やったのですが、割り込み
が多すぎて本来のプログラムの実行自体に影響がでてしまって…
 なのでPICを使って8bitカウンタをつくって、10msec毎に(H8側から)
クリアするような構成にしました。
 
 一晩寝て落ち着いたので、またいろいろ試してみます。どうやら
直結自体には問題なさそうな雰囲気……でいいのかしら? 
750742:04/07/31 10:09 ID:QEbzn4Xg
>748
 ありがとうございます。割り込み使わないほうが良いですか。
計測するエンコーダからのパルスは20〜30kHzほどになります
が、これは「遅いパルス」の部類に入るのでしょうか。
 質問ばかりでもうしわけございません。
751774ワット発電中さん:04/07/31 10:34 ID:oKE1FLqa
>>750
遅いパルスっていうのは、スルーレートが遅い(立ち上がりが遅い:矩形波じゃなくて台形波みたいになっている)
事を意味してるんでしょか?PICの入力としてはそれだとマズイんでしたっけか?
74HCなんかにそういう「遅い」パルスを入れると誤動作しますが、そのときは74HC14みたいな
シュミットインバータを入れるか、コンパレータを入れるかします。
PICにもシュミット入力ピンがなかったっけか?
752739 です:04/07/31 10:36 ID:qmgqSaJK
液晶表示器不動の >>739です
無事動きました。
原因は 液晶の初期不良のようです
E端子に 信号が入っても 変化が無く
友人に 同じ物を借りて動かすと 無事動きました
初期不良の物を 友人のボードに使うと やっぱり動きません

でも 原因が解ってよかったです
皆様 ありがとう御座いました。
753774ワット発電中さん:04/07/31 10:37 ID:wzJi8hLY
>>750
それはPICにとっては速いパルスになるんじゃないかな。
クロックいくつなのかわからないけど、20MHzだったとしても
PICは毎秒5M個の命令しか実行できない。
毎秒5M個っていうと速いようだけど、5M/30K=166.666。
つまり30KHzの周期の中でPICが実行できるのは命令160個程度。
あなたの言う30KHzってのがA相の周波数だとすると、
A、B相全てのエッジを処理するにはその4倍の速さで処理しなければいけない。
割り込み処理は40命令程度に収まっていますか?
754774ワット発電中さん:04/07/31 10:51 ID:aPMKQvdu
>>748
割込み処理内で、PINの値を読み直して、変化していたらノイズと判断して
割込み処理を中断すればよろしい
755774ワット発電中さん:04/07/31 12:18 ID:Cw0L/oXw
>>750
30kHzとはかなり速いですね。
それが交互に来て両エッジ読むなら割り込み頻度としては120kHzでくるってことですよねえ。
つーことは割り込みに許されるのは。。あ、>>753でガイシュツでした
割り込みルーチンだけでも晒してみない?

問題を単純化するために、
エンコーダ入力を割り込み処理するが結果は無視して一定の値
(たとえば0〜255を1秒ごとにカウントアップ)を送るだけのプログラムを入れて
PIC→H8伝送がうまくいくかどうかをチェック
これがOKなら
エンコーダ割り込みが間に合ってるかどうかのテスト
割り込みルーチン抜ける前に割り込みフラグビットが立ってるかチェック→立ってたら割り込み間に合ってない、
756774ワット発電中さん:04/07/31 15:18 ID:QYBCFmI3
>>752
そりゃ災難だったね。
マイコンとかだったらソフトかハードかどちらが原因か分からないしね。
757774ワット発電中さん:04/07/31 19:09 ID:G1beJtHa
秋月のLCDだっけか?
758774ワット発電中さん:04/08/01 14:08 ID:ANZA6vQK
>>752
災難だったね。
原因分からず煮詰まってウキー!な状態になったら
>>739みたいなことをおこすから冷静にstep by step・・・
忘れがちな教訓をありがとう。
759774ワット発電中さん:04/08/01 15:07 ID:mHOLF/YI
秋月のパーツは3つ買わないと安心できないんってことですか?
今回の教訓は
760774ワット発電中さん:04/08/01 15:17 ID:WpuIegAP
昔は半導体が軟だったので不良があったけど、今の半導体は丈夫なので、
秋月を含む電子パーツ(特に半導体)は、買って不良ということはめったに無くなったね。
秋月のLCDモジュールは、結構買い付けているけど、(数字にして累計1000個以上)
未だ社内内規での不良に当たった事はないかな。
端子とか剥き出しだから、色々壊れる要素があるので、どこで不良になったのかは
分からないけどね。(静電とかその他)
761774ワット発電中さん:04/08/01 15:58 ID:Yxt4AJuM
秋月って部品の扱いを知らない奴が混じってる様に思う。
762774ワット発電中さん:04/08/01 17:57 ID:SQxZ7fcU
×:部品の扱いを知らない奴が混じってる様に思う。

○:部品の扱いを知っている奴が混じっている様に思う。

デフォで知らない奴。

大体考えても見ろよ、知識ある奴が秋月の内情知ったら、面白いパーツ入ったら
売るのが惜しくなって独り占めの算段しかしないだろが。
763774ワット発電中さん:04/08/02 21:25 ID:gGIdEZxV
くだらない質問でゴメン
PICで各種センサーの電圧測れるじゃないですか。
あれってどういう原理で測ってるの?
PICの中に電圧計が入ってるの?
764774ワット発電中さん:04/08/02 21:37 ID:rxaR2Z4r
そのセンサーの出力がデジタルなら、ただデジタル信号を読みとってるだけだし
アナログなら内蔵のA/Dコンバータを使ってるだけ
765763:04/08/02 22:31 ID:gGIdEZxV
A/Dコンバータはどうやって電圧を読んでるの?
766774ワット発電中さん:04/08/02 22:35 ID:Cc+DG6kH
>>765
>>1
>教えて君はとりあえずGoogleくらい使おう
767765:04/08/02 22:54 ID:gGIdEZxV
そこをなんとか m( _ _ )m
768774ワット発電中さん:04/08/02 23:05 ID:6omQ+Bnd
769774ワット発電中さん:04/08/03 00:05 ID:4t3GhqMo
初心者にデルタΣは難しいような・・・(w
770774ワット発電中さん:04/08/03 00:21 ID:JGUPpNKw
>>762
そこでgenpin.comの誕生ですよ。
771774ワット発電中さん:04/08/03 00:31 ID:pdvihaA/
概念的には出るし具の方が理解しやすい希ガス
772774ワット発電中さん:04/08/03 00:36 ID:uNRl47oL
秋月ってどれぐらい儲けてるんだろう...
773767:04/08/03 06:33 ID:0e0YcV2O
>>768
ありがd
勉強してきます。
774774ワット発電中さん:04/08/03 14:30 ID:OZ5ZSRnY
>>772
秋月のPICって海外から直接購入しているから安いって聞いたんだけど本当なのでしょうか。
775774ワット発電中さん:04/08/03 18:23 ID:xLWslHtr
>>774
大漁に購入している業者からこれまた大漁に購入しているからあの値段になる。
その代わり不具合が出ても基本的にはサポートなし。

国内の業者から購入すると値段はアップするが、チップを使って動作がおかしい場合代理店経由で問い合わせ
が出来る。

出て間もないチップはバグがあるから問い合わせできるか出来ないかは結構大きい。
もっとも秋月では最新のチップがないから枯れたデバイスでサポートフリーで特に問題はない。

776774ワット発電中さん:04/08/04 15:09 ID:OxQ73jeL
16F88
777774ワット発電中さん:04/08/05 09:14 ID:Ik3n+Yiq
PIC16F88が秋月で安いから、
うちに出入りしている業者に見積もってみたら
めちゃ高かった。
PIC18シリーズはまだ秋月に置いてないなー
いつ取り扱うんだろー
778774ワット発電中さん:04/08/05 11:08 ID:KLj434W8
18F452はすでに取り扱っていますがなにか?
使いたいPIC18はどれなんでしょうか?
779777:04/08/05 12:23 ID:Ik3n+Yiq
おっ確かに取り扱ってる
40pinDIP・・・でかい
18pinクラスが扱いやすくていいのですか。
300円くらいがいい
780774ワット発電中さん:04/08/06 08:47 ID:7D8+KpA9
>>779
キミは、PIC18の、PIC16に対するアドバンテージをどこに求めているんだ?
高速性?だったらAVRとかに逝けば?
781777:04/08/06 13:09 ID:CwAO2tOP
確かに高速性も魅力です。
AVRでもいいのですが、
こちらの入手経路を考えると
AVRはちと・・・
H8はDIPはないし・・・
というわけで小回りのきく
PICが使い勝手がいいのです。
それと新しいもの好きという理由もあります。
782774ワット発電中さん:04/08/06 13:14 ID:2s0tK0q1
>>742
の結果が気になります。どうだったんでしょう?
783774ワット発電中さん:04/08/06 13:53 ID:3aE2oGpL
>>781
おまいの入手経路は秋月だけか?(笑)

あたらし者好きの割には消極的だな?

18ピンで300円に落ちる頃には鮮度は落ちて新しくないぞ。
おとこならUSから直接購入すれば大抵のチップは入手可能だ。
1個500円位で手に入れたとしても40MHzのセラロックはどうするつもりかな?

早いデバイスを手に入れてなにをやりたいのか判らないけど、40MHz版を手に入れて
232Cで19200bpsの通信やるつもりだった大笑いだ。
具体的になにをやりたくて高速なPICを欲しいのか判らないけど秋月に入荷しても
しばらくは様子見なんだろう?
他の人の使った後に手をだすだろうからぜんぜん新しい物好きじゃないんだろう。

悔しかったら具体的にやりたい事を書く事を希望しる。
784774ワット発電中さん:04/08/06 14:09 ID:u1JZqIbR
言ってることはわからんでも無いが不必要な煽りを入れる事もあるまい。
785774ワット発電中さん:04/08/06 14:14 ID:ojAPV/Go
>>783
妄想大杉。
786774ワット発電中さん:04/08/06 14:24 ID:kPq64m0o
消費電力を考えると、PICも捨てがたい
787774ワット発電中さん:04/08/06 14:50 ID:rVHYDAcM
要するに用途次第だと思うのだが。
>>777の用途がPIC向きかどうかはわからんけど、
それ以前にもし>>777が「PIC18をいじりたい」ことが目的なら
外野が何言ってもムダと思うが。
788774ワット発電中さん:04/08/06 15:07 ID:fBN2Cr25
アセンブラでやるのならPIC18から入ったほうがいいような気がする。
最新チップを買って、実際にいじるころには半額になってるのはよくあるなw
789774ワット発電中さん:04/08/06 15:25 ID:N0tJAvlP
>>781
スレ違いでアレだが、AVRならDIGI-KEYで頼め。
月曜日に注文すれば、金曜日には到着する。送料が2000円なんだが、
ATMega8(28ピン16MHz)なら25個で1個260円くらいだし、プログラマー(AVRISP)は3300円くらいだ。
しめて 25*260+3300+2000=11800円だ。

ちなみにDigi-keyで18ピンのPIC18F1320は25個で377円だ(1個なら588円)

790774ワット発電中さん:04/08/06 15:28 ID:N0tJAvlP
>>783
ググる前に憶測するが、PIC18シリーズの40MHzっていうのは、PLLで20MHzのてい倍を
使うんじゃないかと思う。
791790:04/08/06 16:22 ID:brOwlaKo
>>790
調べてみたら、10MHzのクリスタルを入れて40MHzPLLにしているらしい。
あと、PIC18って、出力ポートのラッチレジスタが無い、とか、メモリが分断していて
連続配列が取れないとか、PICの困ったチャンだった欠点がずいぶん改良されていて
なかなかいい感じだと思いました。
あとはGCC-PICがあればいいんですけどねぇ。
792774ワット発電中さん:04/08/06 16:27 ID:3aE2oGpL
>>790
すまんみまちがえていた。
PLLは4倍固定です。10MHz−>40MHzです。
さっき見たデータシートだとPLL設定が見えなかったと思ったが、今確認してみたらPLL使うのしか見つからない。
どうやら幻覚をみたみたいだ。m(_._)m


793774ワット発電中さん:04/08/06 18:12 ID:st7yQFF7
>出力ポートのラッチレジスタが無い、とか、メモリが分断していて
>連続配列が取れないとか、PICの困ったチャンだった欠点

だから、そーゆー用途にPICを使おうとするのが間違いなんだよ。
794774ワット発電中さん:04/08/06 18:19 ID:P7taxQJa
>>791
wレジスタである限り、GCC対応は難しそう?
やっぱり命令に直交性が無いと、人もコンパイラも
マンドクセですよ
795774ワット発電中さん:04/08/06 19:14 ID:tpL4cl4h
>>794
無駄を承知でwレジスタは内部テンポラリとして扱い、
2命令で1疑似命令のような扱いにしては?
ファイルレジスタが汎用レジスタのように扱えるので
一気に扱いやすいマイコンになるとか(^^)
遅くてオブジェクトサイズでかくて大変そうだけど
796774ワット発電中さん:04/08/06 19:21 ID:gR+ceMJC
>>793
つっか、あんなにメモリが分断されているワンチップマイコン、他にはないぞ(断言)

GCCはともかく、PICのCコンパイラって、結構あるよね。HiTECH-CのLite版とか、フリーのやつも
結構あるみたいだし。

797774ワット発電中さん:04/08/06 19:44 ID:pSQAwqzM
PICマイコンをCで使ったって良いこと一戸もない
798774ワット発電中さん:04/08/06 20:35 ID:Wjfm78ob
またアセンブラ信者ですか
もういいよ
799774ワット発電中さん :04/08/06 20:57 ID:gRxaxBuz
BASICつかえば。
800774ワット発電中さん:04/08/06 21:40 ID:GelQVmTP
PICでGCCか・・。できたらおもしろそう。
801774ワット発電中さん:04/08/06 21:44 ID:rxIBdcC3
>またアセンブラ信者ですか
>もういいよ

お前技術者向いていないよ。現実を認めろ。
802774ワット発電中さん:04/08/06 22:30 ID:ojAPV/Go
>>801
スレタイ読めてマスカー?
803774ワット発電中さん:04/08/06 22:58 ID:EcUo7V9/
>802
鬼プロ ってあるぞ。
804774ワット発電中さん:04/08/06 22:59 ID:EcUo7V9/
PICでC言語なんてのは、原付にエアコン積んで高速走る(つかまるけど)ような行為だ。
805774ワット発電中さん:04/08/07 00:58 ID:WyBLKM8U
適材適所でしょ。
難しいプログラムならCで組んだ方が楽だし。
簡単のならアセンブラで組めばイイだろ。(まぁ例外はいくらでもあるがな)
Cで組んだって結局問題に突き当たったときにアセンブラを確認できるスキルはいるだろ。
806774ワット発電中さん:04/08/07 01:17 ID:XBkgX0S9
>>803
はいはい、それでいいでしょう。アホ
807774ワット発電中さん:04/08/07 02:23 ID:L4iIz/7r
>805
Cで記述しなければならないような複雑なアプリならPICでは力不足だ。
808774ワット発電中さん:04/08/07 03:11 ID:L4iIz/7r
PICですむようなCプログラムなんてC言語にとっては役不足もいいところだ。
809774ワット発電中さん:04/08/07 08:33 ID:bEMKAYtY
>>807-808
私はPICは顧客の都合でアセンブラばっかりですが、メンテナンス性は
C言語の方が良いんじゃないですか?
同僚は顧客要求もあってPICのプログラムをCで書くことも多いですよ。

アセンブラでごりごり書かないとパフォーマンスが出ないようなプロ
グラムだと、別のマイコンをチョイスした方が良いのではないかと思う
こともあります。
810774ワット発電中さん:04/08/07 08:35 ID:UuIfI4tt
秋田。
811774ワット発電中さん:04/08/07 09:06 ID:8aE50Toj
PICは非破壊の比較命令(cmp w,fとか)がないので、
Cの方がいいんだよ
if ( a > b ){
hoge();
}
else if ( a > c ){
hoge2();
}
とかいうのはアセンブラで書いたら何がなんだかわからん。

H8とかAVRだったら、汗ブラでも可。
812774ワット発電中さん:04/08/07 09:33 ID:MUOGV/ng
趣味的にプログラム・工作して楽しむのなら、好きなものを使って、好きなように作れば
いいんじゃない?
Cとアセンブラ、それぞれ長所短所があるのだから、どちらが絶対なんて言い切れないし、
言い切るようではスキルも向上しないと思うのだけど。

ソフト(ファーム)がらみだと、必ずこの手の宗教論争みたいなのが出てくるけど、
(ありがちなんだけど、エディタの優劣とか語りだした日には、本末転倒もいいところだ)
目的のアプリケーションを実現するためには、何通りもの道筋があるって事を
理解して、そのなかから(客先の意向や自分のやりたい事や好奇心を満たすとか)
どんな方法を取れるか考えるほうが、はるかに建設的だと思いますよ。

前提条件がない状態で、単に C と アセンブラを比較しようとすることは意味がないでしょ。
たとえば、PICのアプリケーションの有名どころでブロック崩しがあるけど、こういうのを
如何に楽に実装できるか、どんな改造が出来るか、なんて考えるほうが遥かに楽しいと思うんだけど。
813774ワット発電中さん:04/08/07 11:29 ID:b0fGHecS
フットワークの軽い技術者になろう
トラ技でよく目にする件だが、まさに理想はこれだろう。
814774ワット発電中さん:04/08/07 12:06 ID:FFXF5TXB
自分だけで完結するなら、なんでも良いんだけどね。自分の手から離れるブツを
作るときは、後のメンテとか考えると…だし、そういうのを要求される。なかなか
難しいんよ。クライアントが要求したら、それでやってやらんとイカンし。

#マイコンじゃないけど、WinのAccessで…っつ〜のを頼まれた事がある。即逃げw
815774ワット発電中さん:04/08/07 15:13 ID:/OrkAtN4
>フットワークの軽い技術者になろう

あっちからチョイ、こっちからチョイ、集めたのをチョットひねって さあ納品!

ってことでつか?
優ちゃんなんかの記事の作り方ってこれですよね?
ひねってさえいませんけど?
816739 です:04/08/07 15:39 ID:zZPmFCrL
CCS のCですが
適当なところは Cで書いて
アセンブラが有利なところは そこだけ #ASMで アセンブラを入れますな
817774ワット発電中さん:04/08/07 15:40 ID:Lq8y7TAx
>>315
>あっちからチョイ、こっちからチョイ、集めたのをチョットひねって さあ納品!

優ちゃんというよりはイナェノリさんっぽいですね、そのやりかた。
コピペソースにコピペ回路図で漏貧作ろうとしてたんだから。
818774ワット発電中さん:04/08/07 15:50 ID:cpLXLgEO
>>817
拙速主義なんだからしょうがないだろ!

接触手技ともいうが。
819774ワット発電中さん:04/08/07 16:11 ID:XBkgX0S9
>>816
組み込み系のCはasm使えて普通だよ。
使えないと辛い。
漏れは、会社でPIC のHI Tech Cを買ってもらった。
最初は、Cなんて別にイラネと思っていたけど、
高速部分はasmで書いて、判定部分とか時間が掛かっていいところは、
Cで書いているよ。プログラムをする時間が物凄く短くなったよ。

早く導入しておけばよかったと思った。
820774ワット発電中さん:04/08/07 17:49 ID:WyBLKM8U
漏れは趣味なんでつが、Cって便利でしょうか?
アセンブラは人並みには書けるようになりましたが。
もし良ければお勧めをあげてほしいです。
実の事をいうとC自体触ったことがないんですが…w
821774ワット発電中さん:04/08/07 18:10 ID:aog5jKmv
ソコソコの長さの文章を表示したり、発音させたり、入力を受け付けたりするような
用途になるとアセンブラでは厳しいかも(繰り返しが多くなるのでミスしやすくなり
しかもそのミスは発見し難い)
822774ワット発電中さん:04/08/07 18:11 ID:aog5jKmv
>高速部分はasmで書いて、判定部分とか時間が掛かっていいところは、
>Cで書いているよ。プログラムをする時間が物凄く短くなったよ。

ははは、無限ループに割り込み屋発見!
823774ワット発電中さん:04/08/07 18:45 ID:oXM4oqsV
>>822
つっか、普通そうするだろ?
判定部分はアセンブラだと分かりづらいのでCで書く。
割り込み先では速度最優先なのでアセンブラで書く。
Cで書くと、よけいなレジスタまでスタックへ退避されるので速度が落ちる。
824774ワット発電中さん:04/08/07 18:54 ID:aog5jKmv
その手法では8ピンPICでMIDIマージャーを作ることはできない。
825774ワット発電中さん:04/08/07 19:15 ID:UuIfI4tt
なんか夏休みだなぁ、と、しみじみ感じる。
826774ワット発電中さん:04/08/07 19:26 ID:UtC8B6qj
誰もがPICでMIDIマネージャ作るわけでなし。夏休みですね。
827774ワット発電中さん:04/08/07 19:58 ID:qiUlPHTz
何なの?MIDIマネージャ って?
828774ワット発電中さん:04/08/07 20:17 ID:J05Zd+2C
     ///////
    ///////____________
    ///////  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| ̄ ̄
   ///////              (~) チリンチリン
   ///////              ノ,,
  ///////     ∧_∧         / ̄ ̄ ̄ ̄ ̄ ̄
  ///////     ( ´∀`)( 厨 ) )) <  夏だなあ〜
 ///////      (つ へへ つ      \______
///////   //△ ヽλ  ) ) 旦
//////  l ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄l
/////    ̄| .| ̄ ̄ ̄ ̄ ̄ ̄ ̄| .| ̄
////     ^^^          ^^^
829774ワット発電中さん:04/08/07 23:18 ID:1zOcXlCg
マージャーだから合成するもんだろう。
そんなもん既製品かえや。
830774ワット発電中さん:04/08/07 23:32 ID:BsNjPKBl
2−2で1蔓延くらいするよ。
831774ワット発電中さん:04/08/08 02:03 ID:F/Gk0Twi
夏休みくれ〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜!!
832774ワット発電中さん:04/08/08 14:58 ID:SVjXYYRE
漏れ、5年間連続夏休み。2000日マジかだな。
仕事ホスイ
833774ワット発電中さん:04/08/08 18:17 ID:9rOYm/wm
>>820
プッお前はアセンブラでEEPROMにでもアクセスしてろw
834774ワット発電中さん:04/08/08 18:43 ID:OQEREAZh
>>820
速度とバイナリサイズに無駄が多くなりますが
コードの生産効率が非常に高くなります。
ちなみに私はPC-9801とTurbo-Cで勉強しました
お勧めです。
835774ワット発電中さん:04/08/08 20:41 ID:HX20FJs8
>>820
C+インラインアセンブラは便利ですよね。
ただしコードはどうしてもふくれると思うので、お使いのPICの見かけの性能(FLASHメモリサイズ、速度など)が
半減したような感覚にはなると思う。
書きやすいプログラム言語を持ったやや低性能なPICと
うまくやらないと頭が煮詰まってしまうプログラム言語を持った高性能PICと
どっちを選ぶかと考えた方が良いかも。
Cを使うことでPICの大きさを1段ageなければいけないことを許容できるならC。
それが許容できないまたはアセンブラでのプログラム管理に自信があるならアセンブラ、でしょうか。
PICのCについては無料のものは小さいターゲットにしか対応できないのが難ですね。
アセンブラでも何とかなるサイズだけに便利さを実感しにくいかも

Cは言語の便利さに加えてライブラリの存在も大きいかも。
>>833も言ってるけど(いいように解釈して)EEPROMアクセスなど誰が書いても同じようなものだし、
アセンブラでもサブルーチン化するから似たようなものだし

C言語そのものの勉強は趣味ならPC上で動くフリーのを使えばいいです。
http://www.borland.co.jp/cppbuilder/freecompiler/index.html
http://community.borland.com/article/0,1410,20841,00.html
836774ワット発電中さん:04/08/08 23:19 ID:Vq4trhxy
どうせ5年ごとに新しいCPUに乗り換えるんだからCにしちゃえよ。
837774ワット発電中さん:04/08/08 23:27 ID:9rOYm/wm
質問なのですが、PICを使って外部EEPROM(マイクロチップ社の20AA08)を読み書きしたいのですが、
データーシートを呼んでもラフな図が書いてあるだけで全く理解できませんでした。
どなたか具体的な手順を教えて頂けないでしょうか?
内臓EEPROMくらいは読み書きできますが外部となるとそう簡単にいかないのは承知しております。
838774ワット発電中さん:04/08/08 23:54 ID:zRchMWqx
>>837
24AA08?
http://ww1.microchip.com/downloads/en/DeviceDoc/21710c.pdf
I2Cだから、PICのI2Cのページ見ればいいんじゃないか?
http://www.picfun.com/c15.html
とか?

839774ワット発電中さん:04/08/09 10:09 ID:dHbEuDi0
PIC18F1220って、10MHzのクリスタル使えば40MHzで動いて(コードは1/4で10MHzになるけど)
PWMが8ビットで156.25 kHzで動くですか。そりゃすげぇ。
(PIC18シリーズだと、フリーのCが無いんだっけ?)
840774ワット発電中さん:04/08/09 11:03 ID:sdj0A9f3
>>839
http://www.bknd.com/cc8e/index.shtml
The demo edition supports up to 1024 instructions in a single C module.
The variable size is 1, 8, 16 and 24 bit, signed and unsigned,
fixed and floating point. Full optimization is available.

サポートちっぷは
http://www.bknd.com/cc8e/headers.shtml

さぁ、これでPICを捨ててAVRに逃げたヘタレどものハートをガッチリだ!

(ついでにGCC-PIC作ってくれよぉ)
841774ワット発電中さん:04/08/09 11:32 ID:/QolJQUX
>>840
と思ったが、喜んでデータシート見てみたら、タイマーが4本もある!
と思ったが、CCPモジュールは1本。つまり、インプットキャプチャとPWMは同時に使えない?やっぱヘタレか?
と思ったが、インプットキャプチャなんて割り込みでやりゃいいんだよ。
と思ったが、PICの16ビットタイマーって、L読んでH読んでL読んで、で無駄時間があるんだよな。
と思ったが、

12.6 Timer1 16-Bit Read/Write Mode
Timer1 can be configured for 16-bit reads and writes
(see Figure 12-2). When the RD16 control bit
(T1CON<7>) is set, the address for TMR1H is mapped
to a buffer register for the high byte of Timer1.

おぉ、やっとバッファを搭載してくれたか。

PIC16C84を捨てて、PIC18F1320にしようぜ。電源ピンだけはコンパチっぽから。


842774ワット発電中さん:04/08/09 12:00 ID:62R0ndmA
すげーバカだな。
今時は16F88をひつようなだけ並べるのが粋なんだよ。ボケ。
843774ワット発電中さん:04/08/09 13:23 ID:i4QgdgkM
>>841
18Fの40ピンのやつはCCPが2個あるよ
844774ワット発電中さん:04/08/09 14:20 ID:6vxpxoy8
>>839
40MHzでもAVR10MHz相当ではあるんだが、
RAM上の変数への演算が増えたところとか、1ステップ乗算演算があるところとかで
AVR-megaの16MHzを抜く速度をたたき出すケースもありそうだなこりゃ。

>>840
24bit変数に萌えてしまう俺は変かな?(CC8E C compilerの話)

>>841
>と思ったが、インプットキャプチャなんて割り込みでやりゃいいんだよ。
複数割り込みの時はやっぱり辛いぞ。

>おぉ、やっとバッファを搭載してくれたか。
>>843
18Fの40ピンのやつはCCPが2個あるよ
なんかマジでだんだんPIC18に引かれそうだなあ。
845774ワット発電中さん:04/08/09 16:02 ID:tB/JmdjB
PIC16はヘタレだから無理としても、PIC18のGCCを作ろうっていう動きはないんですかねぇ?
846774ワット発電中さん:04/08/09 19:28 ID:JnXgaYlO
>>845
gccのhomepageにはかけらもないなあ。
ML archive見てもないなあ。-fPICは全然関係ないオプションみたいだし(w
がんばって>PIC18な人
私は当分AVR
847774ワット発電中さん:04/08/09 19:31 ID:2GA2wXAh
GCCにこだわる理由は?
848774ワット発電中さん:04/08/09 19:50 ID:63CqnVeM
>>847
タダだから
自分で使う分には1万ちょっとの言語くらい高くないけど、
作ったのを公開したいな、って考えると誰でもすぐ使えるgccみたいなフリーのを使いたくなる。
849774ワット発電中さん:04/08/09 20:23 ID:RIue81KB
>>848
そうそう。
業務で使って、飽きて後輩にまかせるときに、言語が有料(またはマイナー)だと
結局引き継ぎが出来ないで、定年まで抱え込むことに(w
850774ワット発電中さん:04/08/09 20:57 ID:+67kNFdQ
AVRに逃げたヘッタレどもはPICには戻ってこないだろうからな。
18F限定でもいいから、早くgccが出てくれないと困る。
851774ワット発電中さん:04/08/09 20:58 ID:+ZffIwv7
>>849
え??業務でそれですか?
マイナーで問題ならわかりますが、有料で困るって・・
私物のC言語で開発するんですか??
852774ワット発電中さん:04/08/09 21:02 ID:2GA2wXAh
>>848
SDCCじゃダメ?
853774ワット発電中さん:04/08/09 21:06 ID:tdSN0dyf
SDCCはPIC14とPIC16をサポートしようとしてるみたいだね
ttp://sdcc.sourceforge.net/doc/sdccman.html/node44.html
854774ワット発電中さん:04/08/09 21:36 ID:GgUDOTFF
>>851
課内にあるライセンス本数のことじゃないの?
たかだか1万円であっても購入が渋られる会社は珍しくはない。
855774ワット発電中さん:04/08/10 00:26 ID:gfvV++wS
>>852
[-mavr]
[-mpic14]
[-mpic16]

おぉ。楽しみ。(いつ出来るの?)

ところで、
AVR users should probably have a look at avr-gcc
ってなんて訳すの?
AVRユーザーは大抵は、AVR-GCCをみている筈だ?


856774ワット発電中さん:04/08/10 00:28 ID:7JKVYXYV
周波数帯域が300〜3400ヘルツを保障している電話回線の帯域幅って
3100でいいんですか?
857774ワット発電中さん:04/08/10 00:33 ID:7JKVYXYV
856 書き込む場所を間違えました。見なかったことにしてください。
858774ワット発電中さん:04/08/10 00:43 ID:+V4o+0+5
見なかったことに
859774ワット発電中さん:04/08/10 01:08 ID:gfvV++wS
☆電気・電子の宿題,資格試験問題は俺に任せろ2☆
http://science3.2ch.net/test/read.cgi/denki/1086341892/735
>735 :774ワット発電中さん :04/08/10 00:33 ID:7JKVYXYV
>周波数帯域が300〜3400ヘルツを保障している電話回線の帯域幅って
>3100ヘルツでいいんですか?
860774ワット発電中さん:04/08/10 19:34 ID:sGTK0/BC
初心者でも簡単にできるPICを使ったマルチCPUシステムの作り方を教えてください。
とくにプロセス間通信と同期ついてわかりやすく解説していただけないでしょうか?
861774ワット発電中さん:04/08/10 19:51 ID:9A+E0Ed+
>>860
ふざけてるの?
862774ワット発電中さん:04/08/10 19:54 ID:DGSMB5KI
>>860
『初心者でも』  『簡単にできる』

どうでもいいが、なんでこういった予防線を張るのか気になるんだが。
どこから説明していいのかさっぱり判断出来なくなる。

取り合えず、『PIC単体のことはハードもソフトも全て理解しているが
マルチCPUシステムは知らない』ってことでOK?
863774ワット発電中さん:04/08/10 20:01 ID:AAHrx/bx
>>860
IICで外付けEEPROMにアクセスすることとかは出来るのかい?
864860:04/08/10 20:05 ID:sGTK0/BC
やっぱりスタックが浅過ぎてむりでしょうか?
同時性処理をベタに書いたサンプルプログラムが見つからないので質問したのですが
皆様はどうコーディングされてるのでしょうか?
865774ワット発電中さん:04/08/10 20:06 ID:JGvwHwPp
>>860
具体的事例と状況の説明を。
866774ワット発電中さん:04/08/10 21:04 ID:6DK20N4J
>862
シッタカが予防線張るのに必死だな(W

PICでマルチプロセッサやる場合はいわゆる汎用のCPUでのマルチプロセッシングとは
全く異なる。(つうか、PICは非力なコントローラに過ぎない。
マルチプロセッシングというよりも分散処理だな。)
複数のPIC間での同期の取り方、連絡の仕方で色々方法もあるだろう。
固定的に考えることは意味がない。
道具立ては、スレーブタイプのレジスタ装着タイプやシリアルバス装着タイプが便利だ。
867774ワット発電中さん:04/08/10 21:08 ID:S7I8llay
一個はモーター制御、もう一個はLCDやスイッチなどのパネル関係とか。

でも、こういったのはマルチCPUシステムっていうかな?
CPU複数使用システム?
868774ワット発電中さん:04/08/10 21:17 ID:S7I8llay
>>866
そうだね、分散処理って言えばいいのか。

一個でやるのが美しい、複数使うのはどんくさい… 
って印象があるのかないのか、無理矢理一個でやっちゃうのが多い?

16F84しか無かったころは、2個使った製作例も見た気がする。
869774ワット発電中さん:04/08/10 21:24 ID:S7I8llay
>>864
探せばもっとあるかもしれないけど。
ttp://www.geocities.jp/mo_ya_ne/program1.htm
870774ワット発電中さん:04/08/10 23:06 ID:TX5dnso9
>864
16F873の4発しか見当たりませんでした。

PICでI2C通信(PIC16F873)
ttp://homepage1.nifty.com/rikiya/software/316PICI2C.htm
PICでサーボを動かす(PIC16F873)
ttp://homepage1.nifty.com/rikiya/software/317PICSRV.htm

I2Cを使い同期を考えると、受信側のPICは割り込み処理している余裕は無し。
871774ワット発電中さん:04/08/11 00:30 ID:l1r0+CB+
>>867
AMPの事やね。でも>>864を見るとそこはかとなくSMPっぽい
のでちょっと違うかと・・・
PICでSMPって発想自体が基地外な気がしますけどね
872774ワット発電中さん:04/08/13 09:55 ID:khGng3tW
ADBのキーボードとマウスを使いたくて、ADB<=>PS/2インターフェースアダプタ
を自前でこしらえたときはPS/2マウス用とPS/2キーボード用それぞれ一つずつ
PICを使ったっけな。
PIC間通信でエラーが起きたときの回復処理で悩んだ記憶がある。
873774ワット発電中さん:04/08/13 17:51 ID:1vHsLcau
>>871
TinyOSみたいなこととか。
無線ユニット内臓のPICが出るならこのへんの使われ方も出てくるかも
874774ワット発電中さん:04/08/13 19:01 ID:Ii5y3Wkl
PICではないが、インテルの8742を数十個つなげる仕事を頼まれたことがある。
(その時は、興味がなくて断ったけど)

パチンコで大当たりした時に、大当たり台を中心に隣の台、さらに隣の台...
というように、ランプの光が島中を走るイルミネーションのようなやつ。
875774ワット発電中さん:04/08/17 16:30 ID:QHBAXX5S
今日、mplab6.61が本日リリースされたのはいいんだけど、
ダウンロードしたファイルが、またCRCエラーになるんだよなー
毎度毎度どうなってるんだか

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002
http://ww1.microchip.com/downloads/en/DeviceDoc/MP661.zip
876774ワット発電中さん:04/08/18 19:44 ID:HXbRrqJo
またかよw
とりあえずインストーラー版がでるまで待ったほうがいいな。
877774ワット発電中さん:04/08/19 13:00 ID:QfxEHpsl
やっとダウンロードできるようになりました。
http://forum.microchip.com/tm.asp?m=50422
878774ワット発電中さん:04/08/19 14:34 ID:g7J3bEI4
>872
一個でやれよ。それくらい。
879774ワット発電中さん:04/08/19 17:39 ID:QfxEHpsl
2個でやったほうが、考え方がすっきりする場合もあるよ。
なので最初は複数つかって作って、統合していった方が効率がよい。
いっしょにすると、色々な要素が加わって、かえって時間が掛かったりする。
880774ワット発電中さん:04/08/19 17:42 ID:aJ+FBeUY
そんな複雑な問題かよ。2個使う意味が何もないじゃん。
881774ワット発電中さん:04/08/19 18:46 ID:++MHjRGD
>>880
だってFM-8だってCPU2個使ってるだろ?
(BUBCOM-8も、そうだったかどうかは覚えてねぇや)
882774ワット発電中さん:04/08/19 18:58 ID:J+vrMsLc
>>881
それとこれとは話が別(w
883TK:04/08/19 19:16 ID:yp4OsqDk
今日、初めて16F88を使ってみようとした訳ですが、Bポートのtris(アドレス0x86)をすべて0にしても
出力できませんでした。
Aポートは出力できますが、何か必要な設定があるのでしょうか?
CCSのCで、デバイスを16F88にして
set_tris_b(0b00000000);
の命令をしても出力できません。(ポートはHインピーダンス状態で、オシロをあてると60Hzのノイズが出ます。)
アセンブラリストを見てみると、tris命令が使われており、PICのマニュアルを見ると使ってはいけないと
なっていたので、CCSのCのバグだと思います。そこで、上記の様にアドレス0x86に0を書き込みました。
あとは、ANSEL(アナログポートセレクト)(アドレス0x9B)を0にしました。
どなたか解る方いましたらご教授願います。
884774ワット発電中さん:04/08/19 19:46 ID:nl5IvsJx
>>879
お互い独立しているなら2個でやるのも楽で良いけど、
お互い通信しなければいけないもので、リソース上2個でやる理由がないなら
(メモリ、速度、IO数とか割り込み数とか)1個でやる方が通信処理の分楽でない?
885774ワット発電中さん:04/08/19 20:32 ID:kMAiIZS+
>>883
バグだと言い切るにはCCSのバージョンをちゃんと報告しないと笑われるよ。
あと、そのPICちゃんと動いているのかな?
初心者がやる失敗の一つが書き込みミス。
書き込み時のConfigの設定をちゃんとしないと動かないよ。

不思議なのがCCSを使っていながらアナログポートセレクトなんて面倒な事しているの?
setup_adc_ports(ADC_OFF);
が基本だよ。
ちゃんとリファレンスを読みましょう。

ちなみにおいらはちゃんとCCSCでポート出力できたよ。(^-^)
ccscは3.182と3.191のどちらでも問題なく出来た。

PIC16F88はじゃじゃ馬のIC。
今までPIC18F84Aと同じ気分でプログラムを組むと動かない。
ヘッダファイルとデータシートをじっくり読んで取り組まないと動かない。
886774ワット発電中さん:04/08/19 22:58 ID:EkDLF7Jv
>878
自分でやってみると、PS/2のいやらしさに気付くと思うぞ

887774ワット発電中さん:04/08/20 00:24 ID:1FUFpbFx
>>883
コンパイラのバグが疑われるなら、最小限のものアセンブラで書いてみたら?
それでチップの問題(というか自分の思い込みの問題)とコンパイラの問題の
切り分けができるでしょ

>>885
じゃじゃ馬と言うより無理矢理多くの機能を突っ込んだために、気が狂ってるとしか思えない
ピンアサインになってたりするしな
USARTのTX/RXとか、I/O16本と言いながら3本単方向だったり

機能豊富な分色々な事ができるけど、その色々な事を一つのチップで同時にやろうとすると
資源の競合とかピンの割り振りとかで困る事も結構ある感じ
既存チップと同程度の事をやるなら、ピン配置の問題はさておき、置き換えはできるので
多種のチップを用意する必要が無いという点は良いけど、その多機能をフルに使い倒そうと
考えると無理が出てくる
888774ワット発電中さん:04/08/20 00:46 ID:/aO1CVAF
16F628みたく、アナログコンパレータを積んでいるPICは、アナログコンパレータを使わないときには、
まず明示的にアナログコンパレータを切り離さないと、ピンがIOポートとして使えません。
(リセット時にはアナログコンパレータがONになっている)

889774ワット発電中さん:04/08/20 02:29 ID:VijvVbKO
>>887

そこまで言いますか・・・。(^^;
さらに付け加えて言えば、OSCを内蔵したのは良いのですがこれが曲者で
デフォルト設定が内蔵OSCになっているみたいです。
MCLRも未使用にできるし、この石はなんでこんなに複雑なICになったのかたしかに謎です。
386(曖昧)バイトもあるから凄く便利そうなふりをしてCCSCだと約80バイト近くコンパイラーが食っていきます。
ためしにさくっと作ってみたら250バイトくらいでコンパイラーは悲鳴をあげました。「RAMもうねぇ・・・」

チップのバリエーションを絞り込む為の苦肉の策なのかも知れませんね。

890774ワット発電中さん:04/08/20 02:46 ID:MWhBFrtW
>>889
80バイトをコンパイラーが食うって、どういうことでしょうか?
教えてくださいませ。

機能てんこ盛りなのは、ユーザーにとって迎合されることではないでしょうか
使いたい機能ごとにデバイスを変更するより、1つのデバイスで
なんでも使えるし、何の機能も使わないことだって出来ます。
ただ、従来のPICとの使い方の差がわかるまでは最初苦労すると思うんですが
一度やり方をつかんでしまえば、あとはこれ1つでOKになりますよね。
891774ワット発電中さん:04/08/20 02:50 ID:MWhBFrtW
>>888
確かに16F628は、リセット後はコンパレータにつながっていますね。
私もこれで泣きました。まさか...って。
でも、それは特殊な部類で、16F74A、16F88など多くの品種では、
リセット後はデジタルI/Oになっています。
データシートを確認してみてください。
892774ワット発電中さん:04/08/20 02:53 ID:NKVKKAdQ
いちいち上げる理由は?
893774ワット発電中さん:04/08/20 03:00 ID:AspXN0aQ
>>892
下げなきゃならない理由は?
894774ワット発電中さん:04/08/20 04:29 ID:1FUFpbFx
>>888
16F88ではコンパレータはリセットでOFFだよ

データシート 13.8 Effects of a RESET
A device RESET forces the CMCON register to its
RESET state, causing the comparator module to be in
the Comparator Off mode, CM<2:0> = 111.

さすがに、あれだけ他の機能と重畳しちゃったのでデフォルトONだと
マズいと思ったんじゃねえかな?
895774ワット発電中さん:04/08/20 05:05 ID:1FUFpbFx
>>889
私は外部ピンをケチりたい人なのでIntOSCでばかり使ってるからなぁ
8MHzあればたいてい足りるし
コンパイラは・・・知らん
アセンブラな人だから(w

細かい話をすればSFRの割当も気に入らない

たとえばEEPROM読もうと思うと、必ずEEADR→EECON1→EEDATAとアクセス
する必要があるけど、EEADRとEEDATAがbank2でEECON1がbank3だから
必ずバンク切替が2回入る
リロケータブルモジュールなんかにするとbankselが必ず2wordになるから
計4word必要になる
こういう必ずセットで使われるレジスタは同じバンクに置いてくれりゃいいのになぁ
とか・・・

>>890
>一度やり方をつかんでしまえば、あとはこれ1つでOKになりますよね。
それがそうでも無かったり

たとえば>>887で書いた気が狂ったようなピンアサインだけど、USARTのTX/RXが
RB5/RB2に振り分けられちゃってるから、USART使うならPORTBで連続した4bit
分のポートを取る事ができない
だからUSARTでPCに接ぎつつキャラクタLCD接ごうと思えばRA0〜RA3を使うしかない
RA5/7は入力専用だからRA4〜RA7というのはダメ

コンパレータ入力はRA0〜RA3を使うから、たとえばコンパレータでほげほげした結果を
LCDに表示しつつUSARTでPCに流すなんて事ができない
648AとかならUSARTのTX/RXがRB2/1だからLCDはRB4〜7に接いでやればOK

もちろんビットごとに4bit分bsf/bcfしてやればF88でもできない訳じゃないけど、
そこまで変態的なプログラム書きたくないし(w

あと、F88は電源が4.0V〜なので3.3V系では使えない。というか保証されない
ま、実際は動くけどね
896774ワット発電中さん:04/08/20 09:49 ID:zySB1s2J
>>890
80バイトではなく約80バイト。
断言はできないけど77バイトと思われる。(16進か10進かの記述がないけど10進と判断した)

コンパイラー側がスタック以外に作業用に使用するRAMの事。
(ユーザーが知らない間にPICのRAM領域を使用する)

書いてあるのはヘッダーファイル。
C Scratch area:とかかれているのがそれ。
16f84aだと0Cバイト、これがpic16f88になると77に激増する。
なぜこうなるかはCCSに聞いてくれ。

CCSCは癖が強いからおかしな動きをした時にはヘッダファイルを見に行くと良いよ。
知らない間に追加された#Fusesパラメータとかあるし、バグの回避にも使える。
(マイクロチップのエラッタなどでアドレスが変更されていたりする場合がある)
897883:04/08/20 13:32 ID:ayOfdLmW
どうも皆様ありがとうございました。CCSのCは3.191です。
もう一度チャレンジしてみます。
また結果を報告いたします。
898774ワット発電中さん:04/08/20 13:35 ID:PPn8Q/o4
>>896
77バイトでかいな。
なにか不要なライブラリの作業領域でも確保する作りになっていない?
文字列関数のワークとか、UARTのリングバッファとかが確保されてたりして
その"C Scratch area"を参照する命令があるかどうか、あるならどんな関数が
ここを見るのかレポートして欲しい
899774ワット発電中さん:04/08/20 15:25 ID:0c5oKE7r
PIC16系は、RAM(つっか、レジスタ)がズツズタに分断されているので、
そもそもコンパイラ使うほうが無理。
PIC18系にするか、アセンブラで書くのがあたり前。
それがいやならAVRにでも逃避すれば?(w
900774ワット発電中さん:04/08/21 07:50 ID:5EKoXNsH
余計なお世話
901774ワット発電中さん:04/08/21 14:41 ID:VIPwUhDe
>>899
AVRは解説本が出ていないから、やだ。
入手性もあまりよくないしな。
902774ワット発電中さん:04/08/21 14:43 ID:nnUvPXK2
>>901
たくさん使うお仕事?じゃないよなあ。お仕事なら解説本=データシートだろうし
903774ワット発電中さん:04/08/21 14:56 ID:d7a70ZIE
AVRも英文ならいくらでも入門サイトあるんだけどね
日本語しか出来ないならあきらめなさい
904774ワット発電中さん:04/08/21 15:50 ID:Sz4TbYo/
>>903
入門サイトなら日本語でもいっぱい。
まあだからAVR使えって話にもならないが
905774ワット発電中さん:04/08/21 16:19 ID:7GiLr0R1
PICは安部と違って力の入れ方がちがうからな。
安部の場合は単なる一製品だけど、PICはマイクロチップの主力製品だしな
906774ワット発電中さん:04/08/21 16:33 ID:l9CotjXO
日本でもマイクロチップから直接オーダーできるようになったよ。
これで、事実上何でも買えることになる。
907774ワット発電中さん:04/08/21 18:06 ID:k8cvReUC
dsPIC30Fシリーズって誰か使ってみましたか?
908774ワット発電中さん:04/08/21 19:16 ID:7GiLr0R1
でもサンプルはやっぱり本社の方に頼まないといけないのか。
まぁ別にめんどくさくないが。
つか趣味でPIC使うとき全部サンプル使って(ry
909774ワット発電中さん:04/08/24 19:40 ID:yyVoeONV
上げてみる
910774ワット発電中さん:04/08/24 20:05 ID:3x6eEHqZ
>>909
ほんじゃ質問を一つ。

picの書き込み環境はあります。
LEDが右から流れたりランダムに転倒したりするのをやりました。

つぎは何をやればよいでしょうか?お勧めなんかあったら教えてエ口イ人!!
911774ワット発電中さん:04/08/24 20:17 ID:ePUtxfY2
>>910
その流れならナイトライダーだな。
本物みたいに光が流れるやつきぼん。
912774ワット発電中さん:04/08/24 20:35 ID:3x6eEHqZ
>>911
サンクスd
初めてナイトライダー( ´ω`)?たる言葉を聴きました。
ttp://ueno.cool.ne.jp/molly/Palm/conts/b05_glitter/glitter.html
を発見しましたが(・∀・)イイ!!、当方バイクに乗っているので
ウィンカーとかテールランプにこんなことしてみたいと思っております。

私は学生の分際なので今日から夏休みです。いまから色々調べて回りますぅ

  ∧_∧
 (*´∀`)<タノシミ
  o(u_u)っ
913774ワット発電中さん:04/08/24 21:21 ID:Kz71S420
>>912
もしオリジナルをご存じなければこちらでも。
http://www.yoyo-kikaku.org/knightrider.html
この車のフロントのイルミが左右に動くのがカコイイって流行ったの。
こんなことしてる方もおられるようで・・・すげー
http://www.lcv.ne.jp/~aiaki/kitt/kitt.html
914774ワット発電中さん:04/08/24 21:28 ID:ePUtxfY2
>>910
うむむ、ゼネレーションギャップが=□○_
生まれてなかった人も多いんだろなぁ。

昔々、人工知能搭載のスーパーカーが活躍するTV映画がありました。
そいつのフロントの所が赤くフィンフィン光ってたわけですね。
ttp://www.thesportsmaniacs.com/images/TV/KR1-12-1.jpg
ttp://riderx.hp.infoseek.co.jp/night%20friend.htm

スパイダーマンが当たったんで、こいつの新作映画の話も出てるみたい。
915774ワット発電中さん:04/08/24 21:31 ID:vIpudHl3
ナイトライダーで思い出したがw
http://www.lcv.ne.jp/~aiaki/kitt/kitt.html
916774ワット発電中さん:04/08/25 08:47 ID:Pgm3Q5/t
>>913
これ、公道走れるんですか?
917774ワット発電中さん:04/08/25 12:08 ID:y9mZjLDv
>>916
灯火類と速度計さえ車検に合致すれば通るんじゃないの?
改造届出はいるのかな?
918774ワット発電中さん:04/08/25 12:18 ID:lB4KLJu8
>>917
車体・車台のサイズや構造変更が無ければ、全く問題ないです。
919774ワット発電中さん:04/08/25 16:27 ID:mVsdCiIa
>>916
灯火の色には規制があったから、前面の赤色燈ってところでアウトじゃない?

http://www.jaspa.or.jp/kaizo/frame_top.html
920774ワット発電中さん:04/08/25 16:35 ID:y9mZjLDv
>>919
前照灯としての機能がないもので、ウインカーと紛らわしくないなら問題ないのでは?
前照灯並みの照度はなく、全体としては点滅していないからOKって解釈は無理?
921739 です:04/08/25 21:20 ID:2iSYQOsr
だめだ〜
前方に照射する赤色は駄目でつ

道路運送車両法 保安基準 第42条第5項 同条第8項
922774ワット発電中さん:04/08/25 22:05 ID:hYKUPxw2
気にするこたぁない
923774ワット発電中さん:04/08/25 22:06 ID:5ukt3pf+
青ならOKとするとかえって格好いいと思われ
924774ワット発電中さん:04/08/25 22:37 ID:hCcaBcr6
橙色にしてみる
925774ワット発電中さん:04/08/25 22:42 ID:O7soNbHs
ナイトフラッシャーって駐車灯じゃないの?
926774ワット発電中さん:04/08/27 02:24 ID:AGxCfiLK
いきなりですが教えてください。PICのライターソフト(HEXをPICに焼き込むやつ)の
configの設定の中で、プロテクトがかけられるラジオボタンがあります。
そのボタンには、ALL, OFFのほかに 1/2や3/4などもあります。
この1/2や3/4などは、どのような時に使用するのでしょうか?
プロテクトかけるなら全部かければいいと思うし、かけないならOFFでいいと
思うんです。どういう目的で使われるのか、教えてください。
927774ワット発電中さん:04/08/27 05:41 ID:/AQsUb+N
家にころがってた謎のステッピングモーターを動かそうとしてみて、
ttp://www.hobby-elec.org/step.htm
の回路図をパクって、ソースはCで書いて、
最初から最後まで適当なのにモーターが回転してくれてしまったって状況なんですが、
ここで一つ疑問が。

そのモーターのシールに
42SIM-24D8YB
Δ7.5deg24Ω JAPAN
25JUN90DB
と書いてあるのですが、この情報からどの程度このモーターの仕様が分かる(推測出来る)もんなのでしょうか?
とりあえず一式ぐぐってみたのですがロクにヒットしなかったもんで・・・
928 ◆74HC74Q2GI :04/08/27 14:00 ID:getcDvXc
>>927
ラベルシールも重要ですが、、、外形サイズがどれくらいかとか
アプしないのでしょうか?
urlにあった回路が使えたとなると、4相(2相のユニポーラ結線)
のモデルでしょう。
外形サイズが同じで相抵抗24Ω、ステップ角7.5度のモデルを
モータメーカ各社のカタログから探してみたらよろしいのでは?

型番からの推定では 最初の42が直径42ミリ 次の24が7.5DEGと
関係して極数でしょう。8は解りません。
929774ワット発電中さん:04/08/27 19:22 ID:/AQsUb+N
>>928
早速のレスどもです。

ttp://with2ch.net/cgi-bin/pict/image-box/img20040827191942.jpg
外形はこんな感じですね。
軸の部分を除くと直径4cm*高さ2.5cmの円柱って感じです。

では、ちとぐぐってきまーす。
930774ワット発電中さん:04/08/28 03:23 ID:8TFPj8+8
>>926
OEM供給とかする時に、コード部分はプロテクトしておいて、データ(定数テーブル)
部分は見えるようにするとか、OEM先で書き込めるようにするとか、そういう
使い方するんじゃないかな?
931774ワット発電中さん:04/08/28 16:57 ID:+MJXoiM1
>>930
なるほど、そういうことですか。ありがとうございました。
助かりました
932774ワット発電中さん:04/08/28 17:07 ID:JvBIhL2Z
>>926
update用のモニタを書き込んである部分を保護しているとか。
933774ワット発電中さん:04/08/29 01:19 ID:+vQISULW
>>932
PICは自力でROM書けないから、それは無い
934774ワット発電中さん:04/08/29 04:58 ID:P0EX0ofm
>>933
PIC16F877とかは?
935774ワット発電中さん:04/08/29 10:19 ID:z9nZTVh0
ちょっと乗り遅れたが昔、バイクのウインカーの下に
http://www012.upp.so-net.ne.jp/tylor/winkervr.1.gif
こんなの付けてた時期がありました。
936774ワット発電中さん:04/08/29 13:51 ID:SfMWtzWZ
PICの最大の情報源だと思ってる電子工作の実験室のページ(picfun.com)の
TOPページがR8C/Tinyに変わってる!
937774ワット発電中さん:04/08/29 14:57 ID:q65wkOcJ
>>936
そうか?

そろそろ乗り換え時期なのかもな。
本出すにしても飽和してるし、PICが初心者向けだなんて方便だし。
938774ワット発電中さん:04/08/29 16:41 ID:SfMWtzWZ
>937
今見たら元に戻ってた。俺が見たのは幻だったのかな。
ページも全然できていなかったようだし
939774ワット発電中さん:04/08/29 18:37 ID:A8QtJS7n
PICは通好みのマイコン。
940774ワット発電中さん:04/08/29 18:40 ID:A8QtJS7n
最近文献を
全て電子化してディスクの中に格納してしまったので
だいぶすっきりした環境になりました。

これって法的には微妙なんだよね?
941774ワット発電中さん:04/08/29 18:48 ID:OoUgO4SD
私的複製つー事でいいのでは?

さすがにそれをバラまいたらまずいと思いますが。
942774ワット発電中さん:04/08/29 19:52 ID:Y9ixOm+F
電子工作も電気工作も初心者。
というか、全くと言っていいほど知識がないのですが、
PICを使った作品を作りたい場合、何からはじめればいいですか?
943774ワット発電中さん:04/08/29 19:54 ID:/YQp3MIq
>>942
本買って読め。
944774ワット発電中さん:04/08/29 20:33 ID:hdsbSmLh
LED点灯、音を出すというのが定番だね。
インターネットでも色々紹介されているけど、
まずはバイブルとなる本を買うのが近道ですね。
どんな本を買うかは、例えば
http://www.amazon.co.jp/exec/obidos/search-handle-form/249-7710348-8417956
とかを参照してください。
インターネットなら、このスレを全部読んで、リンク先を辿れば
きっと勉強になるところがあります。
945774ワット発電中さん:04/08/29 21:04 ID:2p7UDhjf
質問なのだがナイトライダーとデロリアンは別物か?
946774ワット発電中さん:04/08/29 21:05 ID:q8RCbNmq
デロリアンの7セグLED萌え
947774ワット発電中さん:04/08/29 21:51 ID:O1Mex/2k
デロリアンには漢のロマンを感じるな。
買って乗ろうとは思わないけど。
948774ワット発電中さん:04/08/29 21:53 ID:+IsdbNOj
出ロリ餡は、実在の、普通のスポーツカー。
タイムマシンに改造されていないものには、7セグLEDは付いていなかった。
(アデレードの自動車博物館に展示されているので確認)
無いとライダーは、ライダーだから人間の方を表す。ナイト2000が正しい。
949774ワット発電中さん:04/08/29 21:55 ID:q8RCbNmq
本物には7セグLEDは付いてないのか。残念。
950774ワット発電中さん:04/08/29 21:55 ID:AGbt8ldJ
へぇ〜へぇ〜へぇ〜
951774ワット発電中さん:04/08/30 01:11 ID:gdqaxyaA
みなさん、PICの工作時に使うロジアナorオシロってどのような物を
お使いでしょうか。ロジアナは高いし、オシロも色々種類があり、正直
どれを使えば良いか分かりません。
何かこれが良いぞ、という物がございましたら
教えていただけないでしょうか?
952774ワット発電中さん:04/08/30 06:35 ID:JmIc0FOd
カメレオンUSB+ロジアナ基板
953774ワット発電中さん:04/08/30 10:35 ID:pSZF3CJ0
>>951

予算は?
PICでなにを作りたいの?
PICはなにを使おうとしているのかな?
テスターは持っているか?

PICのプログラムの動きを知りたいのであればICD2を買った方が良い。
PIC周辺の回路のデバッグが必要だったらオシロがあれば良いが、予算が判らないとなんともいえない。
5万以下だったらヤフオクで中古か、ショップの中古しかない。
10万円まで出せるなら、ネットで中古(整備済み)のオシロが売られているので買うのがいいだろう。
http://www.evertech.co.jp/
整備済み、3カ月保証は多少高いがヤフオクで怪しいのを購入するのに比べると初心者向けだ。
(ただし値段が高いのが問題だけど安心を買ったと思えるかが重要)

ロジアナで検索すれば16ビットタイプだったら5万円位から買えるのでそれで間に合わせる方法もある。

在れば便利だけど、無いなりに知恵を使うのも大事だね。
954774ワット発電中さん:04/08/30 10:36 ID:pvOt4rtH
 ヽ(´ー`)ノ
 (___)
 |   |〜〜
 ◎ ̄ ̄◎ ころころ〜
955774ワット発電中さん:04/08/30 14:18 ID:KSCHbVQ9
波形を見たいのであれば、オシロ
波形を計測したいのなら、ロジアナかな。

最近は、波形をメモリーできるオシロもあるし。
956951:04/08/30 15:26 ID:cEw/9Ecp
>>952
それも考えてたんですが、プローブの作り方がまだ良く分からないので
選択からはずしてしまいました。
ここ ttp://members.at.infoseek.co.jp/x1resource/xilinx/chamusb/chamusb.htm
を見ても分からないような状態で・・すみません。

>>953
予算は5万程度を考えています。現在作成中なのは、PIC16F84AとLED3個、
ブザーとスイッチを使った簡単なものです。
「この程度なら必要ないよ」と思われるかもしれませんが、目的としては
実際に素子間の電気の流れ(形)を目で確認してみたいというものがあります。

>在れば便利だけど、無いなりに知恵を使うのも大事だね。
おっしゃる通りです・・がまだその知恵さえも身に付いていないような状態でして。
精進します・・
957774ワット発電中さん:04/08/30 15:39 ID:aaRLF6Yw
ヤフオクなら中古で2万以下でマトモなアナログオシロなら手に入るぞ。
ただし保証も動作もちゃんとしてるか分からんと思うので初心者にはお勧めできないなぁ。
と言っても殆ど余程古かったり注意書きが無ければまともに動くとは思うけど。
958774ワット発電中さん:04/08/30 16:42 ID:KX0KNnZe
批判も多いようだが、
ペン型デジタルオシロスコープ
http://akizukidenshi.com/catalog/items2.php?c=comp&s=popularity&p=1&r=1&page=#M-00106
オレは結構便利に使っている。
まぁ、周波数範囲と電圧範囲がキメウチできるので、大体使える。

http://akizukidenshi.com/catalog/items2.php?q=%A5%AA%A5%B7%A5%ED&s=score&p=1&r=1&page=#M-00172
これも結構便利に使っている。

ポータブルでなくてもいいのなら、アナログの中古を買ったほうが楽なのは楽。


959774ワット発電中さん:04/08/30 18:38 ID:s4SmWtFt
便乗で申し訳ないんですが、PIC(16F84)で作った周波数カウンタ
にduty測定機能をつけたいのですが、何かいい方法ないでしょうか?

周波数計った後で、コンデンサで平滑化して電圧はかれば
duty計ったことになる気もするんですが、そのときのコンデンサはどのくらいの容量がいいんでしょうか?
960774ワット発電中さん:04/08/30 20:12 ID:JmIc0FOd
はい?
961774ワット発電中さん:04/08/30 20:41 ID:EO0MJ1CX
アセンブリ言語で、プログラムが大きくなってくると、
ラベル名の付け方や、その管理、ラベル名と変数名の区別などが
難しくなってくるのですが、みなさんはどうしてますか?
名前の付け方に定石の方法とかあるんですか?
962774ワット発電中さん:04/08/30 21:15 ID:Ul0jqckN
>>961
俺は、サブルーチンの中だと、適当に番号付ける。
後で他人に笑われなきゃどうでもいい。
女性の名前(USADA, MIYUKI01)
ローマ字(RANSU, MEMORIARU)

ラベルに使う英単語はだいたい決まってるから他人のを見ろ。
963774ワット発電中さん:04/08/30 21:22 ID:EwlHzfVl
>>959

平滑化するんなら測定したい最低周波数の5倍から10倍程度の
時定数を目安にすればよいかもしれないけど、
たとえばランダムに1000回、入力信号のH/Lを測定すれば
Hの回数が0.1%単位のデューティ比という考え方もできる。
偶然、測定周期と入力周波数が近くなってしまうと破綻する
けどなぁ。
複数の(小さな整数比にならない)サンプル周期で順番に
計測することにして、そのたびに表示して、それらが大きく
違うなら、問題が生じているなんて判断することにすれば、
人に使わせるにはよくないだろうが、測定法の欠点を知っている
自分専用の簡易測定器としてなら役立つかもしれない。
964774ワット発電中さん:04/08/30 21:23 ID:jquUeScm
>>962
PCにも女性名付けてそうだなw
965774ワット発電中さん:04/08/30 21:24 ID:EwlHzfVl
>>961

サブルーチンのラベルは「動詞+目的語」にして、
サブルーチン内のローカルなラベルは、それを
簡略化したものに数字を後ろに付けたりする。
変数は名詞形に限るとかすれば、判断付くよね。
966774ワット発電中さん:04/08/31 02:38 ID:9ZRmSeGK
>>961
リロケータブルオブジェクトにしてモジュール分割すれば内部ラベルは気にしなくて済む
リンカースクリプトちゃんと書いてやれば思い通りのバンク/ページにマップできるし
967774ワット発電中さん:04/08/31 11:55 ID:p53ckFTy
>>959
割り込み中にRB0/INTの方向を変えればいいんじゃないの?

INTEDG ← 1 ; Hで割り込み

(割り込んだときのタイマーの値を記録=T1)

INTEDG ← 0; Lで割り込み

(割り込んだときのタイマーの値を記録=T2)

INTEDG ←1 ; Lで割り込み

(割り込んだときのタイマーの値を記録=T3)

Duty=(T2-T1) / (T3-T1)
T = (T3-T1)
f = 1 / T

968774ワット発電中さん:04/08/31 14:32 ID:8JxlL1hO
昔あるアセンブラで構造化っぽい事が出来るやつがあった。
goto @fとかやると次の@@:まで飛んで@bだと1つ前の@@:に飛ぶ。
便利だった。
969774ワット発電中さん:04/08/31 15:17 ID:9hQtiPXU
>>968
なんだったっけ?
サザンパシフィックだったか、ライフボートだったか、
マイクロソフトウェアアソシエイツだったかの、
OPTASMとか、そういうやつだっけ?
970774ワット発電中さん:04/08/31 18:00 ID:f0wbpAEd
http://u-maker.com/72992.html
未だ未完成
PIC占い
971774ワット発電中さん:04/08/31 18:53 ID:ZftmtUaq
いわく、
> dsPICさんのあなたは、みんなに慕われる親分タイプです。
> 物事に動じない強さと、明るく真っ直ぐな性格が魅力。
> 周りに振り回されて右往左往するようなこともなく・・・
972774ワット発電中さん:04/08/31 19:11 ID:8tY8jONZ
>968
PICの場合、1インストラクションが1WORDだから、いっそ
DECFSZ COUNT,F
GOTO $-1
みたいなのでもいいんじゃない
973774ワット発電中さん:04/08/31 19:30 ID:8tY8jONZ
リロケータブルオブジェクトで作るぞっと思って
CODE,GLOBAL,EXTERN,UDATA,RES等を使ってソースを書いたはいいが
リンク出来ず。MPLABのinstallフォルダにある対象PICの.lkrを
コピーして指定してリンク出来るようになるまで半日。
その後 "can not fit the absolute section. "に悩まされて
さらに半日、
 ORG 0
 GOTO MAIN
 ORG 4
INTR MOVWF INTR_W
 ORG 5 ; <-これ
 MOVF STATUS,w
 MOVWF INTR_STAT
上記の様にORG 5を入れて解決したが。普通はどうするもんなの?
リンカースクリプトのCODEPAGEの所を書き換えるのかなぁ
974774ワット発電中さん:04/08/31 23:04 ID:J2xJwbZh
まったく初心者なのですがPICで電光掲示板はつくれますか?
975774ワット発電中さん:04/08/31 23:30 ID:8JxlL1hO
>>972
それすぐ使えるね。けどボクPA専門だからマクロだらけで相対距離わかりにくいん。
976774ワット発電中さん:04/08/31 23:45 ID:R+itzAwV
>974
ノリタケitronていう蛍光表示管で作ってる人がいるね
http://www.noritake-itron.jp/kit/index.htm
の右側の製作報告板(BBS)にいけば見つかる

I2CのEEPROM 1Mx2でJIS第1&2水準が表示できるみたい
作ってみたいけど蛍光表示管とEEPROMで1万くらいかかりそう
977774ワット発電中さん:04/09/01 00:48 ID:sLwDUUBW
>>973
普通かどうかは知らんが、オレはこんな感じ

STARTUP CODE  0x000  ; processor reset vector
    goto  main       ; go to beginning of program

INTRT   CODE  0x004  ; interrupt vector location
    goto  service_int  ; go to beginning of interrupt service function

INTRTF  CODE
service_int
    movwf  w_temp    ; save off current W register contents
     :

リロケータブルにORG使うのは何かキモチ悪い
978774ワット発電中さん:04/09/01 01:53 ID:u/kKmScW
>>974
秋月のシリアル制御32x16LEDマトリクス&PIC16F84A/PIC16F628で作ったことがあるよ。
フォントデータとかを置く余裕はないので、グラフィックデータを
プログラムエリアに埋め込むようにした。データの変更には再プログラミングが必要。
PIC16F84Aを使ったときは32x64のデータを縦スクロール。
PIC16F628で作ったときには256x64のデータを横スクロール&縦スクロール。
問題は、使用した秋月のシリアル制御LEDマトリクスがもう入手不可なところだ。
こいつは簡単にPICからコントロールできて便利だったのだが。

今作るとすると、単体のLEDマトリクスを買ってきて、ドライバを作って発光させる
ことになると思う。シフトレジスタやらを用意する必要があってちょっと面倒。
設計次第で128x16ドットとかのも作れるだろう。
979774ワット発電中さん:04/09/01 02:09 ID:HPZmdFP6
私も978さんと同じ部品を使って電光掲示板、というか時計を作りました。
プログラムの手法も一緒。考えることは皆同じですね。

電光掲示板の製作で一番のネックはやはりLEDのドライブ回路。
個別部品で構成するなら、
ttp://www2s.biglobe.ne.jp/~NAOTO/acs/h8/index.htm
ここのが参考になる。

あと、現品コムにドライバつきのLEDマトリクスモジュールが売ってたんだが、今はあるのかな。
980774ワット発電中さん:04/09/01 07:26 ID:pgYnz4tT
>977
CODEの後ろに開始アドレス入れられるとは知らなかった。サンクス
やっぱりGOTOで飛ばすのが普通なのかな。
前、PICのプログラム作ったとき割り込み処理が重くなってしまったので
出来るだけ処理を軽く作りたくてGOTOで2サイクルも消費するのが
もったいなくて

あと分割アセンブルで出来上がったプログラムのメインのソースと
他のソースの間にRETLW 0 が2個入ってしまうんだが何か意味が
あるんだろうか?
981774ワット発電中さん:04/09/01 10:57 ID:31AuWeW7
982774ワット発電中さん:04/09/01 18:51 ID:pgYnz4tT
PICの割り込みでWレジスタ退避する際、BANKの指定って出来ないから
Wレジスタ退避用のRAMと同じアドレスにある他のBANKのRAMも使用不可?
983977:04/09/02 01:59 ID:Ja+ZRqZV
>>980
gotoで飛ばすのがイヤならリンカースクリプト書き換えて、0x004以降に
セクション取って割込み処理ルーチン書けば良い

>あと分割アセンブルで出来上がったプログラムのメインのソースと
>他のソースの間にRETLW 0 が2個入ってしまうんだが何か意味が
>あるんだろうか?

ウチでは入らないけどなぁ
ORGとか使ってアブソリュートになってるからとか、そういうんじゃなくて?
984977:04/09/02 02:06 ID:Ja+ZRqZV
>>982
基本的には、STATUSとWレジスタの退避はバンク切替するUDATA領域ではなく
バンク切替しても共通にアクセスできるUDATA_SHR領域に取るべきだと思う
Microchipのサンプルコードなんかでもだいたいそうなってるし。

チップによってはバンクはあってもRAMが無い場合もあるから、UDATA領域に
取ってると、チップ変えた場合にハマるよ。648とか
985774ワット発電中さん:04/09/02 11:56 ID:PJL2+ld+
>983
レスありがとうございます
リンカースクリプトの方を書き換えて対処するようにします

RETLW 0はちょっと試したけど原因不明です。2wordくらいどうでも
いいと言われるとその通りなんですが
STARTUP CODE 0x000
    GOTO MAIN
INTR  CODE 0x004
    GOTO INTR
    CODE
MAIN  GOTO MAIN
INTR  GOTO INTR
    END
これを適当なリンカースクリプト持って来てビルドすると
0x005,6にRETLW 0が入ってGOTO MAINが0x007になってしまう
(MPLABv6.50とv6.61試しました)
>984
UDATA_SHR領域に取るようにします。RAMが実装されてない所って
他のBANKのイメージが出て来るのかと思ってたけどRead as "0"
なんですね
986774ワット発電中さん
http://u-maker.com/72992d.html
これをやってみた

12位 ★Z80
戦国時代へタイムスリップ
PICじゃないじゃん