秋月のPIC16シリーズDIP品限定ピン数別評価(先頭のvは値下げ,-は維持)'2010年4月24日更新版 v40ピンは-◎16F887 \200 v28ピンは◎16F886 \190 ADC有,eCCP/CCP有,mSSP有,USART有,8Kw,内蔵31K-8MHzとフルサポート 新しめのチップで内蔵モジュールも多,大きささえ許せば20,18ピンよりこちらを 20ピンはF690のバリエーションモデル多.価格差が小さいからF690か,OPアンプのF785.スキルあるなら18F14K50も検討しては? -◎16F690 \210 ADC有,eCCP有,eUSART有,SSP有,4Kw,内蔵31K-8MHzとバッチリ -○16F689 \180 F690からeCCP機能削られた -×16F687 \180 さらにF689を2Kwと半分に -△16F677 \170 さらにF687からeUSARTも削られた -○16F685 \190 F690からSSP&eUSART機能が削られた -◎16F785 \180 ADC有,CCP有,2Kw,内蔵31K-8MHz,OPアンプ搭載ってのはいいね 18ピンは種類は多いけど選択の幅は狭い。F88かいっそ20pinにするとか v×16F84A \250 機能無,1Kw,いまさら不要 10個以上なら1個¥220 -△16F648A \180 CCP有,USART有,4Kw,内蔵4MHz,同じ値下組のF819と比較するとキツイ -△16F628A \160 F648Aの2Kw版,売りが値段だけだと厳しいかな -×16F627A \160 F648Aの1Kw版,売りの低コストで628Aと並ばれると・・・ v◎16F88 \200 ADC有,CCP有,SSP有,USART有,4Kw,内蔵31K-8MHzとGood -○16F87 \200 F88にADC無い,下のF819と比較するとADCで負けフラッシュ4Kwで勝ちダケド -○16F819 \180 ADC有,CCP有,SSP有,2Kw,内蔵31K-8MHz,値下げで価値が急上昇! -×16F818 \200 F819の1Kw版,上位のF819の値下げで不要に -◎16F716 \110 ADC有,eCCP有,2Kw,内蔵CLK無,EEPROM無だけど値段安い,ADC8bit注意 14ピンはF688だね -◎16F688 \160 ADC有,eUSART有,4Kw,内蔵31K-8MHz -△16F676 \140 ADC有,1Kw,内蔵4MHz 8ピンはF683だと思っていたがF615も\100にしてはなかなか良い -◎12F683 \150 ADC有,CCP有,2Kw,内蔵31K-8MHz,8ピンとしては多機能 -○12F675 \120/130 ADC有,1Kw,内蔵4MHz ,環境によってはE/P版 -○12F629 \80 675のADC無(機能無しってこと),この値段ならチョット使うに便利 -△12F635 \120/130 機能無し,1Kw,内蔵31K-8MHz,環境によってはE/P版 -◎12F615 \100 ADC有,eCCP有,1kw,内蔵4Mor8MHz,EEPROM無し -×12F609 \100 F615からADC,eCCP機能省かれてる (参考)機能無,EEPROM無,12bitコア プログラム組む上で制限多し -△16F57 \100 28ピン,2Kw,内蔵CLK無,安くて多くのI/O欲しいなら -△16F54 \60 18ピン,0.5Kw,内蔵CLK無,安いI/O欲しいなら -△10F200 \70 DIP8ピン,1/4Kw,内蔵4MHz,米粒PICのデバッグ用 マークの意味 ◎お勧め、用途決まっていないならこれ買っとけ ○内蔵モジュール減ってるけど、その分値段も安くなってるから、まあまあ △内蔵モジュール大幅に減ってる、\10でも安くしたいなら、どうぞ ×ソースを変更できない等の理由がないなら、選択する必要なし 自分で、プラグラムもハードも作れる人のためのリスト。 そもそも、教科書にのってるのとか他の方の作品とかを作るだけなら 指名買いするしかないのだから お勧め度は意味がない。
PICの買い置きが消化できなくて887は1回しか使った事ない。 16F877A,876-20,876Aが余っている。 877AのA/Dは複数チャネルが使いにくい。オンチップオシレータもないのが痛い。
delay_ms(100); という感じでウエイトを入れているときに 何かしらの操作や信号で待ちをキャンセルさせる場合の定石ってありますか? 割り込みでフラグを立ててウエイト後に確認となっているのを改良したいので宜しくお願いします。
お、俺の好きな886ちゃんはさらに下がってるのか
>>5 の訂正
誤り
v40ピンは-◎16F887 \200
v28ピンは◎16F886 \190
正
-40ピンは-◎16F887 \200
-28ピンは◎16F886 \190
void delay_ms2(unsigned int count) { while(count--) { if(flag == 1) { return; } delay_ms(1); } } こんなんでいいんじゃね?
>>11 俺ならreturnの代わりにbreak使うかな
好みの問題だけどw
while文のあとに別の命令があったら… まあ、好みの問題だろうなw
前スレ988 >やっとしちめんどくせえPIC覚えたぜってところに >簡単にできちゃうよーんがやって来たらむかつくわな Cで使うなら、今からアルデーノのC言語を覚えないといけないのは、 めんどくさいですよね。LCD用の関数なども用意されているみたいだけど、 CCSのC + { 12F683 | 16F887 | 16F886 | 16F88 }で、オールマイティに使えるわけだし。 「なんで今さらそんなもん使わにゃならんの?」という感じですよね。
17 :
774ワット発電中さん :2010/04/28(水) 14:41:39 ID:LC7pOmIe
100バイトとかバッファで使う長い配列を確保したいような場合って どうすればよいの?すぐメモリ不足になっちゃって、どうにもならんです。 1文字ずつ即解析するのも冗長だし...
>>17 メモリが多いPICを使うか
メモリを使わないアルゴリズムを考える
PIC24fの5.5-V tolerantピンは スイッチの入力に使えないんでしょうか やってみたけど反応なし・・・
>>17 学習リモコンを16F886で作ったとき
シリアルEEPROMのページライトモードを使って高速書き込みするためのバッファを
128バイトをRAM BANK2とBANK3に64バイトずつ2面に持って間接アドレスで使った。
bankisel FSR INDF
この辺、駆使すれば意外といける。
まぁ、RAMの多いマイコンを使った方が楽だからお好みで。
>>20 EEPROMて、書き込み寿命って以外に平気?
1秒で1000バイトくらいの情報扱う予定だから、やっぱ厳しいかな?
今なんとか16F873で考えてるけど素直に24Fに代えようかな
>>21 温度にもよるけど100万回は保証あるはず。データシート嫁。
高温だと一桁落ちる。
常に書き換えるなら、すぐ寿命になるよ。
世の中には、SPIでつかえるシリアルSRAMというものもあるでよう。
お、IDに割り込みかかったw
>>23 遅いわ、揮発だわ、SRAMのメリットがないww
そんなの使うなら内蔵RAMの多いマイコンを選ぶ。
>>23 おお、ありがとう、こんなものもあるのですね
んーでもまた勉強面倒だけど素直に24F使うことにします
つーか、素直にPICやめれ。AVRがいいぞ。
>>27 >>16 を参照されたい。
PICとH8というのが、定番だと思う。今さらAVRやらなくても。
それはどうかな
31 :
774ワット発電中さん :2010/04/29(木) 23:42:14 ID:7fxOpXCL
明智君
AVRやるならアルデーノで良いだろ XレジスタのYビットをZしろ、みたいなの隠してくれてるから 複雑なことしなければすげえ簡単だよ 今からはじめるならこっち 性能目いっぱい使おうと思うならAVR勉強するのと変わらんから PIC知ってるならPICのまま移行しないほうがいい H8に行くってのもありだけど AVRにまず行きましょうはちょっと違うと思う(海外に住んでりゃ別だろうけど) でもアルディーノのC言語とかいってるの馬鹿だろ あれmain()とくっついてコンパイルされるだけアルデーノのCなんてものはない 用意されてる関数とかチップの特有の事覚えなくちゃならないって意味かもしれんけど アルデーノってそこを易しく作ってあるのが売りなのに PIC特有の事覚えられたのにあれをめんどくさいとかちょっとどうかと思う 「簡単すぎてガキのお遊びですよね」みたいな批判ならわかるけど
PICが理解できてればAVRは一瞬で使えるようになる 英語やってからフランス語やると、馬鹿みたいに簡単なのと同じ
ドイツ語だろ
35 :
774ワット発電中さん :2010/04/30(金) 12:05:39 ID:wstnlp/1
イッヒ フンバルト デル ウンコ ハイル! フンデルベン! ミーデルベン! ヘーヒルト ベンデル! フンバルト ヘーデル! ベンダシタイナー! フンデルト モレル ケッツカラデルド! フンベン モルゲン! モーデルワ イッヒ アーデル ゲーベン! ワーデル!
アルデーノもいつまで続くかわからんしな。やりたい奴は好きにやれば 良いけど,せっせと宣伝するほどのものではない。
>>32 プログラムすることだけが目的じゃないからねぇ
何、おびえてんだよ、なんだよいつまで続くかわからんって、そんなのPICでも一緒だろうが 利点を述べただけなのに、それが目的じゃないってのもおかしいだろ つかさ心配すんなって過去の資産とか考えるとまだまだPICの優位性は変わらんて 間違ったネガティブキャンペーン言い立てるほうが、実際アルデーノさわったやつが 「あれ?ゲロ簡単じゃねコレ」って思われて逆効果じゃん Windowsが出たときのDOSの人たちみたいな反応だぞそれ 初学者がアルデーノから入ったとしても(これはお勧め) 結局やりたいことがあるやつはPICにやって来るって LEDピカピカで大満足はアルデーノから動かないかもしれんけど
まぁ、バカっぽくて宣伝にもなってないから安心しろ。
アルデーノは設定とか機能とか小難しい部分を 自動生成してくれる 当然生成されたコードは冗長的になってしまうので マイコンの究極スピードや省エネ省メモリとかを発揮できない ウィンドウズと一緒で便利なんだけど いらないことや条件判断ばっかりやってるので遅い 一番困るのは何やってるか分かんないので厳密な 時間やタイミングの管理がムリ 以上仕様をざっと見の予想なw
Arduinoは、PICやAVRその他マイコンのどれがベストか?等とは関係ないとこを目指してる ましてやAVR以外のマイコン使い向けのAVR入門として用意されているプラットホームではない まぁ背景について調べてみなよ
42 :
774ワット発電中さん :2010/04/30(金) 23:34:27 ID:ld0ASvps
アーデュイーノじゃないの?軽石さん。トングルじゃなくてドングルだよ。パスコンは0.1uFだけじゃないよ。
Arduinoって基板の大きさは1種類だけなの? 小型に組みたい人とかはどうしてるんだろ?
>>43 少しは調べろよw
バリエーションは多数ある小型のやつとか(シリアル・USB変換チップでない)USB付のやつとか様々
スレ違いが続いているが…
PICで良ければPICで良いしArduinoでプロトタイプ作ってそのまま完成品でOKならそれも良しと
要は適材適所
Arduino Pro miniは小さいよ
>>38 まっ,個人的に惚れたのはわかるが、惚気話聞かされても「ごちそうさま」
という以上何も言いようが無いようなもんだからな。
例えば俺の愛用マイコンではPCへの開発環境のインストールすら不要にして
いるんでちょっと動かして実験したりするのはとっても楽なんだよなぁ
(一応実話)
でも、そんな話を聞かされても>38の耳には入らないだろうし,
聞けば聞いたで欠点を指摘したがるだろ?そんなもんだ。
聞いてほしいならやり方と言いようというものがあるというくらいのことは
覚えておこうな。
惚れたとかどっちがお気に入りとかそういうチップに対する感情じゃなくてさ 人間に対するものだよ PICやってる人の一部のへんなaruduinoへの嫉妬からのピントはずれな批判発言見て 最初は「やめろよ、おい」ってわらっただけだよ さいしょは、その程度だったのに、わかってもらえなくて売り言葉に買い言葉で長々と書いたけど 言いたい事わかるよな? だめか? おまえの愛用ってPICのほうなの?arduinoのほうなの? 「PCへの開発環境のインストールすら不要に"している"」って書いてあるからPICだと思うけど (aruduinoはしておかなくてももともとそうだしね JAVAだから落としてきてUSBメモリに入れておけば動くもの) だったらぜひどっかで公開しなよ PICだってこんなことできるんだぜ、こんなことやってるんだぜって
MPASMWIN.EXEとPICkit2フォルダをUSBメモリに突っ込んであるだけだったりして
49 :
774ワット発電中さん :2010/05/02(日) 10:54:33 ID:wmcGP+Sf
>>47 >aruduinoへの嫉妬からのピントはずれな批判発言
ほらほら,そんな具合だから駄目なんだって。それを逆の立場から
読んだら素直に「あぁそうか・・」なんて思ってもらえないだろう?
そんな調子じゃどんなに正しい(と思われる)事を叫んでも誰も
聞いてもらえないだろう?
>だめか?
駄目だと思うよ。ここがarduinoのスレだったらまだしも。
発言する場所によってスタンスと物の言い様っていうものを考えないと
arduinoに対するイメージを悪くする事にしかならないだろうね。
だーかーらー arduinoのイメージとか悪くなっても平気だって 逆の立場とかないって 俺がアルデュイーノマンセーの立場って言うのが君の勘違いだし 俺の発言よく読んでみ あれだろ、右よりの人には中道からの批判が敵に見える現象 どういえばいい? マイコンなんて適材適所ですよ、「覚えなおすの大変ですよね」とかトンチンカンなあおりは嫉妬に見えますよ みたいな言い方?「あぁそうか」って思った?
うーん・・だから,そういう言い方でarduinoのことを紹介してもしょうがない んでは?自分の主張を分かってほしいならそれなりの表現をとらないと。 特にこういう,特定のマイコン向けのスレで他のものを放り込むからにはね。 自分でも売り言葉に買い言葉って言ってるけど、そういうのは結局反感を 買うだけ。イメージが悪くなるというのは,白紙の状態で評価されなく なるということ.>51にとってはどうでもいいだけろうけど,arduinoの 良いところを評価している人からは>51は邪魔な存在,いない方が 良い存在という扱いになりかねんよ。 >51がそれを意図してそういう発言を繰り返しているというなら別だけど 違うのだろ?
ここはPIC専用のスレ
アルデュイーノの紹介とかもしてない そういう風に取られる発言があっても主目的でない もともとはさ前スレで アル(めんどくせーので略す)のこと質問した人が居て答えた人が居て その質問者の質問の仕方がちょっとdisってる発言だったんだよ で、笑った(これが悪かったのはわかってるすまん) で、スレが変わって終わったと思ってたらご丁寧に俺の発言の一部分だけとりだして「はぁ?」って感じの反論されてて まあそんなん感じだよ つかもうやめね?何も建設的でもないし
55 :
774ワット発電中さん :2010/05/02(日) 13:40:08 ID:5+IqlprQ
プロテクト解除方法教えろや!
56 :
774ワット発電中さん :2010/05/02(日) 13:44:54 ID:5+IqlprQ
どなたか心のお美しい方、PICのプロテクト解除の方法をおながいします さもないとこのスレにお長居して鬼のような書き込みでとんでもないことになってしまいます
dsPicって存在価値あるの? なにもかも中途半端な気がする どうなのよ
>>56 AKI-PICライターV4にPICをセットしてイレースボタンをクリックする
>>57 何もかも中途半端な用途にジャストフィット
>56 プロテクトを解除してプログラムを読み出し、コピーを作りたいということでしょうか? ならばまず無理でしょう。セキュリティ用途にも使うことを考えれば信用にかかわるので メーカーもきちんと検証しているでしょう。 そもそもプロテクトを解除行為は違法では?
>>19 遅くなってすまそ。
スイッチってことは、デジタルで入出力したいってことだよね。
PIC24FシリーズをDIOピントして使いたい場合には、単純な
LATやPORTレジスタをいじるだけじゃなくて、ピンペリフェラルの
設定とA/Dのピン設定をいじる必要があるよ。
データシート(型番の英語版)にそこらへんのこと書いてあるから
目を通すことをオススメする。l
63 :
のうし :2010/05/03(月) 08:10:51 ID:h9Y8dNoe
他スレの自分のレスを紹介して、しかもたいしたネタじゃないのを晒して 楽しいんですか? のうしさん、答えて下さい。どうなんですか! 答えるまで居座りますよ。
65 :
774ワット発電中さん :2010/05/04(火) 00:14:23 ID:DbXWgXgl
>64の書き込みより大したことあると思うけど。
幼稚園生かおまえら
67 :
774ワット発電中さん :2010/05/04(火) 01:04:14 ID:DbXWgXgl
幼稚園児と書けと。
秋月の100円基板があるから、俺はこれから64pinPIC32でやる チップ自体も100円違わない
>>8 >>11 PICやマイコンの初心者本って全部こういうシングルタスク思考だよな
だからラダーでやれ
>>69 OS載せないで擬似的にマルチタスク動作をさせるのは、それなりに大変なので
初心者対象には向かないでしょ。
割り込みが一つ入るだけの状態は、十分にシングルタスク的だと思うけどな 各種待機状態を抜けだせないループで書くことに、 本能的に嫌悪感を持たないと
72 :
774ワット発電中さん :2010/05/04(火) 12:36:29 ID:Na9jVj3J
ラダーって連枝のこと?
PICってラダーロジック向きなのか? フローチャートのほうが楽じゃない?
>>69 >>11 でいいんじゃないの?
俺もこんな書き方だけどもっと良い書き方があったら教えてくれよ
>>75 C言語の基本よろしく、メインは全くノーウェイトでぐるぐる回ってて
1msぐらいのカウンタを割り込みで用意して、それで時間計って判定、処理にタスクを渡す。
とかいう処理が理想で、その場で待つんじゃねーっていう話なんじゃないかと思ったが
そーすると、PICでそれをやる意義も、ラダーが引き合いに出てくる意味もわからんな…。
>>11 で目的が達成するようなのしか作ってないのか
ウエイト中に他の処理も入出力も沈黙なんて装置もユーザーもかわいそう
>>77 > ウエイト中に他の処理も入出力も沈黙なんて装置もユーザーもかわいそう
>>11 の方法で困るなら別な方法を使うだけだろ。
目的を達成できれば十分なんだよ。
>>77 自分のセオリーがあるなら説明しろよ
今のところお前さんは口だけの無能だ
BOR機能も当然OFFだ
81 :
774ワット発電中さん :2010/05/05(水) 20:38:57 ID:PnUMdiFn
>>69 マルチタスクにする位なら、PICを複数使う方が良いと思う。
マルチタスクというとOSを連想するから、ステートマシン ステートマシンをきっちり書けると出来ることがかなり広がる
マルチタスク(並列処理)とかステートマシンとか言うなら、 もうFPGAでいいんじゃね? あ、スレチって言われるか・・・
>>77 >11 はある意味最適化されたマルチタスクだろ
何するにも待ち時間が大きいシステムならマルチタスクもありだが
貧弱マイコンでクリティカルな処理にマルチタスクなんざ使わねぇよ
windows があんだけのCPUパワー使って厳密なタイマーウェイト処理が
できないのが良い例
>>85 >>11 が最適化されたマルチタスク?大笑
>>76 見て理解出来なきゃそれまで
わざわざ恥の上塗りせんでもいいのにな
理解出来ない、スキル無いならラダーでやれと言ってる
それでもwaitに拘って作るなら装置もユーザーもかわいそう
メインはスリープ状態にしておいて,割り込みが入って 必要なサービスが出てきたらそのタスクの処理を実行する といっても,スタック操作が満足にできないPICじゃどうしようもないのか
>>86 お前が
>>76 を良く読めw
かわいそうなのはお前の頭だ、かわいそう爺w
そこでAVR 完全なプリエンプティブマルチタスクが作れる
PIC.AVRでの開発案件ってエンベでは結構少なくなってるかな? 昔はあるときはどっときたもんだけれど。
なんで連枝で出来ることを PICだから出来ないっっつってるの? どんだけクソ電子工作止まりなんだよww
本当にPICで開発できる奴は こんな所でクダ撒いてないで 色々作ってるよ
>>85 「ある意味」でもマルチタスクって呼ぶのは不気味だな…。
たしかに flug と count 以外のタスクが無いんだから、その両方見ていれば充分なタスク管理だけどね。
マルチっていう単語があると、突発タスクも管理してないといけない気がしてしまふ。
>>87 スリープもってるような本格的なことはしなくていいんじゃない?
スリープ中にタスクを発行するかわりに、メインループん中でIFでバキバキ分離する程度で。
>>91 たしかにラダーなら勝手にマルチイベントみたいなものが出来るし、コンパイラもあるかもシレンけど
なんでラダーなん? シーケンサー知らないといよいよワカラン言語(?)だと思うんだが…
と思ったことをぶちまけてみる。
>>93 よろしい。解説しよう。
ウェイトと例えばスイッチ割り込み(突発タスク)によるflag変化判定をだな
交互にやってると思えばスワップ無しの超高速マルチタスク
異論は認める
ラダーはアセンブラと同レベルに低級だからなあ 普通に読みにくいしバグるし、あまり積極的なメリットはない それしかないならそれ一択になるが
96 :
774ワット発電中さん :2010/05/07(金) 22:06:01 ID:pg8FnWO6
どうせLチカ止まりなんだから何でもいいじゃん。 軽石はじめ、口ばっかのオサンの巣窟だな。
Lチカっていう略は始めて見たな…。俺だけかもしれんが。 しかし仕事で触る以外、実際に何かさせたいって思いつかないんだよなあ。 でもおもしろいからとりあえず触る。
PICでどこまで何を突き詰めたら使い込んだといえるのやら
>>97 俺も初めて聞くぞ。
KY馬鹿はスルーするのがお約束
仕事で製品の検査機に使ったぜ 887デュアル仕様 豪華ww
おっくれてルー、Lチカ知らないなんて。 PICも保守化傾向だね。知らないじゃなくて、新しいこといち早く取り入れる気概がないのね。
>>101 そう書いてるのは見た事あるが、余りにもバカっぽいから自分では使わんし、
使ってるヤツは可哀想なバカを見るような生暖かい眼で見る事にしている
103 :
774ワット発電中さん :2010/05/08(土) 02:54:12 ID:W3sazteF
>102 加齢臭たっぷりの意固地爺だなw。 化石マイコンとともに眠れ。
>>101 わかる! 覚えたての言葉使いたくなっちゃうことってあるよね
小学生の頃を思い出したよ なつかしいなぁ^^
爺って・・・オレ22なんだが 頭だけじゃなくて臭覚も可哀想なヤツだったのか より一層生暖かい眼で見るよwww
106 :
774ワット発電中さん :2010/05/08(土) 10:11:28 ID:p4WweL5w
ジジイって、自分が華だった時で記憶が止まるよな。
なんか似てるな うちの検査機は886デュアル
108 :
774ワット発電中さん :2010/05/08(土) 11:54:49 ID:lJX2Zluh
>>100 >>107 デュアルってのをオレも検討したことがあるけど
1個で高性能のCPUで全てを処理するか
2個のデュアルで処理するかってどこが分かれ道?
ちなみにオレは外部デバイスとの通信が間に合わないから
デュアルにしようかなと思ったりしたんだが。
安く小さくする、ていうことで、同じ処理をするPIC16F84をクアドラプルしたことがあるが 全部が個々にタイミングもつ仕様だから表示とかがびっみょーにマヌケだった…
>>96-105 すまないがPICと関係のない事でレスを消費するのはやめてくれないか?
I/O本数不足で877duoにしたことある。
112 :
774ワット発電中さん :2010/05/08(土) 13:24:15 ID:lJX2Zluh
>>109 クアドラはすごいですねw
>>111 たしかに足が足りないときシリパラ変換ICを使おうかなんて
悩んだりするけど、PICだと融通利くしアリなんだろうな
結構みんなやってるってことでふっ切れた感。
サンキューです。
簡単にマルチタスク風味したければPropellerでも使っておけ
Lチキじゃないのか
PICです
118 :
774ワット発電中さん :2010/05/09(日) 01:29:56 ID:Qooi7ODh
ええと、PIC初心者です。16F873で16×2行のLCDを点けたりして遊んでた程 度です。 連休前に、発作的にPicKit3をオーダーしました。 勢いで、24HJ256GP206とか、顕微鏡でないと見えないような足の石も買いました。 今、回路図を書いているところです。マジに基板起こさないと、どうしようもありません。 で、超初心者的質問なのですが、この手の石は、リセットにコンデンサ抱かせて、適当 な水晶でも立ち上がりをゆっくり待たせるとか、もう、そんなことはやらないんでしょうか。 PicKit3の、というかMPLAB IDEのヘルプなどを見ると、抵抗でVDDにpull upしろとしか 書いてありません。 内部のパワーオンリセットだけに頼る、というのが、どうも不安で…
>>118 リセット端子にコンデンサ抱かせるのは無いより有ったほうがいい
VDDにプルアップは必要
リセット回路が必須なCPUなら、この手の石もあの手の石も同じ
適当な水晶で発振させクロック生成するのか、内部発振回路でクロック生成するのかは
やりたい内容によって異なる
適当な水晶で発振するかどうかは、データシートに書いてある
内部のパワーオンリセットだげに頼るという意味がよくわからん
リセットICが必要なのかどうなのかというのは、設計者の自己判断
一番簡素な方法は、リセット端子はVDDプルアップで
クロックは内部発振回路にまかせる
これでLEDチカチカは動く
ある程度熟練を要するが0.4mmピッチまでのQFPパッケージなら
変換ボードで半田付けは可能
変換ボードが無くても普通のユニバーサル基板で半田付けする事も可能だけれど
かなりの熟練を要する
色々とやってみればいいと思う
>>118 外部リセット回路は信じられるのに内部リセット回路が信じられないというのはリセットというものを理解していないから
外部にRAM/ROM/ペリフェラルを持つ場合は、そういう外付けの回路の組み合わせによってリセットタイミングも
変わってくるから、タイミングを調整できる外付けのリセット回路が必要になってくる
PICを含み、ペリフェラルやら内蔵発信やら全てが内蔵されているマイコンチップでは、そういうリセットタイミングは
あらかじめ予測可能なので、それに応じた内蔵リセット回路が用意されているというだけの事。
外部リセット回路やリセットICというのは「リセットを上手にかけてくれる魔法の石」で、これに頼っておけば安心
と思ってるから内蔵リセットが信用できないって事になるんだよ
外付けリセットICだろうが内蔵リセット回路だろうが、所詮は同じもの。
ただタイミングが調整できるかどうかの違いだけ
PICの場合、BOR使わないと確実なリセットは掛からないからなぁ BOR使わないなら外部リセットに頼りたくなる気持ちはわかる
最初のリセット動作にBOR関係あるの?
電源切ったときにコンデンサの電荷が抜け切らないまま電源入れるとPOR掛からないことが多々ある
124 :
774ワット発電中さん :2010/05/09(日) 12:44:01 ID:Qooi7ODh
水晶発振っていうのは、機械振動だから、立ち上がるときに何が起きるか、良く分からない 所がある。オーバートーンでスタートして、「あれ?基本波で動く方が楽じゃん」と、勝手に 数ミリセコンド後に、周波数を3倍も変える、粗悪なやつまで居る。 共振回路のQでいうと、周辺でダンプされてても、数千ある。逆にいうと、数千回以上は振 動電界を与えないと、定常状態の振動にならない。 これを、100μ待ち時間に1024回数えてからとか、その程度で安心して処理を始めさせて 良いものか。そういう疑問だったんです。 24Hシリーズの解説読むと、クロックの立ち上がり不良については、ソフトウェア的な救済 措置方法が出来そうですが、書き込み機をオンボードで繋ぐために、そんなコードを調べ て書き込むくらいなら、コンデンサと抵抗と放電用のダイオード付ける方が楽だと、個人的 には思います。 あ、休止状態からの復帰の方も調べなきゃ… 自動車のエンジン制御のように、何かあっても間髪入れずに復帰してくれなきゃ困る用途も あるし、もうこのクラスのCPUはC言語でしかコード書けないし、タイミング的にクリチカルな 部分は、32kHzの補助発振器のタイミングで、十分な精度になるだろうし、だんだんパソ コンみたいに、いつ処理が終わるのか分からないから、足りることを知らず、ひたすら高速を 追い求める事になるんでしょうかね、制御用コンピュータ。
>>124 HITORIGOTOHA TEMEENOIEDAKEDEOWARE UZAI!
水晶メーカーにマッチング情報聞け テクトロの高いオシロも買え 自分で納得行くまで突き詰めろ
ところで、BORって松坂慶子に似てると思わね?
PICKit3ってMCLRにキャパシタつけても平気なのかな? うちはICD2だからほとんどの場合つけないけど。 最近はPICKitでもデバッグ対応のPICが増えてるのかなぁ。 ますますICDの立場が・・・orz
129 :
774ワット発電中さん :2010/05/09(日) 22:21:45 ID:Qooi7ODh
>>126 1)ジャンク屋の店頭で、ケースの中の水晶をガラガラとかき混ぜて、偶然見つけた
HC49Uの3.2768MHzが10個ほど。メーカー不明。PIC16F84時代には、0.1秒
遅延をコンデンサで作って遊んだ。遅延をそれ以下にすると、おかしくなった。
2)金石舎の紋章入り27.12MHz3次オーバートーン。出物があったので、半分に分
周して、高周波誘導加熱装置の周波数源に使った。
オーバートーンなので、基本波で使うと5kHzほど下の周波数で発振。たぶん数十
年前の、湾岸戦争当時のアメリカCB無線用。16F873などを、これで動かした。
習慣になっていたので、やはり0.1秒遅延を付けた。HC49U型。
3)いつまでもこんなでかいのを使っててはダメだと、ロープロファイルのHC49、10MHz
を買ってきた。早速の発振不良。数百Ωの抵抗をCLK出力側に入れる事を学ぶ。
4)セラミックの3本足の発振子を買ってきた。ウェイトはCPUに付いてるのだけで十分
だったし、もうこれでいいやと、しばらく技術停滞。
5)現在。金石舎のEXO-3を買おうと思ったら、もう売ってない。
とある目的で、19.6608MHzと、それを正確に8分周した2.4576MHzが必要。はてさ
てどうしたものか。
製品だと水晶振動子じゃなくて4Pとかの水晶発振器の方がメインに使われてる気がする
131 :
774ワット発電中さん :2010/05/09(日) 23:14:00 ID:Qooi7ODh
>>130 なんかカタログ見てると、プログラマブルで、工場で設定しまっせとか、特定周波数じゃなくて、
揺らぎを与えて輻射の測定器をだまくらかすようなのが、いろいろ出てますね。
12F683でハードウェアPWM出力してるんですが、この出力がHi->Loへ変化するたびにイベント起こす手っ取り早い方法ってありますか? CCP1とINTが共通のピンなので、PWM出力しながらINT割込み発生させるってのは無理でしょうか?
>>132 凄く切れる方とお見受けしました。
自分のような凡人には難しいです。
>>132 H->Lのタイミングでタイマ2割り込み掛かると思うけど?
135 :
134 :2010/05/11(火) 01:51:41 ID:Y1OPHh7M
ごめ。L->Hのタイミングで割り込み掛けられるはず。 H->Lじゃないと駄目なの?
>>132 6番ピン使ってもいいのなら、5番と6番をつないでアナログコンパレータを100モードで使うとか
外部ピンの無駄遣いだがwww
>>132 INT割り込みはTRIS=1じゃないと受け付けないから、
PWM出力するためにTRIS=0にした時点で無理。
出力を反転して
>>134 さんのようにタイマ割り込みで引っかける、じゃだめなの?
デューティ設定値も反転させるようになるけど。
CCP割り込みは一致検出だから、PWMモードでCCP割り込みができればいけそうだが、
試してみてないからなんとも。
PIC18FのCCP(ECCPではない)でよかったら試してみようか?
138 :
132 :2010/05/11(火) 19:31:13 ID:4RpzF8f6
>>134 ラジコンモーターをN-FETでドライブし、Loの間にBackEMFを計測したいので、H->Lじゃないとマズイんです。
>>136 リセット・Duty指定・BackEMF計測・セラロック・PWMと割り振る予定なんで、IOの空き無しです。
>>137 >INT割り込みはTRIS=1じゃないと受け付けないから、
>PWM出力するためにTRIS=0にした時点で無理。
データシートに「デジタルインプットにしてね」の記載があるけど裏技的に使えるかな?と淡い期待を持ってたんですが、やはりそうですか。
この感じだとPWMモードでのCCP1IFゲットもデータシートには「Unused in this mode」の記載があるので厳しそうです。
やっぱりPWMをActiveLow + Duty反転 + Timer2割込み で逝くのがやはり正攻法みたいですね・・・。
>PIC18FのCCP(ECCPではない)でよかったら試してみようか?
感謝しつつ、お気持ちだけ受け取っておきます。
139 :
774ワット発電中さん :2010/05/11(火) 21:14:43 ID:3kvpX0zf
PIC24FJ64GB002のeagle用のライブラリください
>>138 BackEMFを計測するのは一旦、PWMをOFFにするんじゃないかな。
ここを参考にするといいかも。
ttp://www.picfun.com/P12F/p12f06.html 高速じゃなくてPWMが100Hzとか遅くていいなら
CCPをコンペアモードで使ってH幅とL幅を毎回、ソフトで設定する方法もあるよ。
ちなみに、
Timer2はオバーフロー割込みでCCP1のPWMは比較によるTMR2の0クリアだから
PWMモードのときはTimer2割込みが起きないと思うんだけど。(自信なし)
16F628AだけどPWMモードでTMR2割り込み使ってるよ
TMR2とPR2の比較・クリアはもともとTMR2に備わってる機能。 PWMのソースに使っても割り込みフラグたつよ。
143 :
140 :2010/05/12(水) 00:48:59 ID:k+wOB/0b
>>141 ,
>>142 補足ありがとうございます。
確認したらコンパレータ一致のときは
「TMR2を0クリアすると同時にオーバーフロー信号として出力する。」
でした。
自信ないことを書くとダメですね。
PICにスイッチをつけるときのことで質問です。 スイッチをオンでGNDに繋がるようにした場合、入力ポートをプルアップしてもう片方はスイッチ→GNDになるようにつなぎますが、 ネットを見ていると、入力ポートとGNDの間にダイオードが入れている場合があります。 使う場所は車に取り付けることを想定しているのですが、 これは回りこみを回避のために入れているのでしょうか? それとも間違えて+12vに接続したときに壊れないようにでしょうか? GND側から回り込むことってあのかな?と思うのですが、 エンジンがオンの状態でPICを使った回路の電源が入っていなければ ありうる話しなんでしょうか?
ツェナー?
>>144 ネットでみた回路って具体的にどこですか?アドレスを教えてください
その回路はどういった場所で使うことを想定しているのですか?
147 :
774ワット発電中さん :2010/05/13(木) 08:48:41 ID:4lHkFy0a
>>144 スイッチと並列に逆ダイオードをつないであるんだろ?
それはスイッチで制御される先が誘導性(リアクタンス)の場合、
ON/OFFしたときに発生する逆起電力(瞬間ノイズ、微弱アーク)を吸収するためのもの。
頻繁にON/OFFを繰り返す場合の接点保護(劣化や接着防止)の意味がある。
一方がGNDに繋がっているのでよほど精度の高い回路をつくるんじゃ無い限り、
通常いらないと思うが、人の命にかかわるようなシステムだと安心のために入れるんじゃないかな。
原理は、リレー接点や直流モーターと並列に入れるダイオードと同じ。
http://ja.wikipedia.org/wiki/%E7%B6%99%E9%9B%BB%E5%99%A8 の「使用上の注意」を参照(リレーの接点がスイッチの接点と同じ)。
148 :
774ワット発電中さん :2010/05/13(木) 09:07:56 ID:4lHkFy0a
>>149 PIC入力と直列にダイオードだな。
そりゃ外部の誤配線とかで12V系が繋がっても
PICを保護するためだと思ふ。
車載以外でも12/24V系センサ使うときの手段だったり。
フォトカプラ入力の方がベターだと思うが。
>>151 キミの認識は正しいと思うよ。安心して。
>>147 ,
>>148 は勘違いしてる。
スイッチの「負荷が」コイル性だとダメだよ、という話。
でも、キミの場合はSW→PICの入力だろう? だったらコイル性は無いから、
ダイオード不要。
>>149 のサイトの14番は、回路設計 勘違いしやすいから、よくない設計だと思う。
たぶん筆者は、PICの内蔵プルアップをonにしているのだろうから、入力にプルアップ抵抗が無い。
しかし、そうだとすると、13番の回路にはなぜプルアップがあるの?という疑問が生まれる。
一貫性が無い設計なので、あまり参考にしてはダメ。
内蔵プルアップは、PICの乗っている基板のごく周辺だけでSW取込したいときに使うものであって、
長く引き回すときに、内蔵プルアップなんて、信じちゃダメです。
自分でプルアップ抵抗をつけてください。
>>150 の紹介の回路図のダイオードは意味無し。
なぜあそこにダイオードを入れる?役目がない。
>>151 の解釈は正解。どこからも逆起電力は来ない。
共用していないのにダイオードは要らない。
>>151 の理解は正しい。
そろそろ、このサイトの人にメールでも出して答え聞こうぜ
車なんてグランド電位差もありそうだから、12V系のフォトカプラで 受けた方が安心できるような気がする。
>>156 それはベストな方法だけど、値段が・・・ね。
>>152 >そりゃ外部の誤配線とかで12V系が繋がってもPICを保護するためだと思ふ。
やっぱりそうですよね。
回り込みに関しては考えなくていいのかな。
>車載以外でも12/24V系センサ使うときの手段だったり。
これってどこかに参考になりそうな資料とかありませんか? 勉強したいので。
>>153 考え方はおおむね合っているようなので安心しました。
わざわざ図を書いていただいたのはありがたいのですが、12VのONOFFを知りたいわけでは
ないので、今回は+12Vにスイッチぶら下げて入力する必要はないですよね?
ただ+12Vの入力をしたいときも有るので、そのときの参考にさせてもらいますm(_ _)m
それとは別に気になったのですが、抵抗内蔵のトランジスタがダメな理由はなんでしょう?
あとR1の存在理由はなんですか?ベース保護の抵抗やBE間の電位安定のものじゃないですよね?
>>155 そんなに長いやりとり?
>>156 フォトカプラがベストですか。
スイッチ入力にフォトカプラまで必要になってしまうんですね。
>>158 が
>>144 と同一人物として
文面からしか判断できないので間違っている可能性の方が高いが,,,
もう少し他人の労力に対して感謝の意を表す努力をした方が良い。
あなたがどの程度の前提や考察をしたうえで、質問をしているかは
読み手には書いてあること以上は判らない。
前後のやり取りを見るとそれなりの知識はあるようだが、あなたの質問に対して
100%最適化された答えが返ってくる保証もなければ、その前提となる条件が
全て明示されている訳でもない。
個々の使用条件でも、どの性能を優先するかによって回路構成や安全率の
取り方は変わってくる。
論理上無駄でも、安全や人間の犯しやすいミスに対する保険などに対する考え方
の違いで回路が変わったとしても何の不思議も無い。
実際の製品設計は、あなたが考えているほど単純明快ではないよ。
>>158 >抵抗内蔵のトランジスタがダメな理由はなんでしょう?
内蔵している抵抗は、抵抗でなくて、半導体で抵抗のフリをしているだけだから
静電気でスグ壊れるため。
>あとR1の存在理由はなんですか?
入力インピーダンスを下げるため。=ノイズで誤動作しないようにするため。
例えば、R1なしでTRの所の抵抗は10k+10kでも、47k+47kでもOKでしょ?
でもそうすると、スイッチから見た回路の入力インピーダンスが20kとか100kとか高くなってしまう。
R1のあるほうは、R1で2.2kとかに、わざと落とせる(=自分で調整がきく)。
この2つの入力回路に、ノイズ電流が流れたとすると、インピーダンスの高いほうでは敏感に感じてしまうが
R1付きでインピーダンスが落としてある方は、感じにくい=ノイズに強い。
あと、スイッチの接点電流の確保もできる。
>>161 >この下りはちょっと難しくてよくわからなかったので
難しく聞こえるけど、定性的にはこんな感じ。
・0.6V以上入るとonと感じてしまうICがあるとする。
・で、その入力抵抗が、1kΩと、10kΩの2種類のICがあるとする。
・0.6V以上のonと感じさせるためには、
1kの方には、0.6mAの電流を流し込んでやる必要がある。
一方10kの方には、0.06mAの電流を流し込んでやるだけでよい。
・つまり、10kのICのほうが、1kのそれに比べて感じやすい。(感度が高い)
・そんなとき、どこからともなくノイズ(雑音電波)がやってきた。
やってくるノイズが、0.1mA流せる程度のノイズだとする。
・それが、さっきのICの入力に入ったとき、
1kの方は「知らんな」と思うけど、10kの方は、onに感じてしまう。
・なので、入力抵抗が100Ωだったら、10Ω、1Ωと小さければ小さいほど、
0.6Vにするために、もっとたくさんのノイズ電流が必要になる。
だから入力抵抗が小さいほど、感度が低くなって、
多少のノイズ電流が来ても感じないので、ノイズに強いということになる。
だから、車のようにノイズだらけの所で入力を取ろうとするなら、
できるだけ低い入力抵抗にすべき。
でも、1Ωとかにしてしまうと、0.6Aも流さないといけない。
これではスイッチが壊れるし、電気がもったいない。
だいたい1mA〜5mA流せば、ノイズにはかなり強いものになる。
このように人間が入力抵抗を決められる、それが あの「R1の値」なのです。
R1で抵抗を小さくしておけば、外部からは、R1しか見えないので、
トランジスタの所の抵抗は10kとか高い値で良い
>>159 肝心なことを忘れてました。
>論理上無駄でも、安全や人間の犯しやすいミスに対する保険などに対する考え方
>の違いで回路が変わったとしても何の不思議も無い。
このようにミスに対する保険(誤接続など)を考えた場合には、今回の質問のように、ダイオードを直列に入れて
おくのも有りなのでしょうか?
そのあたりのノウハウがないので、知りたくて質問したんです。
>162
抵抗が大きすぎるとノイズに弱いというのは、よく見ていたのでそういうものなんだと覚えてましたが、
詳しく説明していただいて、よくわかりました。
>R1で抵抗を小さくしておけば、外部からは、R1しか見えないので、
これは手前の抵抗に電流が多く流れるので、TRの部分の抵抗には影響が出にくいという理解でいいですか?
>>163 >今回の質問のように、ダイオードを直列に入れておくのも有りなのでしょうか?
有りかもしれないけど、一般的には、
ダイオード1(K)----PICの電源(+)端子
入力-----抵抗-----PIC入力ピン、ダイオード1(A)、ダイオード2(K)
ダイオード2(A)----PICの電源(-)端子つまり=GND
という感じ。
>抵抗が大きすぎるとノイズに弱いというのは、よく見ていたのでそういうものなんだと覚えてましたが、
でも「つながる相手から電流を奪いたくない」と思う場合も多い。
そういう場合は、やむなく高い入力抵抗にするしかない。
そうするとノイズに弱くなるので、次に考えるのべきは、配線技術とか実装技術ね。
>>R1で抵抗を小さくしておけば、外部からは、R1しか見えないので、
>これは手前の抵抗に電流が多く流れるので、TRの部分の抵抗には影響が出にくいという理解でいいですか?
その通り。
PICも含めてC-MOSのICなんかは、入力抵抗が10000MΩくらいある。
そんなときも慌てずに、入力にR1を抱かせば、0〜10000MΩまで、
自分の好きな抵抗値にコントロールできるというわけ。
どんな値にするかは、時と場合によって使い分ける。回路設計と経験値というもの。
みんなプルアップ抵抗を適当に10kとかにするけど、あれにも意味はちゃんとある。
ダイオードを入れる方法は簡単だけどONレベルが0.6V上がってしまう点に注意。 A/Dで入力すればしきい値は上げられるけどノイズマージンが下がることは変わらない。 初心者は電線でスイッチを延ばしたがるけど製品だとスイッチは一枚基板の中で シャフトで釦まで延ばしてるのが多いかな。
最近の製品だとフラットケーブルでスイッチLED等まで引き回しまくってるよ。
シャーシの中で引き伸ばすのは別にいいんじゃないか 最近の製品に限らず、マイコン乗ってる基板とUI基板が分かれててフラットケーブルで繋いである製品は多いよ
単に基板で完結させるのがコスト的に有利だからだろ
オーディオの場合はパターンの引き回しの関係。
170 :
774ワット発電中さん :2010/05/15(土) 09:45:03 ID:BbCwSbwd
>>165 自分が受けるノイズマージンもだが、最近は不要輻射レベルを下げるために、
外部と繋がる線は、出来るだけ基板内で完結させる。
PICも、最近の高速版は、内部CRオシレータとPLLで、160MHzなんて設定出来るけど、
外から見たら、32kHzの水晶1個が、弱々しく発振してるだけという使い方が出来る。
あ、内部用のパスコンが1個、外に出てるか…
PLLの設定でオーバークロックできるよな
172 :
163 :2010/05/15(土) 12:30:40 ID:VNq1HRKv
>>164 レスありがとうございます。返信遅くなりましたm(_ _)m
入力の図ありがとうございます。
ちょっとずれてしまっているんですが、電源に向かうダイオードと、
GNDの間に入れるダイオードの位置は、抵抗とPICの入力ピンの間ですか?
>みんなプルアップ抵抗を適当に10kとかにするけど、あれにも意味はちゃんとある。
プルアップの10kにもしっかり意味があるんですね。
配線が長ければもう少し小さい値と思っていたました。
>165
>ダイオードを入れる方法は簡単だけどONレベルが0.6V上がってしまう点に注意
実際にやってみたんですけど、スイッチを押したときも0にならず、0.6V付近になってしまいますね。
LOWと認識されない場合があるような気がしてきました。
シャフトでボタン操作しているのは見たこと無いです(^^;
>>172 >>165 >ダイオードを入れる方法は簡単だけどONレベルが0.6V上がってしまう点に注意
>スイッチを押したときも0にならず、0.6V付近になってしまいますね。
>>165 の「ONレベルが0.6V上がってしまう」という表現が良くないのが原因だけど、
>
>>165 の言う「ONレベル」というのは、「SWを押したとき」ということなのね。
SW ONというのは、
ON=High(5V?)、ON=Low(0V)、ON=SWを押すこと、など複数種類あるので、
言うときも聞くときも注意が必要なんだ。
間違いない表現は、
SW=ONとかSW=OFFではなくて、SW=開、SW=閉、SW=切、SW=断という。
これなら、回路図を見ないとどちらか特定できないから、安全。
>LOWと認識されない場合があるような気がしてきました。
それは、PICのデータシートに書いてあるから読むこと。
ViHとかViLというパラメータで書いてある。
因みに、5V電源で、0.6VをLに認めないPICは無いと思うので、大丈夫。
でも、
>>172 が心配しているように、GNDから0.6V持ち上がるので、
ノイズマージン(PICにLowを伝えたい気持ちの余裕度)が0.6V減るので、
良い方法とは言えない。
直列にダイオードは、理屈を理解した人が、注意して使え、ということだね。
>>173 ON=highで見てました。
たしかに注意が必要ですね。
0.8Vに対して0.2Vしかマージンがないというのもわかりました。
>因みに、5V電源で、0.6VをLに認めないPICは無いと思うので、大丈夫。
データシートだとLOWとなるのはTTL=0.8V以下、ST=0.2V以下になっているのですが、
ダイオードを入れられるのは、TTLの時のみにならないでしょうか?
データシートはPIC12F683を見てます。GP2がST入力です。
STの時の考え方間違ってますか?
スイッチの接点が接触してる状態がONだよ
データシートで、0.2 VDDとあるのは、VDD(電源電圧)×0.2ということ。 電源電圧が5Vなら、1.0VまではLowに読める。 0.8とか数字しか書いてないのは、そのまま読む。 ST(シュミットトリガ)ならヒステリシス電圧があるから、 通常の入力よりノイズマージンが広く取れる。
>>176 電源電圧×0.2だったんですね。
見方もわかりました。
ありがとうございました。
>>175 もう一度最初から話の流れを良く読もうよ、な。
だから、ONという語の意味を考えろと 電圧がHだろうがLだろうが、素子が導通してる時がONだ
同じPICの型番の最後が「-04I/P」と「-20I/P」があったりするけど何が違うんですか?
>180 -04の意味はデータシート嫁 -20の意味もデータシート嫁 I/Pもデータシート嫁 データシートの最後の方のチップ表面の絵と共にここはこういう意味って書いてあったはずだよ…たしか。
もっと自分に自信を持って!
ところでA/D割り込みハンドラって使ったことある? 俺は要因ポーリングしかしたことない。
>>183 いや使わないな。割り込みは最小限にする主義だ。
種類ごとに飛んでく先が別なら割り込みを使った方がスマートだけど
A/Dに掛かる時間はそれほど長くないから、下手に割り込み使うとオーバーヘッドのほうが大きくなる場合があるから基本的に使わない。
>>186 言えてるね。割り込みベクタがあるならいいけど、
とにかく割り込み来た→どいつかな?→こいつかな?→・・・・あった、ADハンドラにGo
とかやってちゃ、時間がかかるよね。
設計段階で各割り込みの頻度は把握出来てるから 頻度高い/ステップ数を減らしたい奴から判定を組めばいいけどね
マイコン全般で見ると、全部の割り込みのベクタが共通なのって多数派?
191 :
774ワット発電中さん :2010/05/16(日) 11:48:55 ID:i/qm8WZj
うん。飛んで要因確認、それで処理。
PICは割り込みベクタも残念だが、 スタックも残念だな。16レベルは欲しい。
僕はマイコンはPICから始めたので、割り込みはそうする物だと思っていた。 でも、ベクタのあるのが普通と知ってから、PICで割り込みを使うときは オシロでオーバーヘッド時間を測定することにした。
>>193 そんなのmplabideのシミュレーションで十分じゃん
>>194 みんながみんな、MP Lab使ってるわけじゃないんだよ。
>>195 純正の無料なのに使わないやつの気が知れない。
オシロより正確だ
MPLAB使わずに何で開発してるの? まさかハンドアセンブルじゃねぇよなw
開発環境がMPLABだけと思ってることに驚きを隠せない
じゃあ何なの?具体的に教えて。
200 :
774ワット発電中さん :2010/05/16(日) 16:17:38 ID:wllkfCEd
>>189 大昔の8080の時代でも、外部の石使って、要因で8つのジャンプ先に飛んだ。
Z80になって、モード2割り込みってので、周辺の石に飛び先のベクタを持たせた。
でもメーカー純正の周辺ICが要るので、あまり普及しなかった。
CPUの速度が上がったのと、コンパイラの加減で、結局2レベル程度でしばらく
続く。IBMPCの糞設計のせいで、みんな割り込みが嫌いになった。
ICの集積度が上がって、周辺機能が内蔵されて、要因別のベクターが再び脚
光を浴び出す。
PICなら、18シリーズから24シリーズへと、どんどんベクタの数が増えてる。
複数の割り込みが発生してる時に優先順位をソフト的に決めれるメリットを選んだんだろうか
>>199 の態度が気に入らん
じゃあって言う奴にはロクなやつがいない(キリッ
>>174 > データシートはPIC12F683を見てます。GP2がST入力です。
ちょっと余談
ST入力はGP2だけで他のGPポートはTTL入力だよ。
TTLレベルになるのは汎用入力のときだけでカウンタ入力やフラッシュ書き込みのときは
シュミット入力になる。
データシートの最悪値だけでなくて実測値も知っておくといいかな。
手持ちのPIC12F683は
TTL入力: 1.25V がH/Lの境め。
ST(L->H): 2.9V
ST(H->L): 1.4V だった。
僕は、PICを使い初めて10年以上になるけど、
CCSのCコンパイラだけで開発してる。MPLABは1度も使ったことないよ。
MPLABなしの開発方法で何の不自由もしていないけど。
MPLABを使わないとダメなの? →
>>196 ,
>>197 失礼なこと言うなよ。
PICに対応した汎用アセンブラってのもあった気が
MPLABに付いてるMPASMWINを直接起動すれば充分
>>192 > スタックも残念だな。16レベルは欲しい。
1xxx番台のは、スタック増えてる。
それより、レジスタをスタックに積めないのが不便。
まるで中韓人のような捏造歴史の>200
210 :
774ワット発電中さん :2010/05/17(月) 08:50:15 ID:mlj942Sn
>>209 今の若い人には縁がないので端折ったが、捏造はしてないぞ。
8ビットマイコン期が抜けてるからすっ飛んでる感
IBM-PCは素直に8259Aをつけた.PC/ATはある程度の互換性を維持したまま 割り込み本数を増やすべくマスタPICのIR2(だっけか?)にカスケードしたというだけでそ? 糞とかいうのは自由だけど,ごく当たり前な設計じゃね? 8080Aは割り込みのアクノリッジサイクルがM1サイクルそのものなので, RST命令を利用して比較的簡単にベクタ割り込みが利用できたけどね. 8080の改良版にあたる8085では既にINTR/RST5.5/RST6.5/RST7.5/TRAPの5レベル 割り込みピンを持ってるし. 8086+8259Aはごく普通な構成だったし, 8051は当然のように要因ごとに別のベクタに飛ぶし 68000は最初から7レベル割り込みだし 6809も3レベル(IRQ/FIRQ/NMI)だっけか 組み込みで使えるようなコンパイラというと,Intel系だとPL/Mあたりを MDSで利用ってか? パソコン上でクロスコンパイラで開発なんていうのが一般化するのは 結構後のことじゃないかいな?当初はCで書いたプログラムのROM化 なんていうのが雑誌記事になるくらい珍しかったりしなかったっけ?
IBM-PCの割り込み廻りの設計がクソな所... (1) Hiアクティブなので、オープンコレクタ(オープンドレイン)出力による 複数スロット間での割込要求(IRQ)ライン共有ができない。 (2) おまけに、エッジ検出割込。 (3) エッジ検出割込だけど、割込応答(INTA)サイクルまで、'H'レベルを保持 しておかないとダメな8259Aの糞仕様。このため、割込応答時に割込要因がIRQ レベルを保持していないと、不完全割り込みが発生。(本来の割り込みへはジャ ンプせず) (4) もしかしたら、IBMオリジナル設計はIRQ信号にプルダウン抵抗が入って いなかったかも。
>>205 失礼ってことはないだろうけどさ、シミュレータやデバッガの便利さを知らないのかな。
>>207 結局MPLAB入れてんじゃん。
>>215 >シミュレータやデバッガの便利さを知らないのかな。
それらって、ブレークポイントで止めて見るんではないですか?
それとも、動かしながらの変数の値がリアルにわかるとかはできるの?
MPLABだとワンステップ毎の動きをwatchウィンドウで見れるよ
外部との連携があるのに、自分だけステップ実行できても、困りません? 例えば、赤外線リモコンの学習型を開発で、赤外線リモコンを受光部に向けて打つとき、 赤外線リモコンは待ってくれませんが、 PICだけステップ実行したり、ブレークしたりとか、のんびりやってるワケにはいかないのでは ないでしょうか? バーサライタとか、ナイトライダーとかの、自己完結型のプログラムでは、 ステップ実行、ブレークポイントによる停止などで 変数値を見るのは大変有用だと思いますが。
そこは工夫するところ。 赤外リモコンなら1パケット受信し終わったところでブレーク掛けて変数の中身見るとか。
>>219 ありがとう。
おっしゃる通り、赤外線リモコンのように短い時間のものなら、終了後にBreakで良いだろうけど、
RS232Cで受信して、測定して計算して、RS232で送信して、制御して・・・・など、
他の回路や機器とやりとりしたり、長時間に渡って行われる場合は、
Breakというワケにはいかないですよね? ←僕の予想ですが。
であれば、シミュレータやデバッガを使えないので、別の方法になると思います。
だったら、始めからオシロやロジアナを使ったリアルタイムデバッグ?のほうが
簡単かなぁ、と思うワケです。
>>196 ,
>>197 のような輩は、ごく一部の人だと思いますけどね。
>>220 proteus使うと232やLCD、FAT用いたSD制御とかもシミュレートできるよ
MPLABとも統合できてCCSやhitechのコンパイラと連動させられる
pic16f88を使っています。 コンフィギュレーションをECIO(port I/O function on RA6/OSC2/CLKO)に設定し 16番pinに外部クロックを接続して居ます。 クロックは正常に動作していますが、15番pinがI/Oになっていないようです。 なにか設定が必要でしょうか?
223 :
196の輩 :2010/05/17(月) 22:13:35 ID:sG8hwkhF
>>223 まぁまぁ、落ち着きなよ
文体や文章読めば、相手すること無いやつだって分かるだろ
>>223 シミュレータ、デバッガが便利なのもわかりますが、
他の回路や機器とやりとりしたり、長時間に渡って行われる場合
>>223 は、どのようにしてデバッグするのでしょうか?
シミュレータ、デバッガの一本槍では、手が出ないと思うんですが。
>>225 >シミュレータ、デバッガの一本槍では、手が出ないと思うんですが。
「馬鹿と鋏は使いよう」っていうだろ
馬鹿を馬鹿呼ばわりして終わるだけでは、もったいないと思わない?
頭の良い連中は馬鹿でチンケな機能を最大限に利用してデバッグしてるのさ
そもそも、馬鹿で低機能なPICで色々な事をさせようとしている人間が吐くセリフか?
>>228 >馬鹿を馬鹿呼ばわりして終わるだけでは、もったいないと思わない?
う〜ん、気持ちはわからないでもないですが、
シミュレーションしてOKだった後、実際にPICに焼いて実際の動作を確認しますよね?
そのとき、どのようにして確認するのでしょうか。
オシロとかで実出力信号を確認しませんか?
だったら、初めからそれでやれば いいんではないかと思う訳です。
僕がよく使う方法は、LEDとオシロとtreminalとロジアナとDAコンバータでしょうか。
PICを動かしながら、内部の値や時間をチェックします。
>>226 、
>>227 、
>>228 は、どんなふおにして実機動作確認をしますか?
>>229 気持ちはわかる。俺もそう思う。でも外部機器と関係しないとか時間にしばられないような
プログラムもあるのだから そういうときに使うみたいだ。
たぶん
>>229 は組み込みソフトをやってない?
組み込みプログラムのときは言うようにオシロなどや、
時にはもう1つのPICで通信相手を作ってデバッグすることがほとんどで
デバッガやシミュレータは、ほぼ役に立たない。(立ったためしがない)
いやだからさぁ MPLABの機能が折角あるんだからそれも使えば?って話だけなんだけど。。 それを否定してるから「勿体無い」といってるだけだよ 人がどんな方法を使ってデバッグしてるかなんて開発環境によって変わるだろう LEDデバッグじゃなきゃ駄目!とか printfデバッグじゃなきゃ駄目!とか ロジアナ、オシロじゃなきゃ駄目!とか 別に駄目な事なんてないだろう ただし、PICの場合デバイス性能からそのやり方では 「出来ない」という時もある チンケなPIC性能でギリギリの処理をさせる場合、シュミレータなんて実機組み立てなくても ある程度検証できるツールだから 使っておいて損はないんじゃないのか? それを、MPLAB使わない人間だっているんだ!といっている理由が良く分からん 逆に言えば、LED出力やUARTの空きポートが無い環境だってあるんだ! だからそれらのデバッグ方法が駄目だ!と言っているようなもの わかる?
実機での最終デバッグ以外の方法も多々あるよ。 各部の基本機能を個別にデバッグしてあれば、全体を統合した後でやるべき 確認事項はそれ程多くはないし、通信終了後などのキリの良いタイミングでも かなりの情報を得られる。
オレは両方使ってるよ シミュレーションはロジックの確認&デバッグ オシロ等使った実機テストはタイミングの確認&デバッグ どちらか一方でもできなくはないが効率が悪い
使い分けのできない人に何を言っても理解できないと思うよ
>>222 PIC16F887だと2つのクロック端子のうちの1つを外部クロック入力に使う場合
残りの1つの端子をクロックアウト端子として使うかI/Oポートとして使うかの
2通りのコンフィグ設定がある
PIC16F88は使ったことないが 「CLKO」というのは残りの1つの端子をクロックアウト端子として使う設定ではないか
的はずれのレスしたかも レスを取り消します
デバッグは一つのやり方だけにこだわる必要はないし、各自好きなように やればいいよ。 実機だけのデバッグの場合、一度も実行してないルーチンが残ると 潜在バグの元だから注意が必要だけどね。
LEDデバッグ最強
PIC使うならMPLAB最高でしょ?無料なんだぜ。 MPLAB使わない奴って何なの?馬鹿なの?他になにかあるなら言ってみろよ というニュアンスぷんぷんで書かなければ桶。
PICごときにシミュレータやデバッガなんか要らないよ。 MPLAB使ってるやつってなんなの。 オシロ1台あれば他に何が要るんだよ。 というニュアンスで書かなければいいんだよな。
横河のDL1740持ってるがPICにはオーバースペックすぎる。 ソフトデバッグは殆どMPLABだけで済むけどね。 糞設計ハードのデバッグやハード解析にはオシロが必須。
ソフトでのデバッグだけじゃ欠陥だらけのPICはデバッグしきれないね え?エラッタ読めって?エラッタにすら書いてない欠陥があるから困るんだよ。
第4回 PICアンケート 貴方があてはまるのは次のどれ? a.PICが好きで好きでたまらない人 b.PICが大嫌いな人 c.PICを見下してる人 d.PICをスゲーと思っている人 e.マイコンなんて用途に合えば「別に・・・」と思ってる人 f.初心者 g,間違えて来ちゃった!エヘ
244 :
774ワット発電中さん :2010/05/19(水) 23:14:36 ID:XIrNGwRt
欠陥だらけのPICなんて使わなければいいのに。必死こいてデバッグする(使う)のは、何故?
>>244 チップ単価・開発環境が安価で、入手性が優れており、アプリケーションの事例が多いから。
>>244 ある程度のレベルまでは潜在的なエラッタを気にせず、それなりの開発ができるから
247 :
774ワット発電中さん :2010/05/20(木) 00:02:29 ID:m8Z7BzbK
>>245 が言っている
他の項目はともかく 開発環境が安価はないな
競合するマイコンと比べてハードもソフトも別段安価ではない
(何かと比べてるんじゃなくて245がお金持ちでただたんに安いと言っているのかもしれんが)
開発環境だけでなくチップそのものの値段も他のマイコンだって安くなってきている
豊富な事例とか書籍はまだまだ圧倒だけど
>222 CONFIGBITを反映するには、SCS1=0; SCS0=0; を設定する必要があったと思う。 デフォルトで00のはずだけど念のため。 うちのは INTIOの8MHzだけど、こんな設定。 ヘッダ __CONFIG( UNPROTECT& DEBUGDIS& LVPDIS& BOREN& MCLRDIS& PWRTEN& WDTDIS& INTIO ); #define _XTAL_FREQ 8000000 main の頭に IRCF0= 1;IRCF1=1; IRCF2=1; SCS0=0 ;SCS1= 0; // Clock 8MHz これでRA6,RA7ともIOでつかえる。
よく調べると導入コストはAVRの方が安い 制限コンパイラじゃなくてgccが使えるってのもある
しかし昔から見るに凄い時代になったもんだね 個人で扱える環境の幅がダンチだ
団地妻の誘惑
>>247 仕組みとして完結していないgccなど何の意味もない。
それより回路図、cソース、コンパイラが一式で提示されているmikroC
の方が格段に問題解決に近い。パーツを組み合わせて、ちょっと関数
を組めばすぐに実用レベルまで持っていける。
それで解決できるめどがつけば、コンパイラの費用など全く気にならない。
253 :
774ワット発電中さん :2010/05/20(木) 21:56:15 ID:aksN3u/k
何を持って仕組みとして完結してないか知らんけどさ(別に解説期待してるわけじゃないからイランよ) 他のマイコンだって普通に実用レベルまで持って行ってるぜ みんな 電子工作レベルでも産業レベルでもさ それにあなたが解決するめどがついたかどうか、とかさ 費用が気になるか気にならないかなんて 開発環境が安価であるかどうかとちがうじゃん 安価かどうかは実際に金額を並べて議論すべき話 回路図や先導者や書籍の多さは 圧倒しているって 俺も言ってる話でしょ なるほど問題解決に近いかもね 費用対効果で見れば安価だと思うとかそう言う話?なんだろうけど でもケースバイケースでしょう 世の中には問題すら起こらないような簡単な回路を作成したい場合もあるでしょ そんな場合たんに金額で比べるのもありでしょ 仕組みとして完結していない(?)コンパイラでもOKなケースね
>>253 別にけんかをする気はないのですが誤解かなと思う部分だけ補足を。
問題解決とはデバッグという意味ではなく、課題を解決する手段としてのマイコンという意味。
人感センサーでゲート通過人数を数えたいとか、タイマーで照明を制御したいとか、マイコンで制御したい
事象そのものが問題解決な訳。
それが実現できるならavrでもpicでもathlonでもなんでもいいのです。
16F84などで擬似的にLANにつないでデータを受け取るだけの動作をしたいのですが出来そうでしょうか?
>>256 聞いてる時点で、お前には無理。
俺なら18
>>253 ,255
プログラマーは過程を大事にする
クライアントは結果を大事にする
どっちを向いているか、だよねー
259 :
774ワット発電中さん :2010/05/21(金) 00:31:59 ID:PW+0vxBr
> 擬似的にLANにつないで つなぐのかつながないのか.... XPORT使えば16F84でもおkだけど....。
LANに16F84繋ぐとはいえんだろ
>>259 擬似的というのはLANの他のルールは無視して受信だけするだけという意味です
>>257 もう少し詳しく教えていただけないでしょうか
何故18が良いとか
>>260 ?
262 :
774ワット発電中さん :2010/05/21(金) 00:51:41 ID:PW+0vxBr
べつに、繋がるじゃん。18ならトランスレスで繋がるのかよ。どんだけすげえんだよ。18.
263 :
774ワット発電中さん :2010/05/21(金) 00:54:18 ID:PW+0vxBr
> LANの他のルールは無視して受信だけ んー、さらにわかんない。LANのパケットをモニタする?それとも何かホストがあって、そこから来る特定のプロトコルのパケットだけ拾う動作?。 後者なら、XPORTのCOMポートリダイレクタが楽だけど。
Ethernetコントローラを使わずに、トランスだけ付けてPICで・・・ というのなら、無理 HUBで10Baseに制限したとしても、10Mbit/secのOn/Offを見なきゃいけないって事だから PIC18でも最速18MIPSだから無理 コントローラ付ければ、16でも可能は可能だけど、ID:PW+0vxBr が言うように、 XPORT使った方が楽な場合が多い
>>261 いくらLANの他のルールは無視してといっても、TCPIPのパケット1つが
1500バイトとかあるのに何を受信するつもりなの?
>>261 なぜ16F84を選んだの?
16F84のRAM容量ってどれだけか知ってる?
LANのデータ長とかヘッダ長とかがどれだけか知ってる?
LANの信号がどうやって他の機器と絶縁して通信しているか知ってる?
確かに、XPORTや18やENC使えばある程度の事は出来るだろうけれど
あえて言わせてもらう
それ位の事自分で調べなよ
馬鹿じゃないの?
つまりは、情報を横取りしハッキングするためでしょ。 受信だけとは、傍受する対象に気づかれる事なく、盗み見ること。
16f84で直というならLED明滅の把握くらいしか無理じゃね?
今時スイッチングハブがほとんどだから送信機能のないもの繋いでも何も受信できないぞ
ARPくらい送信出来ないようでは(ry
ハブ−PC間みたいに普通に通信してる経路を傍受したいだけなんじゃない?
レスどうもです。 コントローラーを使う方法で考えてみたいと思います。 ちなみに傍受とかいかがわしい用途ではなくパソコンから独自の指令で PICを動作させたいだけです。 また分からないことがあったら教えてください
新しいPICNICがでた ソースもついてるらしいから つくってみれば
前のpicnicは変態自前アセンブラだったから読む気が失せたんだよな。
arduino+ethernet shieldの方が良いような気がする 似たような値段で完成品だし性能上だし簡単だし・・・
PICのスレでArduinoを出すとかいい度胸だな 最近のArduinoでマイコンバリバリやってます的な風潮には反吐が出る
ひょっとしたら276よりもバンバン作品作ってるかもしれんぞ
278 :
774ワット発電中さん :2010/05/21(金) 17:04:32 ID:qJKguZig
もともと電子工作なんか村が小さいのに喧嘩すんな
>似たような値段で完成品だし性能上だし簡単だし・・・ ハマったらお手上げだし,何より面白みに欠けるし
やっと虎木をめくり始めたんだが、16F88の後継が出てるらしいな。 16F1000番台。命令まで増えてるとか。 16C84にプレミアつきますか?
1000番代を秋葉のお店で買えるようになるのはいつになるの?
282 :
774ワット発電中さん :2010/05/21(金) 22:59:56 ID:+hZWjHns
>276 偏屈アーキの偏屈アセンブラ習得してしまったために、ほかマイコンに乗り換えできなくてやさぐれてるんですね。
こんだけ少ピンマイコンが増えると、PICの優位性ってなに?って感じだものね。 後閑さんも、軽石一味の妨害で乗り換え(タイニーマスタ)のチャンス失ったし。
285 :
774ワット発電中さん :2010/05/21(金) 23:55:38 ID:Knvo0yED
MIcrochip自体も何の焦りか買収攻勢で、この擦れの人間みたいに必死すぎて痛いよ。
286 :
774ワット発電中さん :2010/05/21(金) 23:56:54 ID:Knvo0yED
>入手性 秋月で売っていると言う、狭義の入手性でしょ。
MicrochpDirectでちょっとの数からでもすぐ買えるしすぐ届くの知らないの? かなりの品種が即納だし、入手性は最強クラスなのは間違いないと思う
確かに手に入りやすい、近所の部品屋でも唯一扱ってるマイコンはPIC
289 :
774ワット発電中さん :2010/05/22(土) 01:38:36 ID:r+LrWT2+
>287 いまどきメーカ^直販で”優位”ってことはないでしょ。 通販、Digikeyの下に平等。 ほんと視力聴力の弱い、痛い人たちだねー。 >唯一扱ってるマイコンはPIC 上のほうで”ばかなの?”呼ばわりされてる16F84だったりして。
290 :
774ワット発電中さん :2010/05/22(土) 01:39:22 ID:r+LrWT2+
とはいえ、外バスなしマイコンとしての開祖ってのは間違いないね。
291 :
774ワット発電中さん :2010/05/22(土) 02:27:02 ID:wAXzMb3g
>>290 いろいろあったが、4ビット以外というと、PS2マウスに入ってたZ8なんてのも。
>>286 趣味でやってるから
それが最重要だったりする
arduinoの方向性も面白いとは思うし,やりたい奴はやっていれば 良いだろうけどね. 個人的にはシールドにあたるような部分を自分で調べて作っていく 過程が面白いんでお仕着せの道具立てを使ってはいできました・・という ことにはあんまり興味がないな。 コーヒーにたとえるなら 砂糖・ミルクまで全部入りの粉末スティック インスタントコーヒー単体 ドリップパックのようなレギュラー 挽いてあるレギュラーコーヒー豆 挽いてない豆 コーヒー屋で焙煎してもらった豆 生豆 などなどいろいろあって,どんな風にコーヒーを淹れるかは各自の自由だからな
294 :
774ワット発電中さん :2010/05/22(土) 09:06:20 ID:sG1a9ES/
おいら、学研のarduino互換機のスレで 「保護抵抗がないって聞いた これは欠陥商品だ 違法建築みたいなもんだ」 って騒ぐやつがいたんで 「欲しけりゃ自分で勝手に付ければ?」的なこと書いたら 「マイコンボードに電子部品を自分で付けるとか頭おかしい」とか 「(パーツくっつけて)俺ってすげーとか思ってろ」 みたいな事言われたでござる ここでグチってもしょうがないけどさ
俺もそのスレで絡まれた
実際そうだと思うけどな 完成品を買うしかない人向けの商品なのに、 完成してなかったらダメだろ
まあ口論として言い返すのではなく、ただ一言言えるのは保護抵抗が無いって学研に言って動作確認と保証込みでつけてもらうか、 学研が無理なら何か壊す前に改造でもしてarduino互換機やPCが壊れないようにどうにかしろと。 どっちもダメ(orイヤ)なら飾るだけのものにするか捨てちゃえと。 まあアレはまともにパーツをコツコツ集めている人から見たら電子工作もどきの可能な評価基板みたいなもんだからなぁ…。 >296と同じだけどアレで完結しているのに自分で直せって言われてもしょうがないかとw 車買ってきてさあ走るかと思っている人にいきなり自力でエンジン交換させるようなもんだな、多分。
保護抵抗が入っていない事が違法建築と同等に見なされるのはどうか?? 保障された性能は満足しているんじゃないの。 確かに入っているに越したことは無いが。
299 :
774ワット発電中さん :2010/05/22(土) 10:08:22 ID:hTBTjojc
うんエンジンではないよな 高い車のバンパーについてる棒とか 後方カメラ程度だと思う 確かにはじめからついてるのがベストではあった でも無いからって騒ぐなら自分で何とかしろっていわれても仕方がない
こっちくんなw
arduinoって基板に実装されたのしかないの? LED点滅だけでよいから周辺回路無しで小型に組みたい場合はどうするのかな?
>299 ああ、あの棒か。へたくそ棒だっけ?。 それぐらい気になるなら自分で付けろ、だよなぁ…。 という所で話をPICに戻すか。 やっとPIC12F675を動かし、PIC16F54も動かせた。(妙に動かない原因はMCLPをHiに繋いでなかった…orz 54から入ったし独学だったから判らんかった) これでPIC16F84Aなんかも動くだろうし、他のPICもいけるかもと考えてるが、次は何をさせようか悩む。 232はCCSでどのピンでもソフトウェア割り当ても可能で楽に通信可能だけどUSBは18Fの作例ばっかりだし。 やっぱりソフト側もVCあたりで組んで見やすくするかなぁ…。 ところでPICをソフトウェアUARTで増設可能な簡易A/D入力装置代わりに使うのを考えてるんだが、677以上にお値段とポート数の兼ね合いのイイヤツってあるかな? デジキあたりでも購入可能なら秋月で買えなくとも問題ないんだけど。
連続書き込みスマソ >301 arduinoのファミリ(というかコピー)にminiってあるはず。 大半の部分を表面実装品で作った小さいヤツ。 無論サイズを小さくするためにシールドも小さい(互換性無いんだっけ?) 後は自分で生AVRにブート書き込んで周辺部分を作るって手もある。 コレならいくらでも小さく出来る。
>>303 ぐぐりましたw
ああ、小さいのもあるんだね
arduinoってATmegaとか買って来て
ブートローダ(?)をダウンロードして書き込めば自作できるのかな?
意味がある無い別にしてさ
305 :
774ワット発電中さん :2010/05/22(土) 11:56:42 ID:/eXjyKXi
できますよ プログラム入れたチップを自作の回路に組み込めるよ ブレッドボード arduino とかでググると数百円くらいで作ってる最小単位の部品構成の人とか見つけられると思います arduinoボード単体でライター代わりになるから ブートローダー書き込んでarduinoをどんどん増やせるし (学研のは無理らしいんだけど) 売ってる奴は基本的に実験基盤と考えて確認とれたら自作回路に組み込むのが割と普通かもって気もします シールド要らないような場合は特に つかそろそろすれ違いって怒られるだろうな
コイツゥ( ´∀`)=○)д゚)
PICに2つのGNDピンが有る場合(28ピンのとか)、両方ともGNDに繋がないとまずいですか? 片方を繋いで、片方は繋がない状態で運用しても大丈夫ですか?
そんなことより休日なんだしPIC書こうぜ!! >307 大丈夫かもしれないしダメかもしれない、それは回路とか環境とかに左右されるかも。 でも普通両方とも繋いで欲しいからGNDってしたんじゃね? NCじゃないんだし。
あれは繋ぎやすい方に繋げれる為なんじゃないの
データーシートくらい読めよ
テスタでGNDを導通チェックすれば判るよ
導通してりゃいいってもんじゃないぞ パッドに流せる電流は限られてるし、インピーダンス下げる意味でも必要かも
>>308 自分もそんな風に思ってまして(^^;
でも両方繋いだ方が間違いはないですよね。
>>309 片面の感光基板でICの中を縦に線通しちゃうとジャンパを付けないといけないので
面倒なんですよね。
つなぎ易い方で良ければいいんですけど。
>>310 データシートで見つけられなかったので、どこを見ればいいか教えてもらえますか?
>>311 テスタでは導通してます。
導通してればOKですか?
>>312 何も繋がない方のせいで、不安定になると困りますよね。
実際問題があるのかわかりませんね。
ブレッドボードでは片方GNDに繋がなくても特に問題なく動いてます。
>>307 http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1959 のTutorials一覧にあるpower.pdf / power considerations - pic microcontrollers
ってのに書いてありますね。
意訳すると、内部でつなげてあるけど、線が細いから外から太い線でつないでくれ、ってこと。
高い動作周波数などの場合、まじめにやるなら、全部のVDD、VSSに太いパターンつないで、
さらに個別にパスコンつけといた方がいいと思います。
Many PICmicro MCUs have more than one VSS or VDD pin. This is common on
devices with higher pin counts. These pins are generally connected internally but
through a finite impedance. To insure proper operation, all VSS and VDD pins need
to be properly connected externally.
>>289 > いまどきメーカ^直販で”優位”ってことはないでしょ。
直販ゆえ優位とは書いていない。入手性がいいと書いている。
> 通販、Digikeyの下に平等。
本気でそう思っているなら、ただの経験不足。出なおせ。
>>313 動くかどうかで言えば動く
個人で遊ぶぶんにはそれでもいい
動かなければ配線追加すればいいだけだし
ただし、データシートどおりの性能は期待しちゃダメだろうね
ポートの最大電流とか、動作速度とか、ADの精度とか、そのへん
318 :
307 :2010/05/22(土) 17:42:00 ID:Oxt1NikZ
>>315 ありがとうございます。訳も付けていただいて助かりました。
やっぱり繋いでおいた方がいいですね。そのようにしておきます。
>>317 しっかりGNDに繋いでおくことにします。
それが一番間違いないですね。
関係ないけど、10ピンの7セグにコモンが2つある時も、 繋いだ方がいいんだろうか
繋がなくても点灯するかもしれんが、繋いだほうがいいに越したことは ない。ピンコンパチの他社製に変えようとしたら、内部でセグメントブロ ックが2つのコモンで分割されている可能性だってある。 パワーLEDなんかだと、ピンからパターンへの放熱を期待している場合も ある。
>>320 片方でいいよ。昔からの流れで、本来は片面基板で配線しやすくするのが主な目的だから。
>>321 繋ぐことのコストがゼロなら繋ぐだろうけど、
配線が複雑になるのにあまり意味のないことをするのも気が引ける
picしか経験がないのですけれど、今回usbバーコードリーダーを読む必要があって情報を集めています。 バーコードリーダーはキーボード扱いなのでHIDでいいのですが、picでusbホスト機能を持たせるにはどうすれば いいのかよくわかりません。 24fjシリーズにotgというのがあるというのはわかったのですが、秋月などでは取り扱いが無いようです。 おすすめがあったら教えてください。
>>324 ガンバだ!PIC博士になってみんなに情報を配信する人物になろう!
327 :
774ワット発電中さん :2010/05/22(土) 21:55:34 ID:FRNYw9xH
>>327 ありがとうございます。
とりあえずdip版を何個か発注してpickit2で書き込めるかどうかからはじめてみようと思います。
俺もちょうどUSBホスト付きのが欲しかった USBファンクションをFPGAに実装したことがあるから、CPLDで実装しようかと思ったけど、DIPがこの値段で買えるならありかな
331 :
774ワット発電中さん :2010/05/23(日) 08:37:47 ID:oys+t0lg
Pickit2で書き込めないPICがあるなんて考えたこともなかった。
pickit3の存在が不安にさせる
microchipのapplication notesのUSB関係を流し読みしたのですが、 何が書かれているのかさっぱり理解できません。 AN1140によると、windowsのソフトでUSBConfig.exeと いうものがあって、それで設定したUSBホストの設定内容を picに読ませるということなのでしょうか? Cのライブラリでサクサクとできるようなものではなさそうです。
pickit2で不具合があるからpickit3が出たんでしょ?
大量のコードを殆ど中身を理解しないまま使うのが、なんか嫌
それが動くのは、AVRだからだと思うぞ
>>336 そんな事言ってたらPCのプログラムなんて書けないよ
>>337 これはmcuがusb処理にかかりきりになってしまうのと、相手のデバイスを決め打ちに
することになるので、できれば24fjで作りたいと思います。
usbライブラリをインストールすると、USBConfig.exeができて、設定した内容にあわせて
C30用のヘッダとソースを出力しました。
もう少しヘルプファイルなどを読みこなす必要があるかもしれません。
342 :
774ワット発電中さん :2010/05/23(日) 22:29:26 ID:INcUvW19
>>292 最重要なのは、趣味的に萌えるかって事じゃないかな。
ダイレクトじゃなくて、デジキーで他のものと混ぜて買うときに、何に使うか記入する、
そのときに、少し首を捻ってしまう。何に使えるか考えるために買うってのはありなのかな。
インテルの8008が出たときには、マジに商社に\48000払って、CPUを買おうと思った。
ハードのスタックが6段あって、サブルーチンコールって概念を覚えたばかりの若者には、
ものすごい魅力的なCPUに思えたんだ。
PICのアーキテクチャーを初めて見たとき、そのときのことを思い出してしまった。
今、Microchip社の石だと、PIC24Hシリーズに萌えてる。16シリーズは、必要悪の
教会みたいなものだ。10万3千冊の魔道書を記憶する方が、アクロバティックなマシン
語プログラムやレジスタのビット定義を覚えるより、楽そうにさえ思える。
同じ事をするなら、16ビットマシン、40MIPSで動くCPUの方が、見返りは大きいはず。
C言語との相性も良い。
さすがに老眼には、0.5ミリピッチの半田付けは辛かったが、無理矢理変換基板に載せ
て、ただ今、VcoreやVDDのパスコンと水晶を、半田付けし終わって、導通と短絡のチ
ェックが終わったところ。
網膜の密度は変わらないんだから、光学的な工夫で老眼は無いも同じ
>>343 単体の受光素子の感度低下と、オートフォーカスのサーボの劣化が...。
糖尿で目がやられるって
受光素子の一部欠陥とかレンズの汚れ
>>342 俺はどっちかというと、PIC10 シリーズに萌える。
だな。 高性能で高級言語だったら、PICである必要はないし、「0.5ミリピッチの半田付けは 辛かったが」とか言うならボードで買ってくればいい。確実に動くし。
PIC32MXばっかり使ってる俺は少数派か・・・
PICはもう12系しかやりません 今更ながらSHに移行して、とても気分が良いです。 将来が明るくも感じられました。 好きな子に思いきって告白してみようとも思ってます。 さようならマイクロチップさん、そして てめーんとこのくそIFをそのまま押しこむくそマイコン を使い続ける皆様にご多幸が訪れる事を願っております。
12系はやるんじゃん
352 :
774ワット発電中さん :2010/05/25(火) 07:10:01 ID:6mat3ez9
SHで8pinとか24pinとかのパッケージあったらいいんだけどなw
353 :
774ワット発電中さん :2010/05/25(火) 10:05:02 ID:61JT7PsX
DFNでも?
355 :
774ワット発電中さん :2010/05/25(火) 11:05:36 ID:75v+wSUQ
356 :
774ワット発電中さん :2010/05/25(火) 11:42:19 ID:61JT7PsX
>>355 リンク先のやり方でデバイスリストに表示されるようになった。
サンプル注文した16F1827がまもなく到着するので助かった。ありがとう。
16F1000って、なんかか弱いイメージ。
桁数をむやみに増やさないで欲しい
ジンバブエいけば 16F1000000000000とかになるのかな
秋月のキットでPIC18F4550を使用しています。 5V駆動なのですが、3.3VのICとI/Oをつなぐ場合は 分圧するのがいいのでしょうか?
>>360 74HC4050Aとかのレベル変換バッファかませば?
>>360 1対1のバスならそれでもいいけど、
SPIのような複数デバイスが共存するバスでは
抵抗が不具合の原因となる場合がある
そういう時はVHC125のような5Vトレラントなバッファを挟む
>>361 >>362 田舎で秋月かマルツでの部品入手したことがなかったのですが
VHC125はなんとかさがせました。
届くまで分圧でがんばってみます。
ありがとうございます。
それはAV板でSEXが出るに値する
宝くじ板ではDreamに値する てか昨日でてたな
370 :
774ワット発電中さん :2010/05/29(土) 13:01:08 ID:mJzl1wMD
秋月PICプログラマーが対応していないのを忘れて18F2321を買ってしまいました。 18F2320は対応しているのですが、何とかならないもんでしょうか。
秋月PICプログラマーを捨てるしか選択肢は無い。 どうせこれから先も似たような事は必ず発生する。
88xに何時までも対応しないときに秋月ライタは捨てた 今は、チップ単独書き込み時はpickit2+変換基板 ICSP時は,pickit3を使ってる。
素直にPICkit3買った方が幸せになれるよ.
374 :
774ワット発電中さん :2010/05/30(日) 17:09:45 ID:Bopk3MNC
pickit3用のpic programmerって出ないのかな? Mikro C使って書き込みはMPLAB経由だと毎回import、書き込みで非常にめんどくさい。 pic programmerの自動書き込み機能便利だったんだけど。 なんでMPLABじゃないのかって、16系なので。
375 :
774ワット発電中さん :2010/05/31(月) 04:11:01 ID:/uRsGXdw
秋月でAE-PICPGM USBっていうPICKIT2互換機と PIC16F88挿せるアダプタPIC USB-18Aってのを買ってMPLABでデバグしようとしてるんですが PK2Error0028: Unable to enter debug mode というエラーが出てうまくいきません。 というか実回路のブレッドボードに5Vの電源入れてるのに Target power not detected - Powering from PICkit 2 ( 5.00V) と出るのがまず不思議。 AE-PICPGMの「T−B」ジャンパはB設定、 アダプタの方のスイッチはRUNモードでもPGMモードでも同じでした。 どなたかアドバイスなどいただけたら…
日本人の英語能力の低さは、致命的だよな。データシートすらまともに読もうとしない。 もうダメだね。
377 :
774ワット発電中さん :2010/05/31(月) 07:14:22 ID:A1C/zJh4
>>376 仮に日本語のデータシートがあっても読まない奴は読まない
日本人の英語力は上がってるらしいしよね 職場にも外人多いし 変なコンプレックスも昔にくりらべりゃだいぶ少なくなったし 英語の重要度は逆に下がってるけど (仕事に直結することも少なくなって)個人レベルでの必死さみたいなのは減ったかも 2chもインターネットもなきゃ 必死で紙のデータシート読んだろうしね
データシート読むより人に聞いたほうが簡単じゃん
日本人が英語が得意だったらパソコンは英語しか使えなくなってた かも知れないから良かったんじゃないの。
データシートの前にまずゴーグル先生だからな。
データシート、飛ばし読みしすぎて肝心なとこを見落として 動作しないのが俺の日常 そのために何時間も時間をついやすことになる。
384 :
774ワット発電中さん :2010/05/31(月) 22:16:20 ID:43/yPiwl
>382 軽石氏ね。善部町から出てくるな。
385 :
375 :2010/05/31(月) 22:33:17 ID:Men3X0ZO
すいません、375ですけどどなたかわかるかたいらっしゃいませんか… よくある質問みたいで型によってはヘッダボードが必要らしいんですけど、 16F88は大丈夫みたいです もしくは初心者スレがあれば誘導していただけると助かります
善部町にはネット環境が無いの?
388 :
774ワット発電中さん :2010/06/01(火) 01:21:34 ID:APB8nts4
てかなんで、Pickkit2を買わないのか。道具のDebug好きだねぇ。PICな人たち。
389 :
375 :2010/06/01(火) 03:12:42 ID:oDvVEfJO
>>387 ありがとうございます!おかげでこれ以上悩む必要なくなりました
今はpickit3ってのが出てるみたいなんでこれ買ってデバグしてみます!
C言語のコンパイル関係もここでいいでしょうか。 MPLABでデバイスを16F88に選択してビルドしてみたんですが、 1.18 can't open include file "16f88.h": No such file or directory というエラーが出て困ってます。 16f88.hをネットで探して落としてきて.mcwのHeader Filesに 直接指定しても同じでした。 ファイルの中やファイル、ディレクトリ名にも日本語等の 2バイト文字を使わないようにしてるんですが、 ほかに注意点などあればどなたか教えていただけませんか? MPLABはv.8.50でHI-TECH C Compiler for PIC10-12-16 MCUs V9.70、winXPです
>>391 ソースがおかしいんじゃね?
HI-TEC Cなら"pic16f87.h"が読み込まれるはず。
>>391 カレントのDIRに、ちゃんと置いてある?
そのエラーメッセージは、
No such file or directory =
決められてる所を見に行ったけど、そんなファイルは無いじゃん
ということだけど。
>>391 pathが正しく追加されていないとエスパーしてみる。
インストール時に、『path追加するけど良い?』みたいな質問が(英語で)あったはずだがそこでキャンセルしてないか?
include するのは pic16f88.h じゃなくて pic.h じゃよ。
396 :
たった :2010/06/01(火) 20:59:13 ID:5xnVp+9X
おねがいさます
>>394 あー、たしかにインストール時になんか聞かれてスキップスキップランランランした気がします!
家帰ったらどっか設定調べてなんか追加してみます!
バカは書き込むな
と馬鹿が言うんだから間違いない
399 :
774ワット発電中さん :2010/06/02(水) 01:16:53 ID:GY3odZGr
>397 勝手に仕切るな軽石。はよ氏ね
PICを勉強したくて、何も知らないまま
コンパイラはSolitonWaveのSourceBoost というのを買った。
(たしかFull Licenceで\9,800くらいだった)
でも
>>3 のリストにも出てこないマイナーなコンパイラなのですか? orz
いままでPIC12F683、PIC16F84、PIC16F648A、PIC16F88、
PIC16F873A、PIC16F876A、PIC16F877A、PIC18F2550でいろいろ作ったけど特に不都合なかったんですけど。。。
401 :
家電.com :2010/06/02(水) 01:23:05 ID:MVPs3tdl
>>400 自分も使ってる。\3,800のタイプだけど、16F/18Fが一通り扱えて便利。
ライブラリは貧弱すぎて全く使ってないけど。
24FJ64GB002が届いたのですが、pickit2で書き込むときの結線は 何を参考にすればいいのでしょうか。
>>403 両方ともMicrochipの製品なんだから公式HPでドキュメント探せばいいのに。
PICkit 2 Microcontroller Programmer User's Guide
PIC24FJ64GA1/GB0 Families Flash Programming Specification
>405 バカは書き込むな。 あ、俺は軽石じゃないから。 軽石ってなんのことかシラネーし。 そもそも軽石って騒いでいるやつって一人の粘着だけだろ?
今日、山手線の電車の中で隣のおっさん2人が 「鳩山由紀夫はPIC16F84だ。」 「小沢一郎はPIC16F877だな。」 と言ってて思わずワロタww
>>402 PIC18ならMPLAB付属ので良いのでは?
410 :
774ワット発電中さん :2010/06/02(水) 22:48:44 ID:oeTeQ4rN
>そもそも軽石って騒いでいるやつって一人の粘着だけだろ? 3人くらいかもしれません(-o-;)
>>409 PIC16のCコンパイラとしては安価なのと、PIC16/18でコードの融通が効くのが便利なところ。
C18と比較してあえて導入するメリットは薄いけど。
>>405 >ここで聞いちゃった方が早いですからw
調べれば分かる事を調べないで、人に聞いちゃう奴に共通する点
・あきらめも早いですからw
これ豆知識ナw
413 :
774ワット発電中さん :2010/06/03(木) 23:33:11 ID:xN7W+IwN
>412みたいに説教ばっかしてるやつって、自分では何もできないですから。 これ常識なw
415 :
774ワット発電中さん :2010/06/04(金) 01:45:38 ID:cEKbzUnG
まっくた軽石乙だぜ。
先日秋月のPickit2互換機買ってデバグが出来ずに失敗したものですが、
pickit3買ったのでさっそくこのサイトを見て
http://www.eleki-jack.com/mycom2/2009/05/pic9.html MPLABでデバッグしてみようと思いました、、、が
下記エラーが出てデバグできません
PK3Err0040: The target device is not ready for debugging.
Please check your configuration bit settings and program
the device before proceeding.
大きな疑問点は二つで
1)Configuration bitでデバッグをオンにする方法がわからない
2)Project > Build Configuration > debug が選択できない
代わりにグレイアウトでno Build Configurationという文字が表示される
16F88への電源供給はpickit3から。
MPLABはVer.8.43でfusesは下記のように書いてます
#fuses HS,NOWDT,NOPROTECT,PUT
慣れた方なら簡単に解けそうな問題だと思いますが、よろしくおねがいします…
417 :
405 :2010/06/04(金) 07:06:33 ID:1HxSK5fe
嫌味のつもりだったんだけど・・・
頭悪いんだから無理するなって・・
>>417 嫌味のつもりだと思ったが、字面通りに受け取る奴って…
>>416 ccsの場合は #fuse DEBUG 指定もあるぞ。
でも それでは不十分かもしれん。
Deviceヘッダincludeの後に #device ICD=TRUE 記述するか
Project > Build Options... > Project > CCS C Compiler > Compile for use with ICD Debugger
にチェックして再buildな。
上記の方法では #fuse記述を一部無視して、強制で
#fuse NOWDT, NOBROWNOUT, NOLVP, NOCPD, NOWRT, NOPROTECT, DEBUG 扱いになる
少し訂正 #fuses PUT, NOWDT, NOBROWNOUT, NOLVP, NOCPD, NOWRT, NOPROTECT, DEBUG 扱いになる
>頭悪いんだから無理するなって・・ PICに固執している時点で
>>416 さん
MCLREをイネーブルにしないとどうにもできなかった記憶があります。
MPLAB C18だと
#pragma config MCLRE = ON
かな。
コンフィグレーションビットが間違っていると、
動作周波数とかも変わってくるし、起動タイミングの問題で
周辺チップが上手く立ち上がってくれなかったりするみたいですね。
PIC32MXは知らないうちにラインナップが増えている。
RAMのMAXは128kになっているし、イーサやCANも搭載しているね。
424 :
416 :2010/06/04(金) 14:19:18 ID:VhrXdrfx
みなさんの助力に従って色々変更してみましたがだめでした…
頭の方はこんな感じ
#include<16f88.h>
#fuses HS, NOLVP,NOWDT,PUT,NOPROTECT,NOBROWNOUT,MCLR,DEBUG
#use delay(CLOCK=40000000)
#use rs232(stream=MIDI, BAUD=31250, XMIT=PIN_B5, RCV=PIN_B2, parity=N, bits=8)
CCSのcompile for use with ICD Debuggerチェックも入れてます.
pickit3と16F88との配線はここと一緒にして
http://blog-imgs-24.fc2.com/c/h/a/challenge33/20090208233111.jpg (アドレス直打ちでないと見れないかもしれません)
回路の方は16F88を置くだけにしても同じエラーが出てデバグ出来ませんでした…
>>424 この件とは関係ないと思うけど
CLOCK=40000000
って40MHz?
>>424 MCLRピンは10kΩ程度でVddプルアップ必要だな。
それとclock設定も重要。
Programming modeと違って、Debugger modeでは
指定通りのclock発振してないとICD通信出来ないからね。
ブレッドボードや16F88単体では内蔵clockオヌヌメ
動作clock指定は間違えないように
427 :
774ワット発電中さん :2010/06/04(金) 21:52:41 ID:wOiQ6JjM
HEX fileがあるやないか
と思ったら 404error か
>>427 ワーニングは出るけどエラーはでないしコンパイルもちゃんとできる
CCS-Cのセットアップとかちゃんとできてる?
432 :
774ワット発電中さん :2010/06/04(金) 23:52:13 ID:D+InGuiA
#FUSESや#useはPICCでは使えないという様なエラーなのですが、 CCSは使ったことがないのでその部分の書き換えかたがわかりません
434 :
774ワット発電中さん :2010/06/05(土) 00:12:03 ID:Frfokq1M
435 :
416 :2010/06/05(土) 02:37:36 ID:pLoccssh
おかげさまで、といいますか、pickit3を諦めて秋月で買ったpickit2互換機の ICSPポートを試しに使ってみたらなんとあっさりデバグできました!!!複雑…でもよかった! で、やっと色々検証できるようになって質問なのですが、 16F88のA2(1番ピン)から矩形波を発振したいだけなのですが、 余計なものを省いて下記のコードまでそぎ落としても矩形波発振してくれません。 ウチのオシロスコープが壊れてるわけではないと思うんですが、何か足りない点などがあれば お教え頂きたく… #include<16f88.h> #fuses INTRC_IO, NOLVP,NOWDT,PUT,NOPROTECT,NOBROWNOUT,MCLR,DEBUG #use delay(CLOCK=8000000) main() { setup_oscillator(OSC_8MHZ); while(TRUE) { output_high(PIN_A2); delay_us(803); output_low(PIN_A2); delay_us(793); } }
ansel port の出力設定は?
>>pickit3を諦めて秋月で買ったpickit2互換機 これで完了とは、なんか悲しい感じがします。
>>435 エレキジャックのレポートにあるように
PIC16F88とPICkit2(互換)ではDebugに問題あるようだよ。
http://www.eleki-jack.com/mycom2/2009/05/pic_4.html 4項
PICkit3なら問題ないらしい。
PICkit2で続けるなら
Program mode で build & Programして MCLR releaseすれば即実行できる
俺は下記のコードで動作確認出来た。約628Hzだった
#include<16f88.h>
//#device ICD=TRUE
#fuses INTRC_IO
#use delay(internal=8M)
main()
{
while(TRUE)
{
output_high(PIN_A2);
delay_us(803);
output_low(PIN_A2);
delay_us(793);
}
}
>>436 妥当な指摘だけど、ccsの場合 原則デフォでall DIGITAL設定になる
ADCONxやANSEL,CMCONとか勝手にw あとINTRCの場合OSCCONも
特にver4ではConfig bit指定も半自動設定される
CCS てそこまでやってくれるんだ
>>434 ファイルを保存して、拡張子を HEXなりなんなりにしてみればOK
442 :
435 :2010/06/05(土) 19:42:26 ID:K38gmGXs
>>437 せっかく買ったのに僕も悲しいですけどデバグモードに入るだけで一週間かかったので
とりあえず今回はこのままpickit2互換でやってみます
>>438 書いていただいたコードをそのまま貼り付けてやってるんですが波形でません(;´Д`)
オシロでよーく見ると0Vあたりを微妙にゆらゆら動いてるかんじです
テスタで周波数見ても0Hzです
0) project wizardで新規プロジェクト、コンパイラはccs使用
1) 回路の方は16F88をブレッドボードに置くだけ。
2) ややこしいのでpicKit2との接続外して電源は外部電源5V確認。
3) 4番ピンに5V、5番ピンはGND。
4) 14番ピンは10kΩの抵抗つけて5V注入、か何も挿さないかのどちらか。
5) オシロやテスタで計るのは1番ピン(+)と5番ピン(−)
6) int=5;とか適当な変数入れてデバグしてwatchで見るとちゃんとセットされてる(picに書き込みはされてる)
MPLAB IDE v8.43です。
な、なにか間違ってますでしょうか…
>>442 PICkit2と16F88の組み合わせでDebug-modeは正常動作しなかったよ。
Debug用じゃなく通常buildして書き込みすれば問題なく動いた。
ccs記述のソースコードに問題は無く PICkit2とIDEが悪いと思う。
IDE v8.50でも試したけどDebugは駄目だった。
Debug実行を重視するならPICkit3を使えば委員じゃね?
>>442 PICkit2と16F88の組み合わせだと、どこかにBREAK POINTを
セットしないと、正常動作しなかったはず。
445 :
435 :2010/06/05(土) 20:54:06 ID:K38gmGXs
>>443 >>444 ありがとうございます。
デバッグに関してはpickit2互換機にしてからはとりあえず問題なく動いています!
ただ1番ピンから出力が出ないってことでつまづいてまして、
>>438 さんに最低限のコードを書いてもらいました。
通常ビルドして書き込んでます。
デバッガは使用出来ることがわかった以上、
必要な時に立ち上げればいいのでとりあえず今は使ってません
>>442 16f88の電源は、14番ピンはVDD=5V、5番ピンはVSS=0Vです。
0.1μFのセラミックコンデンサ入れてますか?
10KでVDD=5Vにプルアップするのは、4番ピンのMCLRです。
1番ピンはRA2/AN2なので、Aポートの3ビット目ですが勘違いしてませんか?
ついでにアナログ入力にもなるので注意が必要。
ロジック信号を出力に使用するなら、初心者の慣れないうちは
Bポートの6番ピンRB0〜13番ピンRB7を使う方が簡単で良いかも。
>>439 >ver4ではConfig bit指定も半自動設定
もう少し詳しく教えてください。
449 :
19 :2010/06/06(日) 15:32:44 ID:j3HX28Ki
>62 ありがとうございます。 返事を頂いたことに気付きませんでした。 PIC24FJ64GB002で 試せる限りのことはしてみたのですが、 CPUリセットした時点ですでにトレラントピン(USBのD±端子以外) TRISBが強制的にオールゼロ(出力?か強制リマップ)になっているという現象で GPIOとしては使えてません。 ちなみにリマップの入力端子としては設定通りに使えています。 USBをインクルードした時点で端子FIXされたのかなぁ・・・
PIC18F14K50を 48MHzで動かしたことのある人いますか? 可能ならば設定とかソースリストを見せて頂けないでしょうか。 一応、希望としては CCS-Cのソースがいいんですが、 他のコンパイラでもアセンブラでもかまいません。 よろしくお願いします。
>>450 C18でやったことあるけど。
ソースはまんまマイクロチップのUSBサンプル。
タイマ2を480分周して25kHzになってるから12MIPS=48MHzで動いてるはず。
12MHzのセラロックを使って、FOSC=HS,PLLEN=ONで48MHz動作すると思うけど。
FSCMが働いちゃってるとかかね。
具体的には何MHzで動いてるのさ?
>>450 自己レスです。
ここに書き込んだ直後に「あ、Googleしてないや」と思い立ち、
検索したら、なんとかなりそうな感じです。お騒がせしてすみません。
>>451 レスありがとうございます。
PIC18F14K50はコンフィグとかが自分には複雑で色々研究中です。
コンフィグを強制的に書き換えたら48MHzで動きました。
それ以前は、どうしても 12MHzになっていました。
勉強して出直してきます。
454 :
natu :2010/06/06(日) 19:31:18 ID:G43s8rkB
>>454 頂きました。
コンフィグ関係は CCSより C18の方が分かりやすいですね。
456 :
natu :2010/06/06(日) 21:12:53 ID:G43s8rkB
>>455 PIC18のCCSを使った事が無いのでアドバイスも出来ないです...
何かの役に立てば「良し」ですね。
読んで頂いた見たいなので消しときました。
C18+MPLABで MCLREはデフォルトでONなので、 #pragma config MCLRE = OFF と書かないとOFFにならない その後、その行をコメントアウトしてもOFFのままになってしまうので、 そのソースを別のところに持っていくと動かない #pragma configを書かないとデフォルトに戻るように設定できる?
ロータリースイッチから16進の値をa/dで把握したいのですが、 スイッチのa,b,c,dの足に配置する抵抗の値などをとりまとめた 資料などはありますでしょうか。 オペアンプを使うのはなるべく避けたいのですけれど、それだと 1024の刻みでうまく収まらないで困っています。 よろしくお願いします。
>>458 R-2Rラダー式のD-A変換回路にすればいいよ。それをA-Dで読む。
460 :
774ワット発電中さん :2010/06/06(日) 23:20:35 ID:6F1msiUu
でじたるでよめー
>>459 ありがとうございます。
ラダーは5端子のロータリースイッチだと無理っぽくないですか?
操作性の面からディップスイッチやジャンパなどは使いたくないのですけれど。
わ
>>458 リニアに読みたいならCRDでプルアップして1,2,4,8の抵抗を通してスイッチでGNDに落とす。
値の変換をすればCRDの代わりに抵抗もつかえる。
466 :
465 :2010/06/07(月) 00:17:20 ID:2VLKDo+S
良く考えたらダメだな。 電源-DIPSW-1,2,4,8の重み抵抗-低抵抗-GND 十分なリニアリティが得られるように重み抵抗と低抵抗の比を決めて、低抵抗に掛かる電圧を読む。
Vcc-----カレントミラー8mA設定-----スイッチ(2^3)----スイッチコモン Vcc-----カレントミラー4mA設定-----スイッチ(2^2)----スイッチコモン----(a)----抵抗----GND Vcc-----カレントミラー2mA設定-----スイッチ(2^1)----スイッチコモン Vcc-----カレントミラー1mA設定-----スイッチ(2^0)----スイッチコモン a点の電圧をA/Dで取り込む。 カレントミラーは、トランジスタ+抵抗のやつ。 電流の設定は、抵抗1本で設定できる どう?
468 :
774ワット発電中さん :2010/06/07(月) 03:11:09 ID:3MFz8ob6
ここの住人さんはド素人の質問にも答えてくれるの?
>>468 質問者がどういうことをやりたいか、どういった問題で困ってるかが
ハッキリと伝われば答えてくれるでしょう。
素人具合などは無関係ですよ。
そだね、知識の引き出しはたまに開けてやらないと忘却の彼方へ行ってしまうかも 簡単な質問でも、自分の為に真剣に解凍する!!
>>462 バッファがいやなら、1kΩくらいでプルアップして、Rに20kΩくらいの値を選べば
行けるっしょ。やってみれば?
みなさんありがとうございます。 ・デジタルで読む(簡単だがi/oピンを浪費。picを変更する必要あり) ・ラダー(ロータリースイッチでは無理。部品も増える。) ・カレントミラー(部品点数が増える) ・もう一つpicを乗せてそれにデジタルで読ませる。 ・ロータリースイッチをあきらめてup/downボタンで内部処理する。 私のニーズからすると、ロータリースイッチとそっくりな形状で、可変抵抗みたいなものがあれば 一番いいのかもしれません。
473 :
471 :2010/06/07(月) 07:39:12 ID:6k+86Hxu
>>472 Rに20kΩくらいじゃなくて、2Rに20kΩくらい、と書きたかった。
だからRが10kΩくらいね。4ビットD-Aなら充分でしょう。
>・ラダー(ロータリースイッチでは無理。部品も増える。)
これR-2Rラダーのこと? 無理じゃないよ。部品点数はプルアップ用に
5ピンの抵抗アレイを1個、バラの10kΩを3本、20kΩを5本。これじゃ嫌?
>>472 なんだ、そういう目的だったのか。
>>458 の説明では「素直に4本使えばいいのに何で?」と思った。
I/Oピンを少なくしたいなら、そう言ってくれ。
部品点数が増えるのを気にしているみたいだけど、線4本を1本で済ませるための細工が必要なんだから、
多少の部品点数は許容しないとできないよ。1本で2個の部品使っても4回路あるから8個の部品は増える。
>・ラダー(ロータリースイッチでは無理。部品も増える。)
無理じゃないよ。キミができないと思っているだけでしょ。
・Vcc----コモンという接続のロータリースイッチBCD出力は、H←→Hi-Zしかできない。
・なのでその出力に470オームくらいでプルダウンすれば、push-pullになる。
・その上で、R-2Rの抵抗に、470より大きめの10kくらいを使えば、誤差は5%くらいにならないか?
>・カレントミラー(部品点数が増える)
実際に回路を考えてみて。そんなに難しくないよ。
欠点は、定電流にするために少しの電圧が必要なので、
0V〜5Vとかの広い範囲で変化させられない、ということはあります。
メリットは、抵抗の調整で、1-2-4-8の電流が個別に調整できるので、
実際に調子のいい電圧(分離しやすい電圧)に調整できる。
あと別法として、C-Rの充放電時間で求める方法がある。
CRの時定数で、Cを固定しておいて、Rを変化させると充電時間が変化することを利用する。
出力でコンデンサを放電して、入力に切替(Hi-Zにする)と同時に時間計測する。
ポイントは、CR充電カーブの初期の段階にスレッシュを置くこと。
別法には、ゲートでCR発振回路を作って、その周期を測って知ることもできる。
>>476 ロータリースイッチは、ロータリー・エンコーダと同じなの?
>>446 ありがとうございます、ご指摘の通りプルアップのピン(MCLR)を間違えていました
こういうイージーミスほど自分ではなかなか気づかないので助かりました!
違う
480 :
774ワット発電中さん :2010/06/07(月) 16:05:46 ID:8x7Cm0/X
ブレッドボ〜ド上のものをPCに繋ぐなんて俺には理解できんwよくできるね
>>476 ロータリーエンコーダーだと初期位置わかんない…
>>472 の作りたいものが必ず1から始まるとかいう仕様でいいんならいいけど
ccsでパルス波形のデューティ比を変更したりストップさせたりする
プログラムを書いてるんですけど、
出力を停止させる時に下記のように書いてます。
setup_timer_2(T2_DISABLED,0,1);
こうすると止まるには止まるんですけど、
オシロでずっと見てると止まる時に一瞬デューティー比が100% HIGHの状態に
なってゆっくりと0vまで下がっていきます。(その間1秒以内)
止めた時に常にそうなるというわけではなく、何回かに一回なる感じです。
このサイトの下のやつを参考に作ってるんですけど、
上記書き方以外にピタっと停止させる方法ないでしょうか?
http://quickturn.xrea.jp/pic/pwm.html
用途はこんな感じです。 ・RS485でデイジーチェーンしたpic端末にユニークなIDを設定したい。 ・SCSIのIDのように起動時に一回参照するだけで、以後動作時には参照しない。 ・ロータリーエンコーダーのように毎回初期化されるのはダメ。 ・値を変更するのは導入時と、機器追加でIDが競合したときだけ。 ・電源オフ時でも一見してIDの設定が分かるのが望ましい。 ・アナログ入力は余っていると想定。 ・部品点数は極力増やしたくない。(18ピン、200円も部品を増やすくらいなら picをもう一つ載せてデジタルで読む判断もありうる) ・picのフットプリントを増やしたくない。(でかい40ピンになるのは避けたい。) よろしくお願いします。
>>483 ユニークIDならフラッシュなりEEなりに書いとけばOK
>>482 出力止めるのにデューティー0にするのじゃダメなの?
>ゆっくりと0vまで下がっていきます
これはHi-Zになってるんじゃないか。一回output_lowとかすればいい気がする。
>>483 IとOは、それぞれ何本空いてるか書かないとダメでしょ。
後出しで「実は1本なんです」とか言い出さない?
あと、16種類が判別できればいいの?
後出しで「実は128種類なんです」とか言い出さない?
もうなんか仕事の域だな。
>>483 DIP-SWで設定して、パラレル→シリアル使って読み込み。
4ビット位なら74の8ピンでなかったかな。
たぶん信号3本もあればOKかと。
>>486 16段ロータリースイッチのa,b,c,dの値をアナログ1本でうまく読みたい。それだけです。
抵抗10本程度でできればいいのですが、実用化提案につなげたいので、何百円も
コストをかけるとか、延べピン数を数十本も使うというのはなるべく避けたいです。
追加のpicを載せてアナログ端子をデジタルのシリアル入力に転用して使用する
選択肢は
>>472 で示していますが、それよりも単純で安価になるのが理想です。
R-2Rラダーは私自身理解できてませんが、もしかするとうまくできるかもしれません。
もう少し情報収集してみます。
>>483 >・SCSIのIDのように起動時に一回参照するだけで、以後動作時には参照しない。
その程度の参照で良いなら重要度の低い出力とI/O兼用にしちゃうピン数節約方法がある。
インジケータ用LEDとかキャラクタLCDのdata 4本みたいなのとロータリーDIP-SW入力をI/O兼用にすればok
SW入力の瞬間だけ出力に影響するけど、上記みたいな兼用では問題にならない。
16進ロータリーDIP-SWあたり、追加部品は1kΩ程度の直列抵抗4本
>>482 えーと、set_pwm1_duty((long)0); とかじゃ駄目なの?
>>489 アナログ値がぴったり16等分じゃなくていいなら
抵抗5本でいいんじゃない
読み込んだあとのソフト処理は必要だけど
>>489 >R-2Rラダーは私自身理解できてませんが、
おいおい、おいおい!
知らなかったの? 今朝からずっとR-2Rの話をしてたのに。
>追加のpicを載せてアナログ端子をデジタルのシリアル入力に転用して使用する
>選択肢は
>>472 で示していますが、それよりも単純で安価になるのが理想です。
何言ってんの、pic追加するより、R-2Rで取り込んだ方が何倍も安いよ。
追加部品は抵抗だけなんだよ。
呆れた。もう知らん。自分で考えてくれ。
>>472 外付け部品を増やしていいなら、シフトレジスタ経由で1bitにする
4bitx2くらい一度にいける
それは回路は見て知っているけど、原理をわかっていないと告白しているわけですね。
ID:QWY8Dw8A が指導教員に徹底的に叱咤されますように
>>495 >接点が解放されうるロータリースイッチでどのように構成すればいいか
だから
>>474 に書いたじゃん。
読んでないの?
>実用化提案につなげたい なるほどぉ。
>実用化提案 だったら、こんな所でタダで聞くより、自分で悩んでやらなきゃダメだよねぇ?
コモンに47Ω、MSBから1kΩ、2kΩ、3.9kΩ、8.2kΩ程度で流し込んで やれば1LSB=250mV位になるから、10ビットA/Dならいける気がする。
>実用化提案につなげたいので、 >何百円もコストをかけるとか、延べピン数を数十本も使うというのは >なるべく避けたいです。 今までみんなで考えていたアイディアは、キミの実用化提案のネタだったのか。 「なかなかいいじゃないか、キミが考えたのか?」と上司に聞かれたときに、 「2chのスレで教えてもらいました」と胸を張って答えて欲しい。 まちがっても 「はい、そうです。自費で本を購入し、この土日に考えてきました。 頭の中でちょっと考えただけの回路なので、うまく動くかわからないですが。はははは」 とか言わないでね、
504 :
774ワット発電中さん :2010/06/08(火) 02:17:45 ID:UVrS3bPJ
大して手間も金もかかる回路じゃないし、組んで悩んでみたら?
>>503 むしろ言って欲しい気がするぞ。
で、実はこのスレの回答者が上司で(ry
なんつーか、PICスレじゃなくて初心者スレでやって欲しかった内容だな。
picを使っていると言うことでここで質問させてもらいましたが、ちょっと質問のレベルが低すぎた みたいで恐縮しています。 みなさんありがとうございました。
回答を得てからの対応レベルが低かったw
質問のレベルが低すぎではなくて、 試しに作ってみよう、動作原理を理解してみよう、など 自分で努力しようとしなかったんじゃないか? 答えが得られればいいと。
けっこう綺麗に出てるじゃん。
あ、それからOUTってラベル付けてる所じゃなくてR5の左側で読んでね
511です
>>513 R5の値が大きいので、特性が曲がってしまいますね。
電圧maxが小さくなっても良いので、直線性を上げた方が良くないですかね。
どのみち、テーブルで範囲分けするので関係ないですかな。
>>467 にも書きましたが、カレントミラーにするのが良いと思いますが、どうでしょ。
4ビットしかないんだから抵抗5本で充分でしょ。
相変わらず、常識をわきまえているやつ、わきまえてないの混在したとこだなw
誤爆したorz
0x00 と 0x01 は電圧差が大きいので、いいと思いますけど、 0x0e と 0x0f の場合、確実に判別できますかね? ・抵抗値のバラツキ ・AD変換値のバラツキ ・抵抗+ADの温特 ・ADのVrefのバラツキとノイズ
>>519 ADの精度、分解能とその後の平均とかのソフト処理による。
522 :
513 :2010/06/09(水) 15:19:09 ID:rGZoCcjH
>>515 > 電圧maxが小さくなっても良いので、直線性を上げた方が良くないですかね。
リニアリティよりも各値ごとの電圧差を大きく取るためにこの辺にした
> カレントミラーにするのが良いと思いますが、どうでしょ。
「綺麗な波形を出す事」が目的ならそれで正解だろうが、今回の場合、
「必要十分な特性が得られる最小の回路」が目的だろ?
どちらが部品点数多いか数えてみれば、どちらが「良い」かはわかるだろ
>>519 0x0eが約2.64V、0x0fが約2.71Vで、0.07V(70mV)の差がある
5Vフルスケールで1024bitなら1bitあたり約0.005V(5mV)だから、A/D値としては14LSb程度の差はある
だから
> ・AD変換値のバラツキ
これは問題ない
>・抵抗値のバラツキ
バラツキがあっても影響が少ないように、わざとE6系列から選んでいる
E24の5%抵抗を使えば、十分識別可能な程度には差が出る
一番シビアな0x0eと0x0fの違いに影響するR1とR2を約10%動かして R1=18K、R2=7.5Kにしても
2.62Vと2.68V程度になる
>・抵抗+ADの温特
抵抗はR1〜R4とR5の「比」が重要なのであって絶対値の変動は問題にならない
5本の抵抗を近くに配置しておけば、全てが同じように温度の影響を受けるから「比」はほとんど変わらない
A/Dの方は、低電圧で使うと問題になるけど、3.3V以上で使えば-40℃〜+128℃で1LSbも違わない
>・ADのVrefのバラツキとノイズ
Vref=VDDにして、この抵抗の電源もVDDから取れば、電源電圧の変動は相殺されるから問題ない
ノイズは、A/Dがマトモに使える程度のノイズレベルなら14LSbも離れてたら問題ないだろ
511=515です。
>>522 ご意見、ありがとうございます。だいたい予想した内容で良かったです。
>>511 のものは、0x00〜0x0fまで、4500mVを15段階に、ほぼ300mV程度に均等になっています。
・70mVの差と300mVの差を比べると7.5倍、650%もの電圧マージンが確保されます。
・抵抗5個に比べれば、全部で12個ですので、数は多いですが7個だけです。
・抵抗は、1%品使っても1個1円しません。7個で7円しません。
これらの差を、どのように考えるかですよね。僕なら、12個の方を採用すると思います。
俺チンポ30センチに出来るぜ どうやるかって? 半部に折りまげるのさwwww
526 :
458 :2010/06/09(水) 21:48:54 ID:lLeN5mX6
多数の助言ありがとうございます。
とりあえず
>>502 さんが教えてくださった半固定抵抗を秋月で取り寄せています。
10kオーム+1kオームの組み合わせで0-110までの111段階が生成できそうです。1個50円という単価も魅力的です。
1個では16段階にできませんが、2個ならできます。00〜15以外の値を設定した場合はすべて15とみなすなどのルール
を徹底すれば、それほど混乱はしないと思います。
入手性や経年変化などはちょっと心配もありますが、うまくいけば前提条件をすべてクリアできると思われます。
半固定の抵抗値にそんな精度があるかよw
>>526 その手があったのか。僕もそれは気がつかなかった。いいかも知れないね。
自分が下した判断で行動するのはとても重要なことです。
キミの経験値がグッと上がる。同僚みんなより、一歩リードだと思うよ。
ガンバレ。結果が出たら、また教えてね。
>513のように抵抗4本で実際に使っているよ。 自分の場合は抵抗に定電流が流れるのでR5無しで抵抗値がそのまま電圧になる。 量産なんで1種類のチップ抵抗を使って 0.5k(1k並列) 1k (1kのみ) 2k (1k直列) 4k (4つ直列)ってしてます。
>>530 えっ?!
駆動源は定電流の合成でしょう?
あの回路でR5無しで、電圧を得られるの?
532 :
513 :2010/06/10(木) 01:52:10 ID:qNsPLjDP
>>523 >>511 はR-2Rラダー(の変形版)であって、カレントミラーじゃないじゃん
522では、「カレントミラーに比べて部品点数が少ない」って話してるのに、何でR-2Rラダーとの比較になるわけ?
511の回路は場合によってはアリだと思うけど、部品コストというより、むしろ基板の実装面での判断かなぁ?
R9〜R10をGNDに落とすという事はピア開けないといけないので、部品代だけの話で済まないし
実装面積的には513の3倍ぐらい場所取りそうだし。
それでもなお、十分なマージンが欲しいという時でなければ、そこまでは必要ないように思う。
マジな話、ロータリー円コーダ読むのに R−2Rとか定電流とか使ってどれだけのメリットがあるの? スゲーとは思うけど、コスト・人件費・MTBF・壊れた時の故障解析・ 実装面積・ばらつき・チャタ&ヒス考慮ADプログラム・プログラムバグ・消費電流・・・ 趣味ならオモシロいなぁーーーって感動するけど、 実用化なら・・・一昔前の漏れならやってたかもしれんが今ならやらないなぁ ひとりごとだけどな
>>526 ちょっと何言ってるのかわかりませんねー
つーかさ、単にIDつけたいだけなら 抵抗2本でいいと思うけどね。 スイッチすら不要 見た目で分かりにくいって? だったら、ID番号シールにして貼っとけw
536 :
458 :2010/06/10(木) 22:35:51 ID:RbZcG65l
>>529 秋月からパーツが届きましたので報告します。
とりあえずパッケージに目盛りが切ってあるだけで中身はまるっきり可変抵抗でした。
ねらうのに多少コツがあります。
回しながら抵抗値を計測するとこんな感じです。
10kΩ
目盛読み値 0,1,2,3,4,5,6,7,8,9,10
実測値1回目 0.2 370 1270 2280 3500 4740 5870 7260 7950 9320 10000
実測値2回目 0.4 256 1220 2450 3400 4550 5840 7280 8250 9300 10000
1kΩ
目盛読み値 0,1,2,3,4,5,6,7,8,9,10
実測値1回目 0.5 30 135 253 354 447 555 683 766 893 958
実測値2回目 0.4 36 134 272 340 451 558 682 757 878 958
誤差が多くて111段階など全く無理ですね。
もう少し考えてみます。
PICKIT2って、16F84A書けないの? 昔書いたソフト(HEXしか残ってない) を焼きたくて買ったら、書き込めないんだけど。 ちなみに、同時購入の16F88は書き込めてます。
>>537 普通に書ける。
俺は秋月のAKI-PIC2だけど。
539 :
530 :2010/06/10(木) 22:49:14 ID:KuVy1727
240,(240/1) 10mA 自分の場合は入力元が10mA単位で違うのでロータリDIP-SWで 120,(240/2) 20mA A/D変換しやすい電圧に合わせています。 80,(240/3) 30mA 例えば 30,60,120,240オームをDIP-SWにつなぐと合成抵抗が 60,(240/4) 40mA 左のようにデジタルで変化するので 48,(240/5) 50mA 48x50mA=2.4V 40,(240/6) 60mA 40x60mA=2.4V 電流に合わせてA/D結果を一定にできる。 ... 16,(240/15)150mA ID設定のためにロータリSWを使ってないからね。
>>537 最悪、逆アセンブルして648用にするとか。
コンフィグレーションビット変更
コンパレータOFF
これだけでいける?
543 :
537 :2010/06/10(木) 23:13:06 ID:FD3Hfxoc
545 :
537 :2010/06/10(木) 23:43:08 ID:FD3Hfxoc
>>542 レスTHX
おっしゃる通り、選択は可能です。ReadとErase(3FFF)も可能
書き込みだけ失敗(結果0000が書き込まれる)
とりあえず、542様の回路にて明日調べる予定です。
と言う状況で詰まってた所です。
>>544 レスTHX
MPLABは視野に入れてませんでした。
単独書き込みが出来ずに苦労してます。
下記の様な、ごく稀に出来た報告(HP)も有ったので、
混乱してHelpを求めた次第です。
とりあえず、明日tryしてみます。
皆様、THX
変換基板見つかったので 16F84A単体で書いてみたけど 時間すこしかかるみたいだけどちゃんとできたよ pickit2 PICkit 2 V2.61.00 Device File V1.61.00 readme の中にも support device で16F84A は書いてある
>>536 >中身はまるっきり可変抵抗でした。
可変抵抗なんだから当たり前だろ。
ロータリDIPSWで使える方法がいくつか出てるのに何であえてそれを選んだ?
試してみなくても111段階なんて無理って常識でわかるだろうに 1段階3度だよ ノッチも無いのに正確に3度の位置設定なんてできる訳が無い
>>548 おまえも分かってない。
10kと1kをカスケードにでもするつもりなんだろうよ。
無理なことには変わりないが。
550 :
537 :2010/06/11(金) 07:36:28 ID:3X8GHhqw
皆さま有難う御座いました。
無事書き込みに成功しました。
MCLR-GND間に100p〜10uFのCを追加することで
書き込みが出来ました。
(100pの方が安定していました)
おそらくですが、
>>546 様
の書き込みはソケットの浮遊容量で書き込めてるのだと思います。
MCLRは疑っていなかったので541様の情報がなければ
今もF84Aに翻弄されてた気がします。
THX
全然解決になってないような・・・
基本的な質問なのですが、 出力ポートから入力すると(またはその逆)どうなりますか? つまり、出力も入力も同時に行えますか?
>>552 たとえば
出力ポートがHIを吐いてるところにLOWを入力するってことは
0Ωの負荷を出力ポートにぶら下げる図にならないかい?
>>552 データシートに記載されているはず。ポートの項。
もしかしてオープンドレイン?
>>552 質問をちゃんと書かないとだめだよ。
TRISを出力に設定したポートで、
・TRISはそのままで、入力するとどうなるか? という質問?
・それとも、TRISを入力に切り替えてから、入力するとどうなるか? という質問?
出力に電圧かけたらただの吸込の出力だと思うが。 聞いてることの意味が把握できん
>>552 出力ポートをreadすることは出来る。
入力はピンのレベルに応じた値が得られる。
注意する必要があるのはアナログ入力設定ピンで
大半のPICでは入力ゲートがありPORTxのread結果は'0'
そして大半のPICはTRIS設定による出力優先されること。
558 :
552 :2010/06/11(金) 12:03:52 ID:P3Hi3nQY
質問があいまいでした。 TRISを出力にしたままで、入力したらどうなるかということです。 出力ポートをLにして、外部からHにしたらポートを入力するとHが読めるのかという疑問です。
>>552 質問は、正確に書こうね。
>出力ポートをLにして、外部からHにしたらポートを入力するとHが読めるのかという疑問です。
「外部からHIにしたら」って何?
外部に接続されている素子の出力をHIにしたら、という意味でしょ?
答えは、
電源+→外部の素子→PICのピン→PIC内部でGNDという経路でショート。
なので、PICが入力を読み込めるかどうか以前の問題。回路NGです。
560 :
552 :2010/06/11(金) 12:29:40 ID:P3Hi3nQY
そんなあなたにオープンドレイン端子
出力ぶつけたら壊れる という常識があって、それでオープンドレインとかI2Cとかの工夫があるのに、 それだけ見て出力ぶつけようと思ったらダメだ
>>560 入力回路と出力回路は、パラレルに接続されているので
ポート出力をHiにして、外部でLowに落として、ポートを読むと0(ゼロ)になる。
ttp://www.picfun.com/pic22.html 出力モードにしたポートを入力として読み込んで、データを演算し出力すると、
外部のノイズを入力してしまい誤動作の原因になる場合があります。
BSF、BCFなどのビット操作の命令を連続出力して使用すると、
これも誤動作の原因になる場合があります。
(BSF、BCFは、一度ポートレジスタのすべてのビットの現在状態を読み込み、
指定ビットのみを変更して再度ポートレジスタに上書きするという操作を行います。)
>>560 I2Cマスタ側のSCL監視は当然 非'L'だろ。
ソフトウェアI2C制御の場合は擬似オープンドレイン操作すればok
'L'出力時はPORT,TRIS共に'0、非'L'時は'TRISを'1'にする
MSSP利用時はTRIS操作されるわけじゃないけど
内部ロジックで制御されるからdatasheet確認汁
567 :
522 :2010/06/11(金) 14:24:39 ID:P3Hi3nQY
レスくれた人ありがとう。 もうちょっと勉強します
>>567 I2Cの理解のポイントは、
・マスタもスレーブも、
・回線にL(0V)は出力できるけど、
・回線にH(5Vとか)を出力してはいけない。(←そういうルール)
・じゃ誰が回線をHにするのかと言うと、それはプルアップ抵抗。
・マスタもスレーブも、
・回線をHにしたいときはどうするかと言うと、ポートをHi-Zにする。
・Hi-Zはどうやって出力すればいいんだ?と言うと、
ポートを入力にする。入力だと電流は流れ込まないから、Hi-Zと同じことになる。
・まとめると、
・マスターもスレーブも、
・出力H : 出力L = ポートをHi-Z : ポートにLを出力
・ポートに5Vを出してはいけない。
その人はI2Cの人じゃないよ
オープンドレインを知らなかった・・・かどうかの問題じゃなくて I2CマスターのSCLが、SDA同様に双方向I/Oだと思ってなかった ってことでは?
ますたーはSCLをHiZにした時、 本当にHiZになったか監視しなくてはならんのだが、 ソフトI2Cでそんなことしてるコードって見たことない
少ピンインターフェイスのほとんどは ハードウェアの力でなんとかして、ソフトウェアでは楽しよう ってな思想が多分に含まれてるように思うので ソフトウェアでなんとかしようというのがそもそも邪道のような気がする
IC2も含むクロック同期シリアルなんてマスタならソフトでパタパタやればいいんだよ 下手にハードシリアル使うと移植性が下がる。 スレーブと調歩同期ならハードシリアルでも仕方がない。
>>571 然程難しいことは無いんだから、
自分で書いてみれば・・・見たことあるようになるんじゃね?
>>572 少ピンPICでも外付(I2C)シリアルEEPROMとか繋ぎたいことってあるよね?
スレーブから待ってくれと言われたら待たないといけないんでしょ 結構設計が根底から変わってくるぞ
577 :
774ワット発電中さん :2010/06/12(土) 10:39:30 ID:wZ4JM2Oh
PICスレ以下だな。振ろうにも、他に話題ないし。
ん?FPGAスレの誤爆か?
Field Programmable Galaxy Angel
aki-h8の母板をPICライターに代用できないのでしょうか。
581 :
744ワット発電中さん :2010/06/13(日) 01:31:44 ID:aLjNALyh
そりゃ出来るだろうな
pickit2の6番ピン初めて使った
PWMでスピーカーを鳴らそうと思って、 小さい音で鳴ることは鳴るけど、もう少し大きな音で鳴らしたい アンプとか使わずにトランジスタとCRだけでやろうとしたらどんな回路になる?
>>584 トランジスタでアンプ作っちゃダメなのか?
やりたいのはまさにそれ ただ、アナログじゃないからバイアス決めたりとかは不要な筈
>>584 トランジスタを飽和させなきゃいいじゃん
飽和させたらダメなのか というと、動作点を決めてまじめに増幅させるということなのかな やってみたのはエミッタフォロアで組んでみた エミッタフォロアは飽和しないとかちらっと読んだ気がするけど理解してない
PWMするなら(バイポーラ)トランジスタより小型のFETのほうがいいよ バイポーラはターンオフに時間が掛かりすぎる あとスピーカー鳴らすならCRよりLCのフィルタのほうが損失少ないから音量取れるはず
FETは手元に一つも無いんだよな 確かに波形見ると、全然追いついてない でもまあとりあえず鳴るし、サンプリング周波数も低くする予定なので大丈夫 Lもやっぱり無いんだけど 電子ブロックの回路図で、スピーカーの直前に必ずトランスがいたのは、 こういうことだったのか
そういえば、何故かフォトカプラがあるんだけど、これが使えないだろうか
>>590 >スピーカーの直前に必ずトランス
それはインピーダンス変換だと思うが
>>589 TR + CRだけ、なら、OTL (SEPP)回路が簡単じゃないでしょうか。
歪みをあまり気にしなくていいようだから、バイアスも適当でよさそうだし。
もっと横着するなら、PWMをフルブリッジ(Hブリッジ)に組んでスピーカー駆動するとか。
スピーカー燃やさないように、コンデンサ直列にいれてね。
595 :
774ワット発電中さん :2010/06/15(火) 11:53:38 ID:Ax1t7eFX
>>593 SEPPとかHブリッジは、正負両方出力する工夫のような
PWMだからとりあえずは正だけでいい
>>596 A級アンプ、AB級アンプみたいなもんだな
だから、>595のICがSEPPなんだってw 386アンプ仲間じゃないよ。
アナログのアンプは不要でしょ いわゆるD級アンプを、最終段までデジタルで通す
電源電圧5Vでまともな増幅はできない
>>599 この IC 安くて良いね。BTL になっているから 大きな音が出るだろうし、D級の実験したかったら飽和させて使うのもアリだろうし。
>>590 D級でサンプリング周波数を低くするなら出力に LC フィルタいると思うよ。
>>416 僕もPICKIT3でPK3Err0040が出て諦めていました。
ちなみに全く同じ環境でPICKIT2ならば問題なくデバッグ可能です。
んで昨日久しぶりにMPLABを起動してPICKIT3でデバッグを試みましたが、
やっぱりデバッグモードに入れないエラーが出ました。
駄目もとで8.53にup、PICKIT3のファームも01.26.17にupしてみたら、
な、な、なんとデバッグが出来るではあーりませんか。(ふるっ
>>416 さんのバージョンが古い場合はupしてみる価値はあると思いますよ。
動作検証はアップデートしてからやるだろ普通
そりゃそうだね。 トラブって最初に試すのがアップデートか。
v8.53公開って今週だよね。
何度もすまんね。 ちびっと考えたんだが、古いバージョンで動かなかったら、大問題になってるはずだよね。 ファームアップは自動で起動して3本くらいDLするから、不注意や何らかの原因で正常に行われなかったって可能性はないかな? (ベリファイといかセルフテストは通ってる事になるが)
>>595 いいなあ、これ
2.2Vだったり1200mWだったり100円だったり
もう魔法としか
30年以上前に、電気少年だった自分に、おじさんが「アンプ作ったか?」と聞いてきた 製作記事そのままのラジオとかしか作ったことがないと答えると残念そうだったけど、 まだトランジスタのバイアスがあやふやだった時代に、 アンプを設計するのは楽しかったんだろうな
>>607 フルブリッジのPWMで8Ωのスピーカー駆動したら、
理論上 5Vで3W出せる。
じゃ、実質1.2Wなら、計算通りじゃん。 効率なんてそんなもの。
>>610 PWM での 無音は 50% duty での ON/OFF のはずだから、方形波の面積が 3W でも
出力は 0 。
1/2 の 1.5W が理論値では?
PWMでもアナログでも最大出力は変わらないよ 効率が違うだけ
>>612 1.5Wが正解だな。
5Vのフルブリッジで10Vp-p。
10/2√2=3.5Vrms
3.5^2/8=1.5W
>>614 んなこたーない
信じられないならパッケージ写真見ろよ
ま、それだけ出力あれば、3Vでも、ブブゼラ程度の音は出せるわな。
dsPIC でフィルターつくろうや
BTLなら1回路あたり入力1出力2だから、VREFのコンデンサさえ省略 できれば8ピン2回路は不可能ではないな。
話しぶった切って一つ質問を。 下の様にCCSで書いているんだけど、677の全アナログチャンネル分のデータをUARTで送りたい時にどう書けばCSVみたいになるんだ? ch1,ch2,ch3…みたいに送りたいんだけど判らん。 PCやマイコンでデータ処理するから、確保したデータを一気に全部送りたいんだけど、そういう事可能? //---------A/Dの12ch目確保ルーチン始め----------------------------- set_adc_channel(11); delay_us(10); //読み出すチャンネル設定後にほんの少しのディレイが必要とのこと An_ch[11]=read_adc(); //---------A/Dの12ch目確保ルーチン終わり----------------------------- //An_ch[0]〜An_ch[11]をまとめ、angle_all_dataへ送る angle_all_data=「ここに送るデータを書くと思う…んだけどわからん」 //angle_all_data作成完了 //angle_all_data送信開始 fputc (angle_all_data); 一応An_chは下のように先に宣言してる。 int An_ch[12];
CSVみたいに送りたいなら for(i=0; i<12; i++) printf("%u,",An_ch[i]); とか・・・
>622 なるほど、それで0〜12まで一括で送り出すわけですね…。 ちょっくらそれでソフトを組んで試してみます。 ありがとうございます。
>>621 どれくらいの間隔で測定データを取りたいのかわからんが、俺だったら測定−>送信->測定->(送信終了待ち)送信->・・・・・->送信だな。
こうすれば送信待ちの間にほかの仕事もできる。
625 :
621 :2010/06/20(日) 17:17:00 ID:FKlNghmJ
>624 677を二つ繋いで収集した24ch分をPCかマイコンへ送るのが目的でありまして、他の仕事をする必要が無いためコレで大丈夫かと思います。 今のところ秋月で売っているようなさまざまなサイズのPSDセンサーの山を繋ぐ予定ですし、元々遅い相手ですのでシビアな処理をさせるわけじゃ無いですし。 電流消費が多そうで大変です…。
あれれ。秋月の PIC-BASIC って、ディスコン? もっと買っとくのだった…
>>626 それってインタプリタだったの?
コンパイラだったの?
いずれにせよ潰しの効かない方言は捨てた方がいい。
PIC-BASIC使うくらいならmikroBASIC使う
BASICなら、Swordfishが使いやすい。 コンパイラだから、CでもBASICでもなんでもいいんだが開発環境がいい。 USBに繋がった18F2550とかにスゲーいい環境。
PIC-BASICは、インタプリタのはず。 BASICプログラムを PIC側に送るだけで動くので、 ちょっとした制御に使うには色々と便利。 ヤフオクで探せばあるみたいですよ。 最近は、PICでもプログラム(+データ)領域が128KBは欲しいので、 上位のチップしか使っていないから、BASICは懐かしいね。
なんでCじゃなくてBASICつかうの?馬鹿なの?
純粋な疑問なんだけどPICで128KBって何を作ってるんだろう
なんでAVRじゃなくてPIC使うの?
なんでPICじゃなくてAVR使うの?
巣いません
> 128KBは欲しいので、 時代は変わったんだなぁ・・・せいぜい16Fの俺
18,24使いなら、ほかのマイコンつかってみって。 己の不幸に気がつくから。
24ならAVRよりはマシだろう。
24とかなら普通にPICでいいだろ 12とか16の、進化の歪みみたいな製品に不満があるだけで
>>640 24F使ってますが。他のメーカーには無い28ピンDIPもある上、周辺機能も8ビットPIC
の周辺とは異なり、他メーカーのそれとあまり変わらない。
何処が不幸なの?
>>643 arduino なんか見たことも聞いたこともないわけか。それはそれで不幸かも。
>>644 中身ないのに小出しにすると後々困るよ・・?
>>645 書いてあることを理解できていないのに、"中身がない"とか言っちゃうわけか。
話にならんな。
>>646 わかった わかったから口閉じとけってw
意味も無くPICが嫌いなだけだろw
AVR(arduino)のだめな所 ・3.3V動作の時5Vトレラントではない(xmega含む) ・DIPのUSB対応チップがない(ソフトでできるけどLowSpeedまで) ・内蔵発振器のキャリブレーションが大雑把
+でかい
たいした能力もないのに、能力アリますブッテル人間が使うのがAVR たいした能力もないのに、人に聞けば何とかなる楽天思想家が使うのがPIC だからライバル討論するとどちらも話が噛合わない
そんな中で、僕はH8ね。
たいした能力もないのに使えちゃうのがPIC それって、すごくね?
654 :
774ワット発電中さん :2010/06/23(水) 18:27:53 ID:FSnuTVYk
めんどくさいのを使いこなしてる自分が好き→PIC 同じ事するならできるだけめんどくさいのを避ける→AVR だからPICマンには、めんどくさいを避けて結果を手に入れたAVRマンが 「能力もないのに能力ありますぶってやがる」に見える でも、本当はめんどくさいってだけであって 決して難しいとか高レベルだとかできると能力がある って事じゃないんだけどね あってるだろ コレ
今のところPICに操を捧げてるけど。 > めんどくさいを避けて結果を手に入れたAVRマン へぇ、めんどくさくないのか。 ライタその他、1000円ぐらいで環境整うかな?
MFCでめんどくさいことやってソフト作ってたのにDelphiで 同じもの楽チンに作られた嫉妬と同じか
657 :
774ワット発電中さん :2010/06/23(水) 19:21:42 ID:Mzl6Oc3C
ま、そう言う美学も大事だと思うけどね エクセルってクソでしょう なにエクセル使えるだけで能力有りますぶってるの? 俺様ちゃんはviとテフで文章全部作ってます 表計算はawkですみたいな そんな事できても高い能力有るってことにはならないんだけど そう言う人って本人はそう思っていないでしょ
AVRは購入したものの、実際には使っていないので何とも言いにくいが、PICも 16ビット以上は、ごく普通のワンチップマイコンで、面倒くさいとは思わない。 むしろ、AVR支持派は最近の16ビットPICをどの程度調べて批判しているんだ? PIC16が前提なら完全な別物なんだが
659 :
774ワット発電中さん :2010/06/23(水) 20:34:33 ID:Hcx3VKJU
Aが前提なら、とかさ前提決めんのはどうかと思う つかさめんどくせえってバンク切り替えとかコンパイラ選びとか プログラマの電圧とかその辺だよね だいぶ解決に向かってるとは思うけど pic村に住んでるけど その辺つっこんで知りたいなら 今すぐPICをやめてAVRに移行すべき〜とか PICをたたき壊してやりたい17の理由 とか読むと良いと思う そして行きたきゃAVRに行けばいい そしてPICの話にスレを戻そうぜ
>>659 だからその話はPIC16の時代だって言ってるの
AVRとPIC16を比較したらそりゃAVRの方が使いやすいでしょ
>660 それは論点がちょっと明後日。 PICer的にもPIC16以下は擁護すべき対象ではない、ということなら AVRerから言うことは何にもないと思うよ。 みんなで仲良くPIC16以下を叩く話で盛り上がれる。
叩いてもつまんないから盛り上がらない
まあ、俺はどっちでもいいんで、AVRもやってみよ。
最初に環境を整えてデータシートも精読したチップを使い続けるのが 普通だろ。一々比較なんかしてない。 AVRは使ったことがないけど仕事でFreescaleを使わされそうになって データシートを読んだことがあるけど、なかなか良くできてる感じだ ったな。一度使ってみたいと思っている。
高級言語でPIC16を使う奴の意味はわからないけどな。
666 :
774ワット発電中さん :2010/06/23(水) 23:14:20 ID:lgexMB9z
あれもコレもやってみたい 低級な言語も高級なのもやってみたい これが技術者として正しい姿 自分が知ってる世界から出たくないよー 知ってるのを使い続けるが普通とか そんな事をする意味がわからないとかはロートルの台詞 最終的に自分の首を絞めてる
sprintfが動くか動かないのか気を揉みながらc言語つかうならアセンブラ使うか
H8なり78KなりRAMにスタックが確保できるマイコン使うよ
>>666 馬鹿へ
>664 趣味ならそれでもいい、仕事ならヤバい。
Cで使うならPICもAVRも大して変わらんよ TRISが0が出力なのか1が出力なのか混乱するだけ
>>669 そんなこと言えるのはC言語でボロがでない程度のものしか作ってないからだな。
671 :
774ワット発電中さん :2010/06/24(木) 00:05:10 ID:FVAlD9H/
>666は>667みたいにいろいろ経験しとけよって言ってるとおも。 ま、手を汚さなくてもわかることもあるけれど...。それはやんない。
8bitPIC<<<<<<AVR<<16bitPIC AVRerは8bitPICを馬鹿にしてるわけだ で16bitPICerは兄弟を馬鹿にされていると思うわけだ で16bitPICerはAVRerを馬鹿にするわけだ みんな馬鹿なのにねwwww
DIPでUSBが使えて安い18F14K50がよさげだけど、このスレ的にはどうなんだろ?
このスレ的にも何も、自分の用途に合ってればそれでいいんじゃねぇ? オレ的には、もうちょっとRAM欲しいが。 ちとメモリバカ食いなモノ作ってるので。
>>673 使ってるよ。
ただやっぱりメモリが少ないね。
せめてUSBに使えるメモリが+128もあれば自由度が上がるんだが…
AVRは買って3日で覚えたが PIC16は買って大事にしまってある
PICにはフリーのCコンパイラが無いからなぁ
Cで書かれたファームウェアは本来信用できないと思う俺は古いだろうね。
アセンブラのほうが信用できない
だって問題がコンパイラ側にあったらアウトだろう。
インラインアセンブラを使えばいいじゃないか
>>681 こなれてないコンパイラなんて使うからだよ
684 :
774ワット発電中さん :2010/06/24(木) 11:49:18 ID:9chHkkbM
12F683を使っているのだけど、プログラマ(Pickit2)でメモリを読み出すとEEPROMの内容が 書き換えられてしまう。どうしてか分かる人いる?
>>684 プログラムの冒頭にEEPROMを書き換えるコードとかない?
#rom 0x2100={0x00,0x46,・・・ みたく書いてるんじゃね?
>>685 EEPROMを書き換えるコードは有る。あたかもそのコードが実行されたように書き換わる。
コードの場所は冒頭ではなくて、結構奥深いところで、到達するのは容易でないと思う。
そもそも、メモリ読み出し時にプログラムが実行されるの????
>>686 >#rom 0x2100={0x00,0x46,・・・
ゴメン。意味わからない。
>>687 Pickit2の読み書き時の動作を見てると、プログラムの冒頭が実行されてるのがわかる。
いま試したけど、起動時にLCDに表示するメッセージが確認できた。
時間にして0.5秒弱。
これをうまく回避するしかないと思う。
以前同じ問題ではまった。
追加だけど、MCLR無効にしてるのと関係あるかもしれない。
ん?なんか道に落ちてたぞ?
あーあ 知ーらない^^;
>>688 冷静に考えるとPICの読み書き時にPIC電源が供給されるのだから、PICが動作するのは
当たり前だね。そこにEEPROMの書き込みルーチンがあれば、書き換わるのも当たり前。
でも、奥深い書き込みルーチンに到達するのが不思議でならない。
書き込みロックフラグを設け、起動から一定時間経過したらロック解除するようにした。
MCLRをONとOFFでは若干振る舞いが変わったけれど、書き換わるのは一緒だった。
宮坂お父さん
>>678 MPLABをセットアップするとコンパイラが準備されているのだが。HI-TECH C Lite版でよければ。
PICユーザーって違法コピーの巣窟なんですね
昨日c18 インストールしてやっと コンパイルが通りそうだ 適当じゃだめなのね ・・
PICにはフリーのCコンパイラが無いからなぁ
700 :
774ワット発電中さん :2010/06/25(金) 22:14:00 ID:r5to4Gwn
来週の心だーーー
逆差ししてエポキシの燃えた香りが漂った。 もうダメかと思ったけど、幸いにも生きてた。 PICは丈夫だね^o^
俺も経験した ・・・指は焼けたけど
特定のポートだけ死んでるPICをだましだまし延命
どこのはやぶさだよw
入力にしか使えないポートと出力にしか使えないポートの間にダイオードが入れてあって
ICSP使うようになってからソケット使わなくなった。
>>703 その昔、信越電気商会という店があって、
工場の検品で弾かれた石を廃棄場から拾って来て売っていた事があった。
レールで買ってもロット番号が全部違ってたし、
店の裏でビニール袋に入った部品をレールに詰めなおす作業をしていたよ。
>>707 過去の話なんかどうでもいいwww
今はレールに詰めなおしてなんかいないだろwww
過疎ってるスレで自治厨うぜぇなおい
712 :
774ワット発電中さん :2010/06/26(土) 20:51:48 ID:uOsUf+Ay
>>705 それが無いと、一瞬にしてPICの電位が数万V上がっちゃうのだな。
713 :
JO_O :2010/06/27(日) 00:32:22 ID:uPbhIV5Z
>>713 FETならわかるけど電流駆動のTrでそれ起きるの?
715 :
774ワット発電中さん :2010/06/27(日) 01:30:09 ID:X2SgNw8Z
>>713 何を怒ってるんですか?
PIC12F675は、0を出力するまで、弱プルアップでもされているのかな?
プログラムだよね。 だって、出力なら、0か1しかないでしょ。w
プログラムの冒頭で0を出力しても、一瞬だけトランジスタがONするよ フリッカのブザーとか繋ぐと一発鳴く
>>713 プルダウンは兎も角、GNDを横向きに書いてる時点で、
個人的には気持ち悪い。
Trのベースをプルダウンしていれば、 clrf porta clrf trisa で冒頭で1が出力としてでないようにできるんじゃないのかな? でないと、初期状態のHZのときにノイズで一瞬ONになるのかな。 ということ?
トランジスタなんて元々0.6Vでプルダウンしてるようなもんだろ プルダウン抵抗いるの?
いるよ ポートが入力になってたらベースは浮いてる訳で その時のコレクタはかなり不安定
なもん2sc4793のベース・グランド間に1kΩくらいの抵抗入れておけばもんだいないんでないか?? そうでないとベースにたまってる電荷でTrが変に動く時がある。 721は正解
>>722 抵抗低すぎるよ。
ターンオンしずらくなる。
PICが5V出してくれるからOK。
そこでスピードアップコンデンサですよ On時の不安定にも効果あり?
PICスレみていただけなのにいつの間にかトランジスタの使い方を知ってしまった。 こんなに簡単だったのに何で学部の時に覚えなかったのか…
>抵抗低すぎるよ。ターンオンしずらくなる。 相手が300オームなら、1kで上等だと思う。3/4(75%)はベースにかかる。 300オームなら15mA程度しか流れないので、1kでも良い。 それよりも、出力機器の電流がわからんけど、抵抗300オームが小さすぎる ような気がする。 しずらくなる。→ しづらくなる >そこでスピードアップコンデンサですよ On時の不安定にも効果あり? 効果はない。 >トランジスタの使い方を知ってしまった。 スイッチングで使う場合のトランジスタの使い方でしょ? その程度で「使い方を知った」とは言わないと思う。 アナログ増幅アンプを設計できる程度にならないと。
2SC4793はベースが100mAまで耐えるようなので300オームで良いのかな?? 小信号用TRだと300オームではやばいけども。 PICをフォトカプラかなんかで大電流系とアイソレートとった方が吉と出る気が汁。 いえいえスイッチング動作さえ解らない方が多いので相当なステップアップだと思うぞ。 ますます精進汁
トランジスタはhFEとか、けっこうパラメータが多いので、オペアンプから途中入門した身にはちょっと辛い。 真空管アンプ作りたくて、そっち(真空管)は理解したんだけど。
>>728 >スイッチング動作さえ解らない方が多いので
そうそう、ベースの電流定格から抵抗値を決めちゃったりね
hFEは100 VBEは0
抵抗値は5kΩ前後が相場
iC=100mA(定格150mA)でhFE=100の時、iB=1mA VB=5なのでr=5k
>VB=5なのでr=5k これがわからん VBってVb? だったら0.6Vではなくって?
>>734 同意。
PICからの電圧のことを言っているなら、4.4Vになると思う。
736 :
774ワット発電中さん :2010/06/29(火) 07:44:15 ID:2jGuSZ8m
なんというか、釣りの用の回路として、みんなが釣り上がるのが楽しいのか、本当に
分かってなくて、条件としてこれだけしか書いてないのか、良く分からん。
回路図の書き方が素人っぽいから、後者の気がするが。
まず、一体コレクタの負荷は何なのか?アクチュエータって、何を使うの?
コレクタ電流は、一体いくら流したいのか?
耐圧230Vもあるトランジスタ、スイッチングには非常に不向きな飽和電圧の高い
2SC4793。それをスイッチング回路に使う理由は何?
>>731 >>733 スイッチング動作、つまりトランジスタは飽和動作なので、能動領域の電流増幅
率をここで考えに使うのは間違い。
十分にONさせるには、流すコレクタ電流の10%程度のベース電流を流すのが定石。
>>732 なぜ、5kΩ前後が相場なのか、理由を考えると、勉強になるよ。
>>736 >
>>732 > なぜ、5kΩ前後が相場なのか、理由を考えると、勉強になるよ。
出来る奴は何も言わなくても理由を考えるし、出来ない奴は名に行っても無駄。
学校じゃないんだから全員に理解させることはない。
と最近気が付いた。
素直に教えを請う人には教えてやっても良いんでは
PICスレではよくあること
>>736 >5kΩ前後が相場なのか、理由を考えると、勉強になるよ。
5k前後が相場なのは、正解なのでしょうか? それともそんな相場は無いのでしょうか?
無条件に5k前後が相場というのはおかしいと思うです。
その抵抗は、
・駆動されるる電圧
・必要なベース電流(=必要なコレクタ電流)
によって決まるものなのでは無いのでしょうか?
アンプを作ってるんじゃないのならどーでもいいよ
>>741 ありがとうございます。
>アンプを作ってるんじゃないのならどーでもいいよ
ということは「5kが相場というのは正しくない。理由は
>>740 の内容」
という理解で良いでしょうか?
5kΩだと流しすぎ 10kΩ程度で充分
2SC4793でIcに500mA流したい。で計算する。 スペックからhfeをワーストの100とする。 そうするとIbは500/100で5mA必要。 んでVbeがVce=5のIc=500mAで1.0Vだから R=(5-1)/0.005=800
IOH=-3.0mAのときVOH=VDD-0.7Vしか保証されてないから 5mA流したらさらに下がるな。
これくらい計算しておいて、後は「匙加減」
5KはE12じゃないから4.7Kとかね。
>>742 簡単な回路なんだから試作してみれば分かるかと、
自信が無いのなら可変抵抗器でも付ければよろし。
>>748 ありがとうございます。
今までに何度もやっていますので不安はないのですが、
周辺条件無しに「5kが相場」と言う理由が知りたいのです。
本当に相場なら、僕も覚えておきたいですし。
「相場」なのは、非常によく使われている条件、 たとえば、Vcc = 5.0V / 2SC1815 (Ic <= 150mA, hFE=100くらい)のデータ前提で、 Ib = 1mAも流しておけば確実に飽和、ってことではないかいな。 あと、同じくよく使われているデジトラのDTC143のベース直列抵抗が4.7kってのもあるかも。 負荷電流(Ic)がわかっているときは、トランジスタのデータシートからhFEを見て、 Ib > Ic/hFE となる電流(確実に飽和させるために数倍くらい)を流せば桶として、 上で出てるように、R = (Vcc - Vbe) / Ibで、計算すればいいのではないかいな。
>>742 相場とか言ってるわりに標準的な抵抗値じゃない時点で、知ったか決定だから気にする事は無い。
自分が作る物に必要な抵抗値をちゃんと計算してください。大して手間のかかる事では無いでしょう。
知ったかの「相場」なんて無意味な情報は頭の片隅に入ってるだけ無駄な情報。
>>750 ,
>>751 ありがとうございました。
そうですよね。ちゃんと条件がありますよね。
これで安心しました。スッキリしました。
ありがとうございました。
今日は寝られそうです。(サッカー開始まで)
>>751 計算した値の抵抗なんぞをわざわざ買ってこないだろうw、
桁さえ合っていれば大抵動くw
大抵は、4.7Kと330で済ませてる俺。
>>753 >桁さえ合っていれば大抵動くw
仰る通り、結果としては動くのですが、結果オーライだと応用が利きませんよね。
こういう理由だから、この値になる、しかし現実にはこの値にしておく。
計算することと、実際の系列に照らし合わせるのは、別な話だと思います。
>>754 レギュラーの抵抗というのは、ありますよね。僕の場合は10kです。
「全部10kで設計したろやないけ」と挑戦したことがあります。
8.2k = 10k // (10k*4)
6.8k = (10k+10k) // 10k
4.7k = 10k / 2
3.3k = 10k / 3
2.2k = 10k / 5
1 k = 10k / 10
さすがに100kとか100Ωとかは、アホらしくなってやめました。
でも1度でいいから、「実装支給部品は10kのリール1つだけ」ってやってみたいです。
部品表も楽、部品代も安い、実装費も安い。
>結果オーライだと応用が利きませんよね。 アナログ組む時代でもないからな、応用を求められることも少ないかと・・・
>>753 わざわざ買ってこなくても24系列でそろえてあるからな。小学生でもあるまいし、そのレベルの抵抗を
数を数えて買ってくるほど貧乏じゃ無い。
まあ、それでも、理由が無ければE6位で最適なものを選ぶ。1Kが最適な所に9.1Kをつけるのは気が引けるからな。
それに、いくら趣味の電子工作といえど、いろいろ考えて抵抗値を算出したほうが楽しいぞ。
動かすのが精一杯の奴も居るかもしれんがw
758 :
774ワット発電中さん :2010/06/30(水) 00:55:38 ID:Zy8j/11p
>>757 で、最後に悟った。
1-2.2ー4.7 このステップで抵抗は0.1Ωから4.7MΩまで揃えた。
コンデンサも、1pFから4700pFまでのセラミック、0.01μから4.7μFまでのフィルム系、
そこから上の4700μまでのアルミ電解。 これで作れない物は、最初から作らないよ
うにする。
トングルなアルデノ?
>>757 計算よりも実際はインピーダンスだのグランドの引き回しだのの経験の方が大事だなw
761 :
774ワット発電中さん :2010/06/30(水) 14:25:28 ID:Zy8j/11p
PICの、16Fなにがしは、各ピンに25mAのシンク・ソース能力。 クランプ能力は20mAとあるけど、じゃあ、PICで直接リレーを叩いて良いのかな? 誘導性負荷のクランプをさせて、本当に大丈夫?
10mA位のリードリレーを直接ドライブしてるけど今の所大丈夫 保護ダイオードは入れてる
763 :
774ワット発電中さん :2010/06/30(水) 15:01:37 ID:Zy8j/11p
>>762 リードリレー(8mA )でやってみて大丈夫、ってのは、分かってるんですが、気分的
に落ち着かないんです。
あ、こちらも、ダイオードは入れてます。
表面実装のアレイ、UL2083みたいなのをかませば、いいんですが。
>>763 基板上に余裕があればバッファは入れてるね。
リレー1個ならトランジスタのバッファ
LEDが複数ならICのバッファって考えてるけど、
やっぱりスペースの都合が一番大きいかな。
まあ、リレーならトランジスタでドライブするのがマナーってもんだ。 回路図見ても、基板見ても「定石通り」なら信用できるってもんだ。
>>765 「定石通り」が何かわからないけど、
素子の定格以内に収まるように設計してあればOKだしね。
25mAという電流値だけ見ていてはダメです。 電流を流すほど、電圧が落ちていくので、その時の電圧でリレーが動くかどうかを、確認する必要があります。 また、ポートの耐えられる電力損失が規定内をチェックしておきます。 それらが問題なければ、直接駆動しても大丈夫です。
> 電流を流すほど、電圧が落ちていくので たいしたことじゃないんだが、「上がっていく」つもりでレスしてる人 の方が多いんじゃないかな。
769 :
774ワット発電中さん :2010/06/30(水) 20:50:26 ID:ndo/B4HO
逆起でPIC暴走しないか?いくらダイオード付けてるといえども。
グランドに10mAも流したら10ビットA/Dの精度にも影響が出そう
771 :
763 :2010/06/30(水) 21:36:15 ID:Zy8j/11p
恐いなと思うのは、まあ私の製造年月日が、かなり古いので、電流を切る時に、CMOS
系の出力端子は、そんなに電流を流すと、ラッチアップを起こす、というのが刷り込まれて
るせいもあります。
それと、用途によりますが、リレーは割と大電力やノイズ環境の悪い負荷に繋がってい
ることが多いので、その場合、そこから来てる線が、直にCPUのチップに繋がってると、
何かでプログラムが暴走しやしないかと心配する。
リレーが焦げるようなことがあっても、トランジスタかましておけば、少しは安心とか、
>>770 さんのような心配とか、いろいろです。
スペースさえあれば、トランジスタ入れて、PICからは必要最小限の電流を貰うだけ、
という形にすれば良いだけなんですけどね。
ダイオードつけて保護するくらいなら、抵抗とトランジスタで駆動してもいいかなと思う。 どうしても部品点数を減らしたいのか、マイコンの種類に影響されずある程度汎用的な回路にしたいのか、前提条件によって変わるけど。
>>769 最近のワンチップマイコンは入出力に過剰な保護が入っているので、
極端なサージさえ防いでいれば大した影響は無いように設計されてますけどね。
太陽光発電や車載バッテリーのように24Vから9Vくらいまで振れる電源の場合、DC/DCコンバータで 5Vに落とすというのでいいのでしょうか。
>>770 >グランドに10mAも流したら10ビットA/Dの精度にも影響が出そう
吸い込みで使うとそうなりますね。
吐き出しで使えばVdd側から流れますので、良いと思います。
>>771 >ることが多いので、その場合、そこから来てる線が、直にCPUのチップに繋がってると、
リレーなので、直接つながると言うわけではないと思いますが。
リレーは多くの場合「大電力信号が走っている地域」に置かれることが多いので
トランジスタは、その近くに置くことになります。
すると、PICの出力ピン−−−−−−−−−−トランジスタ、リレー という配置になり
出力ピンとトランジスタ間が延々と引き延ばされる事が多いです。
この間は「インピーダンスが高い部分」になるので、ノイズに敏感になりやすいので、
インピーダンスを高くしないように注意したいです。
>>772 >ダイオードつけて保護するくらいなら、抵抗とトランジスタで駆動してもいいかなと思う。
ん? ダイオードは必ず使用しませんか? ダイオード無しだとトランジスタが壊れます。
ダイオードでは動作がトロくてイヤだというときは、他のスナバにしますが、
無しはしないと思いますけど。
PIC----DTC143---リレー+ダイオード が好きです。
リレー使うのにダイオード無しはあり得ないだろ トランジスタにやらせる場合でもダイオードは要るぞ
つうか誘導負荷には全部要るだろう。逆起対策が。
>>775 >吐き出しで使えばVdd側から流れますので、良いと思います。
ソース能力がどんだけあると思ってるの?
VOL=0.6V IOL=8.5mA
VOH=VDD-0.7V IOH=-3.0mA
779 :
763 :2010/07/01(木) 00:56:11 ID:ZYp09p3a
>>775 リレーを遠方で使う場合、こんな感じで使いませんか?
リレー用電源→→→→→→→→↓
PICなど→Tr←←←←←←←RL+DiodeやZNR
リレーを駆動するには電力と動作時間が必要ですから、ちょっとやそっとのノイズを
拾ったくらいでは誤動作しない。伸ばすのなら、トランジスタの後だと思うのですが。
>>778 >ソース能力がどんだけあると思ってるの?
>>761 によれば、25mAのシンク・ソースという話だけど、ちがうの?
>>774 電圧範囲が広いと、ケースバイケースとしか。
電源に余裕があるなら、電力用抵抗と大きめのツェナーダイオード(+3端子)
ある程度省電力なら、入力の耐電圧の高い3端子。
DC/DCコンバーターは、選ばないと、入力電圧範囲が2倍程度の物が多い。
尚、車のバッテリーは、セルを回す時には6V位まで落ちる事を許容する規格に
なっています。電圧は6.5Vだったかも? ちょっと自信ない。
セル回す時には、アクセサリー類は、強制的に切られる。
時計など作る時には、注意してください。
>>780 25mAというのは絶対最大定格ね。
これ以上流したら壊れるかもしれないよという値。
流す能力とは関係ない。
電流ほしいならAVR使えばいいじゃない
>これ以上流したら壊れるかもしれないよという値。 いや、壊れるというより、内部的にはダイの電圧が下がらないように電流制限を行う。 抵抗が生じれば制限分は熱に変換されるので、全ピンでこのようなことが起これば、 廃熱が追いつかずチップ温度が上昇し安全動作温度範囲を超えてしまうのです。 よって暴走を引き起こすかも知れない程度。
流したければ、2ピン3ピン並列など、ある程度までは、吐き出し足し算できるね。 合計が決まってるので、最大そこまでは出力できるはず。
>>784 Absolute Maximum Rationgsはそう言う意味とは違う。
初心者が間違って覚えるから変なレスはしない方が良いよ。
>>784 ,787
そうだね。たとえ一瞬でもこの値を超えた場合、以後このデバイスの機能は保障されない。
現実は、
>>784 のいう程度かもしれないが、そうでないかもしれない。
そんな状態で使わないに越したことは無い。
789 :
774ワット発電中さん :2010/07/01(木) 13:56:09 ID:0OXWJ4FS
> いや、壊れるというより、内部的にはダイの電圧が下がらないように電流制限を行う 軽石さん、どこで聞いてきたか知りませんが、うそはいけません。 電流制限なんかしませんし、ポートは壊れます。 絶対最大定格越えは、破壊につながります。
ふと、電流制限素子を全ポートにってなんて贅沢な、と思った
FETなんだから全ポート電流制限素子が付いてるようなものじゃね?
FETなら電流制限が効いて破壊しないという訳じゃないでしょ。 確かに電流-電圧特性がリニアではないとは思うが、破壊または故障するかどうか とは全くの無関係なのは少し電気をかじった人には常識と思いたいんだが。
許容損失超えなきゃ大丈夫なんじゃないの?
ラッチアップですねわかります
データシートを守ろう。 理屈をこねくり回して定格を超えた時の動作を勝手に定義しても 全く意味がない。
適当にポートにLを出力してVCCと直結してみれ 壊れるかどうか判るから
特定の固体が(偶然)壊れない事と、メーカが壊れない事を保証しているのでは天と地ほど意味が違うんだが
×固体 ○個体
799 :
774ワット発電中さん :2010/07/02(金) 00:16:34 ID:eXPVvHk+
>>796 の実験がたまたまうまくいくかも知れないがそんなのはまぐれ。
メーカーの保障を超えたらその時は動いていてもダメージがあって、いつ壊れて
も文句は言えない。
そもそも、半導体はディレーティングして使うもの。
絶対最大定格を定格にするなんてど素人。
熱抵抗の計算は実はオームの法則と同じなので、 電気屋なら簡単にできるぞ
チップ設計もしたこと無い素人ばっかりかw
802 :
774ワット発電中さん :2010/07/02(金) 10:56:49 ID:wq0odopS
だろ、普通。 PICすれだし。何様?
804 :
774ワット発電中さん :2010/07/02(金) 14:44:20 ID:wq0odopS
キミ、とか偉そうに。
そういうお前も何様?て言っているし同類だよ。 さりげなく関係ない答え書く釣り氏もいるし週末が近づくと大漁だな。 マージンはあった方が安心できる。 定格を超えるような設計すると信頼性は下がるから素人以外はやらないね。
806 :
774ワット発電中さん :2010/07/02(金) 15:33:53 ID:TOT5hNnS
真打気取りが、落ちつまんな杉。 摺れ主のつもりか。
807 :
774ワット発電中さん :2010/07/02(金) 17:23:26 ID:8f3ZMS3I
>805は、読点を知らない、日本語素人www.
いつはじまんの? *特別講演 絶対最大定格の真実 講師:自称 チップ設計経験者 読点打てない人
>君の句読点も凄く不自然っすよwwww わざとだろって。わかんねえの?(あえてひらがなでかきました)
わざとなら、句点は真面目に書いてほしかったぜ。
>チップ設計もしたこと無い素人 俺を含めて、ほとんどのユーザは素人ということになるのか
チップ設計なんて、与えられた回路図通りに決められた部品を敷き詰めるだけの仕事 パートのおばちゃんがやってる
>>814 それで金貰ってるから、そのおばちゃんはプロだな
816 :
774ワット発電中さん :2010/07/03(土) 07:32:18 ID:+GyrO93O
仕事はできるんだけど身なりにかまわいで結婚もしてなくて 年食っちゃってパートのおばちゃんかと思ったぜ みたいな女の人いるよな 派遣されて行った会社でみんな同じユニホームなんだけど なんでこのおばちゃん会議室にいるのかなと思ったら いきなりインド人と英語で話し出して驚いたことある
>エラッタにすら書いてない欠陥があるから困るんだよ。 なんて言う人がいるスレだから聞きたいけど、どこまで考えて部品を配置していくのさ。 自動配線じゃ不十分なわけ?
自動配線任せとかご冗談を
>>816 そのおばちゃんがパートじゃないという保証はない
そのおばあちゃんが会社の会長ってパターン。ドラマの中ではよくある話。 力比べ以外は精密作業、設計作業、営業、翻訳が会社で一番。ってね。
>>817 自動配線で無問題だった事なんて新人研修以外考えられない
もちろん「無問題だと思っていた」なんだけどwww
822 :
774ワット発電中さん :2010/07/04(日) 11:58:00 ID:IqghlCt6
誰かPIC16F886のECCPをハーフブリッジモードで使った事ある? データシート見るとCCP1CONのP1M1とP1M0をいじれば出来るような事が書いてあるんだがまったく動かない 普通のPWMは出るんだが、相補側が出ない 教えてエロい人
ゲートアレイとかなら自動配線そのまんまでいくぞ ファンアウト設定とかは最初から入れるけど
824 :
774ワット発電中さん :2010/07/04(日) 13:33:51 ID:2VTlYncI
君らの夢を壊すのはあれだけど おばちゃんパートじゃないし社長の親戚でもなかったよ 社員証首から下げてたし 仕事には厳しくて新入社員の人とか怒られて泣いたりしてたし 仕事と結婚した女みたいな言い方する人も言たけど 出張の際は海外のお菓子とか買ってくる良い人だったよ
>>822 設定が違うとしか言いようがないな。設定全部書き出してみたら?
おれはシングルアウトプットでフルブリッジをドライブしてるけど。
理由はFETドライバにデッドタイムの機能が入ってたから。
826 :
774ワット発電中さん :2010/07/04(日) 16:31:50 ID:IqghlCt6
>>825 ハーフブリッジモードは試した事ある?
教えて
設定全部書き出してみたら?
828 :
774ワット発電中さん :2010/07/04(日) 16:50:57 ID:IqghlCt6
>>827 了解、でも実は変なやりかたしてるんだよね・・
mikroCと言うコンパイラ使ってるんだけど、それのPWM関数で(ECCP未サポート)イニシャライズして
PWMがスタートしてから
CCP1CON.P1M1=1;
CCP1CON.P1M0=0;
とかやってるんだけど
それが原因かな?、全部自力でやら無いとだめ?
>>828 コンパイラが何やってるか確認するか、全部自力でやった方が良いんじゃないの。
830 :
774ワット発電中さん :2010/07/04(日) 17:04:00 ID:IqghlCt6
>>829 うん、その方が良さそう、いま自力で全部やってるから
結果を後で報告する
831 :
774ワット発電中さん :2010/07/04(日) 17:52:50 ID:IqghlCt6
>>829 コンパイラの吐き出したASMを参考にしながらデータシートの通りにレジスタを設定したら
なんとなくそれっぽいのが出来た。
TRISB = 0b00000100; // configure PORTA pins as input
TRISC = 0b00000010;
PR2 = 1000;
CCP1CON = 0b10111100;
CCPR1L = 50;
PIR1.TMR2IF = 1;
T2CON.T2CKPS1 = 1;
T2CON.T2CKPS0 = 0;
T2CON.TMR2ON = 1;
TRISB = 0b00000000;
TRISC = 0b00000000;
でも、これってさぁ、周期とデューティーの計算が面倒じゃね?
あと、デッドタイムが0になってるからそこを何とかしなければ
>>831 とりあえずオメということでいいのかな。
PR2は8ビットだから1000はないよ。
あと、計算が面倒よりもデューティの下位2ビットをCCP1CONのDC1B<1:0>
に入れるのが面倒だよね。
833 :
774ワット発電中さん :2010/07/04(日) 20:44:37 ID:IqghlCt6
>>832 あっ適当に書いたから1000だった、1000だとPWM出ないよねw
DC1B<1:0>は確かに面倒、まだそこの部分つくってないや・・
でも、2相でデットタイム入りで出力が出ることがわかったから今日はおk
デッドタイムもPWM1CON = 0b00000001; とかで簡単だね
いま10MHzで動かしてるから400nsが最低らしいが、16Fだと20MHzまでしかクロックがあがらん
18Fだと40pinしかECCP付のデバイス無いんだよね
どうしようかな、ついでに基板も書いてるんだが、どっちにするか激しく悩む
20k程度のスイッチングだから16Fでもいいんだけど、乗算機が無いのが気分的にやだなぁ
取り合えず助言ありがと、自分で全部やる事が大事だったわけか
834 :
774ワット発電中さん :2010/07/04(日) 21:13:44 ID:XcVRpHXW
>>833 つdspic
簡単に乗り換えられるしそんなに高くない。
835 :
774ワット発電中さん :2010/07/04(日) 21:15:46 ID:IqghlCt6
>>834 たしかにそうかも知れないけど、会社でdsPIC用のコンパイラ買ってくれないんだよ
C30は無料なんだっけ?
836 :
774ワット発電中さん :2010/07/05(月) 02:16:23 ID:/0VjpWGo
いま気が付いたんだけど、PIC1814K50てECCPついてるんだね! しかも安いし、秋月だと200円だよ。 これに決まり、と言う事でお騒がせしました。
14K50は使いにくいぞ
○VR
いくら手コキの上手いねーちゃんがいても、ポン引きがしつこい店には行きたくないよね しかも、手コキ以上の事は絶対やってくれないし AVRってそんな感じ
恐ろしく分かり難い例えだなおい
すげーよくわかった
>>840 うまい。良くわかるよ、その気持ち。同感。
僕もPICからAVRに変わってみたいと思ってるけど、
商品はイイと思う。速いし、組みやすいし。
で も 営 業 マ ン が ね ぇ ・・・。
844 :
774ワット発電中さん :2010/07/06(火) 16:38:19 ID:WfYMdABc
>837 まじで?
USB使おうとすると という条件があるのでは C18 入れて 動作確認するまで3日ほどかかったが・・・
846 :
774ワット発電中さん :2010/07/06(火) 18:17:49 ID:HbnoCt/G
14K50って別にポッド買わないとデバッグ出来ないんじゃなかったっけ? プログラムによってはデバッグ無しでもいけるだろうけど
847 :
774ワット発電中さん :2010/07/06(火) 19:45:17 ID:z1lSiRZC
USBは使わないけど、ポッドってなんだろ? 浅田飴の事?
おまえは何を言ってるんだ
iポッドのことじゃないの?
最近はスイッチ入れるだけでお湯沸かしてくれるんだね。びっくりした。
851 :
774ワット発電中さん :2010/07/06(火) 20:09:59 ID:z1lSiRZC
>849 やっぱり?
852 :
774ワット発電中さん :2010/07/06(火) 20:10:52 ID:z1lSiRZC
>850 水は入れなくていいのか
かけるかな・・・
かけた! 一昨日から、PAからMPLAB IDEに乗り換えて勉強中です。 まずはPICな日曜日のプログラムをコピーして色々やってみようと思っています。 16F877でステッピングモーターを往復回転を実現したいのですが、 タイマ0の割り込みで飛び先に色々書けば実現できそうなものですがなかなかうまく行きません。 スマートなお手本をどなたか見せていただけませんでしょうか。 角度、往復回数、回転方向を用意してやってみるのですが、方向が変わりませんw
往復回転の前に、加速/減速が自在に出来んとな。 あるいは超低速で正転/停止/反転など じっくりと。 それにしてもアセンブラでは・・・
Cじゃないとダメなんですか?アセンブラではダメなんですか?
857 :
774ワット発電中さん :2010/07/06(火) 22:52:22 ID:yw+GwMpQ
14K50使いにくいのか、いっそのこと30F2020とかに移行するか みんなdsPIC良く使ってるの?
余裕
>>848 PICの開発ツールで浅田飴みたいなのがあった。そういえば。
>>856 Cのほうが開発が楽ってだけ
どっちでも同じことができる
861 :
774ワット発電中さん :2010/07/06(火) 23:27:50 ID:yw+GwMpQ
>859 そうそう浅田飴、みんな浅田飴って言うから・・ 本名知らんなぁ
862 :
774ワット発電中さん :2010/07/07(水) 21:33:23 ID:q9iXfcuM
浅田飴って何???
864 :
774ワット発電中さん :2010/07/07(水) 21:50:45 ID:q9iXfcuM
それは知ってる
866 :
774ワット発電中さん :2010/07/07(水) 22:48:11 ID:bSesVuWQ
それだそれ!、浅田飴w、最近の人は知らないのか・・ もうすでに過去の物なのかな? 関係ないけど、今中国なんだけど、北京の電子市場(中華秋葉原)に PICの専門店があって、そこでPICKIT2の完全コピー品が売ってるよw ケースまで本物そっくりな形なんだけど、青いんだよ・・ で、パッケージとか全部偽者、ケーブルも違うのが入ってて CDもマイクロチップ製じゃないのが付属してる。 しかし、S/Nとかが本体に書いてないのね、取説に回路図が書いてあるから コピーは出来るだろうけど、完成度が以外に高いのであせったよ。 でも普通に使えるよ。
うf
微笑まれても小丸
「ピンポーン」と鳴るチャイムICと PIC10F200を組み合わせて、 「ピンポーン」が3回鳴る回路を作った。思った以上に簡単だった。 PICのプログラムは [ 4.5秒 ON → 1.0秒 OFF ]を3回繰り返すだけで、CCS-Cで組んだ。 これを PICを使わずに 555タイマーICとかで作ったら意外と大変なんだろうな。
871 :
774ワット発電中さん :2010/07/08(木) 22:13:42 ID:S9F26sh5
だれかPICでPID制御やったことある? いま後閑先生のサイト見てやってたんだけど、PとIの式が逆な気がするんだが 詳しい人おしえてください
人に見てもらいたいならURL貼れよw
873 :
774ワット発電中さん :2010/07/08(木) 22:42:53 ID:S9F26sh5
I2Cを使えるようになるのに一日かかった なまじMSSPを使う方が難易度高くないか
>>873 「記号で表すと」の下の式?
だったら、1行目が積分になってるから、以下のように変わる。
比例項→積分項
微分項→比例項
2階微分→微分項
876 :
774ワット発電中さん :2010/07/09(金) 08:54:55 ID:y+ZSJQil
>875 レスありがと ん?積分項→比例項だよね? 実際に動かすと、そんな感じなんだが
877 :
774ワット発電中さん :2010/07/09(金) 09:35:52 ID:hKw3Qv4a
最近、PIC18F1220がPIC18F12K20みたいにKのついたものが出たけど、何が変わったの? ピンもコンパチで性能的にはほとんど変わらないって聞くけど。。。 内部発振も18Fは最大8MHzだったけど、Kのやつは16MHzまでいけるみたいだし。 Kの方が半額くらいで安いから乗せ換えたいけど、何が変わったか知っておきたいです。
Your search 18F12k20 did not match any documents. Please refine your search.
確かにググっても情報が一件たりとも出なくなったのが大きな変更点かもw
880 :
774ワット発電中さん :2010/07/09(金) 10:32:09 ID:hKw3Qv4a
あ、12K20は例で出しただけで、実際にはあるかわかりません。 23K20はありますよ!
>>873 ΔMVnは操作量の変化を表してるからたぶん合ってるよ。
つ nanoWatt XLP 因みにJが付くのは3.3V系
885 :
774ワット発電中さん :2010/07/09(金) 12:23:15 ID:xmeG9Nvl
>882 MVn = MVn-1 + ΔMVn ΔMVn = Kp(en-en-1) + Ki en + Kd((en-en-1) - (en-1-en-2)) と書いてあるが、Ki en だとさぁ 係数×偏差だから比例項じゃね? だからkp×neが比例項なのかなと思ったのさ、で Kp(en-en-1)の方が ki(ne-ne-1)になって積分項かなと。 でもね、実際に動かしてみると、制御周期が速すぎるのか、積分と微分があんまり効かない 係数をでかくすると一瞬だけ物凄く効き過ぎる。 温調計なんかだと、IとDは積分時間とかになってた気がするので・・・ これをPとIが逆なのは入れ替えれば良いとして、積分項なんかは、もっと長い時間で 積分できるようにして、係数は一定で時間を調節してチューニング出きる式を 誰かエロイ人考えてください。
>>885 操作量はあくまでMVn
各時刻ごとに Ki enを加えてるわけだから積分であってる。
第1項は前の時刻の比例入力を打ち消して新しい比例入力を加算(P)
第2項は前の時刻の積分入力に対して新しい積分値を加算(I)
第3項は前の時刻の微分入力を打ち消して新しい微分入力を加算(D)
MVn = Kp・en + Ki・Σen + Kd・(en - e[n-1]) MV[n-1] = Kp・e[n-1] + Ki・Σe[n-1] + Kd・(e[n-1] - e[n-2]) 儁Vn = MVn - MV[n-1] = Kp(en - e[n-1]) + Ki・(Σen - Σe[n-1]) + Kd・((en-e[n-1])-(e[n-1]-e[n-2])) = Kp(en - e[n-1]) + Ki・en + Kd・((en-e[n-1])-(e[n-1]-e[n-2])) 経験上この差分形式はうまくいかないことが多いと思うけどね。
>>887 各時刻ごとに積分値と偏差から素直に入力を計算したほうがよさそうだよね。
>>885 わからんやつだなぁw
1行目:操作量= ΔMVnの積分
2行目:ΔMVn = kp(偏差の微分)+ki(偏差)+kd(偏差の二階微分)
微分の積分は比例だし、二階微分の積分は微分。
890 :
774ワット発電中さん :2010/07/09(金) 14:27:28 ID:xmeG9Nvl
>886 なるほど、理屈は合ってるね でもね、実際に動かすと、制御周期を10mSでやってるんだけど 時間が早すぎて「前の時刻の比例入力を打ち消して新しい比例入力を加算」 の部分が常に0になるんだよね、アナログでやると、偏差は常にあるからさぁ すごく違和感がある。 で、積分項が「前の時刻の積分入力に対して新しい積分値を加算」でしょ そうすると、今回、前回、前々回・・と加算していくと比例項に対して かなりでかくなるんだよね、普通は、比例だけでは取りきれない残留偏差を 埋めるための積分項なんだけど、まんま比例項的に大きく作用してしまう。 平均取ればいいのかな? その辺が現在の問題点なんだけど、どうするとスマートに解決できるんだろ?
891 :
774ワット発電中さん :2010/07/09(金) 14:35:03 ID:xmeG9Nvl
>889 数学的に言えばその通りなんだが 現在良い制御が出来ていないのが問題なんだよ さっきも書いたけどPIDの式がどうのではなくて、使い方の問題だね こんな風な制御をPICでやってうまくいった事例とかあったら参考までに 教えてください。 ちなみに制御対象はマグネトロンのフィラメント電圧で フィードバック入力は、実効値回路を通した後のDC電圧(フィラメント電圧に比例) あと、実効値回路のセントリングタイムが遅いのが難点(2秒程度) こんな感じなんだけどPICのPIDで上手にできる物なのかな?
PIDとはいえ理論式そのままでうまくいくようなことはまずないかと。 浮動小数点演算が使えないのも苦しいし、変数の値域も有限。 積分項や微分項の動きは制御対象に合わせていろいろな加工が必要でしょう。 dsPICのライブラリにはPID関数あるね。使ったことないけど。
歴史は繰り返す・・・にしても,その程度のことがきちんと伝授されていない あたりに日本のものづくりの危うい現状を垣間見た思いがする.
895 :
774ワット発電中さん :2010/07/09(金) 16:52:30 ID:xmeG9Nvl
>>891 一応仕事なんですが、PICは専門じゃないので・・・
>>893 フロートの演算は普通に使ってますよ、処理は間に合ってるし・・
なんか問題あるのかなぁ、もしかしてそこがうまくいかない原因?w
>>894 おっしゃる意味が良く判りません。
先輩/上司にやり方を聞けという事ですかね?
896 :
774ワット発電中さん :2010/07/09(金) 16:53:25 ID:xmeG9Nvl
>>891 一応仕事なんですが、PICは専門じゃないので・・・
>>893 フロートの演算は普通に使ってますよ、処理は間に合ってるし・・
なんか問題あるのかなぁ、もしかしてそこがうまくいかない原因?w
>>894 おっしゃる意味が良く判りません。
先輩/上司にやり方を聞けという事ですかね?
>>890 本来の積分要素は Ki*Σei*Δt (∫edt)だし、微分要素は Kd*(en-e[n-1])/Δt (de/dt)。
今はΔt=0.01 (10ms)だから、これをKi, Kdだけで表現しようとしたらオーダに大きな差が出るはず。
本当にPICでの演算に問題がないのならあとは制御の問題ではないですか?
むだ時間が2秒あるシステムだとどちらにせよ難しくなりそうではあるけど。
898 :
774ワット発電中さん :2010/07/09(金) 21:43:56 ID:y+ZSJQil
>897 ごめん数学苦手なんでΣとか出ると判りません・・ 無駄時間?は2秒だけど、2秒後にポンと値が更新されるんじゃなくて 2秒後に確実な値になると言う事なんで、その間にもDC電圧は実測値が 反映され続けてるんだよ。 だからまったく制御出来ない訳ではなく、PID制御してるんだなぁ風に 制御は出来て目標値にたどり着くんだけど、応答性というか、上昇は良いんだけど 下降でアンダーシュート気味なのが納得いかないんだよね。 あと、贅沢言うと、微分項がもっと効いてくれて偏差が大きい時に 一気に目標値に近づいてくれると良いなぁと、そんな感じなんだよ PIDの係数いじってるんだけどどうも上手くいかなくて
899 :
774ワット発電中さん :2010/07/09(金) 21:47:32 ID:y+ZSJQil
>887 ちょっと質問なんですが、経験上上手くいかなかった制御対象とは 具体的にどんなやつですか? 参考までに聞いて見たいです
>>898 実効値回路のダイナミクス(一次遅れ?)を含めて制御系が設計できればベストなんですかね。
微分項に関しては
>>897 で書いたとおりで、もしMVnの式をそのまま使うなら
KdはKpよりかなり大きく設定する必要がある(数十倍とか)。
901 :
774ワット発電中さん :2010/07/09(金) 22:24:12 ID:y+ZSJQil
>900 ああ、そうなのかな、微分項のパラメータだけやけにでかくなるので 躊躇してたんだけど、気にしないで大きくしてみれば良い結果になるのかなぁ でも、LCDディスプレイつけてあるので、各項目を見ながらセッティングしてたんだけど 突然にMVがでかくなるような出力だと安定には制御出来ないんだよね もっと長い時間で見た方がいいのかな、微分と積分は・・ そもそもの応答性の悪さは実効値回路のセントリングタイムの遅さだと思うので その辺の部分も見直さないと駄目かもしれないね でもね、納期が来週の水曜日なんで・・どうしよう 妥協してこのまま出そうかなと今考えてるw
そこで現代制御論ですよ
>ちなみに制御対象はマグネトロンのフィラメント電圧で まさか、はやぶさ2のイオンエンジンに載せたりしないだろうな。 いくら予算を削られたからって変な物載せるなよ。
極短時間の差を取る方法だと、誤差(桁落ち)が大きすぎて微分は無意味だし、 それをいくら足し込んで行っても積分にはならんよ 連続値を扱う数学では正しくても、離散値を使うプログラムで正しいとは限らない
905 :
774ワット発電中さん :2010/07/10(土) 03:32:22 ID:IAGNXEkH
>902 それって何ですか?私はPIDしか判りませんw >904 やっぱ時間が短すぎるんですよね、微分はあきらめてPI制御で割り切った方が良さそうですね >903 >まさか、はやぶさ2のイオンエンジンに載せたりしないだろうな。 >いくら予算を削られたからって変な物載せるなよ。 実は、回路のほうもはやぶさを参考にして、PICの足が2Pin余っていたので トライアックのトリガ回路を当初1Pinでバッファを介して点弧していましたが 残りのPinを全てダイオードで接続しする改良を施して、冗長化させてありますw でもはやぶさ2のイオンエンジン用じゃないから安心してね♪
>一応仕事なんですが、PICは専門じゃないので・・・ 仕事で作るっていうなら,仮にも「プロ」だろうに こんな便所の落書き場で聞いて作るなよなぁ
907 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 07:53:28 ID:IAGNXEkH
>906 結構色々参考になりますよ、皆さんの話を聞いてると 最終的には自分で決断するので問題ないでしょう いま日本にいないので同僚とかに聞けないんですよw なんでこんなところを利用しています。
こんな場所で聞いてるような奴が作った製品に出会わないことを祈る
909 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 18:14:33 ID:jQnfDJkq
たいたいPICって、製品に出会うほど一般民製品の組み込みに使わ れてるの?
910 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 18:15:27 ID:jQnfDJkq
民生品だ・・・
911 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 18:44:19 ID:IAGNXEkH
使ってないんじゃないか? 車なんかは割りと使ってるのかな? 俺は知らない
DELLのラックサーバーのふた開けてみたら中に入ってた
914 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 19:27:23 ID:IAGNXEkH
海外で多く使われているのか いまググってみたが日本のメーカーは結構自社のマイコン持ってるからそれを使ってるね 持ってないところもルネサスとかが多いねぇ 前にマキタの充電器ばらしたら8ビットの国産マイコン使ってた PIC使うより安いんだろうね PICって秋月以外だと意外と高いし なにやら人工衛星にPIC使った例とかもあったから、はやぶさ2の件も笑えないなぁ はやぶさはSHだっけか
>人工衛星にPIC使った例 くやしく
マイコン全体ならルネサスは強いからね アマチュアの趣味の世界しか目に入らないし.
918 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 20:42:29 ID:IAGNXEkH
でもPICって16とか18は8Bitだから0.5μ?.25μmプロセスで十分らしいから 放射線対策として使うならば最新の半導体使うより有利何じゃないか? 処理速度が足りないか16Fじゃ・・
919 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 20:48:07 ID:IAGNXEkH
>916 すげえ! FPGAとPICの組み合わせか、やるなぁw
921 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 21:56:34 ID:jQnfDJkq
>920 小型衛星に積んでるCPUなんだね。小型衛星は、民間で作るから汎用品な んだろうね。寿命も短そうなので、あんまり宇宙線対策しなくても良いのかな? アポロのコンピュータの低性能は有名だけど、宇宙線による耐誤動作を重視 して、集積度はあまり高くないものを選んだらしい。パスファインダーは8ビット だったみたい。あと、長期間動くものは、とにかく省電力は大きなファクターな んだそうな。 しかし、アキバで買える部品が宇宙に行くんだねぇ。
>>921 表面的な機能は同じでも、スペックは同じじゃないよ。
それなりに対策した特注品だったりする。
予算や目的によってそのレベルは色々らしいけど。
924 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 22:16:53 ID:jQnfDJkq
へぇ。特注品だったりするんだぁ。結構宇宙線は誤動作するらしい。 某メーカの人に聞いたんだが、旧国鉄の管制システムが誤動作し て、どうしても理屈に合わなくて、最終報告書を「宇宙線による誤動 作」としたことがあるそうだ。(PICに関係ないね ごめん) たしか、打ち上げのGに耐えるのに、半田付けなんかスペックがある んだよね。でも、宇宙がなんか身近に感じるようになってきたなぁ。
>>924 あぁ、
>>920 は読んでなかった。
今読んだら、これには単に民生品って書いてるし、ほんとに市販品なのかもしれない。
遠い知り合いの話では、宇宙(特にヴァンアレン帯の外)では放射線が半端じゃないので
民生品そのままはありえないって色々聞いてたんで。
これは低軌道だったりしてOKなのかもね。
926 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 22:30:16 ID:IAGNXEkH
韓国の衛星にもPIC使ってあったらなんかやだなぁw
そういや、H2Aの部品がディスコンで困ってるような話があったな。 PICとは関係ないが。
へー 冗談くさいけど へー
SH2Aを使えばいいんじゃね。ソレらしい名前だし。
SuperHってなんかエロイな
LUX SuperH
933 :
名無しさん@そうだ選挙に行こう :2010/07/11(日) 10:47:10 ID:XNy40ptX
Win7x86_64 でMPLAB動きます? そろそろXPをリースバックするんだけど 次に来るのが Windows7/64bit ・・・・・・・。 人柱神おせーて
XPモードで桶
>>932 おお、興味あり。
アナログで同時押しとかどうなるのカナ?
1k+2k+4k+8k?
>>934 d!
でもPicKit2とか大丈夫?
ドライバーがネックになりそうな希ガス
>>935 抵抗の色が少しわかりにくいですが、10kΩと20kΩのR-2Rラダーです。
押さない場合は解放なので電流は流れません。
複数押された場合は16段階の刻みのどこかになります。8個全押しもできます。
上8,左4,右2,下1みたいな重み付けです。
テスターではほぼ想定どうりの抵抗値が出ています。
各ボタンを押したときに右系列と左系列の抵抗読み値の誤差は1%程度でした。
本来なら、コンデンサでノイズ処理した方がいいのかもしれませんが、ソフトウエア側で
短時間のチャタリングは無効にするのもありと考えています。
SPSTでR-2Rラダーになるのかな?
抵抗ラダーってどうやって思いついたんだろうな
世界で最初に思いついた人の話?
だろな. ラダーでD/Aして読むっていうのは古典的な基本テクニックだし.
10年くらい前にあったデジタルツーカーのほとんどタッチパネルの携帯を分解したらPICが入ってた
1ヶ月前のスイッチをD/Aで読む話題を再現するわけでつね? R-2Rよりも、4接点に抵抗5本で良かったんじゃ?
> 4接点に抵抗5本で良かったんじゃ? ?
ラダーがどうしてそういう動作するのか把握するだけでも頭ぐちゃぐちゃで、 結局、数式がそうなってるからとかしらみつぶしとかの直感から離れた理解しかできないのに、 それを逆に思いつけるというのが人間技と思えない 逆から辿らないと展開できない式変形みたいな
>>949 気持ちはわかるが馬鹿だとしか言いようがない
951 :
名無しさん@そうだ選挙に行こう :2010/07/11(日) 21:11:08 ID:+dHZenJX
EEPROMとTIM0を併用している人へ質問 16F819を使っています。DATA用EEPROMの書き込み時にOPTION_REGが化けて TIM0が止まってしまいます。具体的には TIM0は内部クロック EEPROMに書き込み、書き込み完了をポーリングで 待ちます wr_wait_loop btfsc EECON1,WR goto wr_wait_loop bcf EECON1,WREN bcf STATUS,RP0 bcf STATUS,RP1 return このループを抜けた途端に、OPTION_REGが0xF0に化けます。 こんな経験だれかお持ちですか? チップで動かなかったので、この動作はシミュレーターで確認しています。
>>941 すみません。on-offの普通のタクトスイッチだとうまく動きませんでした。
>>511 を参考にして、r-2rより十分小さい抵抗でプルダウンしてください。
抵抗5本(2系統なら10本)での提案もいただいているなかで、12本(同24本)も
使ってやるべきか、意見が分かれると思います。
>>952 ADコンバータで読み取るタイプなので、入力電圧全域に渡って直線で入って来るのが良いと思います。
抵抗5本のタイプはリニアリティが良くない(入力全域にわたって曲がっている)ので、
直線で変化するR-2Rのほうが良いと思います。
R-2Rにすると抵抗の本数が増えてしまいますが、それを補って余りある効果だと思います。
スイッチ 8個の入力に抵抗24本も使うのは呆れるほど無駄な話だろ。 10本で済むなら当然そちらが良い。 非直線でも4bit=16stepを読むにはA/D8bit=256stepあれば充分だから
>抵抗5本のタイプはリニアリティが良くない(入力全域にわたって曲がっている)ので そんなことないでしょ。 重みつき抵抗型DAだって4ビットくらいなら正しく作ればちゃんとリニアになる。 ならないとしたら抵抗値がズレているか、負荷に対して大きすぎるか、 >952のようにSPSTスイッチで操作して、'L'でなくオープンに なるような回路にしてるとかでしょ。
俺も同意、確かにビット=ボタン直読って言うのが魅力だよね。R-2R すげーバカだけど、8ピンPICで、4スイッチー>1アナログ出力組んだほうが、簡単かw
>>954 >非直線でも4bit=16stepを読むにはA/D8bit=256stepあれば充分だから
確かに仰るとおり、「分解能」(細かさ)は256stepもあれば十分です。
が、どのスイッチが押されているかの「判定するときのソフトウェア」で困りませんか?
電圧が直線なら、等間隔で割れば、ほぼ正しく判定できると思います。
しかし特性が曲がっていると、その「曲線の形」をプログラムに入れて
if文で切り分け、曲線が変わったら、またプログラムを修正になると思うです。
>>957 テーブル、というのがある。たかが16値です
>>954 書き忘れました。
>スイッチ 8個の入力に抵抗24本も使うのは呆れるほど無駄な話だろ。
別に、24本も使わなくてもいいと思います。
4.7kと10kで良いのでは無いでしょうか?
>>955 >重みつき抵抗型DAだって4ビットくらいなら正しく作ればちゃんとリニアになる。
すみません、このような方法があるのですね。僕の勉強不足でした。
ぜひ、具体的な値を教えていただけないでしょうか?
4bitですと、1/16ですので、5Vで
5 × 0/16 ,
5 × 1/16 ,
5 × 2/16 ,
:
:
5 × 14/16 ,
5 × 15/16 ということですよね。
1k 2.2k 3.9k 8.2k とかでざっくり作っても、意外とちゃんと分かれるぞ
>>951 どうせ割り込みでレジスタバンク破壊したままなんだろ
>>960 ありがとうございます。そうなんですか? 回路ってこんな感じでしょうか。
5V━━SW1━━1k━━━━━━━┳━━出力
5V━━SW2━━2.2k━━━━━┫
5V━━SW3━━4.7k━━━━━┫
5V━━SW4━━8.2k━━━━━┫
5V━━SW2━━10k━━━━━━┫
5V━━SW2━━22k━━━━━━┫
5V━━SW3━━47k━━━━━━┫
5V━━SW4━━82k━━━━━━┫
R
┃
0V
>ラダーがどうしてそういう動作するのか把握するだけでも頭ぐちゃぐちゃで いっぺんに考えようとするからいかんのです. 2ビットや3ビットくらいで考えて,ラダーの発明を追体験してみると良いと 思うです
>>933 Windows7 x64 Ultimate
XPモードなんかにしなくても,7βの頃から普通に使えてるよ.
PICkit2も正常動作.
966 :
941 :2010/07/12(月) 08:35:52 ID:Vg1iB58b
これで行こうと思います。ありがとう 5V | +-SW1 -- 1k + +-SW2 -- 2.2k + +-SW3 ---3.9k + +-SW4 ---8.2k + . +-----out . 8.2k . . +-----GND
うそ。まちがいた 4.7k 2.2k 1k 0.3k + 0.3k 電流が 1:2:4:8になればいいんだ。
I/Oの多いPIC使えばよくね?
アナログ入力の変化をシリアル送信するプログラムを作ってるんですが、 Bカーブ10kを使っているにも関わらずAカーブのような動きをするのでテスターで確認したところAカーブのような電圧変化をしていて驚きました。 可変抵抗とLEDを繋いだ状態だとちゃんとBカーブの電圧変化をしていたのですが、なぜPICと繋げた場合Aカーブの変化をしたのでしょうか?
回路おかしいんじゃないの
部品が違っていると思われる。
>>970 そのPICはストレートとスライダーしか知らないんだろ
>>970 LEDで『ちゃんと』電圧変化してたってのは、どうやってみたの?
PICにはどう繋いでる?
PICの型番と繋いでるピン番号は?
975 :
970 :2010/07/13(火) 01:06:07 ID:W9ws2g2e
>>975 えーっと、釣り?
可変抵抗とLEDがPICの別々の端子に繋がってるのなら、内部のプログラム次第でどうにでもなるだろ
977 :
970 :2010/07/13(火) 02:45:40 ID:W9ws2g2e
いや、そういうことじゃなくて、 LEDは可変抵抗がちゃんと動いているかテストで使っただけでPICと繋げてません。 擬似Aカーブ?みたいな現象が偶然起っているのかと思って質問しただけで釣りじゃないのですが・・・。
>>978 使ってないのにいい加減なこと書くなよ。
よく嫁
>>970 なんか経験あるなーって思い出したんだけど、VRの結線間違えてない?
褶動子が真ん中になってないとか。
>>977 LEDをA/D値のデューティーでPWM駆動してるってこと?
だったらLEDが繋がってるピンの電圧を見ればいいの思うよ。
LEDは非線形素子だから掛けた電圧と電流が比例しない。
質問の仕方を改善すべき。
情報が足りないし、筋道がないから無茶苦茶な事言ってるように見える。
釣りだと思われても仕方ないよ。
>>977 >LEDは可変抵抗がちゃんと動いているかテストで使っただけでPICと繋げてません。
この時の接続はどんな回路ですか?
電源(○○V)-------VR(10k)------(A)LED(K)-------GND という回路でしょうか?
>>975 >>975 で提示した回路はPICと繋がってる
>>977 ではPICと繋げてないという
どっちが本当なの?
Aカーブの変化と言うなら測定結果をグラフとかにプロットしたんでしょ?
そのデータも提示してよ。
測定した本当の回路と一緒にさ。
>>978 > CMOSデバイスのアナログ入力ピンは,非常に高い入力抵抗をもっていますが,サンプル&ホールド
> 回路が動作すると瞬間的にインピーダンスが低下します.PICマイコンでは約1kΩ程度に低下するので,
> 1kΩより十分に低い抵抗を付けなければなりません.
恥ずかしながら知らなかった。今後気を付けよう…
>>984 入力ピンに、適切な容量のコンデンサを設けて、インピーダンスを下げてやれば問題ありません。
>>985 その他
アナログ入力ピンにコンデンサか。あんまり見ないんだけど、マジ?
987 :
774ワット発電中さん :2010/07/13(火) 17:41:52 ID:2n/WNlRI
真に受けるな
アナログ入力ピンには応答速度を悪くしない範囲でコンデンサ付けるだろ ノイズ対策にもなるし
電流取れないときはオペアンプでボルテージフォロワ
>>984 >PICマイコンでは約1kΩ程度に
これ完全に間違ってるんだけど。
入力電圧が変化しなければホールドコンデンサを充電するのに
充分な時間をとれば入力抵抗は高くても良い。
マイクロチップが10kΩ以下を推奨してるのは±500nAの漏れ電流の
影響の方だろう。(10kΩ*(±500nA)=±5mV)
データシートをちゃんと読むべきで、本に書いてあるからと鵜呑みに
しない方が良い。
991 :
のうし :2010/07/14(水) 15:13:45 ID:pic7PTAb
IDにPICと出ましたがネ申でいっすか?
omeko
.....(((((((((((((。・_・。)ノ 才×〒"├¬♪
>>991 よくやった。
家に来て俺の妹のPicKit3持っていっていいぞ
おいおい、のうしだぜ? 妹を持っていかれるぞ。
1000なら、マイクロチップがルネサスと合併する。
>>996 合併?
マイクロチップがルネサスに吸収合併される、じゃなくて?
1000ならPICnPICn
999なら銀河
1000も取ったでござる
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。