【12F675】PIC専用のスレPart6【しゃぶれ】
>>1 乙
>>5 本人ここにいます。
もう無いだろうと思いながら、たまにバグが見つかってます。
PIC側は今のところ変更ないですが、PC側はデバイスの追加やバグ修正などで
たまに更新します。
乙
8 :
5:2005/09/24(土) 15:16:55 ID:0nlB7R1m
9 :
774ワット発電中さん:2005/09/24(土) 19:54:41 ID:N0mbRv3o
とりあえずWriter509を作ってみたよ。
単3からDC-DCで13Vに昇圧してC-MOSレギュレーターで5.2V作って、PICは12F675に書き込んだ。
秋月のUSB-シリアルに差し込んでいざ動作確認!
……………あれ、認識しない。
接続を確認したりPICへの電圧を確認してみても認識しない。
まさかと思って12F675を読み込んでみたら、
補正値が消えてる………orz
俺、ナニやってるんだよ……。
10 :
774ワット発電中さん:2005/09/25(日) 03:29:51 ID:aHKF1NiX
オーバークロックを報告〜
16F88で30MHz動作を確認。
液晶表示とADCも正常動作。
11 :
mecho:2005/09/25(日) 03:40:34 ID:xU89nMir
12 :
774ワット発電中さん:2005/09/25(日) 03:55:01 ID:aHKF1NiX
14 :
774ワット発電中さん:2005/09/25(日) 12:25:12 ID:hWRnGzsh
>>13 電解コンデンサの背が高いので、
タカチのプラスチックケースに穴をあけて頭を飛び出させたり、
D-Subのコネクタの止めネジが無かったり、
コネクタの線色がピン番と合っていないところが
最 高 で す。
15 :
774ワット発電中さん:2005/09/25(日) 12:28:27 ID:hWRnGzsh
>>10 クロックは、水晶で自己発振?
それとも発振器からOSC1に入力?
PICのチップが熱くなりませんか?
ぉぃぉぃ、いじめてやるなよ。
ライターをブレッドボードで作っていないだけ立派じゃないか。
>>15 OSC1に入力です。
熱くはならなかったけど電気食うなぁ。
006Pで30mA以上
>>16 ブレッドボードで動作試験回路を作った・・・ってところがいいね。
自分ならごっちゃになるのがイヤでユニバーサル基板使っちゃう。
しかし、無意味に繋いでる部分もあるような気が・・・、あれはいったい・・・。
2005年09月24日
癌呆内部事情暴露本、書籍化の動き
BOTNEWS〜ボットニュース〜より。
こんな本出したら、営業妨害で訴えられるだろうな〜
誤爆
>>17 赤外線リモコンのテストをしてたから。右側のは送信機の残骸。
線色って、意味あるの?黒と赤しかシラネ…
ICSPのコネクタ配列って、みんなどんな感じで決めてるのかなー?
自分はRCDライタ以外では、D-Subコネクタの止めネジは外してる。
秋月のUSB-シリアル変換のを直刺しできるようにね。
【原稿料】
・ 採用原稿に対して、400字当たり3000円(税込み)。
某トランヂスタ奇術より遥かに安いな
何の原稿料すか?
>>23 誰かがそこらじゅうにコピペしている技術情報サイトみたいなやつでそ。
>>20 抵抗なんかで使われてるカラーコードに合わせるってのが。
しかし、なんかドイツっぽい色順やね。
26 :
CCSCユーザー:2005/09/25(日) 15:42:33 ID:fAJTI6PM
どなたか教えてください。
CCSのコンパイラー(Ver3.178)で
#include <12F675.h>
#FUSES INTRC
void main(void)
{
}
をコンパイルすると、
0000 3000 movlw 0x0
0001 008A movwf 0xA
0002 2804 goto 0x4
0003 0000 nop
0004 23FF call 0x3FF
となるのですが、なぜcall命令が入るのでしょう?
#FUSES INTRC
を外すとなくなります。MPLABでシュミレーションをかけると
スタックオーバーフローになります。
宜しくお願いします。
3FFって補正値アドレスでしょ?
>>25 サンクス
オヤイデで買ったんだが、色は選べなかった希ガス…
>>26 アドレス3FFは
>>27氏の通り内部RC発振周波数の補正値。
CCSは使ったことが無いけど、MPASMでMakeやBuildするとMPLABシミュレータ上の
アドレス3FFに自動的に「retlw 0」が生成される。(lstファイルやhexファイルには出ない)
デバッグ時にこのretlwが生成されないと、リターンできずにそのまま次のアドレス0へと実行が移ってしまい、
再びcallが実行されアドレス3FFへ飛ぶというループになってスタックオーバーフローになる。
CCSの設定、バージョン、MPLABとの連携方法などに何か無いか調べてみるといいかも。
>>9のように実デバイスで補正値を消してしまった場合も同様で、アドレス3FFのデータが
消えてしまって3FFFになった場合、addlw H'FF'と解釈されるので、アドレス3FFからcall 3FFの間で
ループしてしまうと思う。
実デバイスの場合はCLOCKOUTが出るように短いプログラムとConfiguration Wordを設定して
周波数カウンタで調べるのが確実かもしれないが、「retlw H'80'」(補正値の中間値がH'80')を書き込むと
運がよければ動作するかもしれない。
ちなみにHITECH-Cの場合もMPLAB上でBuildすると
シミュレータ上の3FFに自動的にretlw 0が生成される。
31 :
CCSCユーザー:2005/09/25(日) 19:20:54 ID:fAJTI6PM
27>>さん、29>>さんありがとうございます。
大変参考になりました。どうやって戻るのだろうと悩んでいました。
CCSでしかソフトを作ったことがなく、今回このチップで初めて内部発振を使ってみました。
509などは問題なくシュミレーション出来ていたので、おかしいなと思ったんです。
結局、解決方法は分からなかったのでシュミレーションは外部発振で行ってます。
チップに書き込むと動いている見たいです。
これでがんばってみます。ありがとうございます。
32 :
774ワット発電中さん:2005/09/26(月) 02:08:41 ID:mBA06IhN
>>20 17です
コネクタの電線は、ピン番と同じ色を使うが吉。なので茶色から始まるわけね。
そうすると、相手の接続点では色を見ればピン番がわかり誤配線が少なくなります。
また、配線に関係しなかった人が見ても、配線間違いに気づく。
たとえ、1,3,6,7,9ピンしかつながない時でも、茶、橙、青、紫、白を使う。
僕の知ってる会社で、全線「白一色」で配線する会社があります。
ですから、テスターでピーピーと導通チェック、さらにテープでラベルを付けて
「VCC」とか「GND」とかいちいち書いてる。以前現場で一緒に仕事したとき、
ウチは10色の線を使っていたので、あっという間に配線完了。相手の業者が
終わるまで、休憩室で寝ていた。それほど作業性が違うのよん。
例外的に、電源コネクタの場合は、1ピンを+で赤、2ピンをGNDで黒とすれば
電源装置につなぐ時に間違いがなくなる。
↑ 最後に目視した後に導通チェックはしないの?
私はこわいので必ずやりますが 業種違うからな
34 :
774ワット発電中さん:2005/09/26(月) 06:37:03 ID:fIYXTsYU
>20
漏れは Vpp VDD VSS SDA(RB7) SCK(RB6) の順にしてる。
マイクロチップ純正の配列ね。
でも最近思うのは、VDDとVSSは逆の方がプリント基板が綺麗に納まる。
>>31 ちなみに509の場合の補正値は「retlw k」でなく「movlw k」の形なので、
リセット時に3FFが実行されて、そのまま0番地へ実行が移るため
movlwでもaddlwでもデバッグ時には影響が無い。
CCS-Cのマニュアルを見るなどして本来の設定をするのがいいが、
どうしても解決できない場合にはView->Program Memoryで3FFに
ヘキサの3400またはニーモニックのretlw 0を設定してやれば
とりあえずデバッグできると思う(いちいち設定するのは面倒だが…)。
36 :
電脳師:2005/09/26(月) 11:34:30 ID:t7FVnVAE
こういうこともある。
手で(パソコンや書き込みソフトなし)プログラミングしてた際はやっぱやってしまう。
509は書き込み番地は3FFhからなのを知らずにやってしまいプロテクトかけてしまった。
しかし初書き込みの記念すべきものになった。
ド初心者の私から質問です。
最近MPLABでLEDのナイトライダーのプログラムをつくりました。
PICSTARTでチップに書き込み、評価ボードに実装して、発光の具合を確認しようと思ってます。
この時、LEDの発光状態を見る為に、評価ボードを稼働状態にするにはどうしたらいいんでしょう?
DEBUG→RUN で始まるのか、電源つないだ時点でナイトライダー始まるのか、全くわかりません…。
そういう金持ちな質問には答えられない。orz
39 :
37:2005/09/26(月) 20:54:55 ID:+xi41dtl
お願いしますm(_ _)m
学校の課題なんす…。先生方は誰も教えてくれんのです。マニュアル片手にやってますが、こんな基本中の基本は載ってないんです。
載ってないわけないと思うけどなぁ。
評価ボードってサンハヤト?
JDMライターとブレッドボードでデーターシート片手にやってるから
どうしたら良いのか知らないけど。
評価ボードのメーカーや型式がわからないと
答えようがないよ。
>評価ボードを稼働状態にする
って、どういうこと? 日本語がわからん。
プログラムスタートは、PICに電源ONで、かつMCLR=Hに
なった瞬間+αから始まるんだよ。
43 :
37:2005/09/26(月) 21:49:34 ID:+xi41dtl
すいません忘れてました…。MA-179と書いてあります。メーカはPROKITと書いてあります。
(;´Д`)ハァハァ お利口タンの皆タン!
タッチ! タッチ! ここにハイ−タッチCコンパイラ♪
のクラックを支那から買ってきたのでちゅが…
使い方が判りません!
そこで犯罪者の皆タン! ボクチンにも分かるように教えてくらはい!
ちなみにボクチンは初心者なので優しくタッチしてくらはい!
じゃあ〜 冬ソナ「不倫妻の蜜壺編」を見ながら待ってるでちゅよ!
45 :
37:2005/09/26(月) 22:01:51 ID:+xi41dtl
日本語不足でした…。
LEDを光らせるには、LEDを点滅させるプログラムを書き込んだチップと電源とRS232Cをつないだ後どうすればいいかわからないんです。
普通に電源(ACアダプタ+5V)をつないだ瞬間にLEDの点滅が始まるのか、MPLAB上で何かRUNやEXECUTEとかをやらないと点滅が始まらないのか、というのが知りたいんです。
(;´Д`)ハァハァ まちがったでちゅ〜
HI-TECH PICC v8.05 PL2 これでちゅよ!
じゃあ頼んだでちゅよ!
ハァハァ… コリアンAV最高でちゅ〜
てかこれぐらいなら自力で動くようにがんばってもらいたいものだ^^;
学生なら尚更ね。
わかんないってことは、中身を理解してないってことだろうからしっかり
マニュアルや資料を読んで、PICとマイコン自体をしっかり学んで欲しいね。
>37
プログラムが無限ループになってるとか、
時間待ちルーチンの数値が間違ってて
LEDが恐ろしく長い時間消灯してるとか
そんな感じじゃないの?
例えばLEDを一個だけ点灯するような
極簡単なプログラムを書き込んで
問題の切り分けをしてみたら?
HiとLoの勘違いもありそうだな。
評価ボードは吸い込みで点灯なのに、
Hiで点灯させようとしてるとか・・・。
ま、その程度なら全く付かないって事はなくて
ヘンテコリンなパターンで付くかも知れんが。
評価ボードやライター買えるヤツがうらやましい。
自分はRCDライタ手作りで、ネットで役立ちそうな資料を集めたりして必死だったしな〜。
JWで開発して、ワンタイムに焼く時はまず身を清めて・・・。w
53 :
IC-Prog使い:2005/09/26(月) 23:34:16 ID:0qCnJ0bG BE:168315577-##
オッシレーターの設定をするの忘れて1個アボーン
16F648や16F88はいいね、補正値いらないし。
16F877Aの強化版として16F888でも出ないかな、内部クロック12MでI/Oが38とかさ。
秋月の片面ガラエポ買ってみたら、半年前に買ったのよりハンダがつきにくそうだった。
基板が黄色いのはいいとして、ハンダメッキの厚さが10枚中8枚が非常に薄い・・・。
安いから、しょうがないけどさぁ。
55 :
37:2005/09/27(火) 02:21:00 ID:G1dEcWm8
>47
その場合、RS232Cをつないだ意味はあるのでしょうか?
分からず屋でごめんなさいm(_ _)m
>>55 デバッグ機能あるの?
ただ単にPICのシリアル通信をテストできるようについてるだけのような・・・。
書き込みにはMPLAB-ICD接続ポートがあるみたいだし。
あくまで実験評価ボードなだけだと思う。
しかし、そのあたりも判らなくていきなり18F452とはうらやましい・・・。
キットなのか・・・
敗戦ミスの可能性高いな
つか、
>>45の終わりを見ると、動かして試しても無いのに聴いてるね。
>普通に電源(ACアダプタ+5V)をつないだ瞬間にLEDの点滅が始まるのか、MPLAB上で何かRUNやEXECUTEとかをやらないと点滅が始まらないのか、というのが知りたいんです。
試せば判る。
評価ボードのナイトライダー君は今までやったことをまず晒してご覧。
どうせ、ポート違いかTRISの設定間違いか、その辺だろうが。
>>45 あえて電源スイッチ経由したり
ボタン押してから動作するプログラムに
なってたりしない限りにおいては
普通に電源繋ぐだけで点く
配線も合っていてプログラムもバグが無い
と言うならクロックが発振してないとかを疑う
62 :
電脳師:2005/09/27(火) 11:24:26 ID:meyO5C4V
上手くいくおまじない(2ちゃん住人限定):
漏れはシャレで開始番地を44番目から始めてる。
その場合 org 2ch とアセンブラで書くからかなり不真面目に見える、
しかしなかなか上手くいくことが多い、やって味噌。
63 :
37:2005/09/27(火) 15:03:41 ID:G1dEcWm8
すいません。電源端子の不具合でした。
ジャンパー線がなかったので、電源端子の短い足に無理矢理はんだで足を長くして回路に付けてたんです。
ジャンパー線で改めて付けなおしたところ、電源さしたとたん点きました。
ご迷惑かけました。ありがとうございました。
>>63 そんなもんだよ。
長いことやっていても、うまくいかないときに「壊れてるんじゃないか?」とか
他人のせいにしたくなるけど、見直してみると結局自分のミスだったりする。
65 :
初心者です。:2005/09/27(火) 17:29:38 ID:m93seRMb
873で255以上の値の割り算がしたいのですがわかりません。
どなたか教えて下さいm(_ _)m
66 :
16F877A:2005/09/27(火) 17:35:46 ID:G8tzTStp
67 :
65:2005/09/27(火) 17:50:37 ID:juKLDg0N
PICや回路をあまり理解していない学生に最初から市販の実験基板使わせる学校があるんだな。
うちの学校はまずユニバーサル基板で実験基板を作ってから、シンプルな16F84Aで実験するけど。
みんながみんな、そんな暇はねーんだよ。
いろんなことを詰め込まなきゃならないんだから。
71 :
電脳師:2005/09/28(水) 10:39:25 ID:PJtJEK/m
>68 >69
PICは授業中のヒマな時に開発するとなかなかいろんなネタができていい。
電子辞書の基板を外してキーを利用したPICベースのにLCDを付けた自作卓上ライタでプログラムして書き込む、アセンブラやライブラリ付きだ。
あらかじめLEDやSWや圧電素子を付けたICソケットを仕込んで書いたらGo!する。
この前ONして単にグルグルまわって光るのやってやったらアフォな友達がコーフンしてろれつが回らなくなり授業中にヒンシュクだった。
あと圧電素子はアッテネーターを付けたクリスタルイヤホンにした方がいい。
>>71 つまり電子辞書の筐体に入ってるPICでアセンブルしてるってこと?
だとしたら、すげえ。
最近はC言語ばっか触ってるから、コンパイルできたらうれしいけど、PICじゃ無理か。
73 :
71:2005/09/28(水) 12:37:08 ID:PJtJEK/m
76 :
9:2005/09/29(木) 20:05:04 ID:0de4jjd/
>>75 呼んだ?w
失った補正値は約3分後に、「あ、そういえば、コイツの補正値3480だったような………」とか言いながら書き込んで見事動きました。
なんで補正値を暗記してるかな(汗
とりあえず定番の12F675と16F648Aに、新しく16F88と16F877Aを購入したので何を作ろうか考え中です。
16F88で電圧測定+液晶表示は予想通りに成功してデータシートを眺め中。
自分だったら補正値を完全に無くしたら、12F675に周波数カウンタを繋いで、ボタンを押すごとに
>>75さんのように値を変動させつつ内蔵のフラッシュメモリに書き込みます。(シリアルは無し)
で、周波数が合ったところで電源切ってライタで補正値を読み込みなど。
やったことないので机上の空論ですがw
阪神優勝おめでとう
ありがとう
>>75 補正値の再設定は Microchip純正のPICkit1でも出来るようになっていますよ。
ターゲットのCPUにチェック用のソフトを焼いてプログラマで値を自動補正するタイプです。
すべてのCPUに対応しているわけではないがソースも公開されているので移植は可能。
PICkit2でもいけるはず。
安価に出来ることに意味が
純正なんて、フリーのMPLAB IDEしか無い!
ライタはRCDにJDMにWriter509。
確かに「安価」なのは間違いないですね。
でもPICkit1/2って高いと言うほどでも・・・人ぞれぞれですが
ライタは自作。ソフトはフリーがPICの文化なんだよ。
秋月ライタですらグレーゾーンだ。
秋月ですら高いよね、バージョンアップのも一緒に買わないと最近のに対応しないってところがもうね・・・。
ま、だから500円でRCDライタ作った訳ですが。
なるほどPICとは能無し金なしが語れる文化なのか
>>84 秋月のは、バージョンアップキットだけ買って、
あとはバラ部品で作る、という裏技はあるけどね
本体の基板がムダに大きかったり、不要なTextoolソケットが鎮座してるのに
不満なヤシは、そうしてるね
何で入門専用のPICが出てくるのかね?
PIC16f84で作りたければ作ればいい。
誰も止めはしない。
なんで古くて性能悪い上に値段の高い16F84を……
聞く前にピンを数えればすぐに答えは出ると思うのだが、考えるのを放棄しているだけの馬鹿か?
おお、すまん複数のPIC16F84を使えば何とかなるかもしれと思ったのかな?
せめてPIC16F873と聞いて欲しかったね。
てっきり16F84が入門向けだと思っていました。
これからPICの勉強を始めたいのですが
何から手を付けた方が良いのでしょうか?
>>91 16F84Aで何か問題でも?
海外だと16F624から始めたりするそうだが、国内なら16F624Aか16F648Aだな。
>>92 間違えた。
× 16F624Aか16F648A
○ 16F628Aか16F648A
16F648Aは秋月で売りきれ中。
94 :
91:2005/09/30(金) 17:34:02 ID:hWCzWj/m
>>92 >>89 を読んで疑問に思いましたので質問させて頂きました。
ありがとうございます。
>>94 新しくて高性能で値段の安いのが初心者向けなわけないじゃん。
その読解力はちょっと心配。
あまり思い込まないで色々試してみたほうがいいよ。
96 :
91:2005/09/30(金) 17:47:00 ID:hWCzWj/m
>>95 古い物なら今更勉強する様な物でも無いのかな??
とか考えていました。 N古屋の電気街が近いので
とりあえずどんな物が店頭に並んでいるのか偵察する
事からやってみます。 ありがとうございます。
97 :
774ワット発電中さん:2005/09/30(金) 17:47:40 ID:ASkA7E7M
16F84Aは、今となっては割高だけど、入手性はいいし、
作例が圧倒的に多いので、入門用にはいいと、思うよ
「安い最新高機能ウマー」と、いきなり16F88とかで始めると、
簡易ライタで安定して書き込めなかったりして、とまどう
突然F88から始めたら、各モジュールのありがたみがわからない。
F84をしゃぶり尽くせ!
自分は入門には16F84Aより16F648Aを薦める。
難易度も16F84Aと同じくらいだし、秋月で安いし(売り切れるほど)
16F84Aも、簡易ライターでうまく書き込めないこともあるしね、書き込み電圧13Vだし。
それにブレッドボードで実験するときとかは内蔵クロックがあったほうがいい。
ブレッドボードで16F84Aに水晶振動子繋ぐと発振しないこともあったりするし。
>>100 な、なんなんですか、そのおもしろそうなライタは!w
さっそく帰ったら作ってみるか!
>>100 すげー
これ以上ない超簡易ライタw
しかしこれは、動くPCのほうが少ないとか、3度に1度しか書き込めんという、
事態続出の悪寒・・・
(コンパクト筐体系のPCのシリアルポートの信号は、驚くほど品質が悪く、
かなり実績のある回路のJDM互換ライタでも、失敗が続発する(´・ω・`)
>>103 シリアルポートの電圧の低いPCもありますしね。
ノートPCは全滅かな
確かにすごいなぁ。
PIC→PCは直結でもいいけど、PC→PICはちょっと怖いかも。
うちのPCのシリアルはオープンで11.5V、ショートで10mA。
>>107 たぶんショートした時の最大電流が規定されていたと思う。(30mAだったかなぁ?)
>>106 PIC にクランプダイオードが入ってるからそんなに怖くない。そんな気がする。
青色LEDでも大丈夫かなぁ
>>110 LED 3個のところを、青LED 2個にしたら行けるんじゃない?
>>109 いやPICじゃなくて、
>>106のシリアルポートの測定にショートで10mAとか書いてるから。
まさか本当にショートは・・・してないよね?(汗
シリアルはショートも想定して規格作ってあるから
大丈夫なはず 電話機と同じような感じ
>>114 その割には、RCDライタ作ってるFENGさんのPCのシリアルポートが壊れてるような……。
たしかPC3〜4台目だったかな?どこで見たのかは忘れたけど。
ひょっとして保護すら省略されてるPCがあるとか?(汗
Writer509さん、まだいるかな?
補正値ミスった人から不具合報告です。
HPの@で囲ってるメッセージボックスの『COM9 接続OK デバイスを選択してください。』というメッセージBOXが全部真っ黒になります。
OSはWindows2000Pro SP4です。
なんのためにあるんだろうとページを読み直して気づきました。
みんなの作ったライターはどんな風にできてるのか気になる……
作った人は、良かったら写真をアップしてください
117 :
774ワット発電中さん:2005/10/01(土) 08:03:00 ID:N9JFvoh0
picのファイル形式ってPBなんですか?
>>115 少し昔だけど仕事で
RS-232 でいろいろな機器と接続してましたけど
それこそ 数え切れないぐらいの種類ですが
同期接続だとクロックがずれる場合があるので bule box 使って
いじりまくり それでもchip が壊れた経験は 1個か2個程度でしたよ (自社製品だけど)
ショートなんかしょっちゅだし こんなことで壊れてたら こまりますね
もしかしたら ショートしている時間とかの問題なのかな
rs232cの規格はスピード20kbps 距離は 約20m までだけど
今のPC はもっと早いし 保護回路もあまり考えてないのかも
壊れることを想定して バッファー でもかませばいいかもしれないですね
120 :
774ワット発電中さん:2005/10/01(土) 09:37:52 ID:1+wTHvgz
端子同士をショートして壊れないけど、高圧をかけたら壊れる。
高圧をかける原因は、
1、PCの電源はアイソレーションが悪い。 ケース触っただけでビリビリ状態なのも結構ある
PCそのものがそう悪くなくても、モニターだの全部が
2、USBオシロを使ってGNDを・・・・・
(USBオシロの殆どはGNDがPC直結)
>>116 ちょっと状況がよくわからないのですが、
[READ]や[PROG]のボタンの下のメッセージ欄が真っ黒ということでしょうか?
まず、PC側のソフトはDelphi Personal Version6という、フリーで使えるコンパイラで書いています。
サービスパックなどが出ていますが、全て対処しています。
ちょっと古いバージョンなので、最近はパッチなどはもう出てないようです。
これらのボタンの下のメッセージ欄は「Edit」というコンポーネントを「ReadOnly」にして使っているだけで、
特に複雑な処理はしていないつもりなんですが、何なんでしょう?
引き続き調査しますが、手元にはWindowsXPしかないのでどうなるかわかりません。
FENG3さんのところでは98SEでちょっと不具合が出たという報告があったので
調べたらちょっとおかしなところがあったので修正しましたが、Windows2000では
普通に動作しているようです。
もし、別のバージョンのDelphiを持っているようなら、ソースなどをUPしてもいいですが…;。
122 :
774ワット発電中さん:2005/10/01(土) 10:54:17 ID:1+wTHvgz
>>116さん windowsの配色(画面のプロパティ -> デザイン) を一時的に変更されては?
追加報告
試しにXP Pro SP1aのPCで起動してみると、文字の背景がそちらのスクリーンショットの物より濃くなっていますが一応表示されました。
>>121 リソース使いすぎでブラシオブジェクトが壊れてるとかかな
>>126 それはないだろう。 たぶん設定しているシステムカラーがたまたま
116さんの設定で Colorも Font.Colorも黒になってるというような事なんでしょ。
まぁ、Messageを1回1回開きなおして確認すれば一応使えますからそこまで困らないですけどね。
読み込み&書き込みではいまのところトラブル無しです。
129 :
774ワット発電中さん:2005/10/01(土) 16:47:53 ID:KI1x8eUN
PIC877同士でシリアル通信の実験してんだけど、
通信途中でシリアル通信用のコードを切断して、再び接続しても通信がうまくいかない。
何でですか?
130 :
774ワット発電中さん:2005/10/01(土) 16:56:54 ID:tuoonanT
>>129 エラーですか?フレミング
エラーとかバッファオーバランとか
エラーフラグが立っているのではないかと。
エラーになった時に割込み処理で
エラーフラグリセットとかの
エラー処理ルーチンを入れている?
131 :
129:2005/10/01(土) 17:22:39 ID:KI1x8eUN
プログラムは、送信877のPORTC以外の入力をすべて受信に送って、
その入力を受信877の該当ポートに出力すると言う単純な動作です。
エラー処理は、デバイスコードとチェックSUMの検出で行ってます。
切断されると全停止するプログラムが入っているのですが、通信の
再開が出来ません。
ライタ509のページでやれ
迷惑
>130
初めに「エラー」を6個コピペして、それから色々考えたな?
135 :
774ワット発電中さん:2005/10/02(日) 00:07:37 ID:DnGkI9H9
>>120 確かに アイソレーションがわるかったりすると
文字化け起こしたり 壊れたりするよ
>>129 エラーが発生したら、エラーフラッグ落としてデータレジスタを空読みしておけ!
で、シリアルってUART、SPI、I2C ???
16F876A
が使えるフリーのCコンパイラってありませんか?
hexて、ヘキサと読めばいいんでしょうか?
yes
じゃあ、MPLABははなんて読めばいいんでしょうか
MPASMはエムピーアセンブラですか?
ヒィークショッ!!
MP♥
MP明日無
汗無だと思ってた。(汗
な、なんて読みゃいいんだYO!
147 :
774ワット発電中さん:2005/10/03(月) 21:38:02 ID:NSgHiOQx
マンコペラベラ
どうしようも無い中毒だな
ヘキサ とか ヘックス と読むんだよ。
ASM 明日無
HEX 屁玖珠
151 :
774ワット発電中さん:2005/10/04(火) 13:20:52 ID:j6Xfck1T
>>100は作ったけど動かない。
ネタか?
IC-PROGの設定とか教えて欲しいものだよ。
152 :
774ワット発電中さん:2005/10/04(火) 15:00:51 ID:oxeP8AsS
だれか、USB-シリアル変換アダプタでRCDライタを使って書き込めた人いない?
書き込めたアダプタがあるならメーカーと型番を教えて欲しいんですけど。
>>151 ブレッドボード上で作ったけど、12F675、16F648A共に書き込めた。
時々書き込みに失敗するけど、簡単な回路だから仕方ないかも。
ic-prog はデフォルト設定で使った。
ちなみに、デスクトップのシリアルポートで使った。
154 :
774ワット発電中さん:2005/10/04(火) 18:17:07 ID:mEkizzLx
>>151 設定の問題ではなく、明らかにPCのシリアルポートとの相性だ罠
JDM/RCD系は、一般には「ノートPC・USBアダプタでなければだいたい動く」
とされているが、それは大嘘だ
俺はデスクトップだけで5台テストしたが、うち2台は、ライタの回路をいくらいじっても、
どうしても安定した書き込みができなかった
Vpp、Vdを外部から供給し、さらにADM3202ANを2個使って、
必要な信号線の全て(4本)にトランシーバを挟むと、
その2台のPCでも確実に動作するようになったが、そんなことをするんでは、
JDM系の簡易ライタの、意味が無いよな・・・
>>154 うちのPCでRCDライタ使ってるけど、そのままでノーパソ2台と自作のデスク1台で全部正常動作確認してる。
本当に書き込めない機種があるの?っていうくらいに(汗
動いたのを晒しておく、
ノーパソ1:富士通・Pen150MHz・80MB・Win98
ノーパソ2:NEC・Pen3かセレ500MHz・128MB・Win2000
デスク:パソコン工房自作PC・アスロン2000+・512MB・WinXP
USBアダプタの中にはRCDライタでも書き込めるのがあったってどこかで読んだけど、ガセネタなのかな(汗
あるんだったら1台ほしい・・・。
158 :
774ワット発電中さん:2005/10/05(水) 02:39:27 ID:HSVXsEEY
単音って言うけどな。あんたのPCのc:\windows\medeiaフォルダにあるファイルの
サイズを見てみろ。それから、PICのEEPROMなりデータエリアのサイズと比較して
みてくれ。
ぎゃ、スレ違った
(・∀・)ニヤニヤ
スレ誤爆南無
マルチしまくってる香具師がいたからな
16F648A で内蔵オシレータを有効にすると、JDM で書き込みできないのですが、何か良い対処法はありますか?
(・∀・)?
>>163 JDMのほとんどは、内蔵オシレータONにすると再書き込みできなくなったような気がする。
漏れはINTRCモード頻繁につかうようになってからはJDMはあきらて、サードパーティーのPICライタかったよ。
JDMは試しに作ってみただけだなぁ。
RCDライタばっかり使ってる、RCDで16F648Aも16F88も確認できたし。
どうして書けなくなるのかな? やっぱり消費電流が増えるからだろうか?
2つの電解コンデンサの電圧を測定してみたら?
168 :
774ワット発電中さん:2005/10/06(木) 08:22:10 ID:KTObikof
でもなぁ、あんまりライターに関わっていると、本来のPICに書いて装置を
動かすという目的を忘れてしまいそうになる、いわゆる「本末転倒」に
なりそうな悪寒にw
PICでよく工作するなら奮発してライター買った方が幸せかもしれない。
ただ、高校生とか中学生はお小遣いがいきなり飛ぶから、RCDライタが一番
いいかもね。
>>168 スマン、ハンダ付けしてるほうが落ち着くことがあったりするw
つまり出来上がったものよりも
作ってる刹那が重要と。
こんにちは。質問させていただきます。
18F452か、16F877で、PIC制御の二足歩行ロボットを作りたいなぁと構想中なんです。
これらのハイエンドPICは、20個前後のサーボモーターを回せるだけの性能はありますでしょうか?クラッシュとかしないですか?
I/Oが20本以上あるから、単に制御するだけならかのうでしょう。
倒れずに歩けるほど制御が追いつくかどうかは別問題。
>>172 まさかサーボモーターを直でPICに外付け・・・じゃないよね?クラッシュしないですかって書いてるし。
もしそうならそんなことができるマイコン自体少ない。
ってかクラッシュって何?
I/Oが足りるのかっていうなら足りて制御できるかもしれないけど、
>>173の言うように処理が追いつくかは別
16F877Aなどに頼らなくても、9軸サーボモーターに16F628Aを載せてるキットがあったりもする。
それでもどうしても処理不足が心配というなら、Z80やSH2やSH3を使うとか。
それを使っても処理が足りないというならPentumをのせるなど。
177 :
172:2005/10/06(木) 13:32:22 ID:iIdkWCaN
ありがとうございます!
Googleで高知工科大?かどこかの人の卒論を見る限りでは、16F648Aで12個のサーボモーターを動かすことは可能みたいです。
ただ18F452で20個は大丈夫かどうか不安だったので、このスレで質問させていただきました。
キットなどは考えてないです…。なんとか自作を目標としてます。
モータは、トルクが5〜6[s-cm]のものを予定してます。
ちなみに16F877Aでは30個以上の制御も可能。(入力無しの場合)
18F452は知らない。
追記で、キットのは前転とかも可能っぽいこと書いてた。
動画があったけど見てない、QuickTime苦手なので。
結局はソフトの組み方と工夫次第ですね
181 :
774ワット発電中さん:2005/10/06(木) 13:49:39 ID:2yPuMCQl
>>172 2足歩行用の近藤科学のRCB-1というボードは、高速シリアル通信しながら
16F873で12個のサーボを動かしてるよ。ボード2枚で24個のサーボを動かす
仕様になってる。
2足歩行ロボットだと、PICをサーボコントローラにして、Cが使えるATMegaとか
H8を歩行ロジック作成に使ってるよ。
182 :
172:2005/10/06(木) 14:12:22 ID:iIdkWCaN
>178
こんなものがあったとは!!本当にありがとうございます!
一応Googleで探してはいたんですが、なかなか、20chの40ピン対応のサボコンは無くて。出てくるのはiMCs05とかばっかりで。
みなさんも助言ありがとうございます!
問題はプログラムかあ…。(´д`)
サーボ1個に対しポート1本で制御できるので、
必要なサーボの数だけポート数があればいいけど、
基本的にサーボが静止時にもパルスを与える方式が一般的なので、
サーボが増えるとソフトウェアの負担も増える。
(プログラムの書き方にもよるかもしれないが)
ポート不足やソフトウェアの負担軽減のために、
別に12F629などでシリアル-サーボ信号変換をすれば、
メインのPICのポート1本で、サーボ5個まで制御できて、
サーボ停止時にはパルスやデータの送出が必要なくなるんじゃないかな…
サボコンって製品で出てるのかよ・・・。
ビデオカメラの電動雲台とかスポットライトなんかを
リモコンで動かす事を工房の頃妄想してたんだが
Z80は工房の漏れには荷が重すぎたし、
サーボも\5,000/個ぐらいしたんで夢のまた夢だった。
今は技術的経済的には出来ない理由を探す方が大変。
逆にやる気とか時間は不足しちゃったけど。w
185 :
電脳師:2005/10/06(木) 15:04:54 ID:35xLrK5w
漏れは長ぁ〜い鉄パイプに高っかぁ〜い支点付けて片方にベルトで釣られ
もう片方に水タンクを付けた無重力(エレベーターの原理)でピーターパンごっこをして3個も命を無駄遣いしそうになった。
手動だったけど発展させてXY2個のサーボで実現できそうだ。
当時、洗濯機のモーターで本気で作ろうと考えたが先公がヤメロと言った。
でもPICに命を預けるのは‥
186 :
774ワット発電中さん:2005/10/06(木) 20:33:59 ID:nhCl0NCI
JDMプログラマ作ってみたけど0000hエラーで書き込めないな・・・
RCDプログラマ作ってみるか、
時間と金の無駄
188 :
774ワット発電中さん:2005/10/06(木) 21:19:09 ID:nhCl0NCI
あっそ
ライターを作るだけで終わる一生か…
それも自分で設計したんじゃなくて・・・な。
ライターを作るのが趣味?な人もいるので。。。
作ってるうちに、目的と手段が逆になってるのは良く有る。(w
秋月のPICライタ改造キットとCD-ROM集を買って自分で作った方が
コントロールソフトのサポートを考えると楽かも。
192 :
電脳師:2005/10/06(木) 21:43:30 ID:35xLrK5w
ライタなんていらない!
気合いで手でPICに>71 >73みたいにしてカキコめっ!
ハルマゲドンがきてもキミはPICで希望に満ちているだろう
193 :
電脳師:2005/10/06(木) 21:46:24 ID:35xLrK5w
ライタなんていらない!
気合いで手でPICに>71 >73みたいにしてカキコめっ!
ハルマゲドンがきてもキミはPICで希望に満ちているだろう
>194
ダウンロード出来たのね、どうもありがとう。(発禁のキットも。。。(w)
自作可能と言う事は、壊しても部品さえあれば即復活出来ると言う事で
ISP時の一回目は、Ver4改造キット改で書くことで安心なり。
>>195 秋月ライタはICSPのこと考えて設計してないんだよね・・・
今となってはあのキットの最大の弱点といえる
Ver.4キットだけ買って自作しても、その問題は、解決しないっしょ
>>191 俺は、秋月の商品の中でも最高に利益率が高そうな、あのライタ買うの癪だったし、
IC-Progがとても気に入ったので、JDM系とAN589系でひたすら自作しまくったんだけど、
PCのシリアルポートの相性問題があまりにも酷すぎて、
結局シリパラあわせて6種類も作ったけど、ひとつもモノにならなかったぉ (´;ω;`)
(AN589はVddを制御できないので、どうしても書けない石があったし)
Writer509がもっと早く登場してれば天国だったぉ
俺はJDMライターから配線引き出してICSPしてるけど、特に問題は無い。
電子工作用に専用PCを用意してるからかもな(セレリン450MHz/i810,、Win98SE
確実な書き込み用途では、pen3 1GHz 440BX だったりする。
シリアルに12Vが確実に出るの少なくなった。
200 :
774ワット発電中さん:2005/10/07(金) 11:27:58 ID:z8TOR82F
JDMライタ作ったんですけどシリアルポートに挿しただけの状態でVdd-Vss間が10Vもあります。
しかしICprogのハードウェアチェックでクロックの動作というところをチェックすると2.5Vにまで下がってしまいます。
Vddは5V必要だからこれは電圧が低すぎるといことであってますか?書き込みは失敗しています。
>>200 ほぼ配線間違い。もう一度配線の見直しが必要。
間違いがなければツェナー辺りの故障かも。
>>201 ありがとうございます!確かに5.1Vのツェナーが切れてました、交換したら見事書き込み成功しました!!
>>198 JDMでのICSPは、大元の作者も「可能だが推奨はしない」としてるね〜
特にターゲットがスタンドアロン基板でなく、
アプリケーション用のUSART等、別の線でPCに繋がっていると、
JDMでのICSPができないだけでなく、ターゲットやPC側を破壊しる恐れがあると・・・
12F675でLEDを点けてみたのですが、
bsf GPIO,0
bsf GPIO,1
だと同時に点きません(ウェイトをかけて見てみるとセットしたLEDだけが点き、他は消えます)。
movlwB'00000011'
movwfGPIO
なら点くのですが。なぜでしょうか・・・
出力ラッチじゃなくて、ポートの状態をリードして、
リード・モディファイ・ライトになるからじゃないの?
漏れはビット操作命令でポート制御やるというのは、
感心しないことだと思ってる。
連続してbsfしてよかったっけ?
nopでも入れてみるとか。
>>205 LEDをつけたポートの電圧は4.88Vあるので大丈夫かと思いました。
一般的にはバッファを使うのでしょうか?
>>206 ウェイトを入れても同じでした。
>>207 もし、ポートの状態というなら、時間の問題だから、
点いてる状態でテスタで見てもわからないと思うよ。
bsf間にnopを山ほど(数十個??)入れれば動くかもね。
4.88Vって何で測ったの?
その測定器は充分な時間分解能がある?
まさかデジタルテスタを目視とか言わないよね?
先に種明かしが・・・・
orz
ポートの動作を勉強しなおしますね。
プログラムはバッファを使ったら問題なく動くようになりました。
お手数かけました。
ちょっと怪しいなと思うのは、もしかしてLEDを直結していない? って事
そうじゃないと
>>204にはならないような
213 :
774ワット発電中さん:2005/10/08(土) 23:39:37 ID:4mklE87Z
PICで最初に悩む症状かと。
ポートのビット単位の変更は、いったん全ビットを読み込んでから上書きする。
負荷(LED)の影響でポートの電位が変わると、変更する気のないビットも変わってしまう。
基本的に、出力ポートを外部から電圧かえるような回路にしたり
負荷を接続してはダメということですな。
コスト的に許されるなら、外部にバッファ付けるのがベター。
コストを削りたければ、全ポートON/OFFデータをのメモリ上に記録しておいて
毎回全ポートに出力すればよか。
というか LED に直列抵抗つければいいというかつけるべきだよね。
PICの為にもLEDの為にも
つけねばならない
抵抗は入っています。LEDが約2Vで10mA流すとして
5V-2V=3V
R=3V/10mA=300Ω
10mA*3V=0.03W
で手持ちの1/4W 330Ωを入れてあります。ブレッドボードで
仮組みしただけなので電源が弱かったかもしれません。
いや、電源が弱かったらそうならない筈。
もしホントにそうなら、以外に出力が弱いんだね。
10mAという負荷は結構重いので、サクッとは立ち上がらないだろ。
かもしれません。
~~~~~~~~~~~~~~~~
もしかして、軽石さん?
LEDって...例のデバッグボード?
リリースはいつですか?
秋月ライタから線を延ばせばICSPもどきができるんだね。
今まで知らなかったよ。
ICクリップを使うと、便利だよ
もどきなの?
漏れは嬉々としてICSPのつもりで居たけど。
225 :
マイクロ:2005/10/14(金) 15:52:29 ID:MlIo11TR
研究の一環でマイクロロボットを作ろうと思っています。
赤外線で動かしたいんですけどいろいろ調べたらPIC12F683が
良いみたいなんですけどPIC12F683の機能について
知っている人いろいろ教えてください。お願い致します。
データシートに書いてるから読みなされ。
別に12F683じゃなくていいでしょ。
12F675とそんなに大差無いし、16F84Aのフラットパッケージも手に入りやすくなったし。
本当に小さく作りたいなら10F206を使ってみては?
227 :
マイクロ:2005/10/14(金) 16:06:44 ID:MlIo11TR
回路構成なんかわかったりしますか?
いろいろ調べてはみたんですけどよくわからなくて・・・
229 :
774ワット発電中さん:2005/10/14(金) 17:52:52 ID:pdtqx3Ct
>229 NOP使わずタイマ割り込み使えよ
μsec単位ならともかくなー
まぁ使えるなw
μsecも小数点で入れれば使えない?
PIC-MLの近藤@日照とひところ後閑さん家の初心者掲示板汚してた軽石って同じ人?
文体にてるし、Cしか知らないし、ICD2自慢するし、マナーうるさいし...。
最近静かだし...。
軽石に粘着してる連中キモキモ
↑と、軽石本人が申しております
>>235 と軽石の留守番、駆る頭が申しております。
軽石は、客先でリセット回路の追加とFPGAの改修をしています。
リセットの追加といってもMCLRと同じ処置だから、また呼び出されるよなー。
なんで16F877AのADCの設定はあんな変なややこしくていちいちデータシートの表と比べないといけないんだ?
16F88の設定と比べると・・・(略)
………とか言い訳しながら上げてみる。
240 :
774ワット発電中さん:2005/10/15(土) 22:58:06 ID:Upz0N7ik
一度組んでしてしまえば簡単でしょ。
一度組んでしまえば・・・ね。
16F88でやったあとに16F877Aのデータシート読んでたらANSELが無くなってて
( ゚д゚) ・・・
(つд⊂)ゴシゴシ
(;゚д゚) ・・・
(つд⊂)ゴシゴシゴシ
_, ._
(;゚ Д゚) ハァ!?
何でWinodwsはDOSと比べて・・・と言ってるように聞こえるな。
>229
>クロック周波数:100000Khz 秒数:0.001秒
でも結果を吐いてくれた。
コーディングしてみっかな。
俺としては相当使えるんだが、
NOPではなく、ループとループの組み合わせがいいんだけどな。
メールしてみた。
PICPGMのupdate 中に
やってしまった・・・・・
18F452のUARTでうまくいかず悩んでいます。
教えていただけませんでしょうか。
Synchronous Master Transmitssionにて送信を行っているのですが、
データシートのように2バイト目途中でTXIFが立つほど早くなく、
連続して送ることが出来ません。
使用を見る限り20MHz時ボーレート0で5000kbps(1バイト1.6us)、2バイト連続で送っても
3.2us以内には次の送信が出来るはずですが、MPSIMだと35us近くかかり
実際に動かしてオシロで測定してもTXIFフラグ待ち部分だけで15usかかっています。
※オシロで見たところSCKのサイクルは200nsでしたので、転送速度は設定どおり出ています。
これは仕様なのでしょうか。
ご存知のかたいましたら教えてください!よろしくお願いします。
また初心者掲示板にアレな人が出てるよ…
PIC初心者 = 野鼠純一郎 = Q
スルーがよろしいかと。
仕様がありません
Qは電子工作はやらんだろ
映像音響ヲタだ、あと自作PCは少しやるがレベルは低い
おまいらQの定義を拡げすぎです(;´Д`)
Qは名古屋の梶田以外にはいない
(;´Д`)ハアハア
銀次の糞メールが溜まって、消すのが大変だったよ。
ろくな投稿メールが来ないので退会した。
どこで漏れてんのか、SPAMがやたら増えた。
”会って下さい”みたいのが山ほどくるようになったのはPIC MLから
アドレスが漏れてんのかな?
253 :
774ワット発電中さん:2005/10/18(火) 18:36:14 ID:vlVo6sak
16F84Aって何故高いの?性能がいいPICのほうが安かったりする。
数によって値段が違って来るんじゃないの?
なんか40ピンで探したら液晶端子の付いているのが一番安かったりするし
もう設計の古い石だからねえ。
中開けてみたことは無いけど、チップがでかくてコストが高かったり、
製造プロセスが古いので、最新というか、普通のウェハとラインが違
うとか。
84Aが高いのは単純に儲けがでるからだろ。
銀次が、PIC技術者募集だとよ。あそこはSPAM発信基地だな。
FREE MailのPIC-ML解除をどうするか検討中。
PIC-MLからaddressが漏れてると思うのだが、こんな感じのメールが山のように来る。
>お世話になっております、担当の奈々子でございます(●^o^●)あなたに未返事の直のお誘い履歴が残っていますが、どうされますか?
おまいらのとこへは、こういうメールくるかい?
info@*.com からで、その都度 *.comのドメイン名を変えて来るので
受信拒否できないんだ。
*.comからのメールを全拒否だ。
>>257 メールヘッダのReceivedを見てごらん。変な海外のサーバから送ってない?
IPアドレスのクラスCくらいでフィルタできないか?
F84AよりF84のほうが高かったりするから、古い石ほど高いね。
仕入れ値が一番物を言うと思う。
>>259 IPアドレスは海外のようだね。アドレスが大きくコロコロ変わる。
プロバイダの用意しているサーバのフィルタ機能では歯が立たないので、
こちらのメールクライアントから削除コマンドをサーバへ送り
迷惑メールをロードしないようにした。
敵は海外にサーバをめぐらし、高度なネットワーク屋を雇ってるようだ。
Web Mailerのほうは、今のところ打つ手無し。
つーか、自分のアドレスをコロコロ変えた方が手っ取り早いと思うぞ。
最近PIC18Fも少し枯れて来たと思ったら
PIC18F4520とかもろもろの
割込みのerrataには困った。
少し古めの方がやはり高いけれど、よさそうです。
といっても、PIC18F45x までいくと 面倒なerrataが
あるので、avrも並行して習熟中です。
評価ボード安いから注文しちまった
PIC24とdsPIC33の奴
…11月末発送かよ
>>263 割り込みにエラッタでは苦労しそうだね。
折れ、PSOCにしようかな。
お弟子さんの軽頭=nonata=メゲ犬さんの真似ですか....。
2005-07-30 今日はOFF
私はレスポンスする場合にはちゃんと「軽石」のハンドルで行きますので
2005-10-12 飯の時間が・・・。
別のハンドルでいろいろ書いているのですが、そちらはなぜかスルーされています。(^^;
てことなんで、まあ、某初心者掲示板も荒れるのかと。
>>265 とりあえず、avrへのポーティングをしていますが、
現在、PIC18を40MHzで動かしているので、
avrで16MHzで処理が回るか微妙なところです。
avrは確かに、CPUのClockで命令の実行はするのだが、
レジスタとメモリ間のload,saveのオーバヘッドがあるから
対PICでは2-3倍程度の速度のようなので微妙です。
PSOCもトラ技の評価ボードを入手しているので、
試してみるつもりです。自分の用途だと本命はPsocのような気もするである。
とりあえず、CQ出版はじめてのPSoCを買って、$10キット入手しといた方がいいすね。
269 :
774ワット発電中さん:2005/10/20(木) 15:17:51 ID:PJXUs3IT
picの入力ポートに使うスイッチってトグルスイッチじゃだめですか?
入力ポートに常に5Vかかってても大丈夫?
大丈夫。
間違って出力にしないようにプログラムに気を付けてね。
>>267 PIC,AVR,PSOCもとは頭(・∀・)イイ!
折れもPSOCキット買うかな?
10$ というと1000円で買えんの?
>>268
>>270 ありがとうございます!さっきステッピングモータを回すことが出来ました、PIC初体験だったので大感動です^^
>>271 送料とか加算されるんじゃないかと思ったが、カード引き落としは確かに$10ですた。
PICも速度的な折り合いがつけば悪くないです。特に、命令がシンプルなので
Cで書いてもアセンブラとの対応関係がわかりやすいので、ソフトウエアで
出力タイミングを正確にとるのが容易です。
専門学校でCコンパイラMPLAB-C18を使って実験してるんですが、C18自体、あまりネット上にサンプルプログラムがありません。
microchip社やpicfunなども探しましたが、どこもLEDのサンプルばかりで、モーターなどのサンプルはどこにもないんです。
どこかサンプルのある良いサイトを御教授いただけないでしょうか?
参考書は取り寄せたんですが、なにせ一週間かかるもので。
デバイスは40ピン16F877です。
16F877をC18でどうしようというのか?
276 :
774ワット発電中さん:2005/10/21(金) 13:24:46 ID:9iyAYeWe
16F877でC18って釣り?
すいません、16F877に書き込むHEXファイルを、MPLAB-C18上で開発しようかと思いまして。他のコンパイラは学内にも資料が豊富なんですが、どうもMPLAB-C18だけが学内にもネット上にもなかなかないんです。
>>277 C18はその名の通り18F系専用じゃないの?
あと普通にネットに転がってるよ。
/ ̄ ̄ ̄ヽ
i' i_ノハlリノjlハ|l
| |i| '┃ ┃{i| お客さん,こういうところは初めて?
l」|i|, ''' . ''丿!
li| `フ i´ l|
lリ (,.,)∞j,) リ
まじでC18で16F877の開発しようと思っていたの???
C18は18Fシリーズのみです。
C18が使いたいならCPUを変更しなさい
16F877が使いたいならコンパイラを変更しなさい
つか、アセンブラでがんがれ若いの
16F877ならPA.EXEでいいんじゃない?
あのアセンブラ簡単だし。
アセンブラよりwindowsが楽だぞ
284 :
774ワット発電中さん:2005/10/22(土) 13:59:56 ID:tVSO/BjG
アセンブラはコンパイラで、WindowsはOS・・・
プログラム言語とOSの違いが判らない人がいるようですね。
PA.EXEって、インクルードファイルを自分で作れば12系と16系全部対応できるっぽくみえるんだけど・・・。
もしそれで動くなら、MPLABより使いやすい環境に見えるんですが。
ただのマクロだから
283はCUIとGUIのことを言いたいとか・・・・もしかしたらpa.exeってCUIじゃね?
使ったことねーけど。
それなら pa.exe よりも MPLAB の方が楽って書けば良いだけ
アセンブラはコンパイラで
アセンブラはコンパイラで
アセンブラはコンパイラで
アセンブラはコンパイラで
アセンブラはコンパイラで
言語として言うならアセンブリ・・・
はじめまして!
100Vのオフタイマーを作りたいです。
時間は0分から40分くらいの可変可能なもので(可変抵抗器を使用したいです。)
オフ時間が来るとアラームを鳴らしたいのですが・・・。
PICをつかって出来ますでしょうか?
もし作成可能でしたら方法も教えていただきたいです。
宜しくお願いいたします!
方法:
・回路を設計する
・プログラムを作成する。
・PICにプログラミングする
・回路を組み立てる
・最終的な動作を確認する
・完成!
293 :
774ワット発電中さん:2005/10/23(日) 17:46:31 ID:VcI7IeGF
>>292 出来る!ということですよね。
もう少しかいつまんで教えていただけないでしょうか?
「自作PC」時代の自作か…
295 :
774ワット発電中さん:2005/10/23(日) 17:56:32 ID:sKIr1j8d
可変抵抗→ADでPICに取り込む
→タイマー刻む→時間が来たらポート出力→リレーON
296 :
774ワット発電中さん:2005/10/23(日) 17:56:37 ID:8LvDl91X
297 :
774ワット発電中さん:2005/10/23(日) 17:58:04 ID:sKIr1j8d
意地悪いうな
親切に教えてやれよ
ホームセンターにでも行ってタイマー買ってきたほうがいい
正直なところ100Vを扱うことだけでも、初心者にはお薦めしないテーマです。
コストなら買うほうがずっと安価です。
勉強のためであれば、100Vに接続するのではなく、アラームだけのタイマーから
始められるのが良いように思います。
>291-293
292は要点だけに絞っているのに、さらに「かいつまんで」ですか?
>>295で判らなかったらPICで作るのあきらめてキットか製品を買った方がいいかと思う。
回路図とコードをアップしてくださいとか言われそうだ(汗
時間可変の場合は、ADC->タイマーより DOS/VのアナログスティックのようにC-R 時定数をそのまま使うほうが簡単。
1mSec程度の時定数を作って千回ループすれば1秒だから
303 :
774ワット発電中さん:2005/10/23(日) 21:00:36 ID:RBaPBjI8
>>302 > 時間可変の場合は、ADC->タイマーより DOS/VのアナログスティックのようにC-R 時定数をそのまま使うほうが簡単。
>
> 1mSec程度の時定数を作って千回ループすれば1秒だから
0分から40分の広範囲を安定してCR時定数でカバーするのは難しいような気がします。
PICじゃなくてすまないが、かなり昔にCMOSの4011を使ってAC100V用タイマー作った。
本に載ってた回路そのままでシュミット回路の応用だったと思う。
最大で20分程度だったが、短い時間ほどきっちり設定させたかったので、時間設定の
ボリュームにAカーブのVRを使ったと記憶してる。
305 :
774ワット発電中さん:2005/10/23(日) 23:02:45 ID:8LvDl91X
キッチンタイマーと称して、100円ショップで売っているが...。
時間は99分まで。電池もついてる。
306 :
774ワット発電中さん:2005/10/23(日) 23:05:31 ID:8LvDl91X
あ、100Vかぁ。
ブザー出力拾って、PICでON秒数設定(ワンショット動作)秋月のSSRで100VをON/OFFってところで。
>>292どうしたんだろう、明日まで書き込み無しかな・・・。
>>306 そこまでするなら液晶表示でタクトスイッチで時間設定のを作った方が楽のような………。
あ、既出か。。。
マジであっちに行ったらしいな…さてご神託はいかに
助け舟と見せかけて泥舟に押し込んでしまうとは、あぁなんて恐ろしい人だ・・・
スパルタ教育ですな。
自分の頭で考えるという基本が身についてよろしいのかもしれない。
その前に投げ出す可能性がものすごく高いが。
軽石にも教訓になるんじゃないのか。w
自分に責任がないところで騒ぐのと、自分の責任で初心者の面倒を見ることの違いを思い知るだろう。
普通の頭を持っていれば・・・。
>>314 彼の仕事の遅さには、ホトホト困っております。
二人して激務だなどと開き直るわりには、ネットで遊んでますし
そういう時間があるなら仕事をしてもらわないと困るんですよ。
そちらからも注意をお願いできませんか。
ゴルァ!
注意しときました。
318 :
774ワット発電中さん:2005/10/25(火) 01:36:33 ID:mhsQVAf2
319 :
774ワット発電中さん:2005/10/25(火) 01:48:24 ID:mhsQVAf2
そういえば秋月のカウンターに、三洋の長時間タイマーICがあったような。
CR発振を鬼分周して数時間とか出来るやつ。
以前、バッテリ充電キットについていたような..。
これだと再現性いいし、PICいらないし。
>>320 >なんで秋月のPICのキットって長続きしないんだろうか。
主要部品が無くなれば終了でしょ。
あそこは部品売る為にパーツセット出してる所だし。
322 :
774ワット発電中さん:2005/10/25(火) 04:47:56 ID:ViJc6EgC
つーか、企画書通って、生産ロット数決めて、どこかに外注で詰め込みさせて
できたものあらかた問屋に突っ込んだら「はい、さようなら」ってことでしょ。
消耗品系のものだと、流れ作業で作り続けるけど、こういうもんはバッチ生産だし。
問屋渡しで縁が切れてるから、小売店の売れ行きなんかチェックしていないだろうし。
そしたら、売れるものでも再生産なんてしないし、できないでしょ。
>>320 それ、インフォリチウムのデータをみるだけのキットではなくて?
>>323 斜め読みした程度なんだけど、データ見るだけなのか、使えないな・・・。
斜め読みでいいかげんなこと言う奴がいちばん使えないけどな。
326 :
274:2005/10/25(火) 17:21:59 ID:giZuYKH7
遅レスですいません…。18F452に変えました。
また話戻っちゃうんですが、MPLAB-C18で使えるのサーボモータのサンプルプログラムどこかにありませんでしょうか?
どんな簡単なものでもかまいません。
327 :
かさう:2005/10/25(火) 18:34:10 ID:bD8AHcxm
電子辞書はどうのように作れるかを誰かが教えてもらいたい、
たとえば、電子辞書のモデルとか電子辞書の回路図とかどんな鍵となる(IC、マイクロプロセッサ。。。)部品を使ったらいいですかと聞きたいです。
僕日本語は上手ではないから、ごめんなさい。
お願いします。
PICでUSB機器作ってみたい、SDカード使ってなんか工作したい、
センサー関係ももっと勉強したい、いろんなマイコンをつかってみたい。
やりたいことはあるけど、どれから手をつければいいんだ....。
実際に組む時もそうだができることからコツコツ
積み上げて行くしかないよね
>329 全部いっぺんに
>>329 困難はあるが、全部いっぺんにやるプロジェクトの方がいい。
個別に独立した実験だと、それぞれ満足してしまってそれで終わり。
>329
どれでもいいんじゃない。
メニューを見てるだけじゃ、そうさ、何も食べられない。
何でもいいから一つやってみれば?
あまり高難易度の物ではなく、完成までのロードマップを自分で想像できる程度の
ちょっと背伸びするぐらいのテーマがいいね。
これからPICをはじめようとしています。
PICライタは2、3千円であるっていわれたんだけど、
ネットで見つからない。
高いけど、秋月のAKI-OICプログラマーVer.3.5がいいの?
ライタのトラブルが気になるなら秋月のを買った方がいい。
バージョンアップのセットも買うのをお忘れ無く。
トラブルなんか気にせずライタも自作で!っていうならググったら簡単にHITします。
俺漏れもOICプログラマーVer.3.5ホスィ
OICはみんなの願いを叶えてくれる素敵なものに違いない.
PCだって携帯だってOIC1つあれば他にはキーと画面と電源しかいらない.
PS4もPSP2もICはOICだけで構成.
無敵
トラブル抱えたライタ使うと本来手段であるべきものが目的になってしまう。
最初は素直に安定したライタ買っとけ。
341 :
329:2005/10/27(木) 06:35:31 ID:VxzTMBdn
おまいらありがとうございます。
とりあえず全部いっぺんに進めていこうと思います。
342 :
774ワット発電中さん:2005/10/27(木) 07:05:49 ID:r6W/VWdJ
情報あるけど、相性悪かったら全く動かないしね〜
ライタをどうするかはどんな環境にいるかにもよるとおもうよ。
・学校や会社にはちゃんとした開発環境がそろっているけど家で使えるものがないのか、
周りには全くそのような環境がなくて新規に用意しなければならないのか。
・電子回路の組み立て経験が十分にあってオシロやSGなどが自由に使える環境なのか、
電子工作はやったことがなく半田ごてやテスタの扱いも怪しいのか。
電子工作の知識あって作ったらシリアルポートの相性でパソコン3台試して書き込めなかったって人もいる。
>>344さんのように環境にもよるけど、結果から言えばメーカー品か秋月のを買った方がいい。
2000〜3000円で売ってるPICライタは実在します、ただしシリアルポートの相性に思いっきり左右される。
もうすこし頑張ってググりましょう。
346 :
電脳師:2005/10/27(木) 09:38:09 ID:PFlIu8mI
千円以下でパソコンなしでできるライタはどう?
焼酎坊向けのキットってか
ライタもそうだがパソコン不要で書き込みができるやつがほしー(10年前のこと)。
PICが出る前EP ROMを書き込みしたかったけど当時パソコンなんか持ってなかった分際だった。
マニュアルやライタの回路を見てDIP SWと昇圧回路で何とか作った。
あぁ、パソコンあったらなぁ‥
今度はPICがむしょーにいじりたくなった、
ことはじめにデーター付きでゲットしたが書き込む方法はシリアルで以前みたいにはいかない。
マニュアルにはライトのチャートがあったけど以前みたいなパラレルをHC166に入力してCLKでラッチして、コマンドやってデーター送って‥ アレッ? Oh My God !!! …
挫折した。
結局、ジャンクのZ80パソコンのI/Oポートをマシン語で制御してPICと会話ができるホストがでけた。
それ作って思ったが以前に電卓にICソケットが付いてるみたいなP ROMライタがあった。
それみたいなのをLCDと16F84のキットに16進キーを付けたアローン型のライタがあったらパソコンがない人でもPICの世界に入れるしPCとライタの相性で動かないなんてことなさそう。
いやっ、もう作ったが
それでプログラミングの際は横に紙と鉛筆が必ず必要。
↑のように日本語が不自由でもなんとかなります。
>>327がんがれ。
348 :
346:2005/10/27(木) 10:55:13 ID:PFlIu8mI
じゃあ、これをちみに紹介しよう。
アローン型ライタ(の制御チップ)『電脳師くん』\500
単なる16C56だけどこれに4×4キーマトリクスと3本のICクリップ(PICソケットだと完璧)とテレビの外部入力の端子をやって(LCDのタイプもある)
ライト時には13VをVppに繋いでちょ♪
起動すると(「電脳師くんは5Vいらないんだ」なんてつまらんツッコミすんなよ)
画面にしたがってプログラムすればいい、アセンブラしか載ってないけど
上位機種の18シリーズはバックアップやC語もあるよ。
プログラムが終ったらEXITして画面に従って被PICを接続し13Vを繋いで書き込みをGo!
『電脳師くん』は他に本人がこの板でムカつくカキコをした場合
思いっきりそのDIPをハンマーで叩き潰すことによって
ウップンが晴らすのにもいい、\500と安いからそれ用にもう一個買っておこう。
349 :
774ワット発電中さん:2005/10/27(木) 10:57:07 ID:AJhwM55m
みなさん情報ありがとう
お財布と相談して秋月のOICキット狙ってみます。
ver up するときは気をつけてね
俺は 電源断をやってしまい めんどうなので買ってしまったが
パラレル接続のライタAN589って、汎用には使えなかったっけ?
パラレルポートを使うのが面倒
パラレルポートが無い&USB-パラレルが高い
パラレルポートのコネクタが邪魔
シリアルポートのほうがライタ以外にも使い道が多い。
などの理由で圧倒的にシリアルかと。
>>352 AN589も、JDM系ほど酷くはないがPCとの相性問題がある。
あとターゲットVddが制御できないので、安定して書き込めないチップがある。
357 :
774ワット発電中さん:2005/10/28(金) 15:52:24 ID:uJ7EFZbA
>>将来はPIC18Fシリーズも対応の予定
いいねぇ〜!
PIC24シリーズはどうなるんだろ
JTAGみたいだけど???
現在はBaseline (12 bit core)&Midrange (14 bit Core)の一部がサポート済み。
'PIC18'&'PIC18J'&'dsPIC30F'が予定みたいです。
PIC24シーリーズは不明ですがPIC24のドキュメントでICD2が使用可能な様です
JTAGだけではなく今までのICSPモードも使用できるんではないでしょうか?
ということはハード的にはそのままでソフトで対応可能?ですかね
>PIC24シリーズはどうなるんだろ
無理でしょう。
cypress社にでも買収でもしてもらわないと将来が無いのでは?
16F877と16F877Aって、メモリーの違いですか?
>>362 データシートをDLして読みましょう。
コンパレータが拡張されたとか、
書き込みアルゴリズムが改良されていますので、ライターは877Aに対応したものが必要だとか。
364 :
16F877A:2005/11/01(火) 05:11:28 ID:6YvEaesm
割り込み処理で、WレジスタやSTATUSを退避させるのがめんどうだ・・
そこで
ORG H'0000'
NOP
GOTO START
ORG H'0004'
XXX HOGE
RETFIE
START
ここに初期化
・
・
MAIN
MOVF HOGE,0
BTFSC STATUS,Z
GOTO MAIN
割り込みのイネーブル
各処理
GOTO MAIN
タイマー割り込みでメインループを走らせるなら、これだけで十分と思うのだが
いかがかな??
前回の割り込み処理中でも、取りこぼしは無い・・・
さてXXXは 何かな??
ラウンメイタル・ユニットだな
井伊鴨...
368 :
16F877A:2005/11/01(火) 16:35:57 ID:6YvEaesm
>>364 みんな、何とか言ってくれよぅ
いいアイデアだと思うんだがな
XXXは「BSF]なんだな、割り込み処理中にステータスに影響を与えない罠
当然、割り込みのイネーブルの中で
CLRF HOGE とするのは言うまでもないが(突っ込まれる前に言っとく)
追伸、HOGEはPIC16Fシリーズでは H70以降の共通エリアでの使用となる、
これも突っ込まれる前に言っとく!!
あんたはそもそも割り込み使う必要ないんじゃね?
370 :
電脳師:2005/11/01(火) 20:31:22 ID:CiS1D2ga
確かにそうだがヘコますなよ。
コテ付けるからそういうことされるのかも‥
でも、ちゃんとロクに指摘もしてない椰子が何かゴネるのもな。
>>368 ひょっとして、
”PICで割り込みは邪道教”
の教祖?
372 :
774ワット発電中さん:2005/11/02(水) 00:01:03 ID:uKuhgg22
秋月のライタを買ってPAを使ったプログラムの練習を始めました。
そこで、早速つまづいたのですが、プリスケーラとかを使わないで、
単純に1〜1000までの数を計算したいのですが、変数を2個用意して
上位8ビットと下位8ビットを使った計算をしようとしています。
でも、自分のやろうとしている方法が正しいのかどうか分かりません。
「8ビット 256以上」でググってもこういうった場合の方法をみつけ
られませんでした。
どこか良いサイトをご紹介いただけないでしょうか?
374 :
774ワット発電中さん:2005/11/02(水) 00:09:49 ID:EH1KsLlI
>>364 それは試してみた?
割り込み要求をTOIFクリアしていないから、そのコードは一度割り込みがかかると
無限割り込みループになる筈。
>>369の通りで
割り込みを使わずに、メインでHOGEの代わりにTOIFを見て1ならクリアすればいい
376 :
774ワット発電中さん:2005/11/02(水) 10:33:10 ID:o2untlws
PICマイコン”ごとき”でオーエス? プゲラッチョ
PICは何の割込みなのかを判定しなきゃならないからなぁ。
まんどくさ
確かに多重割り込みとか再帰割り込みがまんどいよな。
>プゲラッチョ
プゲラの亜種。最近、南米の山奥で発見された。
8レベルスタックで多重割り込みかける度胸はおれには無い…
マイコンで多重割り込みが必要なんて、設計が悪い。
根本から考え直したほうが良いね。
まぁLinuxもそうだし、リアルタイム系なOSでは多重割り込みに
対応してるけどな。
確かに8レベルのスタックなPICでやる気にはなれんが。
内臓クロック20MHzとかあるといいのにな
心室細動でアボーンだな
>>383 便利そうだけどクロックだけで電気喰いそう、あれって内蔵RCだっけ?
やったこと無いけど、データシート見ると内蔵と外付け水晶で消費電流違うみたいだし。
>>385 内蔵クロック有効だとライタが正常に動作しなくなることがあります。
皆さんの見方を教えてホスイ
J○_○ さんのようなアドバイザを親切と見るべきでなのでしょうか?
正直、この顔文字を見ると気分が悪くなるので、とりあえずマンセー掲示板のブックマークを外しました。
ブックマークしてる香具師なんていたのが不思議
>>386 正常なライタだったら内蔵クロック有効でも書き込める。
>387 某BBSで解決すべき問題じゃないの?
>>389 JDMライタはダメなことがあるんだっけ?
RCDはいつも内蔵クロック有効で書き込めてる。
とろいライタだと、アドレスが進んじゃうとか?
JDMやRCD等のいんちきライタはまともに動かなくても「そんなもんだ」と思うこと
>>392 ? 単純にクロックが高いと消費電流が増えて、電圧を保てないだけだろう
どこぞのサイトで見たけど、プログラム電圧の印加がVccより遅れる場合、
PICが内臓クロック動作だと通常動作してしまうためプログラムモードに
入れないかららしい。
だから、改造版ライタはプログラム電圧がかかってから、VccがONするように
トランジスタ等が追加になってたはず。
NEC 78KとかTI MSP430とかもせいぜい8MHzだからPICに高クロックの内臓は必要ないと思ってはいるんだけど、
Cygnal 社8051 互換マイコンなんか25MHz内臓らしいじゃない?
たとえばTrevaのようなものをイメージセンサ代わりに使うとデータ転送量が多いからクロックが低いと取り込みに時間がかかるんだよね。
かといって、外付けはかさばるし。
>Cygnal 社8051 互換マイコンなんか25MHz内臓らしいじゃない?
それだけではなくて
PICは8MHzクロックでも実行スピードは1/4の2MHzだが Cygnal-C8051は1/1ですよ
"内臓"・・・
バイオチップのPIC・・・・
うわっ
電源逆に与えてCPU破裂させたらえらいことになるな・・・
基盤内臓
>>↑
白い液がどぴゅっと。
違う、
白い煙がもわっと出るでせう。
髪の毛が焦げたようなにおいが!?
>>395 >改造版ライタはプログラム電圧がかかってから、VccがONするように
>トランジスタ等が追加になってたはず。
う〜む。CMOSラッチアップ発生の危険性をはらんでいるような悪寒
404 :
774ワット発電中さん:2005/11/04(金) 10:17:09 ID:PIB8FFYp
顔文字使う奴は全員軽(ny
405 :
16F877A:2005/11/04(金) 10:23:18 ID:A5tgf+/S
落ち着け
>>407 了解 thanks for info.
PIC-MLのメンバの誰かの仕業だと思う。送信拠点は海外なんだけど、特定できない。
こういうSPAMがいっぱいくる。
>お世話になっております、担当の奈々子でございます(●^o^●)あなたに未返事の直のお誘い履歴が残っていますが、今月まで返答可能となっておりますので、早急な返事をお勧めです。
★メッセージ★
「いきなりで申し訳ありません。麻紗子と申します(^^;お聞きになっていますでしょうか?お願いしたいことは、端的に言って・・・
お前被害妄想気味
インターネットなんかやめちまえ
>>409 その手のスパムなんか、毎日20通ぐらいは来るよ。
いちいちうろたえないようにね。
メールアドレスやタイトル、中身は多少変えてるようだけど、
数パターンのフィルタで全部自動的にゴミ箱行きだよね。
ふと気がつくとゴミ箱の中のファイル数がすごい数に
なっていて驚かされる。
その手のSPAMの仕返しに送り元のPCとか
サーバーとか壊してやりたいんだけど
何かいい方法ない?
ほっときゃ、そのうち収まるよ。
毎日300通以上のSPAMが来る俺の経験からいうと、半年以上続いたSPAMはない。
毎日300通というのも凄いですね。こちらは毎日約1時間おきに1通のペースです。
SPAMはPIC-MLに投稿したのが契機で始まりました。
HomePageは持ってないので、外部にアドレスが漏れるのはPIC-ML以外に
見当たりません。ですので被害妄想では無いように自分では思います。
投稿は今後も避けようと思います。アドバイスありがとうございました。
だから、アドレス2つ使えばいいだけだろ?
無料メールアドレスはいくらでも入手出来るだろうに
こういう偏執狂な奴って逆に困る
メアド騙って送られてきたSPAMやウイルスを真に受けて送信者(ほんとは被害者)を執拗に攻撃したりする
>>409 >>415 だれかの仕業っつーよりも、あのMLは投稿内容が自動でweb化されるからだよ。
メールアドレスHomePageで晒したら間違いなくSPAMくる。
いろいろ変えていても、メールヘッダ眺めるとみんな同
じ経路だったりするのが笑える。
421 :
774ワット発電中さん:2005/11/05(土) 13:52:02 ID:iSNZ/ey1
質問なんですが、実験でスイッチを押すとLEDの点灯パターンが変わるというプログラムを作るというのを
やっているのですが、そのプログラムを家でMPLABver7.20を使ってアセンブルして問題なかったのですが、
実験のときにMPLABver5.2を使ってアセンブルした後デバッグするとちゃんと動作せず、PIC
に書き込んでも駄目でした。
レポートにプログラムを直してどこが悪かったのかについて書いてこいと言われたので
家でデバッグしなおしたところちゃんと動作したのですがこれは何が原因なのでしょうか?
MPLABのバージョンが違うとちゃんと動作しないということがあるのでしょうか?
PIC16F84を使っていてLEDはRB0からRB7、スイッチはRA3とRA4に繋がっています。
ソースが長いのでここにうpしました。
http://up.isp.2ch.net/up/8b8751e93341.zip
>>421 リストファイルとかHEXファイル比較したらわかると思うけど。
ソース見てピンと来たけど、とにかくHEXファイル比較してみ。
レポートはなるべく自力でやらないと意味がないし、
自分で解決できた時の感覚は後々役に立つ。
423 :
774ワット発電中さん:2005/11/05(土) 14:48:33 ID:iSNZ/ey1
ありがとうございます。
実験で実行結果のログを取ってソースを印刷したら全部消せと言われていたのですが
一応HEXファイルを取っておいたので比較してみると
ver7.20でアセンブルした方は先頭の行に:020000040000FA
というのがありました。ver5.2の方はこれがありませんでした。
自分はPICの機械語が分からずアセンブリ言語の命令が理解できる程度のレベルで
実験もアセンブリ言語でプログラムを作って動作させる程度の
ようで機械語まではやってないのですが、自分のレベルで解決できる程度の問題なのでしょうか?
餅
恐らくWinXPだと思うけど、DOSプロンプト(MS-DOSモード)で
FC ファイル名1 ファイル名2 | more
とやるとファイルの違いが比較できるよ。
同様のファイル内容比較はFREEのバイナリエディタでも出来るものが結構あるよ。
victorのサイトにおいてあんじゃね。
>>423 PIC18シリーズでも使えるように追加になったものだから、先頭のその行は関係ないな。
他に違うところがないとするとどっちのバージョンでも動くはずだけど、
そうなるとソース以外の環境や操作方法ってことになってしまうが・・・。
>>425、426
ありがとうございます。
時間があまりないのでとりあえず環境や操作方法の問題ということをレポートに書いて、
もし再提出になったらまた考えてみます。
429 :
422:2005/11/05(土) 18:28:09 ID:1ksElBax
PICの印字が年寄りに見えなくなった件について。
どんどんレーザー式(?)になっていますからね〜
かすかに16F648Aって読める
マジで読めんのだ・・・そろそろ老眼鏡作らないとダメかも。_| ̄|○
折れの親父、30代で老眼鏡かけてたって言うし。はぁ・・
最近、チップ抵抗などの数字はデジカメで撮って、
PCの画面で確認している。
>>436 光学ズーム+デジタルズームで5cm接写確認じゃ無理?
>>437 RICOHの1cmマクロが便利 (ワシのはG4wide)
マクロ苦手な機種は虫眼鏡併用するよろし
>>435 チップを白色LEDライトで斜めから照らすと読みやすいよ。
と老眼鏡掛けてる漏れからのアドバイス(w
あれだろ、あれ、キテレツ君がつけてる拡大鏡とライトがついているバイザーを使えばいいんだろ?
そうだろ?
>440
それ普通に売っているし。
442 :
774ワット発電中さん:2005/11/06(日) 06:04:17 ID:j+ZHc5tF
【部品が】老眼鏡を駆使するスレ【見えない】
学生からお年寄りまで(w
>>430 モスチーズバーガとチリドッグがおいしいよ。(^^)
スレ違いスマソ
446 :
電脳師:2005/11/06(日) 23:07:17 ID:KpjvEYGE
格安ライタ。
今度はまたシャレで『初歩のラジオ』(って言ったっけ、あのラグ板で
何でもやっていたやつ)風にライタを作った。
製作費¥1200-(パソコン不要)
あの雑誌特有の局発なしのレフレックスラジオみたいに○月のプラスチックケースとラグ板で作る。
萌えるねー
心臓部は電源の317と7805だけなんだけどシリアルで“0”、“1”を送るとこのシュミットトリガが
4094使うから彼にアクロバットな形でラグ板にはりついてもらう。
プログラミングはマイクロチップのHPの中のプログラミング仕様(英文なんだなこれが)に準じて
ロード、データー、(カキコ)ビギン、(カキコ)エンド、インクリメント‥ のコードの1、0をひたすらプッシュSWで叩く、
1W書くのに40回叩くだけでカキコめる。
何十年前の方々がアドレスとデーターの20個近い各SWをいちいちやるのに比べて
シリアルだからスマートな形で済む。
ちと思ったが、
モールス打つやつでトン・ツーを親指と人指し指の間に
スティック入れて神業の早さでやるやつをそのライタにやったら完璧のような‥
449 :
446:2005/11/07(月) 09:36:38 ID:JGUvhDT0
そうっス
ありがたうごぜーやす
秋月の12F683品切れのままだな。
PMWと内蔵低クロックがよさそうで使いたいんだが
40ピンは16F877A
18ピンは16F88
8ピンは12F683 が売れ線か
>450
あと16F648Aと12F675も売れ筋
683は内蔵だけど8MHzも出るしなぁ。(8MHz時は動作電圧に注意)
453 :
電脳師:2005/11/08(火) 09:37:44 ID:o7fzrqcL
評価のために18Fxx2を買った。
しか〜しっ>446みたいにビンボーだから書き込みフォーマットをまたDLするハメに‥
データーシートが膨大だからガッコのプリンタでやった。
それにしても12、16、18それぞれみんなフォーマットやコマンド違うからモロに200頁以上刷った。
それがしかも英文なのがメンドー(でも直翻訳された日本語のはとんでもない勘違いのもとになるような)。
あと、あれって裏表印刷ならいいのにな。
それにしても、そーゆー宝物ゲットするとうれしー、
帰りの電車で読んでいたら瞬時に着くから降りた自分の駅が一瞬前々々‥かとオモタ。
この先18Fxx2は、18Fxx20にうpしてくんだよなぁ
まいぐれーしょん まんどくせ。
455 :
電脳師:2005/11/08(火) 15:12:39 ID:o7fzrqcL
>446のライタをこんな風にするとウケるかも。
ボンゴの2つのドラムをそれぞれ0、1にしてコードをリズムで覚えて打ちながら書き込む、
楽譜はソースリストだ。
例えばADDWFならトントントン タンタンタンで続いてdとfをリズミカルに叩く。
ためしにマニアル見てOPコード全部を皿かドラムで叩いたがなんか病み付きになりそうな。
意味ないかも知れないけどパソコンがない小坊ならありうるかも。
PICやりたくてたまらないのは何としてでもやろうとするし、おこずかいでも作れるから。
それに子供だとあんなコードすぐ覚えてソースリストが楽譜なんてありうる?
456 :
774ワット発電中さん:2005/11/08(火) 17:38:54 ID:CXc7Ntg3
PICの16F648AでPMW信号をだせるポートが
何個あるか知りたいのですが…
458 :
774ワット発電中さん:2005/11/08(火) 17:55:27 ID:CXc7Ntg3
データシート何Pか若る?
blogに軽頭先生(=メゲ犬も登場しています。
あそこで誤字ネタは忌避だろ。
462 :
脳死:2005/11/09(水) 22:52:13 ID:0TcwFb6u
>458
だからガッコのプリンタでやれって!
でも満員電車ん中で新聞やマンガのかわりにマイクロチップの
英文データ読んでるとステイタス高いよ。
とくに女子高生のとこの視界内でやる。
やつらは英語に興味あるからそれチラッと見ただけで尊敬して警戒感なくなる。
彼女等といいようにラッシュに揉まれて天国!
ちゃんとあの処女臭を満喫できるし日が射した時の処女の生肌の実体!
服から息まで官能しよう。
でもそこまでやると今度はやっぱサカリ(十八女)のピークがわかるようになる。
高1のコはやっぱまだ厨房だよ。
マイクロチップを利用していっぱい女子高生を官能しよう!
>462
ああ、おまえのマイクロチンポじゃそれが関の山だな。
464 :
462:2005/11/09(水) 23:31:40 ID:0TcwFb6u
ワロ
でも世の中にはナノやピコや‥ もある
今日MPLABとPIC-LITEを入れたばかりの初心者です。
会社の人から何か作ってこいといわれました。本当に簡単なので構いませんので
どうかなにかお勧めの本やサイトがあったら教えてください。
LEDティカティカ・・・・
MPLABを日本語化したいんですけどできないんですかね?
古いバージョンのはあるみたいなんですが・・・
日本語化がやっと出来上がった頃にはVerが2つぐらい上がってそう。
日本語化しなければ使えない奴が英文のデータシートを読むとは思えない。
よって、プログラムを組むことは出来ないとおもわれる。
日本語化って、アセンブラ言語を日本語化?w
そういえば日本語でできてる言語が昔にあったなぁ、すごく使いにくかった記憶が・・・。
ぴゆうた
16F84Aをアセンブラで書いたのですが、割り込みからのリターンで1命令スキップされてしまう現象が
発生し困っています。
PORTB端子からの割り込みでPORTAをセットする割り込みルーチンにジャンプするプログラムなのですが、
プログラムを開始した時点で一度だけソフト的に割り込みを発生させて割り込みルーチンに飛ばしたいと
思っています。
実機で本現象は発生しますが、MPLABでは命令のスキップは起きません。
ソフト的に割り込みを発生させることはやっちゃいけないことなんでしょうか?
ソースはこんな感じです。
list p=PIC16F84A
#include <p16f84a.inc>
__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
org 0x00
goto start
org 0x04
goto interrupt_routinet
start
:
:(長いので省略)
:
bcf STATUS,RP0
bsfINTCON,GIE
bsfINTCON,RBIF; ソフト的に割り込みを発生させる
nop; ←このnopが無いとPORTAのbit4を'1'にする命令が実行されない
wait
bsfPORTA,4
sleep
nop
gotowait
inturrpt_routine
nop
nop
bcfINTCON,RBIF; 割り込みをリセット
retfie; 割り込み処理から復帰
end
475 :
774ワット発電中さん:2005/11/10(木) 22:44:39 ID:v8KeGit0
>>471 日本語化すると、文字数が増える上に、かな漢字変換がめんどう
>>474 大抵は省略している部分に問題があるものだよ
>474
RA4ピンには何を接続してるですか?
ビット操作する場合にはポートの値を一旦読み込むので、容量負荷が繋がってたりすると
時間を空けないとダメな場合もありますが・・
478 :
電脳死:2005/11/11(金) 00:16:07 ID:1mh44o4f
>475
いやっ、漢字アセンブラはイイ!
発 湘南
名 千春
名 奈美
学校 :
朝 読書
時限 火曜 〜
千春 が 聖矢 に “セクース”;
聖矢 に くるみ が 割り込んで 採取 ;
やめとく から マック に;
夢一 チェック 千春 は 正気?;
下校
マック :
2階席 にて :
あの机 にて :
椅子 詩織 :
魅月 が
みたいに極力二文字以内のコマンドや命名でうまい助詞で演算する。
人によってはJUN JUL MAR ‥とか
涼子 芳美 弘美 美和 尚 保恵 千春 恵美 圭子 由香 奈美 明日香 美保 瞳 美代 しつこい! 配列にしろって!
みたいに漢字だと楽しく逝けるよ
>>478 それで納品したりレビューしたりしてみてぇwwwww
「そこ、詩織がまずいんじゃないですか?」
「由香に"セクース"ぶちこんだらなおる気がする」
2ch式漢字アセンブラーきぼん
>474
ttp://cai.cs.shinshu-u.ac.jp/susi/Lecture/microcomp/d_07-04.html 上記より、
start
bsf STATUS,RP0 ; select register bank 1
bcf INTCON,GIE ; disable interrupts
bsf INTCON,RBIE ; enable PORTB interrupt
bsf INTCON,RBIF ; create a PORTB interrupt
bsf INTCON,INTE ; enable RB0 interrupt
bsf OPTION_REG,INTEDG ; set interrupt edge
bcf OPTION_REG,NOT_RBPU ; enable PORT B pull-ups
movlw B'11111111' ;
movwf TRISB ; configure PORTB pins to be inputs
movlw B'00000' ;
movwf TRISA ; configure PORTA pins to be outputs
bcf STATUS,RP0 ; select register bank 0
bcf PORTA,4 ; red LED off
bsf INTCON,GIE ; enable interrupts
wait
goto wait ; do nothing
割り込み信号のCPU内での伝わり方を考えれば、
INTCONレジスタはGIEをOFFして一旦全割り込みを中断した後に
RBIE、RBIF、INTE、GIEの順番でONしていかないとダメって事じゃ無いの?
GIE、RBIFの順番でONすると、PC+1カウント命令分の空送りが必要になる。
>477
と言う訳で、red LEDが繋がっている模様。
>>476 手元にない別のPCにソースが入ってるので、明日にでも省略部分をアップします。
>>477 LEDです。
>>481さんの貼られた回路がベースになっています。
IOポートに対してbsfはマズいのは知ってますが、調査用ということで。
ちなみに・・・
wait
sleep
nop
bsf PORTA,4
sleep
nop
goto wait
とすると、私の理解では割り込みから帰ってくるとスリープに入るので、
LEDは点灯しないはずなのですが、こんどはスリープをスキップしてしまうので
LEDが点灯してしまいます。
>>481 こんな短時間でベースにしたコンテンツを見つけてくるとはw。現役学生さん?
更に言ってしまえば、7.2というか7.3なんですが。
> RBIE、RBIF、INTE、GIEの順番でONしていかないとダメって事じゃ無いの?
現段階でINTEは使ってないので、bsf INTCON,INTE は除くとして、
bcf INTCON,GIE
bsf INTCON,RBIE
:
:その他一連の初期化や設定
:
bsf INTCON,RBIF
bsf INTCON,GIE
としても結果は同じ(LED点灯せず)になります。
>>481との違いはRBIFをセットする場所(タイミング)ですが、違いによる影響は無いと
考えています。
今ちょっと手元に実機が無いので明日にでも確認してみますが。
なお、上記コンテンツを使ってPICの勉強をしていますが、このスレで教えて頂いたことを
使って課題提出を目論んでいるわけではありません。
>>481 > GIE、RBIFの順番でONすると、PC+1カウント命令分の空送りが必要になる。
すみません。読解力不足でこの部分が理解できませんでした・・・orz
検証で使っているソースを分割うpします。
waitルーチンの中の、LEDを点灯させるところを変更して bsf を止めました。
その1
;【割り込み確認用ソース】
list p=PIC16F84A
#include <p16f84a.inc>
__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
count equ 0x0c
org 0x00
goto start
org 0x04
goto interrupt_routine
start
; --- *** PIC 初期化*** ---
bcf STATUS,RP0 ; bit5: select register bank 0
bcf INTCON,GIE ; bit7: disable interrupts
clrf TMR0 ; TMR0 reg CLEAR
clrf PORTA ; PORTA reg CLEAR(All bits to '0')
; --- PORT 設定---
bsf STATUS,RP0 ; bit5: select register bank 1
movlw B'00000' ;
movwf TRISA ; configure PORTA pins to be outputs
movlw B'11111111' ;
movwf TRISB ; configure PORTB pins to be inputs
bcf OPTION_REG,NOT_RBPU ; bit7: PORT B pull-ups('L'Active) 0:enable 1:disable
bsf OPTION_REG,INTEDG ; bit6: RB0 interrupt on 0:falling edge 1:rising edge
bcf STATUS,RP0 ; bit5: select register bank 0
movf PORTB,0 ; PORTB -> W (dummy read for "clear Q2 Unknown value")
nop ; 内部遅延等を考慮して確実にクリアするために時間稼ぎ
nop ; 内部遅延等を考慮して確実にクリアするために時間稼ぎ
bcf INTCON,RBIF ; bit0: PORTB の割り込みフラグをクリアする
bcf INTCON,INTF ; bit1: RB0 の割り込みフラグをクリアする
bsf STATUS,RP0 ; bit5: select register bank 1
bcf OPTION_REG,T0CS ; bit5: TMR0 Clock Source 0: CLKOUT 1:RA4/T0CKI pin
; bsf OPTION_REG,T0SE ; bit4: Increment on 1:H-to-L 0:L-to-H on RA4/T0CKI pin
bcf OPTION_REG,PSA ; bit3: Prescaler is assigned to the 0:TMR0 1:WDT
; --- *** PIC 初期化ここまで*** ---
その2
bcf STATUS,RP0 ; bit5: select register bank 0
; --- 割込み設定---
bcf INTCON,GIE ; bit7: 全体の割り込み
bcf INTCON,EEIE ; bit6: EEPROM 割り込み
bcf INTCON,T0IE ; bit5: TMR0 割り込み
bcf INTCON,INTE ; bit4: RB0 割り込み
bsf INTCON,RBIE ; bit3: PORTB 割り込み
; bcf INTCON,T0IF ; bit2: TMR0 割り込み
; bcf INTCON,INTF ; bit1: RB0 割り込み
; bcf INTCON,RBIF ; bit0: PORTB 割り込み
; --- 割込み設定ここまで---
movlw B'00000000' ;
bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
nop ; ・・・B
; @とAを入れ替えても現象は変わらない
; Bのnopがあるとき
; →/MCLR後プログラムが進んでいってwaitルーチン中でPORTA-4が'1'になる
; Bのnopがないとき
; →/MCLR後プログラムが進んでいってwaitルーチン中でPORTA-4が'1'にならない
wait
movlw B'00010000' ; nopが無いときには実行されない?
iorwf count,1 ;
movf count,0 ; count -> W
movwf PORTA ; W -> PORTA
sleep ;
nop ;
goto wait ;
interrupt_routine
movf PORTB,0 ; PORTB -> W
andlw B'11110000' ; 下位 4 ビットを 0 にする
movwf count ; W -> count
swapf count,1 ; 上位 4 ビットと下位 4 ビットを入れ替える
movf count,0 ; count -> W
movwf PORTA ; W -> PORTA
movlw B'00000000' ;
bcf INTCON,RBIF ; 割り込みをリセット
retfie ; 割り込み処理から復帰
end
お尋ねしたいことのポイントを整理すると、仕様上、慣例上、或いは経験上、
1.プログラム(命令)によってRBIF = '1' にはしないものだ。(Y or N)
2.プログラム的にGIE = '1'とする前に、既に何らかの割り込み要因がある(この場合はRBIE = '1' かつ RBIF = '1' )場合には、
この割り込みをクリアしてない状態でGIE = '1' にはしないものだ。(Y or N)
"プログラム的に"とは、bsf INTCON,GIEなどの命令によってということです。
retfie命令等によりGIE = '1'となる場合において、現時点では問題(命令のスキップ)が発生していません。
上記の項目についてアドバイスをお願いします。
>474
>
>>477 LEDです。
>>481さんの貼られた回路がベースになっています。
>IOポートに対してbsfはマズいのは知ってますが、調査用ということで。
ここは、クリティカルな問題を検討するには最初にクリアしていなくてはいけないのでは?
現状では、どこが原因なのか検討しているのですから手順を惜しんでいると
足下に不安要素を残したままデバッグすると右往左往する事になります。
> bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
> bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
じゃ無くて、
bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
bsf INTCON,INTF ; bit1: RB0 割り込み
bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
が必要じゃないのって事。
>現段階でINTEは使ってないので、bsf INTCON,INTE は除くとして、
PORTB割り込みを使用していますから、内部構造を考えれば関係あると思われますが?
>> GIE、RBIFの順番でONすると、PC+1カウント命令分の空送りが必要になる。
>すみません。読解力不足でこの部分が理解できませんでした・・・orz
ttp://ww1.microchip.com/downloads/en/DeviceDoc/30430cj2.pdf を見ると、命令パイプラインフローを参照すると
命令フェッチと命令エグゼキュートは別なPCサイクルで実行されるように見えますので、
NOPの挿入位置によって命令実行のタイミングとその結果に影響が出ませんか?
って事なんですが。。。orz
>486
1.仕様上=N、経験上=Y
仕様で書き込めるのだから、使えない事も無いって程度。
2.仕様上=N、経験上=Y
多重割り込みの制御に問題が有るので、絶対に自分はしない。
PICは、命令先読み実行なのでNOPの位置、命令の実行順番においてクリティカルです。
ある程度他人様の書いたプログラムを理解出来たら、自分で経験を積まないとダメ。
>bcf INTCON,RBIF ; 割り込みをリセット
上記とかは、割り込み処理ルーチンの出来るだけ最初に持ってくるように心がけている。
また、割り込みの要因を解析せずに、フラグのクリアはしないようにしている。
489 :
774ワット発電中さん:2005/11/11(金) 15:10:31 ID:QGmIwHVg
#include<pic.h>
#include"delay.h"
__CONFIG(UNPROTECT & BOREN & MCLRDIS & PWRTEN & WDTDIS & INTIO);
__IDLOC(0100);
main()
{
OSCCAL=_READ_OSCCAL_DATA();
GPIO5=0;
while(1)
{
TRIS5=0;
DelayMs(250);
DelayMs(250);
if(GPIO5)
GPIO5=0;
else
GPIO5=1;
}
}
を実行したところ
Executing: "C:\PICCLITE\BIN\PICL.EXE" -C -E"LED3.cce" "LED3.c" -O"LED3.obj" -I"C:\Program Files\HI-TECH Software\PICC-Lite\include" -Q -MPLAB -12F675
Error[000] C:\Program Files\MPLAB\start\LED3.c 2 : Cannot open include file "delay.h"
Halting build on first failure as requested.
BUILD FAILED: Fri Nov 11 15:05:26 2005
と出てきました。だれかアドバイスお願いします。2時間以上考えたがわからない。
delay.hがないんでしょうがどうしたらいいのやら・・・・
ちなみにMPLABとpic-liteです。
ソースファイルにはこのプログラムの名前しかない
#include "delay.h"
と「""」で囲まれているときは普通はカレントディレクトリから見る。
そのCのソースに一緒について来なかったか?
>>490 ありがとうございます。
cのソースにはついておりませんでした。
ちなみにソースは「PICマイコン フリーのCコンパイラではじめよう」P80
を参考にしております。
次のページの概要には
ソースファイル(675gpio.c)
ソースファイル(delay.c)picc liteに付属
ヘッダファイル(pic.h delay.h)picc liteに付属
とあります。
要するに675gpio.cを保存したファルダと同じ場所にdelay.hをコピーして
ビルドをかければよいのだろうか?
MPLABで同じフォルダにおいてあるdelay.c delay.h 675gpio.cを
sourceを右クリックしてaddしてこれらの3つのファイルをまとめて選択
してビルドをかければ大丈夫でしょうか?まあ、とりあえずもう一回挑戦してみます。
12F675よ!!お前はデカイ壁だな!!
>>要するに675gpio.cを保存したファルダと同じ場所にdelay.hをコピーして
ビルドをかければよいのだろうか?
失礼 delay.hとdelay.cを675gpio.cと一緒に保存でしたね
pic18ってPWM出力二つ?しかありませんよね?
どうにか時分割して、多チャンネルサーボ制御を可能にしたいんですが、pic18シリーズの時分割を分かりやすく解説してるサイトありませんか??
ちなみに18F452で、ボードはミニスタジオのものを使ってます。
できればC言語だとたすかります…。
コンパイラは、MPLAB-C18です。
496 :
16F877A:2005/11/11(金) 18:25:31 ID:PkN7v8wo
>494
プログラムによるPWMではダメかな、フリーランのタイマー1個で出来そうだが
>>487-488さん。アドバイスありがとうございます。
>>482 >IOポートに対してbsfはマズいのは知ってますが、調査用ということで。
>>487 ここは、クリティカルな問題を検討するには最初にクリアしていなくてはいけないのでは?
調査用と割り切ってbsfを使用した理由は次の通りです。
・
>>474では省略しましたが、
>>484の--- *** PIC 初期化*** ---のところからの"clrf PORTA命令"
・・・というより"movwf TRISA命令"から、wait内の"bsf PORTA,4命令"のところまで、20ステップ
( = 100ns * 4 * 20 = 8μs)以上あることより、前のPORTAの状態変化の影響を受けないと判断したため。
同様に
>>474ではinterrupt_routine 内でPORTAの操作をしていませんが、
>>485のように "movwf PORTA 命令"を
入れたとしても4ステップ( = 100ns * 4 * 4 = 1.6μs)あることから前のPORTAの状態変化の影響を受けないと判断しています。
なお、実機において500mV から 1.6Vへ立ち上がり波形直線部分においてのPORTA-4の状態遷移時間は16nsでした。
・PORTAに対するbsf或いはbcf命令において、その動作がリードモディファイライトであることから、読み取ったPORTAのデータが
不安定な状態だったとしても、bit7-5, bit3-0のセット値が不正確なものになることはあっても、bit4は強制的に'1'または'0'
とされるので、LEDの点灯には影響が無いと判断したため。
次に、
>>487の
> > bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
> > bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
> じゃ無くて、
> bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
> bsf INTCON,INTF ; bit1: RB0 割り込み
> bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
> が必要じゃないのって事。
>
> >現段階でINTEは使ってないので、bsf INTCON,INTE は除くとして、
> PORTB割り込みを使用していますから、内部構造を考えれば関係あると思われますが?
についてですが、
http://ww1.microchip.com/downloads/en/DeviceDoc/35007b.pdf を参照して
page19/88のFIGURE 4-3, FIGURE 4-4、page31/88のFIGURE 6-10を見た限りではPORTB7-4のRB割り込みだけを
使う場合においてINTEもセットしなくてはいけない理由が解りませんでした。
これについては、もう少しデータシートを読みなおしてみます。
同様に、
>
ttp://ww1.microchip.com/downloads/en/DeviceDoc/30430cj2.pdf > を見ると、命令パイプラインフローを参照すると
> 命令フェッチと命令エグゼキュートは別なPCサイクルで実行されるように見えますので、
> NOPの挿入位置によって命令実行のタイミングとその結果に影響が出ませんか?
これについても、もう少しデータシートを読みなおしてみます。
>>488でアドバイス頂いたPIC使用上のノウハウについては理解しました。
以後のプログラミングにおいて注意したいと思います。
ありがとうございました。
ちょっと見難くなってしまいました・・・orz
書き忘れましたが御報告を。
> bsf INTCON,RBIF ; bit0: PORTB割り込みをセット ・・・@
> bsf INTCON,INTF ; bit1: RB0 割り込み
> bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
> が必要じゃないのって事。
上記アドバイスのように"bsf INTCON,INTF ; bit1: RB0 割り込み"を追加しましたが、
現象に変化はありませんでした。
以上、御報告いたします。連投すみませんでした。
>>485 割り込みルーチンで、Wの退避/復帰を行ってWを破壊
しなければ動くんでないかい?
>499
おっっ、割り込みルーチンでフラグとWレジスタの待避していない。
流石は、学生さんの演習問題。(w
>>499 >>500 たしかに割り込みの中でWとSTATUSを待避させるのはセオリーだと思うが、それで本当に動くようになるのか?
見てるとなんだか見当違いの方向に話をそらしているような気がするよ。
>>501 >>499 ではいじわるな言い方をしたが、マニュアル
PICmicro Mid-Range MCU Family Reference Manual DS33023A
の 8.3 Interrupt Latency を見てのとおり、割り込みで割り込み
ルーチンへジャンプするのは、
>>485 で言えば
>bsf INTCON,GIE ; bit7: 全体の割り込みを許可 ・・・A
の次の命令を実行してからなのではないかと。
つまり、nop が無いと、割り込みルーチンへ飛ぶ前に
>movlw B'00010000' ; nopが無いときには実行されない?
が実行されてしまうのでは?と。
503 :
16F877A:2005/11/12(土) 06:34:16 ID:+4PElmck
SLEEPでは次の命令をフェッチしてしまうので「NOP」が必要だが
割り込みでは、次のアドレスをスタックして、割り込み処理のはずですが
504 :
494:2005/11/12(土) 07:16:18 ID:ZZSSDGPn
>496
プログラムじゃ難しいんですか?(´д`)すいませんフリーランが既に分かりません。
506 :
16F877A:2005/11/12(土) 19:43:42 ID:+4PElmck
>504
内蔵のPWMを使用すると2CHまでだが、プログラムによるPWMならポートのゆるす限り
多チャンネル化できる
0〜255までカウントアップするカウンターを動作させておいて
このカウンターを監視して、比較するデーターでポートのSET・RESET
これは8BITの場合だが、16BITでも同じ事
ID:+4PElmck の言うことはあてにならん。チェック要。
>>504 PWMの周波数次第だね。
もしモーターなら1KHzでOKでしょ。ソフトで十分
509 :
16F877A:2005/11/13(日) 07:25:12 ID:REJ2Hc1E
上記書き込みに、何か問題でも?
コテハンの書き込みは全て信用できない。
16F877Aさんの発言は、論理ミスが多い。
ミスを繰り返すと、信用する人が減ってくる。
まあ名無しの発言にも論理ミスや根拠の無い思い込みによるものが多いけどなw
> 論理ミスや根拠の無い思い込み
and 荒らし、コテ叩き、etc.
517 :
504:2005/11/14(月) 11:52:04 ID:j/9k0nMD
CプログラムでのPWMを、わかりやすく解説してるサイトありませんか?
教えて君でごめんなさい。自分でもたくさん探しましたが、やはりもともとのPWM出力を時分割して多チャンネル化される方が多いようで…。
PWM出力の生成からプログラミングされてらっしゃるところはなかなか見つかりません。マイクロチップやpicfunにもありません。
文献でもいいです。
内蔵モジュールを使うのか?
割り込みでタイミングを作るのか?
それともタイミングもCで生成するのか?
先輩方からみて、プログラミング的に一番苦労の少ない方法を推薦いただきたいです。
内蔵モジュールを使うことは今は未定です。
MPLAB-C18の資料がネットにあまりに少なくて…。CCSのデモ版などあれば問題ないのですが、今はMPLAB-C18を、上書きインストールでデモ期間延長しながら使ってます。
>504
1)PWMについて理解していること。
2)自分でアルゴリズムを考え、C言語でプログラム表現できること。
3)使おうとしているマイコンのデータシートを読んでポートの使い方を理解していること。
4)使おうとしている製品の回路を理解していること。
5)MPLAB-C18をつかったレジスタ操作方法を理解していること。
>494-からの発言をたどっていくと、1)−4)のどれもできないようなきがする。
まずはタイマー割込みを使ったLEDチカチカプログラムをアセンブラで組んでみろ。
ソフトウエアでPWMするには、タイマーを使用することになります。
簡単にやるには、割込みを使えばよいですが、4usecで割り込みを
かけるとして、約1KHzとなります。
ですから、割込みの時間+PWMの比較処理が上記時間内に完了
して、メインルーチン行うべき処理時間が残っている必要があります。
もし、PIC18を40MHzで動作させるのであれば、そこそこ出来るかもしれません。
あるいは、制御対象がモータであまり精度を要求しないのであれば、
タイマーをポーリングするのが意外と簡単かもしれません。
いずれにしろ、条件によって手段はさまざまです。
幸いにも、シミュレータで検証できますのでいろいろ試してみると
良いと思います。
”自分で考える”
という習慣すらないのだな。
CCSのCCPモジュール使えばPWMはわけなく使えますよね
↑12F675はなかったか ごめん
>>523-524 CCPがあるPICでも1〜2個しかない。
質問者は複数のPWMを扱いたいらしいのでソフトウェアPWMの話になっています。
…………と、説明してみる
>494
>多チャンネルサーボ制御
って言うのがよく分からんが、
もし、ラジコンのサーボモーターを複数個動かしたいのなら、
>506や>508でFAになってると思う。
サイトは検索汁としかいえないな。
527 :
774ワット発電中さん:2005/11/14(月) 20:43:03 ID:xxpxpCjc
PWMの周波数と分解能を掛けた間隔で割り込みを掛ける
1KHzを64段階なら64KHzの
メインの処理で各PWMに使いたい値は更新する。P1〜8とする
割込み処理内で割込み毎に+1するカウンタを用意。上限まで行ったら0に
(そのカウンタとPnを比較してPnが大きければ対応ポートを1小さければ0に)
上記を必要なポート分繰り返す
割込み終了
見たいな感じでいいじゃないのかなぁ
>521の方が言うようにソフトでやるのはきついような気がする
1KHzを分解能256でやるとすると20MHzでも割込は20step以下で
済まさないと駄目だから不可能。現実は1KHzの64か
必要なPWMチャネル数分PICを用意すればいいじゃん。
50Hzの10ビットの12チャンネルぐらいが現実的なんじゃないの?
指令をシリーズで送れるし、割り込み処理に90ステップぐらい使える。
つか、マジなはなし、PWMで何をやりたいんだよ?
漏れは50Hzで充分な用途だろうと想像しているのだが・・・。
531 :
16F877A:2005/11/15(火) 12:19:49 ID:15/zz+b6
532 :
774ワット発電中さん:2005/11/15(火) 14:45:35 ID:cbzHbryC
三原色LEDを使用したスタンドの設計をしようとしているのですが、IC制御で数パターンの色を出せと言われました・・・
正直PIC関係の本読んでもなんじゃこりゃ?の状態です
どなたかお知恵を・・・
スタンド関係なら、
スピードワゴン財団に外注汁。
というか、LEDを順番に点けるのは、入門書の冒頭にある基本中の基本。
PICで、しかもアセンブリ言語で、というのは、かなり難易度が高いが、
これだけいろんな本や入門書があるんだから、がんばって読め!
535 :
774ワット発電中さん:2005/11/15(火) 15:20:56 ID:W7FS/jg2
>>532 本 「わかるPICマイコン制御」誠文堂新光社 遠藤敏夫著
の164ページにそのものが載ってるぞ。
> というか、LEDを順番に点けるのは、入門書の冒頭にある基本中の基本。
これで既に3パターン完成。
点数はもらえるね。
せめてPIC本で基礎を勉強してから質問しる!
いままでMPASMでプログラムをカリカリ書いてたけど、
mkiroCの試用版使ってみて、なかなかイイ感じ!
上の続き
センサーとか使ったちょっと複雑なLEDチカチカ程度ならこれで十分だ。
ボーナス入ったら買ってみよう。
でも、MPASMは手放せない。
私も使ってますが
好きなんですけど・・・・バグ多くないですか?
543 :
774ワット発電中さん:2005/11/16(水) 06:53:28 ID:LPipz20i
Win Xp SP2でmikroC Ver2.1.0.0使ってるけど、デバッガ関連に不具合を感じる。
・レジスタの値をバイナリで設定するとき、bit0の入力に違和感。
・ステップ実行のとき、レジスタの値変化がついてこない。
試用版とはいえ、インストール直後から 12F683 16F88 16F648Aが使えるのはありがたい。
レジスタ、変数を個別に表示形式指定できるのは便利。
私も最近になって mikroC を制限版の状態で使い始めた物ですが、
まだデバッグ機能も使いこなせていません。
MPLAB IDEの場合はI/Oピンへパルス幅等を指定して入れる機能が
あったと思いますが、mikroC もI/O(特にIn) を制御する方法は
存在するのでしょうか?
レジスタを直接いじるしかないね。
546 :
初心者12級:2005/11/16(水) 19:14:19 ID:YUuh3Gd2
質問です。今MPLABとpic-liteを使ってledを光らそうとおもっています。
回路の作成も終わり実行させましたが光りません。(出力はRA0のみです。)原因はなんなんでしょうか?
↓これはpic16f84に組み込んだプログラムです。
#include <pic.h>
#include "delay.h"
//__CONFIG(UNPROTECT & BOREN & MCLRDIS & PWRTEN & WDTDIS & INTIO);←エラーがでるためコメントにした
//__IDLOC(0100);←エラーが出るためコメントにした。
main()
{
//OSCCAL=_READ_OSCCAL_DATA();←同じくコメントにした。
RA0=0;/* RA0ピンの出力データを0にする */
while(1){
TRIS0=0;/* RA0ピンは出力ピン */
DelayMs(250);/* 500msec待つ */
DelayMs(250);
if(RA0) /* LEDの点滅をトグルする */
RA0=0;
else
RA0=1;
}
}
上のプログラムに何か問題があるのでしょうか?
↓これは参考にしたpic12f675のプログラムです。
http://www.ne.jp/asahi/niko.niko/neko/675gpio.c
1)無用のビットはマスクすること
2)ポートのリード・モディファイ・ライトはやめるほうが無難
548 :
初心者12級:2005/11/16(水) 19:23:30 ID:YUuh3Gd2
>>547 ありがとうございます。 しかし難しい・・・・
サンプルではこれで動くらしいのに・・・・・・・
初心者向けのPicライタってどんなのがお勧めですか?
今の感じだと、秋月のやつ買おうと思ってるのですが・・・
純正も捨てがたいぞ。
MPLABからそのまま焼けるし、ネイティブでUSBだから別電源要らないし。
そのくせ10マン級の法外な値段ではない。
新しい石の対応はリアルタイムで、ICSPも全く不安なく出来る。
>>551 のページは初めてのひとだと
言語選択画面が出てきて次行くと空っぽになるようです
そのあともう一回
>>551 のリンククリックすると開けます
orz
連投スマソ
よく見たら売り切れてるし・・・(次期出荷 12/7 らしい)
PICkit1の方は在庫あるようだけど別電源いるので注意
PICkit2の方はUSBだけだからホントいいよね
急いてはことを仕損じる。
対応しているPICを確認したほうがいい。
556 :
774ワット発電中さん:2005/11/16(水) 21:34:12 ID:SThZrhgW
PICのライターには、IPIのPDE-NXを勧めます。
理由は、
1.私が仕事で使っていて、抜群に調子がいいこと(今まで書込ミスはゼロ)
2.最新デバイスも、すんなりと書ける
3.秋月のものやIPIのPDE-XPなどより、書込速度が抜群に速い。
4.IPIからキットも出ていて、これなら1万円前後。組み立ては1時間程度
(初心者でもOK)
5.WindowsXPでも2000でも快調に動作
6.ただ、基板むき出しなので、ケースに入れる必要がある?
(私は裸で使っています)
7.パラレルポートが必要
ttp://www.ipishop.com/picprog.html
>>546 __CONFIGをコメントにしては、ダメ
エラーを取れ。プログラム時に指定するなら不要だが...
OSCCALなんて無い。外部に発信子が必要
f84の仕様書見たほうが良いぞ
>>546は高級言語のソフトがあればコピペするだけで動くと思ってるんじゃ・・・。
つか、データシートくらいは目を通して欲しいな〜
559 :
544:2005/11/17(木) 09:24:27 ID:5MtF2RhL
>>545 やはりそんな感じですかね、 ありがとうございます。
現在、OSCCALの設定をどの様に記述するのか悩んでいます。
asm call 0x3ff のコンパイルが通らない様ですので
orgとか使うのだろうか。。。
560 :
559:2005/11/17(木) 09:38:25 ID:5MtF2RhL
>>559 どうやら org じゃなくて absolute ですか
秋月のライターで16Fに書き込んだらコードプロテクト解除失敗と出た。古いライター
でV2からV4にバージョンアップさせたが無理だった。ちなみにオプションから二つの方法を
試したが無理だ。皆さん俺みたいな経験ありますか。
皆さんプログラムコードに対する返事ありがとうございました。データシートを見て変更させました。
>>559 たしか補正値の読み込みはできなかったと思う。
他の人でも補正値をメモして直接OSCCALに入れてたし。
自分はOSCCAL使わない&16F648Aなどを使ってるので気にしてないですけどね。
本当に精度がいるなら水晶外付けにするし。
564 :
559:2005/11/17(木) 11:44:41 ID:5MtF2RhL
>>563 5cm角ぐらいのユニバーサル基板に8pinのPICで組む様な小僧ですから
内蔵オシレータは必須な私です。
とりあえず変数の実アドレスを指定して MOV で読むという変な書き方で
コンパイルが通りましたので、これでやってみようと思います。
ありがとうございます。
unsigned short sOscCal absolute 0x3ff;
STATUS.RP0 = 1;
asm MOVLW sOscCal
asm MOVWF OSCCAL
チラ裏カキコが続いて怒られそうですが、+, - は使えるのに *, /, % 等が使えません.... orz
>>564 そのコードじゃぜってーむり。かっこよく言えばハーバードアーキテクチャだからなPICは
566 :
559:2005/11/17(木) 11:58:44 ID:5MtF2RhL
>>565 ハーバードアーキテクチャの意味も良く分かっていませんが、アセンブルリストを見ると
期待したバイナリが出来ている様な気がするのですけどマズイのでしょうか?
$1683 BSF STATUS,5
$33FF MOVLW sOscCal
$0090 MOVWF OSCCAL
言葉の意味がわかんなかったらググるのが21世紀の常識
ヒントをやると、RETLW命令がなんのために存在するのか考えることだ。
あんたのコードでOKなら、RETLW命令いらんだろ?
>>564 何でわざわざアセンブラで書いてるの?
unsigned short OscCal;
STATUS.RP0 = 1;
OscCal=*((short*)0x3ff);
これで同じ事になる。はず。
ANSIじゃないから保証は出来ないけど。
まー動かないことには変わりないけどね。
570 :
559:2005/11/17(木) 12:57:41 ID:5MtF2RhL
>>566-569 $3fe のRETLW 命令を CALL する代わりに ($3ff) の値を直接拾ってきても
($3ff)の値が OSCCAL へセットさえされれば良いのかと思っていましたが
そうではないのでしょうかね? もうちょっと勉強してみます。
アセンブラで書いたのは、 OSCCAL = sOscCal; と書いても
コンパイル出来なかったので苦肉の策でした。
お二方、ありがとうございます。
1)Program Memory エリアと Data Memory エリア(RAM)の違いをきちんと理解すること。
(Cのソースとの対応も含む)
2)MikroC の org ディレクティブと absolute ディレクティブの違いを理解すること。
3)MikroC の Forum 内を OSCCAL で検索すること。
572 :
559:2005/11/17(木) 14:11:47 ID:5MtF2RhL
>>571 補正値はプログラムメモリ3ffに存在するので、3fe番地のRETLW命令を使って
プログラムメモリ3ffをリードする必要がある。
しかし私がやっていたのは単にMOVLWで固定値を入れていただけなのですね。
プログラムメモリもファイルレジスタも同じマップ上の連続した位置に
存在するのと勘違いしていました。
実は MikroC Forum の、関数のアドレスを指定する方法は読んでいたのですが
もっとスマートに出来ないかなと余計な事を考えて変な事をしていました。
>>568 のヒントで気付かなかったのは情けないです。
大変勉強になりました、ありがとうございます!!
movlw03h
movwfPCLATH
>572
補正用のRETLWは3FFHだよ
PICは特殊でプログラムエリアは14bitで構成されている
B'1101xxkkkkkkkk' が RETLW
xxは何でもよく、kkkkkkkkがWレジスタに入れたい値
12F,16F(上位のは知らない)ってプログラムエリアに
おいた定数を得る方法って結局 RETLWしかないんだよね
だからこんなのが一般的
addwf PCL,f
retlwB'00000001'
retlwB'00000010'
575 :
559:2005/11/18(金) 09:11:57 ID:pev+NWnk
>>574 ハッ、アドレスを間違えていましたね。(汗
RETLWでテーブルにアクセス出来るというのを聞いた事がありますが
そうやって使うとは知りませんでした。
ありがとうございます。
外部クロック 命令クロック 内部クロックの意味がわかりません。ググっても
知っていてることがあたりまえのような書き込みばかりです。84のデータシートには
ビットTOCSはRA4/TOCKピンの入力なら1 0なら内部命令サイクルクロックとあります。
個人的には内部クロックが外付け水晶発振子のことと解釈しています。
あとプリスケーラっていうのもどういうものなのかもわかりません。
>>576 何か一冊教科書代わりに買うといいと思いますよ
何でもググッて分かるものじゃないと思います
16F84には内蔵クロックはない!もう少し頑張って読みましょう。
内部クロック:PICパッケージ内に内蔵されたクロックの事
外部クロック:PICに外付けする水晶発振子や水晶発振器やRC発振のこと
命令クロック:1つの命令を実行できるクロックのこと。
PICだとクロック4回で1命令だから、クロック4Mで命令クロック1M
プリスケーラが判らないなら
>>577さんの言うとおり入門書買った方がいいね。
>>577 578 588 詳しい即レスサンクスです。最近レジスタの中身がだんだんと
あきらかになってきて楽しくなってきました。
>>84に内臓クロックがないのは最初に知りました。ごめんなさい書き間違いでした。
内部発振がないのは回路設計とプログラミングエラーの時に気づきました。どうやら内部発振機能が
あるほうが珍しいようですね。
プリのほうはもうちょっと簡単な入門書でしらべてみます。
変な文章で申し訳ない。
>>580 >どうやら内部発振機能があるほうが珍しいようですね。
逆だよ、40Pinとかじゃない限り内部クロックが無い方が珍しい。
一般的な12F629や675や683や16F627・628・648A・88も全部クロック内蔵してる。
16F84は古いチップだから内蔵してないだけ。
ある程度判ったら16F648Aを使った方がいいよ。
PWMも内蔵してるしシリアル接続もやりやすいし、クロック内蔵だからブレッドボードに差し込んで簡単に試せる。
追記で
内蔵クロックを使うわけだから、2pinをI/Oにも使えるから自由度も広がります。
16F84は書き込みに対応してないライターも結構あったり・・・。
わざわざありがとうございまた。うちの人が内部発振少数派説を唱えているので
知りませんでした。
>>2pinをI/Oにも使えるから自由度も広がります。
↑の意味をすんなり理解できたのがうれしい。16F84だとOSC1とOSC2のことですね。(^^)
とりあえず定番PICでは16F84A以外は内部クロックがあります。(28Pinは定番じゃないような)
米粒サイズの10F206でさえ内蔵ですから。
http://feng3.cool.ne.jp/10f/10f20x.jpg 40Pinだとさすがに無い事が多い・・・かな。
12Fや10Fでは補正値を消さないように注意してください。
>>16F84だとOSC1とOSC2のことですね。
そうです、648Aや88で内部クロックを使うとRA6〜7にすることができます。
秋月のライタを作って電源をつけていたらPM37Aとかいう部品を触って
大火傷したよ。何が原因なんだろう。
↑謝罪と賠償を要求するニダ
てかPM37Aってなんだ?
LM317なら付いていたような。
大やけどって全身の何%くらい?
そりゃ”不注意”が原因。
主因は無知では?
製造者責任で自分を訴えれ
592 :
774ワット発電中さん:2005/11/21(月) 14:13:56 ID:Rg1y8za4
0.0000005%くらい。作り直します。
PM37Aとかいう部品 と言っている時点で、
無知決定だね。
このヤフオクのCDってレーベル簡単すぎない?
まさか、コピーしたCD-Rを売ってるってことはないよね。
だれかWIZ-C持ってる人いない?
評価を見たらFED-Cを何回も売ってる・・・なにこれ
高くても代理店で買っといたほうがいい。
買う気満々の香具師は、後々のことをよーーく考えてからに46
>594
IPIで買うと、赤字のCの下にS/Nが付き一番下にIPIの社名が入る。
ここのは、全部CDRだね。現在の最新バージョンは、11.03なのでアップ後の不要品の放出。
本製品のバージョンアップは、数千円なんでオリジナルを買った方が良いよ。
定価で買って、バージョンアップ1.5K円払って、古いのを半額で放出かい?
しかもコピー品だったら、ぼろ儲けも良いところだね。
日本語マニュアルは、自社製じゃない有志が書いたVerの古いのなんで注意。
今は、18F8720に関して致命的な不具合発生中なんでそれを使う人には勧めない。
PICとは直接関係ないが
RTC8564はうるう年は対応しているのでしょうか
PIC12C508のバイナリって、PIC12C509に焼いても大丈夫なのでしょうか?
PICに都合良く使えそうなテンキー何かないでしょうか
出来るだけ小さいやつ
>>605 秋月の100円電卓でもバラせば?
電卓だけ買うなら、近所で200〜300円で買ったほうが安いだろうけど。
>606
つ「キー配列」
電卓とテンキーはキー配列は同じだな
携帯や普通の電話は違うけど
違っていたとしてもキートップを入れ替えればいいんじゃね?
機種変後のいらない携帯改造したらよさそうだね
携帯のモックアップでも、裏の接点まで付いてるのがあったりもして
自作のMMIにゲームのコントローラが重宝したけど、
今は携帯の白ロムかなぁ。
液晶を自由に使えるともっといいんだけど・・・。
いらなくなった携帯から部品取りで色々遊べそうなんだが
>>613 以前使ってた携帯を分解したらPICがでてきた・・・。
ほかにもOPアンプの324とか・・・。
ちなみにメーカーはJ-PHONE
RCDライタ12F509書き込みできず…。シリアルポートの電圧足りないのかな。
16F84Aや12F675とかは普通に焼けるんですけどね。
ところで秋月ライタって12F509サポートしてないけど焼ける人います?
基本的に12C509と同じでフラッシュタイプなだけだと思ってたんですけど
自分のは無理でしたorz…。
何かいい方法あれば教えてくらはい。
バージョンアップした?
>>616 フラッシュの509はなんか違うらしくトラブルがあったとか。
12F675書き込めるならWriter509とか作ってみては?
そのほうが安心だしさ。
621 :
電脳師:2005/11/25(金) 10:43:12 ID:XpEIKM/H
>616
RCDみたいな高級なの漏れにはわからないけど12Fをサポートしてるのか?
プログラムのコマンドマッピングやコンフィグはデーターシート見ても12Cと同じだった。
いっそデバイス選択を12Cにするとか。ただしイレースは出来ないから意味ないかも。
もしやるならBulk Eraseコマンドのxx1001を実行出来るようにすればいい。
漏れのライタはソフトまで自作だからコマンドマップをいちいちデーターシートから調べるけど
汎用性は高く18Fや24もでけた。
ところで漏れも12F509ほすい、どこに売ってるの?
その原因を試してみてー
623 :
621:2005/11/25(金) 12:57:09 ID:XpEIKM/H
買うのやめろとまでは言わないけど、
一応言っとくけどゴミみたいな商品だよ。
>>625 世界最小だけに見た目がゴミって意味ですか?
628 :
626:2005/11/25(金) 20:58:33 ID:tlDAlh//
2-level DEEP hardware stackですか。
それはいいスタックですね。
それはでかい米粒ですね。
このサイズにすると2levelになるって技術的な制約なのかな?
もちっとmicrochipの中の人にはがんばってほしい。
>>628 さすがに2levelは制限ありすぎ。
コンパレータ無くしていいからせめて4levelにしてほしかった。
>627
逆だな。簡単な処理で実装面積に制限があるような組み込みだからこそ
使える石。スペースがあるならもっと簡単に扱えて機能豊富な物使えば
いいんだしな。
10F2xxはBaseline-PICだからね。
12bit命令の12C508/509、12F508/509、16C52/54/55/56/57/58はみんな2Level
632 :
616:2005/11/26(土) 03:48:36 ID:zVSSrbDl
みなさんレスどもです!長文になりそうなので分割カキコさせてもらいます。
>617
秋月ライタはVer.3.5 Rev.Eでバージョンアップ等はしていません。
Ver.4(ファーム)+書込みソフトのアップデートで書込みできるのでしょうか?
秋月のサポートデバイス一覧になかったものでチェックできていません。
MPLABはVer.7.20です。ちなみに秋月のアセンブラは使った事ありません…orz
書込みにはIC-Prog Ver.1.05Dを使用しています。
>618
早速試してみました!「プログラムチェック中に照合する」で書込みしたところ、
何とか書込みには成功しましたが、1回に書込みできる量が数バイトずつで、
コンフィグレーションをIntRCで書込んでも、読出しを行うとLPで書込みされてしまっています…残念。
インジケータ用のLEDを一度取外して挙動を見てみます。
12F675と16F84Aが何の問題もなく書込み出来ていたのでVppは未チェックでした。
情報有難うございました。
>619
Writer509実は既に作ったんですが、昇圧回路の一次電源を
間違えて繋いでしまい、PICがあっちっち状態になってしまってから
ソフト側からライタを認識してくれません(汗)
多分ファーム用のPICに9V位昇圧回路の一次側にも9V位かかったはずなので
Vppもかなりの電圧になったかと…orz
時間をみつけてファームの交換と必要ならトランジスタ交換しようと思っています。
(手持ち材料がないので少し先になってしまいますが…)。
619さんのWriter509は調子よいですか?
>620
情報有難うございます!509と675の手持ちが今ないので、
手に入ったらまたチャレンジしてみたいと思います。
633 :
616:2005/11/26(土) 03:58:55 ID:ilkeK9Op
連投すまんです
>621
動作確認済みのデバイスに12F509があるので
対応しているとは思うのですが、自分作ったやつでは書込みできませんでした。
書込みはIC-Progでデバイスは12C509を使っています。
消去もIC-Progでデバイスを16F84Aにして消去を行っていますが
消去は可能ですが、正常に書込みできない状態です。
ところで、ライタ&ソフトを自作できるなんてすごいですね!
自分はみなさんが設計されたものを作って使わせてもらうレベルなんで…。
いつかは自分で設計できるようになりたいっす!
やりましたよ、、、、、、
他人の作ったもの拝借して12F675から12F683に、移植しただけじゃないか!・・・・・
書き換え必要なところは全部済ましたのに!・・・・・
なんでこのピンから5Vが出てるんだ!・・・・・
ええ、もう、電源逆接続!
しかし壊れないもんだなw
>>632 >619さんのWriter509は調子よいですか?
トラブル&不具合全くない、以前はソフト側で表示バグがあったけど直って快適。
秋月のUSB-シリアルで使用できるってところが大きな利点かな。
12F509を使わずに12F675で動かしています。
電源は12Vバッテリー2本の24V動作でDC-DCはありません。
http://radio.s56.xrea.com/radio/src/radio0392.jpg 実験用に1個だけ12F509を持ってたからRCDライタで試すと、読み込み不能。
RCDライタでは509は使うのはやめておいた方がよさそうですね。
16F88や84Aや12F675は問題なく書き込めるんですけどね。
ちなみに、日頃使っているのはRCDライタの方です。
IC-ProgでコンフィグやHEXを直接いじれる&確認しやすいという理由で。
>>635 電源は12V電池ですか。お見逸れします。
エナメル線じゃねえだろ
>>638 ソレです、いまでは100円ショップで1本100円しかしないしね。
消費電流も3〜5mA程度だから、55mAhでも十分。
>>637 エナメル線じゃないです。
ポリウレタン線です。
24Vの部分だけ耐圧が心配なのでラッピングワイヤーを使用。
>>639 正解
24Vいれて自己消費電流1.6μA・電位差0.2Vの三端子レギュレータを2つ使って13Vと5Vを作り出しています。
ポリウレタン線 = UEW = polyUrethane Enameled (Copper) Wire
エナメル線じゃん。
エナメルとポリウレタンの区別がつかない人がいるとは………。
茉奈・佳奈の区別もつかないんだろうな。
俺?おすぎとピーコの区別がつきません。
いわゆるエナメル線 = PEW = Polyester Enameled (Copper) Wire
ポリエステルもポリウレタンもエナメルなんだけど、エナメルだから、
何とかの上塗りか?スレ違いスマソ。
>>644 上塗りじゃ無いと思うよ。
上塗りだったらハンダで被覆が剥がれないだろうし。
一般的には
エナメル線=EW ハンダで被覆が剥がれにくい(色は焦げ茶色)
ポリウレタン線=UEW ハンダで被覆が簡単に剥がれてメッキが容易(色は銅線と見分けが困難)
ってことになってると思う。
ポリエステル線でもEWがついてるし、ここら辺の詳しいことがわかりにくいんだよね〜。
エナメル線(EW)
ホルマール線(PVF)
ポリウレタン線(UEW)
ポリエステル線(PEW)
ポリエステルイミド線(EIW)
ポリアミドイミド線(AIW)
ポリイミド線(PIW)
↑ブゲラ
学習リモコンをPICで作っているサイトはある程度見つかりますが、皆アセンブリで書かれています。
C言語で作っているサイトはありませんか?
↑お前がC言語で書いて第一人者になれ
最初からよそのサイトぱくろうと思ってる香具師には無理だな
>>647 どちらをメインにするかはともかく、
PIC使うにあたって、アセンブリ読めるようになった方が良いんじゃない?
アセンブラ使えないとCを使ってもトラブることが増えるだろうしね〜
PICでPCI用デバイスを動かした漢はいませぬか?
シャレやなくて、例えばカニさんマークのイーサネットチップとか・・・
ISAチップならピクニックでランランランをぱくって何とか動かせるんですけど
>シャレやなくて、例えばカニさんマークのイーサネットチップとか・・・
まったく持って無意味と思うが自己満足としては良い鴨な
畜生=猿
動かしました。
高速なPCIバス直接ドライブは辛いので、x86CPUをサブCPUにして、
PICとx86はシリアルで通信します。
何か違う?
かなり違う・・・ような。
657 :
774ワット発電中さん:2005/11/29(火) 20:28:06 ID:qsy/cDwY
秋月に12F683入荷したんだね、あと877のPLCC版も
品切れなのは16F628Aだけか まあ648Aがあるから問題ないな
> PICとx86はシリアルで通信します。
「PICとx86は電源ラインで通信します」とかだったら、漏れにもできそうだ。
1個にせず32個くらいPICのせてさ。
バスとかとの接続はFPGAで。あくまでインターフェースとしてね。
これなら主役は間違いなくPICだ!
こすと?何それ?www
>>661 ワラタ
たしかに通信といえるきも…って危うくだまされるとこでしたよ
どっかにPICC-Liteのいい解説本って無いもんですかね。
「C言語で始めるPICマイコン」は買ったけど、できれば16F84を題材にした本。
mikro Cお試し版で16F648Aのプログラムを書いているが、不具合で嵌ったw。
付属のデータEEPROMライブラリは動作せず。
データシートを参考に自分でリードー・ライトルーチンを書くも、ライトはOK。リードは動作がおかしい。
結局リードルーチンはASM記述で回避。
C言語の知識だけでは、目的のプログラムを完成することは出来ないわな。
アセンブラのアの字もワカランってわけじゃないが、ちと教えて君。
16F84をちょこちょこいじって、今16F877で遊んでみようとテストしてみたんだが、
最初の一歩でつまづいた。入力がどうもうまくいかない。
20件くらい電気工作のサイトを巡って、A/Bポートの初期設定がアナログ入力てのを見つけたんで、今度こそと思って
やってもうまくいかない。C,Dポートならうまくいくと思ってやってみるも駄目。
とにかく入力ができないんで、遊ぶも何もできそうにないって状態。
以下のプログラムを走らせるとCポートのHI,LOWに関わらず出力は11111000固定になる。
何故だか分かる人アドバイスをお願いします。
作業環境は、メモ帳でasmファイルを作って、
MPSWIN(だっけ?)でアセンブルして、秋月のPICライタで書き込んでいる。
LIST P=PIC16F877
INCLUDE "P16f877.inc"
__CONFIG _HS_OSC & _PWRTE_ON & _WDT_OFF & _LVP_OFF
ORG 0
GOTO MAIN
MAIN
BSF STATUS,RP0
MOVLW 07H
MOVWF ADCON1 ;A/D用ピンを全てデジタルI/Oに
MOVLW 03FH
MOVWF TRISA ;ポートAをALL INPUT
CLRF TRISB;ポートBを出力モードに設定
MOVLW 0FFH
MOVWF TRISC ;ポートCをALL INPU
CLRF TRISD ;ポートDを出力モードに設定
CLRF TRISE ;ポートEを出力モードに設定
BCF STATUS,RP0 ;バンク0に戻す
MAIN1
MOVLW PORTC
MOVWF PORTD
GOTO MAIN1
END
念のため回路図もどうぞ
669 :
667:2005/12/01(木) 07:52:20 ID:eloAF9SL
670 :
667:2005/12/01(木) 07:55:47 ID:eloAF9SL
連投失礼。
いきなり丁寧語だらけなのもまあ「必死だな」、程度に思っといてください。
回路図ワラタ
× MOVLW PORTC
○ MOVF PORTC,W
回路図、なんかかわいい
つまり PortC のレジスタ番号を出力していたというオチ?
>>665 > 付属のデータEEPROMライブラリは動作せず。
同じ経験をしました。
675 :
667:2005/12/01(木) 18:42:55 ID:eloAF9SL
2chに書き込める環境に帰って来ました。
>>671 見事に動きました。ありがとうございます。
>>665 >>674 PIC16F88だと、
mikroC\Defs\P16F88.mlk内にEEPROMlib_E_Aを追記してあげれば動きました。
mikroCのサポートフォーラムに以前書き込みがされてました。
ライブラリのリンク記述ミスが結構あるみたい。
次回のアップデートで修正予定らしい・・
//#pragma SetLib(usartlib_U_F)
#pragma SetLib(usartlib_U_F, EEPROMlib_E_A)
上記のように追加。
>>676 そこ書き換えるとほかのPCでも書き換えないといけない。
プログラムに
include PWMlib_P_A
って感じで書き込むだけでできたと思うけど。
>676 Ver.2.1.0.0の場合
P16F88の場合、EEPROMlib_E_Aの記述はないので追記でOK.。
P16F648Aの場合、EEPROMlib_E_Aの記述は有。動作せず。
mikro C で PIC 16F648A の EEPROM にアクセスする方法
unsigned char i;
unsigned char g_data[16];
void main() {
CMCON = 0X07;
TRISB = 0X00;
INTCON = 0X00;
while(1){
//write
for (i = 0; i < 16u; i++) {
EEADR = i;
EEDATA = i << 4;
EECON1.WREN = 1;
INTCON.GIE = 0;
EECON2 = 0X55;
EECON2 = 0XAA;
EECON1.WR = 1;
INTCON.GIE = 1;
Delay_ms(20);
}
//read
for (i = 0; i < 16u; i++) {
EEADR = i;
EECON1.RD = 1;
g_data[i] = EEDATA;
PORTB = g_data[i];
Delay_ms(500);
}
}
}
簡単じゃないか orz
↑追記
write時のDelay_ms(20)が気持ち悪い場合は
while (PIR1.EEIF==0);
PIR1.EEIF = 0;
簡易ユーザーインターフェースってどうしてる?
タクトスイッチとLEDを1つずつで、複数の動作を切り替える時に、
押してから離すまでの時間で、間にLEDの点灯を入れてるけど。
押す
0.3秒 |チャタリング対策
〜この間に離したら動作0へ〜
0.7秒 |点滅
〜この間に離したら動作1へ〜
1.0秒 |点滅
〜この間に離したら動作2へ〜
2.0秒 |点滅
〜この間に離したら動作3へ〜
3.0秒 |点滅
GPIOでLO(HI)になったら抜ける。
他にいい方法ないかな?
(抵抗分圧A/D検出でスイッチ増やすのは却下。)
アタ → 動作1
アタタ → 動作2
アタタタ → 動作3
:
:
:
アタタタタタタタタタタタタタタタタタタタタタタタタ → スイッチはもう死んでいる
>>682 一定時間以内に押した回数 タイマー&数値SUBWF、C==1
ループでカウントアップで、その回数で分岐かな?
最後の行、却下
684 :
774ワット発電中さん:2005/12/03(土) 17:47:40 ID:UuJNSnmj
>>681 スイッチ1個は賛成だが、何回点滅させたか わけわかんなくなる
素人衆相手の場合、せめて分岐の分だけLEDがほすぃ(2進数表示も可)
これの発展形で、アップ・ダウンスイッチを付加すれば、
ある程度のコントロールができそうだが
これ以上のコントロールは、7セグかLCDが必要になるな
もっと多機能にしたい方は「目覚まし時計機能」でも付加してくださいませ
3939
もっともっと斬新な簡易ユーザーインターフェースコイ
例えば、加速度センサ使って動きに合わせてとか、え?もうある、たしかにw
ハードゲイみたいに腰の振りで。。。。。。。。。。。。。なんでもない。。。
とりあえず
アタタタタタタタタタタタタタタタタ(回数)+最後にクリックしてから一定時間たったら決定でイコ。
押したら光る
決定後モードの回数分光る。
全然斬新じゃないなw
ちょっとしたものだとユーザーインターフェースに困らない?適当に古いのから移植?
タクトスイッチとLEDを1つずつの制限外してもいいから、どんどん紹介してみないか?
簡易じゃなくてもいいや。
無理して複雑にするとトラブルが増える&容量不足&処理不足の予感
もしかしたら2bpsに設定したUARTだけで実現するかもしれない(w
そこでモールスですよ
690 :
774ワット発電中さん:2005/12/03(土) 20:09:03 ID:7ETJhbCA
・・・ --- -・ -・ ・- -・・・ ・- -・- ・- -・ ・ -
デコード結果
SONNA BARANET
・・・(゚д゚) ワケワカラン
ソンナ バカネT
ETじゃなくてAの間違いなのかな?
最近エレベータのボタンをアタタよろしく連打する人が多いんですが
ボタンの方の寿命縮みませんか?
ボタン潰れる前に本体潰れるように、鉄筋抜いておきました。
>>694 最近は連打で取り消しができるエレベータあるからね。
698 :
774ワット発電中さん:2005/12/04(日) 01:35:05 ID:4wdrcA/e
センサで温度を測定してRS232で送信する基板をPIC12F675を使って作りました。
今度はRS232Cでなくてイーサネットで送信するように改造をしています。
質問がありますのでおしえてください。
イーサネットにつなぐために、TCPI/Pを実装したいのですが
内蔵ROMの容量が足りませんでした。そこで、外部にROMを追加しようと
思うのですが、ROMのOEとCSの線は、PICの何番ピンにつなげば良いでしょうか?
イーサネットにうまくつなげられたら、今度はUSB2.0を組み込んで、
USBメモリもつなぎたいので、外部ROMは必須だと思っています。
初心者でうまく説明できませんが、宜しくお願いします。
はいはいわろすわろす
何年前のネタだよ
>>697 痴呆とかの病院だと、特殊な押し方しないと動かないとかあるね。
勝手に出て行かないように。
701 :
774ワット発電中さん:2005/12/04(日) 08:20:17 ID:zMMn2r4x
取り消しは「長押し」でないかい?<エレベーターボタン
702 :
774ワット発電中さん:2005/12/04(日) 08:48:58 ID:NZI2iX8k
いや、普通に押してキャンセル出来るのもある
>>701 うちのところのはダブルクリックでキャンセル。
704 :
774ワット発電中さん:2005/12/04(日) 10:17:50 ID:nCmu12Jy
うちの会社は引っ張ればキャンセル
うちの州税務署ではスプレー缶で火炎放射してキャンセル
>703
三菱のは二回押しキャンセルという仕様らしい。
>>698 |ω・)つ[XPORT、USB-シリアル変換ケーブル]
709 :
774ワット発電中さん:2005/12/05(月) 01:13:10 ID:a2aj5rnY
>>698 アドレスバス・データーバスという言葉を検索してみたら?
最近のPICは外付けROMにコード置けたりするのん?
プログラムカウンターどうすんのよ。
>710
つ【I2C】
「つ」とか、「ヒント」とか、半分はおおハズシだね。
I2Cにスクリプト言語で書き込んでPICで動かすとか?
あの性能の悪いPIC-BASICみたいに。
716 :
774ワット発電中さん:2005/12/06(火) 07:35:05 ID:/u0f2/cE
アセンブラ・C言語 電気・電子工学を学ぶには 独学は厳しいですかね 来年 それ系の専門学校にいこうか考えてますが 実はもう25になります もう遅いですかね 就職も含めて
お前には無理
>>716 やる気の問題だから
そのくらいの年齢になると時間が無いことを言い訳にしてやらない香具師が多いけど
暇を見つけて寝る間も惜しんでやる気力があればやってみし
719 :
774ワット発電中さん:2005/12/06(火) 08:41:17 ID:/u0f2/cE
やはり 電気・電子工学やコンピューター アセンブラ・C言語などを学ぶには 独学より ちゃんと 専門学校なり 学校へ行って学ぶのがいいですかね まぁもう25ですが
720 :
電脳師:2005/12/06(火) 08:54:33 ID:fKuZNLNv
>>719 技術を学ぼうと思ったら学校へ行くより
>>720 さんが言ってるように
寝る間も考えられるような興味あるネタを見つけるに限る。
学校は就職の際の資格と割り切った方がいい、学校でも座学だけでなく
面白いテーマに取り組ませてくれるところなら悪くはない。
本当に出来る技術者は少ないのが実情なので、
実力さえあれば30代になっても就職の心配はない。
つーか、やる気がないから「学校などの自分に対して強制力を発揮する物」に頼るわけで、
それにたいしてやる気がどーのといってもな。
723 :
720:2005/12/06(火) 13:23:31 ID:fKuZNLNv
それにしても大抵の入門プログラムはつまらんね。
初歩ってことで最大限に簡単なのにしてるみたいだけど
LED点いたり点滅したってんなもんマイコンでやっても何の面白味もない。
せいぜいナイトライダー(ったっけ? 順に光が走るやつ)とかにして
早さのパラメーターやパターン変えたりするカスタマイズの手引きがあれば
やりがいがありそうな。
他に面白いのをたくさん載せておいて好きにイジれれば
寝る間も惜しんで好きな風にひたすらのめり込むはず。
ただロードして実行して「ふーん」じゃ教科書に書いてあるのを見てるだけみたいな。
ふーん のあとにいじる手引きがあれば解析し始めるかも(いじり方そのままやって
また ふーん のは見込みないが)。
だから漏れは最後のレベル高い面白いやつからそれやってエロくなった。
エロサイトのハッキングなんかだとモチベーションも維持しやすく
難易度も適当に高くていいんだけどな。
>>723 まあステップバイステップですから。
単純な点滅ができずにナイトライダーもできませんから。
ただそこらの入門書だと、動作原理とかの説明に一生懸命で、
役立ちそうもないサンプルになってしまっているのはあるね。
「○×を作ろう!」的な入門書がもっと増えて欲しいな。教科書には似合わないが。
726 :
774ワット発電中さん:2005/12/06(火) 16:24:33 ID:a+0jSeEX
>>723 それを自分でやらないで、本に頼ってどうするの。
マニュアル君は真でいいよ。
727 :
16F877B:2005/12/06(火) 18:33:20 ID:PxnXDxxQ
入門用のLEDチカチカは、それを使用する為に製作する訳でないから
動けばいいんだな、動作すれば次のステップへ・・・・
728 :
723:2005/12/06(火) 20:01:32 ID:fKuZNLNv
>真でいいよ。
このスレはまだツッコミもできない厨(だけど歳はイッてる)が棲んでるようだな。
( ̄ー ̄)ニヤリッ
>>721 基礎を一通り学ぶ場として、学校は行った方がいいんでない?
独学だと、興味から逸れた分野はぽっかり抜けてることが多い。
俺が1時間5千円で個人指導してやる
多数のLEDを点滅したいんですけど、
ややこしい内蔵モジュールは要りませんから
デジタルI/Oがいっぱいあって安いPICで
何かお勧めはありませんか?
出来ればフラッシュでお願いします。
>732
>730
( ゜д゜)オー
まさに私が求めていた物です!
>>732 内蔵モジュール無し&簡単なの動かすのでいいなら
>>730で書いた16F57がつかえる。
I/O20本あって1個200円なら十分でしょ?
と自作自演したくなるぐらいタイムリーでした。
>735
サンクスコ
>>736 10個1700円で買って余ったのを知り合いに1個200円で売りつけることができたらもっとお得
商社みたいな勝者だなw
739 :
774ワット発電中さん:2005/12/06(火) 22:03:31 ID:/u0f2/cE
就職も考えて 専門学校に行こうかと思ってます 確かに独学で アセンブラや電子工学は学べるかもしれませんが
>730
16系は命令が面独裁よ
C言語使うなら関係無いけど
741 :
737:2005/12/07(水) 00:37:39 ID:VHf8wj48
>>738 自分は16F88を10個以上秋月で買って、他の人に1個400円で売ったりした。
向こうは喜んで買ってくれたよ。
16F57は、せっかく28PinパッケージなんだからN.C.になってるところとか、
もう少しI/O増やしてもいいんじゃないかと思う。
16C57の置き換えだから同じ作りにしないといけないのは分かるけど…貧乏性なオレ
>>741 地方じゃ500円、はたまた売ってないってのもあるからねぇ。
744 :
737:2005/12/07(水) 01:32:23 ID:VHf8wj48
>>743 それどころか店すら無い地域が多いですしね。
745 :
774ワット発電中さん:2005/12/07(水) 02:33:35 ID:IU8OcDJN
皆さん アセンブラは何で学びましたか? 独学? 学校? 仕事も電気・電子系の仕事してる方が多いですか?
名古屋在住だけど、秋月通販にはかなわない
>>748 沖縄だけど、まあまあ電子部品販売されているが、マイコン類は秋月キットが少量おいているだけ。
中国地方某県
とおの昔に無線機店でさえ成り立たなくなってます・・・・
九州地方某県
電子部品屋?そんなのあったっけ?って感じでこっちでも無線機店もボロボロになって閉店しかけてる。
数年前にも部品屋が倒産したし・・・。
もちろんPICを見かけることも無かった。
> 皆さん アセンブラは何で学びましたか?
え、学ぶものなの? 機械語ごときを?
動けばいいじゃん。
それ以上になりたければ、たくさん作ってたくさん人のソース読む。
>>745 トラ技の特集を読む。
datasheetを読む。
MPLABのシミュレーションで遊ぶ。
これで十分。
PICアセンブラなら、雑誌とか本とか一切買わなかったよ。
ハードウェア以外に1銭もかけてない。
全部先人達のWEBから吸収させてもらいました。
感謝。
ネットのおかげでほんと便利になったなぁ
>>745 あなたは日本語はどうやって学びましたか?
>>745 PICの概要は図書館で3〜4冊借りて読んで覚えた。あとデータシートはライタ買ったら
CD-ROMにpdfが入ってたんでそれ読んだ。
アセンブラじゃなくてPICC-Liteだが、参考書が一冊常に手元に欲しいんで「C言語で始
めるPICマイコン」だけ買った。あとかかった金は部品と道具のみ。
漏れの場合、昔プログラマのバイトしてたときにC言語はおおむね覚えてたんで、本買ったのもPICC-Lite特有の部分があったからってところが多い。
ちなみに仕事は不動産デベロッパーで電子工作とは果てしなく縁が薄い(爆)
昔大学受けたときに4類落ちて6類受かったためだが。
>>758 隣の香具師のこてが顔にぶつかったとか言ってもめるんだろうな
「おめぇコテ振って半田飛ばすんじゃねーよ」
「あ〜?てめぇも切った足飛んでウゼェんだよ」
「あんだとゴラァやんのかてめぇ」
「上等じゃヴォケ表出ろや」
762 :
774ワット発電中さん:2005/12/08(木) 05:42:36 ID:u30FQUnq
PIC16F877A-I/P 877の如く周波数表示 -20 とか -04 が無いんですが
20Mで使用できるのかな??
764 :
762:2005/12/08(木) 11:06:22 ID:u30FQUnq
確認しました、PIC16F87XAには4Mが無いのですね
765 :
774ワット発電中さん:2005/12/08(木) 12:25:22 ID:1X2Yd07Q
秋月のPICプログラマキットVer3.5で対応デバイスでPIC16F876あったんですけど、
いざ、書き込もうとしたら、デバイスの選択で見つからないです。
どうすればいいのでしょうか?
PC側がDOS版ってオチではないだろうな?
767 :
774ワット発電中さん:2005/12/08(木) 12:50:52 ID:yZuoY+Bl
768 :
774ワット発電中さん:2005/12/08(木) 12:55:32 ID:1X2Yd07Q
ありがとうございます! 今からやり直してみます
また何かあったらよろしくお願いします。
>767
765はVer3.5って書いてるぞ
そのリンクでいいのか?
770 :
774ワット発電中さん:2005/12/08(木) 13:06:32 ID:yZuoY+Bl
あ
ver3.5
か・・・・・・ orz
悪いことは言わない v4かいませう
771 :
774ワット発電中さん:2005/12/08(木) 13:36:59 ID:1X2Yd07Q
すいません なんか最初からソフトをPCにインストールしてなくて、
しかもDOSでやっていました。お恥ずかしいです。
無事に対応デバイスが選択できました(^^)
本当にありがとうございました。ところで、通信ポートの選択が出てきたの
ですが、何を選んだらよいのでしょうか?
>>771 PICライタが物理的に接続されているポート番号
>711
つか、ダメな場合は弾かれるので
エラーが出なくなるまで順番に試す。
774 :
774ワット発電中さん:2005/12/08(木) 16:53:03 ID:1X2Yd07Q
確認できました! ありがとうございます
775 :
774ワット発電中さん:2005/12/08(木) 17:25:55 ID:PljzJfL4
>>761 おかえりなさいませご主人様♪
プローブをお持ちいたしますね。
基板を押えておきますね。
お会計ご利用料1000円とサービス料3万円になります。
776 :
○_○し:2005/12/08(木) 20:23:07 ID:RNwYNZYK
わからないことはPIC初心者掲示板に聞け!
777 :
電脳死:2005/12/08(木) 21:08:43 ID:HYW+yEkD
おかえりなさいませご主人様♪
お手を握らせて(手とりして)これを完成させていただきます。
背中にいかがわしいモノが張り付くように誘惑しますが別コースです。
それで、こういうのはゆっくりとこうやって暖めて融けたらよーく
馴染むようにようせつするんです
基板を押えておきますね。
はいっ♪
そうです。
お会計ご利用料1000円と教師サービス料0.3万円になります。
みたいにして電気(子)が潤う秋葉ってどぉ?
と、言っているのが「火の鳥」に出てくるロビタだったら笑えるがな
> 基板を押えておきますね。
バカ、そこの部品を押さえろよ。ハンダ付けするんだから。
ヨシと言うまで離すなよ。つららになっちまう。
>777
二番煎じってツマンナイね。w
ウホッ、おう!兄弟、わが弟よ。
お前のその部品、しばらく押さえててやるよ。
いいかー、全身全霊気合を入れてつけるんだぞ。
ところで、終わったらやらないか?
>>775 サービス価格からすると、プローブが卑猥なものになりそうだな(w
783 :
774ワット発電中さん:2005/12/09(金) 00:50:38 ID:5pRZ3dbx
16F84A用に作成したプログラムを、価格の安い16F628Aでも使いたいと思い、焼いたのですが動きません。
セラロック4MHzで、コンフィギュレーションワードは_MCLRE_ON & _XT_OSC & _WDT_OFF & _LVP_OFFとしています。
他にどのような設定をすれば16F84Aと同じ振る舞いをしてくれるのでしょうか。
動くように設定すれば動きます。
動きませんだけで具体的に対策教えられると思うなよ。
何を目的にしたどんな回路で、
何がどう問題なのか症状を具体的に。
とりあえず
\Program Files\Microchip\MPASM SuiteのP16F628A.INC見て残りのコンフィグも書いとけ。
それから初期化部分で84Aに無くて628Aにあるアナログ入力機能の設定をOFFにする。(初期値ONなので)
あとは書き込みで機種間違ってるとかライタが機種に対応してないとかバージョンが古いとかの確認。
大抵この辺で何とかなる。
785 :
774ワット発電中さん:2005/12/09(金) 01:15:26 ID:/UEzeAcC
苦労なさったご様子、エキスパートですなぁ・・・
786 :
774ワット発電中さん:2005/12/09(金) 02:17:05 ID:5pRZ3dbx
>>784 アナログ入力機能の設定をOFFにする方法がわからないです。
その言い方だと84Aのようにバンク0に移動してTRISAを指定するだけではダメだということですよね?
787 :
774ワット発電中さん:2005/12/09(金) 02:22:11 ID:5pRZ3dbx
>>784 ふーんCMCONなんてレジスタがあるんだな、どうやら初心者にありがちなミスらしい。どうも。
>>787 素直じゃないな( *´∀`)σ)Д`)
チクショー!
初めて使う12F675でLEDティカティカが出来Neeeeeee。
たぶんすげーつまんねーミスなんだろうからもう寝る。
憂さ晴らしage
>791
サンクス
CCS−Cでやってるんだが、ANSELとかCMCONとかは
自動的に構成してくんねーのかな?<TRISみたいに
どっちにしても明日頭冷やして見てみる。
12F683なら楽勝
794 :
791:2005/12/10(土) 22:03:38 ID:HmaHzPeG
>>792 CCSならプロジェクトのPICウィザードでアナログ
切れる。オペアンプのシンボルが出ているタブの所
とA/Dタブの所だ
ちなみに
setup_adc_ports( 0 );
setup_adc( ADC_OFF );
setup_comparator( NC_NC_NC_NC );
setup_vref( FALSE );
でピンは、全てI/Oになるぞ。
老婆心ながら、他のCコンパイラの使用を薦める。
さて、寝るとしようか zzz
ところで、PICメーリングリストって、最近全然投稿が無いんだけど
何かあったのかな?
そのせいか? 初心者掲示板が大盛り上がり。
初心者の人の「奇抜な質問」が多くなったが、
最近は「自分で調べろよ」みたいな回答が多くなった。
いいことだと思うんだけど。
796 :
774ワット発電中さん:2005/12/12(月) 05:20:50 ID:vxeIkY8D
趣味でPICを始めて、勉強がてらナイトライダーのプログラムを
作ってみたんですが、LEDが流れるのは流れるんだけど、
なんか違うなあと思ったら、LEDがパッと点いてパッと
消えるだけなんですね、当たり前だけど。
そこで、パッと点いてスウっと消える(流れるような、
というか尾を引くような)ように出来ないもんでしょう
か? 教えてくださいませ。
消すときにONとOFFを細かく切り替えて偽PWMっててもある、プログラム次第です。
>798 指導料10000円 添削2回付
799 :
電脳師:2005/12/12(月) 08:56:45 ID:mhHlY6Ts
800
801 :
774ワット発電中さん:2005/12/12(月) 12:50:03 ID:mmhdR8Y5
待望のPIC新発売
PIC 08 F 242
ピン数がたった2ピンの0402サイズで
どんなに狭いスペースでも最高のパフォーマンスを保障します。
A/D、USART、CCP等の標準的なモジュールはもちろん、
キャリブレーションデータつきのINTOSC等の最近の機能は全て網羅し
アプリケーションは無限に広がります。
あなたはPIC08F242でどんな夢を実現しますか?
802 :
774ワット発電中さん:2005/12/12(月) 12:51:36 ID:mmhdR8Y5
ピンアサイン
1:VDD
2:VSS
逆付けしちゃったじゃないか。
>>801 それはRF対応ってこと・・・・じゃ無いか。
>>795 あの掲示板は、互換さんの出版本のサポート用で、
いわば業務用なのにおかしいね。
工業高校、高専、専門学校の人々が多いでつね。
MLの発言が無いのは、嫌な回答者がいるからでつよ。(#゚Д゚)!ゴルァ
折れはあのMLも、PIC初心者掲示板も、どっちも嫌いでつ。
気に食わない香具師が回答してくるから大嫌い!!ヽ(`Д´)ノ ゴォラ
>601
WIZ-Cは、Ver11.05が最新バージョンになってました。
PicKeyバージョンアップは、FW17 PRG5.15になりました。
18F8720の書き込みプログラム暴走するはそのまんま。(w
808 :
電脳師:2005/12/12(月) 14:21:49 ID:mhHlY6Ts
>801
漏れのはこうだ!
PIC 08F10904(電(テン)脳(ナインオー)死(4))だ。
2端子型で使い方は
使用法:
電源ーGND間に推奨値1〜50kΩのRと直列に繋ぎ、R側の端子が入出力になります。
直接ゲートやベースを駆動できます、出力範囲やR値は別頁を参照して下さい。
LEDを直接駆動する場合は両端子に並列で接続します。
アナログ入力の場合は使用範囲に対応したRと並列に繋ぎ、端子に電流信号で入力します。
プログラミング:
推奨範囲のRと直列に図11.2.4のように繋ぎライトします。
レベルコンバーターの回路は図11.2.5を参照してください。
データーRAMの読み出し:
プログラミング項にあるコマンドを送ると通常出力でRS232フォーマットで出力されます、
プログラミング時のようにレベルコンバーターを介す必要はありません。
注意:
使用の際、パワーON時に11.2.12のようなプログラミング開始コマンドが入力されると
プログラミングモードになる場合があります。
で、どだ?
>801
電源電圧に影響を与えうるだけの許容損失が要るよね?
0402っていうのは無謀では?
> で、どだ?
おもしろいですね
(注)ほめ頃し
そんな おっかなビックリしながらツッコミしないで
堂々と〜は〜のようで違うんっスが‥
って言いなよ。
812 :
774ワット発電中さん:2005/12/12(月) 20:45:07 ID:MfTCY4B1
お伺いしたいのですが、
PICで抵抗値を測定し
@100〜2000オームのとき 青色LED点灯
A0〜100オーム、200〜∞の時 赤色LED点灯
させることは可能でしょうか?
はい。
814 :
電脳師:2005/12/12(月) 21:20:08 ID:mhHlY6Ts
くゎーんたんっすよ♪
先ほどのPIC08F10904に説明通りパラに特殊LED(これもTLX-10904とか)
っていうNTSCの入力で発光するスグレ物をやればいい。
その場合バーストのシンクロとかも08F10904がやるなら内部にクリトリスタル内蔵しなくちゃな。
おーっ、なかなかですな。( ̄ー ̄)ニヤリッ
>796
PIC出力をトランジスタにつないでエミッタフォロア、
そんで負荷と並列にコンデンサというのはどうだ?
>>805 気にくわないヤツって、どんなところが気にくわないの?
書き込もうとしても それより先に回答をしてしまうから とか?
そいつが的外れな解凍をして一方的に終了宣言するから
他の有益な回答が得られないってことかな
821 :
774ワット発電中さん:2005/12/13(火) 05:07:21 ID:ZTCv+uzx
>>797氏
>>799氏
>>818氏
レスありがとうございます。
まだまだ勉強不足みたいで、理解できてない
部分もありますが、参考にさせていただき、
頑張ってみます。
>>799氏 こだわりというか、実際流れるだけなら
意味ないなあと思いました。
某ショップでスーパーナイトライダーキットなるものを購入
し、作ってみたらただ光って流れるだけだったので
これは違うだろうという事でPICなら出来るかなと
始めてみました。
822 :
821:2005/12/13(火) 05:12:53 ID:ZTCv+uzx
私は796でした。
おれもフルカラーLEDで遊ぼうと
擬似PWM制御をしらべてたところ
ぐぐればやってるとこ結構あるよ!
>>820 その人が的はずれなか回答をしてると気づいたのなら、
あなたが指摘してあげればいいでしょ。
それもしないで文句言ってる人→820
馬鹿と基地外はスルーするのがかっこいい。
馬鹿と基地外にマジレスするのはかっこわるい。
その人が間違ってると指摘するのは荒れる元。
間違ってる人とは関係なしに真実を書くほうがよい。
間違った人は赤面するけど知った事じゃない。
管理人が間違ってる時などは名指しの方がいいけど。
>>820 の見方が客観的合理性があると思う。
間違いを正すのは望ましいが、教える義務はない。
暴れているのはおおかた高校生か、潜んでいる軽○などの同類。
無視したほうが良い。時間の無駄だしね。
個人的には高慢な教え方してる香具師は好かないね。
>馬鹿と基地外
夜中の3時、4時は普通の人は寝ているのに、その時間に必死に
回答書いてるの・・・ヾ(--;)ぉぃぉぃ・・・病気だと思う?(多分、鬱でしょ)
>>824 文句を言ってるのは私じゃないのですが・・・
しかしこのスレの人たちは自治ネタが好きだね。
スレタイ変えるか?
>829 鬱病患者はインターネツトを使わないほうがいいよ
goto $
fill(goto $), 03FFh - $
>834 オマガナー
>>836 おチンチンびろーん
∩___∩
| ノ ヽ/⌒)
/⌒) (゚) (゚) | .|
/ / ( _●_) ミ/
.( ヽ |∪| /
\ ヽノ /
/ /
| _つ /
| /UJ\ \
| / ) )
∪ ( \
\_)
↑アヒャヒャヒャヒャ
次スレタイトル
【10F206】PIC専用のスレPart6【轟け!】
7だった・・・orz
>ごうおん がう― 0 【▼轟音】
>とどろきわたる大きな音。
>三省堂提供「大辞林 第二版」より
なんだ?がうーって。
軽石≒近藤@日○なの?
最近PIC MLさぱりだね。
野鼠=PIC初心者も最近は出てこないな
次スレタイトル
【10F206】PIC専用のスレPart7【轟け!】
>>841 ごうおん / がうおん
「おん」は同じなので省略して「−」
>>841 は辞書の読み方も分からん池沼
>>PIC初心者
は軽本人だよ。
何とかクッキングとか言って執拗ににブログでネタにしてた。
”初心者は本当に初心者か?”って。
軽は初心者か?というとそうだけどw。
野鼠氏はPICネタ扱わないし。
1.軽が"PIC初心者"の名で投稿
2.レスが付く
3.そのレスに対して軽自身のBlogで"軽石のXXクッキング"と称して難癖つけたり、俺ならこうするとほざいたり。
こんな流れでしょ。
>846-847
本人乙。
必死だな。
>>730 >秋月で28PinのPIC16F57発売。
>I/O 20本・20MHz
>1個200円・10個以上単価170円
コミケのディスプレイ用に
なにかこさえようと思って久しぶりにPICスレきてみたら
こんなのが出てたのか。。。
例の10X10マトリクスLEDがシフトレジスタなしで動かせるのは
大きいな
850 :
774ワット発電中さん:2005/12/15(木) 00:16:37 ID:s7DxY8yd
すみません お尋ねしますが
CCS-CのVer3.173なのですが
16F819などの内部発振周波数の設定を行いたいのですが
setup_oscillator() が無いのようなのです
この場合 どのようにして 設定するのですか??
>>849 >※現在の所、PICプログラマVer.3.5/Ver.4で対応予定はありません。
フラッシュでなくてワンタイムの方に分類されてるし …(´・ω・`)
853 :
電脳師:2005/12/15(木) 12:12:32 ID:w3k8LuYA
何で対応できないんだ?
プログラミングのコマンドコードとかはたいして変わってないが。
もしかしたらプログラムソフトのデバイスIDをイジって騙せば書き込めるかも。
マニアックにHEXで16C57のIDを検索してF57のに書き換えて騙すとか。
プロテクト解除や限定解除するみたいにいけるかな?
854 :
774ワット発電中さん:2005/12/15(木) 12:35:23 ID:JJLrL9ht
>>854 いや別にその手はだいぶ前から既出ですが・・・
大してお金の節約はできないけど、コンパクトに作れるという利点はあるな
話豚切ってスマソ
PICは漏れも使っているが、A/Dの付いたモデルはあっても、D/Aのついたモデルがない。
いや、ないと思う。少なくとも、安く出回っている中にはないようだ。
D/Aの付いたPICが欲しいと思うのは、漏れだけだろうか?
PWMがあるやん。
RCPORTに外付けしてもいいし。
858 :
774ワット発電中さん:2005/12/15(木) 17:11:17 ID:2kvbtfEW
いやD/AよりUSARTが2回路あればな・・・
プログラムによるUSARTは重いから無しな。
上の二人は冷たいので俺が賛同してやるよ。
D/Aほしい〜〜
12bitぐらいがいいな。
ちょっとむりか。
860 :
774ワット発電中さん:2005/12/15(木) 17:30:21 ID:FjCZU6ai
CCPの動作に関しては詳しくないんだけど、D/Aコンバータの代わりになるの?
ラダー抵抗組めば簡単に8bitD/Aができる。
8Pin潰れるのが問題だけど16F877なら余裕で余るだろうし。
USART2つと言わず5つほしい
いま、生まれて初めてCCPの機能についてデータシートを見ているんだが、
Vrefってのが出力できるらしいね。これがD/Aの代わりになるのかな?
864 :
16F877B:2005/12/15(木) 18:42:09 ID:2kvbtfEW
>>863 PIC18Fxxxxシリーズでは、Vrefは4BIT=16段階だな、
使い方によっては、なんとかなるな
865 :
774ワット発電中さん:2005/12/15(木) 20:46:37 ID:HQ1wGqfE
PWMで間に合わないDAってどんな用途よ?
PICを使うような場面限定で。
867 :
774ワット発電中さん:2005/12/15(木) 20:57:02 ID:HQ1wGqfE
>>866 釣り?
どう考えても1bitシリアル通信の方が使える。
デバッグ用のチェックポイントコードをD/Aで出すことでピン1本で
間に合わせるというのがあったな。
PWMの出力を2周期でアナログ定常値に収束させる回路ある?
2周期
>>870 PICでパルス幅計測+ラダーDAC出力(w
いっそ16pin使ったラダー抵抗で16bitD/Aを作るという手も。
8bit+8bitの両方出力完了を知らせるのにさらに1pinいる&精度があるのかは知らないけど。
パルス幅、アナログ積分してサンプルホールド。
1周期でいけると思うんだが。
>>869 シリアル通信でレジスタの中身吐く方が確実
PWMって、アナログ電圧出すために使うの?
知らなかった! やり方もちょっと考えないと分からない。
なんとかなっても、安価な回路でシンプルで精度が良くて、
かつまたスピードが速いという条件でも大丈夫?
>874
うは、そうだった。
こんどやってみよう。
879 :
16F877B:2005/12/16(金) 01:21:55 ID:xQHm8Xvd
単独のIC付ければいいから簡単ってのはちょっと違うだろ。
安くなきゃ。PICにD/A内蔵するのが一番。
PSoC
882 :
16F877B:2005/12/16(金) 08:30:50 ID:xQHm8Xvd
無い物ねだりだな、しかしDAとUSART2回路はほすぃな
>>881 確かにPSoCだと、D/A4チャンネルというのもできるけどな。
PICにPSoCを外付け?
>>874 出力が上下するじゃない。それでいいならローパスフィルタとあまり変わらないよな。
結局デジタル値からPWMじゃないDACに出し直すしかないのかと。
885 :
16F877B:2005/12/16(金) 10:05:38 ID:xQHm8Xvd
外部のICでアナログ積分するなら、外部にDACも変わらんな
結局、DACが無いPICは全く使い物にならないクズってこと?
PWMをインダクタに通すとどうなりますか?
>>884 失礼、サンプルホールド付きか。
パルスのHi期間に比例なら、立ち上がりで積分クリア、開始、
立ち下がりでサンプル→出力ホールドにすればいいな。
積分値はそのまま外に出さないでサンプルホールド値だけ出す、と。
>889
逆回転したり花火のようにはじけたりするのキボン。
>889
GP6本で10個を制御する方法と
ボンヤリと残像を残して流れを表現する手法を
鼻高々に語っていただこうか。
892 :
889:2005/12/16(金) 12:42:35 ID:DVqwgPkT
なんだ。
GP3をローサイド側で使ってないのか・・。
>892の方がしっぽが長いような 気も するね。
次はフルカラーLEDだね。
ごめん。勘違いした。
GP3はクロックかINかどっちかにしか使えないPINだった。
RA4なんかのオープンドレインと勘違い。
10個じゃなくて12個なんか
>>881 確かにPSoCは優れているね。でも、価格的にはPICより明らかに高い。
お互いに得意な分野で使い分けるのが良いよ。DAがどうしても欲しい
という今話題のケースは、どっちかというとPICには特殊だから。
今考えたら5本IOがあったら最大20個いけるんか
制御可能個数=m×n×2個
(ただしIOピン数=m+nを満足する事)
が限界でしょう。
つまり
5本で12個
6本で18個
7本で24個
74165を接続してシリパラ変換とかすれば無限に拡大可能だが、
リフレッシュレートが落ちる。
899 :
電脳師:2005/12/16(金) 13:44:03 ID:6ZG3p1fm
今の話題はLED制御に移っているのか、失礼。
>>897 どうすれば20個いけるの?
>>898 んで、M×N×2の、「2」ってどういうこと? つまり、同じコモンに
逆接続するってこと?これだと、両方を同時に点灯や消灯は出来ないわけ
だが……。確かに他のも完全に別々のコントロールは無理だけど。
m側Hiでn側Loのフェーズと
m側Loでn側Hiのフェーズを
使い分ければよい。
オープンドレインじゃなくて
ソースもシンクも出来るんだから。
パッケージのトータルの許容電流に
注意しようね。
>892 ぶぅおおおおおおんという加速音がきになる
>>901 なるほど、高速で制御すれば良いってことね。
しかし、5PINで20個というのはわからん。
904 :
889:2005/12/16(金) 14:16:51 ID:DVqwgPkT
906 :
16F877B:2005/12/16(金) 14:34:02 ID:xQHm8Xvd
って事は、点灯する毎にTRISレジスタでOUT・IN 設定して
HIインピダンスのラインを設定しないと、誤点灯するな
907 :
電脳師:2005/12/16(金) 14:34:51 ID:6ZG3p1fm
>>905 なるほど、そういうやり方なワケね、納得納得。
>899
PICならRAMさえあればそれくらいのFFT処理は楽勝でできると思われ。
AVRではオーディオ帯域をリアルタイムFFT処理してる例もあるし。
910 :
電脳師:2005/12/16(金) 21:56:53 ID:6ZG3p1fm
だったら、上位のなら一応の容量あるからいけますかね? 18F何とかって豚で。
でも何だかそれって、またバンク切り替えとかでサイクルを喰いそな‥
でも豚にそのテのことやって評価実験したい〜っス。
他に、16ビット化したらどんな回りくどいことしなきゃとか
逆にそれくらいやってもあまり落ちないとか。
256点や65536点のチャチいプログラムの例ってのありますかね?
作るのも楽しそうだけど早く評価実験もしたいっすソースのままのありますか?
でも簡単そう、配列数を下げるだけか? ( ̄ー ̄)ニヤリッ
>>892 1つ1つのLEDを見ると確かに残光引いているが、全体ではあまり違いがわからないな。
もう少し長く残光引かせなければならないのかな。
>>902 最初、効果音を出してるか入れていると思ったよ。こってるなあ・・・って電車の音か?
ブレークアウトのプログラム載せてるサイトない?
916 :
774ワット発電中さん:2005/12/17(土) 00:07:05 ID:C9xtxHnR
知っている方がいたら教えてください。
PIC16F88でオシレーターモードの選択(コンフィギュレーションビット&OSCCON)を外部クロック参照に設定して、外部からクロックを与えないと勝手に内部クロックになってしまうのですが、なぜでしょう?
そればかりか、指定したオシレーターモード(OSCCONとコンフィギュレーションビット)でないことをすると(場合による)勝手に内部クロックで動いてしまうのですが、これってもともとそういうものなのですか?
わかる方いたらよろしくお願いします。
917 :
PPPIC:2005/12/17(土) 00:07:56 ID:C9xtxHnR
知っている方がいたら教えてください。
PIC16F88でオシレーターモードの選択(コンフィギュレーションビット&OSCCON)を外部クロック参照に設定して、外部からクロックを与えないと勝手に内部クロックになってしまうのですが、なぜでしょう?
そればかりか、指定したオシレーターモード(OSCCONとコンフィギュレーションビット)でないことをすると(場合による)勝手に内部クロックで動いてしまうのですが、これってもともとそういうものなのですか?
わかる方いたらよろしくお願いします。
今、PICを使った装置を設計しているんだが、8ピンより大きなPICを使うのは
今回が初めて。その中で、スイッチが44個ほどあるんだけど、これをマトリックス
でやろうと考えていた。そうすると、7×7で14ピンは要ると思っていたが、上記の
LEDの話で、10ピンあれば足りることに気付いた。PICは入力と出力がリアルタ
イムに切り替えられるからこんなことが出来るんだね。早く気付いて良かった。
ん? 「6本」かける 2の「3乗」本 = 48本だよ。
6+3=9本で良いんじゃない?
>>919 おれ勘違いしているのかな? 君の理論が分からない。ちなみに、LEDは逆接続
が出来るが、スイッチは出来ないので、N(N−1)/2で計算したんだけど?
>>920 はげしくスマソ 頭の中に 74HC138が居た orz
おれも今日のやり取りはちょっと得した気分
こんなん考えさせられる機会なかったもんなー
>920
つ スイッチ+ダイオード
924 :
889:2005/12/17(土) 08:41:37 ID:1pju2ZY7
的外れな誘導ワラタ
927 :
774ワット発電中さん:2005/12/17(土) 11:19:23 ID:g5Xbr1jK
久々のまともな書き込み乙
とりあえず同じの作って練習してから
色々試そう
もっと早く点滅させれば眼の残像現象で星型に見えるんだが
星型に見せるだけならPICはいらないかw
赤と緑が追っかけっこするとか。w
>>929 回路図にも一言「LED1〜10は同一色(Vf)のものがいい」と書いてあったけど、
微妙にR変えるとかしておかないと同一色でないと流れるように見せるのは難しいぽ。
>>931 そのへんはどうせPWMでどらいぶしているんだからプログラムで微調整できないか?
今回のアプリケーションノート TB029 を7セグメントLEDに使えたらポート節約ができて助かるのだが、
7セグメントLEDは コモン接続 だから使えないんだよな。
LEDチカチカに関しては、こんなところか。
(1)時分割
・大電流(20mA〜)で駆動するLEDを複数個制御する場合、電源容量範囲内に納まる
個数のLEDをms単位で順次切り替える。
・切り替えのとき数ms程度の無点灯期間を設けると電源に対する過負荷を防ぐことができる。
(2)残像(残光)現象を利用したダイナミック点灯
・複数桁の7セグメントLEDを点灯可。
・時分割と組み合わせて、トランジスタを使わずにポート電流範囲内で7セグメントLEDを点灯可。
(3)PWMによるフルカラーLED制御
・各色の輝度をPWMで制御。
・時分割と組み合わせて、大体30ms(RGB各色点灯時間10ms)以内に3色切り替えれば色は混ざって見える
(4)ポート数以上のLEDを制御する
・今回のアプリケーションノート TB029
>>933 7セグLEDならそれ自体が大きいから、
シフトレジスタと組んでポート節約ってところかな?
どうせトランジスタとかもいるんだから多少付加回路増えても・・って乱暴?
マトリックスで7segやろうとしたら流石に暗くなってしまう気もするし。
数字しか出さないならデコーダーつけちゃう手もあるな。
PIC使っているのにもったない状態になるが。
PIC16F57をデコーダとして使うのもいいかもな。
@170円は高いか。
仮に7segがコモンじゃなくて上の方法で個別に接続出来たとしよう。
1桁ならなんとか制御出来るだろうが、複数桁あったら破綻するぞな。
937 :
774ワット発電中さん:2005/12/17(土) 16:45:27 ID:kGOlgwep
>>936 桁ごとにPICで制御。それを大きいPICで通信して制御。
ハイアラーキー構造で制御するんではまいか?
秋月のPICプログラマ3.5ってUSB変換器はつかえないのでしょうか?
(市販のusb変換機はつかえませんでした。)今ノートパソコンを使っているのですがDーSUB9ピンがついていないので
秋月のキットについてきた線はつかえません。どうすればいいんでしょうか?
俺はVer4を刺した状態だが、秋のUSB←→232ケーブルで使えてる。
↑やっぱり秋月のUSBじゃないとだめなんですね。
>936 ご指摘のとおり、一桁でしか使えない技ですな。
クルマ、バイクや自転車のシフト表示とかPCの自己診断結果表示には使えるだろ。
昔、ブリジストンのスポーツ車についてたデジメモとかいうギア表示器なんか
まさにLEDランプを7つ、8の字の文字枠にはめていたはず。
877みたいにPORTが3つあるヤシなら3桁も何とかなるか・・・?
>>941 コモンになっていないなら、4セグメントずつ程度なら普通に
8ピンで4x4により2桁16セグメントの表示は充分可能じゃないの?
12ピンあれば4x8で4桁32セグメント可能だし。
ただし1桁ずつのダイナミック点灯に比べて半分の明るさになるけど。
コモンになってない7セグのLEDってあるの?
TB029を開いてみたが、8ピンで56素子ドライブできるんだな。
16F648Aまたは16F88を使うとして、I/Oは16ピンあるわな。
TB029の場合 : 8 ピン(56素子) = 8素子 x 7桁 (TB029の場合)
ダイナミック点灯の場合: 15 ピン = 8素子 + 7(桁制御)
表示部デコード部のソースコードの大きさはおそらく TB029>ダイナミック点灯 だろう。
ぐはっ、ツボにはまった。
高輝度LEDを5mAぐらいで駆動、2素子並列にして1桁を作れば文字らしく見えるかね。
7桁LED表示機をブレッドボードで作ってみるか。
TB029のサンプル間違ってる?
Led0,Led7のパラメーターが同じ。
>>946 ほんとうだ。
LED7〜11はLED0〜4をコピペしたのかな。
回路とリストのビットの対応もいまいち不明だし、
16C54って書いてあるのにリストではPORTAのビット5、6を使ってるみたいだし。
コモンになってない7セグのLEDってあるの?
949 :
774ワット発電中さん:2005/12/18(日) 03:25:19 ID:7zTyga7r
この大きな2足歩行ロボットをまさかPICひとつで制御?
清盛なのになんで源氏の兜かぶってるの?
952 :
774ワット発電中さん:2005/12/18(日) 09:54:52 ID:9KhfSX/o
>>951 鋭い突っ込みw
清盛は平家だっけかw
アゲハの旗でも持たせれば良いのに。
ヤッパシ、電気とか知っている人は歴史にちょっと疎かったりとかするんだろうか。
953 :
電脳師:2005/12/18(日) 10:31:08 ID:hN8pqV+E
数十個のLEDをマトリクスでドライブするのまでは簡単だけど。
それをどんなパターンで光らせるかかが腕(ネタ)の見せどころだった。
初めはデモで彗星みたいに走らせたけど、他にどんなのにしたいかって生徒に挙げさせたら
みんなパチンコ屋のネオンの光り方をこぞって提案してきた。
そっか、ネオン屋はパターン屋でもあるからそのテがあったとオモタ。
あれのパターン集ってのは存在するのかな?
でも漏れが「おっ!」って思ったのは四谷駅だか上智大んとこのフロム・エーの
看板のネオンがちと素晴らしく見えた。
あれくらいなら豚でも楽勝だよな。
>952
アネハの旗カコイイ
> 電気とか知っている人は歴史にちょっと疎かったり
理科と社会だからな。ウヨとサヨぐらい違うかも。
ところが、同じ理科の範疇なのにたぶん間違えてる。
> 彗星みたいに走らせたけど
956 :
953:2005/12/18(日) 13:12:36 ID:hN8pqV+E
↑そーゆーセコい杓子定規のばっかだから漏れは電気からアシ洗った
キヨモリを一瞬「ヒキコモリ」と読んでしまった
ヒキコモリなのになんで鎧兜???って(´A')
>>956 そんなに悔しがるなよw
足洗ったとかいいつつ、電脳師かい?
こんな板に出入りして、足は洗っても頭はどっぷりかい?
電脳師って電気関係の会社でリストラされたヤシだったのか。w
960 :
953:2005/12/18(日) 14:40:26 ID:hN8pqV+E
会社ってとこに行ったことはありませんが何か?
いや別に
採用してもらえなかったって事?
963 :
953:2005/12/18(日) 15:11:58 ID:hN8pqV+E
アシ洗ったから
>>945 5回読み返したけど、意味がわかんない・・・・
電脳師を構っちゃだめだってば
945はtb029とは関係ないことをしてるように見えるな
>>945 このアプリケーションノートのやり方だと一度に点灯できるのは1素子っぽい。
そうなると56素子点灯となるとかなり暗くなるぞ。
同時点灯数が少ないとわかっている用途ならいけるが。
それと、LEDの保護を考えると、駆動電圧は4V未満が望ましい。
逆方向耐圧4-5VのLED多いし。まあ5Vくらいではすぐに壊れることはないだろうけど。
968 :
774ワット発電中さん:2005/12/18(日) 17:59:32 ID:sfcAv9Gl
目視センサー付けて、それだけ点灯する
高輝度LEDを200個と部品を買ってきた。
転用を見込んで、7素子2桁のモジュールを4個作るから少々時間がかかる。
出来たらうpする。
LEDの逆耐圧ってそんなに低かったんか
> LEDの保護を考えると、駆動電圧は4V未満が望ましい。
LEDをしっかりドライブすれば、電圧は下がるわね。
24mA流せます、なおかつ5V出てます、じゃないんだし。
ついでに言えば、逆接してるんだから、Vf以上はかからないわね。
TB029との関係はよく分からないけど。
やっつけ回路図ぐらい上げてくれてもいいのに・・・・と催促してみるテスト。
ところで回路図書いてみて思ったけどこれVcc=5Vだったら
Vf=2VのLED使ったら非点灯のつもりのLEDにも微妙に電流流れるのね
>>969 ガンガレ!
でも俺的には、出力を8点用意すれば普通の7セグも使えるんじゃないかと思う。
7セグ表示器内の各セグメントLEDをa〜gとすると、
出力 0 1 2 3 4 5 6 7
1桁目 コモン a b c d e f g
2桁目 a コモン b c d e f g
3桁目 a b コモン c d e f g
: :
: :
8桁目 a b c d e f g コモン
って感じで接続すれば、
>>904と同じ接続になると思うけど、どうだろう?
>973
その方法だと今話題の逆電圧をVfでクランプするのは期待できないな。
PICに直結するなら電源電圧を落としたほうがよさげ。
あと、桁ごとにPORTに出力するデータがビット列が変わるから、
桁の数だけテーブルを用意するか、一々ローテートしなければならない。
僅かな手間だがちらつきの原因になるかもしれない。
あのさ、思うんだが、ちょうど話の途中で次スレに行っちゃいそうな気がするんだ。
980行く前に新スレ移行して、こっちは誘導レス付けて遊ばせておかないか?
大賛成。
でも漏れはいまスレ立て蹴られてるので誰かよろ。
痔スレでは【しゃぶれ】をとってね。
このご時世では、いやらしい響きがあるから。
同じく立てられない。
次スレは『【10F206】PIC専用のスレPart7【轟け!】』とかを希望
>>971 おおそうだった、必ず逆接続LEDがあるような結線になっているのだな。
漏れも立てられなかった・・・
>>981 乙です。
dat落ちとかのチェックもばっちりですね。
こちらは数日掛けて埋めましょうか。
>>474 アノードコモンの7セグとカソードコモンの7セグを並列につなげばいいじゃない
984 :
973:2005/12/18(日) 22:27:29 ID:bWVq4Hb4
>>974 >その方法だと今話題の逆電圧をVfでクランプするのは期待できないな。
展開図描けばわかると思うけど、TB029と同じになりますよ。(8桁使用時)
ちなみにコモンの方向は全部同じ物で。
ちらつくとか、暗いとかの話は、ここじゃ考えてないです。
『8pin使用時56点LEDが使える』みたいな事を書いたMicrochip社も
その辺はわかってると思うけど・・・
>>945 =
>>969 と思ってるんで、そのうちわかるんじゃない?
(違ってたらゴメン)
>>ちなみにコモンの方向は全部同じ物で。
あ、そっか
スレたて乙。
7Seg8個でややこしかったら、仮に3Segを4つと考えれば、
TB029の回路そのものだね。
Tips ‘n Tricks のほうは微妙に回路が違うけど
こっちの方は理解できないな。
あ、8pinで56個駆動するとき必ず1/56時分割になるかと思ったら7個までは同時点灯できるんか
実は結構明るくできるやん
>>987 そか、ピンのHi-Zも使うんだから、各瞬間では普通のダイナミック点灯と同じことができるね。
ただ、7つ同時点灯時、ピンの1つにはLED7つ分の電流が流れるぞ・・・・
電流のMAXを25mAにしたら1つあたり3.6mAしかない。
それと、ピンからでる抵抗の電圧降下が電流に依存しますので、
コモン側につながる抵抗の電圧降下分は点灯セグメント数に依存します。
たとえば、7個同時点灯でピン電流25mAMaxを考えた場合、
Vcc=0.025*R+Vf+0.025/7*Rとなるので、
Vcc=5V、Vf=2VとするとR=105Ωとなる。7seg全部点灯時3.6mA、
1セグメント点灯時14mAと相当なバラツキが出てしまう。
徹底的にこっちのスレ使い切るのな・・・向こうでレスしたの消しといてくれ orz
抵抗をコモンにせずにLED1個に1個付ければ・・・
ハンダ付け大変?
>>990 それやったら同時点灯できる組み合わせが制限されるので、
プログラムがなかなか面倒かも。
ポートの8つのピンすべてに抵抗とダイオードを並列にしたやつをポートがカソードになるように挿入。
電流少なくても、けっこう光って見えるよ。特に赤いLEDなら
上の映像でもあったけど、周囲が暗ければ充分かも。
すくなくとも遊びでやる分にはね。
各ポートにTr付けると逆方向ドライブが出来ないから
今回の回路構成のメリット出てこないんですよね?
そうです。
Trをトーテムポール接続にするか>992のようにしましょう
あ、ダメだ。
トーテムポール接続だとハイインピーダンスに出来ないか。
コモン電流を稼ぐ方法。カソードコモン。未実験。
等幅フォントで見るか、メモ帳にコピペして見てください。
各ピン┬∧∧∧┬7Seg
│ │
││←─┘
└┤ 2SA1015等
├─┐
│
─┴─
///
997
>>995 トーテムポールで両方のTrがOFFになるようにすれば良いんでない?
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。