【16Fに】PIC専用のスレPart19【まだ新品種が!w】

このエントリーをはてなブックマークに追加
952774ワット発電中さん:2008/05/27(火) 20:46:29 ID:UFTH9WW/
まったくの新機軸
953774ワット発電中さん:2008/05/27(火) 21:55:13 ID:h8+BaGrD
>まったくの新機軸
それはマイクロチップから見たときの話。
普通のMIPSアーキテクチャだから、あまり目新しくは無いよ。
954774ワット発電中さん:2008/05/27(火) 21:56:01 ID:UFTH9WW/
もちろん今までのPICと比べてってことです。
955774ワット発電中さん:2008/05/27(火) 22:49:42 ID:T+RANGhC
でもDIPがないのでごだびんには認めてもらえない…
956774ワット発電中さん:2008/05/27(火) 22:51:29 ID:UFTH9WW/
そこで秋月がDIP変換基板に実装した製品を販売w
957774ワット発電中さん:2008/05/27(火) 23:24:37 ID:owF7vqJa
H8みたいなのが、ばら撒かれるのか.
958495:2008/05/30(金) 07:00:48 ID:tEB5X2Y+
>>818
もう見てないかもしれないけど、僕の場合と同じようだ。
>>501 を見て味噌。
早い話バグだねw
959774ワット発電中さん:2008/05/30(金) 15:03:04 ID:jED52y8K
MICROCHIP DIRECTってクレジット決済するときSSLが外れるのだが...
960774ワット発電中さん:2008/06/01(日) 02:23:41 ID:WGnCalAg
某ML

>  PICkit2を使って、PIC12F629へプログラム書き込みは出来ましたが、デバッグ機能はエラーが出て使えません。

ICD2でDebugするときは専用チップ使わんとダメだけど、PicKit2だとアーラ不思議なの?


#simさんの所に、K氏が沸いてる。鬱。
961774ワット発電中さん:2008/06/01(日) 11:20:27 ID:WGnCalAg
>PK2Error0028: Unable to enter debug mode
>NOTE: This device requires an ICD Header for debug. See "Header Specification" DS51292.

書いてあるとおり、ヘッダーボードが必要です.
962774ワット発電中さん:2008/06/01(日) 14:39:43 ID:WGnCalAg
ただ、別途ハードウェアが必要な理由が判りません。
ヘッダーボードは、単なるコネクタ変換機能と考えているのですが
違うのでしょうか?

 以下、今日の報告です。この状況では、ヘッダーボードの有無は
無関係のように思っています。

 MPLAB IDEの Debugger でPICkit2を選択すると、プログラムメモリが
0x300〜0x3FFまで”RRRR”で埋められていることが判りました。
Disassembly Listing画面で見ると、メインプログラムは0x3E0以降に
位置しており、この”RRRR”が悪さしているように思えます。

 Debug ExpressのPIC16F887のサンプルプログラムでも後方0x1F00
〜1FFFまで同様に”RRRR”で埋められてしまいました。しかし、
サンプルプログラムはアセンブラで書かれており、先頭しか使って
いないためデバッグモードが動くようです。

 プログラムの位置を変えて見たいのですが、どの画面で指定するのか
さっぱり判りません。”RRRR”を消す方法をご存じのかたはいらっしゃいますか?
963774ワット発電中さん:2008/06/01(日) 15:54:12 ID:Fqz9pD7A
>>962
他所の引用なら、その旨書いてね。
うっかりレスしようかと思っちまった。  ID見て気づいたけど
964774ワット発電中さん:2008/06/02(月) 03:20:22 ID:nJa9Y1ub
割り込みがうまくいかなくて困ってます。RB0での割り込みは正常に動作するのですが
RB4-RB7の割り込みだと割り込みが終了せずに割り込み動作の無限ループになってしまいます。

#include "pic.h"
static unsigned char count;
void main() {
unsigned char n;
TRISA = 0x0;
TRISB = 0xff;
count = 0;
INTCON =0b10011000;
while(1){
PORTA=count;
}
}
static void interrupt intr(void) {
count = count + INTF + RBIF;
INTCON = 0b10011000;
}

環境:MPLAB IDE v8.10(MAPLAB SIM,HI-TECH C Compiler Lite)
965774ワット発電中さん:2008/06/02(月) 04:36:29 ID:wlroGSlr
>>964
ポートB 変化割り込みは,ポートB が最後に読み書きされた時の値が
基準になるので,割り込み処理ルーチンの中で,ポートB にアクセス
してやれば良い筈。
966774ワット発電中さん:2008/06/02(月) 07:29:17 ID:nJa9Y1ub
>>965
ありがとうございます。下のように変更したら、うまくいきました。

static void interrupt intr(void) {
count = count + INTF + RBIF;
PORTB=0xff;
INTCON = 0b10011000;
}
967774ワット発電中さん:2008/06/03(火) 08:26:38 ID:kWSO9Udu
PICの事が、ニコニコ動画ですごく話題になっているぞ。
http://www.nicovideo.jp/watch/sm3515017
必見
プレステ⇔mdid変換
968774ワット発電中さん:2008/06/03(火) 08:40:25 ID:pA+03wzS
969774ワット発電中さん:2008/06/03(火) 09:20:30 ID:YLY17IaD
>>967
みたみた
970774ワット発電中さん:2008/06/03(火) 09:45:52 ID:5tWtI48I
>>967
工作よりもあれで演奏できるのがすごいと思ったよ。
971774ワット発電中さん:2008/06/03(火) 10:15:51 ID:xRUr772/
>967
本人乙
972774ワット発電中さん:2008/06/03(火) 12:05:48 ID:zmUrso6L
PICのADは全て同じかと思っていたら、デジタルポートのPINに、VCCより高い電圧がかかると、
ADの入力PINに電圧が出てきてしまうやつがありますね。もちろん、高い電圧がかかるといっても
抵抗でクランプして、0.1mAくらい流れているだけですから、仕様上問題ないわけですがね。
16F88とか若干古いチップはOKですが、12F683辺りは多少出てきます。16F685とか886とかは
使い物にならん位ひどいです。ショットキでクランプすれば良いだけなのですが、今まで気がつかなかった。
973774ワット発電中さん:2008/06/03(火) 12:56:45 ID:PTrxQv7P
>>972
Vrefとかの問題じゃ無さそうだな
974774ワット発電中さん:2008/06/03(火) 16:01:14 ID:wX3jC1rv
12F675での質問です。

GPIO1 : 入力 5V電源から10kΩの抵抗を経由でGPIO2へ

GPIO0 : 出力 GPIO1から470Ω経由でLEDへ

で、入力用のGPIO1に電圧がかかったら、出力用のGPIO0からLEDを点灯、
GPIO1に電圧が掛からないときは、GPIO0へ電圧をかけないのでLED消灯。
という仕様です。
大体、このとおり動くのですが、接触のような何かの違いで
GPIO1に電圧を掛けていないのにGPIO0から電圧が掛かりLEDが点灯してしまいます。
接触とは、例えば、テスターで電圧を測る等の接触で、いきなりLEDが点灯するなどです。

どんな原因が考えられるでしょうか?



975774ワット発電中さん:2008/06/03(火) 16:03:03 ID:wX3jC1rv

間違いです。

訂正します。


誤  GPIO1 : 入力 5V電源から10kΩの抵抗を経由でGPIO2へ
                               ^^^^^^^

正  GPIO1 : 入力 5V電源から10kΩの抵抗を経由でGPIO1へ

976774ワット発電中さん:2008/06/03(火) 16:12:30 ID:TWVLMKEq
5V電源と10kΩとGPIO1の間のどれかにスイッチが入っているのですか?
GPIO1はGNDへ繋がっていますか?
977774ワット発電中さん:2008/06/03(火) 16:15:14 ID:wX3jC1rv
まったく、また間違えていました。

書き直しします。

すみません。


呆れた人は無視してください。



12F675での質問です。

GPIO1 : 入力 5V電源から10kΩの抵抗を経由でGPIO2へ

GPIO0 : 出力 GPIO0から470Ω経由でLEDへ

で、入力用のGPIO1に電圧がかかったら、出力用のGPIO0からLEDを点灯、
GPIO1に電圧が掛からないときは、GPIO0へ電圧をかけないのでLED消灯。
という仕様です。
大体、このとおり動くのですが、接触のような何かの違いで
GPIO1に電圧を掛けていないのにGPIO0から電圧が掛かりLEDが点灯してしまいます。
接触とは、例えば、テスターで電圧を測る等の接触で、いきなりLEDが点灯するなどです。

どんな原因が考えられるでしょうか?

978774ワット発電中さん:2008/06/03(火) 16:21:44 ID:wX3jC1rv
>>976
> 5V電源と10kΩとGPIO1の間のどれかにスイッチが入っているのですか?
>GPIO1はGNDへ繋がっていますか?

はい。


5v電源→---スイッチ--10kΩ---GPIO1-----GPIO0---470Ω---LED--→GND


こんな感じです。
979774ワット発電中さん:2008/06/03(火) 16:28:35 ID:TWVLMKEq
ごめん細かい事を質問してみたけど俺には謎過ぎてわからない。
とりあえず回路からPICと10kΩをなくして
5v--スイッチ--470Ω---LED--GND
てしたら仕様は満たせると思う。
980774ワット発電中さん:2008/06/03(火) 16:29:18 ID:bPTYpTeA
sw切ったとき 入力が宙ぶらりんの状態になるからだろ
プルダウンしておけばならないと思うよ
981774ワット発電中さん:2008/06/03(火) 18:48:33 ID:wX3jC1rv
>>980
>入力が宙ぶらりんの状態になるからだろ
なるほど、そういう事ですか。
ありがとうございます。

こういう現象について詳しく調べたいと思います。
手掛かりがまったく無いのですが、
とりあえず、ぐぐるとして、どんなワードがあるでしょうか?
982774ワット発電中さん:2008/06/03(火) 18:51:15 ID:wX3jC1rv
>>979
ありがとうございます。
確かに、仕様は満たせました。
983774ワット発電中さん:2008/06/03(火) 19:02:10 ID:PewxypYs
>>981
「プルアップ プルダウン」でググれ。
984774ワット発電中さん:2008/06/03(火) 19:12:04 ID:wX3jC1rv
>>983
あっ、いえ、プルアップ等は理解しており回路の他の部分で使用しています。

>入力が宙ぶらりんの状態になる

この現象を理解するためにはどの様に調べればよいのかと思いまして。
アナログ回路に由来するものなのか、PICの構造に由来するものなのか等、
この際、自分の頭で理解出来るものならしたいと思います。
よろしければ、アドバイスお願いいたします。
985774ワット発電中さん:2008/06/03(火) 19:24:01 ID:bPTYpTeA
986774ワット発電中さん:2008/06/03(火) 19:54:33 ID:59Z7ngem
FET, MOSFET, CMOS, 電圧, 電位, 電荷, 静電気をそれぞれググる
一通り読み終わった頃には理解しているでしょう
987774ワット発電中さん:2008/06/03(火) 20:04:53 ID:wX3jC1rv
なるほど、>>985さんのリンクを見た範囲では、一見PICの構造に原因があるとは読めなかった。
しかし、>>979さんの回路では起き得ないことを考えると、やはり、PICが誤動作しているのでしょうね。
>>986さんの範囲は広いですね。まぁ、何ヶ月かかけて考えてゆきます。
988774ワット発電中さん:2008/06/03(火) 20:07:38 ID:p5dHR5ee
>プルアップ等は理解しており
理解できてないだよ ネ。
989774ワット発電中さん:2008/06/03(火) 20:11:25 ID:FQxGXxWi
>>988
やり方は理解してる ということでしょ
990774ワット発電中さん:2008/06/03(火) 20:13:42 ID:59Z7ngem
ほげーっと読むと何ヶ月もかかり、頭にも入らないのだ
目をカッと見開いて息を止め集中し読めば数時間で終わる上に理解できるのだ
(少なくとも入力宙ぶらりんの問題までは)

だから今全力で読んだほうが良いです>>987
991774ワット発電中さん:2008/06/03(火) 20:29:11 ID:vPy1Gz94
そんな餌に食いついてる暇があったら、次スレ立てろ。
992774ワット発電中さん:2008/06/03(火) 20:30:33 ID:dO2WN0cQ
> 911

下らんレスつけずに自分でやれ、近藤@日湘。
993774ワット発電中さん:2008/06/03(火) 20:46:34 ID:wX3jC1rv
あ、判ったかも知れません。
ぐぐると、「FETはコンデンサ効果があり」という部分を見つけました。
とりあえず、ブレッドボードで確認してみます。
スイッチを切ったときに、電位を逃がしてみようと思います。
994774ワット発電中さん:2008/06/03(火) 21:02:27 ID:wX3jC1rv
出来た出来た。
ばっちりです。
皆さん、ありがとうございます。
特に、直接的なアドバイスを頂いた上に尻をたたいて頂いた>>990さん。
感謝です。
995774ワット発電中さん:2008/06/03(火) 21:03:39 ID:dO2WN0cQ
おめ!
996774ワット発電中さん:2008/06/03(火) 21:04:00 ID:dO2WN0cQ
うめ!
997774ワット発電中さん:2008/06/03(火) 21:04:21 ID:dO2WN0cQ
うめっしゅ!
998774ワット発電中さん:2008/06/03(火) 21:04:46 ID:dO2WN0cQ
うま!
999774ワット発電中さん:2008/06/03(火) 21:05:06 ID:dO2WN0cQ
うに!
1000774ワット発電中さん:2008/06/03(火) 21:05:30 ID:dO2WN0cQ
うし!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。