【皆で作ろう】PIC専用のスレPart13【Writer509】

このエントリーをはてなブックマークに追加
1774ワット発電中さん
     ______ 13スレ目です。
   /Microchip ./| 
 /( ゚∀゚)    /  | アセンブラのアの字もわからない
 |~ ̄ ̄ ̄ ̄ ̄|  /. 超初心者からHEXが読めてしまう
 |/Z./Z./Z./Z_|/ ||  鬼プロフェッショナルの為のスッドレ(#゚Д゚)だ!ゴルァ
  ||. ||. ||. ||

例の如く基本リンクだ
http://www.microchip.com/  マイクロチップ本社
http://www.microchip.co.jp/ マイクロチップ日本支社
またーりやっておくんなまし。 SX関係もどーぞ。
教えて君はとりあえずGoogle(http://www.google.co.jp/)
くらい使おう

前スレ
【皆で作ろう】PIC専用のスレPart12【Writer509】
http://science6.2ch.net/test/read.cgi/denki/1165919841/

●過去スレ●  >2辺り
●関連リンク●  >3辺り
●関連スレ ●  >4辺り
  その他注意  >5辺り
2774ワット発電中さん:2007/03/29(木) 01:08:37 ID:/bcYtyCp
●過去スレ●

【皆で作ろう】PIC専用のスレPart12【Writer509】
http://science6.2ch.net/test/read.cgi/denki/1165919841/
【18Fは】PIC専用のスレPart11【(・∀・)イイ?】
http://science4.2ch.net/test/read.cgi/denki/1161982672/
【12F629】PIC専用のスレPart10【輝け!】
http://science4.2ch.net/test/read.cgi/denki/1155772077/
【12F683】PIC専用のスレPart9【囁け!】
http://science4.2ch.net/test/read.cgi/denki/1146949082/
【16F648】PIC専用のスレPart8【動け!】
http://science4.2ch.net/test/read.cgi/denki/1139471101/
【10F206】PIC専用のスレPart7【轟け!】
http://science4.2ch.net/test/read.cgi/denki/1134909554/
【12F675】PIC専用のスレPart6【しゃぶれ】
http://science4.2ch.net/test/read.cgi/denki/1127462924/
【お手軽】PIC専用のスレPart5【マイコン】
http://science4.2ch.net/test/read.cgi/denki/1122092255/
【お手軽】PIC専用のスレPart4【マイコン】
http://science3.2ch.net/test/read.cgi/denki/1115145584/
【お手軽】PIC専用のスレPart3【マイコン】
http://science3.2ch.net/test/read.cgi/denki/1108027098/
【お手軽】PIC専用のスレPart2【マイコン】
http://science3.2ch.net/test/read.cgi/denki/1094312282/
【超初心者】PIC専門のスレ【鬼プロ】
http://science3.2ch.net/test/read.cgi/denki/1077618889/
PIC AVR H8統合スレ (元祖)
http://science2.2ch.net/test/read.cgi/denki/1072092201/
3774ワット発電中さん:2007/03/29(木) 01:09:46 ID:/bcYtyCp
●関連リンク●
電子工作の実験室
ttp://www.picfun.com/
ic-prog
ttp://www.ic-prog.com/index1.htm
PIC工作室
ttp://www.ne.jp/asahi/ham/js1rsv/PIC/picmake.htm
第1回:PICを使ってみよう
ttp://edu.cs.inf.shizuoka.ac.jp/2004/V060/lesson/no1/index.html
全て無料の最強開発環境 MPLAB with HI-TECH
ttp://www.ne.jp/asahi/air/variable/picmel/index.htm
PICな日曜日
ttp://www.kimurass.co.jp/picindex.htm
Writer509
ttp://www.geocities.jp/orange_denshi/writer509.html
PICでインドアプレーンを飛ばす人
ttp://blog.goo.ne.jp/toko0131
4774ワット発電中さん:2007/03/29(木) 01:12:11 ID:/bcYtyCp
●関連スレ ●
H8,SH系マイコン限定スレ 2チップ目
http://science4.2ch.net/test/read.cgi/denki/1161321776/
【Capsense】PSoC スレ  其の四【USB】
http://science4.2ch.net/test/read.cgi/denki/1163073993/
AVRマイコン総合スレ Part7
http://science4.2ch.net/test/read.cgi/denki/1162464623/
自作回路でUSB
http://science4.2ch.net/test/read.cgi/denki/1080051916/
LEDチカチカ総合スレ
http://science4.2ch.net/test/read.cgi/denki/1146899894/
PICでBEEP音を作りたい!!
http://science4.2ch.net/test/read.cgi/denki/1074945895/
PICにOSは必要か?
http://science4.2ch.net/test/read.cgi/denki/1117626216/
【VIP】NECのAllFlash78Kシリーズで一喜一憂
http://science4.2ch.net/test/read.cgi/denki/1112177094/
マイコン総合スレ
http://science4.2ch.net/test/read.cgi/denki/1108630837/
5774ワット発電中さん:2007/03/29(木) 01:13:40 ID:/bcYtyCp
Kさんなど、関連人物の話題は下記スレに隔離するルールです。
本スレには書き込まず、書き込まれても華麗にスルーでお願いします。

【天才?】電子工作関連人物ヲチスレ4【天然?】
http://science6.2ch.net/test/read.cgi/denki/1174224015/

久しぶりに埋まったのを見届けたので立てました。
みなさん大人なんですから節度を持ってご利用ください。
↓↓↓↓↓↓
6774ワット発電中さん:2007/03/29(木) 01:14:59 ID:/bcYtyCp
もう少し拾っておきます。

マイクロチップ社とモスバーガーのマークが酷似
http://science4.2ch.net/test/read.cgi/denki/1097862424/
TI MSP430シリーズ 1クロック
http://science4.2ch.net/test/read.cgi/denki/1116942761/
【元Motorola】Freescale マイコン AN001【名門】
http://science4.2ch.net/test/read.cgi/denki/1148115822/
やっぱARMっしょ
http://science4.2ch.net/test/read.cgi/denki/1072102432/
[SH_M32__ルネサスマイコン総合スレ2__H8_R8C_Tiny]
http://science4.2ch.net/test/read.cgi/denki/1159675598/
【発光】ヒカリもの全般スレ【LED等】4素子目
http://science4.2ch.net/test/read.cgi/denki/1152030024/
【古い】シリアル通信【最新】
http://science4.2ch.net/test/read.cgi/denki/1112199189/
SDカードを自作回路で利用するスレ
http://science4.2ch.net/test/read.cgi/denki/1117544590/
みんなでMP3プレーヤを作るスレ
http://science4.2ch.net/test/read.cgi/denki/1127071074/
普通のTV用リモコンでWiiリモコンをつくるスレ
http://science4.2ch.net/test/read.cgi/denki/1162531962/
電子工作に適したディスプレイデバイスは?
http://science4.2ch.net/test/read.cgi/denki/1119799091/
【デジタル回路、マイコン応用 設計担当課】
http://science4.2ch.net/test/read.cgi/denki/1139622374/
マイコン総合スレ
http://science4.2ch.net/test/read.cgi/denki/1108630837/
【まだ】単品CPU Z80とか6809/6502 (【現役】
http://science4.2ch.net/test/read.cgi/denki/1150952925/
技術屋ならCPU創るだろ?
http://science4.2ch.net/test/read.cgi/denki/1072113898/
昔話用
ttp://bubble4.2ch.net/i4004/
7774ワット発電中さん:2007/03/29(木) 01:26:44 ID:8AXo/L6w
>1
乙。
だが前スレ1000で次としてあるアドレスが前スレそのものなのはいかがなものか。
まぁ、ドンマイ。
8774ワット発電中さん:2007/03/29(木) 03:33:41 ID:C2R09x44
とりあえず、>>1
9774ワット発電中さん:2007/03/29(木) 04:07:20 ID:SYgWlXwv
>>1
乙。(ま、どうでもいいスレだから)
10 ◆ALTERAHoho :2007/03/29(木) 10:06:03 ID:/bcYtyCp
>>7-9
私なんかアホなことしちゃいましたか?
11774ワット発電中さん:2007/03/29(木) 10:31:15 ID:dO2Cdgks
前スレのPICKIT2でPIC16F84Aを扱いたかった者です。
部材が手元にないんで、取り合えずブレッドボードで試してみますね。
ありがとでした。
12774ワット発電中さん:2007/03/29(木) 11:50:15 ID:uPX/vZI2
発振しなくなったりしてな
13774ワット発電中さん:2007/03/29(木) 12:08:40 ID:gxPqxFvY
683とかでクロック源を作っとくと便利だぞ
秒1命令用4Hzとあとは適当なのを余りピンで選択

足に直接時計水晶32kをありだ
14774ワット発電中さん:2007/03/29(木) 12:44:24 ID:wmaP7bON
> なにせ、秋葉原にはハーフピッチのコネクタの売っているところがない(と思う)。

千石でも売ってるがな。2.54の隣に。
博識なライターさんだこと。
頭の中はHC244か?JDMか。
15774ワット発電中さん:2007/03/29(木) 12:44:36 ID:q/61oS9v
前スレの1000をPICのアセンブラで書くとしたらどうなるの?
16774ワット発電中さん:2007/03/29(木) 14:27:27 ID:d3qGj8Ba
おい、PICを使った小基板でのでふぁくとすたんだーとてきな外部信号配置みたいなの
なにかありますか?
17774ワット発電中さん:2007/03/29(木) 17:15:03 ID:CblA6ncs
PICFUNの掲示板が久々に復活したと思ったら
早速荒らされてるよ。
アク禁にできないのかなぁ…
18774ワット発電中さん:2007/03/29(木) 18:29:19 ID:HvkmBErh
>15
goto $
19ケイキエンジニアリング:2007/03/29(木) 19:50:11 ID:3fVfNzLN
前スレで量産用プログラム書込み会社を探されていた<883:PIC使用人さん
DIPタイプであれば価格はご希望に沿うことが可能です。
一度ご連絡ください。http://kakeeng2007.web.fc2.com/
よろしくお願いします。
20774ワット発電中さん:2007/03/29(木) 20:15:34 ID:MkjuqSjc
そのURLじゃ騙しは無理だろ
21774ワット発電中さん:2007/03/30(金) 18:23:31 ID:yHWgzXGg
I2CD2ですが予想道り難航中です
電源周りはサクッとできたのですが、ターゲット3V辺りから動作が不安定
原因はプログラム時にシュミットトリガ受けになるというのを忘れて
作ってしまったからですけど orz
VHCTじゃワースト3.6Vあたりなので、1.9Vを目標に変更中
いちおうLCXの3V固定で受けて、VHCをターゲット依存とすれば2.5-5.5Vで
いけそうなんだけど、あと0.6V落としたいから低電圧用に専用回路を
別途切り替えてしまうか悩みどころ
22774ワット発電中さん:2007/03/31(土) 00:40:59 ID:8v1HDMlI
はいチックcがすごいことになってうおえp456t7ゆひじょ
23774ワット発電中さん:2007/04/01(日) 08:23:35 ID:3asovtvs
>>22
すごい事、というほどではない罠
プチ嬉しいけど
24774ワット発電中さん:2007/04/01(日) 12:11:41 ID:/AKG4dZu
>>22
日本語でおk
25774ワット発電中さん:2007/04/02(月) 12:23:29 ID:Nq5yzov3
ごだびんblog http://goda.blog3.fc2.com

なんか、事実誤認があるような....

> ちなみにPICマイコンはこのように値を変えて試すには結構大変です。(秋月で基板を買って試せるかもしれないけど。)
> そのようなときR8Cマイコンのようにオンチップデバッガ機能があるマイコンは、パルス幅の値を開発ツールのパソコン画面上からマイコンのメモリ変数を変更でき、その動作を実際に確認できます。
26774ワット発電中さん:2007/04/02(月) 14:09:38 ID:Nr9BTfvN
SIM使ってないんだよきっと
もしかするとSIMのSGの存在を知らないだけかも
27774ワット発電中さん:2007/04/02(月) 22:39:40 ID:LV0qDe3O
>>25
インサーキットデバッガを初めて使ったんじゃないか
最近ので書き換えられないやつを探すほうが面倒な気がする
っま648とか648とか648とか648とか探せばあるけどw
28774ワット発電中さん:2007/04/02(月) 23:21:25 ID:i+c0CH/4
PICでは使えないと、十把一絡げなのがごだびんクオリティ
29774ワット発電中さん:2007/04/03(火) 00:13:41 ID:O2nWY38O
PICの型番って意味深なのが多いよね

629 無肉

648 虫歯
819 俳句
877 バナナ
88  ババー
30774ワット発電中さん:2007/04/03(火) 00:22:22 ID:h8buLICX
>29
さすがに深読みしすぎでは・・・
31774ワット発電中さん:2007/04/04(水) 19:37:50 ID:CFYh5g2/
くだらないことは683やたらと言わない方が良いと思お。
32774ワット発電中さん:2007/04/05(木) 21:12:49 ID:wAz/NjWy
24H使ってる人いる?
33774ワット発電中さん:2007/04/05(木) 21:58:11 ID:p3sbcBRf
俺はPICを24時間肌身離さず使ってるぜ
なんて奴居るのかな
34774ワット発電中さん:2007/04/05(木) 22:04:52 ID:srUqv/50
腕時計作った奴くらいじゃね?
35774ワット発電中さん:2007/04/05(木) 22:06:39 ID:Y/jaJYBK
ページャー用
36774ワット発電中さん:2007/04/05(木) 22:27:50 ID:wAz/NjWy
>>33-34
おまえらおちょくってんじゃねーよ。
これだよ!これ!!!
http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=8186&mid=14&lang=en&pageId=75

早く使ってみたいんだけど、どこに売ってんの?
37774ワット発電中さん:2007/04/05(木) 22:49:44 ID:pB/Pi6qs
マルツパーツ館に1個だけあったような。。。
38774ワット発電中さん:2007/04/06(金) 01:30:33 ID:NMJXvv6e
CLOCK:40MHz
ROM:128KB(FLASH)
RAM:16KB(DATA)
って、CLOCK・ROMはもちろん、RAMも含めてPC-8001を超えそうな感じ・・・
PIC24ってインストラクションはまともなの?
39774ワット発電中さん:2007/04/06(金) 01:50:01 ID:3suVIpf9
いや8001なら8722で余裕で超えてるから
40774ワット発電中さん:2007/04/06(金) 07:25:54 ID:dmPE9J5j
>>37
ありがとう、マルツに聞いてみるよ。
4136,40:2007/04/06(金) 11:21:51 ID:0yR8Nr+e
RSでほぼ全種類売ってた。

MPLAB REAL ICE IN CIRCUIT EMULATOR が\25,507-となっているので
買おうと思ったが、一応メーカー型番AC244002を調べたら、
PERFORMANCE PAK とかってやつでオプション品だった。
もぅまぎらわしいなぁ。
42774ワット発電中さん:2007/04/06(金) 14:28:40 ID:ejU1/0xk
>38
PIC24がPC8001を越えてるって・・・・
カセットテープのインターフェイスなんかも内蔵してるって事?
43774ワット発電中さん:2007/04/06(金) 14:37:59 ID:UEcygsh1
>>38
マウスとかキーボードを刺すコネクターが付いているって事?
44774ワット発電中さん:2007/04/06(金) 14:47:50 ID:hrsahprL
>>42
カセットインターフェースが越える条件なのかw
おいらのPCは8001を越えてない
45774ワット発電中さん:2007/04/06(金) 15:01:20 ID:iliTz8rC
HIDデバイスはAVRと同様に殆ど直結でつなげられるんじゃね?
4636,40:2007/04/06(金) 15:03:01 ID:0yR8Nr+e
リムーバブルドライブを内蔵しているか?
って事ならUSBがドライブでUSBメモリがテープの代わりになるかな。
47774ワット発電中さん:2007/04/06(金) 20:12:05 ID:dmPE9J5j
スマソ、24にはUSB無かったかも。
48774ワット発電中さん:2007/04/06(金) 23:11:58 ID:XLdJpg0/
>>44
やろうと思えば、サッポロシティスタンダードだって出来るんじゃないのか?
49774ワット発電中さん:2007/04/07(土) 01:13:13 ID:nVMHDZEA
サウンドブラスターで出来るし
やってるひとは多い
50774ワット発電中さん:2007/04/07(土) 03:16:50 ID:X0ZaDoVf
A/D, D/A, GIO、でカセットインタフェース
UARTで PS/2

マジで8001超えるには、CRTCが....
51774ワット発電中さん:2007/04/08(日) 11:04:56 ID:pbgThwSF
イーサネット内蔵PICへの書き込みってどうやればいいの?
Writer509で書ける?
52774ワット発電中さん:2007/04/08(日) 14:43:18 ID:8xVXb1Kd
>51
> Writer509で書ける?
正式版でのPIC18への対応はまだじゃなかった?β版でなら書き込みできるかもしれない
けど、自分はまだ試してないから知らない。
53774ワット発電中さん:2007/04/08(日) 15:09:02 ID:OA0cyHgK
PICやる奴は、悪い事言わないから、ICD2を純正でも互換品でもいいから備えれ。
54774ワット発電中さん:2007/04/08(日) 15:35:12 ID:8xVXb1Kd
>53
趣味でやる分には無くても・・・と思いつつICD2 cloneは作ろうと思う。
55774ワット発電中さん:2007/04/08(日) 16:22:25 ID:qgZGdYhW
4000円で作れるものな。純正互換なら新しいPIC出てきても安心。
56774ワット発電中さん:2007/04/08(日) 16:32:56 ID:t9C2Cf0D
馬鹿なこと考えずにPICkit2買え
57774ワット発電中さん:2007/04/08(日) 16:37:04 ID:6RfJEJ+P
しかし・・歳がばれるスレだな(w
58774ワット発電中さん:2007/04/08(日) 20:10:33 ID:WPN9pYeG
http://solitonwave.co.jp/product/product.html
の、 Olimex製の
PIC-TINY-ICD2
って、ICD2互換度はどうなんでしょか?(ってヘンな質問)
59774ワット発電中さん:2007/04/08(日) 22:37:24 ID:pbgThwSF
ハーフマットのページに行ってみた
PIC18シリーズへの対応作業中だった。何ヶ月か待ってみようっと
俺はICDなんか要らないし
60774ワット発電中さん:2007/04/08(日) 23:32:03 ID:mPufNtUx
Writer509はソケット書き込みで使う分には十分。
18F2550も書き込んでみたけど特に問題なかった。

18Fは12Fや16Fみたいにデバイスによって書込みシーケンスが
コロコロ変わるようなことが少ないから、1機種書き込みができれば
ほとんどファームは完成と見てもよさそうな気がする。
あとはWindows側のソフトしだいじゃないかな。

>イーサネット内蔵PIC
っていうのはTQFPだからICSPになると思うけど、Writer509でICSPはビミョー。
61774ワット発電中さん:2007/04/09(月) 00:19:07 ID:UJk0pr5k
びみょーって流行ってるみたいだけど誰が最初に使い出したの?
62774ワット発電中さん:2007/04/09(月) 00:19:33 ID:fGAtX7uL
>>60
Writer509がICSPにはやや難があるという指摘は、以前にも見た気がしますが、
具体的にはどんな難があるんでしょう?

ソフトの問題ではなく、書き込み回路が12F509直結の簡易型だという部分だと
想像してはいますが・・・
63774ワット発電中さん:2007/04/09(月) 01:21:17 ID:AfDbEVOv
>>62
PICの書き込みはデバイスによってVddやVppのタイミングが結構細かくて、
VppとVddのどっちを先に立ち上げるとか、一方が立ち上がった後に何ms(us)以内に
もう一方が立ち上がらないといけないとかいうのがある。

ICSPの場合VddやMCLRラインにいろんな物が接続されてる。
特にコンデンサはタイミングを狂わす要因になりやすい。

ICSPをより確実にするには、VddやVppをONにするときは低い内部抵抗で電圧を供給し、
OFFにするときはGndに放電できるような回路を持ったプログラマが必要。

ただ、これはPIC12Fや16Fの内部OSCを持ったデバイスに起きやすい問題で、
それ以外の16Fや18FはVpp(MCLR)だけでも制御できる物が多いから場合によっては
うまくいくこともあるような…

ってWriter509のICSPのページにそんなことが書いてあるじゃん。
ttp://www.geocities.jp/orange_denshi/ICSP/ICSP.html
64774ワット発電中さん:2007/04/09(月) 02:58:05 ID:s2IAkPqi
>>58
Vppの可変が無い以外は同じカンジ。巷のシリアル接続ICD2クローンと一緒だから、自作できるなら作る方が安上がりだと思う。
65774ワット発電中さん:2007/04/09(月) 12:13:08 ID:g2fuCCWc
Vpp電圧次第ってことか
自作は調整の余地があるからまだマシなんだが
66774ワット発電中さん:2007/04/11(水) 20:26:35 ID:QpYeLzuN
じゃあ、Mini Mobile Pic Witerは?
67774ワット発電中さん:2007/04/12(木) 23:56:16 ID:GqLRaOJa
PICを用いて、PC用モニタに文字を出力する
ということをやってるサイトってありますでしょうか?
68774ワット発電中さん:2007/04/13(金) 00:36:35 ID:3pIBNl4H
ありますよ
69774ワット発電中さん:2007/04/13(金) 00:37:45 ID:+GsdS99j
>>68
紹介していただけないでしょうか・・・・
パチンコ液晶を再利用しようと考えていまして・・・
70774ワット発電中さん:2007/04/13(金) 00:43:27 ID:EZff5oNe
71774ワット発電中さん:2007/04/13(金) 00:47:34 ID:3xzfBJP9
パチンコ液晶サイズになるとメモリがぜんぜん足りないから
PICでとなるとあまり使い道がないんだよな
外部バスだと高くつく
72774ワット発電中さん:2007/04/13(金) 00:55:31 ID:GKmq5qA3
別に色数と解像度は適当に落とせばいいじゃん。
モノクロ32x24ドットとかに。
73774ワット発電中さん:2007/04/13(金) 01:34:09 ID:+GsdS99j
>>70
どうもです。
覗いてみます。

>>71
モノクロでもいいのでとりあえず作ってみて
使えそうな液晶ならばPLDなんかで外部のものの設計を・・・・
74774ワット発電中さん:2007/04/13(金) 11:17:42 ID:vhHHq9Xh
言い訳ばかりで実行しないウジ虫みたいな奴だな
75774ワット発電中さん:2007/04/13(金) 12:37:23 ID:fYQZ5p8J
そういうのを軽石みてぇなやつだといいます。
http://karuishi.servehttp.com
76774ワット発電中さん:2007/04/13(金) 12:40:46 ID:T2Ot22OR
PICだと難しいそうなんだけど
防犯用のタイムジェネレーターみたいのを作った人いるかな?
77774ワット発電中さん:2007/04/13(金) 16:18:26 ID:+3rfQktE
IC使って良いならわりと簡単
78今日始めた初心者:2007/04/15(日) 21:32:39 ID:UeUIIf/n
何時間も調べたのですが、すみませんギブアップです。
ご教授願います。
あるHPで紹介されているPIC16F88用のソースを
Cコンパイルすべく(←ヘンな用法?)
とりあえずテキストファイルで保存し、
mikroCをダウンロードして、
ファイルを開き、DEVICEでP16F88を選択するところまで進みました。
で、CLOCKの選択でわからなくなりました。
次はどうすればいいのでしょうか???
アドウィン社のPICライタ(書き込みソフト付)は購入済です。


79774ワット発電中さん:2007/04/15(日) 22:19:18 ID:rBwDziOw
>>78
>あるHPで紹介されているPIC16F88用のソースを
念のため聞きますが、それはmikroC用のソースなのですね?
80774ワット発電中さん:2007/04/15(日) 22:27:00 ID:rBwDziOw
>>78
つっか、そこまで困っているなら
「あるHP」なんてもったいぶらずに、ちゃんとURL示さないと、初心者にありがちな
「情報をもったいぶって少しずつ出す」為に「回答が回答にならない」罠に落ちるよ・
81774ワット発電中さん:2007/04/15(日) 22:28:56 ID:KXqEq8s3

FOSC : INTRC_RA6 = IO
WDTE : Disable
PWRTE: Disable
MCLRE: RA5 = IO internal pulled up
BODEN: Disable
LVP : RB3 = IO
CPD : not protect
WRT : protection off
DEBUG: Disable
CCPMX: CCP1 = RB3
CP : not protect
config2 value x3FFc
FDMEM:Disable
IESO :Disable
8278:2007/04/15(日) 22:44:43 ID:UeUIIf/n
>>80
ありがとうございます。
http://www8.plala.or.jp/InHisTime/
の中の、
周波数表示ユニットU(真空管ラジオ用)
のソースです。
mikroCにはこだわっていません。
PIC用Cコンパイラで(期間限定)無料という
理由だけです。
PICの勉強はしたいのですが、
とりあえず、上記ソースをPIC16F88に書き込むことを
目的としています。
よろしくお願いいたします。
83774ワット発電中さん:2007/04/15(日) 23:23:17 ID:rBwDziOw
>>78
そこのページに外部クロックとして16MHzを入れているので
クロックは16MHz、
EditProjectで□EXTCLK にチェック。
84774ワット発電中さん:2007/04/15(日) 23:23:21 ID:oGHS2MHW
コンパイルできたぞ
回路図からすると
HS_OSC
MCLR= OFF

じゃまいか
85774ワット発電中さん:2007/04/15(日) 23:36:33 ID:SKje7i4Y
まずC:\LcdMonitor2というフォルダを作って、
microCのメニュー Project > New Project... を実行。
ProjectName: LcdMonitor2
ProjectPath: C:\LcdMonitor2
Description: test
Device: P16F88
Clock: 016.000000
Device Flagsはデフォルトのまま。

microCのメニューFile > CloseでLcdMonitor2.cを閉じ、
C:\LcdMonitor2にダウンロードしたソースを上書きコピーして
Project > Build で出来上がり。だと思う。
8678:2007/04/15(日) 23:57:05 ID:UeUIIf/n
>>85 ご親切にありがとうございます!!感謝!!
早速やってみたところ、C:\LcdMonitor2フォルダ中に
ファイル名LcdMonitor2で拡張子が、asm,cp,dbg,hex,lst,mcl
の6ファイルと、
LcdMonitor2_callertable.txt というファイルが作成されました。
これでOKなのでしょうか?
87774ワット発電中さん:2007/04/16(月) 00:06:04 ID:tQ+t2CRb
>>84
PICは昔触ったキリなので、勘違いかもしれないんですが、
HS_OSCっていうのは、水晶モジュールじゃなくて、セラロックとか水晶発振子をつける場合であって、
この回路図は5VTTLの外部クロックを使ってるっぽいのでEXTCLKじゃないでしょか?
88774ワット発電中さん:2007/04/16(月) 00:16:03 ID:8uLSOAcx
あーそだ 勘違いしてた ごめん
89774ワット発電中さん:2007/04/16(月) 00:32:56 ID:tbAID/SM
Device Flagsはデフォルトのままじゃまずかった。
_CCP1_RB3
_LVP_OFF
_WDT_OFF
_MCLR_OFF
_EXTCLK
をチェック。ビルドして出来たHexを書き込めばOK。だと思う。
90774ワット発電中さん:2007/04/16(月) 04:26:32 ID:DzyuZZCV
MikroCってソース上にConfigの設定とか書けないんだ。
不便だなぁ。
91774ワット発電中さん:2007/04/16(月) 09:17:05 ID:ivmY9njC
>>90
無料のコンパイラで便利なのって何?
92774ワット発電中さん:2007/04/16(月) 11:45:20 ID:qY2zs1iJ
MikroBasicのほうがバグ少ないと言う話だ
93774ワット発電中さん:2007/04/16(月) 12:16:49 ID:4U4yiFYG
ライブラリはMikroCのほうが豊富じゃなかったか?
ちょっち前のMikroBASICなんてなーんもできんかったぞ
94774ワット発電中さん:2007/04/16(月) 15:38:34 ID:Ol6Ri7Lc
mikroBASICのほうがバグは少ないし使いやすいよ

mikroCはバグだらけでバグ回避で疲れた
ライブラリは多いけどまともに使えるまでにいくつバグ発生の原因を覚えないといけないことやら

そもそも12Fや16FはC言語向きの構造じゃ無いし
95774ワット発電中さん:2007/04/16(月) 17:03:50 ID:q9dpvdgF
>>91
Hitech PIC C Lite だな。かなり便利だ
9678:2007/04/16(月) 20:35:58 ID:GOFo8Rho
>>89
ありがとうございます。
やってみたんですが、
フォルダ内にあるファイルは、拡張子が、
ppc
cp
mcl

の4ファイルだけです。。。
97774ワット発電中さん:2007/04/16(月) 20:59:22 ID:qY2zs1iJ
open するのは デフォの *.c じゃなくて project file *.ppcだよ
9878:2007/04/16(月) 22:05:03 ID:GOFo8Rho
>>97
ありがとうございます。
すみません。もう少しお教え願います。
*.ppcをオープンするタイミングがよくわかりません。
はじめは*.cファイルしかないですよね。
*.cファイルをopenし、
以下 >>85 >>89 さんの手順・設定に従って
Project>New Project と進めていくと、
openするものがない???

・・・きっとウスラバカな質問なんでしょうが、
よろしくお願いいたします。
99774ワット発電中さん:2007/04/16(月) 22:40:57 ID:4U4yiFYG
発売元不明の謎のPICライター「ICSPプローブ」
回路がJDMそのもので色々と不都合も出たので、一時市場から姿を消したのは知ってたが、
V2になって戻ってきたか( ゚д゚)
18Fにも対応した、となってるが、どこを改良したんだろう?

http://www.eleki-jack.com/2007/04/pic.html
100774ワット発電中さん:2007/04/16(月) 22:48:05 ID:VpCTmwK7
>99
> 18Fにも対応した、となってるが、どこを改良したんだろう?
もともとJDMは18Fにも書き込めたけど、動作検証をしてなかった。
18Fうんぬんに関しては動作検証をしただけでしょう。

> オリジナルJDMアダプタで問題だった電源回路の不安定化に対して
> 対策を行ったバージョンアップ版です。
問題はこっちですね。誰か情報plz
101774ワット発電中さん:2007/04/16(月) 23:18:09 ID:tbAID/SM
>>98
もう一回フォルダ作るところからやってみ
>>86 ではhexできたんでしょ
102774ワット発電中さん:2007/04/16(月) 23:25:15 ID:qY2zs1iJ
>>98
ファイルの種類で▼押す
すると ppcモ開けるようになる

これでビルドすればhexは生成される
*.c を開けてビルドはできるようにみえるが対応するファイルはできていない これ非常に勘違いしやすい
103774ワット発電中さん:2007/04/16(月) 23:28:49 ID:qY2zs1iJ
あ よく読んだら 開けないではなくてproject file がつくれてないのね

ちょいまち
104774ワット発電中さん:2007/04/16(月) 23:37:13 ID:qY2zs1iJ
help の ビルディング アプリケーションのとこにかいてあるとおりだけど・・・・



よんだ?
105774ワット発電中さん:2007/04/17(火) 00:03:56 ID:2M4hu38A
ダウンロードしたファイルを hoge.c とする。

mikroC立ち上げたら
project / closeproject (closeできない場合は不要)

project / newproject
projectname = pro(なんでもいいが、hoge以外の名前)
projectpath = hoge.cのあるパス
その他、クロックとかは上のレスとか見て合わせる
左側のprojectsummlyタブを開く
Cfile 右クリック
remove from project =pro.cを選択。remove selected/OK
エディタのpro タブを閉じる。
Cfile 右クリック
add to project = hoge.c
Cfileの左側が+になっているので、ここをクリックして展開して
hoge.cをダブルクリックして開く。
project build

かなぁ?

106774ワット発電中さん:2007/04/17(火) 11:27:02 ID:xvqysme9
2輪のモーターをジャイロセンサで姿勢制御させながら走行させたいんですが
参考になる文献とかサイトとかないでしょうか?
いろいろ探してみたんですけど、PICとジャイロの組み合わせっていう情報を
見つけられませんでした・・・ 初心者には無謀な挑戦なんすかね?
107774ワット発電中さん:2007/04/17(火) 12:02:21 ID:5zZT+qpp
軽石です。

> 初心者には無謀な挑戦なんすかね?

無謀です。
108774ワット発電中さん:2007/04/17(火) 12:31:56 ID:CKTp3rqs
デカイジャイロを乗せて倒れにくくすればおk
いけるよ
109774ワット発電中さん:2007/04/17(火) 13:25:52 ID:xvqysme9
どもです。お勧めのデカジャイロがあったら品番を教えてくださいな。
それと、IPCにジャイロ繋げてゴニョゴニョしてるような参考文献やサイトってないでしょうか?

http://www.amazon.co.jp/gp/product/product-description/478983445X/ref=dp_proddesc_0/250-4572595-3070645?ie=UTF8&n=465392&s=books
PICマイコンの基礎とセンサ活用入門

この手のセンサ関連本を立ち読みしてみたんですけど、ジャイロには言及してなかったり
原理の説明だけでどうやって実装すればいいのか分からなかったりで、、、
PICとのインテグレーションがあればありがたいんですが、他のマイコンの本やサイトでも
参考になりそうなところがあれば教えてください。

よろしくお願いします
110774ワット発電中さん:2007/04/17(火) 14:14:27 ID:T7FVaIUb
本体に影響するほどのジャイロのことだから、設計図を晒さないと
お勧めも何もねーべ
勘違いしているようだが、センサじゃないぞ
111774ワット発電中さん:2007/04/17(火) 16:00:02 ID:AiJxIqcY
オーディオクラフト工房の周波数カウンターを作ってみた。
しかし動作しなかった。回路の見直しもしたが間違ってない。
後はプログラムしか無いと思うのだけど管理人にメールを
2回も出したけど返信が無い。解る人教えて・・・!
http://nonchansoft3.at.infoseek.co.jp/audio/fcount1.htm
112774ワット発電中さん:2007/04/17(火) 16:06:33 ID:ED1QLGd7
どう動かないの?
数字が表示されないの?
デタラメな数字が表示されるの?
113774ワット発電中さん:2007/04/17(火) 16:10:28 ID:0uOJF4Dn
2月ごろ作ったうちのカウンタは動いているので
まずブツが間違っている
114774ワット発電中さん:2007/04/17(火) 16:11:01 ID:InlLt2Nc
>111
おまえにゃムリだ。

ということは111を見れば判る。

その回路の肝はHCU04だ。
115774ワット発電中さん:2007/04/17(火) 16:17:14 ID:AiJxIqcY
7セグ表示しないです。回路は何回も見直しました。
部品も同等品の物を使ってます。プログラムはHPに
あったのを秋月のPICプログラマーver4で書き込みました。
コンフィング設定はそのままだったのですがココが原因かな?
PICノイズが出てるので動作はしてるようですが・・・・!
116774ワット発電中さん:2007/04/17(火) 16:23:44 ID:AiJxIqcY
追記!テスト段階なので分周回路は付けて無い。
付けないと表示すらしないのだろうか?
>>114 見捨てないで・・・泣
117774ワット発電中さん:2007/04/17(火) 16:31:20 ID:v4LuIAVP
>116
情報の小出しイクナイ!
回路は間違ってないという根拠は?電源はちゃんと出てる?クロックは発振してるか?
パスコン入れた?PICを使っておきながら高々600行のソースのデバックも自力じゃ
出来ないヤシの目視なんて当てにならないよ。
118774ワット発電中さん:2007/04/17(火) 16:50:09 ID:lz2Qt8kh
先ずは切り分け

簡単なテストプログラム作って動作確認
119774ワット発電中さん:2007/04/17(火) 17:04:53 ID:xvqysme9
ジャイロはセンサじゃないのか!?ジャイロといっても色々あるって事なのかな
レートジャイロを想定してたんだけど・・・
お話にならないほど何にも分かってない段階で何聞いても無駄って事だよな、修行して出直すわ ノシ
120774ワット発電中さん:2007/04/17(火) 17:23:25 ID:nOb+penH
この板でジャイロと言うと圧電型のジャイロセンサがデフォだ。
PICに直に繋ぐのはムリだ。Opアンプ使え。
dsPICで頑張ればどうにでもなるだろ。

ラジコン屋なんかが言う○○ジャイロはこの板の十人では判らん。
121774ワット発電中さん:2007/04/17(火) 17:49:16 ID:xvqysme9
にゃるほど、了解です。
ほのかに分かってきた気がする。アリガトン
122774ワット発電中さん:2007/04/17(火) 18:11:57 ID:ED1QLGd7
>>116 分周回路が付いてないなら、
そんな速い周波数にPICのカウンタは追従出来ないさ

まず、PICが動いているかどうか、発振回路でも作って
カウンタ入力に入れてみたらどう?
123774ワット発電中さん:2007/04/17(火) 18:55:48 ID:6J11For0
小出し質問ばかりのスレ。

これぞPICクオリティw
124774ワット発電中さん:2007/04/17(火) 19:12:20 ID:v4LuIAVP
>123
それでもレスがつくのがこのスレのいいところ。
125774ワット発電中さん:2007/04/17(火) 20:44:16 ID:YGbW/7cp
>>115
>>111 のページに行って、Ctrl+F で

 外部入力の発振に対応するためにCONFIGの設定が必要です。

の文字列を検索するんだ!
126774ワット発電中さん:2007/04/17(火) 20:47:17 ID:6J11For0
この程度でメール送られる管理人も大変だな
127774ワット発電中さん:2007/04/17(火) 21:02:40 ID:JrVtGu/1
125>> 情報有難う!早速やってみたが設定してたみたいだぜ!
残念だ!又情報頼むぜ!556
128774ワット発電中さん:2007/04/17(火) 21:10:21 ID:pO0p7dad
>コンフィング設定はそのままだったのですがココが原因かな?
小出しどころか嘘までつかれちゃレスする気なくなります
129774ワット発電中さん:2007/04/17(火) 21:22:14 ID:JrVtGu/1
>>128 それは違うぜ! コンフィング設定って言っても
ASMの設定ではなくライターソフトでのコンフィング設定
だぜ!俺は嘘はつかねぇ!説明不足だったな!すまねぇ!
130774ワット発電中さん:2007/04/17(火) 21:50:14 ID:YGbW/7cp
>>115
>部品も同等品の物を使ってます。
7セグメントのコモン(アノード・カソード)の種類は合ってるのか?
131774ワット発電中さん:2007/04/17(火) 22:51:26 ID:B11eNk+A
うんこ
132774ワット発電中さん:2007/04/18(水) 00:33:47 ID:RAoNfRyi
>>129
入力端子をHC138のY0〜Y5あたりにつないだらなんか出るかね?
133774ワット発電中さん:2007/04/18(水) 03:49:21 ID:Q6uqIsYI
16F88の6〜12pinに電圧が出てませんでした。
74HC138、トランジスタードライバーとも動作してるようです。
20MHZOSCも発振は確認しました。32,768khzは見確認(新品を使用)
各ICへの供給電圧も5Vでした。良くあるGND忘れも無いです。
7セグLEDへのCOMへの電圧は出ているようです。16F88を交換しても
同じでした。プログラムでしょうか?
134774ワット発電中さん:2007/04/18(水) 07:52:26 ID:E8KiHcRd
>12pinに電圧が出てませんでした
これだろ
つくりが悪いんだよ
135774ワット発電中さん:2007/04/18(水) 07:59:29 ID:AWARh31K
>>133
小出しにするなって、
プログラムとか書き込み機とか書き込みソフトの情報を一気に出せ。
136774ワット発電中さん:2007/04/18(水) 08:39:30 ID:XmqHxM68
最低でも、対象、測定方法、結果を個別に書かないと
まともなレスを得られない
137774ワット発電中さん:2007/04/18(水) 10:25:49 ID:69EcgLmX
config っぽいな

LEDピコピコするようなテストプログラム作って動作確認

ちゃなみに config1 config2 の数値はどうなってる?
138774ワット発電中さん:2007/04/18(水) 10:53:51 ID:E58V+E5E
>>135 >>136 解りました。詳しく説明します。
まず元となるHPです。http://nonchansoft3.at.infoseek.co.jp/audio/fcount1.htm
症状は7セグLEDに何も表示されない。
原因を探してみる。
16F88の6〜12pinに電圧が出てませんでした。
74HC138、トランジスタードライバーとも動作してるようです。
20MHZOSCも発振は確認しました。32,768khzは見確認(新品を使用)
各ICへの供給電圧も5Vでした。良くあるGND忘れも無いです。
7セグLEDへのCOMへの電圧は出ているようです。16F88を交換しても
同じでした。
プログラムの書き込みは秋月のPICプログラマver4で書き込みました。
書き込みソフトは秋月のライター付属ソフトです。
その時に右側に出てくるconfig欄は変更はしてません。
プログラムはHPのを、そのまま書き込みました。
測定方法とはどのようなのか解りませんが取りあえず分周回路を
付けてないのでSGで450~600KHZを入力してみましたが変化なしです。
AsはMPLAB IDE v7.50を使用。
139774ワット発電中さん:2007/04/18(水) 11:03:06 ID:E58V+E5E
>>137 asmの方は__CONFIG _CONFIG1, _CP_OFF & _WDT_OFF & _PWRTE_ON & _LVP_OFF & _MCLR_OFF & _EXTCLK
のですがconfig1、2はデフォルトのままです。従って
CONFIG1は FOSC EXTRC_RA6=CLKO WDTE Enable MCLRE RA5=MCLR
BODEN Enable LVP RB3=PGM CPD Not_Protect WRT Protection_Off
DEBUG Disable CCPMX CCP1=RB0 CP Not_Protect
CONFIG 2は FCMEM Enable IESO Enableとなってます。
140774ワット発電中さん:2007/04/18(水) 11:07:00 ID:EKosYYoX
>16F88の6〜12pinに電圧が出てませんでした
これはどういう意味なの?
1、 0Vが出てるのに、LEDが点灯しないという意味?
2、それともフローティングしてる?

141774ワット発電中さん:2007/04/18(水) 11:09:38 ID:EKosYYoX
>>139
WDTE Enable  ってのが悪いように思うが?
ソースでは WDT使ってないのだろ?
142774ワット発電中さん:2007/04/18(水) 11:11:35 ID:7njYMnRv
136指摘のの計測方法と結果を
書かないから追加で質問がでまくる
143774ワット発電中さん:2007/04/18(水) 11:11:45 ID:E58V+E5E
あ、ず〜と上げてたので下げます。
>>140 1番かな?
144774ワット発電中さん:2007/04/18(水) 11:14:26 ID:E58V+E5E
>>142 スマソ orz
145774ワット発電中さん:2007/04/18(水) 11:16:53 ID:EKosYYoX
>>143
そうすると、今度は1,17,18 ピンがパタパタしてるかどうか確認しろとなる。
たぶん WDTを使ってないプログラムなのに WDTをイネーブルしてるのが原因だろ

指定された設定通りやらなけりゃ、そりゃ動かん
146774ワット発電中さん:2007/04/18(水) 11:18:32 ID:EKosYYoX
で、1,17,18 ピンがパタパタしてるのに、LEDが点灯しないなら
トランジスタ、お前間違ええてつないでるだろ!となる。

で、そんな基本的な所も押えないで、ソフトのせいにしやがってとなる
147774ワット発電中さん:2007/04/18(水) 11:30:32 ID:ydVs6wQ1
>__CONFIG _CONFIG1, _CP_OFF & _WDT_OFF & _PWRTE_ON & _LVP_OFF & _MCLR_OFF & _EXTCLK




>CONFIG1は 
>FOSC EXTRC_RA6=CLKO
>WDTE Enable
>MCLRE RA5=MCLR
>BODEN Enable
>LVP RB3=PGM
>CPD Not_Protect
>WRT Protection_Off
>DEBUG Disable
>CCPMX CCP1=RB0
>CP Not_Protect

>CONFIG2
>FCMEM Enable
>IESO Enable


これでいけないか
WDTE Enable >disable
LVP RB3=PGM >RB3=IO 回路図ではIOとして使用してるからこれにしないとだめ
FCMEM Enable >disable
IESO Enable >disable
148774ワット発電中さん:2007/04/18(水) 11:53:24 ID:EKosYYoX
しかし、秋月のライターで 普通に書けば、 CONFIGはその通り書かれる筈なんだけどな
まだ、何か隠してるな
149774ワット発電中さん:2007/04/18(水) 12:01:58 ID:CCKjkZ7C
すいません!HEXを読み込ませてたらconfig設定は
変わってました。変わった所は FOSC EXTCLK_RA6=I/O
WDTE Disable LVP RB3=I/O ここは変わってなくってFCMEM Enable >disable
IESO Enable >disable としましたが変化なしです。もう少し調べてみます。
150774ワット発電中さん:2007/04/18(水) 12:08:54 ID:EKosYYoX
>>149 書いたPIC挿して、 READってボタンで読んでごらんよ

それで >>145 の結果はどうなんだ?
151774ワット発電中さん:2007/04/18(水) 12:37:58 ID:B6S3EzAg
T1OSCENは?
152774ワット発電中さん:2007/04/18(水) 12:51:39 ID:AAdt4IFq
きせい
153774ワット発電中さん:2007/04/18(水) 14:19:03 ID:kQHkv0Sj
電圧が出ないってどういう意味?
普通はフロート状態だと思うんだが.
154774ワット発電中さん:2007/04/18(水) 16:30:34 ID:jEuvaQsp
ときに>>149にアドバイスしている住民の皆は実のところ回路と
プログラムのどっちが原因だと思ってるの?
俺は95:4:1ぐらいの確率で 回路:その他(configとか):プログラム
だと思うんだが。

ソレはさておき、まずはPICがきちんとリセットされてプログラムの
実行に写っているかの確認からでしょう。

電源・GNDの配線とちゃんと電圧が出てるかは確認済み。
>>133 (ただしパスコン入れたかと聞いたのに答えてない。)
クロックも供給している。
>>133 (ただし外部発振なのでPICが動いてる保障にはならない。)
リセット回路は_MCLR_OFFで省略。(ただし、ライタ周りの設定で
しくじっている可能性もありそう。)

とすれば次はポートを1Hzぐらいの周期で信号反転させる簡単な
プログラムを書いてみて、テスタを当てて確認とかじゃないかな。

同じ回路図から起こした別の基板に同じプログラムを書き込んだ
PICをさしたとしても回路の実装によっては動かなかったりすること
はよくある。そう考えるとプログラム単体で、あるいは回路単体で
正しい/間違っているという議論をすること自体がナンセンスだと
も思う。回路・プログラム共にコピーだとしても、例えコピー元が
完璧な設計でなかったとしても、動かない責任はコピーしたやつ
にある・・・んじゃないかなぁ・・・


155774ワット発電中さん:2007/04/18(水) 16:47:12 ID:EKosYYoX
原因なんて、このレベルで書かれた内容からは突き止められませんよ。
質問にも答えてくれないんじゃね。

config は普通に書けば一緒に書かれる筈なので、
そもそもプログラムをPICに書き込んでないんじゃないかとさえ思ってる
156774ワット発電中さん:2007/04/18(水) 16:52:30 ID:EKosYYoX
なお、PICが動いているかどうかは、わざわざポート反転のコードを入れなくても
PA0〜PA2 を見れば判る。

オシロを持っていないならLEDでも付けてみればいい
157774ワット発電中さん:2007/04/18(水) 17:28:20 ID:ht4DF3mv
ポート反転と言ってるやつはそのまま拡張して7セグとか動作確認させたいんだろう
158774ワット発電中さん:2007/04/18(水) 17:37:25 ID:jEuvaQsp
よくみたらRA3はあいてるのね。ここにLED付けてみるほうが早そう。
159774ワット発電中さん:2007/04/18(水) 17:41:01 ID:jEuvaQsp
>>155
>そもそもプログラムをPICに書き込んでないんじゃないかとさえ思ってる
さすがにそれはねぇー・・・とは言えないかも。

160774ワット発電中さん:2007/04/18(水) 19:32:44 ID:mDEMGIBZ
>>146 返信が遅くなってスマソ!1,17,18 ピンがパタパタはしてない。
テスターで計ったら2V〜の電圧が出てる。トランジスター回路は
正常に動作してた。色々やってみたけど解らず挫折しました。OTZ
161774ワット発電中さん:2007/04/18(水) 20:13:23 ID:EKosYYoX
>>160
まて、7セグのLEDは完全消灯で
テスターで2Vの電圧が出てたのは 1,17,18 ピンなんだな?
単純な配線ミスか部品選択ミスの可能性が大おおくなってきたぞ
確認の為に、LEDに1Kくらいの抵抗を直列につないで、
1、PIC 1ピンとGND で点灯するか
2、PIC 1ピンと+5V で点灯するか
3、74HC138 15ピンとGNDで暗く点灯するか
4、PIC 6ピンとGND で点灯するか
5、PIC 6ピンと+5V で点灯するか

と順に調べてみて。 LEDの±の繋ぎ方が判らないなら、反対にしてみて。

162774ワット発電中さん:2007/04/18(水) 20:14:45 ID:EKosYYoX
あと、トランジスタが正常に動いていたというのは、どういうふうに確認して正常と思ったのかも書いて
163774ワット発電中さん:2007/04/18(水) 20:19:55 ID:EKosYYoX
それと、持ってるテスターには Hzのレンジはないかな?

Hzレンジがあるなら、>>161の試験は各ピンをヘルツレンジで測ってくれれば済むのだけど
164774ワット発電中さん:2007/04/18(水) 20:26:52 ID:EKosYYoX
もしLEDもない。 テスターにHzレンジもないというなら、
イヤホンに抵抗直列につないでブーと音が出るかどうかで確認してくれてもいいよ。
165774ワット発電中さん:2007/04/18(水) 20:34:47 ID:4JOzQrNK
質問なんですけど、pic16f88のrb0ピンと、赤外線受信モジュールのout端子を直結して赤外線コードを受信したいと思っています。
その際 rb0外部割込みの立下がりで割り込みかけたいのですが、割り込みがかかりません。どうもTTLレベルLレベルになってないみたいなのです。(GNDにすると割り込みかかるので)
直結ではなく回路的になにか工夫しなければいけないのでしょか?
166774ワット発電中さん:2007/04/18(水) 20:41:00 ID:EKosYYoX
>>165
俺が買ってるのは、Lレベルにならないという事はないけどな。
何か勘違いがあると思うよ。
その赤外リモコン受光素子に電源を正しくつないでないとか
プルアップしないといけないタイプだとか、
167774ワット発電中さん:2007/04/18(水) 20:46:46 ID:lKoXvzoY
>>165
受光部がTTL出力なのか、オープンドレインとかじゃないか仕様を調べる
問題なければ実際H/Lで何Vとなってるのか調べる
その結果で色々と手がある
168774ワット発電中さん:2007/04/18(水) 20:51:06 ID:4JOzQrNK
>>165
秋月で購入したCRVP1736、150円の奴です。。H83664タイニーなどでは直結でうまく割り込みかかるんですが。
169774ワット発電中さん:2007/04/18(水) 20:55:57 ID:EKosYYoX
>>168
じゃあ PIC16F88の設定が出力になってるとか WeakPull-Upの設定とか
170774ワット発電中さん:2007/04/18(水) 21:07:13 ID:4JOzQrNK
169>>
回答ありがとうございます。WeakPull-Upってわからないのですが。ちょっと検索したらそのような気もします。その場合は、プログラム的に対処できるという事でしょうか?
171774ワット発電中さん:2007/04/18(水) 21:14:21 ID:HWMsIil3
>>149
取り合えず、LED周辺の動作確認をしてもらいたいのだが、

1.HC138 をソケットから抜く。
2.PIC16F88 をソケットから抜く。
3.HC138 のソケットの10番ピンとGND間をワイヤーで接続
4.PIC16F88 のソケットの6〜12番ピンのどれかとGND間をワイヤーで接続
5.1桁目の7セグメントのどこかが光る筈

確認可能?
172774ワット発電中さん:2007/04/18(水) 21:16:43 ID:9Pf5+Bpr
OPTION_REG
RBPU と INTEDG 
173774ワット発電中さん:2007/04/18(水) 21:28:57 ID:4JOzQrNK
172>>169>>さん
ありがとうございます。ちょと試してみてみます。それにしてもPICって素直に動いてくれない物なのですね。リセット回路とか作らないとうまく立ち上がらない等。
174774ワット発電中さん:2007/04/18(水) 21:33:38 ID:9Pf5+Bpr
16F88 は内部リセットに設定できるよ
CONFIG のとこ
秋のライターだったらMCRLE RA5=IOにする
175774ワット発電中さん:2007/04/18(水) 21:54:03 ID:I6xKqQNr
>>161-171 HC138の10番pinをGnd 16F88の8番pinをvddに接続
したら7セグLEDの1部が点灯しました。共にICは外した状態です。
LEDは接続間違いは無さそうです。
176774ワット発電中さん:2007/04/18(水) 22:04:26 ID:EKosYYoX
>>175
そう。 LEDとトランジスタは大丈夫なんだね。

>>160で2Vの電圧が出てるという事で 
もし入力ポートになっているなら、テスターなら0Vになるだろうから
ダイナミックスキャンしようと出力がパタパタ動いてるようだ。

次は、Y0端子がパタパタ動いてるかどうか確認して欲しい。
イヤホンでもスピーカーでもつないで音が出れば動いている。

出てないなら、HC138の4,5,6ピンの処理が間違えているのだろう。

177774ワット発電中さん:2007/04/18(水) 22:10:37 ID:lKoXvzoY
それで点くならベース電流で動いてる
カソードコモンで組んでんじゃねーかよw
178774ワット発電中さん:2007/04/18(水) 22:13:41 ID:EKosYYoX
あ、ホントだ。 GND-GNDで点灯する筈なのに
GND-5Vで点灯したのか!

トランジスタがダイオードとして動いて、点いた訳か?
179774ワット発電中さん:2007/04/18(水) 22:19:51 ID:EKosYYoX
しかし、だったら
>LEDは接続間違いは無さそうです。
って結論はおかしいだろ! 書き間違いか? 
書き間違えてないなら、結論は自分で下すなと言いたいぞ。
180774ワット発電中さん:2007/04/18(水) 22:25:47 ID:SnfcRUo/
接続はあってる
でもパーツが間違ってるってことか
181774ワット発電中さん:2007/04/18(水) 22:31:40 ID:EKosYYoX
3択だな。
1、LEDをカソードコモンに変更するか
2、アノードコモンのままトランジスタを 2SCタイプに変更して PICの出力論理を反転するか
3、あきらめるか
182774ワット発電中さん:2007/04/18(水) 22:34:50 ID:I6xKqQNr
いや!アノードコモンだから COM側はGNDになるはず!
183774ワット発電中さん:2007/04/18(水) 22:48:40 ID:EKosYYoX
>>182
いいか、

| アノード LEDの+側


|  カソード LEDの-側

 アノード側(+側)を束ねたものをアノードコモンって呼ぶんだよ。

だいたい、カソード(-側) を束ねているなら トランジスタに2SB使ってるのが変だろ?
184774ワット発電中さん:2007/04/18(水) 23:02:08 ID:SnfcRUo/
同等品ってのが今回の釣りのキモだったわけか
185171:2007/04/18(水) 23:20:01 ID:+75+uozX
>>175
7セグメントLEDの種類(カソードコモン/アノードコモン)が違っているので、
対処方法は
1.指定どおり、アノードコモンの7セグLEDを買ってきて交換
2.LED直前(a-g,COM)に抵抗内蔵トランジスタ(通称デジトラ)を入れて論理反転
3.以下のソースリスト修正(a-gの論理反転)を施し、2SB641の
   エミッタ → +5V コレクタ → COM を
   エミッタ → COM コレクタ → GND に変更。(エミッタフォロア)

ソース(変更後)
suji_table1
;-----------
retlw 3fh ;0
retlw 06h ;1
retlw 5bh ;2
retlw 4fh ;3
retlw 66h ;4
retlw 6dh ;5
retlw 7dh ;6
retlw 27h ;7
retlw 7fh ;8
retlw 6fh ;9
retlw 77h ;a
retlw 73h ;b
retlw 7fh ;c
retlw 7fh ;d
retlw 7fh ;e
retlw 00h ;f(space)

なお、結果には責任持ちまへんのであしからず。
186774ワット発電中さん:2007/04/18(水) 23:30:39 ID:I6xKqQNr
ちょっと待って!マジかよ!店頭でアノードコモンって書いてたから
安心してたんだけどジャンク品で200円で買った。だまされたかも!
187774ワット発電中さん:2007/04/18(水) 23:36:29 ID:9Pf5+Bpr
店もだまされたのかも
188774ワット発電中さん:2007/04/18(水) 23:40:26 ID:SnfcRUo/
横に印刷されたIDにAかKが9割りがた含まれるので、店も客も
データーシートがなかろうがまず間違えないものなんだがな
189774ワット発電中さん:2007/04/18(水) 23:44:48 ID:jEuvaQsp
ま、こんなLEDもあるぐらいだからね。
ttp://blog.zaq.ne.jp/igarage/article/701/
190774ワット発電中さん:2007/04/18(水) 23:50:01 ID:I6xKqQNr
今7セグLEDを10KのRをはさんで直接点灯してみた。
結果はCOM側はGNDになってた。と言う事は間違いなくカソードコモン?
191774ワット発電中さん:2007/04/19(木) 00:14:20 ID:3v5LnxTH
>>190
ああ、100%なw
192774ワット発電中さん:2007/04/19(木) 00:24:49 ID:GmaRJrmn
今 カソードコモン(アノードコモンと思ってた)しか
無いので試しにCOM側と入れ替えてみたら点灯した。
もちろん数字にはならないが点灯確認は出来た。アノードコモンを
買ってテストしてみます。色々有難う御座いました。
まさか7セグLEDが原因だったとは夢にも思わなかった。
又結果を報告します。コメントくれた皆に感謝っす!
193106:2007/04/19(木) 17:33:26 ID:fjT41p9M
申し訳ないがもう一つ質問させてもらってよい?

http://search.murata.co.jp/Ceramy/CatalogAction.do?sHinnm=ENC-03R&sNHinnm=ENC-03R&sNhin_key=ENC-03R&sLang=ja&sParam=enc-03r
このENC-03Rの電圧を増幅してやって、A/Dポート付きのPICにぶち込みたいんだけど、可能かな?
可能ならどのPICを使うのがお勧め? どの程度の分解能が必要になるかオイラにも
よくわからないのでアレなんですが・・・
194774ワット発電中さん:2007/04/19(木) 18:27:41 ID:kje+7B8X
>193
可能でしょう。どの程度の分解能が必要なのかは知りませんが。
12/16Fのなかから選ぶなら代表的なのは以下のでしょうか。
必要なI/Oの数から決めてください。
12F675 8pin
16F88 18pin
16F876 28pin
16F877 40pin
195774ワット発電中さん:2007/04/19(木) 19:00:11 ID:6ezQy7aL
>>193
要件が固まってないところからカットアンドトライですすめる気とみるが、
それなら倒れないプログラムと駆動系を作ってからセンサを決定したほうがよい
そうすればプログラムが完成するころには、入力として何が必要かはっきりしてる
倒れないための情報量にそのセンサ+PICが足りてなければ、製作は泥沼決定となるしな
196106:2007/04/19(木) 22:24:05 ID:go0NDwLY
>>194
入力はENC-03R系のセンサ x 1、モーターがどんだけ動いたか監視するのに x 1
出力はモータを動かすパルスを出すのに x 1、
2輪を別々のモータで制御するとしても入力 x 3 、出力 x 2 ぐらいかな。
って事は12F675でまかなえるかな〜。使用を確認させてもらいます。
ありがとでした。

>>195
ご名答です。手探り状態なもんで・・・
傾き a に対してある一定量 b だけモータを駆動させるっていうプログラムを組んで
一先ず静止状態で立っていられるように a=xb の x を決定すれば何とかならないかな〜
って考えてる程度で。。。

高さ15センチぐらいのセグウェイもどきな機構を考えてます。
197774ワット発電中さん:2007/04/19(木) 22:33:26 ID:kje+7B8X
>196
内部クロックを使えば入力×3、出力×2がまかなえますね。
ワンランク上の12F683なら1chだけだけどPWMモジュールが
ついてます。モータ制御するなら参考までに。
198106:2007/04/19(木) 23:56:51 ID:go0NDwLY
そうか、PWMが使えた方がいいのかも。使ったことないけど
それに普通のモーターを使うとなるとHブリッジとかになって、一つのモーターに
出力 x 4。。。 後閑さんのサイトでは16C73Aを使ってるようですが・・・

すいません。各種PICの簡単機能比較リストなんて、都合のいいものないですかね?
ないですね、はいスミマセン、コツコツ調べます。
199774ワット発電中さん:2007/04/20(金) 00:14:50 ID:S9qSeH/l
J○_○さんに薦められたPIC初心者掲示板を見ました。
だいぶ荒れていて初心者向きではない印象でした。
とても質問すべき場所では無く、廃虚になっていると感じます。

http://elm-chan.org/bbt/?lang=ja&show=1620
こんな記事も見つけました。
こうした皮肉を込めた悪意の悪口を他人様の掲示板に
平然公然と書くこの投稿者の根性は並でないと思います。
200774ワット発電中さん:2007/04/20(金) 00:35:33 ID:BzvhP3xc
>>198
おまいはmicrochipsに行ったことないのかw
201774ワット発電中さん:2007/04/20(金) 01:11:38 ID:ApAPV/or
>198
ある意味において簡単比較リスト。手に入らないものは検討しても仕方ないので。
ttp://akizukidenshi.com/catalog/items2.php?c=picflash&s=name&p=1&r=0

正直自分は8pin/18pin/40pinからそれぞれ12F683/16F88/16F877Aぐらいしか
使わないかも。28pinはどれを買っても16F877Aよりも安くならないのでほとんど
使いません。

・・・というか、自分はほとんど12F683と16F88で事足りてしまうものしか作れない。
202774ワット発電中さん:2007/04/20(金) 01:15:41 ID:zQed4ZUP
AVRならPWMいくつもついてるよ……とスレ違いな事言ってみる
203774ワット発電中さん:2007/04/20(金) 01:43:43 ID:BzvhP3xc
いや多ピンでよければ1000円以下のdsPIC33FJ64GP706に
キャプチャ付きPWMx8あるし選択肢としてはどうかと
204774ワット発電中さん:2007/04/20(金) 02:12:12 ID:z95EgYZf
ttp://file300kb.run.buttobi.net/fl/src/Oil0024.zip
秋月のフラッシュタイプPIC比較表
205774ワット発電中さん:2007/04/20(金) 07:18:11 ID:pqI/SUAI
8bitのPICでその手の制御は難しいよ。
制御となると掛け算や倍長演算が欲しくなってくるけど
PICはキャリー付加算も出来ないからコードが冗長になりがち
多少コストアップでも、最初はH8やM16のボードでC言語で書いて実験して
成功してからそれをPICでやるにはって考えた方がいいとおもうよ
206774ワット発電中さん:2007/04/20(金) 11:16:36 ID:xgUq4erR
>>200
行ってみても発見できない俺がいる・・・

>>201
どもです。ヘタレほど何が難しいのかすら分からずに無茶な挑戦をして玉砕・・・
自分でも分かってるんですけどね

>>202
開発環境を整えて勉強しなおしてああああああああああ

>>203
もはや手も足も出ません。開発環境もそろえ直しっすよねぇ?

>>204
感謝感激です!

>>205
それをいっちゃ〜 orz・・・
dsPICで再出発するかAVRとかに流れるか・・・


皆様アドバイスありがとう。もうちょい試行錯誤してみますね。
207774ワット発電中さん:2007/04/20(金) 11:19:03 ID:glFVTae6
PicBasicコンパイラのスレ立てていい?
208774ワット発電中さん:2007/04/20(金) 11:35:07 ID:/8f2okJ4
>>207
PicBASIC限定にすると、すぐにネタ切れになっちゃうと思うんだけど。

アセンブラ、C、BASIC、PASCAL…とPICのプログラミング言語全般にするとか、
いろんなマイコン(PIC、AVR、H8…)のBASICスレにするとか。
でも、どっちにしても他のスレとかぶるところがあるか…
209774ワット発電中さん:2007/04/20(金) 13:10:44 ID:zQed4ZUP
>>206
AVRへの移行は簡単だぞ、いまではWinAVRでC++が無料でデフォだ。
ちなみに俺はPICとAVRの両方使ってる。


PICBASICって使ってる人いるの?
mikroBASICあるから十分だと思うんだけど。
210774ワット発電中さん:2007/04/20(金) 13:19:29 ID:zQed4ZUP
追記

だれか16FのPICでこれを作ってくれw
211774ワット発電中さん:2007/04/20(金) 13:20:15 ID:zQed4ZUP
アドレス張り忘れたorz

http://www.jcwolfram.de/projekte/avr/chipbasic32/main.php
212192:2007/04/20(金) 22:23:15 ID:UdQq95/a
7セグLEDを交換したら表示出来ました。でもPICに負荷がかかった
のか表示がでたらめに・・・・PIC交換で復活しました。
今度はIF周波数が450khzになってるんですけど455KHZに
変更するのはどうするのか調べてます。picって奥が深いなぁ〜!
213192:2007/04/20(金) 22:59:45 ID:UdQq95/a
dec_1000
movlw 0d0h
subwf data_s0,1
movlw 01h
btfss STATUS,0
subwf data_s1,1
btfss STATUS,0
subwf data_s2,1
btfss STATUS,0
subwf data_s3,1

movlw 0ddh
subwf data_s1,1
movlw 01h
btfss STATUS,0
subwf data_s2,1
btfss STATUS,0
subwf data_s3,1

movlw 06h
subwf data_s2,1
movlw 01h
btfss STATUS,0
subwf data_s3,1

return

多分ここを変更すると思うけど・・・・!挫折 OTL
214774ワット発電中さん:2007/04/20(金) 23:42:24 ID:8iXuguVm
215774ワット発電中さん:2007/04/21(土) 00:36:21 ID:PrQMsc0o
>>213
そのものズバリ dec_450 ってサブルーチンがあるみたいだが?
216192:2007/04/21(土) 00:59:01 ID:PmeWFUxP
>>215
そこは知ってるよ!上のと同じ。どこを変更するのか
解らない泣;

dec_450
movlw 0d0h
subwf data_s0,1
movlw 01h
btfss STATUS,0
subwf data_s1,1
btfss STATUS,0
subwf data_s2,1
btfss STATUS,0
subwf data_s3,1

movlw 0ddh
subwf data_s1,1
movlw 01h
btfss STATUS,0
subwf data_s2,1
btfss STATUS,0
subwf data_s3,1

movlw 06h
subwf data_s2,1
movlw 01h
btfss STATUS,0
subwf data_s3,1

return
217192:2007/04/21(土) 01:00:24 ID:PmeWFUxP
ちょと上げてみたw
218774ワット発電中さん:2007/04/21(土) 01:30:03 ID:PrQMsc0o
>>216
名前は dec_450 で450を引く様に感じるが、引くのは Hz 単位。
つまり、450000(06ddd0h) を引く。
さぁ、もう一度そのソースリストをよ〜く眺めて味噌。
219192:2007/04/21(土) 09:43:15 ID:HJmjxt43
>>218 う〜ん 最近始めたのでソースリストの解読は
難しいです。具体的に宜しくです。多分06ddd0hは
10進数とかで書かれてるのだと思うのだけど
それが解れば変更出来るかな?
220774ワット発電中さん:2007/04/21(土) 09:48:52 ID:Djz8bDNE
16進数だけど・・・・・
calcとかで確認すれば
221774ワット発電中さん:2007/04/21(土) 09:50:39 ID:rwpOD1mi
movlw 06h
movlw 0ddh
movlw 0d0h
222192:2007/04/21(土) 10:08:44 ID:HJmjxt43
今関数電卓で16進数で計算したら6DDD0となりました。
近い数字になるけど割り当てはどうすれば良いのかな?
223774ワット発電中さん:2007/04/21(土) 10:13:46 ID:Djz8bDNE
すこしは考えろ そのくらいできるだろ
224774ワット発電中さん:2007/04/21(土) 11:28:35 ID:J9sgA1od
PICスレって奥が深いなぁ〜!
225774ワット発電中さん:2007/04/21(土) 14:20:18 ID:KAV0VJEK
おんぶにだっことはこのことだな 
226218:2007/04/21(土) 14:29:17 ID:R6Xeuatf
ソース眺めればリスト中の >>221 に直ぐ気付くかと思ったのに… orz

450000 -> 06 dd d0 h
455000 -> 06 f1 58 h
227774ワット発電中さん:2007/04/21(土) 14:57:48 ID:KAV0VJEK
今度はコンパイルの仕方が・・・・・・・・
228774ワット発電中さん:2007/04/21(土) 16:44:20 ID:TDI0t9zV
>10進数とかで書かれてるのだと思うのだけど
ム板でよくあるのが
「メモリに10進数で書き込んできるのを16進数で書き込むようにしたいのですが、どうしたらいいでしょう?」
「書き込んだ値に10進も16進もあるかい!」
229192:2007/04/21(土) 21:02:44 ID:p6pZZt7/
>>226 返信が遅れました。IFを455KHZに設定
できますた。気がつかずスマソOTZ
230774ワット発電中さん:2007/04/21(土) 21:14:22 ID:jkTcvZ2P
ム板ならCOBOLとかPコードってオチかもしれず
231774ワット発電中さん:2007/04/21(土) 21:27:32 ID:aeemyszw
>>228
10進数がBCDで書き込まれてるのかも知れない
どっちもアスキーコードで書き込まれてるのかもしれない
232192:2007/04/21(土) 22:16:59 ID:OtmKOela
0h 0h 0hで普通の周波数カウンターになりました。
解ると面白いぞ!!
233774ワット発電中さん:2007/04/21(土) 22:18:35 ID:qhWx6CWl
判った判った。 さあ次の人どうぞ
234774ワット発電中さん:2007/04/22(日) 01:00:01 ID:5NUz0VPH
>>230 >>231
そうそう、こういう大ボケが後を絶たない。
値をどう解釈するかは取り出して加工する側の問題で、書き込まれてる値とは
関係ないことを理解させるのに苦労するんだよ。
235774ワット発電中さん:2007/04/22(日) 05:30:58 ID:mwGhVjgw
いや、でもここでの文脈では、メモリ上じゃなくて
アセンブラソース上ってことだろ

どちらかというと>>228がぼけをかましている
236774ワット発電中さん:2007/04/22(日) 06:35:06 ID:yr3/25hW
ついでに2進数ですらないってことも説明するべきだろうしな
こないだメモリにつなぐアドレスとデータの線はどんな順序でも
いいんだと説明しているのにどうしても理解できない奴がいた
そいつは次にGPIOを適当な順序でつないで怒られてたから
今でも理解できてないようだ
237774ワット発電中さん:2007/04/22(日) 06:50:54 ID:H+3LTPSM
>>236
メモリって、ROMでそれやられる前にきちんと教えた方がいいぞw
238774ワット発電中さん:2007/04/22(日) 08:03:59 ID:Z2PqKJIk
7セグLEDへのポート変更で解らなくなった。セラミックOSCを
使ったらRA6が使えなくなる為RA3に変更しなければ
いけないのだけどソースを見てもそれらしき場所が解らないでつ!
ココにそれらしきソースを見つけたけど・・・・・・
port_set ;RA0,RA1,RA2,RA3,RA6(OUT)
;RA4,RA5,RA7(IN)
;RB0,RB1,RB2,RB3,RA4,RA5(OUT)
;RB6,RB7(IN)
call banksel_1
clrf TRISA
bsf TRISA,4
nop
bsf TRISA,5
nop
bsf TRISA,7
nop
clrf TRISB
bsf TRISB,6
nop
bsf TRISB,7
nop
call banksel_0
return
?です。
又 挫折しました。よろしくです。
参考資料 http://nonchansoft3.at.infoseek.co.jp/audio/fcount1.htm ;RA0,RA1,RA2,RA3,RA6(OUT)
;RA4,RA5,RA7(IN)
;RB0,RB1,RB2,RB3,RA4,RA5(OUT)
;RB6,RB7(IN)
239774ワット発電中さん:2007/04/22(日) 08:19:36 ID:HFxlpK/C
>>165です。
やっぱりOPTION_REGとかプログラム的に色々試したがだめだった。赤外線モジュールのOut端子のみでテスターで電圧計ると5vでてて、picのRB0に直結すると0vになってしまいます。
やっぱり回路的に工夫しないとだめなんですよね?

まだ試してませんがこんなHP見かけました
http://masudayoshihiro.jp/electric/ir01.php

やっぱりトランジスタや抵抗を挟まないとだめなんですか?
240774ワット発電中さん:2007/04/22(日) 08:23:19 ID:yr3/25hW
そこはセラロックにしない、で全て解決
PICのカウンタは、マスタークロックと同期しているので、
最終桁の数字がブレたりとか碌な事にならない
241774ワット発電中さん:2007/04/22(日) 08:38:06 ID:IVtUB3fM
>>239

PICは単体で動作してるの? 結線しなければピンを手でさわるだけで
割り込みとかかかるはずだけど

RB0はちゃんと入力(1)になってるね? 
242774ワット発電中さん:2007/04/22(日) 08:41:00 ID:atPdaRRX
>>239
RB0に抵抗つないで、テスターで電圧計って、出力抵抗を計算してみたら?
もしかして、出力ポートにわざわざしてるんじゃないの?
243774ワット発電中さん:2007/04/22(日) 09:32:09 ID:HFxlpK/C
>>241-242

set_TRIS_A(0b00000001);
set_TRIS_B(0b00000001);
ext_int_edge(H_TO_L) ;//立下がり

プルアップしたボタンでGNDにショートすると(5v→0v)割り込みはかかります。赤外線モジュールのout端子とrb0繋ぐと最初から0vなので割り込みかかりません。

┐(´д`)┌


244774ワット発電中さん:2007/04/22(日) 10:10:22 ID:HFxlpK/C
ハード的なことは弱いので宜しくお願いします。
245774ワット発電中さん:2007/04/22(日) 11:20:55 ID:WLViJ/IA
ネットでの独学も限界かと思い、参考書買おうと思うんですけど
「C言語によるPICプログラミング入門 」
とか
「CによるPIC活用ブック」
あたりが評判よさそうなんでげすが
使ってるCコンパイラがMikroCなんで対応書籍が無く、
どうしようかと悩んでいるとこであります。
ANSI準拠ならPIC関連の参考書でなくてもいいのでありますか?
246774ワット発電中さん:2007/04/22(日) 12:19:24 ID:0Kmt4Dy/
>>243
受光素子はプルアップしてる?
247774ワット発電中さん:2007/04/22(日) 12:36:19 ID:HFxlpK/C
>>246
受光素子はプルアップしてません。プログラムで内部プルアップあるなし等でいろいろやりました。
248774ワット発電中さん:2007/04/22(日) 13:04:00 ID:wAII4gG3
mikroCはヘルプに詳しいこと書いてからいらないだろ、それより何を作りたいのか決めた方が良い。
249774ワット発電中さん:2007/04/22(日) 13:24:16 ID:IVtUB3fM
>>247
RB4-7のピンではどうよ 他のPICでやってみるとか 



INTCONの設定もちゃんやった?
250774ワット発電中さん:2007/04/22(日) 14:01:37 ID:jYGr2/DL
>>247
センサーをRB0に繋げて、
set_TRIS_B(0b00000001);
を実行したら割り込みマスク+無限ループする様にして、
その状態でRB0の電圧を測るとどうなる?
 ポートの構造上、出力モードになっていても >>243 みたいに
無理矢理スイッチでLowにするなどして、指定されたエッジを
検出させたら割り込みは発生するよ。


>>238
        /,. -‐'⌒ ̄⌒ー-、 \    \
         /':.:.:.:.:.:.:.:.:.:.:|.:.:.:.:.:.:.:\ ヽ: /_/
       /.:.:.:.:.:/:.:.:.:,:.:.:|:.:.:ヽ.:.:.:.:.:.', } /:.:.|
      l{:.:.:.:|:.l:.:.:.:/l/'ハ:、.:.:ヽ.:.:.:.:} .{::.:.:.:.:l
      ハ:.:.:.|:|:.// ノ ‐ヾ\_|l.:.:.:i }::.:.:.:.:.',
       ヽ:.:.{. ,:=、   ==、 ノ.;./ /::.::.::.:.:.:.',
        ヽゝ  、     ソ!※}::.::.::.::.:.:.
         { `ヽ、ヽフ /イ  /‐、_:.:.:.:.:.:.
  f^)^)^)^)^)^)^)^)^)^)「-、_,{※} r′ヽ:.:.:.:.
 r''⊇、             l|ヽ_/  } t′  ',:.:.:.
 { =='、 知ってるが   l|!;r'!※{ t′   ',:.:.:
 ハ,,_う´             l||;;l}.  {,コ      !:.
_{'V|l  お前の態度が  l||;;;{※.},コ      !、
ゞ |l                l|.l;;{  },コ      }
\,,|l気に入らないですぅl| L{.※{,コ      /|
  |l________l|,rn}  },コ\   / 〉

まぁ、>>240 も書いてるが、セラミック振動子を周波数カウンタに
使うのはお薦めできない。
夏や冬になると表示が狂う可能性有り。
どうしても使うなら水晶発振子で。




ヒント: sel_clear main_loop2
251774ワット発電中さん:2007/04/22(日) 14:50:27 ID:8NZ8r2a8
>>250 もしかして 薔薇乙女のそうせいせき?
252774ワット発電中さん:2007/04/22(日) 14:54:52 ID:8NZ8r2a8
間違えた翠星石?
253774ワット発電中さん:2007/04/22(日) 16:01:07 ID:yfuzcL9/
精度要らないならセラロックで十分>カウンタ
254774ワット発電中さん:2007/04/22(日) 18:50:49 ID:HFxlpK/C
>>250

ポートが入力になってないってことですか?set_TRIS_B(0b00000001);以外に何かやる事があるのですか?ちなみにCCS−C使ってます。
255774ワット発電中さん:2007/04/22(日) 19:00:32 ID:0YrzPu2M
PIC16F84以降のPICは、使うまでの儀式が増えたからなぁ。
アナログきったり、いろいろいろいろ。

めんどいし、GCCが使えるのでAVRに転ぶ気がよくわかる、
256774ワット発電中さん:2007/04/22(日) 19:03:41 ID:0Kmt4Dy/
ccsでset_tris_bしても#use fast_ioしてないと勝手に変わっちゃうよ
257774ワット発電中さん:2007/04/22(日) 19:19:53 ID:/VtSFbPK
AVR=84A?
258774ワット発電中さん:2007/04/22(日) 19:28:01 ID:wAII4gG3
>>255
面倒なのもあるけど性能がいいのと内部が使いやすくなってるしね。
Tiny2313が秋月で120円・mega48が苺で300円と値段もPICより安くなったのとISPが使いやすいしな。
259774ワット発電中さん:2007/04/22(日) 19:41:27 ID:nAdiRSp0
確かにISPできるはいいね。ちょっとしたもので安いTiny2313なら
ソケット無しで直付けして使ってる。
PICもISPできない事はないようだけど、クリスタルオシレータを
使うときはどうすればいいのかな
260774ワット発電中さん:2007/04/22(日) 20:10:20 ID:HFxlpK/C
>>256
今まで、グローバルエリアで#use fast_io定義してたのですが、main関数内でset_TRIS_Bの直後に#use fast_io書いたら割りこみかかりました。ありがとうございました。

set_TRIS_A(0b00000001);//0・・出力に。1・・入力に。
set_TRIS_B(0b00000001);
#use fast_io(a)
#use fast_io(b)
261774ワット発電中さん:2007/04/22(日) 20:17:41 ID:yA7GXBIb
PICへの書き込みにLEAP社のPSTARTっていうのを使ってる人いますか?秋月のこれ↓
http://akizukidenshi.com/catalog/items2.php?c=picw&s=popularity&p=1&r=1&page=#M-00724
PIC START PLUSよりかなりお買い得っぽいので買おうかどうしようか迷ってるんだけど、
新しいPICが出たときにPIC START PLUSと同じやり方でファームウェアのバージョンアップ
とかできるかどうかご存知ありませんか?
秋月のサイトを見ると中身はまったく同じっぽいけど、将来的なファームのバージョンアップまで
保障されてるんでしょうか?
262774ワット発電中さん:2007/04/22(日) 20:19:43 ID:KGPO+ZfG
>>261
自分もLEAP使っている。
本家のやつもLEAP社が作ってOEM供給しているから
LEAPも本家も基本的には同じ物。
当然ファームのバージョンアップも無問題。
安心して使え。
263774ワット発電中さん:2007/04/22(日) 20:22:15 ID:0YrzPu2M
>>261
使っています&バージョンアップ実際にやりましたっていうか、確かPStartがOEM先がPICSTARTだったような気が。
264261:2007/04/22(日) 20:44:39 ID:yA7GXBIb
>>262-263
どうもありがとうございます。
安心して突撃できます。
265774ワット発電中さん:2007/04/23(月) 01:24:32 ID:/26VwTIH
ちなみに古い奴17C44使ってる奴をフラッシュに変えるためのアダプタ。
何故か3000円もするが、単に64ピンQFPを40ピンDIPに変換しているだけ。
266774ワット発電中さん:2007/04/23(月) 06:01:16 ID:KwqwnZWX
ちょっす。
今MikroC評価中なんですけど
")" expected but ; found
ってエラーが 「;」使ってない行に出まして、構文エラーでいいのですか?
実は昨日からC始めたんですけど、「+なんか使ってねえよ!」って
キレそうです。再インストールしたけど同じ。CCS買った方がいいかな
267774ワット発電中さん:2007/04/23(月) 06:13:04 ID:CrHDJ1LW
>>266
単にカッコの数が合わないよって意味じゃないのか?
エラーコードでリスト作って、表示するときに画一的に意味を表示する
だけだろうから。
その辺にエラーがあるってことだけ分かれば充分でね?
268774ワット発電中さん:2007/04/23(月) 06:58:17 ID:KwqwnZWX
どもです。お騒がせいたしまして直りました。
訂正「+なんか → 「;なんか
カッコの数は同じだったんだけど、変数の宣言を直したら直ったっす。
結局の意味はわかりませんでした。

ところが書いたプログラムは50行に満たないのに、
Demo limit と出てコンパイルできませんでしたとさ。
これで2kワードとは…
浮動小数点つかったから?

さて、どうせ金払うなら CCSにするか それともMikroCで行くかなやむなあ。

269774ワット発電中さん:2007/04/23(月) 08:24:09 ID:+v/PsqAi
>>268
SDCCはどうなんでしょか?
270774ワット発電中さん:2007/04/23(月) 10:42:43 ID:KwqwnZWX
>>269
意欲的な人がいるモンですねー。
残念ながら使いたい型のPICが対応してなさそうなので…。
CCS高いからホントはフリーので使ってみたいんですけどねー。
保守料ってなんだYO!みたいな。
でも日本語の参考書がたくさんある現実は捨てがたい…。

というか浮動小数点って相当複雑な計算してるんですね。
floatを3個作ってそのうち1個を比較しただけでHEXワード数が1978とか行きました。
Sin と 小数点の積なんか使ったら、
MikroCのデモ限界2000ワードを超えて
いくつになってるのかわかりません。
にわかに信じられないんですけどそういうものなんですか?
271774ワット発電中さん:2007/04/23(月) 11:06:33 ID:fOr2QjAE
そんなもんだよ。

っていうか、PICで浮動小数点演算を行わせようとする時点で(ry
272774ワット発電中さん:2007/04/23(月) 11:08:36 ID:ddHJeijV
CCS Cなあ。年間メンテナンス入ってないと30日間しかアップデート
できないとかハァ?って感じだな。つか対応プロセッサの追加とか、
本来の意味でのアップデートはいらねーから、致命的なバグの
バグフィックス位はメンテナンス契約の有無にかかわらず提供すんのが
道理だろと。
273774ワット発電中さん:2007/04/23(月) 11:22:17 ID:7mhj/dwB
CCS-Cはねぇ
何だかんだ言いながらPIC用のCでは最も完成度高いからね〜
売る方も客の足元見ちゃえるんだよね
商売の力関係なんだから、それに文句を言っても仕方ないと思うけど、
日本で後閑さんが、アマチュアの工作者向けに、
この非常に維持費の高いコンパイラを、その事実を隠してプッシュしてるのは、
いただけない話だよね〜
274774ワット発電中さん:2007/04/23(月) 11:23:05 ID:xW6uEBNO
Wiz-Cが値段が安いから、まあ値段なりに納得出来ると思うよ。
ただ、便利機能はクセがあるから使い方に慣れないと逆にメンドクサイね
・ 便利機能は無視
・ 全部BYTEでしか使わない
・ for文はマニュアルで推奨された方法でしか使わない。
・ ビット操作をとにかく使う
・ 引数なんてもんは使わない グローバル変数で渡す
・ 帰り値は使うならBYTEのみ
高級アセンブラとして使えば、エミュレータが秀逸だから、事前デバッグがとても楽
275774ワット発電中さん:2007/04/23(月) 11:25:12 ID:xW6uEBNO
あとWiz-CのUNICODE対応は気持ち悪い出来だから無視した方がいいだろな
276774ワット発電中さん:2007/04/23(月) 11:29:18 ID:7mhj/dwB
Wiz-Cは割り込みが(ry
277774ワット発電中さん:2007/04/23(月) 11:36:52 ID:jxlXmUnq
意欲的なのは良いけどCCSCやmikroCやWiz-C買うのはやめてやめとけ。
自分はmikroBASIC買いかけたけどPICにC言語自体……。

数万出してアレを買うならAVRを勉強してフリーのWinAVR(C++)を使ったほうが後々にもいい。
278774ワット発電中さん:2007/04/23(月) 11:38:49 ID:jxlXmUnq
誤:買うのはやめてやめとけ
正:買うのはやめとけ

orz
279774ワット発電中さん:2007/04/23(月) 11:44:49 ID:KwqwnZWX
あ。。ども。 なんか噴出してる…w
確かにGさんの本は比較対照にわざと競合外してる感があって営業っぽい感じがしますねえ。
なんかマイコンの選定から始めたほうがいいみたいですね。
ここ数日の投資が全部無駄になりそうだけどw
280774ワット発電中さん:2007/04/23(月) 11:52:07 ID:xW6uEBNO
>>277
まあ勉強なら、最初はH8/M16あたりのボードからやるべきだろうな。
ただ、ADC付で小ピンでとなるとPICの独断場で、選択肢にどうしても入ってしまう。

しかしPICはアセンブラで書くとなるとメモリバンク操作がとにかくバグを誘発し易いから
C言語を高級アセンブラとして使えば、だいぶ楽になる。 そういうサイズのコードを
書かないならアセンブラで十分。

C言語を再利用性とかの観点からPICに導入したらそりゃ失敗だ。
281774ワット発電中さん:2007/04/23(月) 11:52:14 ID:jxlXmUnq
PICも用途によってはPICにしかできない事もたまにあるけどね。
タイマーに値をセットしたらプリスケラがリセットされるのは(汗

>>279
オススメのチップのデータシート置いておくから参考にしてくれ。
http://reef.path.ne.jp/~hero/pdf/TINY2313.PDF
http://reef.path.ne.jp/~hero/pdf/MEGA88.PDF
http://reef.path.ne.jp/~hero/pdf/MEGA128.PDF

AVRマイコン総合スレ Part7
http://science6.2ch.net/test/read.cgi/denki/1162464623/

マイコンで浮動小数点って何をやろうとしてたのか気になる……。
282774ワット発電中さん:2007/04/23(月) 13:10:41 ID:6n2JLOxu
SourceBoostいいよ。安いし。
283774ワット発電中さん:2007/04/23(月) 14:47:59 ID:7mhj/dwB
SourceBoostはライブラリ関数が(ry


・・・って最近のはシラネ
284名無したん(;´Д`)ハァハァ:2007/04/23(月) 19:28:14 ID:ydi3FYcc
>>281
ゴルァ!直リンするなって書いてあるだろ!
こういうのが居るからAVRユーザのイメージが悪くなる。
285774ワット発電中さん:2007/04/23(月) 20:17:48 ID:x6lyaZp9
初心者向けとしてAVRを推していくなら、この手のユーザが増えはしても
決して減らないと思うよ
その分メジャーになったってことなので、悪いイメージのレッテルは
我慢するべきこと
286774ワット発電中さん:2007/04/23(月) 22:19:27 ID:1a6vCUxq
>>284
むしろその狭量さがイメージ悪い(w
287774ワット発電中さん:2007/04/23(月) 23:31:06 ID:KwqwnZWX
>>281
やっぱ手元の評価ボードが無駄になっちゃうからPICで行くことにします。
情報ありがとう。
で、コンパイラですが、mikroC、ヘルプは英語だけど素直な英文らしく、
翻訳サイトに突っ込んだらかなりまともに日本語化してくれるのでとりあえず必要なところは読めてOK!
保守料払ってまで、しかもタイプごとに小分けして…なんてのに金払うより
安くてほとんどのPICに対応しててANSI準拠なmikroCで
とりあえずCの勉強しながら進化しようと思います。
ソフトとしては一長一短なんでしょうけど。

浮動は…スムーズに加速させたかっただけなんですよ。
記述が1行で済みそうだからやってみたんですけどねー。
288774ワット発電中さん:2007/04/24(火) 00:20:30 ID:e6+VzRPE
>>287
掛け算禁止。
割り算禁止。

どうしても掛けたい時は、左シフト
どうしても割りたいときは、右シフト

289774ワット発電中さん:2007/04/24(火) 00:25:03 ID:UalM7t6r
>>284
>こういうのが居るからAVRユーザのイメージが悪くなる。
いや、わざわざPICスレに勧誘に来てる時点で、もう(ry

初心者質問スレとか見てると、昔はPICスレからの勧誘カキコが
多かったのに、今はAVRスレからの勧誘カキコの方が多いんだよな。
必死なぐらいw

まぁ、78k・Renesus・PSoC・ARM・MSP430 スレからの勧誘が
皆無な事を鑑みると、>>285 のとおりユーザが増えたんだろうな。
290774ワット発電中さん:2007/04/24(火) 01:11:24 ID:QLgjh3nq

>Renesus・ARM
  PICとレンジ違うからそこのユーザーがPICユーザー勧誘する意味なし。
>PSoC・MSP430
  PICとターゲット違うからそこのユーザーがPICユーザー勧誘する意味なし。
なだけだと思う。
AVRとPICはモロ競合なのでちょっかい出される。
291774ワット発電中さん:2007/04/24(火) 01:24:21 ID:QLgjh3nq
個人的には
旧PICは新たに初心者には薦めない。Cとか使いにくいから。
新PICは新たに初心者に薦めるけど、まだ応用例が心もとない。
応用例が既にある場合、AVRでも薦める。
って感じなのだが。
はっきり言って秋月ATTiny2313がなけりゃあまり薦めない。
292774ワット発電中さん:2007/04/24(火) 01:56:55 ID:wuv7aoFx
>>287
mikroCのANSI C準拠な部分って・・・哀しくなるほど。
293774ワット発電中さん:2007/04/24(火) 02:46:40 ID:X2FQqKGE
え、そうなの?
どれがまともなコンパイラなんだ〜。 ハイテク?
294774ワット発電中さん:2007/04/24(火) 03:20:20 ID:znQ+moH5
だから、PICで C言語なんかつかうなって
295774ワット発電中さん:2007/04/24(火) 03:32:08 ID:yhLGGkF7
PICはやっぱ変態アセンブラだろ
296774ワット発電中さん:2007/04/24(火) 04:09:02 ID:X2FQqKGE
じゃあベーシックで。

つか今ケロロ軍曹見ながらテストしてたんだけど、
飲んでたコーヒー吹き出して基盤…の3センチ横がびっしょりになりました。
速攻ビニール袋に格納しますた。
297774ワット発電中さん:2007/04/24(火) 08:28:01 ID:e6+VzRPE
>>293
WinAVRは、GCCなので、かなりまとも。
298774ワット発電中さん:2007/04/24(火) 09:01:52 ID:SHyVWWjE
>>297
元レスの3つの浮動小数点と1つの比較するHEXは
どのくらいのコードサイズになる?
299774ワット発電中さん:2007/04/24(火) 09:09:29 ID:aCfaIyj/
今まで秋月のPICプログラマver3を問題なく使っていました。
それをPICプログラマーVer.4『バージョンアップキット』にしたら、
例えば、PIC16F876を焼くときに、

マイコンがソケットに正しくセットされていません。
キットの組み立て直後の場合は〜

とエラーが出るようになりました。

COM1:AE-PGM877 V6.50
PICプログラマV4 V6.5.68

でソフトは正しいはずです。
同じような現象を尚した方がいたら教えてください。
300774ワット発電中さん:2007/04/24(火) 09:22:53 ID:87NvXFR6
>キットの組み立て直後の場合は〜

その先は?

Ver.4モジュールがおかしいんじゃない?
301774ワット発電中さん:2007/04/24(火) 09:33:42 ID:MKogephE
>>287
テーブル使うのはダメ?
302299:2007/04/24(火) 10:10:49 ID:aCfaIyj/
>300

キットの組み立て直後の場合は製作にミスがある可能性があります。
メニューバー⇒ヘルプ⇒政策確認資料をご覧になり確認を行ってください。

です。
なんか、モジュール引っこ抜いて再度入れたら動きましたよ。
なんか不安だな。。。
303774ワット発電中さん:2007/04/24(火) 12:26:06 ID:ljvwqjZi
ICソケットの接触不良だったんじゃね?
304774ワット発電中さん:2007/04/25(水) 02:51:15 ID:oLMjiVgx
>>299
マニュアルくらい嫁や
305774ワット発電中さん:2007/04/25(水) 23:33:29 ID:jN8LJreN
糞スレ禁止!!
306774ワット発電中さん:2007/04/25(水) 23:34:44 ID:3zI/e8F4
かるさん、それがごみレスって言うんです。
華麗にス(ry
307774ワット発電中さん:2007/04/29(日) 15:54:52 ID:O0PRs152
PIC16F785どっかで買えない?2〜3個で良いんだけど
Directはクレジットカードが要るみたいだ
308774ワット発電中さん:2007/04/29(日) 17:58:30 ID:N8c2E5BM
Digi-Keyにあるだろ
何か買うついでに紛れ込ませておけば良いんじゃねぇの?
309774ワット発電中さん:2007/04/29(日) 19:19:17 ID:pHDI9SNt
>>307
特定アプリケーション/特定ユーザー向けに作ったカスタマイズ版を外販しちゃったっぽい石だね
310774ワット発電中さん:2007/04/29(日) 19:23:46 ID:O0PRs152
307です。
>>308
ありがとう。調べてみます

>>309
内蔵オペアンプがうれしいおまけなんです
311774ワット発電中さん:2007/04/29(日) 22:10:04 ID:q4Lv5ZiM
PICを初めて扱うのですが、
フルカラーLEDの制御回路を考えています。
60秒ごとにはっきりと色が変わるもので、
PMW制御とか難しいことは考えていません。

どなたか回路作りのヒントを下さらないでしょうか?
312774ワット発電中さん:2007/04/29(日) 22:20:39 ID:XfAgNCwR
3色なら直結でもいけると思うが
それともソフトが分からんのか?
313774ワット発電中さん:2007/04/29(日) 22:22:10 ID:q4Lv5ZiM
>>312
本当にPICが初めてで。
ソフトも分からないのですが、
クリスタルなどは必要ありますか?
314774ワット発電中さん:2007/04/29(日) 22:23:51 ID:3fItT701
>>313
PICにもよるけどセラロックで十分かと
っていうか、本買ってやったほうがいいよ
315774ワット発電中さん:2007/04/29(日) 22:24:57 ID:oWGYmb4g
>313
60秒というのがどの程度正確に必要なのかにもよりますけど、
クロック精度1%程度なら内蔵クロックが使えるものもあります。

というよりPICの開発環境は大丈夫ですか?PICライタとか。
316774ワット発電中さん:2007/04/29(日) 22:25:41 ID:q4Lv5ZiM
>>314
ありがとうございます。
本は買ったのですが、理解力に欠けているみたいですorz
317774ワット発電中さん:2007/04/29(日) 22:26:42 ID:oWGYmb4g
>316
どの本買いましたか?
318774ワット発電中さん:2007/04/29(日) 22:26:57 ID:q4Lv5ZiM
>>315
制度5%以内なら大丈夫なくらい大雑把ですw

ライタについては秋月のものがあります。
319774ワット発電中さん:2007/04/29(日) 22:32:21 ID:q4Lv5ZiM
320774ワット発電中さん:2007/04/29(日) 22:41:34 ID:XfAgNCwR
>>319
とりあえずライターはあるのか?

その本は見てないけど、LEDチカチカの実験はあるみたいだから、
訳分からなければその通り作ってみたらいいと思うが
321774ワット発電中さん:2007/04/29(日) 22:42:23 ID:oWGYmb4g
>319
後閑さんの本ですね。picマイコン使いのなかではとても有名な方です。
ご存知かもしれませんが著者のサイトは
ttp://www.picfun.com/

私はその本は持っていないのですが、
ttp://www.picfun.com/picbookC.html
をみると第二章にLEDの点灯の項目があるようですね。

3色フルカラーLEDといっても、普通はただ単に4本足が生えていて
うち一本がアノードコモンまたはカソードコモンとなっています。

コモン(つまり共通)となっていない側の端子はそれぞれの色のカソード
またはアノードとなっているので、回路的には別々のLEDがくっついて
入っていると考えればよいです。

なんかわかりにくい文章でごめんなさい。
322774ワット発電中さん:2007/04/29(日) 22:45:06 ID:goiJY3e/
コンパイラーは何使ってるの?
323774ワット発電中さん:2007/04/29(日) 22:46:32 ID:q4Lv5ZiM
>>320,321
その通り作るとなると、
まったく分からないのでPICを3つ使用することにw
324774ワット発電中さん:2007/04/29(日) 22:47:47 ID:oWGYmb4g
質問攻めにして申し訳ないですけど、秋月ライタのVer.4バージョンアップキット
もちゃんと買いましたか?多分8ピンpicだとバージョンアップしないと書き込め
ないと思うので。
325774ワット発電中さん:2007/04/29(日) 22:50:23 ID:XfAgNCwR
あーごめん、アマゾンのコメントにCコンパイラ前提ってあるな。
アセンブラで十分なので>>321のサイトとかで勉強すればいい。

ハードは後回しにして、MPLABいじくり回すとかやってみれば?
326774ワット発電中さん:2007/04/29(日) 22:51:01 ID:q4Lv5ZiM
>>322
すみません。初めてなので、
できればお勧めのコンパイラーを教えていただければ(ry

>>324
とりあえず無理に8pinで構成しようとは思っていません。
なるべく分かりやすく16F84などで作ろうと思っています。
327774ワット発電中さん:2007/04/29(日) 22:52:22 ID:q4Lv5ZiM
>>325
本当にほぼ0からのスタートですw
本すらよく見ていませんでした。
328774ワット発電中さん:2007/04/29(日) 22:59:25 ID:goiJY3e/
デモだけど2Kまでつくれる バグが多いけど・・・
ttp://www.mikroe.com/en/compilers/mikroc/pic/download.htm
サンプル ソースもあるし
無難に16F84あたりでやってから違うチップに移行するのがいいと思うよ
329774ワット発電中さん:2007/04/29(日) 23:02:01 ID:oWGYmb4g
>327
どうもまだ、なにが分かってて何が分かっていないのかも把握していない状況のように
見受けられます。まず何か作ってみてはどうでしょう。

最初は1個のLEDピカピカぐらいの本当に簡単な回路からはじめるのがおすすめです。
教科書どおり作ったつもりでもなぜかうまくいかないというのはよくある話ですので。

8ピンPICへの書き込み環境がないのなら、とっても古典的な入門パターンになりますが
言語はアセンブラ、picはPIC16F84A、参考書は
ttp://www.picfun.com/picbookA.html
がおすすめです。おすすめサイトは>3のあたりでしょうか。後はGoogle先生・・・
330774ワット発電中さん:2007/04/29(日) 23:05:40 ID:q4Lv5ZiM
>>329
点滅からの入門ですか。
参考書については、考えてみます。
331774ワット発電中さん:2007/04/29(日) 23:13:18 ID:oWGYmb4g
>330
>>3のなかでも初心者がとっつきやすいのは
PICな日曜日
ttp://www.kimurass.co.jp/picindex.htm
でしょうか。まぁ、適当にがんばって分からなかったらまたきてください。
332774ワット発電中さん:2007/04/29(日) 23:25:04 ID:q4Lv5ZiM
>>331
正直に言いますと、作ろうとしている回路のLEDの発光は、
チカチカ × 3 で簡単に出せるので、
まずはそこから勉強していきたいと思います。

丁寧にありがとうございました。
333774ワット発電中さん:2007/04/30(月) 00:01:20 ID:0xkOQvvy
8pinのPICに入門するならこれがおすすめ
http://www.google.com/search?client=opera&rls=ja&q=%E3%81%8A%E3%82%82%E3%81%97%E3%82%8D%E3%81%84+PIC12F675&sourceid=opera&ie=utf-8&oe=utf-8

俺はPIC無知の状態からこれ一冊でマスターした
334774ワット発電中さん:2007/04/30(月) 00:12:49 ID:Qieh7Vuc
>>333
ありがとうございます。
金銭的に余裕が持てたら、購入したいと思います。
335774ワット発電中さん:2007/04/30(月) 00:26:01 ID:F8m80VM9
>333
I/Oの数って、6ピン以内で何とかなってしまうことも多いんですよね。
そうすると今度はI/O節約自体が楽しくなってくる。
で、気がつくとPIC12F683に74HC595がたくさんつながってて、俺は
一体何がやりたかったのかと・・・
336774ワット発電中さん:2007/04/30(月) 06:57:42 ID:x3MLBX68
>>335
それはいいと思うよ
337774ワット発電中さん:2007/04/30(月) 12:45:15 ID:PauWIQzz
テーブル参照で使用する
RETLWの動作がわからないんです。
PCL、PCLATH?
本読んでも解らない

7セグ表示で使いたいんですけど
やっぱ動かしながらSIMでレジスタ
の変化を見て理解するしかないのかな




338774ワット発電中さん:2007/04/30(月) 13:08:05 ID:r3c4NtNo

RETLWの動作って Wレジスタに 何か入れてCALLで呼んだ次の行に戻るって動作だけだと思うのだけど

PCLレジスタってのは今実行している次のアドレスが自動的に入っているので(PICが勝手にやってる)普段は意識する必要がないのだな

多分参考にしているPIC本に例が載っているので、始めはそのまま実行してみる方が良いかもね。
339774ワット発電中さん:2007/04/30(月) 13:24:57 ID:Q/07yDNY
>336
ありがとう。ちょっと自信がもてました。

>337
RETLWは単純にRETURNとほとんど同じだけどWレジスタの値が
書き換わるだけです。
分かっていないのは多分PC(プログラムカウンタ)の概念かと。

PICのなかにはPCといって現在実行しているプログラムの番地が
記録されているレジスタがあります。GOTOとかRETURNとかの命令
はそのPCを書き換えることによってジャンプを実行しています。

さて、このPCなのですがジャンプ命令以外のMOVWFとかADDWF等の
命令で直接書き換えてもジャンプが出来ます。
RETLWのテーブルはこの方法を利用しています。

しかし、実を言うとPCは13ビットのレジスタです。これに対してPICが
MOVWFなどの命令で直接書き換えられるのは8ビットまでなので
不都合が出てくる。

例えば今H'00F0'を実行していてH'0100'にジャンプしたいとき下位8ビット
だけ書き換えてしまうとH'0000'にジャンプしてしまう。こういった事態を
防ぐためには下位8ビットと上位5ビットを同時に書き換える必要が
出てきます。

そこで、PIC内部ではPCの下位8ビットを直接読み書きできるPCLレジスタ
のほかに間接的にPCの上位5ビットに書き込めるPCLATH(PC Latch High)
レジスタが用意されています。

PCLATHレジスタは値が書き込まれてもすぐさまPCに反映させることは無く
PCLにMOVWF等の命令で書き込みがあったときに、それと同時にPCの上位
5ビットを書き換えます。

先の例ではまずPCLATHにH'01'を書き込んでおいてPCLにH'00'を書き込めば
それと同時に上位5ビットも反映されるので無事H'0100'にジャンプすることが
出来ます。

長文スマソ。暇なもんで。

参考
ttp://www.picfun.com/memory02.html
340774ワット発電中さん:2007/05/01(火) 07:55:34 ID:14n8lqh/
>339
337です。
有難うございました。
pic関連本ではここまで詳細に解説した内容が記載
されておらず悩んでいました。

341774ワット発電中さん:2007/05/01(火) 09:34:49 ID:9ZwMPs0g
つか、pic関連本のデバイスの説明って、たいていデータシートのサブセットでしかない
342774ワット発電中さん:2007/05/01(火) 09:56:22 ID:O6Bfd9BN
>341
まぁ、日本語で書いてあるだけでありがたく感じる人間もいるんですけどね。
自分みたいに。
343774ワット発電中さん:2007/05/01(火) 13:04:31 ID:y5yi+I9Z
PICのデータシートを日本語に翻訳して公開してくれる人いないかな。
AVRの翻訳済みみたいなのがPICにも欲しい。
344774ワット発電中さん:2007/05/01(火) 13:14:47 ID:9ZwMPs0g
>>343
その翻訳の内容を鵜呑みにできる?マイクロチップにも多少はあるけどな
ttp://www.microchip.co.jp/document.htm#japanese
345774ワット発電中さん:2007/05/01(火) 13:37:44 ID:gFlm79oI
データシートくらい英語で読めよ
俺は高1の時に16F819のデータシート読破した
346774ワット発電中さん:2007/05/01(火) 13:44:03 ID:eE8RdKIf
んだ 


最初は全部わからなくてもいいんだし 

尻込みして欲しくないね
347774ワット発電中さん:2007/05/01(火) 15:51:12 ID:4EN1fK/B
文学作品じゃあるまいし英文データシート読めないなら電子工作諦めろ
348774ワット発電中さん:2007/05/01(火) 17:18:13 ID:O6Bfd9BN
>343
それこそPIC関連本のデバイスの説明でいいでしょう。12/16シリーズ
はどれも大体同じだし、違うところだけデータシート読むというスタンスに
私は特に不満を感じませんが。

>344
少なくともマイクロチップの日本語データシートは記述がところどころ
怪しいと思います。もちろん取っ掛かりとして有用だということは否定
しませんが・・・現に私も87Xのデータシートにはお世話になりましたし。

>345-347
別に>343は英語のデータシートが読めないとは言ってないと思うのですけど。
349774ワット発電中さん:2007/05/01(火) 17:21:51 ID:eE8RdKIf
そういうの屁理屈っていうんだよ
350774ワット発電中さん:2007/05/01(火) 17:28:21 ID:O6Bfd9BN
>349
そうですかね。英語が読めないから日本語の文献がほしいと思うのと、
英語の文章も読めるけど日本語の文献がほしいと思うのにはずいぶんと
違いがあるように思うのですが。

少なくとも日本でPICがそこそこ普及しているのは、16F84の日本語データ
シートがあったことも大きいと思いますよ。
351774ワット発電中さん:2007/05/01(火) 17:45:23 ID:eE8RdKIf
後だしでそんな条件つけちゃだめだよ
352774ワット発電中さん:2007/05/01(火) 17:56:41 ID:O6Bfd9BN
>351
「条件」とは具体的にどの内容を受けてのことでしょうか?

私は>343の書き込みは英語のデータシートが読める人物によるものだと
解釈したのですが、>345-347はそれとは違う解釈をしたのですよね。
353774ワット発電中さん:2007/05/01(火) 18:12:10 ID:eE8RdKIf
コテ書いてないけど
あんた lightなんとかっていうのか?
354774ワット発電中さん:2007/05/01(火) 18:14:50 ID:j5pr+Qdi
ところで「PICkit2 Clone」作らないか?
355774ワット発電中さん:2007/05/01(火) 18:24:29 ID:O6Bfd9BN
>353
いいえ。確か前々スレにいた人ですよね。
356774ワット発電中さん:2007/05/01(火) 18:40:16 ID:eE8RdKIf
親戚縁者、同僚、学友、友達?
同じ臭いがする
357774ワット発電中さん:2007/05/01(火) 19:03:43 ID:9ZwMPs0g
>少なくともマイクロチップの日本語データシートは記述がところどころ
怪しいと思います。

怪しくない日本語翻訳版データシートというものにはなかなか出逢わんね。Intelなんか笑っちゃう位酷いものだった。
きちんと翻訳や校正ができる位のレベルの奴に翻訳/校正作業なんていう付加価値の低い仕事はさせないという、いかにも欧米系な合理主義もあるのだろうが
358774ワット発電中さん:2007/05/01(火) 19:24:13 ID:dWldGxFA
いまどき日本語のデータシートを容易しないことで失うビジネスチャンスなんてゴミ以下。
毛唐連中は中国語への翻訳に掛かりっきりだ。
359774ワット発電中さん:2007/05/01(火) 19:37:24 ID:VEZ/Lr+P
>>358
だな。
サイトに行っても、たいてい、切り替えボタンは

English
German
French
中文

の4つだ。
360774ワット発電中さん:2007/05/01(火) 19:50:16 ID:GZ6wC0d9
でも中国人なら余裕で英文読むんじゃないか
361774ワット発電中さん:2007/05/01(火) 19:51:06 ID:4EN1fK/B
簡体中文以外は不要だ
362774ワット発電中さん:2007/05/01(火) 19:52:04 ID:VEZ/Lr+P
>>360
不謹慎だが、戦争に負けたときに、公用語を英語にしてほしかったと思う。
363774ワット発電中さん:2007/05/01(火) 19:52:10 ID:4EN1fK/B
>>360
コピー商品作ってる連中は英語ダメダメだから
364774ワット発電中さん:2007/05/01(火) 20:09:45 ID:gFlm79oI
>>354
作ってもいいけどもう買っちゃったからな

>>362
禿しく同意
365774ワット発電中さん:2007/05/02(水) 23:25:22 ID:z6+FvMcX
PICで6桁LED時計作りたいのですが
もすすめのページないっすか?
366774ワット発電中さん:2007/05/02(水) 23:37:25 ID:vQ2QiX/V
>365
もすすめ?
ググッたらこんなの出てきた。
ttp://www.hobby-elec.org/clock_v2.htm
ttp://www.picfun.com/equipj39.html

まぁ、PICで時計作るときに一番肝心なのはクロックの精度だから
そこさえ気をつければいいんじゃない?

定番はこれかな。
ttp://akizukidenshi.com/catalog/items2.php?q=KTXO-18S&s=score&p=1&r=1&page=#P-00227
367774ワット発電中さん:2007/05/03(木) 00:07:48 ID:A9fYIwyE
普段はAC100Vの周波数を計っておいて、停電中だけ水晶で動かす方が精度はいいよね
368774ワット発電中さん:2007/05/03(木) 00:10:34 ID:2tuJz8iN
>367
なるほど。盲点でした。
そして引越し先で・・・時計が早く動く!?
369774ワット発電中さん:2007/05/03(木) 00:12:33 ID:Te0ThpSH
水晶は、正確にどんどんずれていくからね。
コンセントの50Hzは数ヘルツずれたりするけど、一ヶ月のパルス数調整するのでほっといても分単位なら遅れ進みなし。
370774ワット発電中さん:2007/05/03(木) 03:04:19 ID:PT6HmuhX
ノイズの誤カウントで進むことになる。
371774ワット発電中さん:2007/05/03(木) 06:50:47 ID:reukULfu
内蔵クロックで50Hz/60Hzの判定とノイズブランキングを行えばよい。
372774ワット発電中さん:2007/05/03(木) 09:56:45 ID:RwtMEwpF
CDSを使って明るさを感知したいんやけど出来るかな?

条件として
PortBを内部プルアップした状態。
暗い状態は1、明るくなると0
A/Dは使わない。
外付け部品は極力少なく。
感度調整用VRは使う。

秋月の安いCDSを使って、スイッチの様にON.OFF出来たら最高です。
明るさでsleepから復帰するとか使えるしね。
373774ワット発電中さん:2007/05/03(木) 10:09:27 ID:C2MaOd2N
コンパレーターもだめか?
374774ワット発電中さん:2007/05/03(木) 10:32:32 ID:RwtMEwpF
コンパレーターを使うとsleepからの復帰が無理じゃない?
単純に電源からグランドまで順に抵抗−VR−Cdsと繋いで、VR−Cds間にポートを繋げると無理か?
375774ワット発電中さん:2007/05/03(木) 10:37:50 ID:C2MaOd2N
スリープ機能 使ったことがなかった 
復帰しないのか そうなのか
376774ワット発電中さん:2007/05/03(木) 10:51:12 ID:reukULfu
>>374>>375
コンパレータでSleepから復帰できるぞ。
データシートのComparator Interruptsを参照。
377774ワット発電中さん:2007/05/03(木) 11:06:13 ID:C2MaOd2N
CMIEてのがあるね
378774ワット発電中さん:2007/05/03(木) 11:09:12 ID:/dDUrTaF
CDSの抵抗変化は劇的だから、 コンパレータ無くても>>374で十分だろう

ただ、欠点はCPUがスリープしていてもCDSのオフ時数10Kの抵抗で電流が流れてしまう事
だから、電池を長時間持たせないなら
PICを38Kとかのクロックでタイマー動かして一定時間毎にポートを見る方が長持ちするかもね
CDSと小さいコンデンサCを並列にして

port
-R--+----CDS---+---gnd
    +---- C ----+

PORTをH にして出力し、Cに充電出来たら 入力ポートにしてポートを監視
Lになるまでの時間を見れば、ポート1本である程度の明るさ検出も出来るぞ
379774ワット発電中さん:2007/05/03(木) 12:07:23 ID:Atf3FIMc
>>378
おーー、すばらしい。
なるほどいいアイデアだな。今度使わせてもらうよ。
ポート2本使って似たようなことをしたことあるけど。

でも、Cdsの電圧そのものをポートで駆動すれば、Sleepに入る前に
ポートLにすれば、暗電流も減るけど。どう?
380774ワット発電中さん:2007/05/03(木) 12:23:24 ID:ASADS9S5
>>376
そっかコンパレータから復帰できたのね。
>>378>>379
まさに目から鱗が5枚ほど剥がれ落ちたよ。
381774ワット発電中さん:2007/05/03(木) 13:34:41 ID:C2MaOd2N
>378
同僚からは匠と呼ばれてる?
382技術奴隷:2007/05/03(木) 14:44:26 ID:mHqv4oPE
>>379
CDSの回路をOFFにしてスリープしてしまうと、「明るさでスリープから復帰」
が出来ないので、適当な周期で監視する必要が有るんじゃないかな。

時間精度を気にしないなら、WDTでスリープ解除して明るさを調べれば
普通のクロックでも消費電力を減らせるけどね。
383774ワット発電中さん:2007/05/03(木) 17:51:50 ID:/dDUrTaF
>>379
ポート2本使って CDSの電圧を切ってスリープって事は、

P2------------R2----+
                |
P1--R1--+----CDS----+
       |   
       C
       |   
      GND

こんな配線かな? 

1、 P1,P2を入力に、 P2のプルアップ抵抗をオン、 P1はプルアップ使わない
2、 スリープ 

   時間がたてば P2の内部プルアップ抵抗経由でPCが充電されHになりスリープ解除

3.  スリープ解除したら、一定時間待って、
4 P2をL にして P1がLになるまでの時間を計ればアナログ量が測定出来る
5 こんどはP1をLにしてCを放電
6 1に戻る
384774ワット発電中さん:2007/05/03(木) 18:40:23 ID:reukULfu
Sleepに入りたい理由が「明るくなるまで待ちたい」だけなら>>378>>383の方法でも良いが、省電力(バッテリ駆動時間延長)のためならお勧めできない。
デジタル入力に設定した入力ピンに中途半端な電圧を加えると入力バッファの貫通電流が大幅に増えて(mAオーダ)、Sleepに入って消費電流を抑える意味がなくなってしまうので。

参考:
http://ww1.microchip.com/downloads/en/DeviceDoc/80171k.pdf (PIC16F87/88 Rev. B1 Silicon Errata)の「6. Module: PORTB, RB6 Pin」
http://ww1.microchip.com/downloads/en/DeviceDoc/41200C.pdf (PIC MCU Power Managed Tips 'n Tricks)の「TIP #9 Configuring Port Pins」

省電力が目的なら、明るさの変化後すぐに動作が必要ならコンパレータで復帰(工夫すれば暗電流は数μAに抑えられる)、明るさの変化から動作までタイムラグがあってもよければWDTかUltra Low-Power Wake-Upで復帰してから>>378の方法で明るさを読み取るのが良いかと。
385774ワット発電中さん:2007/05/03(木) 18:57:50 ID:reukULfu
訂正:
× 工夫すれば暗電流は数μAに抑えられる
〇 工夫すれば明電流・暗電流とも数μAに抑えられる

暗電流だけ抑えてもしょうがなかった・・・

VDD----R1----VR-----+--ANPort
GND----R2----CdS----+

こんな感じにして、R1,R2を1MΩくらい、コンパレータのリファレンス電圧をVDD/2、VRをCdSの明抵抗と暗抵抗の中間にすれば、センス電流は最大でも数μAで済む。
ただしコンパレータ出力のソフト的なノイズ対策(例えばリファレンス電圧の一時的変更によるソフト的シュミットトリガ)は必須。
386774ワット発電中さん:2007/05/03(木) 19:20:26 ID:/dDUrTaF
5Vならだけど、
電池2本で動かすような場合は、貫通電流はそんなに心配するほどじゃないけどな
でもコンパレータとして使えば中途半端な電圧OKってのは不思議だね

あと、コンパレータ使って数uAってどうやるの?
内部で比較電圧作ると50uAくらい流れるよね。
比較電圧を外部で作るのかな?

まあ、アナログ部品が入ると省電力は難しい。
色々やってみるしかないからな。
387774ワット発電中さん:2007/05/03(木) 19:34:02 ID:RwtMEwpF
だんだん、高度なテクニックになってきましたよ。
sleep中にTIMER回して定期的に起こす。
そんでもって、コンデンサに充電し、放電時間をはかる。
省電力優先なら起こす時間を伸ばす。
てか、sleep中にTIMER動かすのは電気食い?
388774ワット発電中さん:2007/05/03(木) 19:35:02 ID:hopbAfxo

LEDを光センサーとして使うって一時期流行ったよねw
389774ワット発電中さん:2007/05/03(木) 19:50:05 ID:/dDUrTaF
>>387
コンパレータ使うには、比較用の電圧作るために内部に抵抗が必要で
それは 2K*24 か 2K*32 Ω なんで、この電流の事を考えると
32K内部発振持ってるPICなら 一定時間寝てた方が少しマシかも
390774ワット発電中さん:2007/05/03(木) 20:26:31 ID:reukULfu
>>386
数uAは外付回路の消費電流。その他に基準電圧が必要で、指摘のとおり内部生成すると数十uA食う。なので、タイムラグがあっても良いのならばWDT等で間欠的に起きてチェックするほうが平均消費電力が低くなるので第一候補・・・というのが>>384の趣旨。
WDTでも数uA〜10uA程度食うから、Ultra Low-Power Wake-Upが使える品種なら、そのほうがより低消費電流になる。

コンパレータとして使うと中途半端な電圧でもOKなのは、ポートをアナログ入力モードに設定するとデジタル入力バッファがOFFになって貫通電流が発生しなくなるから。
>>384で挙げたErrataは、そのデジタル入力バッファOFFのロジックにバグがあって特定条件で貫通電流が増えますよ、という内容。maxが1mA前後だからtypは0.2mAとかだとは思うが、それでも低クロックで動作し続けるより多い程度は流れるわけだ。

>>387
Sleep中はメインクロックが停止するので、タイマを回すには、セカンダリオシレータ(要32kHz水晶外付け)を使う必要がある。消費電流はWDTより僅かに少ない程度の違いしかないから、部品増やすよりWDTを使うほうが良いように思う。
391774ワット発電中さん:2007/05/03(木) 21:14:59 ID:/dDUrTaF
省エネを追求するなら

P1----CDS--+
          |   
          C
          |   
         GND

の方がいいかもしれない。
1、 普段はポートにLを出力して、おく
2、 ポートに t 時間Hを出す t =0.3*(C*R) RはCDSのスレッショルド抵抗値
3、 ポートを入力にしてポートの状態を見る Hならオン
4、 1に戻る

その後、アナログ値を読む時は

1、 普段はポートにLを出力して、おく
LP:
 2、 ポートに 1パルスHを出す
 3、 ポートを入力にしてポートの状態を見る H なら ループ終了
 4、 カウント
 5、 カウンタ値が255ならループ終了
6、 1に戻る

VRをCDSに直列につないでもいいし、VRも同じ方法で読めばいい。

短時間なら貫通電流も無視出来る
392774ワット発電中さん:2007/05/03(木) 21:41:37 ID:/dDUrTaF
× t =0.3*(C*R)
○ t =0.7*(C*R)  だ。

抵抗10K、コンデンサの値は 332(0.0033uF)とすると
CR=33uSec で 時間は 22uSECくらい


393774ワット発電中さん:2007/05/03(木) 22:23:45 ID:Bv2vK81X
入力のスレッショルド電圧にも依存するけどな。
せっかく溜めた電荷なんで、逆向きも活用して交互に動かしたほうが省エネかもな。
Cのリークが少ないということが前提だが

アナログ的な読み取りはポートがオープンドレインモードで'L'かHi-Zという
選択だと、'L'パルスのカウントにしないと
394774ワット発電中さん:2007/05/03(木) 22:44:12 ID:/dDUrTaF
まあね。 でも >>391にしておくと
Weak PullUp をONにして Hになるまでの時間を見るという方法も使える
ただ、バラツキが大きいのが困りものだが
395774ワット発電中さん:2007/05/03(木) 23:00:33 ID:Bv2vK81X
内蔵プルアップは相当いい加減だしなぁ
あと、RがでかすぎるとCのチャージを抜ききるまでの時間が問題になってくる
だろうから入力ポートをオープンドレインにするなどしてCを初期状態にもって
いかないといかんか
396774ワット発電中さん:2007/05/03(木) 23:10:01 ID:/dDUrTaF
確かに真っ暗でRが1MΩ越えてくると、入力端子の数ピコの容量が効いてくるから

1、 普段はポートにLを出力して、おく
2、 ポートに 0.7*(C*Rth) 時間Hを出す RthはCDSのスレッショルド抵抗値
3、 ポートを一瞬Lにする
4、 ポートを入力にしてポートの状態を見る Hならオン(明るい) Lなら暗い
5、 1に戻る

というふうに一度Lを出してやらないと誤動作するね
397774ワット発電中さん:2007/05/03(木) 23:17:59 ID:reukULfu
明るさを読み取るには、その辺が限度かな。
VRでプリセットしたスレッショルドに対して明/暗が分かれば良いだけなら、

P1-----1MΩ----VR-----+--P2
GND----1MΩ----CdS----+

と接続しておいて(P2はコンパレータ入力)、測定したいタイミングでP1⇒H、電圧リファレンスON、コンパレータON。
適当な時間(10us程度)置いてコンパレータ出力を読み取ったらP1⇒L、電圧リファレンスOFF、コンパレータOFF。

これだと、外付け回路・電圧リファレンス・コンパレータの合計で30uA食うとして、平均消費電流は>>392の定数の1/20くらいになる。ってまぁ、>>392のCが151なら同じになってしまうわけだが。
398774ワット発電中さん:2007/05/03(木) 23:40:12 ID:/dDUrTaF
絵で説明すると、 オープンコレクタ方式だと、回路はこうなる

P1---R---+---CDS-- +V
       |   
       C
       |   
      GND

P1をLにして Cを完全に放電してから、P1を入力ポートにして
 CDSを通してCno電圧がHになるまでの時間を測定するか
一定時間後のH/Lで判定する。

この方式でも、、CDSが高抵抗(暗い所)だと、Hまで長い時間かかるので
そうなると貫通電流の流れる時間が増えてしまうから、
一定時間でHにならないなら、P1を出力に換えてHを出力するという事になる
1回の測定でCにかかる電圧は0〜 +Vだけ振れる

P1----CDS--+
         |   
         C
         |   
        GND
こうして
普段はポートにLを出力しておき、測定する時 >>396の手順でチェックし
敷居値を超えて Hを検出したら、
そこから P1 にいLパルスを 出しては 入力ポートにして Lになるまでのパルス回数で数値化する方式なら
暗い時のCへのチャージ電圧は大きくないので、その分だけ省エネになるというわけ

399774ワット発電中さん:2007/05/03(木) 23:49:14 ID:/dDUrTaF
>>397 ちょっと考えてみたけど、
やっぱり1MΩはインピータンス高すぎて、電磁波ノイズ
ホコリや結露とかの影響受けやすいから、それは怖いよ
ノイズ対策の為に何度も計るなら、抵抗減らした方がいいという事になるしさ
400774ワット発電中さん:2007/05/03(木) 23:57:18 ID:PT6HmuhX
>>398
水を差すようだが>>372最初の条件から逸れてないか?
401774ワット発電中さん:2007/05/04(金) 00:01:30 ID:umZHp2vI
>>366 dクス なかなか すごい時計ですが・・・・腕がorz
402774ワット発電中さん:2007/05/04(金) 00:24:10 ID:o610Jgm2
>>398
確かに。分かりやすく1MΩにしたけど、30kΩでも総消費電流は3倍にもならないから、実際に使うときにはそのくらいまで下げたほうが現実的だね。
ここまでインピーダンス下げればセトリングタイムも減らせるから、平均消費電流はたいして変わらないわけだし。
403402:2007/05/04(金) 00:25:04 ID:o610Jgm2
>>399の間違いorz
404774ワット発電中さん:2007/05/04(金) 14:12:44 ID:6TvhBEgE
LinuxのPiklabでICD2+USB書き込みできてる人いますか?
Windows+ICD2+USBでは問題なく書き込めるのですが、Linux hostになると
piklab-progが

$ sudo piklab-prog -c program -p icd2 -d 30F2010 -t usb --target-self-powered pic30-ledtest.hex
Piklab version: 0.12.2 (rev. distribution)
programmer: icd2
device: 30F2010
port: usb
target-self-powered: true
libusb 0.1.12: using interrupt mode
Connecting ICD2 Programmer on USB Port with device 30F2010...
Error: USB Port: Error sending data (ep=1 res=-22) (err=error submitting URB: Invalid argument).

といって失敗します。pic30-gccでビルドまではできるので、なんとか
動かしてリモート開発できるようにしたいんですが・・・上のエラーに
あたったことがあって、解決できた!っていう人がいればアドバイス頂ければ。
405774ワット発電中さん:2007/05/05(土) 21:37:19 ID:7ucZL5tB
ゴールデンウィークの自由研究wに、PIC時計を作ってみることにした。
・・・が、ブレッドボードでの配線だけでメゲた。

とりあえず、PIC12F675(8ピンのやつ)1個だけで4桁時刻風の数字を表示するところまで
やってみたので報告。

ttp://panda.orz.hm/uploader_001/src/file93.jpg 製作開始
ttp://panda.orz.hm/uploader_001/src/file94.jpg ジャンパ使い果たした・・・
ttp://panda.orz.hm/uploader_001/src/file95.jpg 切ったパーツの足でジャンパ
ttp://panda.orz.hm/uploader_001/src/file96.jpg 多連LEDを切り離して使用
ttp://panda.orz.hm/uploader_001/src/file97.jpg LEDを載せてみた
ttp://panda.orz.hm/uploader_001/src/file107.jpg ひとまず配線完了
ttp://panda.orz.hm/uploader_001/src/file99.jpg 配線バグを取ったているうちに汚くなったw
ttp://panda.orz.hm/uploader_001/src/file100.jpg バグ取りを終えてPICも載せてみた
ttp://panda.orz.hm/uploader_001/src/file108.mpg 非常に暗いが一応カウントする
ttp://panda.orz.hm/uploader_001/src/file102.gif 最初の配線図
ttp://panda.orz.hm/uploader_001/src/file103.gif バグ取りを終えた配線図
ttp://panda.orz.hm/uploader_001/src/file104.txt まだ高速カウントアップだけのソースプログラム
ttp://panda.orz.hm/uploader_001/src/file105.txt 欲しい人がいるかどうか分からんけど一応HEXファイル
ttp://panda.orz.hm/uploader_001/src/file106.txt PIC出力と点灯するLEDの対応表(メモ)

外部バッファ(トランジスタ等)を使ってないのと安物の低輝度LEDを使ったので、表示は非常に暗いです。

一晩寝て元気が出たら、時計に仕上げてみよう。
406774ワット発電中さん:2007/05/06(日) 00:48:42 ID:sTespIba
作ってから回路図かいたよ。

ttp://panda.orz.hm/uploader_001/src/file125.gif 回路図はこんな感じでLEDだらけ

S1〜S3は時刻設定用の押しボタンスイッチ。ちょうどいいシンボルがなくて変なシンボルになってるけど。
407774ワット発電中さん:2007/05/06(日) 10:46:07 ID:0Ua7OzkN
7セグ使ってないとは頑張ったな
408774ワット発電中さん:2007/05/06(日) 11:35:49 ID:sTespIba
>>407
8ピンPICじゃポート足りなくて7セグ使えないんで。
409774ワット発電中さん:2007/05/06(日) 14:19:52 ID:J5pa3pp9
す、すげぇ
素直に18pin使えばいいものを
410774ワット発電中さん:2007/05/06(日) 18:21:41 ID:oAHObqLA
>>406
その点灯方法だと輝度のバラツキが気にならないか?
411774ワット発電中さん:2007/05/06(日) 19:35:47 ID:iBxU+X1E
8ピン(5ポート)で制御する事に意義があるんですよ。
412774ワット発電中さん:2007/05/06(日) 22:12:41 ID:sTespIba
>>410
正直かなり気になるが、回路のシンプルさを優先させてみた。

この駆動方法で発生する輝度のバラつきは次の2種類。

1. LED自体のVFのバラつきによるもの。
2. PICのVOH,VOLやD31〜D33のVFのバラつきによって発生する、「D1〜D20」「D21〜D25」「D26〜D30」の3グループそれぞれの駆動電圧のバラつきによるもの

このうち1.は、他のどんな駆動方法でも抵抗で電流制限すれば同様に発生する。
定電流駆動すればかなり解消できる。やってないけど。

2.はこの回路に特有のもので、グループ内の輝度は(上記1.の範囲内で)だいたい揃うが、グループ間の輝度は大きくバラついてしまう。
D31〜D33のVFでバイアス電位を与えるのではなく1.と同じく定電流源にすれば、グループ間の輝度のバラつきはかなり解消できるはず。やってないけど。

この場合でも「D21〜D25」と「D26〜D30」の駆動電流は「D1〜D20」と比較して少なくせざるを得ないが、それによる輝度差はダイナミック点灯の点灯時間の比率を増やすことでソフト的に補償できる。
413774ワット発電中さん:2007/05/06(日) 22:24:15 ID:sTespIba
AC100Vから50Hzを拾ってカウントするところまではできたから、あとは50Hz/60Hz判別と時刻設定モードの追加か。

いろいろ試してるうちに、プログラム/ベリファイはできてクロックの外部出力やMCLRも生きてるのにプログラムが実行されない状態になってしまった。
どうやら12F675のCPUコア(コード実行)部分のみが死んでしまったらしい。

こんな中途半端な死に方は初めてで、死んでることの確認にずいぶん手間が掛ってしまった。
12F675の買い置きがないんで、買い置きのある12F683(同じく8ピン)に変更して作業続行中。
414774ワット発電中さん:2007/05/06(日) 23:36:07 ID:LrJMXkO5
単純に電圧上げるだけじゃだめ?
415774ワット発電中さん:2007/05/07(月) 00:08:49 ID:pXfQlji2
>>414
D1〜D20を明るくする(=流す電流を増やす)だけなら、電流制限抵抗R1〜R5を減らせばOK。
例えばGP0=H、GP1=LにするとD1が点灯するが、R1とR2を減らせば電流が増えてD1は明るくなる。

このとき、D33の電圧降下(ダイオードドロップ)がR2の電圧降下より少ないとD26も同時に点灯してしまう。
この状態ではD1とD33を別々に点灯できないので、これを避けるため、D33の電圧降下はD1点灯時のR2の電圧降下より大きくしなければならない。

GP0=HにするとD26が点灯する。こちらもR1を減らすかD33の電圧降下を減らせば明るくなるが、上記条件を満たすとD1点灯時のD1の電流よりも少なくなる。
416774ワット発電中さん:2007/05/07(月) 00:09:51 ID:pXfQlji2
× この状態ではD1とD33を別々に点灯できないので
〇 この状態ではD1とD26を別々に点灯できないので
417774ワット発電中さん:2007/05/07(月) 00:25:06 ID:1+6anea1
>>413
ウオッチドッグがONになってるとか、ソース変に弄っちゃったとか
という可能性は?
418774ワット発電中さん:2007/05/07(月) 00:35:01 ID:pXfQlji2
>>417
アドバイスdクス

うpしたHEXを再書き込み⇒×
set_tris_a()とoutput_a()するだけのテストプログラム作成⇒×
同じテストプログラムを12F683用に再コンパイル⇒12F683で〇
同じ作成中プログラムを12F683用に再コンパイル⇒12F683で〇

だったので、ソースが原因ということは考えにくい。
ウォッチドッグはOPTION_REGでOFFにしてある&一瞬も動作しないので、こちらも考えにくい。
というところまで試して、12F675は飛んだものと判断しました。
419774ワット発電中さん:2007/05/07(月) 00:45:22 ID:es7N/eOY
もうすぐ12F683が壊れる
に1票
420774ワット発電中さん:2007/05/07(月) 01:13:36 ID:1+6anea1
>>418
>>406 の回路図、フォトカプラの発光側に逆向きにダイオード入れて
保護しないとフォトカプラ死ぬぞ。
逆耐圧はせいぜい5Vぐらいしかない筈。
421774ワット発電中さん:2007/05/07(月) 01:17:54 ID:rgObUH0W
>>418
最終アドレスにあるCaribデータ(0x34**)を失くしたんじゃないか?
(CALL 0x1FFF に対し RETLWが無いと無限ループ)
OSCCALのセンタ値は0x80だから最終アドレスに0x3480を入れてみるといいよ。
422774ワット発電中さん:2007/05/07(月) 01:36:32 ID:YG9dl8NJ
MPLAB 7.60リリースあげ

現在インスコ中
423774ワット発電中さん:2007/05/07(月) 01:49:49 ID:pXfQlji2
>>420
フォトカプラも適当なシンボルがなくてLED単方向のシンボルを入れてあるが、実際にはLEDが逆並列に入っているもの(AC入力用)を使っている。

>>421
それが、キャリブレーションデータもちゃんと入っているのです・・・
424774ワット発電中さん:2007/05/07(月) 02:30:59 ID:1+6anea1
>>423
了解。
うーん、後は、コンフィギュレーションのOSC設定とか、MCLR設定ぐらい
だし、LVPなんか出来ないし、その辺ミスってるとは思えんから、やはり
壊れたんかね?
余生はリセット付き発振器という事で。
425774ワット発電中さん:2007/05/07(月) 03:35:14 ID:l7XueLs/
>>423
たとえば数秒間ソフトウェアループを実行後Sleepを実行するようなプログラムを書いて
消費電流を測ってみる。

数秒後に消費電流が減少しなければ、プログラムが実行されていない。
プログラムの実行部あるいはMCLR付近、実行-書込み切り替え制御あたりの故障か…

数秒後に消費電流が減少すればプログラムは実行されている。
出力ポートの故障、TRIS制御付近の故障か…
426774ワット発電中さん:2007/05/07(月) 05:22:44 ID:es7N/eOY
MCLRがふらついてるとか
427774ワット発電中さん:2007/05/07(月) 08:48:45 ID:pXfQlji2
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0652.gif 最終的な回路はこんな感じ(ほとんど変わってない)
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0653.gif 配線図はこんな感じ(電源とフォトカプラ周辺は省略)
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0654.jpg 実物はこんな感じ
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0655.mpg 電源断⇒再投入の様子
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0656.c 最終的なソース
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0657.hex 12F675向けにコンパイルしたHEX
http://kossie.run.buttobi.net/cgi-bin/up/src/kos0658.hex 12F683向けにコンパイルしたHEX

ソフトの内容はこんな感じで一段落。

・時刻表示は0:00〜23:59の24時制表示
・SW1を1回押すと「時」設定モード
・もう1回押すと「分」設定モード
・もう1回押すと通常表示モード
・通常表示モードでは時刻表示の間のドット(「:」)を1Hzで点滅
・通常表示モードでSW2を押すとテストモードON/OFFを切り替え
・テストモードをONにすると、時刻のカウントアップが600倍速になる(「分」が0.1秒ごとに増える)
・設定モードでは「時」または「分」を点滅表示
・設定モードでSW2を押すと「時」または「分」を1つ増やす
・そのままSW2を押しつづけると、1秒後から0.2秒ごとに1つずつ増やす
・SW1,SW2の状態取得にチャタリング防止用の50msフィルタ
・AC電源からの基準クロックを(フォトカプラ経由で)取得
・基準クロック取得にノイズ防止用の3msフィルタ
・基準クロックが30ms取得できない場合、現在時刻をEEPROMに保存
・初期化時、EEPROMに現在時刻が保存されていたら、その時刻で初期化
・初期化時、バナー(「HELLO」)表示
・初期化時、実測した基準クロック周波数を表示
・初期化時、基準クロックの周波数(50Hz/60Hz/100Hz/120Hz)判別

12F675向けにコンパイルしたところ

| ROM used: 969 words (95%)
| Largest free fragment is 55
| RAM used: 34 (53%) at main() level
| 60 (94%) worst case
| Stack: 6 worst case (4 in main + 2 for interrupts)

と、ぎりぎりで収まった。(ただし動作確認は12F683)
アラームを付けたら多分収まらんかった。

AC電源からの信号入力の注意点をいくつか。

TLP521等の直流入力用のフォトカプラを使う場合、>>420の指摘のようにフォトカプラのLEDと逆並列にダイオードを入れること。
この場合、基準クロック周波数は50Hzまたは60Hzになる。

TLP626等の交流入力タイプを使う場合、逆並列ダイオードは不要。この場合、基準クロック周波数は100Hzまたは120Hzになる。

半波整流や全波整流後の脈流をフォトカプラに入れる場合、逆並列ダイオードは不要。ただし整流⇒ダイオード⇒コンデンサ平滑のようにダイオードを追加し、整流⇒ダイオードの間にフォトカプラを接続すること。
この場合、基準クロック周波数は半波整流時で50Hzまたは60Hz、全波整流時で100Hzまたは120Hzになる。

AC100Vを直接フォトカプラに入れる場合、R10は30K〜100Kくらい。小電流の割に抵抗での消費電力が多いので、定格電力に注意。
428774ワット発電中さん:2007/05/07(月) 09:04:02 ID:pXfQlji2
>>425
ライタでのフラッシュ/EEPROMの読み書きは正常なんで、電流を測るかわりにEEPROMに定数を書き込むプログラムを書き込んで電源を入れてみたが、EEPROMは書き換わらなかった。

>>426
MCLRをInternalにしても外部入力にしてプルアップしても状況は変わらず。OSCを外部出力しておいてMCLRをプルダウンするとOSCの外部出力が停止するので、MCLRの動作自体は正常っぽい。
429sage:2007/05/08(火) 00:23:47 ID:b10Axw89
430774ワット発電中さん:2007/05/08(火) 00:42:18 ID:HwIJ5tyG
その辺の話題は専用スレでどぞ。

http://science6.2ch.net/test/read.cgi/denki/1174224015/l50

kるいしさん亡き後、またマナーを語るDimen(ry現る。
431774ワット発電中さん:2007/05/08(火) 00:52:32 ID:4PUeMJVf
>>430
荒らすなバカ
432774ワット発電中さん:2007/05/08(火) 01:15:52 ID:7PXgOCQs
>>431

”軽蔑すべきときに軽蔑すべきものを軽蔑する勇気を持たないと、
自分自身を腐敗させ、台無しにしてしまうことになるのですから。”
433774ワット発電中さん:2007/05/08(火) 13:47:16 ID:vUjIsX4J
>>427
しっかし、よく8ピンPICでやったわなーwww
アセンブラじゃ発狂するねwwwwww
これはどのCだ?
ソースブースト?ハイテック?CCS?MIKROC?
434774ワット発電中さん:2007/05/08(火) 14:01:28 ID:AcHyFgg+
あーそういえばコンパイラ名書いてなかったね。
CCS-C V3.249(V3の最終バージョン)を使用。

固有ディレクティブ・関数を使いまくってるので、他のコンパイラではコンパイルできないと思う。
それどころか、CCS-CのV4でもダメかも。

まぁ、ソース見る物好きはいても追試する人はおらんだろうけどww
435774ワット発電中さん:2007/05/08(火) 18:46:40 ID:iHKtEWQD
最近はJALv2いじってるからCCS-Cはご無沙汰だな
相変わらずちょこまかバージョンアップしてるのか
436774ワット発電中さん:2007/05/08(火) 18:59:55 ID:iHKtEWQD
と思ったらVer4になってるのかよ
437774ワット発電中さん:2007/05/08(火) 19:26:30 ID:iHKtEWQD
なにげにCQのweb見たら今度はdsPICですか
http://www.cqpub.co.jp/toragi/TRBN/contents/2007/tr0706/omoteura.pdf
438774ワット発電中さん:2007/05/08(火) 20:07:56 ID:pdJSNIKL
439774ワット発電中さん:2007/05/08(火) 20:32:22 ID:iHKtEWQD
と思ったらDWMは25万『システム』ゲート=5万ゲート相当のFPGAか
これだけインフレ気味だと有り難いのか有り難みが無いのか...........
440774ワット発電中さん:2007/05/08(火) 21:31:23 ID:aF3QVSLB
MPLAB環境でCCSCコンパイラでプログラム造ってるんですけど、
#include<12F675.h> ←のようなデバイスのヘッダファイルが開けません
ソースがあるフォルダにこのファイルを入れれば開けるのですが、
元々このファイルはCコンパイラのフォルダに存在しており、
毎回デバイスが変わる毎にコピーしてくるのは面倒です
以前他のパソコンでプログラミングしていた時は、普通にそこからファイルを開いててくれたんですが
何故か今は開けないんのです…
ちなみにMPLABもコンパイラも最新板です
何故かわかる方はいらっしゃいますか?
441774ワット発電中さん:2007/05/08(火) 22:25:48 ID:AcHyFgg+
>>440
最新(Ver 4)だと違ってるかもしれんけど、Ver 3のCCS-Cコンパイラの場合、
C:\Program Files\PICC\ccsc.ini(標準インストールの場合)の中に

I="C:\PROGRA~1\PICC\devices\;C:\PROGRA~1\PICC\drivers\"

という行(標準インストールの場合)を入れておくと、そこで指定したフォルダが
システムインクルードファイルの検索先になる。
442774ワット発電中さん:2007/05/08(火) 22:53:54 ID:aF3QVSLB
>>441
レスありがとうございます
そんな設定方法があったなんて初めて聞きました
でも何故以前は何も設定した覚えが無いのに、ちゃんとそこから検索してたんでしょうねぇ…?
しかし今回に限らずMPLABやCコンパイラにはいつも何かにつまづいてしまいます

443774ワット発電中さん:2007/05/08(火) 23:27:38 ID:/QvM8Cr1
444774ワット発電中さん:2007/05/08(火) 23:45:07 ID:jgkpvKeY
>>443
けっこう前から気づいてたけど、ソフト次第だと思うお
XPortよりイージーにしてくんなきゃヤダい
TCP/IPスタックなんかでいらん苦労はしたくない
スクリプトチョイチョイでwebインターフェース作れたり、
仮想COMポートで何〜も考えずに制御したいんだよ
445443:2007/05/09(水) 00:00:15 ID:gbxh3/lC
>>444
でも買うんでしょ?
446405 ◆xcrOSgS2wY :2007/05/10(木) 18:35:20 ID:LpJAC/79
>>427の強引PIC時計を3日連続で動かしてみたが、誤差は1秒以内に収まってるみたいなんで、
基準クロックのカウントに境界バグはなかったようだ。

次は便所紙引き出し長さアラームを作ろうと思っている。
家族に、音が響くほどのすごい勢いで便所紙を引き出すやつがいるんで、何とかならんかとww

構成は>>372-402のようにCdSで入室(照明点灯)検知、フォトインタラプタで便所紙引出し量検知、
スピーカでアラーム(20cmごとにビープ、1mごとに長さを読み上げ(「いちめーとる!」等))、
リチウムボタン電池1個で1年以上動作が目標。

読み上げデータを格納するメモリ容量を考えると、今度は8ピンPICが使えなさそうなのが残念。
447SOS:2007/05/10(木) 21:51:30 ID:oUsSx5wK
あわわ PIC16F88がとても熱くなります!
とりあえず考えられる原因は何でしょうか?
お願いします!
448405 ◆xcrOSgS2wY :2007/05/10(木) 21:57:56 ID:LpJAC/79
>>447
・出力ピンにGND/VDDに接続している、LED等を接続して電流制限をしていない
・入力ピンにVDD超/GND未満を入力している、すごいノイズを入れてラッチアップ
あたりでは
449774ワット発電中さん:2007/05/10(木) 22:02:37 ID:psTmId3L
裸にしたらどうよ?
450SOS:2007/05/10(木) 22:15:20 ID:oUsSx5wK
さんくすです。
正常に動作してたんですが・・・
どこかがショートしたんでしょうか・・
451SOS:2007/05/11(金) 07:46:21 ID:Ziuk44RL
picが壊れてるのかな?
壊れたpicに電流を流すと熱くなるんですか?
452774ワット発電中さん:2007/05/11(金) 10:39:42 ID:Ur2uvrHU
ボリューム式の可変電源を使っていてガリオームで
一瞬、過電圧が入ったとか
453451:2007/05/11(金) 10:57:53 ID:Ziuk44RL
>>452
・・・もしかすると、一瞬10V入ったかも デス。
それでもその後も使用してて、熱くはならなかったのですが。
454774ワット発電中さん:2007/05/11(金) 13:21:27 ID:EgyEObPm
それやって 砕けちった

換えてみればぁ すぐわかる
455774ワット発電中さん:2007/05/11(金) 13:45:07 ID:MBoCEa0Z
DEATH
456451:2007/05/11(金) 14:53:24 ID:Ziuk44RL
換えてみてまた熱くなるとコワイノデス。
つまり回路のせいだったら・・・
(何度も見直したのですが)

PICって壊れると熱くなる可能性があるのでしょうか?
457774ワット発電中さん:2007/05/11(金) 14:54:27 ID:T4dmh+JM
質問者が「・・・もしかすると」って言う時は
たいていの場合「絶対に」に置き換えた方が
正確な意味になる。
458774ワット発電中さん:2007/05/11(金) 14:56:29 ID:T4dmh+JM
>456
壊れ方によるだろ。
内部の数ミクロンの配線のどこか一カ所が死んでも
常時短絡する制御に化けることだってあり得る。
459774ワット発電中さん:2007/05/11(金) 15:10:11 ID:Bup6/CLM
>>456
ここで回路もソフトも現状の実装状態も示さないでこれ以上聞いても、
 交換してOKならPICが故障してた。
 交換してもNGならソフトかPIC以外のハードの異常か設計ミス。
としか言えない。

ちょっと熱もつぐらいの短時間ならそうそう壊れないから、捨てるつもりで
思い切ってやって原因を切り分けるか、前述のとおり何もかも曝け出すか
どちらかだ。
460774ワット発電中さん:2007/05/11(金) 15:31:45 ID:EgyEObPm
ブレッドボードみたいなもんで 単品でテスト

16F88だったら電源つなげれば動くようにできる
テストプログラムでもつくりゃ切り分けできるでしょ
461774ワット発電中さん:2007/05/11(金) 17:34:35 ID:Ur2uvrHU
たとえばPWM前提の回路がHになりぱっなしだと壊れるのは出力側だし
ソフトが原因でPICが熱くなるのは考えにくい。
448さんの指摘ぽいかな
462774ワット発電中さん:2007/05/11(金) 17:45:02 ID:q43Z/Q4U
内部プルアップって間違って出力ポートに設定しちまった時
どうなるんだっけ?

俺は色々ミスの原因になりやすいので内部プルアップは
一切使ってないからわからんのだが。
463774ワット発電中さん:2007/05/11(金) 18:08:04 ID:aTMCDODU
>>462
データシートのブロック図を見ればわかるけど、
プルアップ設定ビットとTRISの該当ビットのANDをとってるから
出力モードのときはプルアップが自動的に切れる。
仮に出力でプルアップが動作しても弱いからたぶん問題ない。
464774ワット発電中さん:2007/05/11(金) 18:58:24 ID:9Zf+zFZO
>456
>459の言うとおり。だけど一応質問だけには答えておこう。

> PICって壊れると熱くなる可能性があるのでしょうか?
ある。以前熱くなる以外は正常動作する殺し方をしたことがある。
465774ワット発電中さん:2007/05/11(金) 19:44:03 ID:+tq/VZu8
PIC内蔵のEEPROMってページ書き込みとか出来ます?
大量のデータをいっぺんに書きたいんですけど、
8バイトずつだと書き込み制限回数に到達してしまいそうで…
466774ワット発電中さん:2007/05/11(金) 20:33:35 ID:9Zf+zFZO
>465
データEEPROMの事?少なくとも自分はページ書き込みがあるという話は
聞いたこと無いな。まぁ、データEEPROMは型番によって書き込み手順が
若干違うからなんともいえないけど・・・

そもそも大量のデータって・・・容量的に内蔵のEEPROMで足りるの?
467774ワット発電中さん:2007/05/11(金) 20:37:01 ID:9Zf+zFZO
・・・の前に内蔵EEPROMに入りきらないデータって・・・保持するための
RAMがないか・・・
468774ワット発電中さん:2007/05/11(金) 21:10:50 ID:swnkj4Cq
>>465
それはプログラムコード用フラッシュのことだね。

多分仕様を誤解してるのだと思うのだが、書き込み制限回数が(たとえば)
100万回というのは、各セル(各ワード)ごとに書き込み回数がその回数までに
制限されるということで、全セルの延べ書き込み回数のことではない。

なので、特定の4ワードだけ消して書いて・・・を繰り返した場合、その4ワードの
書き込み耐用回数はどんどん減っていくが、他のアドレスのメモリの耐用回数は
残っている。

ただし、PIC16F88のように消去と書き込みのワード数が異なる場合、4ワードだけ
消して書いて・・・のつもりでも、その4ワード以外の部分まで同時に消去して
しまうので、その「4ワード以外の部分」の耐用回数も同時に減ることになる。

「ページ」という表現はPIC16シリーズの仕様書には出てこない(かわりに
「ブロック」という表現が時々出てくる)が、あえて使うとすれば、PIC16F87XAは
1ページ4ワード構成、PIC16F87/88やPIC18Fシリーズの一部(全部は知らんので)は
1ページ32ワード構成ということになる。
469774ワット発電中さん:2007/05/11(金) 22:13:50 ID:+tq/VZu8
>>466
>>468
レスどうもです

今まで外部EEPROMでI2Cで書き込みしてたんですが、結構頻繁にライトするので書き込み回数を減らすために
バイトでは無く、ページ書き込みしてたんです。
1バイトじゃなく、64バイト単位など連続送信してストップコンディションを出してました。
今度は外部じゃなくてマイコン内蔵のEEPROMを使おうって事になりまして、PICを使う事にしました。
PICではまだ内蔵EEPROMの書き込みはやった事が無いので、仕様がよくわかってないのかもしれません。
チンプンカンプンな事を言ってるのかもしれませんが…
470774ワット発電中さん:2007/05/11(金) 23:02:53 ID:gEH+Fn1A
>469
言いたいことはよく分かるよ。
で、PICのデータEEPROMにもフラッシュプログラムメモリにもI2CシリアルEEPROM
のページライトに相当する書き込み方法は(多分)ない。

データを保存するのにデータEEPROMを使うことも出来るしフラッシュプログラムメモリ
に定数を保存するのも問題ない。

フラッシュプログラムメモリにデータを保存する場合、>468の言うように書き込み回数
制限は全セルの延べ書き込み回数ではない。

データEEPROMにデータを保存する場合の書き込み回数制限も同様で各Byteごとの
回数が問題になる。
ttp://www.fsinet.or.jp/~mad/0026.htm

というわけでライトの回数を減らす目的がデータEEPROM(またはフラッシュプログラム
メモリ)の寿命を延ばすことにあるならページライトをする必要は無い。
一方、書き込みの実行速度の方に問題があるとするなら、素直にI2CシリアルEEPROM
を使ったほうがいいと思う。
471774ワット発電中さん:2007/05/11(金) 23:10:25 ID:swnkj4Cq
>>469
データEEPROMのことであれば、こちらは1バイト=1ページなので、特定の1バイトだけ
書き込みを繰り返すとその1バイトが使えなくなるだけで、他のバイトには影響しない。

ただ、もともと単体のシリアルEEPROMと比較してPIC内蔵のデータEEPROMの書き込み
耐用回数は1桁〜2桁少ないので、その回数が問題になるような使い方をするのであれば
何らかのウェアレベリングは必要だろうし、場合によっては外付けEEPROMを選択せざるを
得ないかもしれない。
472774ワット発電中さん:2007/05/11(金) 23:58:18 ID:YsAEnH7z
横槍ですまんが、データEEPROMとフラッシュプログラムメモリは何が違うの?
PICのEEPROMエリアって同じフラッシュメモリの中にあるんじゃなかったっけ?0x2100番地?とかにある
プログラムメモリに書き込めるってのは、プログラム領域にデータをいつでも書き込めるって事?

そんな事できんの?
473774ワット発電中さん:2007/05/12(土) 00:03:15 ID:swnkj4Cq
PICのフラッシュプログラムメモリとデータEEPROMは、チップの物理構造上もソフトウェア的な
構造上も全く別の場所にあり、アクセス方法も全く違う。

HEXでデータEEPROM用のデータを0x2100〜に置くのは、1つのHEXデータでプログラムと
EEPROMデータの両方を表現するための便法に過ぎない。PICライタはそのHEXデータを
読んで、プログラムメモリのデータとデータEEPROM用データを区別して、それぞれ別々の
方法でPICに書き込む。
474774ワット発電中さん:2007/05/12(土) 00:03:42 ID:VqWFxrJi
>>456
各ポート全てに、抵抗入れろ。
発熱が止まったところが原因の周辺。


W
475774ワット発電中さん:2007/05/12(土) 00:06:57 ID:swnkj4Cq
VDDとGNDに抵抗入れたら発熱止まったヨ!
476774ワット発電中さん:2007/05/12(土) 00:08:15 ID:s+jMWYXD
>472
> プログラムメモリに書き込めるってのは、プログラム領域にデータをいつでも書き込めるって事?
そのはず。といっても自分は使ったこと無いんだけど・・・
本来はフォームウェアのアップデートとかに使う機能なんだと思う。多分秋月ライタのVer.4
基板上の877とかはこの機能でフォームウェアの書き換えをしてるんだと思う。
477405 ◆xcrOSgS2wY :2007/05/12(土) 00:19:44 ID:+q/whFFb
8kHz, 8bitの音声データを8kHz, 3bitに間引いて再生してみたが、データの品質が悪い上に
圧電スピーカだと周波数特性のピークが強すぎ、電磁スピーカだと出力が足りなくて
音が小さすぎ。

PIC12F683と圧電スピーカがあれば試せるんで、誰か聞き取りを試してもらえんかな?

ttp://panda.orz.hm/uploader_001/src/file315.gif 回路図w
ttp://panda.orz.hm/uploader_001/src/file316.txt 音声風の音を出すプログラムHEX
ttp://panda.orz.hm/uploader_001/src/file317.txt 音声風の音を出すCプログラムソース(CCS-C V3)
478774ワット発電中さん:2007/05/12(土) 00:30:37 ID:+q/whFFb
ttp://panda.orz.hm/uploader_001/src/file318.wav 3bitに間引いたデータをwav化すると、これ

PICのプログラムで3bit⇒8bitにデコードした結果が上のwavと一致することは確認済。
アラームはビープだけにするのが無難だろうか。(それなら12F683で収まりそうだしww)
479774ワット発電中さん:2007/05/12(土) 00:46:17 ID:WEni6wfZ
>>478 Σ(゚Д゚;エーッ! ! まぢかよwww

ちょっとPIC買ってくる
480774ワット発電中さん:2007/05/12(土) 01:11:10 ID:s+jMWYXD
>478
PICとブレットボードはあるけど、圧電スピーカーがないよ。しょうがないから
普通のスピーカつなげてみた・・・

み゛ゅみ゛ゅみ゛ゅみ゛ゅみ゛ゅみ゛ゅ・・・

としか聞こえない・・・orz
代わりにオシロで波形を見てみた。なんていうか3bitだなって感じだった。

まぁ、PICで音声出力って結構大変ですよね。かといってビープだけに
するんなら発振回路内蔵のブザーでよいわけで、それだとつまらないし。
481774ワット発電中さん:2007/05/12(土) 01:48:55 ID:LIAyh/15
ポートと圧電SPの間に簡単なハイカットフィルタ入れるといいんじゃね?
(さすがに普通のSPでは駆動しきれないとおもうけど・・)

音声なら数KHzカットでいいかな。
回路図では既に3KΩの抵抗が入っているから、
圧電SPとパラに 0.1uF のコンデンサ(とりあえずセラコン)追加してみたらどう?
482774ワット発電中さん:2007/05/12(土) 11:07:01 ID:B3za7sqG
素人な質問ですいませんが、インサーキットデバッガとインサーキットエミュレータの違いって何ですか?
483774ワット発電中さん:2007/05/12(土) 12:07:56 ID:qjSkxf4Q
>>478
codecで再生すると4kHz以上を綺麗にカットしてくれるけど
PWMではそのサンプリング周波数がもろに聞こえてしまうからね
484774ワット発電中さん:2007/05/12(土) 12:11:23 ID:J0ka/NJs
インサーキット=実物の回路(ボード)上で、

・デバッグができる -> ICD
・エミュレータを動かす -> ICE

後者はチップそのものをエミュレータで代替する方式で、応用の
1つとして、エミュレータを介したハード・ソフトのデバッグがある。

前者は「デバッグができる」ようにするだけで、その方法は規定してない。
モニタ方式でやってもICDだし、オンチップのデバッグサポート機能で
実現するのもICD。ICEでICDもできる。しかし、どちらもデバッグ関係で
常用される用語なので、最後のはあまり言われず、

 ICD = ICE でない方法によるインサーキットのデバッグ技術

という風に使われてると理解してる。

つまり、ICEはある(かなり強力な)手法の呼称で、一方のICDは
実回路上でのデバッグ、という作業についての呼称で、似て非なるもの。
485774ワット発電中さん:2007/05/12(土) 12:16:29 ID:BwT5FUTr
PICの出力ピンの電圧って幾らなんですか
4V駆動のFETを直に作動させようと思っているのですが
大丈夫でしょうか。やはり間にもう一つトランジスタを挟まないと無理でしょうか
486774ワット発電中さん:2007/05/12(土) 12:21:28 ID:qjSkxf4Q
>>485 オープンドレインでない端子で、かつ負荷が十分小さいなら 
H出力の時はほぼ電源電圧、Lならほぼ0V

電源に5Vを採用してるなら、最近のFETなら十分にオンオフ出来る。
12Vくらいの電源持っているとかでないなら、トランジスタを入れると逆効果
487774ワット発電中さん:2007/05/12(土) 12:25:32 ID:4P4l7v9w
大抵はPICの出力段のドロップより電源に付けてる三端子レギュの誤差の方が大きいよ
488774ワット発電中さん:2007/05/12(土) 12:34:48 ID:B3za7sqG
>>484
すいませんまだイマイチよくわかりません
実機上でデバッグするのはどっちも同じなんですよね?
マイコンチップの替わりに動くのも同じですよね?
何が違うんでしょうか?

というのも、マイクロチップの製品でICDとICEがあって、ICEはICDに比べて格段に高いんです
でもどっちもリアルタイムでデバッグできると説明があります
素人なので何が違うかわからないんです


489774ワット発電中さん:2007/05/12(土) 12:38:09 ID:aH9D+9fo
>>484

商標の問題だけなんじゃないのか

オシロスコープをシンクロスコープって言うのとかわらんのじゃないか
490774ワット発電中さん:2007/05/12(土) 12:40:39 ID:BwT5FUTr
分かりました。 4V駆動と書いてあるFETを買って
試してみます。
491774ワット発電中さん:2007/05/12(土) 12:43:50 ID:wdGkbDIL
スイッチングさせるなら抵抗かましといたほうがいいぞ
492774ワット発電中さん:2007/05/12(土) 13:03:18 ID:KA3hIs3I
>>488
機能を比較してみればいいんじゃない?
たぶんICEはリアルタイムで命令トレースができるとか違いがあると思うよ。
あと、マイクロチップの言うICDはマイコンに内蔵されたデバッグ機能を使って
チップを取り外したりせずデバッグできるようにするツールのことだと思う。
493774ワット発電中さん:2007/05/12(土) 14:18:17 ID:Rl9vCr23
乱暴なこと言うと、ICEは高級で高価な(数十万〜数百万)、ICDはお手軽で
安価な(数千円〜数十万)デバッガ(w。実際は接続形態が違ってて、ICEは
ターゲット(デバッグ対象のボード)からCPUを取り外して、それと置き換え
るように取り付ける。それに対して、Microchipの言うICDは元のCPUを取り
付けたまま、それに内蔵された機能と数本の信号線を使ってデバッグを行う。

ICEのCPUのかわりに取り付ける部分(プローブって呼ぶ)は、ターゲット
から見ると動作からピン配列、電気的な特性まで、本来のCPUとほぼ同じに
なってる。ターゲットの回路の中で、本来のCPUの動作をエミュレートする
からIn Circuit Emulatorって呼ぶわけだ(この各CPU固有の動作をさせる
ため、ICE側に取り付ける回路をポッドって呼ぶ)。
もちろん同じ動作をするだけじゃ意味が無いわけで、デバッグのために、
動作の停止やステップ実行ができたり、メモリの内容を覗けたり、
プログラムのトレース(コード実行の履歴を取る事)ができたり、
ROMやRAMの存在をエミュレートしてデバッグ中のコードをダウンロード
できたりする。

ICDの場合も同じようなことは出来るんだけど、CPU内のデバッグ用回路を
使うから、ブレークポイントの数が限られるとか、複雑な条件でのブレークが
設定できないとか、トレースが取れないとか、いろんな制約が多い。
あと、ICEは未完成なターゲットでハードのデバッグをするのにも使えるけど、
ICDはターゲットのハードウェアがきちんと動作するのが前提になる、
っていう違いもある(そうとは限らない事もあるけど)。

で、もともとはCPUを置き換えるものだけをICEって呼んでたんだけど、
CPUは外さずにターゲットのROMのソケットとCPUの数本の信号線だけを
接続する形態のデバッガがROM ICEって名前で製品化されたり、あるいは
JTAGっていうシリアルポートを使って接続する(ICDとほぼ同じ構成の)
ものをJTAG ICEって呼んだりして区別が付かなくなってる。なので本来の
高級品ICEのことはハードICEって呼ぶようになってます。

最近はCPUがいちいち取り外せないだとか、動作速度が上がってハードICEの
設計が困難になったとか諸々の事情でICDのような形態が主流になってます。
安いしね。
長文スマソ。
494774ワット発電中さん:2007/05/12(土) 14:32:51 ID:Xx1Sljpr
>>488
長いので>>493は読まずにレスすると、

>マイコンチップの替わりに動くのも同じですよね?

いや、それは同じじゃないと>>484氏も書いている。

>モニタ方式でやってもICDだし、オンチップのデバッグサポート機能で
>実現するのもICD。

これはいずれもマイコンチップ自体が動く。
495774ワット発電中さん:2007/05/12(土) 14:49:28 ID:oYelPUhg
ICE=電動こけし
ICD=電動バイブ
496774ワット発電中さん:2007/05/12(土) 15:13:36 ID:Xpwty05D
ぶっちゃけMPLABのデバッガで十分じゃね?

ICEなんて使う程大規模なプログラムなんて造らないし
12とか16じゃ絶対必要ないな
18とか24シリーズは知らんけど
497774ワット発電中さん:2007/05/12(土) 17:25:14 ID:jMxenczQ
最近TOP-GUNの話を出すと「古っー!」って言われるんだよね。

例の「ミサイルに頼りすぎて空中戦の戦闘能力が低下…云々」にたとえて
「デバッガに頼りすぎるとプログラミング能力が…」ってな話をすると。
498774ワット発電中さん:2007/05/12(土) 17:35:15 ID:4P4l7v9w
最後の有人デバッガ登場!
499774ワット発電中さん:2007/05/12(土) 18:30:27 ID:wMG3Muaq
>>497
今日のスターチャンネルでやるよ
500774ワット発電中さん:2007/05/12(土) 18:59:47 ID:+q/whFFb
ICDはデバッグ用ポートを開けなければ使用できないので、PICのピンを使い尽くした
状態で実環境デバッグを行うにはICEが必須。
まぁ10万セットとか出荷される製品作るんだったらICE買ってもいいんじゃない。
501774ワット発電中さん:2007/05/12(土) 19:29:06 ID:qjSkxf4Q
10万台とかだと、開発コストは1台10円も出せないだろ
502774ワット発電中さん:2007/05/12(土) 21:31:49 ID:sEY55vWt
C18で18F2450のプログラミングをしてるんだけど、
突如こんなエラーが出るようになってた。
最後に使った2ヶ月前は正常にコンパイルできたはずなんだが・・・

unable to locate 'p18f2450.h'
503774ワット発電中さん:2007/05/12(土) 22:15:49 ID:sEY55vWt
とりあえず再インストールで回避できた
しょっちゅうこんな状態になったら厄介だな
504774ワット発電中さん:2007/05/13(日) 01:44:32 ID:iWodQCqz
>>502
環境変数 INCLUDE が、何か他のコンパイラ入れたら書き換わったとかあなんとか。
505774ワット発電中さん:2007/05/13(日) 02:22:17 ID:yhdquzp/
おいおい、君もマナー教室かよ。
軽石@日シ相の近藤みたいに技術的に行き詰まったやつの方向性はいっしょってことやね。
駆るさん、後継者がしっかり育ってますよ。
安心してコミケに通ってください。


From: <dimension4500c>
To: "[email protected]" <[email protected]>


■PIC-ML活用法→ http://www.mars.dti.ne.jp/~itow/PIC/

経営手腕と技術者のスキルは別の才能が必要とは思いますが、
できれば、技術MLでは自営の話は避けて、こちらでお願いできませんか?

自営業 悩みごと相談室 6
http://science4.2ch.net/test/read.cgi/denki/1126195730/l50

ここでは活発な意見交換がされているようです。

dimension
506774ワット発電中さん:2007/05/13(日) 02:25:11 ID:4aI5ppvE
>>480
その「み゛ゅみ゛ゅみ゛ゅ」は再生音の最後の部分をリピートしているせいで生じている。
最初の「み゛ゅ」までが再生音の本体なんだが・・・声に聞こえんねorz

>>481>>483
確かにそうですね。
ちゅうわけで、4kHzと2kHzの正弦波風の波形を再生するプログラムを作成して、
Cの追加による4kHz以上カットの効果を実験。

ttp://panda.orz.hm/uploader_001/src/file348.gif 波形 4kHz C追加なし
ttp://panda.orz.hm/uploader_001/src/file349.gif 波形 4kHz 0.1uF追加
ttp://panda.orz.hm/uploader_001/src/file350.gif 波形 4kHz 0.2uF追加
ttp://panda.orz.hm/uploader_001/src/file351.gif 波形 4kHz 0.3uF追加
ttp://panda.orz.hm/uploader_001/src/file352.gif 波形 2kHz C追加なし
ttp://panda.orz.hm/uploader_001/src/file353.gif 波形 2kHz 0.1uF追加
ttp://panda.orz.hm/uploader_001/src/file357.gif 波形 2kHz 0.2uF追加
ttp://panda.orz.hm/uploader_001/src/file358.gif 波形 2kHz 0.3uF追加
ttp://panda.orz.hm/uploader_001/src/file356.txt 4kHz/2kHz再生プログラムHEX

・・・どの容量を追加しても、4kHzのp-pレベルは2kHz時の半分orz

って、もともと直列抵抗の3kΩ自体が、圧電スピーカの容量に対して4kHzカットオフになるように
決めた値で、一次CRフィルタだからどう変えても-3db/octで当然なのだが。
507405 ◆xcrOSgS2wY :2007/05/13(日) 02:31:10 ID:4aI5ppvE
おっと、4kHz/2kHz再生プログラムHEXの使い方を書き忘れていた。

PIC12F683を使用。再生は前の音声風再生回路と同じく、GP2(ピン5)−3kΩ−圧電スピーカ−GND。
GP5(ピン2)をHにすると4kHz再生、Lにすると2kHz再生。

一次CRフィルタで効果を上げるには、もっとサンプリング周波数を上げて1/2fsを稼ぐしかないか。
508774ワット発電中さん:2007/05/13(日) 02:33:04 ID:4aI5ppvE
連続スマソ

オシロ観測のトリガ用に、出力波形と同期したパルスをGP0(ピン7)から出している。
出力波形はガチャガチャに乱れていてトリガが取りにくいので、GP0でトリガするのが吉。
509774ワット発電中さん:2007/05/13(日) 13:18:14 ID:62qeoqkL
キター とか言ってる?
PSoCで2500Hz位を肩にした2次のLPF組んで通してやったらだいぶ綺麗に聞こえたから
(USBからプログラマ経由で電源もらってるせいか、サーッというノイズはでかいが)
フィルタの次数上げてみるのも良いかも
510774ワット発電中さん:2007/05/13(日) 14:36:42 ID:4aI5ppvE
>>509
正解です。
いい歳こいた男がマイクに向かって「キター」とか吹き込んでる姿はかなり寒かったorz
フィルタ次数上げれば効果的というのが分かったのは、せめてもの慰め・・・

「サー」が多いのは3bit圧縮で標本化ノイズが激増しているせい。再生長が短すぎる(0.4秒)のも
分かりづらい理由なんだろうな。

PIC12F683の容量では3bitサンプルでも0.5秒までしかデータが入らないので、次はPIC16F88を
使ってみるか。これなら8ビットサンプルでも1秒は入るし、同じ3bitサンプルでよければ2秒入る。
511774ワット発電中さん:2007/05/13(日) 16:20:49 ID:EH/x060J
CODECのLPFはFIRの強力なのが入ってるから、それ相当の音を出すのは大変だよ

PWMを使うより、インターバル割り込み周波数を最大にして、
http://www.tensyo.com/urame/prog/ALGO.HTM
>DDA:累加算によるPWMアルゴリズム
でやってみたらどう?
メモリに加算しては、上位ビットなりキャリーフラグなりを見てポートに出すだけだからさ

音量が足りないなら、圧電スピーカーをポート2本でコンプリメンタリに駆動してやれば電圧が倍に出来る

もっともサンプルレートを上げた分、自前でLPFを実装してやらないといけないのが厳しいかな
512774ワット発電中さん:2007/05/13(日) 17:25:35 ID:4aI5ppvE
>>511 トンクス
現在の3bitデータのデコード速度が既にサンプル周期125us(毎秒8kサンプル)で精一杯。
コード最適化(≒フルアセンブラ化)しても、現在のPWM周期(16us)を上回る速度で
データ出力するのは無理っぽい。
8MHz駆動のPICだと16usで32命令しか実行できないので。

コンプリ駆動については、コンパレータを使えばハード側のみで処理できるので、
音質(S/N)の問題が片付いたらやってみようと思っている。
513774ワット発電中さん:2007/05/13(日) 17:59:37 ID:62qeoqkL
>>510
無音の時に(まだwav再生していないときに)出てしまってるサーッ音
なんで、完全にPSoC側の責任(つか、電源の責任か?)っす
音自体はだいぶきれいに高い音が消えてたから、少し次数稼いでやれば
良い感じかも。オペアンプちょっと奢って作ってみたら?
514774ワット発電中さん:2007/05/13(日) 18:12:39 ID:aIbFR0HK
>>512
>506 の再生サンプリングって何kHzなの?
515774ワット発電中さん:2007/05/13(日) 18:19:47 ID:QPhgt74E
3bitサンプルってどういうことやってるの?
516774ワット発電中さん:2007/05/13(日) 18:56:46 ID:iWodQCqz
>>515
全体を7等分するんじゃないの?


517774ワット発電中さん:2007/05/13(日) 19:54:12 ID:/tLuhqvT
>ICDはデバッグ用ポートを開けなければ使用できないので、PICのピンを使い尽くした
状態で実環境デバッグを行うにはICEが必須。
まぁ10万セットとか出荷される製品作るんだったらICE買ってもいいんじゃない。

ボケがいらぁ
PIN数の多いもので全品チェックしなければならないような自体はそもそも無い。
PINすうの少ないものならPIN数の多いパーツを使えば済むこと

ICD2は無敵なのら
518774ワット発電中さん:2007/05/13(日) 20:21:19 ID:QPhgt74E
Pickit2 Ver.2.2 って不安定だよなぁ。
16F819のConfigが書き込めてないことがよくあるし、プログレスバーが止まって、応答なしになるし。
Ver1.21では問題なく動くけど、対応してないPICもあるからな。
519774ワット発電中さん:2007/05/13(日) 21:18:49 ID:4aI5ppvE
>>513
なるほど。
音声再生そのものが目的ならオペアンプ入れるなりするのですが、>>405の無理矢理時計と同様に、
>>446の便所紙アラームを最小部品数(できれば多ピン品はPIC 1個)で作りたく、
その構成要素として音声再生が現実的かどうか試しているという段階なので、ひとまず
PIC単体でできそうな線から試してみたいと思ってます。

>>514
元データは8kHz 8bitリニア(64kbps)でサンプリングしたもので、それを8kHz 6bitリニアに落としてから
8kHz 3bit(24kbps)にエンコードしています。

>>515
不等幅DPCM(サンプル間の凾±1,±4,±8,±16のうち1つで表現)です。デコードすると
8kHz 6bitリニアのデータになります。
ITU-T G.726のADPCMにすれば同じビットレートでも遥かに良い音質になるのですが、クロック8MHzの
PICでデコードするとおそらく毎秒2kサンプルくらいしかデコードできないので諦めました。
520774ワット発電中さん:2007/05/13(日) 22:11:24 ID:U92wEv12
どうでもいいことなんだけど、
「なのら」のは元ネタは何?
40過ぎで語尾になのらを付けるおっさんがいて、
以前から気になってるんだが..
521774ワット発電中さん:2007/05/13(日) 22:20:11 ID:iWodQCqz
>>520
まことちゃんじゃないの?
522774ワット発電中さん:2007/05/13(日) 22:21:27 ID:Kjf6n6Lt
バカボンか何か あれは「何々ナノダ」か
523熱暴走 ◆2SA784NN.A :2007/05/13(日) 23:10:39 ID:bLjaqa5x
>>506
>・・・どの容量を追加しても、4kHzのp-pレベルは2kHz時の半分orz
PWMのピリオドが64(±32)で、DPCMテーブルの最大値が±16だと、
8kHzサンプリングで4kHz再生すると +16 -16 +16 -16 …で、2kHz再生
すると+16 +16 -16 -16 +16 +16 -16 -16… となるからレベル半分に
なるのは理にかなってると思うけど。
524774ワット発電中さん:2007/05/13(日) 23:33:35 ID:QPhgt74E
つまりLPFとして機能していないと。
525774ワット発電中さん:2007/05/13(日) 23:35:45 ID:QPhgt74E
てかEEPROMとセラロックつけようぜ
聞けたもんじゃないだろ
526774ワット発電中さん:2007/05/13(日) 23:52:33 ID:V8a7ba7t
3bit PCMで音になるの? 意外・・・
ADPCMみたいなものかと思ったよ。

>>512
普通コンパレータはオープンコレクタ出力だから、オペアンプをお勧めする。
527774ワット発電中さん:2007/05/14(月) 00:05:54 ID:0hdZzf7A
魔法使いサリーちゃんのパパなのら〜
528774ワット発電中さん:2007/05/14(月) 01:12:11 ID:U1Sg4gfC
>>523
確かに!
で、指摘されて気付いたのですが、>>519の回答間違っていました。
8kHzサンプリングなのは「キター」のほうで、>>506の4kHz/2kHz正弦波のほうは
125kHzサンプリング・6bitリニア(4kHzの場合)でした。

>>526
アドバイスども。
外付けなしで済ませたいので、使用するのはPIC内蔵のコンパレータモジュールです。
このコンパレータはトーテムポール出力なので吐き出しも吸い込みもOKです。
529熱暴走 ◆2SA784NN.A :2007/05/14(月) 02:44:55 ID:MEri64og
>>528
>125kHzサンプリング・6bitリニア(4kHzの場合)でした。
それってオーバーサンプリング?
それとも、元のサイン波のデータも125kHzサンプリングレート
で用意してあるの?

530774ワット発電中さん:2007/05/14(月) 03:15:26 ID:U1Sg4gfC
サンプリングレート125kHz、6ビットリニア、一次デルタシグマのサイン波のサンプル値を
あらかじめ計算してテーブルにしてあります。
531774ワット発電中さん:2007/05/15(火) 11:26:32 ID:OSZDzn8H
某所で少々話題になってたので、Wisp628ライタを久しぶりにヲチしたら、
書き込みソフトのXWisp2が激しくバーチャンupしていて、かなり対応PICチップが増えてる件

http://www.robh.nl/picsoft.php

Wisp628は以前から存在は知られてたが、対応チップが少なかったんでスルーしてた
チャージポンプ内蔵、Linux版あり、ICSP対応など、Writer509より優位な点があるので、
対応チップが増えれば一考に値すると思う

ただしXWisp2は依然12F509、16F57などに対応してないのと、GUIがないのが短所か・・・
(GUI書き込みソフトはBumbleBeeという代替があるにはある)
532774ワット発電中さん:2007/05/15(火) 23:53:55 ID:Sb5EVAun
貧乏くさいこと言わずにPICkit2買え
サポートデバイスもじき増える
ライタ工作は卒業してPIC工作に進めって
533774ワット発電中さん:2007/05/16(水) 17:21:36 ID:RFTJSqyh
環境:MPLAB IDEv7.50 PICProg4U RCDライタ
PIC12F675でC言語でLED点滅をさせる実験をしています。
@では点滅するのですが、
Aでは点灯だけで点滅してくれません。
どうしてでしょうか?教えてください。

@--------------------------------
while(1){
GPIO0=1;
DelayMs(250);
GPIO0=0;
DelayMs(250);
}
A--------------------------------
while(1){
DelayMs(500);
if(GPIO0)
GPIO0=0;
else
GPIO0=1;
}
534774ワット発電中さん:2007/05/16(水) 17:25:14 ID:jaK2hz23
if(GPIO0)


if (GPIO0 == 0){
GPIO0=0;



じゃねの
535774ワット発電中さん:2007/05/16(水) 17:58:39 ID:Y+toaCTw
>>533
LEDのドライブ回路がわからないんで、推測だが。

LEDをドライブしたために、GPIO0のピンの電圧が'H'レベル以下に下がっているので、
GPIO0を読んでも'0'しか読めないから。
536774ワット発電中さん:2007/05/16(水) 18:02:40 ID:uOWRYiLF
変数くらい使おうよと……
537774ワット発電中さん:2007/05/16(水) 19:19:12 ID:iy0OIdLT
デフォルトのアナログ入力modeだとポートのreadが常に'0'だからでは?
ANSEL = 0; を入れて試してみるといいかも。

あと if(GPIO0) ... else ... は GPIO0 = ~GPIO0; だけで桶
538774ワット発電中さん:2007/05/16(水) 20:53:15 ID:O0w9egc0
初心者が>>535の内容を読んでもピンと来ないと思うので、少し解説。

PIC12/16シリーズのI/Oポートを出力モードに設定しても、そのポートを読んだ時の値は
「最後に出力した値」ではなく必ず「現在のI/Oポートの状態(ピンの電圧が高いか低いか)」になる。
なので例えば、1を出力していても、比較的大電流を吐き出していてピンの電圧が下がっていると、
読み込んだときに0が読み込まれることがある。(逆もあり得る。)
539774ワット発電中さん:2007/05/16(水) 21:04:17 ID:uwMKNveP
>>538
ちなみに、AVRでは、同じピンでも、出力に使う時はPORTA、 入力で使う時はPINA ってな感じで使う。
540405 ◆xcrOSgS2wY :2007/05/16(水) 21:14:32 ID:O0w9egc0
まだ便所紙アラームは全然進んでいないが、秋月のカラー液晶が気になって試してみた。

ttp://akizukidenshi.com/catalog/items2.php?p=1&q="P-01703" 品物はこれ
ttp://vista.o0o0.jp/img/vi7931723028.jpg この部分を
ttp://vista.o0o0.jp/img/vi7931723028.jpg こうして
ttp://vista.o0o0.jp/img/vi7931726922.jpg PICに繋げて
ttp://vista.o0o0.jp/img/vi7931729071.jpg こうしてみた

映った映ったと喜んで試しているうちに基板の変なところを触ったらしく、基板から
煙が・・・orz
541774ワット発電中さん:2007/05/16(水) 21:16:44 ID:AXxVQGOV
疑問なんですがPCLAHTレジスタってプログラムメモリが2K以下の場合は常に0で必要無いはずですよね?
なんで存在してるんですか?

あと2kを超える時でも、割り込みでPCLATHを退避する意味がわかりません
だって割り込みに飛んだ時点でスタックに戻りアドレス入ってますよね?
退避しなくても大丈夫なような
542774ワット発電中さん:2007/05/16(水) 21:21:26 ID:O0w9egc0
>>539
ちなみにPIC18Fでは、出力に使う時はLATA、入力で使う時はPORTAってな感じで使う。
543774ワット発電中さん:2007/05/16(水) 21:25:03 ID:uwMKNveP
>>542
ちっ、AVRのマネしやがったな。
544774ワット発電中さん:2007/05/16(水) 21:31:41 ID:O0w9egc0
>>541
プログラムメモリ2Kワード以下の品種ではPCLATHを使わなくてもよい。
でも使っても構わない。
品種ごとにCPUコアを作り変えるなんて面倒をせずに使いまわしているのだろう。

2Kワードを超える品種ではPCLATHを使う必要が出てくる。もしも割り込みルーチン内で
PCLATHを変更する可能性があるのであれば(例えば割り込みルーチン自体が2Kワード境界を
またいで分散している等)、あらかじめPCLATHを退避しておく必要がある。そうでなければ
退避しなくてよい。
545774ワット発電中さん:2007/05/16(水) 21:41:14 ID:AXxVQGOV
>>544
ありがとうございます
そういう事ですか。勉強になりました
546774ワット発電中さん:2007/05/16(水) 21:44:37 ID:iy0OIdLT
>>541
PCLATHだろ?

GOTO,CALL命令のPage概念だけ気にしてるようだけど、
ADDWF PCL,f 等によるRETLWデータテーブル利用の場合
下位のPCLは8bit(256word)分しかないからPCLATHの意味があるのさ。

上のようなテーブル参照でPCLATHを利用しているなら
割込み時にも退避・復帰が必要になるわけだ。
547774ワット発電中さん:2007/05/16(水) 21:50:15 ID:MgO1kPUu
>545
ついでに・・・PCLATHはgotoやcallの時だけじゃなくて>>339みたいに
テーブルアクセスの際にも使います。そういった使い方ではプログラム
メモリが2k以下でも必要になってきます。
548547:2007/05/16(水) 21:51:48 ID:MgO1kPUu
リロードせずに書き込んだら既にかかれてたよ。スレ汚しスマソ。
549774ワット発電中さん:2007/05/16(水) 21:59:33 ID:AXxVQGOV
>>546
>>547
普段C言語ばかりで組んでたもんで、そこの概念を全然意識してませんでした
やっぱりアセンブラから入らないとダメですね
楽をし過ぎてました


550544:2007/05/16(水) 22:48:10 ID:O0w9egc0
あー確かに。retlwでテーブル引くときには5ビットとも使うね。
すっかり忘れてた。
551774ワット発電中さん:2007/05/16(水) 23:09:55 ID:gM+pZ/5d
てか普通retlwテーブルはプログラムの最初の方のアドレスに書くのが常識だろ
だからPCLATHなんて書き換えねーよ
552533:2007/05/17(木) 00:18:19 ID:BCLHxrV3
>>535
5Vなので電圧は問題ないです。
7番ピンに抵抗、LED、グラウンド とシンプルな回路です。

>>537
ANSEL = 0; 変化なしでした。
GPIO0 = ~GPIO0; エラーがでました。

レスありがとうございました。                 
でも、どうしても>>533のifでの制御ができない・・・。orz なんでだろう
553774ワット発電中さん:2007/05/17(木) 00:22:22 ID:X3/JoRsb
>>551
256ワード境界を越えられない狭い常識の持ち主みたいだね。
554774ワット発電中さん:2007/05/17(木) 00:35:55 ID:8TkBUsVz
>>553
リテラルテーブルに256ワード以上使うってそうないからwww
555774ワット発電中さん:2007/05/17(木) 00:43:09 ID:ahGLln98
>>554
そんなことないよ
漏れは768ワード使った
バンク毎にPCLATH書き換えてからcall
556774ワット発電中さん:2007/05/17(木) 01:00:14 ID:Y2d6+73L
>>552
いや、だからこんな感じではどうなのよ?
GPIO0の値が常に'0'かもしれないんだから。

char a;
while(1){
DelayMs(500);
if(a) {
GPIO0=0;
a=0;
} else {
GPIO0=1;
a=1;
}
}
557774ワット発電中さん:2007/05/17(木) 01:21:43 ID:mYQh5cMK
>554
10bitADCをテーブル引きするだけでも1kワードになるよね・・・

>555
値によって条件分岐をかくよりも、加算結果をPCLATHに反映させたほうが
楽ですよ。例えば右詰ADC10bitから値を引くときは

MOVLW high(TABLE)
banksel(ADRESH)
ADDWF ADRESH,W
MOVWF PCLATH
banksel(ADRESL)
MOVLW low(TABLE)
ADDWF ADRESL,W
BTFSC STATUS,C
INCF PCLATH,F
MOVWF PCL
TABLE
RETLW D'0'

見たいな感じで・・・。実行速度は遅くなるかもですけど、lstファイルとにらめっこ
しなくてもよくなる点で。
558774ワット発電中さん:2007/05/17(木) 01:24:19 ID:mYQh5cMK
スペースがつぶれちゃったのでコードだけ・・・

$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;MOVLW$nbsp;$nbsp;$nbsp;high(TABLE)
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;banksel(ADRESH)
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;ADDWF$nbsp;$nbsp;$nbsp;ADRESH,W
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;MOVWF$nbsp;$nbsp;$nbsp;PCLATH
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;banksel(ADRESL)
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;MOVLW$nbsp;$nbsp;$nbsp;low(TABLE)
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;ADDWF$nbsp;$nbsp;$nbsp;ADRESL,W
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;BTFSC$nbsp;$nbsp;$nbsp;STATUS,C
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;INCF$nbsp;$nbsp;$nbsp;$nbsp;PCLATH,F
$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;$nbsp;MOVWF$nbsp;$nbsp;$nbsp;PCL
TABLE$nbsp;$nbsp;$nbsp;RETLW$nbsp;$nbsp;$nbsp;D'0'
559774ワット発電中さん:2007/05/17(木) 01:25:22 ID:mYQh5cMK
もうやだ・・・寝る。

        MOVLW   high(TABLE)
        banksel(ADRESH)
        ADDWF   ADRESH,W
        MOVWF   PCLATH
        banksel(ADRESL)
        MOVLW   low(TABLE)
        ADDWF   ADRESL,W
        BTFSC   STATUS,C
        INCF    PCLATH,F
        MOVWF   PCL
TABLE   RETLW   D'0'

ごめんなさい。
560774ワット発電中さん:2007/05/17(木) 01:52:18 ID:X3/JoRsb
>>552
> ANSEL = 0; 変化なしでした。
ANSEL = 0; CMCON = 7;  かな?

> GPIO0 = ~GPIO0; エラーがでました。
HI-TECH PICC(lite)ではエラーになるようですね。
気が向いたら次のを試して。
GPIO0 = !GPIO0; // GPIO0反転
561774ワット発電中さん:2007/05/17(木) 07:50:08 ID:5s+uzZk0
562774ワット発電中さん:2007/05/17(木) 08:04:58 ID:Fe0RaAnH
if(GPIO0)   // これは入力
  GPIO0=0; // これは出力
else
  GPIO0=1;
}
って、大丈夫(出力ポートを読み込むと、最後に出力した内容が読める)なんですか?
私は入出力の間で、TRISIOを切り替えなくてはいけないと思ってた・・・
今まで無駄なことを・・・・ orz

563774ワット発電中さん:2007/05/17(木) 09:48:06 ID:qrzUfhe0
>って、大丈夫(出力ポートを読み込むと、最後に出力した内容が読める)なんですか?
>私は入出力の間で、TRISIOを切り替えなくてはいけないと思ってた・・・

if のところは 条件式いれるんじゃないの?


Cでプログラム書いてあるのにTRISIO意識する必要はあるのか?
564533:2007/05/17(木) 10:15:52 ID:BCLHxrV3
>>556
点滅成功しました! それで変数・・・ 理解できました。

>>560
GPIO0 = !GPIO0; エラーは出ませんでしたが点灯しませんでした。

ANSEL = 0;
CMCON = 7;
GPIO0 = !GPIO0; これで点滅成功しました

ありがとうございました。
565774ワット発電中さん:2007/05/17(木) 10:27:11 ID:ebMnAzXO
最後に出力した内容が読みたいならTRISIOは0(出力)でなきゃダメ。
566533:2007/05/17(木) 10:31:04 ID:BCLHxrV3
>>563
562ではないけど、if(GPIO0)は条件式ですよ。
TRIS0=0; がないと点灯しませんでした。

>>562
iGPIO0 出力データが有るか無いかの様なことを本に書いてあります。

TRISIOの質問です。
TRISIO は、whileの中がいいのですか? それともwhileの上に書くものですが?
どちらも点滅成功したので、whileの上に記述しました。
567774ワット発電中さん:2007/05/17(木) 10:42:02 ID:cTRUFY2t
568774ワット発電中さん:2007/05/17(木) 10:44:11 ID:cTRUFY2t
評判を聞いてから,必要となった時に基板だけ○2で買えばよさそう
569567, 568:2007/05/17(木) 10:49:29 ID:cTRUFY2t
イカン,間違えた
C級の付録基板スレに書き込んだつもりだった.......
570774ワット発電中さん:2007/05/17(木) 12:33:08 ID:X3/JoRsb
>>564
報告乙
データシートの GPIO PORTの章ブロック図とか参照すれば
analog入力モードではPORT readが常に'0'になること理解できると思います。
(ANSELとCMCONの初期設定で該当PORTピンをdigital設定にする必要がある)

GPIO0 = !GPIO0; の記述は if(GPIO0) ... else ... より単純でいいでしょ。

>>566
TRISやANSEL,CMCON等の初期設定はwhileループの前で桶。
途中で設定変更する場合とかはその都度だけど
571774ワット発電中さん:2007/05/17(木) 17:38:39 ID:WUZ0VX3l
なんかCって大変だな(w
572533:2007/05/17(木) 19:09:47 ID:BCLHxrV3
>>570 ありがとうございます。 
大変勉強になりやすでやんす。

LEDの点滅で、i++のiを利用して、
高速点滅からゆっくり点滅から高速点滅の繰り返しをする場合、
@まで動作するのですが完成系?のAでは動作しません。 どうしてかわかりませんか?
どなたか教えてください。
@---------------------------
while(1){
DelayMs(i);

if(a){ GPIO0=0; a=0; }
else { GPIO0=1; a=1; }

if(i == 100){ f=1; }
//この部分に追加したい
if(f){ i--; }
else { i++; }
}
A---------------------------
while(1){
DelayMs(i);

if(a){ GPIO0=0; a=0; }
else { GPIO0=1; a=1; }

if( i==100 ){ f=1; }
else if( i==0 ){ f=0; } //これが問題みたいな

if(f){ i--; }
else { i++; }
}
573774ワット発電中さん:2007/05/17(木) 20:04:31 ID:IjE9ICWj
>>572
IF文の部分は問題ないと思うからそれ以外の部分を書いてみたら?
574774ワット発電中さん:2007/05/17(木) 20:04:49 ID:vHiUfuxw
>>
間違ってるようには見えないが。

while(1) のループに入る前に、変数の初期化は行ってるか?

a=1;
f=0;
i=1;
while(1){
:
:
:
}
575774ワット発電中さん:2007/05/17(木) 23:14:08 ID:D0kf6KNw
~ってどいう演算子?
!はよく使うけども
576774ワット発電中さん:2007/05/17(木) 23:22:17 ID:i/dMpuAx
こんなの見つけたんだけど、肝心の16F648のHEXファイルがない!
何処で入手できるか知ってる人いませんか?
ttp://www.nagano-c.ed.jp/~komako/petit_sign/petit-sign.html
577774ワット発電中さん:2007/05/17(木) 23:39:11 ID:IjE9ICWj
578774ワット発電中さん:2007/05/18(金) 00:20:13 ID:IgKSGGdx
ある数を1/16するとき

BSC STATUS,C
RRF DATA,F
BSC STATUS,C
RRF DATA,F
BSC STATUS,C
RRF DATA,F
BSC STATUS,C
RRF DATA,F

ってやる人はぶっちゃけセンス無いと思う
579774ワット発電中さん:2007/05/18(金) 00:27:22 ID:IgKSGGdx
RRF DATA,F
RRF DATA,F
RRF DATA,F
RRF DATA,F
MOVLW 0x0f
ADDWF DATA,F

ってやる人は普通
580774ワット発電中さん:2007/05/18(金) 00:31:04 ID:IgKSGGdx
訂正ADDWFじゃなくてANDWFね
581774ワット発電中さん:2007/05/18(金) 00:33:31 ID:IgKSGGdx
…さぁ正解を誰か答えてくれたまへ

3行でOK
582774ワット発電中さん:2007/05/18(金) 00:36:26 ID:E1uDK5Mc
BSCよりはBCFのほうが若干良さそうだな
583774ワット発電中さん:2007/05/18(金) 00:39:52 ID:IgKSGGdx
命令の綴り間違えてた…BCFだった…orz



俺が一番センス無いわw
584774ワット発電中さん:2007/05/18(金) 00:40:54 ID:t+HB1brH
Cでは DATA /= 16; か DATA >>= 4; だね。
DATA = DATA/16; や DATA = DATA>>4; でもいいけど
585774ワット発電中さん:2007/05/18(金) 00:42:24 ID:mwnUVFlt
SWAPF命令使えばいいじゃん
586774ワット発電中さん:2007/05/18(金) 00:48:43 ID:IgKSGGdx
>>585
正解!!

SWAPF DATA,F
MOVLW 0x0f
ADDWF DATA,F

でOK
センスが無い人の例と比べて半分以下の命令で出来ちゃうわけ
こういう積み重ねで素人と玄人ではプログラムの効率が全然変わってくるんだよな〜

他にこういう小ネタ募集
587774ワット発電中さん:2007/05/18(金) 00:53:16 ID:t+HB1brH
またADDWFかよ。 センス大丈夫か?
588774ワット発電中さん:2007/05/18(金) 01:01:14 ID:IgKSGGdx
間違ったとこからコピペした…orz
589774ワット発電中さん:2007/05/18(金) 01:04:54 ID:AgQClARL
オプティマイズはコンパイラにまかせる.
メモリ足りなかったら,メモリ容量の大きいデバイスを使う.
四苦八苦してメモリ使用量削減するのに無駄な時間かけて製品の
市場投入遅らせるのは素人. 製品開発は趣味でも遊びでもない.
590774ワット発電中さん:2007/05/18(金) 01:16:11 ID:V0RQD/nd
俺も面倒なアセンブラなんかで組まないな
もうCコンパイラでもほとんどアセンブラと変わらないくらいまで最適化できてるからね
コードの可読性や保守性を考えるとCで書くのが一番
ページやバンク、メモリ配置をいちいち意識しなくて良いしね
アセンブラを使うなんてのは車を未だクラッチとマニュアルで操作してるようなもん
車なんて90%以上がオートマの時代だ
591774ワット発電中さん:2007/05/18(金) 01:16:49 ID:t+HB1brH
因みにCCS-Cは DATA /= 16; に対し >>586の正解ANDWF版コードを吐くぞ。
オプティマイズは優秀だな。
592774ワット発電中さん:2007/05/18(金) 01:24:04 ID:RdhTgPnh
その程度のネタで玄人って言われても…ねえ。
593774ワット発電中さん:2007/05/18(金) 02:42:24 ID:cp4+PQKc
>>586
演算後、その数値を利用する(条件分岐とか)可能性を考えると、

SWAPF DATA, W
ANDLW 0x0f
MOVWF DATA

なコードの方が良くないか?
594774ワット発電中さん:2007/05/18(金) 02:54:22 ID:E1uDK5Mc
>>590
x86とかARM,MIPSのコンパイラなら最適化が高度に進んでるが、PICのコンパイラは
まだまだ最適化の余地が多いよ。

今時のx86のコンパイラで最大最適化を掛けると、よほど大量にコードを追わないと
手作業で最適化できそうなところが見つからないが、PICのコンパイラならアセンブラ出力を
ざっと眺めた程度でも最適化できる場所がすぐ見つかる。

まぁ、今程度の最適化でも十分Cで書こうという気にはなるが。
595774ワット発電中さん:2007/05/18(金) 07:34:12 ID:4ZDPbZ8E
CCSで間接アドレス参照使うプログラム書くと悲惨だよ。
半分以上無駄なコード吐きやがる。
繰り返し文で変な書き方しないとDECFSZすら使ってくれないし。
596774ワット発電中さん:2007/05/18(金) 09:14:03 ID:E1uDK5Mc
CCSの場合、最適化以前の問題として、まずバグのあるコードを吐かないでくれ!
とコンパイル時に祈らなくてはならないのが問題だww
597533:2007/05/18(金) 09:45:38 ID:ySRIFAA9
>>573 >>574 レスありがとう
型をintにしたりcharにしたり初期値に変化をつけたり
いろいろしたのですが動作せず、アゲクノ果てにpicへ書き込みもできなくなた・・・ orz
LEDの点滅を高速→ゆっくり→高速→ゆっくりと繰り返しを実験してました。
どうも無理っぽい・・・。orz

#include <pic.h>
#include "delay.h"
__CONFIG(UNPROTECT & BOREN & MCLRDIS & PWRTEN & WDTDIS & INTIO);
__IDLOC(0100);

main(){
int i,a,f;

GPIO0=0;
TRIS0=0;

while(1){

if(a){ GPIO0=0; a=0; }
else{ GPIO0=1; a=1; }

if( i==1 ){ f=0; }
if( i==50 ){ f=1; }

if(f){ i--; }
else{ i++; }

DelayMs(i);

}
}
598774ワット発電中さん:2007/05/18(金) 10:16:39 ID:OD5aObWf
>>597
だから、while()ループの前に変数の初期化は入れろyo。

a=1;
f=0;
i=1;

while(1){
:
:
:
}

無理じゃないんだよ!

ところで
DelayMs()って関数の1単位はmsec?

599774ワット発電中さん:2007/05/18(金) 11:28:16 ID:cEOeHtLJ
SourceBoostも>>586のANDWF版になったよ。
600774ワット発電中さん:2007/05/18(金) 12:03:41 ID:t+HB1brH
>>587
いろいろツッコミたい箇所多いが、一応動作する内容だろ。
(int型変数は16bit長だから無駄だと思うぞ)

因みに俺は #include"delay.c" に変えてSIM動作確認した。
動かないのはPICが死んでるか、ライタがおかしいんじゃね?
601774ワット発電中さん:2007/05/18(金) 12:13:40 ID:nrUN0mEF
補正値消してしまったとか……
602533:2007/05/18(金) 13:05:08 ID:ySRIFAA9
>>598
PIC自体が動かなくなった。
DelayMs()たぶんmsecだと思います。

>>601
PICProg4Uを使ってるのですが、
書き込む時、
工場出荷時の補正は読み込んでるが、
途中で値が変わってるのですよ。
それが問題なのかな?

難しい・・・ orz
603774ワット発電中さん:2007/05/18(金) 13:48:42 ID:dQCSfRjQ
>>602
まあ、PICが動かなくなったならしょうがないな。

今のプログラムDelayがmsec単位なら、動作がわかりにくそうだ。
点灯する比率を変えたほうがわかり易いはず。
約5秒周期で明暗を繰り返すようにしてみた。

動かせるようになったら、下のプログラムでも確認してみてくれ。

main(){
int i,a,f;

GPIO0=0;
TRIS0=0;

a=1;
f=0;
i=1;
while(1){

if (a) {
GPIO0=0;
a=0;
DelayMs(i);
} else {
GPIO0=1;
a=1;
DelayMs(51-i);
if( i==1 ){ f=0; }
if( i==50 ){ f=1; }

if(f){ i--; }
else{ i++; }
}
}

604774ワット発電中さん:2007/05/19(土) 01:02:01 ID:FapyAjoR
>567
確かに面白そうな回路だと思う。
この位なら自分でコードを書いて見る方が、もっと面白いと思うよ。
605774ワット発電中さん:2007/05/19(土) 07:15:32 ID:KCvYKySL
mikroCってレジスタのビットアクセスができないみたいなんですけど、
できてほしい。
GPIO.3 = 1;
とかかけないもん。
がーん。
606774ワット発電中さん:2007/05/19(土) 07:18:42 ID:Y6qpVFfO
>>605
PORTB.F3 = 1;
とか書けるよ。
607774ワット発電中さん:2007/05/19(土) 11:32:14 ID:KCvYKySL
>>606
ありがと
助かりました。
やる気も出ました。
608774ワット発電中さん:2007/05/19(土) 14:19:36 ID:hdYX0T/D
ヘルプとサンプルを全部読んだ方が良いよ
609774ワット発電中さん:2007/05/19(土) 17:53:42 ID:pxVZ7K5t
PICCliteの解説本ってある?
610774ワット発電中さん:2007/05/19(土) 18:11:02 ID:+Eei4k0M
>>609
どんなレベルを期待してるかしらんが
初心者向けなら
ttp://books.yahoo.co.jp/book_detail/31576028

初心者用はもいっこくらいあったかも
でも使い方に悩むレベルでないと思う
対応してるPICが少なくて
対応してても1K制限なのが多いので人気薄

でも出来はとてもよい。
製品版は個人で買えない・・・
611774ワット発電中さん:2007/05/19(土) 21:30:07 ID:XGW3PhcQ
PICC気に入ったので製品買っちゃったwwwwww ちょっぴりだけ後悔している。

PICCに特化した解説本ってあまりないんで、チュートリアルまとめてるサイトを
まわったほうがいいかもしれない。あとは英文になってしまうけど公式に色々と
サンプルコードが出てるよ。
612774ワット発電中さん:2007/05/19(土) 23:31:18 ID:ZgfiqA/m
ストロベリーリナックスの無線モジュールを使って遊びたいのだが、
送受信のプロトコイルは考えついたんやけど、送信モジュールの電源選びに困ってる。
3〜6Vらしいんやけど、CR2032では無理かな?
キーレスエントリーの様に使いたいから小型の電池なんかないかな?
613774ワット発電中さん:2007/05/20(日) 00:03:01 ID:NCOFAPvc
>>612
つ「スペック」
614774ワット発電中さん:2007/05/20(日) 00:20:51 ID:NCeYqTim
まだスペックというほどの物はきまってないよ。
乾電池などをTL499Aで昇圧するとしたら効率悪くない?
市販のキーレスなんかは1.5Vで長時間もつのってどんな回路かなって思ったのよ。
ageすまそ
615774ワット発電中さん:2007/05/20(日) 00:28:11 ID:rcnLWiXu
>>611
ウラヤマシス 
616774ワット発電中さん:2007/05/20(日) 04:31:17 ID:uHwTlEo6
普通のコイン電池は3Vじゃん。

ついでに長時間もつと言っても、通電されるのはせいぜい日に何秒程度
なのだから、自己放電が年1%もないリチウム電池なら何年ももって当然。
617技術奴隷:2007/05/20(日) 06:31:58 ID:onOQuivH
>>612
市販の物は、その電圧に合わせて設計出来るから心配要らないのだけど
件の無線モジュールはテストしてみるしか無いと思う。
特に、3Vの電池で3Vのモジュールだと余裕が無いから
あとはモジュールの実力しだい。
慣れれば送信回路は簡単に作れるので挑戦してみるのも乙かも。
61878:2007/05/20(日) 09:40:26 ID:0wqyV4Cz
>>78
で mikroC による PIC16F88 への書き込みについて教えて
戴いた者です。
遅くなりましたがおかげさまで無事書き込みできました。
すみません、続いてなのですが、
 ttp://www8.plala.or.jp/InHisTime/
の中の、「周波数ロックユニット」のうち、
PIC12F683 用のソースをやはりmikroCにて書き込む場合、
Device Flagsはどれをチェックすればよいのでしょうか?
よろしくお願いいたします。
619774ワット発電中さん:2007/05/20(日) 10:49:33 ID:qbxGeDZ6
>>618

FCMEN - OFF
IESO - OFF
BOREN - ON or OFF
CPD - any
CP - any
MCLRE - OFF
WDTE - OFF
FOSC - EC/IO
かな?

ソースに埋め込めないのは不便だな
62078:2007/05/20(日) 13:06:07 ID:0wqyV4Cz
>>619
ありがとうございます。
すみません。基本的な知識不足のためもう少し教えて下さい。
mikroC のDevice Flagsの画面では、
BOREN - ON or OFF
CPD - any
CP - any
FOSC - EC/IO
に該当しそうな項目がないのですが・・・
FCMEN - OFF
IESO - OFF
MCLRE - OFF
WDTE - OFF
は見つかったのですが・・・
よろしくお願いいたします。
621774ワット発電中さん:2007/05/20(日) 13:13:31 ID:qbxGeDZ6
CPD,CPは、どちらでも動作には関係ないと思う。
クロックの設定ぐらい、どこかにあるはずだけど...

INTOSCとかHSとかXTとか mikroCは使った事ないけど
622774ワット発電中さん:2007/05/20(日) 14:07:53 ID:v7upu3ss
BODEN OFF
CPD OFF
_HS_OSC


ところでライター何使ってる?
623774ワット発電中さん:2007/05/20(日) 14:29:01 ID:v7upu3ss
すまん 16F88 の設定みながらやってしまった
62478:2007/05/20(日) 18:49:31 ID:0wqyV4Cz
>>622 ありがとうございます。
えーと、
BODEN OFF
というのは見当たらず、
BOD OFF
というのがあるのですが、これに該当するのでしょうか?

ライタはアドウィン社のものです。
625774ワット発電中さん:2007/05/20(日) 18:58:24 ID:QXdjABkT
CCS-C使えNEEEEEE!
これじゃwhile(1){}じゃないか!

20:while(!kbhit()){}
0D8 1E8C BTFSS 0xc, 0x5
0D9 28D8 GOTO 0xd8
0DA 28D8 GOTO 0xd8
626774ワット発電中さん:2007/05/20(日) 19:07:59 ID:v7upu3ss
それだ

とりあえず データシートには目を通す


ttp://ww1.microchip.com/downloads/en/DeviceDoc/41211C.pdf#search='12F683%20data'


そのライターは使ったことがない ちなみに秋のライターだとコンフィグの設定は
ライターでもできる

MikroCはたまにConfig設定が飛ぶときがあるので注意
627774ワット発電中さん:2007/05/20(日) 19:16:49 ID:9Az+0dOY
>>625
「while(!kbhit()){}」の前後は何書いてる?
まさか

  while (1) {
    while(!kbhit()){}
  }

じゃないだろうな。
628774ワット発電中さん:2007/05/20(日) 21:56:58 ID:C7TpwwPE
>>625
バージョンぐらい書きゃいいのに。
脳味噌足りねえなあ…。
629774ワット発電中さん:2007/05/20(日) 22:02:08 ID:yE/1uRhJ
>>628

軽石さん、お久しぶりです。
630774ワット発電中さん:2007/05/20(日) 23:12:56 ID:+wI/ItFG

>>626
僕の持ってるライタは、ジッポーなんですが、大丈夫でしょうか?
631774ワット発電中さん:2007/05/20(日) 23:39:18 ID:zhASItlc
Writer509オススメ
632774ワット発電中さん:2007/05/21(月) 00:49:09 ID:RVK3+hZU
プロメートも買えん貧乏人ばっかりなんだなぁ
633774ワット発電中さん:2007/05/21(月) 01:57:48 ID:xKJwFJNq
うむ、ドライバーくらいまともなのを買えw
ttp://www.amazon.co.jp/dp/B000I0IXTC
634774ワット発電中さん:2007/05/21(月) 23:49:07 ID:+/NT4eeK
PIC内蔵のEEPROMのみに外部のPICから書き込む事ってできる?
外部からIDを割り付け出来たらと考えてみたりして。
635774ワット発電中さん:2007/05/22(火) 00:53:46 ID:gNZgMvHc
できる。というか、大抵の手製ライタはPICで書き込み制御してるだろw
636774ワット発電中さん:2007/05/22(火) 00:56:00 ID:T7xzyLCS
PICにHost Portってあった?
637774ワット発電中さん:2007/05/22(火) 00:56:32 ID:z2vRPmve
そっか。microchipのサイトへ飛んでくる。
シリアル通信なんかでデータを渡し、書き込もうかと思ってた。
638774ワット発電中さん:2007/05/22(火) 20:53:42 ID:FsURnptV
某サイトのpicの説明に「PIC社が出したコントローラ用RISCマイクロプロセッサ」とかあって笑った
63978:2007/05/22(火) 21:01:56 ID:RqE8RpIy
>>622
>>626 ありがとうございます。
うーむ 動きません。。。
ひとつだけ疑問
以前16F88で同様の質問をしたとき、
>>87
>>89
で、_HS_OSC でなく、EXTCLK と教えていただきました。
今回も水晶16MHzを使用しているので、同じことがいえるのでしょうか?
しかし、mikroC の12F683 の画面では、 EXTCLK というフラッグは
なく(16F88だとある)、それらしきものとして、
_EXTRC_OSC_NOCLKOUT
_EXTRC_OSC_CLKOUT
_EXTRCIO
_EXTRC
というのがあるのですが・・・
よろしくお願いいたします。



640774ワット発電中さん:2007/05/22(火) 21:19:24 ID:EDF7feG2
データシートに全部書いてる
641774ワット発電中さん:2007/05/22(火) 21:35:06 ID:GR+aE64D
回路図の上としたではFOSCの設定は異なる
下のは内部クロックだよ
64278:2007/05/22(火) 22:05:49 ID:RqE8RpIy
>>640
 もちろん書き込む前に見てみましたが、
 勉強不足なのでしょうが( >>82 )、わかりません。

>>641
 いずれも水晶16MHz→12F683ではないでしょうか???
643774ワット発電中さん:2007/05/22(火) 22:43:16 ID:7Fa/g7ll
>642
>641が言ったのは
ttp://www8.plala.or.jp/InHisTime/PIC-006/FreqLockV2.bmp
の回路図中の88と683はクロックのソースが違うってことでしょ。
以前あなたが聞いたのは
ttp://www8.plala.or.jp/InHisTime/page018.html#PIC-013
の回路図中の88でしょ。確かにどちらも外部クロック→PICで同じだけど
あなたの書き方が悪いから混乱するんですよ。

で、あなたが求めてる683に必要なのはおそらく
_EC_OSC

picのクロック回路は大まかに言って
(1)内蔵(internal)クロック
(2)外部(external)の発信器を内部の発振回路でドライブ
(3)外部(external)の発振回路の出力を入力
の3種類があります。

今回は(3)です。

>639であがっている
_EXTRC_OSC_NOCLKOUT
_EXTRC_OSC_CLKOUT
_EXTRCIO
_EXTRC
はどれも(2)のパターン。4種類あるように見えるけど
_EXTRC_OSC_NOCLKOUT

_EXTRCIO
および
_EXTRC_OSC_CLKOUT

_EXTRC
は同じ内容なので、実質2種類。発振回路自体はPIC内部にあるのでそのクロックを
他の回路で使うことを考えて外部に出力する設定がある。必要ないときはI/Oにする
ということ。

逆に(3)のパターンでは発振回路自体がPICの外部にあるのでわざわざPICからクロック
出力する必要が無いので、OSC2端子は常にI/O

ちなみに
_LP_OSC
_XT_OSC
_HS_OSC
も(2)のパターンだけどOSC1/OSC2の両方の端子を占有してしまうので、I/Oとして利用
できる設定は存在しない。
64478:2007/05/23(水) 00:47:37 ID:ngk4Z3pP
>>643 ありがとうございます。
ttp://www8.plala.or.jp/InHisTime/PIC-006/FreqLockV2.bmp
の、683のGP4から出ているLEDが点滅ではなく、点灯してしまうの
ですが・・・
645774ワット発電中さん:2007/05/23(水) 01:16:03 ID:9OSWD7yU
>>644
16MHzのOSCがちゃんと入力できてないとか…
646774ワット発電中さん:2007/05/23(水) 01:19:50 ID:XI+YHlV1
OSCのモードがRCぃ
ぅぅぅぅ....。
647774ワット発電中さん:2007/05/23(水) 01:21:34 ID:RSGAmzHw
>644
0.1Hzだとどうだろうね・・・ちゃんと点滅してるけどぱっとみ点灯しているように
見えるだけとかはないよね?

まぁ、俺はそのサイトの中の人じゃないので知らないよ。
648774ワット発電中さん:2007/05/23(水) 01:22:55 ID:RSGAmzHw
0.1Hzってなんだよ・・・0.1sと10Hzがごっちゃに・・・
649774ワット発電中さん:2007/05/23(水) 01:27:21 ID:RSGAmzHw
ついでにいうと、分周されるからLEDの点滅は5Hzか・・・
650774ワット発電中さん:2007/05/23(水) 01:27:37 ID:lczpyKSC
>>644
生成されたHEXファイルあげてみなよ コピペでもなんでもいいから
65178:2007/05/23(水) 07:52:48 ID:ngk4Z3pP
>>650 すみませんよろしくお願いします。。。

:100000002D28FF3FFF3FFF3FFF00030E8301A100AC
:100010000408A0000A08A2008A0100308C1A0130EE
:10002000F1007108013A031D24288C1205140030D8
:10003000051A0130F1007109F0000030701810301D
:10004000050610398506051022088A00200884005C
:10005000210E8300FF0E7F0E0900703003138316FC
:100060008F0007308312990083169F012830850086
:1000700081130B128B1001138B110B108C16831232
:100080008C120B30950050309300C33094008B12CB
:100090000B1181018316811201128111011081104F
:1000A00001110C1083120C108E018F011016901686
:1000B000101483168C1083128C10121112109210CF
:1000C00091010B178B1763286428FF3FFF3FFF3F09
:02400E00D330AD
:00000001FF
652621:2007/05/23(水) 09:44:01 ID:rEQaEGHe
>>651
Configは合ってるみたいだな
2007H = 30D3HだとOSCはECだぞ。動かないのは他が原因だと思う。

mikroCは使った事ないけど
653774ワット発電中さん:2007/05/23(水) 10:03:12 ID:rEQaEGHe
暇なのでHEXファイルをMPLABでシミュレーションして見た。
ぴったり100mSで割り込みを実行していたのでHEXファイル
は正解っぽい。
654774ワット発電中さん:2007/05/23(水) 10:43:35 ID:NBYgilC8
Config は問題なさそうだし
ハードか 
65578:2007/05/23(水) 14:49:35 ID:ngk4Z3pP
皆様ありがとうございます!
うーん ハードですか・・・
656774ワット発電中さん:2007/05/23(水) 16:15:40 ID:rEQaEGHe
無意識の内に8ピンにVCCを接続して
破壊させた事があるぞ orz
657774ワット発電中さん:2007/05/23(水) 18:53:42 ID:UerbpEGA
たったそんだけのHEXになるならソースも短いだろ。なんでソースを晒さんの。
割り込みは240サイクルごと(MPLABシミュレータ上)ごとに発生してはいる。
GP4は微動だにしてないが、GP2がFoscの1/16くらいでトグルしてるな。
658774ワット発電中さん:2007/05/23(水) 18:55:29 ID:UerbpEGA
typoした
× 240サイクルごと
〇 249サイクルごと
659774ワット発電中さん:2007/05/23(水) 19:07:19 ID:rEQaEGHe
>>657
使用しているMPLAB 7.6ではシミュレーションで
GP4も100mS周期で反転しているみたいだけど

ソース >>618
660774ワット発電中さん:2007/05/23(水) 19:11:58 ID:mGk06QiP
>>651
10HzでON/OFFだと、ソースの元はこれか?
ttp://www8.plala.or.jp/InHisTime/PIC-006/Clock100msec.c
661774ワット発電中さん:2007/05/23(水) 19:13:52 ID:NBYgilC8
>>655
あともうちょっとで動作するから がんがれ

一番あやしぃのはクロックのモジュール 

実は普通のクリスタル繋いでるとかない?

一旦 内部クロックにしてLEDの点滅を確認するとかして

どこに問題があるのか切り分ける
66278:2007/05/23(水) 20:50:10 ID:ngk4Z3pP
>>660 そうです。お手数おかけしました。
>>661 ありがとうございます(涙)
    水晶発振器を使用しています。
    デジタルテスタのfreqモードで16MHzの発振が確認できます。
    > 一旦 内部クロックにして
    申し訳ありません。方法がわからず、勉強してみます。    


     
663774ワット発電中さん:2007/05/23(水) 21:04:16 ID:NBYgilC8
:02400E00D330AD → :02400E00D430AC

これで INTOSCIO
66478:2007/05/23(水) 21:22:50 ID:ngk4Z3pP
>>663
速レスありがとうございます。
何から何まで すみませんが、
ご指示のようにhexファイルを直して、
上書き保存すると、拡張子txtがついてしまうので、
その拡張子を外してファイルネームを変更し、
書き込みソフトでloadしようとしたのですが、
読み込めません。
665774ワット発電中さん:2007/05/23(水) 21:28:37 ID:yKY8pgRa
>664
だったらhexを直接いじるんじゃなくてコンフィグの
_EC_OSCを_INTOSCIOにしてコンパイルしなおせばいいじゃない。
666774ワット発電中さん:2007/05/23(水) 21:44:38 ID:NBYgilC8
>>665

それをどうやるか まだわかっていないみたいで・・・・


>>664
上書きじゃなくて 
名前をつけて保存 ファイルの種類を全てにしてから ファイル名をtemp.hex にして保存
*tempの部分はご自由に
66778:2007/05/23(水) 21:44:49 ID:ngk4Z3pP
>>665 やってみました。やはり点滅ではなく点灯です。
ビルドされたhexファイルの内容をコピペします。

:100000002D28FF3FFF3FFF3FFF00030E8301A100AC
:100010000408A0000A08A2008A0100308C1A0130EE
:10002000F1007108013A031D24288C1205140030D8
:10003000051A0130F1007109F0000030701810301D
:10004000050610398506051022088A00200884005C
:10005000210E8300FF0E7F0E0900703003138316FC
:100060008F0007308312990083169F012830850086
:1000700081130B128B1001138B110B108C16831232
:100080008C120B30950050309300C33094008B12CB
:100090000B1181018316811201128111011081104F
:1000A00001110C1083120C108E018F011016901686
:1000B000101483168C1083128C10121112109210CF
:1000C00091010B178B1763286428FF3FFF3FFF3F09
:02400E00D430AC
:00000001FF
668774ワット発電中さん:2007/05/23(水) 21:54:09 ID:NBYgilC8
しょうがない今日仕入れてきた12F683があるから ブレッドボードに挿してやってみるか
66978:2007/05/23(水) 21:57:44 ID:ngk4Z3pP
>>NBYgilC8
申し訳ございません
670774ワット発電中さん:2007/05/23(水) 22:33:20 ID:yKY8pgRa
>668の実験がなかなか終わらないらしいからちょっと愚痴でも書こうかな。

>666
> それをどうやるか まだわかっていないみたいで・・・・
書き込む前に数日文のレスぐらい読んだほうがいいよ。

>669 他 ID:ngk4Z3pP
今回の683ぐらいのトラブルは初心者が問題解決の練習としてちょうど
いいぐらいの難易度なんだから他人に頼らずに自分で解決しようとして
みたら?
どうもあなたの書き込みを見てると他力本願なかんじがしてならない。

言うまでも無いことだけど、勉強したい初心者の手助けはしたいと思うけど
初心者を装ったクレクレ君のお守りをしてあげるつもりは無いので。
671774ワット発電中さん:2007/05/23(水) 22:45:02 ID:NBYgilC8
クロックモジュールがないのでINTOSCIO でやってるが LEDをGP0に繋ぐと
パルス確認できるぞ オシロあるけどアースの変換ケーブルがないので今はできないけどな
67278:2007/05/23(水) 23:10:55 ID:ngk4Z3pP
>>670
<1>
前提として>>1の主旨には反していないと自分なりに判断しました。
また、自分の基本的な目的は>>82で表明したつもりです。
ご不快感を与えてしまったのなら謝罪いたします。
<2>
>>666 を書き込んだ方のID を今一度ご確認願います。
<3>
>今回の683ぐらいのトラブルは初心者が問題解決の練習としてちょうど
>いいぐらいの難易度なんだから

申し訳ございませんが自分では判断できませんでした。

>>671
NBYgilC8さん、本当にご親切いただき心に染みます。
何度も見直したつもりですが、どこか私にウスラバカな間違い
があるのでしょうね。
そこまでしていただき、もう十分です。
また、貴方に対して他の方から微妙な表現までされてしまい、
申し訳ございません。ありがとうございました。
67378:2007/05/23(水) 23:16:34 ID:ngk4Z3pP
>>670
書き忘れました。
>初心者を装ったクレクレ君
確かに>>82で表明した内容はクレクレ君だったですね。
しかし、初心者を装ってはいません。
674774ワット発電中さん:2007/05/23(水) 23:28:42 ID:NBYgilC8
貴方のミッションはこれを完成させることです。 あきらめずやってください
定番の16F84あたりでLEDピコピコでも作ってじっくり弄ってみてください



ほんの一年前ぐらいまでは自分も似たような感じだったし・・・・



では めげずにがんばってください
675774ワット発電中さん:2007/05/23(水) 23:49:01 ID:yKY8pgRa
>673
わざわざ愚痴にレスをしてもらったので一応。
<1>
あなたの言っていることは間違ってない。
<2>
数日分のレスを読めばID:ngk4Z3pPがコンパイル時のコンフィグの設定変更方を
知っていることは読み取れるであろうといった程度の意味で書いたんだが。
<3>
PICの勉強をするための例題として件の回路を選んだんでしょ?それはPICの勉強を
するに際して自分のレベルに適していると判断したからではないの?

> しかし、初心者を装ってはいません。
そうか。じゃあ>78の名前欄を100回読め。

別にあなたがクレクレ君だというつもりは無いよ。ただ、質問の内容から自己解決する
ための手がかりを得ようとする意思が感じられないように思えただけ。
折角マイコンの勉強をしたいと思った貴方なのに本当のクレクレ君になってほしくなかったんですよ。

まぁ、俺はひねくれ者だけど、このスレの人間は基本的に初心者に優しいのでなんかあったら
またこのスレにきてください。
676774ワット発電中さん:2007/05/23(水) 23:51:49 ID:yKY8pgRa
>674
ID:NBYgilC8氏もお疲れ様です。
別に貴方の事を悪く言うつもりも無かったのですが、なんだかけんか腰になってしまった
みたいでごめんなさいね。

>all
スレ汚しすみみませんでした。
677774ワット発電中さん:2007/05/24(木) 07:57:07 ID:J5qV7bqw
なんだかんだ言ってもみんないい香具師だね

がんばっておくれ
678774ワット発電中さん:2007/05/24(木) 11:12:25 ID:mknXVXkn
何時の日か 「できた」と報告があればいいね
679774ワット発電中さん:2007/05/24(木) 14:07:37 ID:MCCpEtOz
自力で解決すれば勉強になるけど、初心者にはちょっと難しいトラブルかもしれないな。
落とし穴がいくつも仕掛けられてる感じ。

まず1つ目は件のサイトにConfigが示されていないこと。
ある程度の経験があれば、回路やその動作原理から想像が付くけど、
今回の流れのようにOSCに気をとられてBODもMCLRもDisableにしてしまうと、
中途半端な電源ON/OFFで容易にリセット失敗状態に陥ってしまう。

ちなみに>>667のHEXは動作(LED点滅)したけれど、電源OFF後に
電源電圧がちょうど1Vくらいに落ちたところで
電源を入れると動作しなくなった。->LED点灯または消灯
完全に0Vまで放電後電源を入れると動作する。

2つ目は
OPTION_REG.F7 = 0;
[弱プルアップ有効]
このソースでOSCモジュールが0V-5Vのフルスイングか
1/2VccのBIASにクロックを載せて出力していればいいけど、
AC結合の1Vp_pのような出力の場合、ポートの入力は'H'のままとなってしまう。
使用する16MHzOSCモジュールの種類によっては罠にはまってしまうことがある。

・・・といった感じかな?
680774ワット発電中さん:2007/05/24(木) 17:13:09 ID:jwyTEnrn
あぢぃ
681774ワット発電中さん:2007/05/24(木) 18:11:24 ID:7q7BqU3v
マルツで24FJがあるみたいだけれど、
書込み器はICD2とか純正ライターしか対応してないのかな?
RAMが8Kもあって28PINのDIPがあるのが物凄い魅力なんだけれど、、、
使った人いないですか?
682774ワット発電中さん:2007/05/24(木) 19:06:57 ID:iXXlilVj
>>681
楽しそうなPICだな。
2クロックで1サイクル?
683774ワット発電中さん:2007/05/24(木) 19:29:15 ID:jzZruqxo
DIPといってもSPDIPじゃん。普通のユニバーサル基板に入らないよ。
684774ワット発電中さん:2007/05/24(木) 19:34:54 ID:wGTcaGe7
秋月のライターが18シリーズにも対応し始めたって言うのはガイシュツ?
685774ワット発電中さん:2007/05/24(木) 19:57:25 ID:jzZruqxo
ほんとだ。でもα版だから普通のファームアップはできないのね。
ver.4キットをもう一個買えってか。

もうライタで悩むのやだからICD2を買っちゃった。速くて便利だよ。
686774ワット発電中さん:2007/05/24(木) 20:00:20 ID:7q7BqU3v
>>683
SPDIPって876Aみたいなスリムパッケージの奴じゃなないの?!!
ガーーーンショック!!!

>>682
http://ww1.microchip.com/downloads/en/DeviceDoc/39881b.pdf
2クロックで1サイクルっぽい。。。
687774ワット発電中さん:2007/05/24(木) 20:01:49 ID:iXXlilVj
>>683
釣られよう
28pinでDIPと言えば600mil、SPDIPは300mil
100milピッチのユニバーサル基板が「普通」だと
すれば入る。
688683:2007/05/24(木) 20:55:13 ID:jzZruqxo
勘違いしてた… orz

データシートみたら(16F876なんかと同じ)細身の28pin DIPになってた。
SPDIPというのはSkinny PDIPのことなのね。SDIP(Shrink DIP)の仲間かと思ってますた。
ごめんなさい
689774ワット発電中さん:2007/05/24(木) 22:09:24 ID:UQaP1VRP
PROMATEUいらなくなったんだけど、ヤフオクに出していくらくらいで売れるかね?
ソケットは3つ付き
たぶん8ピン〜28ピンならほとんど対応してる
690774ワット発電中さん:2007/05/24(木) 22:13:32 ID:qYHCsqxl
24シリーズへの書き込みならPICkit2でも出来るよ。
691774ワット発電中さん:2007/05/24(木) 22:21:50 ID:m5OcS90Z
>>624
683はサポート対象外
692774ワット発電中さん:2007/05/25(金) 01:40:14 ID:ocVUpA7P
>>680
本当だ!!
古い資料みてて対応して無いと思い込んでた、、、

24FJのデータシート眺めているのですが、
24FJシリーズは電源が2系統必要の認識であってます?
CPU−CORE用電源2.5VとI/O用<5Vってこと?
693774ワット発電中さん:2007/05/25(金) 09:11:05 ID:q3PfFzYU
>>692
LDOレギュレータが付いてるらしい。VDDCORE/CAPピンがあるので
内蔵/外部、お好きなほうで行けるんじゃないかな
694774ワット発電中さん:2007/05/25(金) 10:30:59 ID:zfT3JYK+
電源VDDは標準3.3VでVDDCOREが2.5Vだよね。そして5Vトレラント入力
695774ワット発電中さん:2007/05/25(金) 16:12:50 ID:n5S1MPHE
>>693
データシート-23.2に記述がありました
3.3V電源のみで駆動可能のようです
出力もPIN毎のOPEN-DRAIN設定を行えば、5.5Vまで直結できる
おぉ、、、なんか3.3V系と5V系の混在に頭悩ます必要が無くなるデバイスですね

696774ワット発電中さん:2007/05/25(金) 16:29:21 ID:R6KY8U/L
>>477で試した音声再生を非圧縮のPCMデータでやってみた。
http://science6.2ch.net/test/read.cgi/denki/1074945895/806
結果はPIC音スレに書いたが、やり始めがこっちだったので、いちおう報告。
マグネチックスピーカだと割と聞ける。けど音が小さい・・・
697774ワット発電中さん:2007/05/25(金) 23:19:26 ID:XZtMDcb0
PORTBの0〜5ビットを入力、6,7ビット目を出力としています。

RB0〜RB5に入力される電圧レベル(HかLか)を判定し、
それに応じてRB6、RB7に出力を行いたいのですが、
RB0〜RB5への入力電圧の判定はどのように行うのがエレガントなんでしょうか?

0〜5までのビットを持ってきて、1を引いて0ならとするのは普通の方法なんでしょうか?
698774ワット発電中さん:2007/05/26(土) 00:29:53 ID:qjDOu0K1
文章が苦手だったらせめてプログラムくらい例示したら?
699774ワット発電中さん:2007/05/26(土) 00:51:52 ID:KkiLxeOU
>RB0〜RB5への入力電圧の判定

>0〜5までのビットを持ってきて、1を引いて0なら…

つながりがわからないネ
700774ワット発電中さん:2007/05/26(土) 01:03:17 ID:7nuorI3r
>697
何がしたいのかよく分からないから、答えようがないけど・・・

分岐条件が簡単ならBTFSCとBTFSSで単純にチェック、
ほとんどすべてのパターンで違う分岐に行くならRETLWの
テーブルの応用でCASE文みたいな感じにするかなぁ?

いつもエレガントなコードを書こうとは思ってるけど、あまり
うまく行っていない人間のレスですが・・・
701774ワット発電中さん:2007/05/26(土) 01:07:02 ID:7nuorI3r
自分で書いておいてどの辺りがCASE文みたいなのか
よく分からなくなってきた。まぁ、こんな感じ?

ttp://ha6.seikyou.ne.jp/home/sasao/junkhard/pic/#009
702774ワット発電中さん:2007/05/26(土) 19:44:34 ID:JR0ByRcc
PCからPICへ、FT232RL経由でRS-232Cでデータを送信しているのですが、
0〜127まで値の1バイトデータはPICで受信可能なのに、128を超えた
あたりから値が0になる問題に見舞われています。
全てが0になるのでなく、例えば128とか160とかの値は受信出来ます。
129,130は0になりました。
同じ値を送ると、毎回同じ結果となります。
このような現象は起きうるのでしょうか。また回避法はないのでしょうか。
よろしければお知恵をお貸しください。
PIC:PIC18F4525
C:CCS-C(MCH)
MPLAB7.21利用
送受信 データビット=8、ノンパリティ、ストップビット1
速度115200(低速でも同じ現象が起きる),非同期
ハードウェアのUSART機能を利用
703774ワット発電中さん:2007/05/26(土) 20:10:35 ID:ukExfVN1
>>702
PCから正しいデータが送られているのは確認できているのか?
704702:2007/05/26(土) 20:36:26 ID:JR0ByRcc
PC側のソフトは何度も確認しましたが、問題はありません。
VB6でMSCOMM.OUTPUT=chr(1バイトデータ)として送信しているだけです。
連続送信でのトラブルを回避するためにインターバルを入れてみましたが
改善しません。データがずれた、ということでもありません。

少なくとも0〜127以下のデータは正しくPCから受信できています。
それまでの作業では127以下のデータしか送っていなかったので、
こういうトラブルが起きるとは思わなかったくらい、問題なく
通信できていました。
705774ワット発電中さん:2007/05/26(土) 20:41:48 ID:7jGxGZSd
>>702
ちゃんと障害箇所切り分けしてる?
FT232RLの出力をPCのRS-232Cで受信して、正常に受信できるか。
PCのRS232CからPICに送信して、正常に受信できるか。
どっちかが不可になったら、そこがおかしい。
706774ワット発電中さん:2007/05/26(土) 20:52:05 ID:ukExfVN1
>>704

>PC側のソフトは何度も確認しましたが、問題はありません。
>VB6でMSCOMM.OUTPUT=chr(1バイトデータ)として送信しているだけです。
だから、それで本当に128以上の正しいデータが出てる確認は出来てるのか?
VB6のMSCOMMでやってるから問題ないと信じてるだけなんじゃないのか?

まあ、一番あやしいのがVB6のMSCOMMだがな。
707702:2007/05/26(土) 20:59:10 ID:JR0ByRcc
>705
正確な返答になっているかはわかりませんが、
PICからPCへの送信はprintfで行っていて、問題なく受信できています。
PCからの送信(PICの受信)の際に、702での問題が起きます。

PICへの送信データにbit7が入っていると、何らかのルールで受信不良(値0)が
起こるといった感じです。
bit7を無視してプログラムを組めば良いかもしれませんが、何か
悔しい気もします。
708774ワット発電中さん:2007/05/26(土) 21:07:42 ID:ukExfVN1
>>707
PCから出てるかどうかは確認できてないんだろ。

"MSCOMM キャラクタコード"
で、ググれ。
709702:2007/05/26(土) 21:08:04 ID:JR0ByRcc
>706
MSCOMMが怪しいなら、根本的な対策は不可かもしれませんね。
でも、そういうことは起きうるのだろうか??
データビット、パリティ、ストップビット、速度という基本的な
設定しかしていなのですが、他に設定すべきことがあるのかな?
調べてみますね。

RS-232Cのモニターは所有していないので、ライン上での
データ確認は出来ませんが、
他に作った装置(MAX232搭載品)でデータの受信テストをすれば、MSCOMMの問題かどうかは
判別できるかもしれないですね。これはやってみます。
710702:2007/05/26(土) 21:13:58 ID:JR0ByRcc
>708
「Output プロパティを使ってバイナリ データを送信する場合は、
バイト配列が格納されているバリアント型データを設定します。」
という情報を見つけました。
これを行えば上手く行きそうですね。試してみます。
有難う御座います!
711774ワット発電中さん:2007/05/26(土) 21:33:16 ID:ukExfVN1
>>710
「128以上の値のデータを送るにはバイナリモードに設定しないといけなかったんですね」

っていう、レスを期待してたんだが・・・

まあいいか。
712774ワット発電中さん:2007/05/26(土) 21:41:48 ID:ukExfVN1
713702:2007/05/26(土) 21:53:50 ID:JR0ByRcc
実機でも送信出来ました。
皆様有難う御座います!
714702:2007/05/26(土) 21:55:27 ID:JR0ByRcc
実機でも送信出来ました。
皆様有難う御座います!
715774ワット発電中さん:2007/05/26(土) 22:00:10 ID:OcJT6wdr
普通ループバックとかでテストするだろ?
716774ワット発電中さん:2007/05/26(土) 22:12:55 ID:T8eSM4Bs
今日の教訓は正しいはずという思い込みほど
怖いものはないということか。

しかし、ID:ukExfVN1の手際よかったね。
エスパーかとオモタよ。
717697:2007/05/27(日) 03:23:09 ID:SVpvTb7W
Bit Testでググったら解決しましたお手数おかけしました
が、しかし1ビットづつではなく、2ビットいっぺんに確認する際は
シフトして足してキャリーフラグが立ったら・・・・
のようにするべきなんでしょうか?
普通の人はどう書くんでしょうか?
718774ワット発電中さん:2007/05/27(日) 10:46:56 ID:lGmKTtz4
方法は2つ
1、ポートからRAMに転送しておいて BTFSC/BTFSS で分岐
2、and 命令した後
  ・両方が0かどうかはゼロフラグを BTFSC/BTFSS
  ・それ以外は引き算か、XORした後、ゼロフラグ

簡単なのは1
719774ワット発電中さん:2007/05/27(日) 22:51:52 ID:MpAC9yhv
>>717
ANDで回2ビット以外をマスク
比較命令で分岐(w
720774ワット発電中さん:2007/05/28(月) 11:21:11 ID:/ghIXjAj
PICの回路を作りたいんだけどどうにもうまくいかない。
参考になるサイトなんてないですかね?
721774ワット発電中さん:2007/05/28(月) 11:28:49 ID:yoZx9ybq
何がうまくいかないのか、、、エスパーまかせじゃうまくいかないよね。
722774ワット発電中さん:2007/05/28(月) 11:40:40 ID:/ghIXjAj
ですねえ・・・すみません。
まだ回路の基本ができてないみたいで
自分でもどこが悪いのかよくわからんようになってきましたTωT;)
723774ワット発電中さん:2007/05/28(月) 11:51:13 ID:xl2Kw2uN
そんなあなたに出来合いのキット(ただし秋月は駄目よ)
724774ワット発電中さん:2007/05/28(月) 12:04:28 ID:/ghIXjAj
出来合いのキット使いたいんだけど
作れって命令なんですTωT;
もうあるのに作れなんてしんじらんない・・・
725774ワット発電中さん:2007/05/28(月) 12:33:45 ID:FpqlsdcH
なんだそりゃ 回路もなにを作るかモ不明
726774ワット発電中さん:2007/05/28(月) 14:57:28 ID:VMHkdutV
学校の演習か仕事かしらないけど、
試行錯誤の末に自分が作った物が動くとうれしいもんだよ。
727774ワット発電中さん:2007/05/28(月) 15:27:48 ID:qr0R1Uba
参考になるサイトなら>>3にあるじゃん
728774ワット発電中さん:2007/05/29(火) 11:39:47 ID:pIvCae+G
小出し質問はPICスレの日常
729774ワット発電中さん:2007/05/29(火) 12:24:36 ID:u33EngOx
>>723
なんで秋月は駄目なん?
730774ワット発電中さん:2007/05/29(火) 12:29:32 ID:pIvCae+G
秋月のはキットというより部品セットだからだよ。
回路図と動作原理理解してないと組み立て困難だからエレキットから始めた方が良い。
731774ワット発電中さん:2007/05/29(火) 12:54:54 ID:G5wilgQk
物によるが 確かに理解してないとドツボにはまることがある
732774ワット発電中さん:2007/05/29(火) 15:06:35 ID:jiFxCaVP
ドツボにハマってからもっと簡単なキットに手を出すほうが勉強になるぞ。
733774ワット発電中さん:2007/05/29(火) 21:02:57 ID:u33EngOx
>>730 わかった ありがとう!
734774ワット発電中さん:2007/05/29(火) 21:16:33 ID:UVazckdR
電源ON直後の村田セラロック20MHzがきちんと発振しない。
基板はサンハヤトのMB-P02 。
指でランド触れれば発振開始する。
735774ワット発電中さん:2007/05/29(火) 22:11:32 ID:v48Zi6FU
>>734
で、そのセラロックの型番とPICの型番は?
指で触れたランドはどこ? PICのピン? セラロックのピン?
半田付けは大丈夫? 基板汚れてない?
736774ワット発電中さん:2007/05/29(火) 22:16:48 ID:jiFxCaVP
・PICのオシレータモード設定が誤っている
・ハンダ付けがテンプラ
・セラロックのほかに負荷Cを付けている
あたりじゃね?
737774ワット発電中さん:2007/05/29(火) 22:27:12 ID:UVazckdR
>>735
さっきオシロでセラロックの波形確認しながら、セラロック本体のランドを触ってみた。
セラロックの3ピン全部を触った瞬間に発振開始するようだ。
セラロック交換したが、症状は同じ。

図面up
ttp://www-2ch.net:8080/up/
のPIC1.jpg
738774ワット発電中さん:2007/05/29(火) 22:41:42 ID:jiFxCaVP
セラロックまで配線長すぎるんじゃ?
直付けでも発振せんか?
739774ワット発電中さん:2007/05/29(火) 23:49:59 ID:iV3cZX0S
セラロックに繋がってるスイッチ外して最短距離で配線しろ
ICSPの電源・信号の投入シーケンスがきちんとしてれば
スイッチでセラロックを殺す必要など無い
740774ワット発電中さん:2007/05/29(火) 23:50:16 ID:Gssm8/Gm
セラロックも4メガヘルツを超えれば5Vの電源でないと発振しないわな。
といってみるてすつ
741774ワット発電中さん:2007/05/29(火) 23:59:59 ID:wtLnWNiW
ブレッドボードでやってるとか
742774ワット発電中さん:2007/05/30(水) 00:36:05 ID:yO6V1R+c
セラロックに切り替えスイッチってどんな冗談?
743774ワット発電中さん:2007/05/30(水) 01:26:26 ID:msSqosPu
>>741-742
>>734 基板はサンハヤトのMB-P02 
744774ワット発電中さん:2007/05/30(水) 06:55:27 ID:bLSV/agD
>>738
これが原因のようです。
至近距離で配線し直しで、安定しました。
基板はサンハヤトのMB-P02ですので、みなさんの指摘のようなICSP切替え
SWが入っています。
745774ワット発電中さん:2007/05/30(水) 18:44:43 ID:poCVc5Ub
>>740
いつも単3電池2本で20MHZ発振させてますが何か
746774ワット発電中さん:2007/05/30(水) 20:23:24 ID:yO6V1R+c
ま、趣味用途だしね
747774ワット発電中さん:2007/05/30(水) 21:31:24 ID:eGx+rOpr
LEDを5×5にならべて、縦列方向のダイナミック点灯で数字や英字を表示させたいんですが、
何故か1列ずれて表示してしまいます。
回路はポートAを抵抗2kΩを介してトランジスタのベースにつなげて列を制御。
ポートBを抵抗220Ωを介してLEDに繋いで行を制御してます。
コードとしては

while(1)
{
output_a(0x01);//1列目に切り替え
delay_ms(3);
output_b(行ビットデータ);

output_a(0x02);//2列目に切り替え
delay_ms(3);
oubput_b(行ビットデータ);



output_a(0x10);//5列目に切り替え
delay_ms(3);
oubput_b(行ビットデータ);
}

何が悪いのかわかりません。アドバイスお願いします。
748774ワット発電中さん:2007/05/30(水) 21:37:58 ID:pM1wRXSs
delay_msとoutput_bは逆なんじゃない?
749774ワット発電中さん:2007/05/30(水) 22:07:22 ID:eGx+rOpr
>>748
ありがとうございます解決しました。

でもちょっとLEDが暗いのと、少しちらつきます。
何かキレイに表示させる良い方法は知りませんか?

750774ワット発電中さん:2007/05/30(水) 22:27:58 ID:bChwC+cJ
チラツキはインターバル割り込みを使えば改善すると思う
暗いのは電流をLEDのパルス定格まで上げるしかない
751774ワット発電中さん:2007/05/30(水) 22:52:09 ID:5dfkDTRl
>>749
output_a(0x01);//1列目に切り替え
output_b(行ビットデータ);
delay_ms(3);

output_b(行ビット全消灯データ); // ←追加

output_a(0x02);//2列目に切り替え
output_b(行ビットデータ);

と、列を変える前に消灯する行データを出力しないと、
次の行に前の行データが短期間だけど持ち越される
のではないか?
752774ワット発電中さん:2007/05/30(水) 23:03:38 ID:7dwTs/HP
>>749
delay_msの値を小さくすればちらつきは少なくなると思う。
全消灯の時間を設ければ、表示がくっきりするかも。
暗いのはデューティが20%だからだよ。抵抗を小さくして電流を大きくするしかない。

while(1) {

output_a(0x00);//消灯
delay_us(10);
output_a(0x01);//1列目に切り替え
output_b(行ビットデータ);
delay_ms(2);

output_a(0x00);//消灯
delay_us(20);
output_a(0x02);//2列目に切り替え
output_b(行ビットデータ);
delay_ms(2);
753774ワット発電中さん:2007/05/30(水) 23:07:50 ID:smhidzbx
>>749
1行あたり点灯時間3ミリ秒で5行だと、繰り返し周期15ミリ秒⇒毎秒の点灯回数は各行60回程度。
点灯回数は少なくとも毎秒100回はないとちらついて見える。150回以上は欲しいところ。

明るくするには点灯電流を増やすか、より高輝度のLEDを使うしかない。
連続して20mA流してちょうどの明るさのLEDだとすると、ダイナミック点灯で1/5の時間しか
点灯しないから、同じ明るさにするには100mA前後流す必要がある。
このくらいになるとPICで直接ドライブは無理だから、行もトランジスタ等のバッファを
使うのが無難。
連続3mAで十分な明るさの超高輝度LEDなら、5倍でも15mAだからPICで直接ドライブもいけそう。
754774ワット発電中さん:2007/05/31(木) 00:08:40 ID:k/rGlwE/
みなさんどうもありがとうございます。
おかげでだいぶ良い感じになってきました!
これからスクロール表示にも挑戦してみようと思います。
755774ワット発電中さん:2007/05/31(木) 07:37:46 ID:sdW0nGL1
ダイナミック点灯は結構周波数あげないとちらつくよね。
36Hzじゃ使い物にならんかった。
意外と人間の目の応答って速いんだね。
倍の72Hzで静止してればちらつかずに見えた。
756774ワット発電中さん:2007/05/31(木) 09:10:21 ID:3tCpv6W8
インバータ点灯でない昔ながらの蛍光灯が、50Hz地域で100Hzの点滅だけど、
割とちらついて見えるからね。
60Hz地区の120Hz点滅だとめったいにちらついて見えないんだが。
(それでも体調によってはちらついて見える。)
757774ワット発電中さん:2007/05/31(木) 09:54:24 ID:3tCpv6W8
3V電源を昇圧してPICを5V動作させるPSoCのSMP (Switch Mode Pump)風回路を作ってみた。

ttp://www35.tok2.com/home/xcrosgs2wy/dc_dc/img/3v_to_5v.gif 回路図
ttp://www35.tok2.com/home/xcrosgs2wy/dc_dc/src/3v_to_5v.hex PIC12F683用HEX
ttp://www35.tok2.com/home/xcrosgs2wy/dc_dc/src/3v_to_5v.c ソース

回路図中の2SK3366はシミュレータの都合で、テストでは2SK2961を使用。他のGPIOはオープン。
PSoCのSMPと比較するとパーツが2個多い(FETと抵抗)が、大電流に耐えるI/Oピンがないので仕方がない。

VDDがGP1の約1.73倍(32/19〜32/18)になるように制御がかかる。GP1が3Vの場合、VDDは約5.2Vになる。
効率は、この回路単体(他の負荷なし、IDD 0.8mA)で約50%、L出力のGPIOピン×1本を200Ωで
VDDにプルアップした場合(IDD 24mA)で約70%。
758774ワット発電中さん:2007/05/31(木) 13:44:13 ID:3tCpv6W8
ブレッドボードで組んだ状態がこれ(斜め配置だらけ・・・)

ttp://www35.tok2.com/home/xcrosgs2wy/dc_dc/img/board.jpg

右下の抵抗風のパーツが330μHのインダクタ。30mAかそこらであればこのサイズのものでOK。
759774ワット発電中さん:2007/06/01(金) 02:42:43 ID:8IrmrgKI
>>443
共立のそれ(KBC-P18LAN)、発売になったお
\6615だって
おまいらこのキンタマをどう思う?
760774ワット発電中さん:2007/06/01(金) 07:57:56 ID:9DOAzGxq
>>759
リレーにAC100V繋ぐやつが出てくる!
761774ワット発電中さん:2007/06/01(金) 10:46:41 ID:pefNEQJp
PIC、というかマイコン全般の初心者です。
ちょっとお聞きしたいのですが、ライターって、スレタイにあるようにWriter509がおすすめなんでしょうか?
安かったのでRCDライターキットを買い、組み立てて、一回書き込んでみたんですが(PICProg4U)、
その時はチップが駄目になってしまいました(書き込んだ後にデータを読み出しても書き込みが反映された形跡がない)。
もちろんチップ自体が不良品である可能性もあるのだろうけど、ライター自体の信頼性もちょっぴり疑ってしまっています…
762774ワット発電中さん:2007/06/01(金) 11:36:31 ID:OnXrGZJO
可能性は
・ そもそも書けていない
・ 高い電圧で壊した

普通は書き込む事で壊れない。 壊れたとすれば電源回路のミス等で壊したのでしょう。

安定した書込器を買うのも選択肢だし、
その金で測定器類を買って、必死で書込器の不良を捜して修正するのも勉強だし
763774ワット発電中さん:2007/06/01(金) 12:25:32 ID:Soqflob7
>>760
安いのには、安い理由があるわけで。

Writer509のほうが、RCDより確実なのは確かだが、最初に買うんだったら
キットより完成品を買ったほうがいいんじゃないか?
764774ワット発電中さん:2007/06/01(金) 12:49:05 ID:JqpuVuVF
Writer509を作るにはRCDライターなどで書き込めることが必須だからな
おまけにRCDライタはシリアルポートとの相性があるしUSB-シリアルでは書けないし。
完成品を買いましょうとしか言えないな。


だれかこれをPICで挑戦してくれ
http://homepage2.nifty.com/denshiken/AVW008.html
765774ワット発電中さん:2007/06/01(金) 13:15:45 ID:9DOAzGxq
おとなしくPICkit2買いなさい
これから出てくる3.3Vのデバイスの書き込みも安心できるから
PIC16F84Aだけ使うならアマライターでもOK
766774ワット発電中さん:2007/06/01(金) 14:13:10 ID:rquHroz+
初心者な質問です。

5本の出力信号 - | PIC | - 光ケーブル(1本) - | PIC | - 5本の信号入力信号

このようなシリアル通信をすることは可能なのでしょうか?
双方向ではなく、一方通行です。(できれば全2重がいいのですが)
2点間を絶縁しつつ、232Cのように信号線を何本も使うのではなく、
1本の光ケーブルで済ませたいのです。
PICのピの字もわからないのに
PIC16F873 x2 光1本, LEDその他部品だけ渡されました。

RX と TX だけを信号線として繋いでみたら動いたり動かなかったり。
動いても光ケーブルを途中で抜いたらもう2度と動かないし。
1本で済ませるような通信プロトコルがないと無理だと思うのです。
767774ワット発電中さん:2007/06/01(金) 14:30:44 ID:wiTUvlR9
>766
PIC内臓のUSARTモジュールは、一方通行なら1本でいけるよ。
非同期シリアル通信、いわゆるRS232Cと同じ方式でなので。

まずは非絶縁でPIC同士の通信だけやってみたら?
768761:2007/06/01(金) 14:38:40 ID:pefNEQJp
勉強になります。
書込器の解析よりは、まずPIC自体の勉強を優先させたいので安定した書込器を探すことにします。
どうもありがとうございました。
769774ワット発電中さん:2007/06/01(金) 15:18:38 ID:rquHroz+
>767
ありがとうございます。USARTモジュールすら知りませんでした。 orz
RS232Cと同じと思ってても、232Cには信号線が数本接続しているから
光1本のRXとTXシグナルだけでどうやって処理しているのかと思って。
エラー処理さえきちんとすれば光1本でも実現できるのですね。やってみます。
770774ワット発電中さん:2007/06/01(金) 16:47:48 ID:g3g2S4i4
「渡された」ってことは趣味じゃなくて仕事?
上司から「自分で工夫して勉強しろ」という意味で渡されたなら
自力でやらないと意味がなさそうだけど・・・

TTL<->光ケーブル変換モジュールは部品としてあるから、
活性挿抜(電源入れたまま接続を切ってしまう)対応のプログラムを
完成させるのが先かな。
まずはTTLレベルでスイッチ経由で接続して、
途中でスイッチ一度OFF(通信配線を切る)にしても復活するようにソフトを組む。
これがうまくいったら光通信モジュールを買ってきてつながれば終わり・・かと。
771774ワット発電中さん:2007/06/01(金) 17:18:22 ID:5pLuoGBI
>>764
WAV方式ライタ面白そうだが、それもサウンドデバイスとの相性があるよなw
772774ワット発電中さん:2007/06/01(金) 17:23:16 ID:rquHroz+
>>770
仕事ですし上司から「お手上げ」って渡された物です。
TTL-光変換モジュールはあるので取り付け、なんとか動作しました。
ただ一度でも光ケーブルを抜いたり、電源の中途半端な入れ方や
ケーブルの再接続すると固まった状態になって動作しません。
ソフトのエラー処理問題みたいですね。うがー。
773774ワット発電中さん:2007/06/01(金) 17:23:37 ID:Qk/Lgfi/
>>764
サウンド出力を使うやつは波形の立ち上がりがビミョーだからねぇ…

そのサイトのRSなんちゃらの方が確実かもしれないな。
エレキジャックのやつはそのRSなんちゃらが付いてるんじゃなかったっけ?
774774ワット発電中さん:2007/06/01(金) 17:29:43 ID:Soqflob7
>>772
信号の論理が逆になってるんじゃねーの?
光無しで信号はいりっぱなしみたいに。
775774ワット発電中さん:2007/06/01(金) 17:33:34 ID:8IrmrgKI
>>773
RSなんちゃらも、かなりトリッキーなやり方をしてるけど、
組んでみたらあっさりうまくいったお

そうです、エレキジャックのデュアルライターは、Writer509/JDM両用なんだけど、
自身のファームを書き込む方法はRS-CR方式で、鶏卵問題を解決してまつ
さらにそのRS-CR方式は、作者のソフトを使うと、非常に信頼性・再現性も高い
あの作者はいいセンスしてるお( ^ω^)
776774ワット発電中さん:2007/06/01(金) 17:43:47 ID:rquHroz+
>>774
オシロやLEDで確認しても大丈夫そうなんだけど、
一度エラーになると受信側が固まるっぽいです。
今はLEDだけど設計後が5KVの電圧スイッチ用なので
入りっぱとかはシャレならないす。
送信側は putc で 受信側は getc な事をしてるだけ。
エラー処理方法が分からないす  (. ; _ ; )
とにかく頑張ります。
777774ワット発電中さん:2007/06/01(金) 17:47:14 ID:JqpuVuVF
>>776
まさかPICのRXとTXをそのまま光に変換して通信してるってオチ?
778774ワット発電中さん:2007/06/01(金) 17:54:21 ID:Soqflob7
>>777
オチもくそも、それ以外はないだろ。
779774ワット発電中さん:2007/06/01(金) 17:55:08 ID:rquHroz+
    _, ,_    そうです。 8bit信号入力 - PIC - TX - 光 - RX - PIC - 8bit信号出力
  :.(;゚д゚):.  それじゃあダメなんですか?
   :.レV):. 
    :.<<:.   
780774ワット発電中さん:2007/06/01(金) 17:55:12 ID:wnacvHN4
マンチェスターとかコーディングしてないのか
781774ワット発電中さん:2007/06/01(金) 18:36:13 ID:Ong+2VOw
>>779
>エラー処理方法が分からないす  (. ; _ ; )
このレスを見て思ったのだが、
・通信不能時、外部から光以外でスイッチを操作する手段あるの?
・通信断した場合のスイッチの挙動の仕様(Offになる/現状維持とか)
・送信側はどうやって通信断を検出するの?
この辺の仕様が詰められてない気がしたのは俺だけか?
782774ワット発電中さん:2007/06/01(金) 18:41:28 ID:Soqflob7
>>781
そこまで仕様が詰めれるのなら、こんな問題起こってないだろ。
783774ワット発電中さん:2007/06/01(金) 19:00:46 ID:wiTUvlR9
>781
激しく同意。特に
・通信断した場合のスイッチの挙動の仕様(Offになる/現状維持とか)
が決まらないとエラー処理も何もないかと。
少なくともこの部分は光とかプロトコルとか以前の問題。
784774ワット発電中さん:2007/06/01(金) 20:59:19 ID:OnXrGZJO
調歩同期は スタートビットだけで同期してるから、その途中で抜けると必ずデータ化けする
だから、そういう用途なら必ずデータ化け確認の手段=チェックサムだの、XORだの、CRCだのが必要だ。

他の方法としては マンチェスタ符号や光リモコンのようなパルス幅変調
これなら、抜ければビット単位にデータが抜けるので調歩同期よりもCRCなどのチェックが弱くてもいい
785774ワット発電中さん:2007/06/01(金) 21:00:34 ID:j5VATfnL
USARTのエラー処理って・・・要は通信中断されると大概フレーミングエラーやオーバーランエラーになるから
そのエラーフラグをクリアしてやれば桶。
それって基本だろ。
786不明なデバイスさん:2007/06/01(金) 21:58:11 ID:RL2M3oI8
>>785
問題は通信再開の方にあるんだけど。
787774ワット発電中さん:2007/06/01(金) 22:48:55 ID:9DOAzGxq
FPGAにもシリアライザー/デシリアライザーが入ってる時代なのに
788774ワット発電中さん:2007/06/01(金) 23:26:20 ID:inspUpHX
■クリック戦争GAME4勃発!■
ハンガリーの大逆襲! 立ち上がりの猛攻撃!
現在大激戦中! ハンガリーに一億超の大差で苦戦中!
☆集え2chクリッカー!!!!!!!!!!!☆

【本スレ】http://wwwww.2ch.net/news4vip/「クリック」で検索。
ttp://click.hitobashira.org/up/src/hanocha0670.jpg.html

手動に疲れたら本スレでツールDLを!!
789774ワット発電中さん:2007/06/02(土) 01:20:34 ID:L8EXifmU
>>786
>問題は通信再開の方にあるんだけど。

どんな問題があるの? kwsk
790774ワット発電中さん:2007/06/02(土) 01:30:11 ID:d2tUTjfA
どういう顔していいかわからない....。
791774ワット発電中さん:2007/06/02(土) 01:42:36 ID:o1xPhROn
パソコン通信世代なら、調歩同期での伝送エラー発生とリカバリなんて
いくらでも身をもって体験してるからピンと来るのにな。
こんなところでインターネット世代とのギャップを感じてしまう。
792774ワット発電中さん:2007/06/02(土) 02:08:40 ID:kBxJf6Q4
> 送信側はどうやって通信断を検出するの?
送り返して送信と受信が一致したら断線なしとか
793774ワット発電中さん:2007/06/02(土) 02:09:30 ID:kBxJf6Q4
>>764 だれかこれをPICで挑戦してくれ
PIC16F648Aを使ったのが同じサイトにあるよ。
ttp://homepage2.nifty.com/denshiken/PIC001.html

エレキジャックの補足説明なので何が書いてあるのか解りにくいけど
回路図、ファームも全部あるのでここのデータだけでも作れる。

>775の指摘どおりWriter509+JDM+RS-CR方式なので
部品数が多く、初心者には基板がないと難しいかな。
794技術奴隷:2007/06/02(土) 03:03:05 ID:OWunQja9
>>776
仕事でやってるなら
●MPLAB ICE4000インサーキットエミュレータ(MPLAB ICE4000 In-Circuit Emulator):
か、最低でも
●MPLAB ICD2 インサーキットデバッガ(MPLAB ICD2In-Circuit Debugger):
ttp://www.microchip.co.jp/tools.html
を買って貰うのも手。固まってしまうのは今の段階ではソフトの問題だから
まず原因を調べる事が先決。マイコンをかじった事のある人ならデバッグ出力を出して仕事を進められるけど
そうで無く、Cから始めた様な人だと、まず、固まった時にPICがどの様な状態にあるのか把握するのが大変だから
ICEで直接見た方が理解しやすいと思う。
実機にのせるとノイズによる誤動作も有るので、それを見込んだプログラムを書かなきゃいけないけど
多分難しいだろうから

>今はLEDだけど設計後が5KVの電圧スイッチ用なので
>入りっぱとかはシャレならないす。

と言う事であれば、必要な信号線の分、光ファイバを使って直接ON/OFFした方が安全かも。
いずれにせよガンガレ

>>791
パソ通世代でも、エラー訂正なんてモデムがやってくれたし一般ユーザーは
エラー訂正なんて大して知らなかったんじゃないか?そもそもその時代は「文字化けしちゃった」
位で済ますのが普通であって、TCP/IPみたいにPC内部で再送処理なんかしてない事が多かった。
パソ通世代がターミナルソフトを使うのと今の人がIEを使うのは大差ないと思うよ。
勉強して理解してる奴は理解してるし、エロ画像専門の奴はそれなり。
ギャップを感じるのは単に(ry
795774ワット発電中さん:2007/06/02(土) 03:51:59 ID:o1xPhROn
教科書的な理解をしてるかどうかとは関係なく、パソ通世代は伝送エラーによる
文字化けというものを体験しているし、伝送エラーで化けたら化けなくなるまで
繰り返せばよいという最低限のエラー訂正プロトコルも実際に手を動かして
体験している。
どちらも、今の人がIEで体験したくてもできない・・・ということ自体、
体験がなければ指摘されるまでなかなか認識できないわけだが。
796774ワット発電中さん:2007/06/02(土) 09:35:11 ID:rF5I+DCg
音響カプラなんて、横でどたばたされると文字化けしたりとかいろいろあったな。
まだ電話のモジュラージャックなんて一般的じゃなかった時代さ(ふっ
797774ワット発電中さん:2007/06/02(土) 10:08:23 ID:HOZsGFUT
データ転送といえばアマチュア無線のパケット通信のTNCだっけ?
あれってPICやAVRじゃ作れないのかな?
Z80で前に見たような気がするけどPICやAVRだとメモリ足りないのかな。
798774ワット発電中さん:2007/06/02(土) 11:16:18 ID:bPO4tCh0
>>797
WA8WGA
799774ワット発電中さん:2007/06/02(土) 11:17:21 ID:bPO4tCh0
違った WB8WGAだった。
800774ワット発電中さん:2007/06/02(土) 12:26:32 ID:zlreMbkm
サウンドじゃなく、画面の点滅で焼けるようなの作ってよ。
非接触型が欲しい。

画面をチカチカさせるソフトと、
LEDを光センサとして受信して焼くハードの組み合わせ。

問題は読み出せないこと。
801のうし:2007/06/02(土) 12:54:25 ID:SbukU6/j
PICでそーやってるのをいつだかのトラ技の特集でやっていた。

CdSで画面からシリアル点滅を読んでロードするみょーなやつ。

それをやってる写真があったけどそこに写ってた女(だと思う)が凄っごく理工ブスだったやうな‥
802774ワット発電中さん:2007/06/02(土) 19:03:32 ID:HOZsGFUT
>>799
海外では既にあるのですか、参考にしてみます。

>>801
たしかLEDが8個くらいついてて振ると文字が出るっていうのだっけ?
画面で表示させる文字のデータを受信するっていうのだったかな。
803774ワット発電中さん:2007/06/02(土) 22:57:09 ID:xaBvDYmW
SDCC 2.7.0 でたねー
804PIC初心者:2007/06/02(土) 23:34:52 ID:U5CbOowi
はじめまして、PIC12f629マイコンを使って、入力した信号(別のマイコンから出たPWM信号)を遅延して、
遅延した信号と元の信号のANDとORを取って出力するプログラムを作りたいのですが、
初心者なので、なかなかうまくいきません。PICCLiteかアセンブラで書きたいと
思っているのですが、どなたかご教授ください。おねがいします。
805774ワット発電中さん:2007/06/02(土) 23:43:09 ID:o1xPhROn
なかなかすごいのが現れたぞ。
806774ワット発電中さん:2007/06/02(土) 23:47:14 ID:W9QkSAB7
まずは自分でなんやかんややってみて
つまずいたら質問してね。
最初から質問なんて、PIC道に反します。
807774ワット発電中さん:2007/06/03(日) 00:34:15 ID:1i6jm+Bv
>>803
SDCCって、どのあたりまでのPICをサポートしてんの?
808774ワット発電中さん:2007/06/03(日) 00:48:14 ID:DkMJqrn8
>>804
PWMの周期や幅が分からないけどマイコンで取り込んだら
タイミングがガタガタになりそうだね。

CR遅延とゲートICで組むべきでは
809774ワット発電中さん:2007/06/03(日) 00:56:54 ID:VBmT5AoB
>>804
うまくいかないって、今どうやって実現しようとしてるの?

PWM信号の仕様とか、遅延量、波形の精度・分解能とか・・・
PICのプログラム処理でやれるレベルなのか?
810774ワット発電中さん:2007/06/03(日) 01:10:40 ID:ozYNNQRI
>>807
この辺をサポートしてるらしい

PIC16系: ttp://sdcc.sourceforge.net/doc/sdccman.html/node107.html
PIC18系: ttp://sdcc.sourceforge.net/doc/sdccman.html/node116.html

なお、SDCCのドキュメントではPIC16系(14ビット命令)を「PIC14」、
PIC18系(16ビット命令)を「PIC16」と表現しているので注意。
811774ワット発電中さん:2007/06/03(日) 04:57:27 ID:4TZip1d5
Microchip PIC10F Design Contest っていうのがあったらしいね。
もう締め切っちゃったけど。
上位100作品にはPicKit2他、上位10作品には2000US$+ICD2だって。
何で誰も教えてくれなかったんだよ〜
812774ワット発電中さん:2007/06/03(日) 06:53:08 ID:aBY/qjTa
>>811
これって世界規模なんだよね。しかも作品じゃなくてアイディア募集。
いったい何百件応募があったやらw
813774ワット発電中さん:2007/06/03(日) 10:21:05 ID:hBoRWOSk
>>810
SDCCはMPLABに統合できるプラグインなんてあるのかな?
マニュアルみた限りは見当たらなかったんだけど・・・
814774ワット発電中さん:2007/06/03(日) 11:07:14 ID:/bUB08th
先月調べた段階では、なかった。
gputilsまでは統合できるんだけどね。
815774ワット発電中さん:2007/06/03(日) 11:21:22 ID:vyALk4UM
スレの流れを読まないで申し訳ないんだが、
前に「ロボティクスX1ボード」っていうサーボを最高8個まで制御できるマイクロコントローラーについて聞いたんだが、入手方法など知っている人がいたら教えてくれないだろうか?
816774ワット発電中さん:2007/06/03(日) 12:35:43 ID:IRGw7fOz
MPLABのエディタってバグありませんか?
最新バージョンのをCCSCコンパイラと統合して使ってるんですけど、
普通intとか#defineとか定義すると色が変わるじゃないですか?
でもある行だけ変わらなかったり、コメントみたいな色になったりするんですが…
817774ワット発電中さん:2007/06/03(日) 13:20:40 ID:/bUB08th
>>815
名前は違うけど、こんなの?

SSC-32 Servo Controller
http://www.lynxmotion.com/Product.aspx?productID=395&CategoryID=52

32chサーボコントローラーだそうな。オーバースペック?
818774ワット発電中さん:2007/06/03(日) 17:18:36 ID:hBoRWOSk
>>814
レスどうも。
コマンドラインで使うのがメンドなんでSourceForgeから探してみると、
結構あるのねIDE・・・以下参考までにどうぞ。

Piklab http://sourceforge.net/projects/piklab/
DevMic http://sourceforge.net/projects/devmic/
SDCC IDE http://sourceforge.net/projects/sdcc-ide/
(ファイル見つからず)
Win SDCC IDE http://sourceforge.net/projects/winsdccide/
(ファイル見つからず)
Microide http://sourceforge.net/projects/microide/
(ファイル見つからず)

ファイルが見つからないのはSourceForgeでのことなので、他の
サイトにあるかもしれません。
819774ワット発電中さん:2007/06/03(日) 18:11:57 ID:/bUB08th
そんなにあるんだ。PikLabは知ってけど、Linux用だと思ってた。
MPLABと比べてできはどうなんだろ。
820774ワット発電中さん:2007/06/03(日) 18:27:50 ID:vyALk4UM
>>187
レスサンクス
http://www.technobots.co.uk/
なんだかここで取り扱ってるらしいと聞いたんだが・・・
どうも販売してないらしく困っているのだ。
821774ワット発電中さん:2007/06/03(日) 18:28:51 ID:vyALk4UM
>>820
訂正
>>817
822774ワット発電中さん:2007/06/03(日) 19:49:02 ID:EcqPl6Hb
>>816
MPLABのバージョン次第では、エデイタを古いものにすればバグは直るかもしれない。
マイクロチップの会議室にでも書かないと直してくれそうにも無い予感。
ここにそんな事が書いてあったので、へんなトラブル避けるのに昔のエデイタに戻した。
http://www.ne.jp/asahi/air/variable/picmel/install/mplab7/index.htm
823774ワット発電中さん:2007/06/03(日) 19:54:57 ID:EcqPl6Hb
いつの間に日本フォーラムなんて出来たんだ?
http://forum.microchip.com/tt.aspx?forumid=183
824774ワット発電中さん:2007/06/04(月) 01:34:23 ID:8Y0VFCWt
またえらく活用されなさそうなフォーラムを作ったもんだなw
825774ワット発電中さん:2007/06/04(月) 07:51:29 ID:3Y2zAVRG
>>816
それは昔からだよ。
全角文字に弱いみたい。
行末に全角文字がある場合、文字によってはそういう挙動を示す。
行末の全角文字の後に半角文字のスペースなどを入れてやると直った気がする。
826774ワット発電中さん:2007/06/04(月) 13:52:36 ID:vpVx/zmz
PICでも使えるGCCってまだ無いの?
827774ワット発電中さん:2007/06/04(月) 15:18:51 ID:2O3J4PHN
やっぱエディタはMIFESでしょ(w
828774ワット発電中さん:2007/06/04(月) 16:17:59 ID:vpVx/zmz
MIFES懐かしいな、MS-DOS時代はすごく良いエディタだった。
Windows版出したけど売れなくて消えたな。
829774ワット発電中さん:2007/06/04(月) 17:01:25 ID:77JIUK1O
830774ワット発電中さん:2007/06/04(月) 17:05:42 ID:ch26etQ2
ああ、まだ売ってるんだ。ていうか高けえな。
4000yenの秀丸でいいや。
831774ワット発電中さん:2007/06/04(月) 17:54:54 ID:dpHoMQ1F
Vz
832774ワット発電中さん:2007/06/04(月) 19:15:05 ID:sMGYE/U2
>>827
つ edlin
833774ワット発電中さん:2007/06/04(月) 20:12:32 ID:pLY7/Sw+
xyzzy
834774ワット発電中さん:2007/06/04(月) 20:56:11 ID:sMGYE/U2
XPでも、まだ健在だったか。EDLIN

C:\>edlin hoge.c
新しいファイルです.
*i
1:*#include <stdio.h>
2:*^C

*E

C:\>

835774ワット発電中さん:2007/06/04(月) 20:57:12 ID:sMGYE/U2
もちろん、プロは

C:\>copy con hoge.c
#include <stdio.h>
^Z
1 個のファイルをコピーしました。

C:\>

ってやる。
836774ワット発電中さん:2007/06/04(月) 20:58:22 ID:dpHoMQ1F
復活したんじゃないか? 
837774ワット発電中さん:2007/06/04(月) 21:02:33 ID:vpVx/zmz
>>835
それたまにやってた、AUTOEXEC.BAT書くときとかに。
838774ワット発電中さん:2007/06/04(月) 21:06:28 ID:sMGYE/U2
C:\>adddrv /?
キャラクタ型デバイスドライバを組み込みます.

ADDDRV [ドライブ:][パス]ファイル名
[ドライブ:][パス]ファイル名 定義ファイルを指定します.

おー、こんなものまで、まだあるのか!
839774ワット発電中さん:2007/06/05(火) 20:27:34 ID:bPJj7le2
TSRとか、懐かしい言葉が浮かんできそうだ
840774ワット発電中さん:2007/06/05(火) 21:58:18 ID:0f1dSrAy
>>839
neko.com 乙
841774ワット発電中さん:2007/06/06(水) 00:19:31 ID:CHdyAYiz
>>685
βが出てもう一個買わなくてもおk


はガイシュツ?
842774ワット発電中さん:2007/06/06(水) 17:55:44 ID:y279bedc
761です。先日はどうもありがとうございました。
>>765さんのご忠告どおりpickit2、買って来ました。
これであと10年は戦える!(`・ω・´) シャキーン
と思ったらレッドバージョンなんてのもあるのね(´・ω・`)ショボーン
843774ワット発電中さん:2007/06/06(水) 18:36:49 ID:L3xadkPk
色なんてどうでもいいじゃまいか
844774ワット発電中さん:2007/06/06(水) 19:21:09 ID:y279bedc
書き込みの安定性も違うらしいです。
http://www.picgames.org/modules/tinyd1/index.php?id=16

以前のやつも改造すれば同等になるみたいだけど、買ってまだ幾日もたって
ないのにそんなことする勇気は無いなあ。高かったし。
845774ワット発電中さん:2007/06/06(水) 20:55:55 ID:0ep5WG8j
ここは20年以上も時間が遅れているのか
元気なオヤジどもめ..........

help|more でDOS窓も進化してることがわかるぞ
846774ワット発電中さん:2007/06/07(木) 09:52:02 ID:4CYpZwoK
ttp://solitonwave.co.jp/product/picant.html
これってどうなんだろうか?
つまらないバグがあるようだけど。
847774ワット発電中さん:2007/06/07(木) 09:56:50 ID:3Dhozdn8
ソースブースト、6.0は知らないが、以前のバージョンはライブラリが「ないも同然」だった
使い物になる組み込み関数の多寡って、けっこう大事だぞ
まあそれを言いだすとCCS-Cの圧勝になっちゃうんだが・・・
848774ワット発電中さん:2007/06/07(木) 15:08:31 ID:JEaXWLjY
16F88初めて使ったんだが

input_a(x)すらできねえ・・CCS-C
trisも設定したし、ADC,コンパレータもOFFにしたし
外部プルアップしてもLOWにおっこちたまま。
なんじゃこりゃ
849774ワット発電中さん:2007/06/07(木) 15:59:26 ID:Gipbn7Xh
>>848
どっかのサイトに書いてあったけど(英文のマニュアルに書いてある)が16f88のポートAってデフォルトでアナログの設定になってるらしいから、trisのまえに

setup_adc_ports(NO_ANALOGS);
//各ピンのインプット、アウトプットの設定
//0・・出力に。1・・入力に。
set_TRIS_A(0b11111111);


って設定してやらないとデジタル入出力にならないんよ。






850774ワット発電中さん:2007/06/07(木) 17:44:56 ID:JEaXWLjY
>849
なるほどサンクス!
851774ワット発電中さん:2007/06/07(木) 21:21:43 ID:bGi/oHQ2
>>848
16F88は初心者には向いてないよ。
素直に16F84Aから始めるとよいね。
852774ワット発電中さん:2007/06/07(木) 21:29:07 ID:PBab9dnl
84は知ってるでしょ
853774ワット発電中さん:2007/06/07(木) 21:32:42 ID:DFYpzQy2
PIC24シリーズの値段をチェックしようと思ってマルツのサイトを見ていたら・・・

ttp://www.marutsu.co.jp/user/shohin.php?p=14664

> ・SPDIP 80ピン
> ・SPDIP 80ピン
> ・SPDIP 80ピン

スゲー!ww(もちろん本当はTQFP)
854774ワット発電中さん:2007/06/07(木) 22:06:43 ID:xVu0RaZ1
>>842
赤バージョン改造は簡単.
チップ抵抗を交換してなんて馬鹿なことを考えずに,
おとなしく1/8Wまたは1/6Wの抵抗を貼り付けなさい.
(抵抗値を小さくしなければいけないところはチップ抵抗はずさずにに並列接続)
プラケースには余裕があるから大丈夫!
855774ワット発電中さん:2007/06/07(木) 22:39:31 ID:8+o5JjvR
ついさっきPICを始めたばかりなのですが16F84Aでラジコン用RCサーボを幾つか動かしたいのですが一個のPICで同時に何個まで動かせると思いますか?C言語で開発したいと考えてます。ちょっとした質問
856774ワット発電中さん:2007/06/07(木) 22:42:36 ID:a+4+rZYR
>>855
PWM機能を持っているマイコンを使ったほうが楽と思う。

ソフトウェアPWMでいけるかなぁ?だとすれば、13個か?w

857774ワット発電中さん:2007/06/07(木) 22:55:01 ID:DFYpzQy2
>>855
仕様と才能次第。
サーボ信号周期は?分解能は?サーボ位置の(PICへの)指示方法は?PICのクロックは?
858774ワット発電中さん:2007/06/07(木) 23:18:41 ID:Bh/FQuQE
>855
RCサーボの制御用PWMのDuty比は大体10%以下だから力技でも10個までは
いけるんじゃないの?
あとは>857の言うとおり仕様次第。

>856のいうPWM機能ってちょうどいい周波数ってあったけか?
タイマとソフトウェアでやるほうが簡単じゃないかな。
859774ワット発電中さん:2007/06/07(木) 23:27:49 ID:cnCM85zs
RCサーボはおよそ50Hz周期の

____|~~~|___________________________________________________|~~~|______
    |<---------約15〜22ms---------------->|

1.5ms のHパルスが中立で 1〜2msパルス幅で制御する

こんなパルス波形だから複数を

____|~~~|___________________________________________________|~~~|______

____________|~~~|___________________________________________________|~~~|______

_____________________|~~~|___________________________________________________|~~~|______

と言う感じで出せば、この1〜2msの間割り込み禁止すればいいので6台くらいは楽勝
860774ワット発電中さん:2007/06/07(木) 23:30:49 ID:PBab9dnl
>>855
16F88はPWM機能がある。

とりあえず16F84Aあたりからやるのが無難かな
861774ワット発電中さん:2007/06/07(木) 23:36:34 ID:cnCM85zs
あっと >>859 の図で H パルスの幅にはシビアだけど Lの幅には甘いから
Hの間だけ割り込み禁止して nopでwait してL出して
割り込み許可して、次のポートの処理して
って感じでイケルよって事ね。
862774ワット発電中さん:2007/06/07(木) 23:41:10 ID:a+4+rZYR
863855:2007/06/08(金) 00:20:14 ID:VRkzn0vY
レスありがとうございます。
イメージ的には862さんのと同じですね。(私も最初調べたときリンク先を見ました。)
16F88が最強とは聞いたのですがコンセプトはフリーの環境でいかに多くのサーボを制御するか・・・みたいな感じなので
最初にPICやるなら84Aからがいいよと勧められた経緯もあります。
サーボですがプチロボのサーボを使いたいと考えてます。サーボの詳しいデータシートがあればよかったのですがちょっと探しきれませんでした。
分解能は512ぐらいあれば十分かと思います。
PICの動作周波数は10MHZのを使ってますが20MHZが使えるようであれば20MHZにしようかなと考えてます。
サーボ位置の(PICへの)指示方法ですがこれがまだ決めてません。まずはボタンで右左動かそうとは考えていますがPWMジェネレーターにした16F84Aとは
別のPIC(おそらくこちらも16F84Aで)とで通信させてみたいのです。まだ細かな仕様は決めてません。説明不足ですみません。
864774ワット発電中さん:2007/06/08(金) 01:25:36 ID:bj1lmwli
>863
> 分解能は512ぐらいあれば十分かと思います。
パルス幅1〜2msを512段階だから1段階あたり2usか・・・10MHzのクロックで
1命令サイクル0.4usだから割り込み使わないと厳しいね。
しかし、PIC側はともかくRCサーボってそんなに分解能取れたっけか?

> 別のPIC(おそらくこちらも16F84Aで)とで通信させてみたいのです。
上の条件でタイミングの条件が厳しくなるならマイコン同士の通信は内臓
モジュールを使ったほうがいい。USART、SPI、I2Cといろいろあるけどどれを
選ぶにしてもPIC16F88かな。
ただ、PIC同士(にかかわらずだけど)の通信は簡単なように見えて初心者には
引っかかりやすいところが多いから最初はPIC16F84Aひとつだけでやってみる
のがお勧めです。

ま。なんにせよがんばってください。
865774ワット発電中さん:2007/06/08(金) 05:42:20 ID:FUVmaXM1
PICからのサーボ出力は何も1個づつしかだめってことはないので、
複数オンしておいてそれぞれ必要なタイミングでオフすればたくさん
制御できる。まぁ、電源が弱ければできないけど。
866774ワット発電中さん:2007/06/08(金) 08:40:31 ID:RMxakuIk
>>811-812
いまはMicrochip 16-bit Embedded Control Design Contestってのをやってるぞ。

ttp://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2529¶m=en528694
867774ワット発電中さん:2007/06/08(金) 08:44:59 ID:+nSWi6Fk
分解能512は意味が無いと思う。
無駄に苦労が増えて益無し。 せいぜい256。 これでも十分すぎる。
12Mのクロックで、12命令分が時間分解能だから
これだと割り込みでは逆に厳しい。
割り込み禁止して12命令のループで2つのカウンタを処理すれば
12個くらい処理出来るだろうけど、

ただ問題は、この方式だと割り込み禁止期間が大きいから通信が難しい事だな。
868774ワット発電中さん:2007/06/08(金) 09:05:38 ID:nLqQYnkv
PSoCだと8ビットPWMで良ければ16個、プリスケーラで一つ潰しても15個
通信はI2Cで・・と、つい考えてしまう
869866:2007/06/08(金) 10:06:40 ID:RMxakuIk
ありゃ、>>866のURLが化けてるな。2chでは「&」がエスケープされないんだっけ?

ttp://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2529&param=en528694

「&」を全角にしてみた。半角に直してからジャンプちょ。
870774ワット発電中さん:2007/06/08(金) 11:21:19 ID:RMxakuIk
>>863
その内容なら、アセンブラで書くなら出力ポート全部(PIC16F84Aなら13本)に
分解能500で出力しても十分いけるが(それだと制御入力ピンがなくなるがw)、
Cで書くんだとコンパイラの最適化能力次第かな。

タイトループの実行時間が長いと分解能は落とさざるを得ない。
もっとも、分解能は100もあれば十分かという気もするが。

プロポ位置決めパルスの出力中は他の実行時間不定の処理(割り込み含む)が
できないから、PIC16F84Aでソフトシリアルで通信するには一工夫が必要。
PIC16F88等のシリアル機能内蔵品種を使えばパルス出力中でもシリアル送受信が
できるから、対策はぐっと楽になる。


>>868
スレ違いだが、位置決めパルス周期20ms、パルス幅の可変域が1ms、可変域の
分解能が8ビットとすると、PWMの分解能は13ビット弱必要。
8ビットPWMでは可変域の分解能が実質4ビット弱しかなくなってしまって全然足りない。
といって16ビットPWMを使うと1チャネルあたり2ブロック食うのでもったいない。

各チャネルを8ビットタイマ、その立ち上がりタイミングを別のタイマで
取るようにすれば、実質分解能8ビットのまま16ブロックで15チャネル取れる。
871774ワット発電中さん:2007/06/08(金) 13:57:27 ID:nLqQYnkv
8ビットPWMのEnableを1個の16ビットPWMで一斉にコントロールしてやるとかな
872774ワット発電中さん:2007/06/08(金) 17:52:39 ID:HapVOvs5
PICに興味を持ったのですが、適当に本買えばなんとかできますか?
一応PC組めてC使える位のスキルはあるんですが・・・
873774ワット発電中さん:2007/06/08(金) 18:04:50 ID:BCu5N0O4
分解能で必要なタイミングで割り込みを掛け、チャンネルごとにHiかLoか判断してパタパタさせる。
割り込みから抜けたら通信とかをする。
通信で取りこぼしをしないためには分解能を下げる必要があるかも知れない。
874774ワット発電中さん:2007/06/08(金) 18:09:19 ID:y0LrJHUe
>>872
その「なんとか」が、LEDをチカチカさせる程度か二足歩行ロボットをコントロールするかによって変わるぞ。
875774ワット発電中さん:2007/06/08(金) 19:30:58 ID:HapVOvs5
>>674
LEDチカチカの方からステップアップしたいと考えています
876774ワット発電中さん:2007/06/08(金) 19:35:55 ID:y0LrJHUe
それなら、余裕でOK                だと思う。
877774ワット発電中さん:2007/06/08(金) 19:50:05 ID:HapVOvs5
>>876
ありがとうございます
早速明日にでも挑戦してみたいと思います
878774ワット発電中さん:2007/06/08(金) 19:50:46 ID:LlmfffNA
picって初めて触った時はLEDチカチカどころか
「チカ」させるだけで3日ぐらい掛かったよ。
もう20年以上昔の話だけど。
879774ワット発電中さん:2007/06/08(金) 20:03:10 ID:opNF80T+
>877
イランおせっかいかもしれないけど適当な参考書。

改訂版 電子工作のための「PIC16F活用ガイドブッック」
ttp://www.picfun.com/picbookA.html
880774ワット発電中さん:2007/06/08(金) 20:13:42 ID:HapVOvs5
>>879
丁度今参考書を探していたところです
分かりやすそうですね。
881774ワット発電中さん:2007/06/08(金) 20:49:51 ID:+ke+hyYu
似たような本で C言語によるPICプログラミング入門
てのを買った。
882774ワット発電中さん:2007/06/08(金) 20:51:40 ID:HapVOvs5
Cとアセンブリどっちの方がやり易いですか?

Cだとコンパイラが少ないみたいで心配なんですが・・・
883774ワット発電中さん:2007/06/08(金) 21:04:01 ID:+ke+hyYu
制限あるけどfree のCがあるよ
mikroCってやつ バグがあるけど慣れたから使いやすい
884774ワット発電中さん:2007/06/08(金) 21:10:23 ID:opNF80T+
>882
実際に書くのはCの方が楽だけどCを選ぶことはアセンブラの勉強を
しなくてよいことを意味しない。
最初はアセンブラから入るのが正解だと思う。
885774ワット発電中さん:2007/06/08(金) 21:48:47 ID:8I1VQ0AR
>>883
SDCCは?
886774ワット発電中さん:2007/06/08(金) 21:49:23 ID:8I1VQ0AR
>>884
PICのアセンブラなんて、覚えるだけ人生の無駄遣い。
ちゃかちゃかとCで書け。
887774ワット発電中さん:2007/06/08(金) 21:53:23 ID:7OXPgdgQ
>>884に同意だけど算術演算とかってアセンブラでやってられない。フリーでもコンパイラは持ってたが良いよ。LEDチカチカくらいはアセンブラでいいかもしれないけど
888774ワット発電中さん:2007/06/08(金) 22:06:52 ID:RMxakuIk
>>882
趣味だから何をどういう順番でやってもいいわけだが、1つずつ着実に事を進める
性格だったら、既にスキルのあるC言語を使うことを勧める。そのほうが
「PICというハードウェアを使ってみること」と「アセンブラを新たに習得すること」を
同時にやるよりは敷居が低い。

漏れはロッククライミングのごとく苦労するのが楽しみで、何でもまとめて
一度に手をつけたがるタチだが。(そして挫折して放り出すことも多い。)


>>878
20年以上前からか。
Microchip社ができる前から使ってるとは凄いなw
889774ワット発電中さん:2007/06/08(金) 22:07:13 ID:opNF80T+
>886
ほかのマイコンでアセンブリ言語に触れてるんならそのとおりだと思う。
逆に、初マイコンで高級言語から始めるなら選ぶべきはPICじゃないと思う。
890774ワット発電中さん:2007/06/08(金) 22:08:45 ID:+ke+hyYu
>>885
使ったことないのでわからない 
891774ワット発電中さん:2007/06/08(金) 23:31:12 ID:w//S/FFv
まぁ、とにかくやってみれば?
すんなり使えるかトラブリまくるかは人によって違うし。
ここで聞いても始まらん。
行動あるのみ!ガンガレ
892774ワット発電中さん:2007/06/09(土) 14:38:33 ID:sVvzmqJ7
PICでC使うなら他のマイコン(AVRとか)でC使った方がよくないか。
PICでC使ってる参考資料はそれほど多くは無いから、参考資料少ない
てもいいのならPICにこだわらなくてもいいはず。
一から始めるならPICでは無く 新しいマイコンを使った方が楽だし


893872:2007/06/09(土) 18:20:45 ID:FHOmvVxt
PICのライターが高くて手が出せません・・・
自作してみようと思いますが、おすすめはありますか?
894技術奴隷:2007/06/09(土) 18:25:08 ID:o4W7FlDW
895774ワット発電中さん:2007/06/09(土) 18:30:30 ID:qzHvmMGV
8bit PICはコンパイラ動かすのに向いたアーキテクチャじゃないから.........
大昔のリソースきちきちのDSPみたいな感じ
でも16bit PICはイイ!
896774ワット発電中さん:2007/06/09(土) 19:43:35 ID:3uh7TXlt
>>893
PCはデスクトップかノートか?
PC本体にシリアルインターフェース(DSub-9)は付いているか?
学校/会社/知り合いにライターを借りることができるか?
897774ワット発電中さん:2007/06/09(土) 20:14:24 ID:8wHqt+xR
つか予算は?
898774ワット発電中さん:2007/06/09(土) 20:23:19 ID:wAdgnSu/
PICkit2くらい買えよw
899774ワット発電中さん:2007/06/09(土) 20:35:12 ID:agtJcebI
PICやめてAVRにしたら?
AVRISPmkIIなら6000円程度で買えるよ。
gccも使えるし。
900774ワット発電中さん:2007/06/09(土) 20:46:36 ID:i8uRrjDk
ヤフオクで書き込める奴3000円ぐらいで買った。
いろいろやったらLEDがピコピコするようになった。
嬉しい。
901774ワット発電中さん:2007/06/09(土) 20:48:10 ID:WSHVRTo7
エレキジャックのPIC Dualライター、なかなかいいよ
鶏卵問題を予想以上に再現性の良い方法で解決してるし、安定動作するよ (^o^)
902872:2007/06/09(土) 21:53:20 ID:FHOmvVxt
>>896
ノートPCを使っていて、232Cポートの変換アダプタは持っています

>>897
5000円くらいでできると嬉しいのですが・・・
秋葉原は電車で30分圏内なので、部品調達で困ることは無いかと

>>901
エレキジャックのPICライタですね
調べてみます
903774ワット発電中さん:2007/06/09(土) 22:00:24 ID:2FLH7m2O
904774ワット発電中さん:2007/06/09(土) 22:01:26 ID:Ws1H81qE
PICでwavもしくはmp3を再生することは可能でしょうか?
もし可能であれば参考になるサイトを教えていただけないでしょうか。
905774ワット発電中さん:2007/06/09(土) 22:48:00 ID:HN74TQFS
> Vbe=0.6V 一定説の考察結果

"説"ってなんだよw。ヒトラー生存説みたいだなww。
味があるね、ダメ君の天然加減。

データシートに書いてある内容をわざわざSim乙です。
ライブラリの逆アセンブルみたいなもんだな。


> ぜひ追試検証を・検討をお願いします。

教えてくれと、なぜ素直に言えないのだろうか。
つーか、甘えてるというか。
だから”エンジニアじゃないのか?”って言われちゃうんだ。

世のレギュレータが動いているんだから、検証もなにも。


>入力電源方向へ流れ、2N3055は壊れてしまいます。

まだ逆流してるのね...。
Simの定電圧源、電流源じゃなくて、現実の回路は(ry


ダメンジョン君、実回路で検証してみては?
その行為なら価値があると思うよ。
906774ワット発電中さん:2007/06/09(土) 22:49:45 ID:HN74TQFS
すんまそん。誤爆しますた。
Damensionに関しては、PIC-ML同様、スルーでおながいしまつ。
907774ワット発電中さん:2007/06/09(土) 23:12:00 ID:CVBInlmU
908774ワット発電中さん:2007/06/09(土) 23:24:49 ID:sbf8N322
>>902
Microchip Directで純正ライタPICkit 2を買ったら?
USB接続で手軽だし、VDDやVPPの電圧はPICの品種に応じて自動で変えてくれる。
1台$34.99+送料$15+税$1.75、合計$51.74、レート$1=125円として6,500円ほど。
3台まで送料$15だから、まとめて買って残りをヤフオクで売り払う手もある。
909774ワット発電中さん:2007/06/09(土) 23:36:11 ID:8wHqt+xR
>>903
変換で動くっけ?

>>902
PICマイコン関連 > PICライタ - ミニPICプログラマ(完成品) -
ttp://halfmat.ocnk.net/product/1
3,800 円

PICマイコン関連 > PICライタ - ミニPICプログラマ(組み立てキット) -
ttp://halfmat.ocnk.net/product/9
2,800 円

★たいへん申し訳ございませんが、月末までこの商品の再入荷予定はありません。

待てば?
それまでホームページ巡りでもしていろいろソースコード眺めたり、
英語のデータシートの読みかた覚えたり、
適当にコード書いてMPLAB IDE でシミュレーションしたりしてたら?
電子工作って趣味はそれなりに金かかるよ(-。-) ボソッw
910774ワット発電中さん:2007/06/09(土) 23:53:18 ID:3uh7TXlt
>>902
>232Cポートの変換アダプタは…
「ポートリプリケータ」や「ドック」のことならRCDライタでも動くかもしれない(ビミョーだけど)
「USB-RS232C変換」のことならRCDライタはたぶん無理。

でも、ノートPCなら「USB」または「USB-RS232C変換」対応のもののほうが無難。
911774ワット発電中さん:2007/06/10(日) 01:00:47 ID:biEcp5+f
信頼性が低いキットに2800円も出すなら、安いとこだと5900円くらいで買えるPICkit2を買ったほうがいい気がする。
書き込みが速くて、たいがいのPICは2-3秒で焼けてしまう。
Version2になって添付ソフトが糞重くなった(メモリ27MBも喰う)のが難点だが。
912774ワット発電中さん:2007/06/10(日) 02:13:10 ID:Mf56xoo1
>>902
http://www.marutsu.co.jp/user/shohin.php?p=17874
これだとUSBバスパワーで付属品不要だ。
共立電子も扱いあって、送料が安い。

中をあければ、ICPに化けるという裏技もあるぞ。(ランドがある)
913774ワット発電中さん:2007/06/10(日) 13:51:42 ID:tOL5wbRO
>>912
それってたしかKitsrusのdiypackそのまんまなんだよね。
久しぶりに現状どうなってるか見に行ったら、diypack26ベータ2まで来てたんだけど、
作者(newfound)が、あまりにも海賊版(コピーライトを削除した偽造品)が横行するんで
火病って公開を停止してしまってる(´・ω・`) ←まさしく今日の話
でも完全にぶち切れたわけではなく、diypack27を出す気はまだあるみたいなんで、
作者をこれ以上怒らせないように、生暖かく待ってるしか、ないみたいだね。

・・・まさかアドウィンのやつもライセンス守ってない海賊版とかじゃないよね?
せっかく回路図もファームも公開してくれてんだから、後ろ足で砂をひっかけるような
ことしちゃ、だめだよね(´・ω・`)
914774ワット発電中さん:2007/06/10(日) 15:43:56 ID:5BAUh/Uy
ライター関連でWisp628の著作権を意訳すると、個人で作るのは自由だが
プリント基板を配布するときは開発者も儲かるようにして欲しいらしい
915774ワット発電中さん:2007/06/15(金) 08:59:09 ID:5fcdiE1Y
やっぱり盛り上がるのはWriterネタのみなのか・・・
916774ワット発電中さん:2007/06/15(金) 13:13:01 ID:CB3Dr0H1
16F873はVcc=5[V]以下でも動作させることができるんでしょうか?
917774ワット発電中さん:2007/06/15(金) 13:44:14 ID:MHgqsRv+
>916
16MHzで動かすにはVcc=4.0V以上必要。
20MHzで動かすにはVcc=4.5V以上必要。
詳しくはデータシートのELECTRICAL CHARACTERISTICSの項目を
参照。

ただし、趣味のレベルでは3.3Vでも動作させられるものもあるみたい。
918774ワット発電中さん:2007/06/15(金) 14:56:09 ID:MSDQAa73
>>915
それがPICクオリティ
919のうし:2007/06/15(金) 18:42:32 ID:03nKokoK
それやったらもうおしまい。
あとは目的がないから製作やプログラミングもせずにお蔵入り。

でも焼くことすらできなかったのもいたが‥ (○原)
ハードが弄れずに買っただけで理解した気分になる奴が多い。
920774ワット発電中さん:2007/06/17(日) 11:59:37 ID:oB+PBxdr
>>916
動く保障はないが、単三電池二本で動いたりもする
92178:2007/06/17(日) 17:44:22 ID:qvyRy0al
以前↓の件でお世話になった者です。
ttp://www8.plala.or.jp/InHisTime/page005.html#PIC-006
お蔭様で12F683は点滅しました。PIC自体の故障だったようです。
それで、またまた質問で恐縮ですが、16F88のCONFIGは、

_CCP1_RB3
_LVP_OFF
_WDT_OFF
_MCLR_OFF
_EXTCLK
でよろしいでしょうか?
PIN9に電圧が出ないのでCONFIGがおかしいのかと・・・
発振周波数の計測まではうまくいっているようで、周波数カウンタ
で測った周波数の動きと緑・赤・橙LEDの点滅状態は整合しています。
922774ワット発電中さん:2007/06/17(日) 18:27:43 ID:+cHZBOy5
MikroCのバージョンは?
古いとPWMがうまくうごかないよ 

ちなみに俺のは6.2.10
92378:2007/06/17(日) 19:37:53 ID:qvyRy0al
>>922
6.2.1.0 です。
924774ワット発電中さん:2007/06/17(日) 21:13:52 ID:bmodrSRN
なぜ_EXTCLK?
単に「よろしいでしょうか?」と聞くんじゃなくて
「〜という理由で〜にしましたが、これでよろしいでしょうか?」と聞くべき。
小出し、出し惜しみはやめましょう。
92578:2007/06/17(日) 21:24:57 ID:qvyRy0al
>>924
>>89 と同じにしてみたのですが・・・
926774ワット発電中さん:2007/06/17(日) 21:41:34 ID:bmodrSRN
つまり内容は考えてないのか。
まず考えろよ・・・
92778:2007/06/17(日) 21:41:55 ID:qvyRy0al
すみません補足です。
申し訳ありませんが、私はPICの知識は殆どなく、
私が作ろうとしているもののレベルには全く至っておりません。
ただ、これを作ってみたいという一心でいろんなHPを見たり
皆さんに教えていただいて何とかここまで辿り着きました。
PICの勉強をしたいというより作ってみたいというのが正直なところです。
本来ならCONFIGの勉強をしてから質問すべきなのでしょうが、
>>1 を見て甘えさせていただきました。

>>921は実際のところ「CONFIGはどのようにすればよいのでしょうか?」
という質問になってしまいます。。。
928774ワット発電中さん:2007/06/17(日) 22:08:46 ID:oI/Zrt9Y
Cだとソースコードにコンフィグビット書けないのか・・・
回路図、ソースコード、データシートを見て自分で考えた方が勉強になると思うよ
単に完成されたいだけならサイトオーナーに聞けば?
929774ワット発電中さん:2007/06/17(日) 22:21:57 ID:+cHZBOy5
内部クロック 8Mhz INTRC_IO 

回路図には載ってないけど5Vのレギュレーターにコンデンサーついてなくて
動かないとかない? 
930774ワット発電中さん:2007/06/17(日) 22:28:28 ID:cl/BhS/q
>>921
16F88には外部からクロック入力はないから、
_EXTCLK じゃなくて、
_INTRC_IO だと思うが。
93178:2007/06/17(日) 22:37:16 ID:qvyRy0al
>>929
>>930
ありがとうございます。
クロックを_INTRC_IOでやってみましたが(他は>>921のとおり)、
ダメでした。
PICまで5Vは来ており、また、>>921で書いたとおり、周波数の
計測と3つのLCDの点灯まではきちんと動きます。
PIN9から電圧が出ない・・・んです。
932774ワット発電中さん:2007/06/17(日) 22:40:57 ID:g08wMJ7y
>>928
#pragmaだかの拡張命令で書けたはずだが...(もちコンパイラ依存
933774ワット発電中さん:2007/06/17(日) 22:49:03 ID:jnmTFeW0
>931
素直にサイトの管理人にメールしたら?
コンフィグの設定がページ上に書かれるようになれば、ほかの訪問者にとっても
よい事なんだし。
934774ワット発電中さん:2007/06/17(日) 23:03:01 ID:+cHZBOy5
いま ブレッドボードで組んでやってみたけど
RB3からほぼ duty50%ぐらいの波形が確認できるけど
935774ワット発電中さん:2007/06/17(日) 23:04:39 ID:v5/lKDgd
>>934
asmを本人にあげればいい
それで解決
936774ワット発電中さん:2007/06/17(日) 23:12:58 ID:+cHZBOy5
:10000000CB2BFF3FFF3FFF3FFF00030E8301C500E7
:100010000408C4000A08C6008A0171088316A200F9
:100020007008A10000308B180130F1007108013A0E
:10003000031D3A288B1083122108FF3A031D212843
:100040003A282108003A031D2A2883160516831230
:10005000A10A3A28A10A80302206F0008030210649
:10006000700203183A288316051283120512FF3016
:10007000A1003A280313831283162208F1002108F5
:10008000F000831246088A0044088400450E83006D
:10009000FF0E7F0E0900031383127408F80275081F
:1000A000031C750FF9027608031C760FFA02770815
:1000B000031C770FFB02F30D0730FC00730DF80DE6
:1000C000F90DFA0DFB0D7408731C7428F8027508FD
:1000D000031C750FF9027608031C760FFA027708E5
:1000E000031C770FFB028128F80775080318750FAA
:1000F000F90776080318760FFA0777080318770FC1
:10010000FB07F30DFC0B5E28720DF80DF90DFA0DCF
:10011000FB0D7408731C9A28F8027508031C750FF0
:10012000F9027608031C760FFA027708031C770F92
:10013000FB02A728F80775080318750FF90776085A
:100140000318760FFA0777080318770FFB07F20DED
:100150000730FC00720DF80DF90DFA0DFB0D740857
:10016000721CC028F8027508031C750FF902760886
:10017000031C760FFA027708031C770FFB02CD28C9
:10018000F80775080318750FF90776080318760F36
:10019000FA0777080318770FFB07F20DFC0BAA2864
:1001A000710DF80DF90DFA0DFB0D7408721CE6289F
:1001B000F8027508031C750FF9027608031C760F08
:1001C000FA027708031C770FFB02F328F80775087B
:1001D0000318750FF90776080318760FFA077708E2
:1001E0000318770FFB07F10D0730FC00710DF80DB8
:1001F000F90DFA0DFB0D7408711C0C29F802750835
:10020000031C750FF9027608031C760FFA027708B3
:10021000031C770FFB021929F80775080318750FDF
:10022000F90776080318760FFA0777080318770F8F
:10023000FB07F10DFC0BF628700DF80DF90DFA0D0A
:10024000FB0D7408711C3229F8027508031C750F28
:10025000F9027608031C760FFA027708031C770F61
:10026000FB023F29F80775080318750FF907760890
:100270000318760FFA0777080318770FFB07F00DBE
:100280000730FC00700DF80DF90DFA0DFB0D740828
:10029000701C5829F8027508031C750FF9027608BE
:1002A000031C760FFA027708031C770FFB026529FF
:1002B000F80775080318750FF90776080318760F05
:1002C000FA0777080318770FFB07F00DFC0B42299C
:1002D000701878297408F80775080318750FF9075E
937774ワット発電中さん:2007/06/17(日) 23:13:43 ID:+cHZBOy5
:1002E00076080318760FFA0777080318770FFB07CD
:1002F000080003138312FB09FA09F909F809F80A3F
:100300000319F90A0319FA0A0319FB0A080003136F
:1003100083126F088316A00020088400A00A00083A
:10032000F0007008031D8C2983126F0883162002C9
:10033000F0000130F002F101031CF103080000306D
:100340000313831698180130F1007108003A031D59
:10035000AB2900009F2983126F089900080003133E
:100360008312FC01F71BFC0AFD01FB01FA01F901F4
:10037000F80173087204710470040319432A7308A6
:100380007706A000A01BFD09F71FD129F409F50984
:10039000F609F709F40A0319F50A0319F60A03190D
:1003A000F70AF31FDE29F009F109F209F309F00A4F
:1003B0000319F10A0319F20A0319F30A73087704FF
:1003C000A000A01BFF294B20FC1B1C2AFD1F432A59
:1003D000F009F109F209F309F00A0319F10A031906
:1003E000F20A0319F30AF809F909FA09FB09F80AEC
:1003F0000319F90A0319FA0A0319FB0A432AF71F1A
:10040000162AF31B102A7308FB007208FA00710801
:10041000F9007008F800F301F201F101F001E6299A
:10042000F301F201F101F001F00A0034F309F209DD
:10043000F109F009FC17E329F80A0319F90A03196D
:10044000FA0A0319FB0A74087802031DE6297508E5
:100450007902031DE62976087A02031DE62977084A
:100460007B02031DE629FB01FA01F901F801F00AFC
:100470000319F10A0319F20A0319F30AF31FE62913
:10048000A0012016FF34A0017C1C472A7921003FDF
:100490000800031383126408F0006508F100F10CF2
:1004A000F00CF113F10CF00CF11370089500013011
:1004B0006405F00000307018403017064039970688
:1004C00002306405F3006508F4000030F405730899
:1004D000F0007408F100F10CF00CF113003070180A
:1004E000803017068039970608000313831606101C
:1004F000831212150C30970408000313831264084A
:10050000EF00872170088312E500E601803066065F
:10051000F0008030650670020318962A66086407AA
:1005200084000008EF009F21E60A862A08000313D2
:100530008312EE0180306706F00080307002031DE8
:10054000AB2A00306602031DAB2A00306502031D92
:10055000AB2A003064020318C92A0130EE00F00112
:10056000F101F201F3016408F0026508031C650F54
:10057000F1026608031C660FF2026708031C670F8E
:10058000F3027008E4007108E5007208E6007308E1
:10059000E7006408E9006508EA006608EB00670800
:1005A000EC000130ED008030F00080306706700212
:1005B000031DE42A6608003C031DE42A6508003C8C
:1005C000031DE42A6408003C0318FE2A0A30F400E4
:1005D000F501F601F7016408F0006508F10066080E
:1005E000F2006708F300AF217008E4007108E5002D
:1005F0007208E6007308E700ED0AD32AED03003025
938774ワット発電中さん:2007/06/17(日) 23:14:58 ID:+cHZBOy5
:10060000F0006C06031D0E2B70086B06031D0E2BED
:1006100070086A06031D0E2B6908003A031D122B91
:100620000130ED0068088400203080002030840A0A
:100630008000840A8000840A8000840A8000840A82
:100640008000840A8000840A8000840A8000840A72
:100650008000840A8000840A800184036D08003CC5
:100660000318782B0A30F400F501F601F701690848
:10067000F0006A08F1006B08F2006C08F300AF218B
:100680007808F0007908F1007A08F2007B08F3009E
:10069000700880000008F400F501F601F701690810
:1006A000F0006A08F1006B08F2006C08F3007408AF
:1006B000F0027508031C750FF1027608031C760F13
:1006C000F2027708031C770FF3020A30F400F501F9
:1006D000F601F701AF217008E9007108EA0072081D
:1006E000EB007308EC00303080078403ED032E2B01
:1006F0006E0803197D2B2D30800008000313831230
:10070000950117129712080003138316981690305C
:100710008312980083160615861283128C1E932B63
:100720001A08E8008D2B0800031383122230FC0006
:10073000F801F901FA01FB01FC030319CA2B0310AC
:10074000FB0CFA0CF90CF80CF30CF20CF10CF00C9D
:10075000031C9C2BFC030319BC2B7408F8077508B9
:100760000318750FF90776080318760FFA0777084C
:100770000318770FFB07A02B7408F80775080318F8
:10078000750FF90776080318760FFA07770803182C
:10079000770FFB070800463003138312C70072303F
:1007A000C8006530C9007130CA004C30CB006F30D2
:1007B000CC006330CD006B30CE002030CF00523003
:1007C000D0003130D1002E30D2003030D300303064
:1007D000D4002030D5004A30D6004630D700333020
:1007E000D8005330D9004630DA004230DB000D30FB
:1007F000DC000A30DD00DE014830DF007A30E00046
:100800000D30E1000A30E200E301703083168F0002
:1008100007309C009B01FF30850005308600811366
:100820000B138B130B168B1001138B110B100C1168
:1008300083120C110F309700950196018B120B114A
:100840008101831681160112811501108110011199
:100850000C1083120C108E018F01101290121010C8
:1008600083168C1083128C101211121092109101A9
:100870008316051283120512FF30A1000030C2005A
:100880000230C300F930831692007E23FF308316B6
:10089000920083124208E4004308E50049227522D1
:1008A00004300505F4007408003A031D612C013082
:1008B0000505F4007408003A031D612C0130A30003
:1008C000622CA30133308316990018158423061275
:1008D000061386130330FC00FF30FB00FF30FA00E4
:1008E000FC0B732C7A2CFB0B762C792CFA0B762CC8
:1008F000732C702C8C30FB00FF30FA00FB0B812C2A
:10090000842CFA0B812C7E2CA130FA00FA0B862C59
939774ワット発電中さん:2007/06/17(日) 23:16:22 ID:+cHZBOy5
:100910000000000006160330FC00FF30FB00FF3033
:10092000FA00FC0B942C9B2CFB0B972C9A2CFA0BAB
:10093000972C942C912C8C30FB00FF30FA00FB0B91
:10094000A22CA52CFA0BA22C9F2CA130FA00FA0B9A
:10095000A72C0000000006170330FC00FF30FB004E
:10096000FF30FA00FC0BB52CBC2CFB0BB82CBB2CBD
:10097000FA0BB82CB52CB22C8C30FB00FF30FA00EF
:10098000FB0BC32CC62CFA0BC32CC02CA130FA00D5
:10099000FA0BC82C0000000086170330FC00FF3063
:1009A000FB00FF30FA00FC0BD62CDD2CFB0BD92C06
:1009B000DC2CFA0BD92CD62CD32C8C30FB00FF303E
:1009C000FA00FB0BE42CE72CFA0BE42CE12CA13011
:1009D000FA00FA0BE92C0000000006120613861339
:1009E0002308013A031DF72C4730E4007D228316CB
:1009F00006140B178B170030831285180130F40092
:100A00007408013A031D0C2D831681150110811005
:100A100001308312C100132D83168111011081143E
:100A200008308312C100003085190130F4007408C9
:100A3000013A031D1E2D0130A200202D0A30A20014
:100A400081010B11A501A601A701A801A10121089F
:100A5000FF3A03193C2D00300B190130F4007408E3
:100A6000013A031D3B2D0B11A50A0319A60A031910
:100A7000A70A0319A80A272D2708F3002608F20061
:100A80002508F100F0017008A5007108A6007208A1
:100A9000A7007308A8000108A500A601A701A801E6
:100AA0007008A50771080318710FA60772080318CC
:100AB000720FA70773080318730FA8074108083AB5
:100AC000031D7E2D0330F4002508F0002608F100F8
:100AD0002708F2002808F30074080319762DF00D9A
:100AE000F10DF20DF30D7010FF3F6D2D7008A50094
:100AF0007108A6007208A7007308A8002208013A2E
:100B0000031D982D2508F0002608F1002708F200A3
:100B10002808F3000A30F400F501F601F7019423E8
:100B20007008A5007108A6007208A7007308A80045
:100B30002308013A031DAD2D2508E4002608E50031
:100B40002708E6002808E7002D30E80097222D301E
:100B5000E4007D225F30E4007D2204300505F400CE
:100B60007408003A031DBE2D0130A4002508A90019
:100B70002608AA002708AB002808AC0001300505AC
:100B8000F4007408003A031DC62DA4012408013A9C
:100B9000031D812E6430F000F101F201F3012908F8
:100BA000F4002A08F5002B08F6002C08F70070085E
:100BB000F4027108031C710FF5027208031C720F16
:100BC000F6027308031C730FF70228087702031D4F
:100BD000F32D27087602031DF32D26087502031D49
:100BE000F32D2508740203181B2E6430F400F50160
:100BF000F601F7012908F4072A0803182A0FF50758
:100C00002B0803182B0FF6072C0803182C0FF707D7
:100C100077082802031D162E76082702031D162EBC
940774ワット発電中さん:2007/06/17(日) 23:17:17 ID:+cHZBOy5
:100C200075082602031D162E7408250203181B2EB4
:100C30000616061386136430F000F101F201F30189
:100C40002908F4002A08F5002B08F6002C08F70004
:100C50007008F4027108031C710FF5027208031C7E
:100C6000720FF6027308031C730FF702770828024D
:100C7000031D442E76082702031D442E7508260204
:100C8000031D442E740825020318512E0612061364
:100C90008617C20A0319C30A4208E4004308E500A4
:100CA00049226430F400F501F601F7012908F40740
:100CB0002A0803182A0FF5072B0803182B0FF6072D
:100CC0002C0803182C0FF70728087702031D722E33
:100CD00027087602031D722E26087502031D722E48
:100CE000250874020318802E061206178613013099
:100CF000C202031CC3034208E4004308E500492282
:100D00008D2E0612061386130030C2000230C30077
:100D10000030E4000230E50049221A30FB00FF30C9
:100D2000FA00FB0B942E972EFA0B942E912EE7309F
:100D3000FA00FA0B992E00000000FB2C9E2EFF3FBC
:04400E00182FFC3F2C
:00000001FF
941774ワット発電中さん:2007/06/17(日) 23:33:45 ID:+cHZBOy5
RB3の波形だけしかみてないけど
fc かなんかで 比較すれば いいと思う。
94278:2007/06/17(日) 23:50:43 ID:qvyRy0al
>>941
なんてお礼を申し上げたらよいのか(涙)・・・
ありがとうございます。

ファイル C:\FLOCK88\flock88.hex と C:\FLOCK88\TEMP.HEX を比較しています
***** C:\FLOCK88\flock88.hex
:100D3000FA00FA0B992E00000000FB2C9E2EFF3FBC
:04400E00582FFFFF29
:00000001FF
***** C:\FLOCK88\TEMP.HEX
:100D3000FA00FA0B992E00000000FB2C9E2EFF3FBC
:04400E00182FFC3F2C
:00000001FF
*****

頂いたもので試してみましたが、状況は同じでした。
配線間違いか、PICが壊れているか でしょうね。
本当にありがとうございました。
943774ワット発電中さん:2007/06/18(月) 00:04:32 ID:P6QoVBWd
壊れてそうだね 間違えて12V直にかけてバチンと音がして何個か壊したことがあるな
RB0は使用してるから代替できないし
予備とかあれば・・・・
944774ワット発電中さん:2007/06/18(月) 02:57:58 ID:wKTL/wEx
dsPIC焼くのに安くて手軽な方法ない?(トラ技8月号おまけ除く)
945774ワット発電中さん:2007/06/18(月) 07:18:12 ID:tX4qtSWC
>>944
いろいろ苦労するよりICD2買っちゃった方がいいよ。
946774ワット発電中さん:2007/06/18(月) 08:37:43 ID:mbcC1//M
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
BATTLE GEAR4 Tuned The 8th Lap [アーケード]

ちょwおまっwwwwwww
オレかよwwwwwwwwwwwwwwww
947774ワット発電中さん:2007/06/18(月) 12:43:45 ID:mQJd0Gib
>>944
PICkit2赤ボタン版を待て!
948774ワット発電中さん:2007/06/18(月) 20:24:42 ID:P4LxVaPm
>>944
http://halfmat.ocnk.net/product/34
ミニJDMプログラマ(組立キット)[miniJDMkit]
販売価格: 780 円 (税込)
>てベースライン系列からPIC18FシリーズのPICマイコン、dsPICマイコンにプログラム書き込みすることができます。
949774ワット発電中さん:2007/06/18(月) 20:40:56 ID:4TtVSFnk
>>948
USB-シリアル変換ケーブルが使いないのが残念。
ノートPCだとやはりPICkit2かICD2かな。
950774ワット発電中さん:2007/06/18(月) 21:09:59 ID:InF9+ztJ
>>947
>PICkit2赤ボタン版
について詳しく
951774ワット発電中さん:2007/06/18(月) 21:39:01 ID:nSGXO47O
952774ワット発電中さん:2007/06/18(月) 21:55:20 ID:vaX6owg8
953950:2007/06/18(月) 22:14:23 ID:InF9+ztJ
>>951-952
不具合修正ってことのようだけど、dsPICと関係あるの?
認識されないUSBデバイスのエラーがよく出るから参考になるかも。
リコールしろよと言いたい。
954774ワット発電中さん:2007/06/18(月) 22:34:16 ID:3GjeG8xF
リコールは、製品に人体や財産に損害を与えるレベルの瑕疵がある場合に(ry
955774ワット発電中さん:2007/06/19(火) 10:50:47 ID:iNpmy2x9
致命的ではないツール類のバグを回避して使う能力を持っているのがプロ
ブーたれるだけなのは素人
95678:2007/06/19(火) 12:29:46 ID:19JWAtLG
>>941
PICを交換したところ正常動作しました!
ありがとうございました。
957774ワット発電中さん:2007/06/19(火) 15:03:57 ID:0vBsAzYS
予備買っておきなよ
958774ワット発電中さん:2007/06/19(火) 15:59:35 ID:Za2V7Wf3
ツールのバグ解析をしている暇があるのはアマ、
日程に追われてそんな暇がないのがプロ
という発想もある(w
959774ワット発電中さん:2007/06/19(火) 20:07:23 ID:Gm5LSQ5E
限られた時間できちんと対処するのがプロ

960774ワット発電中さん:2007/06/20(水) 00:12:53 ID:6alEXVmi
「致命的なエラー」がでても補償しないMicroSoft
961774ワット発電中さん:2007/06/20(水) 01:28:48 ID:vDkG85Ib
金を出来るだけかけないで、たっぷり時間をかけて理想の物を作るのがアマ
時間を出来るだけかけないで、確実に動く物を作るのがプロ
962774ワット発電中さん:2007/06/20(水) 01:46:15 ID:VGa2ssQB
必死なのがアマ
いかに逃げ道を作るかがプロ
963 ◆Kill3Os7Vc :2007/06/20(水) 02:28:20 ID:HRq2vKSY
チップ   :PIC18F2550
コンパイラ:Boost C(ピカントC) 6.0
ライタ   :秋月のプログラマ Ver4にβ版

で初めてのPIC18を試すために簡単なプログラムを
作ってみたのだけど頻繁にリセットがかかる。(不定周期)

ブラウンアウトリセット、ウォッチドックのリセット
スタックオーバフロー/アンダーフローのリセット
をDisableにしても起こる。
(ブラウンアウトについては電圧を監視してても落ちないので
無いとは思っていたけど念のため、ウォッチドックは使ってない)


プログラムとしては表示器(ノリタケのVFD3線シリアルのグラフィック)
をつないで、タイマ0でとりあえず決めた周期毎に文字列を表示してるだけ。

rconを表示器にだしてみたら、リセット命令によるリセットだと・・・?
ライタでフラッシュの中の命令読み出してもリセット命令は無く
とうぜん、Hexやアセンブラを確認してもない・・・

電源オン時のrcon = 0x1C
不意のリセット時 = 0x0C

もしヒントでもあれば、ヘルプをお願い致します。
964774ワット発電中さん:2007/06/20(水) 02:58:04 ID:p2J/BcaM
VCCにコンデンサ BOR enable
965 ◆Kill3Os7Vc :2007/06/20(水) 03:27:50 ID:HRq2vKSY
ど素人でスンマセン…48MHzなめてました orz
パスコンで解決。
966774ワット発電中さん:2007/06/20(水) 05:43:03 ID:4oC0Qc46
パスコンすら入れてないとか……
967名無したん(;´Д`)ハァハァ:2007/06/20(水) 08:46:38 ID:U+mTRLIa
78KスレでPIC厨が暴れている件について。
968774ワット発電中さん:2007/06/20(水) 12:44:12 ID:TRSmF5gL
じゃぁ昔PICスレで暴れた78k厨の罰がやっと下ったと言うわけか
969774ワット発電中さん:2007/06/20(水) 12:56:08 ID:jg1npRM8
オレはアマ
ペットはタマ
970774ワット発電中さん:2007/06/20(水) 12:57:39 ID:XiZmgqSA
そういえば、そんな奴いたな確かLightConeとか。
78kがどうのこうのPICスレに書き込むくせに78kスレには何一つ書き込んでない(笑)
78kスレは2年以上経つけどまだ500番台か
971774ワット発電中さん:2007/06/20(水) 13:00:37 ID:bfVY7Vum
あの気持ちワリーーやつ?
972774ワット発電中さん:2007/06/20(水) 17:16:10 ID:ZnAN65DK
パスコン忘れ・・・
初めはそういう時期もあるね。
ガンガレ!
973774ワット発電中さん:2007/06/20(水) 17:21:32 ID:99lCHtMO
>>968
過去ログきぼんぬ
974774ワット発電中さん:2007/06/20(水) 23:14:02 ID:Q2tEc2mU
PIC FUN = PIC厨 = 自称自営業 = 浮浪者 = 社会の屑
975774ワット発電中さん:2007/06/21(木) 00:07:08 ID:MZZJEmg2
>>972
電解コンデンサに300uF入れたら、電源の立ち上がりが遅くなって、CPUのパワーオンリセットが
かからないってなオチもあるからなー。コンデンサもよしあし
976774ワット発電中さん:2007/06/21(木) 10:53:21 ID:gJMSvCly
特定のCPUにこだわってXX厨と呼ばれる人たちって
ナイフ派とノコギリ派に分かれて切れ味の論争をしてるのと同じ
適材適所でどっちも必要な道具なんだけどな。

>>975
パスコンは0.1uF程度のセラコンが基本、
数百uFの電解コンデンサはCPU動作ノイズの高周波領域では
ほとんど有効な容量がない。
電源端子の出来るだけ近くに0.1uF程度のセラコンをつけて
瞬停対策に大容量のコンデンサをつけるのが基本

リセット端子にはヒステリシスがあるから電源の立ち上がりが
遅いせいでパワーオンリセットがかからないことはまずないが
PICの場合特に消費電流が少ないので電源SWをOFF-ONしても
リセットがかかるまで電圧が下がらずパワーオンリセットがかからない
ことはよくある。
977774ワット発電中さん:2007/06/21(木) 11:57:24 ID:I2y3kVny
切れるナイフの俺が来ましたよ。
どこに分類されますか?
978774ワット発電中さん:2007/06/21(木) 11:59:48 ID:KC0qUaOr
>>977
そりゃナイフだろ
ナイフは切れて当たり前だし
979774ワット発電中さん:2007/06/21(木) 12:53:48 ID:YRIbYS3H
>>976
>瞬停対策に大容量のコンデンサをつけるのが基本

ってさ、それって間違っているよ。
980774ワット発電中さん:2007/06/21(木) 12:59:43 ID:c1pF/OFB
>979
そうなの?なんで?
981774ワット発電中さん:2007/06/21(木) 13:00:40 ID:Up2yFe9O
瞬停はだめだろw
982774ワット発電中さん:2007/06/21(木) 13:04:12 ID:ajkMaAm1
>>976
パスコンの配置についてはその通りだが、動作周波数が数MHz〜数十MHzに対して
0.1uFは大き過ぎて、チップコンデンサでない限りパスコンの役をなさない。
リードコンデンサを使うのであれば0.01uF程度ないしそれ以下に下げる必要がある。
この辺、伊藤健一先生wの著書でかなりしつこく解説されていて有用。
(クロック1MHzとか500kHzで動作させるのであれば0.1uFでもOKのはず。)

それとパワーオンリセット(POR)だが、ヒステリシスがあっても(実際あるわけだが)、
電源電圧の立ち上がりが遅いとPORが正常に働かない。立ち上がり速度はPICの
データシートで規定されているし、立ち上がりが遅いとPORが正常動作しないことは
PICのアプリケーションノートにも記述がある。

PORが正常動作しない理由は、おおざっぱには、こう。

あるPICの動作VDD範囲が2.0V〜5.5Vだとする。このとき、PORスレッショルド電圧は
2.0Vより高くするわけにはいかず、また製造上のバラつきを避けるためちょうど
2.0Vにするわけにもいかないので、たとえば1.8Vとかに設定することになる。
(このとき、実際のPORスレッショルド電圧は、例えば1.8V±10%とかになる。)

PORスレッショルド電圧は正常動作するVDD範囲より「必ず」低いため、VDDに
ちょうどPORスレッショルド電圧が加わった場合、PORによるリセットは解除されるが、
VDDはPICの動作VDD範囲より低いため、PICが正常に動作するとは限らない。

このPORスレッショルド電圧から動作VDD範囲まで(この例では1.8Vから2.0V)の
「不安定領域」でリセットが解除されるのを避けるため、PORはPORスレッショルド電圧に
到達してからある遅延時間tだけ待ち、それからリセットを解除するという動作に
なっている。この遅延時間tのあいだにVDDが「不安定領域」を超えて動作VDD範囲に
到達してくれれば、リセット解除後、PICは正常に動作するというわけ。

この、VDD電圧が「遅延時間t」のあいだに「PORスレッショルド電圧から動作VDD範囲
まで到達する」というところで、VDDの立ち上がり速度が規定されることになる。

VDDの立ち上がりが遅すぎると、「遅延時間t」を過ぎてもまだVDDが動作VDD範囲に
到達せず、PICが正常に動作しない可能性が生じる。
983774ワット発電中さん:2007/06/21(木) 13:21:11 ID:YRIbYS3H
>>980
電解コンデンサを電源に配置する理由は
電源電流変化の大きい回路では、端子電圧の変動を抑えることが出来るから。
決して「瞬停対策」じゃーないんだよ。
変な基本を身に付けていると、すぐに挫折するよ。
984982:2007/06/21(木) 13:38:32 ID:ajkMaAm1
「VDD電圧」って何だ・・・これじゃ頭痛が痛いだw
まぁ、VDDは電源電圧でありピンの名称でもある、ってことで許してくれ。

それと、VDDの立ち上がりが遅いとPORが正常動作しないってのは「正常動作しない
*こともある*」ということであって、運がよければどんなに立ち上がりが遅くても
正常に動作するので注意。(「オレは電源に1F入れてるけどPOR失敗したことないぞ」
ってな人は、運が良いだけ。)

例えば、動作VDD範囲の仕様値が2.0V〜5.5Vのところ、製造上のバラつきによって
実力値が1.7V〜のチップができたとする。このチップのPORスレッショルドが1.8Vだと、
このチップに限定して言えば、VDDが単調増加する限りPORは絶対に失敗しない。
985774ワット発電中さん:2007/06/21(木) 13:50:40 ID:c1pF/OFB
>983
×瞬停対策
○端子電圧の変動対策
ってこと?まぁ、確かに対策すべきは端子電圧の変動であって瞬停じゃないわな。

俺は>979を「端子電圧の変動対策には、大容量コンデンサの挿入よりも適切な方法
がある。」と読んだんだよ。
986774ワット発電中さん:2007/06/21(木) 14:16:15 ID:gJMSvCly
>>982
>動作周波数が数MHz〜数十MHzに対して
>0.1uFは大き過ぎて、チップコンデンサでない限りパスコンの役をなさない。
ある意味正論だが実際にはCPUクロックが数MHz〜数十MHzまでだった
Z80〜8086の時代のCPUボードのパスコンは0.1uFが標準。

パスコンの役割はCPU動作に伴い発生するノイズを低減すること
ノイズはクロック周波数だけでなく広範な領域で発生するもので
対策を考える上で次の2点がポイントとなる
1.クロックより低い周波数のノイズを全域にわたって抑えることが特に重要
2.コンデンサの周波数特性は種類と容量によって異なる
http://www.murata.co.jp/catalog/c72j.pdf
Murata ラジアルタイプセラミックコンデンサカタログの
P.21にあるインピーダンス・周波数特性を見るとわかるように
確かに0.1uFと0.01uFのインピーダンスは15MHz付近でクロスしているが
クロック以下の周波数全域でインピーダンスを下げるためには
0.1uFを多めに使うか0.1uFと0.01uFを混在して使うのが有効。
少なくとも容量の小さいコンデンサを使えば済むということはない。

リセットに関しては
原理的に指摘通りの現象がおこる可能性はあるが
それは低電圧電源でゆっくりと電圧を上げたような場合のこと。
電源側のインピーダンスは低いから数百uF程度のコンデンサを
電源側につないだ程度では電圧の立ち上がりは数mS以上にはならない。

>>983
瞬停も大きな電源電流変化の一因ということでOK?
987986:2007/06/21(木) 14:18:40 ID:gJMSvCly
低電圧電源 > 定電圧電源
の間違い
988774ワット発電中さん:2007/06/21(木) 17:18:05 ID:gnuzaprl
PICってパスコンに溜まった電荷で何十秒もSleep維持できるんだよな。
パスコンなんて指で軽く触れたらすぐに電荷が抜けてしまうレベルなのに。
989774ワット発電中さん:2007/06/21(木) 17:55:34 ID:Ngwiw49X
で、コンデンサのインピーダンスを何Ωにしたら満足するのかな?
990774ワット発電中さん:2007/06/21(木) 19:58:44 ID:7KYdS43K


Vddに0.1μFの表面実装のコンデンサ入れ、MCLR端子を10kΩでプルアップしてLCDに文字表示させたりしてるんだけど、電源投入時に起動したり、しなかったりします。起動を安定させるにはどうしたらいいのでしょうか?
991774ワット発電中さん:2007/06/21(木) 20:09:43 ID:MZZJEmg2
>>990
普通、それでいけるハズなんだけど、やっぱリセットICとか?
992774ワット発電中さん:2007/06/21(木) 20:12:52 ID:c1pF/OFB
>990
さも自明のごとくLCD書いてあるけどこれのこと?
ttp://akizukidenshi.com/catalog/items2.php?p=1&q=%22P-00038%22
だとすれば、信号線の長さを短くする、E信号を長めにとる等でだいぶ
マシになるかな?あとはこの辺?
http://www.oct.zaq.ne.jp/i-garage/trbl/lcd4bit.htm

違うLCDの話だったら知らない。
993774ワット発電中さん
>>990
あ、LCDが動作しないの? それは多分イニシャライズの待ち時間が短いから。
と決め打ち。