05/03/29 03:33:37 iMXmi2Cj
まぁROMは書き換わらなくても、PCが化けるならIRが化けることもありえるだろう。
なら書いていない命令が実行される可能性もあるわけで。
ついでに他のレジスタはもちろんRAMも化けても不思議はないから、1だの2だの記録しておいても
その記録が化けていない保証も無いし。
601:774ワット発電中さん
05/03/29 05:41:35 IeluT1iv
PICを使わない奴は負け組
602:774ワット発電中さん
05/03/29 09:59:09 wS9Pu6AR
PICマンセーはドツボ組
603:774ワット発電中さん
05/03/29 10:01:29 wS9Pu6AR
マンセーオヤジな>>570は自沈したわけだな
604:774ワット発電中さん
05/03/29 10:28:57 g9fhkI68
だな。
どんな誤動作をするか分からないPICはどんな用途にも使えないっと。
605:774ワット発電中さん
05/03/29 10:37:44 ziqWWZ4+
>>604
NECかatmelかRenesasかザイログの社員乙
606:774ワット発電中さん
05/03/29 11:12:57 FfiUSYIO
>>594
スレリンク(denki板:160-番)
一応念のため。もうよんでるとは思いますが。
追試楽しみにしてます。
607:釜爺 ◆FJvgWgRkTg
05/03/29 11:22:50 vQ2PuZBu
MPLAB Ver.5.7です。
asmは開けたんですが
アセンブル、コンパイルとやらができません。
どこをどうやればいいのかわかりません。
だれかたすけてくださいです。
608:774ワット発電中さん
05/03/29 11:49:43 WFNA7eXS
>>607
コンパイルはしなくていい。
609:774ワット発電中さん
05/03/29 11:50:06 tDIYtbNk
>>607
グーグル先生に聞いたほうが早いよ・・・
610:774ワット発電中さん
05/03/29 12:09:45 V+5Kd21z
>>607
build
611:774ワット発電中さん
05/03/29 12:21:42 veCqV7JQ
その前に、asmファイルをプロジェクトに登録する。
つか、ここいらへんの
URLリンク(www.microchip.co.jp)
これでも嫁。
URLリンク(www.microchip.co.jp)
URLリンク(www.microchip.co.jp)
古いレビジョンのドキュメントだろうが参考にはなるだろ。
612:774ワット発電中さん
05/03/29 13:29:07 IeluT1iv
マイクロチップジャパンはしけてますね
それに較べてチャイナの勢いが凄いですよ!
613:774ワット発電中さん
05/03/29 13:52:35 tDIYtbNk
Microchipの日本代理店は使い物になりません。直販の方がよっぽど対応がいい。
614:774ワット発電中さん
05/03/29 16:43:48 ngvqNSZd
べつにマイクロチップに限った話でなかろ。
外国メーカーの代理店にしろ、現地法人にしろ、零細ユーザーにすれば意味のない
存在だ。
615:774ワット発電中さん
05/03/29 18:15:46 g6Krna3H
>607 5.7なんか使っている時点で(ry
616:774ワット発電中さん
05/03/29 19:06:03 ziqWWZ4+
mplab 5.7なんて使わんほうがいいよ。
何のメリットも無い。7.10を素直に使ったほうがよい。
617:774ワット発電中さん
05/03/29 19:16:19 g6Krna3H
7.xにHitec-C(フリー版)対応してたかな?
アセンブラしか使わないんだけどw
618:774ワット発電中さん
05/03/29 19:29:01 ziqWWZ4+
>>617
してるよ。ぐぐればすぐ出るんじゃないか?
619:釜爺 ◆FJvgWgRkTg
05/03/29 19:37:41 vQ2PuZBu
>585>589>608>609>610>611>617
多数の方々、ご指導ありがとうございました。
>515>516
5.7の日本語化パッチにひかれて・・・w
7.1入れたらなんかできました・・・
620:774ワット発電中さん
05/03/29 22:40:06 ghi/Z4Ns
>>619
釜爺さん、ほんとに爺さんだったら、H8かR8Cのほうが
プログラム作りもデバッグも、遥かに簡単だよ。
サンハヤトでE7、E8メミュレータ安く売ってる。
サンハヤトの肩をもつ気はさらさらないが、
物がいいのでお勧めするよ。
621:774ワット発電中さん
05/03/29 22:51:40 SZmEziVw
>>620
ルネサス関係者乙
622:774ワット発電中さん
05/03/29 23:06:32 Lr28v06B
PICBASIC proの質問なんですが。
割り込み処理は一プログラムに
一種類しか使用出来ないのでしょうか?
623:774ワット発電中さん
05/03/30 00:02:28 7KhXGosG
PIC始めたばかりの初心者なんですが、質問させてください。
12F675は12F629と12C509の上位コンパチとして使えるんでしょうか?
ピンアサインが上位コンパチだとプログラムも若干の書き換えで流用可能
なんでしょうか?
この考え根本的に間違ってるでしょうか?
っていうか質問自体何かヘンでしょうか?それすらわかりません。
624:774ワット発電中さん
05/03/30 00:27:28 SdKOeRaF
>>623
PIC12F629と12C509を同じに考えていることは間違い。
12F629のソフトは簡単に12F675へ移行できる。
12C509のソフトはBaslineシリーズとMid-rangeシリーズの違いを分かっていれば変更可能。
625:594
05/03/30 00:35:11 y1jdDnzf
>>606
ありがとん。
あっちの方が身のある議論してるみたいだね。
結果はレポートします。
# 社会人なんで週末にしか作業できませんが、、
626:774ワット発電中さん
05/03/30 00:36:24 kt5qeAaU
スタックさえなんとかなれば・・・ね。
12C509がターゲットなら素直に12F509が良いと思う。
627:623
05/03/30 00:42:11 7KhXGosG
>>624
>BaslineシリーズとMid-rangeシリーズの違いを分かっていれば変更可能。
もちろん違いなぞわかりません・・orz
できるだけ自分で調べてみます。
ありがとうございました。
628:774ワット発電中さん
05/03/30 04:55:21 drnFcTSq
Cで組めばいいんだよ PIC同士ならなんとかソース互換がある
629:623
05/03/30 18:36:09 7KhXGosG
Cですか・・・BASICなら昔よく使ってたんですがCは途中で挫折した記憶ありです。
PIC用のBASICコンパイラがあるようですが使い物になるんでしょうか。
630:774ワット発電中さん
05/03/30 19:14:20 4nnOknLV
アセンブラで組めばいいんだよ PIC同士ならなんとかレジスタ定義の互換性がある
631:774ワット発電中さん
05/03/30 19:39:16 3LsiZWy0
教えてください。
PICを始めたいと思いデータシートを読んでいたのですが、
ライタ以外でプログラムする方法が書かれていなかったように思います。
自分としてはライタや外注をせずに、プログラミングしたいのですが、
良い方法はあるでしょうか?
632:774ワット発電中さん
05/03/30 20:00:57 YhTslgMX
で、パソコンで作ったソフトをどのようにしてPICに書き込みたいの?
ライタを使う以外に、方法が存在するとは思えない。
安く済ませたいなら、自作でライタ作ればいい。
633:774ワット発電中さん
05/03/30 20:15:06 3LsiZWy0
いや、WIN以外のパソで書きたいのだと理解して頂けたらと...(正確には自作物)
以前PIC以外のマイコンをプログラミングしていたときは、
メモリが外付けだったのでライタも自作したのですが、
自作ライタを作りたくても、シリアル入力でのプログラミングの方法が
詳しく書かれていないので、お手上げなんです。
PICではライタを通さないとプログラミングできないのでしょうか?
よろしくお願いします。
634:774ワット発電中さん
05/03/30 20:46:30 3LsiZWy0
ごめん間違えた。
誤)PICではライタを通さないと
正)PICでは市販ライタを通さないと
そりゃそうだ。ライタ無しでは書き込めないな。
635:774ワット発電中さん
05/03/30 20:47:36 r5GHzigG
>633
発売元のアプリケーションノートに書いてありますが、何か?
URLリンク(ww1.microchip.com)
作り方次第で立派に動きますが、最近のパソコンのパラレルインターフェイスが
簡易的な作りなのでそれに当たった人は不具合続出でした。
現用しているPICマイコン書き込みツール
URLリンク(www.oct.zaq.ne.jp)
636:774ワット発電中さん
05/03/30 21:03:31 3LsiZWy0
うぁ、烈しく英文だ!
早速解読?してみます。
詳しい資料、ありがとうございます。
637:774ワット発電中さん
05/03/30 21:36:40 1B1qMHMY
>>633
自作ものって・・・ワンダーウィッチとかじゃないよな?(w
Win以外のパソって具体的には何?
情報の制限は話を進みにくくしますよ。
Linuxなら選択枝あるよ。例えばこれ
URLリンク(www.lancos.com)
638:774ワット発電中さん
05/03/30 21:40:15 N5VkI8pe
>>631
PIC16F8X EEPROM Memory Programming Specification
URLリンク(ww1.microchip.com)
639:774ワット発電中さん
05/03/30 22:16:13 3LsiZWy0
>>637
さすがにワンダーウォッチじゃないです。
自分は他のCPUでプログラミングしていたこともあり、
昔MC6803で作成した8KBROMと64KBRAMを積んだ、
データ書き込みと機器制御に特化した自作機です。
MACやLinでもないので、自作としか言いようが無いです。д^;)
今回、PICにも手を出してみようと思い、質問をさせてもらいました。
>>638
なるほど、PIC16F8Xの場合13V程度の書き込み電圧で、
RB6をクロックとしてBR7から書き込めばいいんですね。
詳しくタイミングまで載っているので何とかなりそうです。
色々と相談に乗ってくださって、ありがとうございました。
640:774ワット発電中さん
05/03/31 07:09:50 gDo+Ic7t
>>639
それしか選択肢が無いって事は
インターネットもそれでやってるんだよねえ?
( ゚д゚)ポカーン
超スーパーハカーなんだかウルトラ頭硬いんだか解らんな(w
641:774ワット発電中さん
05/03/31 07:20:34 PmoH3ie9
WinPCでやればあっというまに簡単に仕上がるのに……
2chに書き込んでるPCも自作なのか……。
642:774ワット発電中さん
05/03/31 09:16:54 Gc6xKgjQ
>>640
たぶんその自作機がポータブルで、
ノートPC買う予算はないってとこじゃねえ?
それでも中古でもいいからノートPCでも買ったら?とアドバイスしたい。
古い奴の方がレガシィポートあって使いやすかったりする
643:774ワット発電中さん
05/03/31 09:20:52 PmoH3ie9
とりあえず1万で中古のノーパソ買ってフリーのソフトを落してこいって言いたいなぁ。
あの自作機で書き込んでも凄い事にはならないし、意味が無さすぎる……。
644:774ワット発電中さん
05/03/31 10:04:48 4vmkETX9
ICSPって、スナップスイッチを手動でパチパチやったらタイミングを守れないものかね?
645:774ワット発電中さん
05/03/31 11:42:53 5Tn5rQHP
ポケコンの、PC-G850VでPICを書くっていうのはどあ?
646:774ワット発電中さん
05/03/31 12:03:17 PmoH3ie9
ポケコン買うくらいなら1万ノーパソでしょ
PICのためにポケコンを23000円で買うのはちょっと……
場所とらないしおもしろそうだけど周辺機器とか操作性と将来性考えると
URLリンク(www.kyohritsu.com)
647:774ワット発電中さん
05/03/31 12:16:38 1XgPRmAY
MorphyOneは、仕様上、CPLDへのプログラム機能があるんだから、
PICライターにだってなるんじゃないか?
まだ仕様が決まっていないみたいだから、提案しる!
648:774ワット発電中さん
05/03/31 12:17:12 1XgPRmAY
つっか、1万円のノートパソコンなんてあります?
649:774ワット発電中さん
05/03/31 12:29:04 PmoH3ie9
>>684
中古で1万でよく売ってますよ
いまそばにあるのなんて2万で450MHzの東芝ノートです。
100~200MHzでWin98でも入れれば問題なし。
650:774ワット発電中さん
05/03/31 12:30:41 8Xjl8E6B
>>648
当然、中古だろうな。
レガシー用途で使ってる、俺のPen1ノートは6千円ぐらいだった。
651:774ワット発電中さん
05/03/31 12:35:54 PmoH3ie9
MS-DOSでいいのならジャンク市でPC-98でも掘り出して1000円で買ってパラレルポートに繋げばいいかと、やったことないけどね。
PIC AssemblerはMS-DOS対応だったはず。
652:774ワット発電中さん
05/03/31 12:38:54 1XgPRmAY
>>649
そっかー
昔のノートだとシリアルもパラレルもあるもんね。(USBじゃなくて)
僕も1台買っておこう。ども。
653:774ワット発電中さん
05/03/31 12:42:50 PmoH3ie9
>>652
最近のシリアルはダメっぽいので何台か安いを買っておくのとWin98SEなどのOSを知り合いから譲ってもらおう。
そしていま書き込んでるのは知り合いからバックライトが死んでるの貰って斜め45度チョップ打ち込んだら治ったNECの500MHzノート(1024x768 32bitカラー)。
PC-98はなんでこんなに壊れないんだ。
足下に動くノートが4台も・・・。
654:774ワット発電中さん
05/03/31 12:43:41 o/kqppel
PC-98は今やトレジャー状態だから価格は高いと聞いたが
655:774ワット発電中さん
05/03/31 12:46:23 PmoH3ie9
>>654
ヤフオクとかのは高いからやめたほうがいいよ。
ジャンク市で動くか怪しいのを狙った方がいい。
ヤフオクで2万以上のがジャンク市で980円だったこともある。
動かなくてもパーツ取って組み替えたらパワーアップしたり。
演算プロセッサをはがしたりとか、ね。
656:774ワット発電中さん
05/03/31 12:47:31 gDo+Ic7t
設備を更新出来ない制御関係が泣きながら買いあさってるそうな
かわいそうに(w
657:774ワット発電中さん
05/03/31 12:48:57 PmoH3ie9
>>656
ほ、本当の事を言うな~!(笑
でもPICとかやってるとシリアルポート壊しそうだから新しいのは使いたくないね。
RCDライタを作ってた人は何台も壊したらしい。
658:774ワット発電中さん
05/03/31 14:18:31 wigRCDKH
>655
まともな香具師の出品なら、ワンオーナー品だよ。
659:774ワット発電中さん
05/03/31 16:58:08 EM5auRup
すいません。ひさしぶりにやったら挙動不審です。ご教授下さいorz
clrf TRISIO
bcf STATUS,RP0
L01:
bsf GPIO,GP0
bsf GPIO,GP1
bcf GPIO,GP1
bcf GPIO,GP0
goto L01
予想される出力
GP0 ーーー__ーーー__
GP1 _-____-___
実際の出力
GP0 ー____ー____
GP1 _-____-___
12F675、ポート負荷無しです。bsfすると関係無いビットが0に落ちます。
いったいなにをしくじっているのでしょうか。
660:774ワット発電中さん
05/03/31 17:14:17 z8cWWt6k
bsfやbcfでポートのビット操作するときは、これらの命令を連続させないほうが
よい。間にnop入れてみたら。PIC関係のたいがい本には出ているんだが。
661:660
05/03/31 17:15:59 z8cWWt6k
× PIC関係のたいがい本には出ているんだが。
○ たいがいのPIC関係の本には出ているんだが。
662:774ワット発電中さん
05/03/31 17:23:19 NKwSHvuI
>>659
PICは書き込むとき、入力の状態をバックして書き込むから、
速いクロックとかだと問題が起きる場合があるよ。
対策はnopを入れる、連続したグループでビット操作を行わないなど。
URLリンク(www.picfun.com)
663:774ワット発電中さん
05/03/31 17:59:32 EM5auRup
ありがとうございます。
ポートには負荷はまだなにも繋いでないんですよ(オシロのプローブだけ)。
というか、今nopを入れてみましたが完全に再現されました。
2個入れても、ループを入れて忘れた頃にコソーリbsfしても、やっぱり落ちます。
F675ははじめてなんでちょっとF84に変えてみます(直ったらさらにわけが解らないorz
664:774ワット発電中さん
05/03/31 18:31:45 VMqFbDaM
ちょいまち。
直接ビットを操作すると、上で言っているとおり上手く動作しないことがある。
ビット操作じゃなくて、転送命令を使ってI/Oレジスタを叩いてみてくれ。
転送命令を使えば確実に動作する。
665:774ワット発電中さん
05/03/31 21:02:28 EM5auRup
確かにGPIO=数値としたら動かないわけがありませんが(動きます)、
I/Oピンを普通にビット操作出来ないマイコンなんかありえねぇ(w
666:774ワット発電中さん
05/03/31 21:57:47 SIsaPfEb
他の人がレスしているような、連続したbsfの問題でないとしたら、
単独のbsfの問題がありそう。
bsf GPIO,GP0
のあとに
GPIO全体をreadして、そのままGPIOにwriteしてみたらどうなるか。
これでGP0がsetされたままなら正常だけど、clearされるようなら
GP0に何らかの負荷がかかっているか、ポートの不良などが考えられる。
667:774ワット発電中さん
05/03/31 22:01:29 lNCsvVLw
>>665
それで正常なら奥が深そうだな!他のF675に変えても同じなんだろうか?
clrf TRISIO
の前は、どんな感じかな?
668:774ワット発電中さん
05/03/31 23:44:43 24k+VJfc
単に、
CMCON=7をセットしていないだけとか(藁
669:774ワット発電中さん
05/03/31 23:55:55 24k+VJfc
あと、ANSELのadコンバータオンにしてるとか。
A/DオンかつTRISIOが出力だと、ショートする。
670:774ワット発電中さん
皇紀2665/04/01(金) 02:41:07 2QZ2tQO8
データシートを読めば分かることを無知と勝手な思い込みで話をするあなたはADHDですか?
671:774ワット発電中さん
皇紀2665/04/01(金) 08:48:14 KqBPWNsC
書き込めるチャンスが来た時のそのときめき
俺にも解るぜ!ww
672:774ワット発電中さん
皇紀2665/04/01(金) 15:37:13 wD2MJ4wp
アホですかぁ? >>671
673:774ワット発電中さん
皇紀2665/04/01(金) 21:39:37 KqBPWNsC
>>669
OK、それですorz
ポートのビット操作ができないマイコンなんてマジ有り得ないので
PICは信じていましたが、ぬかりますた(w
皆様ありがとうございました。
674:774ワット発電中さん
皇紀2665/04/02(土) 01:58:11 +42TJS/u
流れきってすいません。
早速というか6.6を使ってたのをこれを機に7.1にしたのですが、
MPLABでデバッグのためにビルドするとCODファイルのエラーが出てしまいます。
BUILD SUCCEEDEDとはでるのですが、現在の実行位置を示す矢印もでてくれません。
6.6のころと同じようにデバッグするにはどう設定すればいいのでしょうか?
675:774ワット発電中さん
皇紀2665/04/02(土) 02:03:23 SgQamQSr
チュートリアルよめよ。
676:774ワット発電中さん
皇紀2665/04/02(土) 02:27:19 +42TJS/u
PROG CODEとりんか-でいけました。
677:774ワット発電中さん
皇紀2665/04/02(土) 03:00:50 5A7vWK2r
>>674
ソースファイル以外全部けして、プロジェクトを新しく作りなおして、
新しいバージョンのMPLABでビルドした方がトラブルがなくてよい。よ
678:774ワット発電中さん
05/04/02 05:56:22 8Apqf5DZ
MPLAB7.1やっと出たんだ?7.0はバグだらけで大変だったけど直ってるかな?
679:774ワット発電中さん
05/04/02 06:37:06 8qjWmYCJ
7.1でたんだ
お願いだからシムのバグが消えていてくれ
680:774ワット発電中さん
05/04/02 08:36:51 8Apqf5DZ
1月下旬リリース予定って話だったのにね。
MPSIMのバグ検証用テストプロどこに逝ったかな・・・ゴソゴソ
681:674
05/04/02 11:13:36 +42TJS/u
>>677
それでもダメだったんですよ。
で、>>676のような変更がいりましたと。
プロジェクトってasmだけじゃダメなんですね。
682:774ワット発電中さん
05/04/02 12:35:50 8Apqf5DZ
とりあえずV7.001アンインスコしてからV7.10インスコ+パッチ当てでは>>674の現象出ず。
バグもそれなりに直ってるみたいだ。
683:774ワット発電中さん
05/04/02 17:46:48 8qjWmYCJ
希望の光を㌧クス
上書きせずにVer7.1+パッチでとりあえずはOKそうってことか。
684:774ワット発電中さん
05/04/02 21:15:18 KPw++gA+
千石2階でOLIMEX製の MPLAB ICD2のバチもん売っていた。
20000円はびみょー。
秋月のICDパチはお世話になりましたが、同店でも877がAタイプに移行しつつあり...。
どうすべ。
685:774ワット発電中さん
05/04/03 18:30:05 9/2Q/abo
>>684
あーあれね。ここの会社の奴でしょ。タカッ
URLリンク(www.olimex.com)
URLリンク(www.solitonwave.co.jp)
基板剥き出しでその値段出すくらいなら、純正品買った方がよい。
サポートも純正品ゆえしっかりしてる。
URLリンク(www.mal.jp)
URLリンク(www.olimex.com)
をみると、$89.95で買えるから手数料とシッピング入れて
船便で2週間で取り寄せれば、約$100くらいじゃない?
URLリンク(www.olimex.com)
直接カードで買えるから、こちらから注文した方が断然お得。
まずは見積もりをメールで問合せするべし。但しフリーメール不可。
686:774ワット発電中さん
05/04/03 19:23:15 CQ8CAkRB
>>685
Olimexからカードで買うのがアレなヒトは
SparkFunから買ってくれ
URLリンク(www.sparkfun.com)
687:774ワット発電中さん
05/04/03 19:36:30 9/2Q/abo
>>686
うわーー安い!
じゃあ、あの日本の値段ってなあに?ぼりすぎ!
688:774ワット発電中さん
05/04/03 19:43:23 CQ8CAkRB
まーそういうな。
2倍程度なら、多めに見てやれ。
689:774ワット発電中さん
05/04/03 20:08:18 Nz/Kguha
せめて15000円ならなぁ。
結局digikeyにしました。
到着後の振込みOKで\18000(本体、USBケーブルのみ)
評価ボード付\26000円てのもあった。
690:774ワット発電中さん
05/04/03 20:32:36 yLT4Xvu3
貧乏人は愚痴が多い
691:774ワット発電中さん
05/04/03 22:32:05 eQvh5N/P
輸入物って日本の代理店経由で買ったらボッタくりな値段になるよね。
代理店によって値段もかなりの差があるときあるし。
692:774ワット発電中さん
05/04/03 23:26:55 ycuu4xTf
オレは純正ICD2をbuy.microchipにて昨年のXmasセールで3割引の$111.3で買った
Microchipのツール等は他のショップでは最新版でないことが多いので直接 buy.microchipで購入したほうが良さそう
フラッシュタイプのCPUを使用しているツールはあとからダウンロードでアップできるが、ワンタイムのCPUを使用しているツールもあるから要注意(PICkit1,BFMP等)
693:774ワット発電中さん
05/04/04 13:41:25 E4qnqoL1
PCから232Cで12F683@8MHzに115.2kbpsで 8bit 8kHz mono なwaveファイルを
送りつけてリアルタイムでPWM出力-LPFでお手製サウンドユニットを作ったけど
やたらとノイジー。
ものすごく感度の悪いラジオみたいなノイズの載り方。
じじじじ、ざざざざ言ってのと音域がかぶるとだめぽだけど
ストリングとかピアノの高い音とかは耳で分離して聞けるからなかなかイイ!
さてノイズの原因がんばって探すかな。
694:774ワット発電中さん
05/04/04 14:13:58 icuoPCt/
>>693
HEXかソース(ヽ゚д)クレ (W
695:693
05/04/04 14:41:31 E4qnqoL1
えーっとさらすのは恥ずかしいってか、PCでほとんどやってるんでソースだけだとなんとも。
TEST
CALL GET_BYTE
MOVFW GET_DATA
MOVWF REG1_PWM
MOVWF REG2_PWM
RRF REG2_PWM,f
RRF REG2_PWM,f
RLF REG1_PWM,f
RLF REG1_PWM,f
RLF REG1_PWM,f
RLF REG1_PWM,f
MOVLW b'00110000'
ANDWF REG1_PWM,w
IORWF CCP1CON,f
MOVLW b'00111111'
ANDWF REG2_PWM,w
MOVWF CCPR1L
GOTO TEST
です。GET_BYTEはPCからStart Bit待ちの間完全にロックします。(かかりきり)
PCから受けた
7654 3210 な8bitは 上位6bitを
CCPR1Lに0076 5432 に。下位2bitを
CCP1CON<5:4>に 10 うつしてます。
PR2は63にして、プリスケーラーの類はすべて1:1です。
PWMの周期は32μsec f=31.25kHzです。
PC側で125μsecごとに1byteずつ送信でタイミングとってます。
ノイズの原因わがんね。
696:774ワット発電中さん
05/04/04 15:15:49 yo1zAVZb
>>693
バッファアンダーラン(wが発生してるとか、オフセットバイナリを考慮してないとか。
そんなソフトウェア回りが原因になってるような希ガス。
697:693
05/04/04 15:22:46 E4qnqoL1
>>696さん
れすありがとうございます。
バッファアンダーランってPIC側で受信データを取り逃しってことですか?
同じくオフセットバイナリってのもわかってないです…
waveのデータが128が無音ってことですか?
出力はコンデンサでDCカットしてるんで、
オフセットは気にしなくて良いかなとか思っちゃったんですが。
698:693
05/04/04 16:00:28 E4qnqoL1
事故レス。
音割れしてたのがメインみたいです。
音量変えたりしてやってみると大幅改善。
LPF,DCカットコンとかちょいいじって録音してみます。
699:693
05/04/04 17:17:56 E4qnqoL1
URLリンク(radio.s56.xrea.com)
電気電子うぷろだにウプしますた。
君は天然色です。
明日には消す予定です。
とがらせて~ な”に” かたくらむ表情は~
の”に”がよたってるのはPC側の送信ソフトの問題です。
(マウス動かすとか)負荷をかけると125usec以内に送信できなくなり、
その後追いつこうと必死に(waitなしで)送ろうとするので
負荷-無音-4割り増しピッチで高速再生を追いつくまでします。
連続カキコでお騒がせしました。
700:774ワット発電中さん
05/04/04 17:22:59 icuoPCt/
>>699
PICでも意外と音になるもんですね。
31秒のあのもたれが、その該当するところですね。
簡単なフレーズなら、EEPROMに1~2秒くらいの効果音が入りそうな
おかん。
「いや~ん」とか
「へ?」とか
(U´Д`)ワンワンフレーズアイテムがデキス。
701:774ワット発電中さん
05/04/04 17:30:14 JVUvNpkR
Cのことで質問させてください。
a = !(port & 0x0F)
これは、portの全ビットを00001111でマスクした値では無い値を代入するということですよね。
それは括弧の中で求めたビットを全て反転させて代入すれば良いのでようか?ワケが分かりません。
教えてください。お願いします。
702:774ワット発電中さん
05/04/04 18:29:31 cW85LAMk
'!' は論理否定演算子。
port&0x0F の結果 0 =FALSE 0以外=TRUE が逆になる。
( すべてビット反転は '~' ビット単位の否定(=1の補数) )
結果的に、aには 0=FALSE か -1=TRUEが入る。
(TRUEの時の具体的な値は処理系依存だったと思う兎に角0以外)
FALSEは0だけど。
703:774ワット発電中さん
05/04/04 19:20:26 thwlVxY+
>>701
aにはportの下位4bitどれか1つでも立っていれば0、そうでないなら0以外が入る
でいいかと。
!なしなら0と0以外がひっくり返る。
しかし変数に代入ってのもへんな使い方だね?普通は
if ( !(port & 0x0F) ) ・・・・
なんて使いそうだが。
704:774ワット発電中さん
05/04/04 19:31:35 K9UeSXU2
!が無いときは単にportの上位4ビットが0クリアされた値が入るだけ。
705:774ワット発電中さん
05/04/04 21:28:44 SUGTDkib
>>699 スゲー感動した!!!PICでここまでできるとは恐れいりました。
706:774ワット発電中さん
05/04/04 21:42:09 eBZ3ayeP
>>699
すごいのはわかるんだが、PIC初心者の漏れにはそれがどういった応用に
使えるのかがピンとこない。
どういうところに使えるのか教えてエロい人!
707:774ワット発電中さん
05/04/04 22:18:35 r+PIlBA1
MPLABでビルドしても、COD.ERR.LST形式のファイルしかでないんだけど
HEX形式のファイルはどうやって作んの?教えてえろい人!
708:774ワット発電中さん
05/04/04 22:19:14 odsTfcAz
2げt
709:774ワット発電中さん
05/04/04 22:19:55 odsTfcAz
誤爆。
710:774ワット発電中さん
05/04/04 22:36:01 w6xnU/dH
>>707 よーしらんけどソースにエラーがあるとHEXは生成されないよん。
711:774ワット発電中さん
05/04/04 22:36:27 cW85LAMk
>703
論理値を数値として使って高速化することがある。
たとえばそのif文の中でb=b-1なんてのをやるときには
b=b+aとすればif文を無くせる=分岐の省略=高速化
コンパイラが賢ければだけどね。
レジスタの少ないPICでは微妙かな・・・
712:774ワット発電中さん
05/04/04 22:45:39 6p+VlR6k
>>711
C言語としてtrueの時にa=1であるという保証はないのでは??
特定のコンパイラ(特定のバージョン)依存にならない?
713:774ワット発電中さん
05/04/04 22:56:08 0t9tq7KI
以下の演算子はintの0または1を返すのが規格で決まってます。
!, <, >, <=, >=, ==, !=, &&, ||
714:774ワット発電中さん
05/04/04 22:56:46 HzCBGSeH
休日にでも、16F683で音をだしてみるかな。
715:774ワット発電中さん
05/04/04 23:05:08 6p+VlR6k
>>713
そうだった、勘違いだった。
でもこれって時々はまる原因になるんでさけているなあ。
716:774ワット発電中さん
05/04/04 23:11:43 kPrSRYzL
>>702
>>703
>>704
>>703
>>712
くわしく教えていただき、ありがとうございました。
やっと、理解できました。
717:693
05/04/04 23:21:30 E4qnqoL1
>>700さん
今回は8kHzなので 8KBytes/secなので
どこまで音質を落とせるかの勝負になる悪寒
>>705さん
今回の実験ではPWMが31.25kHzが上限ってことなので、そこに一番がっかりしました。
まぁ外付けクロックで引っ張ればもちっとあげれるんですが。
>>706さん
(∩゚д゚)アーアーきこえなーい
>>714さん
PWMさえあれば何でもいけるし、USB接続にして22KHz 16bitとか目指して下さいw
232Cの限界を超えてどこまでも…
718:774ワット発電中さん
05/04/05 00:00:39 XbSR8wVO
>>717
そこまで目指すなら、普通にUSB-DACチップ買って回路を組んだ方が・・・
と身も蓋もないレスをしてみる。
719:774ワット発電中さん
05/04/06 12:03:21 kFFiX00W
>>717
聴いた。グッジョブ。ルーチンが小さいなら、beep音の代わりにするとか。
1秒8kbytesのROMを潰すが・・・PICだとその倍だっけ?
720:774ワット発電中さん
05/04/06 12:42:18 f/W/q3Tc
燃料豆乳 ( ゚д゚)ノ URLリンク(www.geocities.jp)
721:774ワット発電中さん
05/04/06 21:18:00 YAl7wTTt
いがらっぽいPSG・・・・
722:774ワット発電中さん
05/04/06 22:30:33 +Z39hya7
鈴商で売ってるし
723:774ワット発電中さん
05/04/07 02:58:57 ilcrfe3p
PIC12F683で、
バンドギャップ補正値と、オシレーター補正値の読み方教えてください。
WINPICでもIC-PROGでも読めないよね?
724:774ワット発電中さん
05/04/07 03:00:13 ilcrfe3p
ごめんなさい。
ライターの種類はJDMです。
初めてで、作りたてホヤホヤです。
725:774ワット発電中さん
05/04/07 03:43:30 ilcrfe3p
初めてのくせにPIC12F683選ばなきゃよかったかも、、、
726:774ワット発電中さん
05/04/07 03:49:30 ilcrfe3p
OSCTUNE register になって、面倒がなくなったのか。。。。
って、誰もいないんかい。
おーーーい、目指せ1000取り
727:774ワット発電中さん
05/04/07 04:32:58 Zpi0RUS/
マッタリ
728:774ワット発電中さん
05/04/07 05:07:09 2e8lZRTL
>>723
Excite翻訳によると
----------
外のブラウンDetect(BOD)、PowerオンなReset(POR)、および8MHzの内部の振動子(HFINTOSC)は
較正された工場です。
これらの校正値は、Register12-2に示されるようにCalibration Wordレジスタに格納されて、
プログラム記憶域2008hで写像されます。
「PIC12F6XX/16F6XXメモリプログラミング仕様」(DS41204)で説明された手順を用いるとき、
装置が消されるとき、Calibration Wordレジスタは消されません。
したがって、装置が消されるとき、これらの値を格納して、プログラムを変えるのは必要ではありません。
注意: アドレス2008hはユーザプログラムメモリスペースを超えています。
それは特別な構成メモリスペース(2000h-3FFFh)に属します。(プログラミングだけの間それにアクセスすることができます)。
詳しい情報のための「PIC12F6XX/16F6XXメモリプログラミング仕様」(DS41204)を見てください。
----------
だそうだ。
・CalibrationBitsの2008番地はいじらなくていい。
・微調整したければSFRの中のOSCTUNEを使う。
って感じに理解してるけど、使ったことないしシラネ
WinPICはコンフィグメモリタブの全ロケーション表示にチェックを入れると
2008番地も表示される。
729:774ワット発電中さん
05/04/07 05:48:38 ilcrfe3p
>>728
ありがとう!!。
(゚ー゚)(。_。)(゚-゚)(。_。)ウンウン
大体は自分で調べ終わってた。
事前にメモしたり、後から書き戻したり面倒な事がない分、良いかもしれない(コロコロ)w
>>WinPICはコンフィグメモリタブの全ロケーション表示にチェックを入れると
>>2008番地も表示される。
2個調べたけど、全部1だったし、
読み込み時のタスクバーのメッセージも2007までしか読んでないと思うよ。
730:774ワット発電中さん
05/04/07 09:00:11 RVVWFGYx
>>729
あとはdevice.iniをごにょごにょするか、作者にmailするか…
731:774ワット発電中さん
05/04/07 09:04:01 /qTEVeHf
うえのほーにあるとおもうけど
JDMライタ(RCD)+WINPICで12F675と同じ気分で書き込むと
Calib Bit全部とんだよ…もれの683は二個とも。
しょうがないからOSCTUNEでチューンして使用中。
まぁトンでも調整できるしなんとかなるさ…
732:774ワット発電中さん
05/04/07 17:16:51 7AFdP6hw
引用>
PICSTART-PLUS \36,750円(税込)
バージョンアップチップ(17C44) \1,500円
XXXXXXX社の純正のPICライタです。
殆どのPICに書き込めますがパソコンによっては相性
(PICライタを認識しないあるいは途中でエラーになる等の不具合がでる事
を指します)が悪い場合はPDE-EXをご利用下さい。
PICSTART-PLUSはあくまでも評価用です。量産にはPROMATEIIです。
引用終わり>
小生、PIC START PLUSもPROMATE IIも使っています。
しかし、どちらも不具合を経験しています。
PIC START PLUS
アップグレード後、PIC START OSをDLしなんとなく動いてる感じでしたが、
PICへのライトエラーを契機に全然動かなくなりました。
PromateII
これは頻繁にCommunication Error!を表示し、PICへの書きこみが正常にできることがありませんでした。
Windows側のSerial設定を”FIFOを使用しない”に変更すると、Communication
Error!を表示せずにREAD/WRITEができるようになりました。
”相性”の正体は、PromateII側の通信処理速度が、Windows PC側の通信速度
に間に合わない可能性があります。(FIFOバッファを使わない=STOPビットとSTART BITの時間があいて通信速度が落ちるはず)
純正品は高品質の一般通念はこの経験では不運な結果でした。
今までROMライタがエラーを起こす市場の製品というのを見たことがなかったので
この製品品質には驚きです。
Promate III でどこまで直ってるのか・・・
MPLAB IDEのバグの有様とあわせて、いや~こりゃ困ったなぁ(涙)
えっ?! PICを使わなきゃ いいだろってが?
・・・確かに・・・
733:774ワット発電中さん
05/04/08 02:04:47 tTjNcAGm
>>730
詳しく教えてください。お願いします。
LEDピコピコまで、人のソースコピーしなくてもかけるようになった
かな。
734:730
05/04/08 15:25:19 bd11bD78
>>733
devices.iniいじってみようかと思ったけど、
やっぱ餅は餅屋ということで…
FENG3さんの掲示板になんか書いてあるよ。
URLリンク(6803.teacup.com)
「PIC12F683について」
「PIC12F683について(補記)」
「WinPic最新版」
735:482==731
05/04/08 17:23:13 PH232REH
>>482
なのですが、
>>734
を読む限りうちの683もCalibrationBitは生きてるはずなんですよね?
なのにOSCTUNEをいじらないと相当ずれてるってのはなんでなんでしょ?
なんか勘違いしてますか>自分?
736:774ワット発電中さん
05/04/08 17:31:56 Km215h/Q
>>735
ライターで2008h読めばわかるんじゃないの?
737:482==731
05/04/08 19:04:14 PH232REH
読み込んでみましたが、
FENG3さんが掲示板に書かれているようにすべて1と表示されるようで
実際のところは不明です。
738:730
05/04/08 19:41:08 bd11bD78
>>737
最新のWinPic入れてみたけどやっぱり2008hは読んでないみたいな感じがする。
devices.iniのいじり方はHELPにあるけどやってみない?
ReadだけならPICを壊さないと思うので。
ConfigMemUsedLocs00_1Fと
Cfgで始まるパラメータが要るのかな。
俺は12F683持ってないので…。
739:730
05/04/08 21:46:11 bd11bD78
とりあえずオリジナルのdevices.iniはコピーしておいて、
[PIC12F683]の中に
ConfigMemUsedLocs00_1F=0x01CF
の1行を加えてみたらよさそうな感じがするよ。
「解説」
0x01CFの
Fは2000h~2003h
Cは2006hと2007h
1は2008h
が存在するっていう意味。
740:482==731
05/04/08 22:02:40 PH232REH
ConfigMemUsedLocs00_1F=0x00CFの行を
と
ConfigMemUsedLocs20_3F=0x0000を書き足して、
CFをいろいろ変えてみたけど、表示されるメッセージは常に
Reading 0x002000 - 0x002007 ...
くまった。
というか漏れ的にはOSCTUNEで校正したのでとりあえずよかったりする。
#正直言うと、ヘルプにある
For each of the first 32 locations in config memory (addresses 0x2000..0x201F),
there is a bit in this parameter (bit 0 for address 0x2000, bit 1 for address 0x2001, etc).
A ZERO-bit means "this location does not exist.
The definition ConfigMemUsedLocs00_1F=0x00CF means, only the addresses 0x2000... 0x2007 exist
のいみがわからない…
0x00CFで2000-2007を指示?
741:774ワット発電中さん
05/04/08 22:14:30 K0oXcB2y
>>740
>>739さんの言うようにConfigMemUsedLocs00_1F=0x01CFとすると0x2008が表示されるけど
742:482==731
05/04/08 22:17:13 PH232REH
日本語版落としたら日本語訳載ってた…
で、1CF(1 1100 1111)に書き換えてみたら2008まで表示された
けど全部0(2000から2008まですべて。)
というか読み込んでもコンフィグメモリタブに反映されないときのほうが多い?
なんかよくわかってないのにれんがきでスマソ
743:482==731
05/04/08 22:25:57 PH232REH
っはすごくリロードの間が悪いな>俺
もいっこの12F683でやってみても結果同じでした。
Readするとコードは読み出されるけど
コンフィグタブの表示はすべて0とか1になります。
ちゃんと2008まで読んでるっぽいし、違うデバイスを指定して読むと
デバイスIDからして12F683だよってメッセージ出してくるので読めてると思うのですが。謎。
744:723
05/04/09 01:05:20 jy8sfZnZ
12F683 新品で実験してみた。
[PIC12F683]
ConfigMemUsedLocs00_1F=0x01CF
追加のみ
書き込み済みPIC
11 1111 1111 1111
新品
11 0011 1011 1101
2回交互に試したけど変わらず。
やはり消えるようですね。
””書き込み時””のタスクバーメッセージに、
2008って出たように見えたからもしかしてって思ったらやっぱし。
FENG3 さん、スマメサイズ基板ありがとうございました。
無事動作しました。
(ICソケットの向きを間違えただけですみましたw)
745:723
05/04/09 01:07:25 jy8sfZnZ
ごめんなさい。
ライターは、FENG3 さん式
「スマートメディア」サイズのPICライタ
です。
746:723
05/04/09 01:16:09 jy8sfZnZ
ああ、そういえば。
スマメサイズ基板
コンデンサのとこの穴あけ一箇所だけ忘れてましたよ。
木工用キリでがんばって、小さく開けてみました(ほかの穴より2倍近くあったけどw)
文句のつもりではなく、ただの報告です。
って、ここに書くことじゃなかったですね。ごめんなさい。>ALL
747:774ワット発電中さん
05/04/09 01:17:52 jy8sfZnZ
MPLAB IDE v7.10
パッチ当て済み。
もうこれで最後のつもり、、、、
748:774ワット発電中さん
05/04/10 13:33:43 j/c2XkKb
FENG3さんの伝言板にRCDライタのdevices.ini修正や周知が出ました。
やっぱり
ConfigMemUsedLocs00_1F=0x01CF
ConfigMemUsedLocs20_3F=0x0000
の追加です。あと
Cfgmask2_used_bits=0x1FDF
の削除も必要だそうです。
詳しくは>>734のリンク先へどうぞ。
749:774ワット発電中さん
05/04/11 11:38:46 IKaHlt5Y
すみません
16F88なんですが、I2Cマスタとして使えるのでしょうか?
PIC16F87/88データシートを見てみると、
P.1には、スレーブだけと書かれていますが、
P.92にはファームウェアにコントロールされたマスタモードも
可能と書かれています
どっちが正しいのでしょうか?
750:774ワット発電中さん
05/04/11 16:03:42 leqjozDw
速度を問わないなら、当然I2Cはソフト制御で動かすこともできる。
I2Cの仕様書を良くみれ。
751:774ワット発電中さん
05/04/11 16:10:26 IKaHlt5Y
教えて君なわけですが、
GOTO $-1
という命令の意味が全くわからんです
だれかおしえてplz
752:774ワット発電中さん
05/04/11 16:24:54 leqjozDw
アセンブルして、出てきたバイナリを逆アセンブルして、
命令表と比較してみると良く分かる。
753:774ワット発電中さん
05/04/11 16:25:32 leqjozDw
あっ、手作業で逆アセンブルな。
あと、バイナリじゃなくても、アセンブラが吐いたリストファイルでもいいと思うけど
754:774ワット発電中さん
05/04/11 21:49:40 2QH8itgg
>>751
普通は無限ループになるが...
デバイスによっては、プログラムページのビットの状態で別ページへ
ジャンプすることもあるうる。
755:774ワット発電中さん
05/04/11 23:38:25 u2B2uoso
>>749
それは、マスターはプログラムでSCLとSDAをパタパタしろって意味。
756:774ワット発電中さん
05/04/12 01:44:15 eqsC1uuZ
>>755
僕もそれではまたことがあります。
マスターは、SDA,SCLを監視していないといかんから、
タイミングを確保できるかどうかが、成否の鍵を握りますね。
757:774ワット発電中さん
05/04/12 01:51:29 DRs9BZTD
>>755
ポートパタパタの
ソフトI2Cマスタは、シングルマスタでスレーブデバイスを2つぐらいぶら下げるだけなら、
・入出力の切り替えと、
・クロック、スタート・エンドコンディションのタイミング
・アック、ナックのルール
さえ注意すれば、動かすのは、それほど難しくない。
こったソフトにすればクロックストレッチしてくるようなスレーブにもソフトで対応可能。
I2Cはシステムの完成度を上げるためのいろんなノウハウ的な部分もあるけど
それはハード使っても同じだし、、
758:774ワット発電中さん
05/04/12 02:00:09 DRs9BZTD
>>756
タイミングの確保は確かに重要
ただし、シングルマスタであればマスタデバイスでのタイミングの要求は
”MIN 4.7usec以上待たなければならない”というものばかりなので、
オープンドレインで信号の立ち上がりに時間がかかることを考慮した上で
ちゃんとウェイトとれていれば、うまくいくかなと思います。
759:774ワット発電中さん
05/04/12 09:06:07 KHPa2uUC
うん、ちゃんとタイミングを確保してやれば割と簡単に動くよ。
ISAバスにポート作ってI2Cデバイスを動かすというのも
やったことあるけど、別に難しくはなかった。
760:774ワット発電中さん
05/04/14 00:35:54 PUcYQDd5
HI-TECH PIC C LiteでPWM制御のプログラミングをしているのですが
情報不足で苦戦してます。
デューティ値の設定をする関数(CCSのset_pwm1_dutyみたいなやつ)が
あると便利なんですけどHi-tech Cにはありませんよね?
761:774ワット発電中さん
05/04/14 02:39:47 lGILTrcV
PIC(コンパレータ)で
LEDを光センサとして使ってみる
URLリンク(elm-chan.org)
成功してる人います?
ソースコード見せてほしいです。
お願いします。
762:760
05/04/14 11:50:42 PUcYQDd5
とりあえずアセンブラ的なコーディングで対処しますた。
763:761
05/04/14 21:42:20 lGILTrcV
できました。
原因は、コンパをオンにするタイミング。
アナログ→コンパオン→入力
アナログ→入力→コンパオン
764:774ワット発電中さん
05/04/15 00:05:35 oc4EYUrU
>>763
どっちが正解だったの?
先にコンパれーたー?
765:774ワット発電中さん
05/04/15 01:01:38 NJAhmtFY
>>761 なんでIEじゃないと見られないんだ…szo
766:761
05/04/15 01:14:39 kU4S7kCL
>>764
アナログ→入力→コンパオンで動いた。
もしかしたら最後にコンパのリセットすればよかっただけかも。(未テスト)
あぷ版きめてくれたら、ソースほしけりゃ上げるよ。(PIC12F683)
すっごい初心者の毎命令前にBANKSELものだけどw
オンにする順番とか書いてあるホームページとか本とか知ってたら教えてほしい。
767:774ワット発電中さん
05/04/15 09:58:17 oLFuUrWc
秋月のICEキットAKI-877を使っていますが、Runをさせると
Error performing requested operation.と出て実行できません。
URLリンク(www.freeml.com)
の対策もしましたが変わりません。
どう対処すればよいか教えていただけないでしょうか。
設定などです。
MPLAB 5.62
Device PIC16F876
Oscillator XT
Watchdog Timer Off/Disable
Power Up Timer Off/Disable
Brown out Detect Off/Disable
Low Voltage Program Disable
Code Protect Data EE code protection Off
Flash Memory Write No Memory writen to by EECON
Code Protect Code Protection Off
Use Checksum as ID にチェック
Program Memory にチェック
Configuration Bits にチェック
ID Locations にチェック
EEPROM Data はチェックなし
Erase All before Program にチェック
Enable Debug Mode にチェック
MPLAB ICD Version 1.44.00
COM1 57600 Minimum(FSR...) 10MHz-20MHz F/W:Ver 2.04.00
ソースは
#fuses HS, NOWDT, PUT, NOPROTECT
768:774ワット発電中さん
05/04/17 00:45:40 64HVBJlR
>>787
877モジュールとの時は、ターゲットのRB3につながってる線を切ったら動いたような記憶が。
やはり散々動かなくて、これ、動作には関係ないのになーと思って。
ふらっとケーブルの浮遊容量疑ったり、かなり悩みますた。
769:774ワット発電中さん
05/04/17 01:10:53 64HVBJlR
ICDもどきと通信できてるんだろうか。
組み立て問題なければ、ICDもどきの877を別のPICライタで焼いた877に替えてみるとか。
ICDのhexファイルはMPLABのDirにあります。
770:693
05/04/17 16:59:25 ImhGRljA
>>693のPIC DAC男です。
同じことの逆版をしてみました。
iPodの音量をマックスにしてイヤホン出力のLかR(失念)をアナログ入力に、
イヤホンのGNDは抵抗で分圧してVdd/2に接続。LPFとかは通してません。
PICで125usecごとにADCしてシリアル通信でPCに送信。
それにヘッダをつけて8kHz 8bitなwaveファイルにしてみました。
URLリンク(radio.s56.xrea.com)
でだしとか相当ノイジーですが、一応こんな感じになりますた。
最後の音量が上がってるのはPICの電源を切る→コンデンサの電圧が低下
相対的にiPod出力がおっきくなるってオチです。
メモリーさえつんでやれば、PICでボイスレコーダーもいけそうな感じ。
771:774ワット発電中さん
05/04/17 21:02:45 /2YYovtH
バックのビー音の原因は何でしょう。
なんか耳馴染みのあるノイズだけど。
772:774ワット発電中さん
05/04/17 23:23:49 ZRYeHASy
>>771
8KHZのサンプリングノイズでないの?
773:774ワット発電中さん
05/04/17 23:32:37 6eJZs4at
もっと低い音だろ
ハムっぽいけどPCとのラインの回り込みとか
774:16F877A
05/04/18 00:04:37 z2CkqLvI
>>770
125usecサンプリング=8kHz で8Kのサンプリングならば
せめて8Kで-6dbのアンチエリアジングフィルタいるんでないか??
ノイズはアンチエリアジングによる、量子化ノイズだな。
775:774ワット発電中さん
05/04/18 00:07:16 OERHJmcv
>>774
に1票
ただし、ノイズは"エリアシング"による量子化ノイズ
揚げ足すまそ
776:774ワット発電中さん
05/04/18 00:19:31 7RfxAZ9N
>秋月のICEキットAKI-877を使っていますが
秋月だから動かなくて当然。あそこのはろくなものないよ。
ご本家のICEも使ってる香具師がいないのは、
おそらく出来が悪くて使えんのだろな。
777:774ワット発電中さん
05/04/18 00:25:58 OERHJmcv
>>770
あと、
・GNDを1/2VDDにつなぐ
のではなく、
・オーディオの信号ラインをカップリングコンデンサでバイアスかける
方が良いのではないかと思います。
778:774ワット発電中さん
05/04/18 01:02:23 wuflZilX
>>776
基盤のパターンをカットして●○に繋いでください・・・なんてかなりの頻度で書いてますしね。(汗
779:767
05/04/18 16:16:10 T0A4EA+P
>>768
これでもないようです。
>>769
ICD10200.hex, SRAM16.HEX, 29F16016.HEX
とありますが、どれなのかが自信ありません。
どれでもない気もするし。
書き込みがうまく行っている基板があるらしいので、
それを見せてもらって比較するつもりです。
780:693
05/04/18 21:38:54 X0K8lFnQ
みなさんレスありがとうございます。
とりあえずLPFかなと思いつつも自分でも微妙に気持ち悪かった
iPodの出力にバイアスかける方法ですが、キリ番な>>777さんのアドバイスに従って
iPodのGNDはPICのGND(=232CのGND)にして、出力->330uFのケミコン->抵抗で分圧したVdd/2->PIC
にしてみました。
URLリンク(radio.s56.xrea.com)
です。自分でmp3化したもの聞いてみてwaveとの違いに愕然としたので
waveままです。
781:774ワット発電中さん
05/04/19 01:00:34 OjiULCUp
>>780
多少改善したのかな?
# 昨日のMP3が聞けないので聞き比べられんな。
DC(MUTE)でもノイズ乗るのかなぁ。
・DCでノイズ乗るようなら電源系のノイズが支配的、
・DCでおとなしいならエリアシングノイズが支配的
の様な気がする。
# まぁ、オーディオのノイズの原因なんて挙げていったら
# キリ無いとは思いますが、、、
782:774ワット発電中さん
05/04/19 08:47:42 EPd0mXyw
>>780
原音を8khzで聞いてみると思うけど、まあこんなもんだよ。
783:774ワット発電中さん
05/04/19 19:54:14 f1U1B1YP
いい感じですねぇ。
ところで、
> 抵抗で分圧したVdd/2
これってどのくらいがいいんでしょうか。
784:693
05/04/19 23:57:37 fMUfJvha
レスどうもです。
ちょっとだけ追加してみました。
URLリンク(radio.s56.xrea.com)
です。頭の部分で無音+カンカンっていってるのもソースどおりです。
無音部分でもノイズの感じられないしいい感じです。
変更点はLPF(200Ω+0.1uF)と電源(7805→NiCdx3セル)です。
十二分に満足するできになりました。
>>783さん
Vdd/2って値でしょうか?それとも分圧に使った抵抗でしょうか?
抵抗は24kを使ってます。一番最初にペアで発掘できたので…
785:774ワット発電中さん
05/04/20 00:55:18 MxZXg1wu
>>784
・LPF(200Ω+0.1uF)
カットオフ約8kHzですね、、、
サンプリング8kHzなので4kHzでカットする方が
効果出るかなぁ、、、
高音削るんで諸刃の剣だけど、、、
786:16F877A
05/04/20 09:07:41 tsINLclT
>>高音削るんで諸刃の剣だけど、、、
そうなんです、8Kで「スイッチドキャパシタフィルター」でズバっとー60db
くらい切りたい所ですね。
787:774ワット発電中さん
05/04/20 11:58:52 2UPvodYu
8KHzサンプリングなら4KHzまででしょう?
788:774ワット発電中さん
05/04/20 12:02:13 mYynoiB6
PORT_Bのブルアップを使うとプログラムが動かなくなります。
再現するため、プログラムを以下のように単純化しました。
「PORT_Bのブルアップ抵抗を接続」の行をコメントにすると
正常に動きますが、はずすと動作には関係ないと思われるのに、
プログラムが動きません。
回路図はURLリンク(radio.s56.xrea.com)です。
(抵抗150Ω、セラロック20MHz)
どこか勘違いしているようでしたら、教えてください。
なお、CCSのコンパイラを使っています。
------------------------------------------------------------
#include <16F876.h>
#fuses HS, NOWDT, PUT, NOPROTECT
#use delay(CLOCK = 20000000)
void main()
{
set_tris_a(0); //PORT_Aの各ピンは出力モード
// port_b_pullups(TRUE);//PORT_Bのブルアップ抵抗を接続
while(1)
{
output_a(0xFF);//PORT_Aの各ピンはHIGH
delay_ms(500);//500ms待つ
output_a(0);//PORT_Aの各ピンはLOW
delay_ms(500);//500ms待つ
}
}
789:774ワット発電中さん
05/04/20 12:21:41 NBp2WVfp
>>788
どうでもいいが、MCLRをVccに直結しているのが気持ち悪い。10kくらいでプルアップ。
LEDの抵抗が150Ωって、そんな輝度悪なLED使ってるの?普通470Ωくらい?
電流流れすぎてるんじゃないの?
790:774ワット発電中さん
05/04/20 12:38:25 HpXuxjlA
8ピンのVSSが+5Vに繋がってるのは本当なのか?
791:774ワット発電中さん
05/04/20 12:42:56 dtrMBKO7
>>788
8PINはちゃんとGNDにつながっているものとして・・・
Analog入力を持つPICはデフォでAnalogモードとなっているのは常識。
PortAをDigitalで使用するならADCON1をDIGITALに設定しましょう。
ccs-cを使用しているなら
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
くらいは必要。
(対象のCPUによって多少異なる)
792:788
05/04/20 13:40:40 mYynoiB6
うわ、描き間違えていました。
10kΩをつけて修正したのが、
URLリンク(radio.s56.xrea.com)
です。
プログラムも変えましたが、症状変わらずです。うーん。
#include <16F876.h>
#fuses HS, NOWDT, PUT, NOPROTECT
#use delay(CLOCK = 20000000)
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
set_tris_a(0); //PORT_Aの各ピンは出力モード
port_b_pullups(TRUE);//PORT_Bのブルアップ抵抗を接続
while(1)
{
output_a(0xFF);//PORT_Aの各ピンはHIGH
delay_ms(500);//500ms待つ
output_a(0);//PORT_Aの各ピンはLOW
delay_ms(500);//500ms待つ
}
}
793:774ワット発電中さん
05/04/20 14:15:01 ADrhQJDD
>>792
コメントアウトした時としてない時の、アセンブラ出力の違いは見れる?
794:774ワット発電中さん
05/04/20 14:21:43 ADrhQJDD
それと、割り込み関連もデフォルトでなく、明示的に禁止にしておいたほうがいいかも。
795:774ワット発電中さん
05/04/20 14:28:03 ADrhQJDD
ついでにもう一つ、このチップは低電圧プログラミング機能があるみたいなので
禁止しておかないと、プログラミングモードに入ってしまうらしい。
796:16F877A
05/04/20 14:30:08 tsINLclT
>>792
アセンブラなら
BSF OPTION_REG,7
アドレス81H なのだが、Cなら自動的にバンク切り替えしてくれるんだよな?
797:774ワット発電中さん
05/04/20 15:26:26 dtrMBKO7
>792
#fuse に NOLVP を追加すべし
798:774ワット発電中さん
05/04/20 15:27:38 DyI4LOL9
LED外したら動くとか?
799:774ワット発電中さん
05/04/20 16:26:35 PCDrHvG9
LEDに電流流しすぎ、抵抗減らせ。話はそれからだ。
800:774ワット発電中さん
05/04/20 17:01:20 IBfDTzjd
LEDに電流流しすぎ、抵抗値増やして各LED電流を8mA以下にしろ。話はそれからだ。
801:774ワット発電中さん
05/04/20 17:42:37 DbJuq6zN
パスコンがない
802:788
05/04/20 17:53:43 mYynoiB6
>>795, 797
それでした。
後閑さんC本のPIC16F84Aのプログラムを丸写しして、
単にヘッダファイルを16F876.hに変えたのが原因でした。
確認したら16F87xでは#fusesのパラメータを増やす必要があるのが、
「C言語によるPICプログラミング入門」p109に書いてありましたね。
みなさんレスありがとうございました。
803:774ワット発電中さん
05/04/20 21:00:12 Kt044SjH
>>802
それとプルアップ抵抗がどういう関係にあるのか、わかんない
804:774ワット発電中さん
05/04/20 21:35:04 dtrMBKO7
>>803
LVPモードになっている場合ポートBをプルアップするとプログラミングモードとなってしまう。
805:804
05/04/20 21:36:23 dtrMBKO7
説明不足でした
>ポートBをプルアップすると
正確にはRB3をプルアップするとです。
806:774ワット発電中さん
05/04/20 22:53:49 C7LDh4UG
16F877のようにVSSやVDDが各々2つある場合、
電源と接地を2つとも接続しなければならないのですか?
それとも片方だけでいいのでしょうか?
807:774ワット発電中さん
05/04/20 23:22:16 u2bDXi93
無用なトラブルを避けるためにも、全部つないどけ。
808:774ワット発電中さん
05/04/20 23:42:47 J/oN4ENU
>>786さん
すれ違いにはなりますが、
スイッチドキャパシタフィルター
というのを始めて知ったのでぐぐったところ、
コンデンサをスイッチングすることで等価的に抵抗として使えるとありました。
が、これだけだと シミュレーテッドレジスタ という感じでいまいちフィルタに思えないのですが、
なぜ、これがフィルターと呼ばれるんでしょうか?
809:785です。
05/04/21 00:28:27 wE+4I9gh
>>787
そのとおり、4KHzまでです。
ただし、、、
CRの一次LPFだと4KHz以上の部分を落とそうとすると
カットのスロープが緩やかなのでサンプリングできる周波数も
削ることになるかなと思って、、
# CRでカットオフ4KHzにすると4KHzで-3dB
# 高次のフィルタ入れるとか言う話になると方向性またかわってくるしね
ここは、オーバーサンプリング(といっても40kHzぐらいにしかできないが)で
ソフトフィルタで4kHzに落とししてみる?とか言う方がマイコンのお遊びとしては
いい感じかな。
# そんな重いタスク走らせたら通信できなくなるかな?
810:16F877A
05/04/21 09:32:16 jtc91dT4
>>808
製品化されているのだな SCF
URLリンク(pdfserv.maxim-ic.com)
URLリンク(pdfserv.maxim-ic.com)
4KHzで0dbでも8KHzでー60dbまで落ちてるんだな
811:16F877A
05/04/21 10:35:38 jtc91dT4
>>808
AD,DAをバケツリレーしてるようなもんだな
URLリンク(japan.maxim-ic.com)
812:774ワット発電中さん
05/04/21 11:00:06 ySzRt6Hy
>786ではないが・・
>なぜ、これがフィルターと呼ばれるんでしょうか?
簡単に言えば、オペアンプによるフィルタはオペアンプとCとRだけで構成できる。
このRに相当する部分をスイッチトキャパシタで置き換える。コンデンサの
ところはスイッチングしないキャパシタにすると考えたらわかりやすいかな?
(実際のスイッチトキャパシタフィルタはもうちょい凝ってるけど)
以前は携帯電話なんかでも結構使われていたと思ったけど。
813:774ワット発電中さん
05/04/21 12:11:16 14HlrUjt
PSoCだとプログラマブルなSCFだよ。
初期化以降でも、レジスタたたけば特性も変えられるし。
814:774ワット発電中さん
05/04/21 12:36:30 dinkNOh4
ポートBのプルアップって抵抗なのか?
MOSジャマイカ?
815:774ワット発電中さん
05/04/21 13:01:04 caVsHudI
活用ガイドブックには
MOSトランジスタが内蔵されていて
これがプルアップ抵抗として働く
と書いてあるよ。
816:16F877A
05/04/21 13:25:53 jtc91dT4
>>814
FETによる定電流回路じゃないかな?
ばらつきは あるが0.5MAくらい流れてた。
817:774ワット発電中さん
05/04/21 14:47:54 mh5m+UFZ
500kAって半端じゃないな。
818:774ワット発電中さん
05/04/21 19:09:29 93pVmXRd
ネタで落ちたところで豚切りスマソ。
16F373に秋月の16×2のLCDをつないで文字を出そうとしていますが、
文字化けしてヘンテコリンな文字列が出てきます。
4ビットモードです。
文字コード表で追うと、どうやら 0x** と送ったつもりの
下位4ビットが B'1111' に化けて 0x*F となっているようです。
困ったことに(?!)まともに表示するときもあります。
ということは、初期化の手順やデータを送る手順に間違いはないと思われます。
ハンダ付け不良を真っ先に疑いましたが、どうも違うようです。
化けるときは送る2行の文字列の全てが化けます。
で、Home clr を送ってから同じ文字列を送るとまともに表示したりします。
まともに表示するときは、2行の文字列全てがまともに表示されます。
電源を入り切りしてリセットしたときは必ず化けます。
2行目の先頭を示すインストラクションも化けているのでしょか、カーソルがどこかに
飛んでゆきます。
2~3秒のディレイを挟んでから完全に安定した頃を見計らって初期化→文字列送信
をしてもだめです。
MCLRをGNDに落としてリセットすると、50%ぐらいの確立でまともに表示します。
電源を入り切りしても、Home clr 後の2回目の送信だとまともに表示します。
Home clr のインストラクションは化けないということになります。
なしてだべさ?
819:774ワット発電中さん
05/04/21 19:10:55 93pVmXRd
もうちょっと追加情報。
RB DB
820:774ワット発電中さん
05/04/21 19:19:29 93pVmXRd
うげ!
途中送信スマソ。
RB7 DB7
RB6 DB6
RB5 DB5
RB4 DB4
RB3 E(STB)
RB2 RW
RB1 RS
RB0 他用途のLED
ビジィフラグをチェックした後のTRISBの戻し忘れはチェック済み。
LCDは後閑さんの丸写しプログラムで動かした実績ありの完動品。
RB7-4をPOATB、RS・RW・EをPORTAとした別の基板につなぐとまともに動く。
上位4ビットは常に正しく送られている(様にみえるほど安定した文字化け)。
あとなんか問い詰めたいことあります?
821:熱暴走 ◆2SA784NN.A
05/04/21 19:51:18 aG2wTm1v
>>820
>ビジィフラグをチェックした後のTRISBの戻し忘れはチェック済み。
ソースないのに、そんな事いわれてもw
>下位4ビットが B'1111' に化けて 0x*F となっているようです。
4ビットモードになってないのではないかと...
つ[チラシの裏]
I2C -> LCD(uPD7228,HD44780) 変換IF(16F88)を製作中だったりする
いつ完成するやら...
だいぶ昔に若松で買ったLM-16151(16桁1行LCDユニット ¥250)
を引っ張り出してみたら、液晶の右端側が黒く滲んでいた... orz
822:熱暴走 ◆2SA784NN.A
05/04/21 19:56:55 aG2wTm1v
あ。 若松の名誉の為に言っておくと、購入当初はなんともなかったです。
1x年寝かせておいた、自分が悪いんですが。
823:774ワット発電中さん
05/04/21 20:06:54 u3yndU80
>4ビットモードになってないのではないかと...
電源on
↓
ポート初期化
↓
2~3秒待ち
↓
8ビット→4ビット
↓
まずは文字列送る1回目(化ける)
↓
Home clr(受け付けられる)
↓
同じ文字列送る2回目(化けない)
1回目と2回目の間に、小人さんが4ビットモードにしてくれてる・・・・
訳ないですよね?
この挙動が最大の疑問だったりするんですが・・・。
[チラシの裏の隅っこ]
F88のI2C、とっとと作って漏れにください。
マスターのデバイス依存の要素が減るし、ハードが勝手に通信してくれるし
いいことづくめなんでうれしいでつ。
出来たらCCPで液晶の明るさとバックライトの制御も出来るコマンドをサポートしてください。w
824:774ワット発電中さん
05/04/21 20:17:03 emGtUI5H
>>820
ビジーフラグを使わず、R/WをWにしちゃって、ウェイトだけで処理したほうがいいんじゃない?
多分、PICの「書き戻しの罠」にひっかかってる。
825:774ワット発電中さん
05/04/21 20:38:54 ySzRt6Hy
Busyフラグを読むのが早すぎるとか
826:774ワット発電中さん
05/04/21 20:42:24 SEY07E7o
>>808
>コンデンサをスイッチングすることで等価的に抵抗として使えるとありました。
できればそのソース希望。
んなことはないので。
コンデンサをスイッチングすることで変わるのは、Cの見かけの容量。
抵抗値を変えたいなら、抵抗をスイッチングしないと。
827:774ワット発電中さん
05/04/21 20:50:50 d5bLx91j
4bitモード、ハンドシエークなしで随分と使ってきているけど、
そんなことは一度も経験が無い。ちゃんとセット出来ていれば
2~3秒も待たなくたってすぐ表示される。MPLABでステップ実行しながら
デバッグすればある程度は分かることだな。
828:693
05/04/21 21:29:03 H+5ZYF/F
みなさんレスありがとうございました。
わかったようなわからんような…
>>826さん
URLリンク(www.swarthmore.edu)
をみてRと同様にみなせる(V/Aで表される)&ただの抵抗と同じでフィルタ?
って思いました。さらっと見ただけなんで読み違いも多々あるかもしれません…
829:774ワット発電中さん
05/04/21 21:57:34 ySzRt6Hy
スイッチトキャパシタを利用してフィルタを作ったのがスイッチトキャパシタフィルタ。
参考
URLリンク(www.filter-solutions.com)
ついでに、スイッチトキャパシタそのものの説明なら、上に出てきたPSoC向けのアプリケーションノートAN2041がいいかも
URLリンク(www.cypress.com)
830:826
05/04/21 22:05:45 SEY07E7o
>>828
了解。いわゆるフライング・キャパシタ的な用途であったか。
それなら、確かに抵抗とみなせる。フィルタとしての動作だと思てた。
831:818
05/04/21 23:42:51 x41ezyqp
>824
「書き戻しの罠」の件ですが、bcf とか bsf の話ですよね?
nop を入れてもダメです。
後閑さんの丸写しでやると nop なしでも動きます。
>825
ビジーフラグは倒れるまでループで読み続けています。
>827
MPLAB上では上位も下位もちゃんと送れてるんですよ。
SWAP 命令とか、ANDとORの勘違いとか、マスクの勘違いかなぁって
ハンダの次に疑ったんですけど、シミュレーター上では「シロ」ですた。
追加情報
RB6-7 は ICSP と LCD の兼用です。
ICSP コネクタ側は直結で、LCD 側は 10k を挟んでから LCD へ行ってます。
セラロックは 20MHzです。
DB0-4 はオープンです。
って、こんなの関係ないですよね?
832:774ワット発電中さん
05/04/22 00:14:52 3t7yYptj
>>818
Eパルスの幅をのばしてみ
5年以上前の古いLCDと最近のLCDでタイミングが違ってたりする
833:774ワット発電中さん
05/04/22 00:21:14 wc5bzQMT
>>831
4bitモードになっていないに一票。
834:774ワット発電中さん
05/04/22 03:57:41 CGw7DkHu
なんで10Kを挟むの?
LCDにも直結じゃまずいの? LCDのBUSY出力がつながっているとか?。
10Kは値が大きいような器がするのは私だけ?
835:774ワット発電中さん
05/04/22 08:51:36 IG0QP8ph
>>831
「書き戻しの罠」ってあれだろ?BSFで、例えば3ビット目をクリアしようとすると2ビット目とかが、勝手に
書き換わってしまう事があるっていうアレ。
BSFとか使わずに、ちゃんと全ビットをMOVFで書かなきゃダメっていうアレ。
URLリンク(www.picfun.com) の
【注意】BSF、BCFでポートの出力をする場合
っていうやつ。
836:774ワット発電中さん
05/04/22 09:14:55 qSv+VBY3
8ビットモードのLCDに4ビットのデータを送ったら、下位は必ず'1111'になる悪寒。
DB0~DB3はLCD内部でプルアップされてるから。
ただし、一文字送ったつもりが、上位+'1111'と下位+'1111'の二文字に化けそう。
あるいは、ビジィのタイミングしだいでは2文字目は無視されるかも。
それとも4ビットに構成されたときだけプルアップされるんでしたっけ?
837:774ワット発電中さん
05/04/22 09:21:36 m+PO/sfn
かんけーねぇと思うけど、コンフィグ晒してみて。
__CONFIG _HS_OSC &
ってやつ
838:774ワット発電中さん
05/04/22 10:45:23 jFyxVBAd
ポートから10kΩを直列に入れてLCD入れていたら、それはダメだな。
ためしに、RB7、RB6を強制LOWにしているとき、LCDのDB6,DB7をテスターで見れば
分かると思うが。
原因はそれしか考えられんね。
なぜか、それは、LCD側で20k~50k位でプルアップされているから。
そうすると何が起きるかというと、LOWに落ちきらないよなー。
ICSPと兼用するなら、バッファ入れるか、ジャンパー出来るようにするべきだろうな。
839:774ワット発電中さん
05/04/22 13:24:55 P7JQjhc2
LCD側の入力ピンでないとICSPは出来ないと思う
LCD側の入力ピンなら バッファなしで直接でいい
840:818
05/04/22 13:31:46 2Fxdq5d/
>832
当初、230nS以上のところ、1命令サイクルの200nSしかなかったので
これだ!(・∀・)と思って直してみましたがダメでした。
また、4MHzで動かしてもダメでした。
でも、物は試しで極端に伸ばしたりしてみます。
>833
ですかねー?
それが何故なのかがもんだいでつ。
ソースは穴が開くほど見ても分からないし、シミュレータはまともに通るし、
何より、まともに動くときもあるって言うのが良く分からない。
>834
直結でもいいですかね?
書き込みの信号で揺さぶられるのは気持ち悪いんですが。
>835
私もそれだと思います。
>836
なるへそ。
4ビットモードになってないと確かにそうなりそうですね。
でも、2文字に化けるという現象はありません。
ビジィが解ける40μSは結構長い時間なのでそんなに微妙なタイミングではないかと
思うんですがどうでしょうね。
>837
今手元にないので今夜にでも。
>838
手元に記録がないので記憶ですが、実測してみて0.8V台まで落ちていました。
確か、計算上のプルアップの抵抗値は52Kだったと思います。
UYT、0:0T/。4Z
841:818
05/04/22 13:33:42 2Fxdq5d/
>839
>LCD側の入力ピンでないとICSPは出来ないと思う
すみません。意味が分かりません。
出来れば詳しくおながいします。
842:818
05/04/22 13:39:03 2Fxdq5d/
あ!
もしかして、
RB7 と RB6 は LCD の DB7 と DB6 に繋がっているのですが、
R/W が R のときは DB7 とDB6 は入力端子だから直結して 書き込み信号で LCD を揺さぶっても良いけど、
R/W が W のときは DB7 と DB6 が出力端子になるから、場合によっては出力が衝突するからダメだよ・・・・
という意味でしょうか?
843:818
05/04/22 13:40:47 2Fxdq5d/
>842
R と W が逆でした。
844:774ワット発電中さん
05/04/22 13:53:08 jFyxVBAd
ICSPを使わない、ICSPハーネスは外す。
10KΩ そんなのは全部0Ωスルーだ。まずはこれで動くかを試す。
そうしないと一向に解決しないものと思われ。
845:774ワット発電中さん
05/04/22 19:21:37 qUN9Chbh
>>842
その通り。ICSP中は、ICSPの信号は「誰にも邪魔されずに、
PICのピンまでたどり着きたい」と思っているのです。
846:774ワット発電中さん
05/04/22 20:23:26 rqytPe+Z
書き込み後のべりファイが桶ならICSPは正常に終了していると思われ。
その辺はどうなんでしょ。
847:774ワット発電中さん
05/04/22 23:48:37 AEeAGnQ4
質問、
ポートをH出力(LED点灯中)でもスリープに移行できますか?
また、スリープに移行してもLED消えたりしませんか?
848:774ワット発電中さん
05/04/22 23:49:28 AEeAGnQ4
できるよ
849:16F877A
05/04/23 03:17:26 U2jozAGx
>>847
しかしスリープに移行して、消費電力を落としても、LEDがつながっていては
スリープの意味が無いですよね??
AD変換中のスリープかな??
850:774ワット発電中さん
05/04/23 17:49:34 V5Hwem0S
PICは電池を電源にして4.5V~6.0V、
複数あるLEDには別電源の6v+電流制限抵抗をいれて、
シンクで点燈したいと思います。
RA4ではなく、他のポートでです。
問題ありますかね?
電池の消耗を防ぐために、
別電源を入れたときだけ点燈するようにしたいのです。
別電源がないとき、LEDのアノードコモン側はオープンになります
851:774ワット発電中さん
05/04/23 19:32:17 xd9L7syo
何に使うのか分からないけどメインは電池駆動なんでしょ?
一案
実験あるのみ
二案
PICって6Vぐらいまで動くでしょ?ACアダプタのコネクタを刺すと、電池を切断してAC6Vで全部動くようにするとか。
三案
別電源用意しなくても、
必要な時だけソフト&外部スイッチでLEDのオンオフ出来るようにしたらいいじゃない。
ピンが足らないのかな?
852:774ワット発電中さん
05/04/23 19:35:57 Y28oAKA+
+6V=>抵抗=>LED=>PICポート=>保護/寄生ダイオード=>電源端子(+4.5V?)
てなわけでPICが・・・
853:774ワット発電中さん
05/04/23 19:48:18 j+eREi34
LEDのVfがあるから壊れるところまでは行かないでしょ。
保護/寄生ダイオードのVfと電源電圧の差とLEDのVfが拮抗するだけの電流が流れる訳だが、たぶん保護/寄生ダイオードがあぼーんするほどではないと思う。
でも定常的に電力を消費するのでかなり気持ち悪いな。
854:774ワット発電中さん
05/04/24 00:21:16 vk3E1bQu
トランジスタを挟んだ方が良いような気も・・・
855:774ワット発電中さん
05/04/24 00:58:58 mvPWe29p
久々に戦国いったら、PIC関連がやたら増えてた。
ICD2互換製品なんてのもあったよ
856:850
05/04/24 05:46:44 dV7gmCN0
皆様トンクス
>854
ですね。
857:774ワット発電中さん
05/04/24 12:44:50 9nxshLiM
>>818
は、あれだけ質問しておいて逃走ですか・・・そうですか・・・・
858:774ワット発電中さん
05/04/24 12:51:23 7k8Xrtnz
>>857
2chですから………。
859:774ワット発電中さん
05/04/24 13:02:53 fV59lsxP
PICにはオープンコレクタモードがないんだ…
860:774ワット発電中さん
05/04/24 13:18:22 QOmSPNj3
モードがあっても、構造自体はただのトライステートバッファだったりするけどな
861:774ワット発電中さん
05/04/24 14:22:40 7k8Xrtnz
つ[トランジスタ]
862:774ワット発電中さん
05/04/24 21:38:56 HHfeIOHz
外付けトランジスタじゃ疑似双方向にできないのでは?
863:774ワット発電中さん
05/04/25 00:43:06 SirInfpN
>>849
割り込み待機でループさせるか、スリープさせるかでちょっと悩んだ
864:774ワット発電中さん
05/04/25 10:19:29 pSCwy9Ia
LEDを点滅させいてるのですが、delay_msに変数を使って指定してやると、
delay_ms(2000)と指定してもdelay(300)ぐらいになってしまいます。
どこが違うか教えていただけないでしょうか。
CCS-Cのソースです。
#include <16F876.h>
#fuses HS, NOWDT, PUT, NOPROTECT, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(CLOCK = 20000000)
void main()
{
long pulseWidth = 100;//パルス幅
setup_adc_ports(NO_ANALOGS);//ADは使わないよ
setup_adc(ADC_OFF);//ADは使わないよ
set_tris_a(0); //PORT_Aの各ピンは出力モード
set_tris_b(0xFF); //PORT_Bの各ピンは入力モード
port_b_pullups(TRUE);//PORT_Bのブルアップ抵抗を接続
while(1)
{
output_a(0xFF);//PORT_Aの各ピンはHIGH
delay_ms(pulseWidth);
output_a(0);//PORT_Aの各ピンはLOW
delay_ms(pulseWidth);
//ポートB7をLowにすることでパルス幅を変更
if (input(PIN_B7) == 0)
{
pulseWidth = 2000;
}
else
{
pulseWidth = 100;
}
}
}
865:864
05/04/25 10:26:17 pSCwy9Ia
delay_ms(time);
timeは8ビット変数か、16ビット定数でした。orz
866:774ワット発電中さん
05/04/25 19:55:11 9C9BClXO
あげとく
867:& ◆074eXsmY.k
05/04/25 21:53:38 tLAiVviK
アセンブラ言語がよくわかりません。
誰か教えてくださる人はいませんか?
868:774ワット発電中さん
05/04/25 22:27:36 SYf+fYUR
日本語がよくわかりません。
誰か教えてくださる人はいませんか?
869:774ワット発電中さん
05/04/25 22:43:22 dOHees0X
アセンブラとかコンパイラって名前がキャラについてる漫画のタイトルが思い出せません
誰か教えてくださる人はいませんか?
870:818
05/04/25 22:56:01 JFqbb/Hk
ご無沙汰スマソです。
>837
__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF & _LVP_OFF
ICSP 絡みの 10k を直結にしてもだめ。
E の時間を延ばしてもだめ。
秋月のライタですが、書込みのベェリファイはok。
接続に長さ10cmほどの自作ハーネスを使っているのですが、
5cm ぐらいの短いヤシに丁寧に作り直してもダメ。
リセット回路をプルアップからコンデンサ+抵抗に作り直してもだめ。
電源の立ち上がりを早くする為に、電源側にコンデンサを追加して PIC のボード側の容量を減らしたりしてもダメ。
いろいろいじってひとつ分った事は、
たぶん、文字のデータはキチンと送られている。
スイッチを押すごとに1文字づつ送るように回路とソースを作り直して一文字一文字出力をテスタで見てみたのです。
そしたら、文字のコードは正しく送られているにも関わらず、LCD がちゃんと解釈していない。
よって結論:4ビットモードにする初期化が上手くいっていない。
それでも、たまには上手く行くときもある。
なしてだべさ?
871:774ワット発電中さん
05/04/25 22:56:06 x6XxfjXb
>>867 ええと、参考までにPICのアセンブラを学ぶために購入した書籍の名前を挙げていただけませんか?
872:774ワット発電中さん
05/04/25 23:10:23 x6XxfjXb
>>870 16F373のデータシートへのリンク知ってたら教えて
873:870=818
05/04/25 23:40:11 JFqbb/Hk
私にアンカーを打ってると言う事は 16F873 ですよね?
URLリンク(ww1.microchip.com) (日本語参考版)
URLリンク(ww1.microchip.com) (英語版)
よろしく、おながいします・・・、かな?
874:774ワット発電中さん
05/04/25 23:43:50 x6XxfjXb
ごめん。ちょっと突っ込んでみただけ。
> 16F373に秋月の16×2のLCDをつないで文字を出そうとしていますが、
875:774ワット発電中さん
05/04/25 23:56:47 x6XxfjXb
昔、某大学のプログラミング演習で、テキストのRB3/PGMの設定が抜けてて動作が
とても不安定だったことがあったので>>870見てみたけど、大丈夫みたいですね・・・。
876:774ワット発電中さん
05/04/26 00:01:29 x6XxfjXb
連続カキコすまそ
↓ここらへんを参考にしています。
URLリンク(homepage1.nifty.com)
漏れにはお手上げだけど、もう一度いろいろチェックしてみたらどうでしょうか。
釈迦に説法スマソ
877:774ワット発電中さん
05/04/26 00:04:53 dnV3ryHz
>>869
アフタヌーンに連載してたやつなら、そのまんまだな。
878:774ワット発電中さん
05/04/26 00:07:57 dnV3ryHz
>>870
BSCHかなんかで回路図書いて、適当なアップローダに、ソースファイルを付けて圧縮してUPしてくれ。
そこまで泥沼だと、断片情報聞いても、さっぱり役に立たない。
879:774ワット発電中さん
05/04/26 00:17:59 tWV3yeZb
液晶を4ビットモードで初期化するのに、冒頭部分ではビジーフラグが
使えなかったように思うけどそのあたりは大丈夫なのでしょうか?
880:774ワット発電中さん
05/04/26 12:17:44 mXAhuy5M
>>879
>>878に同意。
881:774ワット発電中さん
05/04/26 13:35:27 KOnC2Det
>>870
4bitモードで使われないD0-D3は内部プルアップらしいので、
8bitモードのまま4bit送信すると、下位4bit=1111になった文字が2個ずつ出るという
可能性はあるな。下位4bitについては現象に一致するが、1文字送っても
2個ずつ出てくる現象はおこってるかい?
もしくは、下位4bitを送るときRSを1にしていないとか。
いや、これは関係ないかな・・・?
882:774ワット発電中さん
05/04/26 13:36:00 KOnC2Det
>>870
というわけで、回路図とプログラム晒せ。
883:追加
05/04/26 13:37:42 KOnC2Det
>>881
文字データ送信も40usecの待機を要するようなので、
もしかしたら上位だけ(8bit送信として)受け取られ、下位送信の方はタイミングが短すぎて
無視されている可能性はあるな。
884:774ワット発電中さん
05/04/26 16:52:58 8gsJgyJx
piccliteって最適化能力あるんでしょうか?
CでOOPとかするとポインタ渡し周りのコストすら馬鹿にならなさそうで怖いんですが。
885:774ワット発電中さん
05/04/26 19:45:34 FhPEweWc
piccliteはfreeだし,アセンブリソースリストも出力される
16F877なら 4kwステップもできる
というわけで ↑ 自分で判断しる
picの Cとしては,ちゃんと使えて至極まともなほうだと思う
886:774ワット発電中さん
05/04/26 20:32:26 PnVd1iBb
>>818
1キャラ毎でなく、ポートを出力するたびに大きなウェイトを入れてみたらどう?
それで動けば、何らかのタイミングが影響している。
動かなければそもそもシーケンスがおかしい、と切り分けられると思うけど。
>>884
PICCLITEはかしこいよ。おすすめ。
887:818@大馬鹿者
05/04/26 21:00:13 VrzPur8e
大騒がせスマソ。>みなさま
andlw と ioriw の訂正漏れでした。
PORTB だけで LCD を動かすために RB0-RB3 をマスクしたりするのですが、
その際、andlw とすべきところ ioriw となっていました。
開発初期の段階で気付いて直していたのですが、データを書くルーチンは直しておきながら、
インストラクションを書くルーチンを直していませんでした。
PORTBレジスタは電源投入やリセットでクリアされませんから、
先にPORTBレジスタに残っていたデータ次第では上手く初期化されるけど、
大抵は上手く行かないという動きだったようです。
20MHzだろうが、最低限のタイミングだろうが、10kΩが挟まっていようが、
ICSPケーブルを繋ぎっ放しだろうが、チャタリングをわざと起こすように電源スイッチを投入しようが、
あんな事をしようがこんな事をしようが、あらゆる乱暴なことをしても・・・・
L C D 野 郎 は ち ゃ ん と 動 き や が り ま し た 。
まるで何事もなかったように・・・。
ただし、データシート的には10kは大きすぎるので2.2kにしました。
結局チラシの裏になってしまい、付き合っていただいた方には申し訳ないです。マジスマソ
恥ずかしいので今から穴を掘って入ってきます。w
888:774ワット発電中さん
05/04/26 21:04:20 XC5qT9qJ
ワラタ
動いてよかったっすね。
889:774ワット発電中さん
05/04/26 21:56:22 Rbv8mlTW
やっと気が付いたか
また一回り大きくなったな
上司
890:774ワット発電中さん
05/04/26 22:13:19 MwPFrbe5
わんぱくでもいい,、たくましく育ってほしい。
891:774ワット発電中さん
05/04/26 22:21:29 llIgh4Do
このようにちゃんと結果報告があるとうれしいものです。
がんばってくだされ。
892:774ワット発電中さん
05/04/26 22:56:56 sCYN1fzt
>887
お疲れさまでした、また経験値アップしましたね、ガンガレ!!
893:774ワット発電中さん
05/04/27 00:10:25 q29BsxXE
>>887
おめでと。報告乙。
>L C D 野 郎 は ち ゃ ん と 動 き や が り ま し た 。
大変気持ちがわかるレポートでワラタ。
894:774ワット発電中さん
05/04/27 01:24:47 2dWP1oof
>LCD野郎
そういえばLCDの性別ってどっちなんだろ
895:774ワット発電中さん
05/04/27 10:17:41 934r3jnQ
>>887
ちゃんと回路図とソースを晒しておけば、4.87秒でレスがついただろうに。
それにしても、10kΩは大きすぎ。入れるなら、せめて1kΩ程度でしょう。
896:774ワット発電中さん
05/04/27 10:29:41 q29BsxXE
>>894
俺の持ってるのはコネクタはオスだな。よってLCDとマイコンボードは男性。
仲を取り持つケーブルは女性ね。
ということはPICボードとLCDは○×兄(以下自粛・・・)
897:774ワット発電中さん
05/04/27 16:42:34 OgD6qBzb
仏語のサイトでは"le LCD"と書かれていたりしているので、男性名詞なんでしょうね。
898:774ワット発電中さん
05/04/27 17:50:14 6pQ5Oz5i
あの寸胴体型、でかいツラはどうみても男だろう。
899:818
05/04/27 19:34:59 DLDKD/zX
気難しくて言うこと聞かないから女。
900:774ワット発電中さん
05/04/27 21:08:12 3YSIqaUR
苦労してんな・・・
901:774ワット発電中さん
05/04/27 21:37:26 RrTnVLEf
>>899
いや、融通きかなくて頑固だから男だね。
理屈が通らないデバイスなら女性としても・・・オーヲタ御用達パーツか?
902:元1
05/04/27 21:45:14 Ba/SwECk
そろそろ1000が近いぞな
入れなきゃならんリンクとかデータシートとかスレとか
ちらほら入れておいてくれ。
903:818@本物
05/04/28 19:47:17 fW3Z8TVN
>899
騙り乙
でもオモロイから許す。w
904:774ワット発電中さん
05/04/29 08:37:37 nmIFmZzS
J○_○ あっちこっちに見える白目の変な顔 ウゼー。
905:774ワット発電中さん
05/04/30 03:11:19 BfqRiDh2
質問を読むだけで答えないあなたよりは、ずいぶん まし。
906:774ワット発電中さん
05/04/30 03:45:30 V0tyxcpt
答えることは義務ではない
907:774ワット発電中さん
05/04/30 08:19:43 ke2Mgq64
> J○_○ あっちこっちに見える白目の変な顔
顔文字のHNはやめたほうがいい。
908:767
05/04/30 13:30:34 DRonuvwh
電源をAE-877ICE_Bからでなく、外から取るようにしたら
動いたですよ。
909:774ワット発電中さん
05/04/30 16:45:15 ac63jAC1
>>906
> 答えることは義務ではない
だったら「ウゼー」と言ってはいかんよ >>904
自分では何もしないくせに、言うことだけは一人前は良くない。
910:774ワット発電中さん
05/04/30 22:37:33 v9iPw1lp
質問
プログラムの話ではなく、実際に出来るかどうかです。
プルアップしたポートとタクトスイッチ。
ポート割り込み設定で、
タクトスイッチ押してる時間によってGOTO先を変えたり出来ますか?
911:774ワット発電中さん
05/04/30 23:02:55 RQ8vgJc0
できそうに1票
912:774ワット発電中さん
05/05/01 00:29:29 3zNC5VOg
スイッチオン
割り込み発生でTMRまわして
スイッチオフの割り込みで値を見て
振り分けるんでいけるんであ?
913:774ワット発電中さん
05/05/01 07:05:43 tKi+Wb7x
できそうに1票
スイッチオン
割り込み発生でI2CのRTCの時刻を参照して
スイッチオフの割り込みでもう一度時刻を見て
振り分けるんでいけるんであ?w
あるいはネットに常時接続しておいてNTPを参照するとか。www
50mS以下の短時間ON・OFFは無視するとかの処理も必要だろうね。
チャタリングの問題などもあるしね。
914:774ワット発電中さん
05/05/01 07:44:13 oiwBwvaY
>910 君は何をしたいの?
やりたいことによっては、君の考え自体が間違っていることもあるんだよ。
915:774ワット発電中さん
05/05/01 08:43:38 lzF3vlq1
>>910
スイッチ押している間処理が占有されても良いなら
チャタリング処理終了後、押されている時間を計測し、離す瞬間にその時間で
goto先を振り分けるだけ。
他の処理も同時並行で行いたければ、1msec間隔でスイッチを見に行って、
スイッチが押されていればスイッチ押下時間カウンタ変数をinc、
スイッチが離されたら、スイッチ押下時間を別変数にコピー後クリアし、
スイッチ押下時間<チャタリング時間→無視
それ以外→スイッチ押下時間に応じてgoto先振り分け
916:774ワット発電中さん
05/05/01 14:05:12 nec9dEoN
なぜ>>910は でるか不安に思ったのだろうか?
915程度のことはスグに思いつきそうだが。
917:774ワット発電中さん
05/05/01 16:09:52 lzF3vlq1
>>915
訂正。手で押すスイッチなら20~100msec毎程度でいいな。
2度連続ONの場合のみスイッチONとみなす。
918:774ワット発電中さん
05/05/01 16:10:39 lzF3vlq1
>>913
しかしなんでNTPとかRTCユニットなんだ?
919:774ワット発電中さん
05/05/01 17:14:18 oiwBwvaY
>918 5月病だからさ
920:774ワット発電中さん
05/05/01 17:21:14 lzF3vlq1
>>916
おお、IDがnecだぞ。
921:774ワット発電中さん
05/05/01 18:07:09 Tnii4VIq
GOTO やらCALLやらが沢山で、、もういや~~~
分かりやすく書いたつもりが、、、~~
って状態になったから、、、とりあえず聞いてみた。
そこだけ別にコピーしてテストしま~す。
スレがあれてたから和み計画で、、ってのもある。
922:774ワット発電中さん
05/05/01 18:50:40 hluncjpk
荒れてたのか!
言われて気付いたよ。w
923:774ワット発電中さん
05/05/01 18:58:25 oiwBwvaY
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
>921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー >921 しねしねしねしねしんじまえー
924:774ワット発電中さん
05/05/01 19:00:35 K/N14SEd
Wow!黄金
925:774ワット発電中さん
05/05/01 19:01:46 UbpP4x9e
>>923(oiwBwvaY)
はー大人気ない。つうか、黄金週間だからしょうがないか・・・・
926:774ワット発電中さん
05/05/01 19:09:20 K/N14SEd
マジレスするとアフォみたいだから、黄金を楽しもうよ。
927:774ワット発電中さん
05/05/01 21:07:25 7neT0sgJ
けんかすんなよ
928:774ワット発電中さん
05/05/01 22:37:01 Tnii4VIq
みんな、びろい
MPLAB IDE v7.10
シミュレーションで割り込みテスト出来るんだね~。
知らんかった。
929:774ワット発電中さん
05/05/01 22:42:24 Oz9jI+OD
この板にははじめて書き込みます。
Warning[203] D:\ASMS\LED1.ASM 63 : Found opcode in column 1. (movwf)
Warning[203] D:\ASMS\LED1.ASM 65 : Found opcode in column 1. (nop)
とか、コンパイルするとWarningがたくさん出て書き込んでも動作しません。
Messaggeは無視してよさそうなのですが、"Warning"は何か対策をしないといけないらしく、
何をしたらいいのかわかりません。教えてください。よろしくお願いします。
930:774ワット発電中さん
05/05/01 23:03:10 Tnii4VIq
Warning[203] D:\ASMS\LED1.ASM 63 : Found opcode in column 1. (movwf)
とか↑ダブルクリックしてごらん間違い行が自動指定される。
後はニラメッコシテ間違いを直す
931:774ワット発電中さん
05/05/01 23:13:50 Oz9jI+OD
>>930
ありがとうございました。たくさんニラメッコシマス。
932:774ワット発電中さん
05/05/01 23:18:52 WpXBVMbk
行の先頭に命令があるといってる。
普通は行の先頭から書くのはラベル。
命令は行の先頭を空けてから書く。
ソフトとしては1文字でも空いていればいいだろうけど、
人間がラベルと見分けやすいように8文字分くらい空けるといい。
933:774ワット発電中さん
05/05/01 23:48:29 Oz9jI+OD
>>932
沢山あった"Warning"がほとんど消えました。ありがとうございました。
934:774ワット発電中さん
05/05/02 00:41:13 w7kwMJ+T
Found opcode in column 1. (movwf)
Warningは、もろに答えを教えてくれてるじゃないですか。
直訳では
「1桁目にオペコードが見つかりました。(movwf)」
ですが、意味合いとしては、
「1桁目は他のものを期待していたのに、なんと命令コードが来てしまっているよ。大丈夫?」
と言うことなのです。
もっと英語を読みましょうよ。
読めば解決していた問題だと思いますよ。
935:774ワット発電中さん
05/05/02 00:53:49 iymWHfTh
やっぱわからん
ハードは12F、GP3を外部抵抗でプルアップして、タクトで落とす。
ソフトは(バンクは指定してます。)
& _MCLRE_OFF
BSF IOC,IOC3
BSF INTCON,GPIE
BCF INTCON,GPIF
RETFIE ;GIE
で、
割り込み入ったら
ループウェイトかけて
BTFSC GPIO,3
GOTO 111
ループウェイトかけて
BTFSC GPIO,3
GOTO 222
って判定してるんだけど。
リセットと似た動作になるんだよね。
タクトを離すと割り込み先で動き出す。
押してる間止まってるみたいなんだけど。
なんか、大きな間違いしてる?
(GP3だと駄目とか?)
936:774ワット発電中さん
05/05/02 01:07:29 iymWHfTh
RETFIE ;GIE
気持ち悪く見えるかもしれないけど、これでOKです。
後から他にも別のところで割り込み設定してから
全体割り込み有効にしてる。
ちょっと前にもアセンブラ教えてくれって来た人もいるし。
どんな質問が来てもいいんじゃない?
最初はそんなもんでしょ。
俺も一ヶ月前はNOPで同じことしたよ。1分かからずに解決したけどそれは人ぞれぞれだし。
>>1の上3行も読もうぜw
937:774ワット発電中さん
05/05/02 01:37:50 GwI/DXL5
それが人に物を聞く態度なのっ!?
938:774ワット発電中さん
05/05/02 01:56:30 iymWHfTh
>>937
先生の質問に答えられない奴は黙ってなさい。
「>>1の12行も読もうぜw 」
ってぐらい返してほしいよな。
939:774ワット発電中さん
05/05/02 02:42:47 buvtj3FV
2灯のフルカラーLEDの駆動回路を作りたいのです。
電源ONで、フルカラー点灯開始。
SW1 で、7色点灯に切り替え。
SW2 で、押したときに点灯している色に固定。(フルカラー点灯時の中間色とか・・・)
切り替わる速度を可変にしたい。(ボリュームとかを用いて)
電源電圧 4.5~5.0V で、玩具の照明に使いたいのです。
今までPICを使った回路を自分で組んだ事は有りません。
WEBにはそれらしい文字の羅列が乗ってる所もあるのですが、
どこを弄ると、自分の思うような動作をしてくれるのでしょうか?
ヒントだけでも下さい。お願いします。
940:774ワット発電中さん
05/05/02 02:44:28 GUFv1Mce
>>935
>>659-673
確信>>671
941:774ワット発電中さん
05/05/02 03:35:15 veS0CKsr
>>939
> どこを弄ると、自分の思うような動作をしてくれるのでしょうか?
> ヒントだけでも下さい。お願いします。
珠玉のヒントのみ
SW : GPIOからの入力、チャタリング除去
ボリューム:
VR: AD入力
ロータリーSW: GPIOからの入力(&チャタリング除去)
切り替え速度の変更: タイマ
LED: GPIO出力
中間色の点灯: 点灯デューティの制御、PWMなど
2灯の点灯:ダイナミック点灯 or ソース(シンク)電流の強化
942:774ワット発電中さん
05/05/02 04:01:01 cbW9gPA6
>>939
ソフトウェアだけいじって勉強してもそれだけになる、と言ってみる。
>>941さんのような内容とPIC選びと回路設計が影響する。
あと内部のTMRとかチャタリング除去の回路とか、Etc..Etc.....
943:774ワット発電中さん
05/05/02 06:54:26 GwI/DXL5
>939
フルカラーLEDに飛びつく前に
1.単色LEDのON/OFF点滅
2.SW入力
3.タイマー割込み
4.A/D変換
からやりなさい。
使う石としては16F88をおすすめ
ご参考
URLリンク(cai.cs.shinshu-u.ac.jp)
944:774ワット発電中さん
05/05/02 07:34:29 UBHqr42v
F877もお勧め。
鶏に牛刀という感じもするけど、古い石なので日本語データシートや本やwebなどの資料が豊富。
945:774ワット発電中さん
05/05/02 14:10:29 v0hvnEBq
その仕様だと、PICに搭載されている機能の ほとんどを使うほどの
中級レベルの内容だと思います。
初めてPICをさわるとしたら、結構な時間がかかりそうだよ
他の人のアドバイスのように、単機能の回路を使ってプログラムの練習わするのが吉だと思うよ
がんばって
946:774ワット発電中さん
05/05/02 14:16:43 l3QSJq8p
941も942もそんな設計ならPIC使う必要ナシ