初めてのPIC 0x08 at DENKI
[2ch|▼Menu]
[前50を表示]
450:774ワット発電中さん
16/06/15 22:47:26.87 sbLqU1kD.net
>>426
すみません。書きようがまずかった。
「サポートされていたら」は「サポートされる状況では」の意図でした。

451:774ワット発電中さん
16/06/15 22:55:08.99 Y28DJeFM.net
F1705はお勧めできません!!!
I/O制御レジスタやPPSが追加になっていて初心者にはどうかと・・・
メモリーも多いし機能も豊富ですが設定が理解できるかどうか??
それと24FVは最近XC16の記述仕様が変わったためサンプルが
ほとんど使えなくなりました。
自分的にも良いPICと思っているので旧環境でも使える
ライブラリを整備しようと思っています。
(現在6割くらい独自ライブラリが完成しています)

452:774ワット発電中さん
16/06/15 23:16:28.70 imRba542.net
14ピンはなー…8bit揃ったポートが無いのがなー…

453:774ワット発電中さん
16/06/15 23:30:43.17 Y28DJeFM.net
最近はあまり新しい商品が出てきていないけど18ピンのPIC
は使いやすかったけどな〜〜
14ピンは8ピンに6ピン追加しただけで8Bitそろわないな〜〜

454:774ワット発電中さん
16/06/16 00:21:40.95 m+Z/B544.net
16F84から16F88にきてPicKit2での不具合に嫌気さした場合はどれにいけばいい?18ピンでお願いします。

455:774ワット発電中さん
16/06/16 00:31:15.71 tmUYxQnC.net
>429
多機能だろうとほとんどの機能はデフォルトで無効化されてるんだから関係なくない?
I/OをデジタルでON/OFFするだけならANSEL設定すればいいだけだし。

456:774ワット発電中さん
16/06/16 06:29:56.64 tUVRl2cs.net
いいなぁPICはあーでもない、こーでもないと色々迷えて。
羨ましいぞ。
AVR入門はArduino経由かどうかで、ほぼtiny2313/mega328の2択だ

457:774ワット発電中さん
16/06/16 06:37:50.83 nzzeUII0.net
16F84から18F2620に変えたけど、RAMとROMの空間が多くて便利だわ。+5Vだし。

458:774ワット発電中さん
16/06/16 11:07:02.49 In/Mo4XH.net
今時8ビット揃わないと困ることは少なくなったんじゃない?
どうしても8ビットいるなら20ピンとか28ピン使えばいいだけだし、14ピン否定する意味がわからないなぁ。
18ピンが使いやすいなんてこれっぽっちも思ったことがないなぁ。結局内部機能使おうとしたら8ビットなんて取れないんだから、そういう意味では20ピンは内部機能の割り当てがよくできてるから8ビット取りやすいよ。
84Aに引きずられすぎじゃない?コピーするにしても移植する


459:ュらいの元気は欲しいな。 あ、84Aは内部機能ほとんどないから気にならないのか・・・。LEDちかちかするだけだから、折角の豊富な機能は無用の長物なのか?



460:774ワット発電中さん
16/06/16 13:29:16.88 tUwZfKcK.net
16F84A、秋月で300円、表面実装のやつだけどマルツで630円
値段的にどうなの、って気がするけど

461:774ワット発電中さん
16/06/16 16:38:36.81 J8zK8ehf.net
8bitって、扱えるデータが少なくて使いにくくないか?
int=8bit?
long int=16bit?
longの計算中に割込が入ると、泣ける。
1msタイマーの中で、255msしか数えられないのが不便だと思う。
16bitなら、65秒とかが1ms刻みで調整できるよ。
AVRは、型番の読み方がわかんない。ATmegaってアトメガ?

462:774ワット発電中さん
16/06/16 19:06:34.35 IZC6Ofql.net
>438
工夫すればどうにでもなる事だとおもうけど。
16bit以上の演算を多用して速度が必要なら16bit以上のマイコンを選択すればいいし
そうでないなら8bitでも充分だし
>longの計算中に割込が入ると、泣ける。
なぜ?

463:774ワット発電中さん
16/06/16 20:59:05.20 3NBG5+Hs.net
>>438
マイコンの選択間違ってるだけでしょ
必要な機能があるもの選べばいい

464:774ワット発電中さん
16/06/16 21:19:45.60 3as7yhK7.net
>>438
なんで1msタイマで255msまでしか数えられないのかわからんな。
どんなカウントしてるんだか?

465:774ワット発電中さん
16/06/16 21:38:42.54 xSrSrmAS.net
PIC自身のワード幅とタイマーとCのintを混同している気がする
8bitPICでも16bitタイマーはあるし、Cのintなら16bit

466:774ワット発電中さん
16/06/16 21:39:14.03 6gKpuizv.net
>>438の言ってることがほとんど理解できない。
修行し直してくる。

467:774ワット発電中さん
16/06/16 21:59:33.68 I7UbZ/Bk.net
>>438
自作なら、PIC24にいった方が幸せ。
量産で、1円単位でコストダウンしたいなら、8bit だが。

468:774ワット発電中さん
16/06/16 22:00:56.19 PJjXV6+V.net
こんなことをやっているのでは?
グローバル変数をタイマー割り込みでインクリメントする。
メインのループでその変数を参照する。
その変数が16ビットであって、メインループで上位下位の順に参照するとする。
上位を参照→割り込み発生インクリメント→下位を参照、でトラブル。

469:774ワット発電中さん
16/06/16 22:28:56.43 I7UbZ/Bk.net
>>445
普通、多バイト演算するときは、割り込み禁止するだろ?

470:774ワット発電中さん
16/06/16 22:47:17.49 PJjXV6+V.net
>>446
禁止していないから>>438みたいな悩みになるんじゃないのかな。

471:774ワット発電中さん
16/06/16 22:58:41.12 tUwZfKcK.net
そういや昔スーパーでレジのバイトしてる時に、ばばあ二人が割り込みしたのしないのと
大喧嘩。おれがバイトしてる時には割り込み禁止だ。そういう意味かな。

472:774ワット発電中さん
16/06/16 22:58:49.63 kCb1HdO3.net
>>446
じゃあ>>438は何をやってると思うの?
>>438が普通でない前提でみんなレスしてるんだが?

473:774ワット発電中さん
16/06/16 23:00:54.11 hY962zuS.net
お前らホント馬鹿ばっかりだな。
まともなのは>>443だけ。

474:774ワット発電中さん
16/06/17 03:51:17.39 BX9RSG9C.net
>>445が正解です。
タイマー割込で正確な時間を管理しようとしているのに、
割込を禁止するってどうよ?
解決策は、
グローバル変数に、int16_A, int16_B を取って、
タイマー割込の中では、int16_Aをint16_Bにcopyして、int16_Aを壊さないように処理。
結果は_Bに格納。
メインでは、int16_Aを使う直前に、_Bからcopyして使う。

475:774ワット発電中さん
16/06/17 04:16:22.92 Q9eXm22W.net
>451
>メインでは、int16_Aを使う直前に、_Bからcopyして使う。
8bitマイコンで16bit分のコピー(MOV)だと2命令以上になるからその間に割り込み
入ったらダメだと思うけど(ちょうど桁上りしなければ問題ないが)

476:774ワット発電中さん
16/06/17 05:14:29.86 F3z7X/Xm.net
>>452
そもそも元の問題も、ちょうど桁上がりしてる時でなければ問題ない
>>451はコードを複雑にしてるだけで何ら問題の解決になってない
(問題の縮小にすらなってない)

477:774ワット発電中さん
16/06/17 05:51:25.65 lItx3LmK.net
>>453
コピー直後にABの値を比較して、もし変化していたら再度コピーすればいいね
確率的に無限ループにはならないかと

478:774ワット発電中さん
16/06/17 06:35:32.20 F3z7X/Xm.net
そもそもジャンプ系の2ステップ命令実行時に割込みが発生したら1ステップずれるという問題もあるから
タイマー割込み→カウンタークリア→カウント再開(変数インクリメント)
という手順では正確なカウントはできない
やるならカウンターはフリーランにしておいて、
オーバーフローで割り込み→変数インクリメント
という手順にする必要がある
後者の方法であれば、変数を使う時に割り込み禁止しても変数インクリメントのタイミングが
遅くなる場合があるというだけでオーバーフローの回数を数える処理としては問題ない

479:774ワット発電中さん
16/06/17 06:54:32.45 oYnN0xgs.net
正確なインターバル欲しければハードウェアしかないだろ。
ソフトウェアタイマーはズレ承知で使う物

480:774ワット発電中さん
16/06/17 07:20:37.29 nqlh3TII.net
>>455
カウンタクリアをソフトで実施するからまずいってことではない?

481:774ワット発電中さん
16/06/17 07:23:17.13 /4keYfit.net
>>456
アウトプットコンペア、とかも有るしな。

482:774ワット発電中さん
16/06/17 08:20:08.18 jpZ3b4Dj.net
たかが1ms程度、割り込みでフラグたてて帰ってきて、mainでインクリメントして、どれだけ誤差が出るのか?
メインでだらだら重たい処理全部書いてるんじゃねーのかね?

483:774ワット発電中さん
16/06/17 09:29:22.65 NhsROuHO.net
割込みで問題出るならもっと高性能なもの使えばいいだけ
わざわざトロイ物使ってること自体が問題では??

484:774ワット発電中さん
16/06/17 10:46:52.44 3P/WD7/b.net
>>455
>そもそもジャンプ系の2ステップ命令実行時に割込みが発生したら1ステップずれる
割り込み源がCPUクロックに同期している限りではずれない。
1ステップ命令時にはNOPが挿入される。

485:774ワット発電中さん
16/06/17 10:58:55.04 jTbWdtJb.net
>>459
並行して使うタイマーが1000個とかあったらどうよ?
弾幕ゲームとかキャラ数何個だと思ってる?

486:774ワット発電中さん
16/06/17 13:08:51.67 lN8K2SKw.net
>455
CCP機能に SPECIAL EVENT TRIGGER という便利な機能があるのでそちらを使えばいいだけ。
TMR1が指定値になったら自動でリセットされ、CCPの割り込みが発生する。

487:774ワット発電中さん
16/06/17 13:20:34.88 F3z7X/Xm.net
>>457
だから>>455でそれがダメだって話をしてんじゃん
>>461
割込み頭で自動調整されるInterrupt Latencyって4桁型番になったあたりからの機能でしょ
8bitPIC全般の話(少なくとも型番指定されていない話)してる訳で・・・

488:774ワット発電中さん
16/06/17 13:41:58.52 3P/WD7/b.net
>>464
そんなことはない。16F690だってそうなってるよ。
PICはPeripheral Interface Controllerだけあってその辺は良くできている。

489:774ワット発電中さん
16/06/17 13:54:40.07 jpZ3b4Dj.net
>>462
意味わからん。
それをタイマー割り込みの内部で処理させるほうがよほどおかしいと思うが?

490:774ワット発電中さん
16/06/17 14:41:02.91 PmgxiNEt.net
結局
2命令処理


491:フ途中でタイマー割込がかかったときの対策は、ないんでしょ?



492:774ワット発電中さん
16/06/17 15:38:58.50 lN8K2SKw.net
>464
いや古いチップでも2ステップ命令実行時でも割込みタイミングはずれないよ。
PIC16F84(A無しの相当古いチップね)のデータシートより
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
勘違いしてる人多いけど、1サイクル命令も2サイクル命令も命令フェッチと実行に1サイクルずつ計2サイクルかかってるのは変わらない
1サイクル命令だと前の命令の実行と次の命令のフェッチが同時に行われるので見かけ上 1サイクル動作に見えるだけ。
2サイクル命令は前の命令の実行でPCが変更されるため同時に行ってる次の命令のフェッチが無効になり、次のサイクルで再取得の為
2サイクルまるまるかかることになる。
つまり割り込み掛かった時点の命令が完了するタイミングは1サイクル命令も2サイクル命令も変わらない。
割り込みの場合 図(FIGURE6-4)でいえば Inst(PC)まで実行される。Inst(PC+1)のフェッチはキャンセルされる。

493:774ワット発電中さん
16/06/17 16:15:15.43 lN8K2SKw.net
>467
>2命令処理の途中でタイマー割込がかかったときの対策は、ないんでしょ?
2命令というのが2サイクル命令という意味なら>468で書いたように1サイクル命令も2サイクル命令も差はない。
2命令が割り込み内で更新される16bit幅のカウンタか何かをメインルーチンで取得するという意味なら
A)>454のように2回取得して比較する。TMR1の取得にも使われる(PIC18FのTMR1は改良されてるね)
B)取得する間 割り込み禁止にする
Aはコードが面倒くさい。
Bは割り込みに入るタイミングがずれるので、割り込み内でTMRの再設定してたら蓄積されるズレが生じる。
ただTMRをフリーランで動かすなり、>463で書いたCCP機能つかえば蓄積されるズレは発生しないので
問題はないはず。もしこの数命令の短い割り込み禁止のタイミングすら問題となるなら、それはメインルーチンで
処理する内容ではなく割り込みルーチン内で処理するべき内容かと

494:774ワット発電中さん
16/06/18 00:22:10.99 gLnwO2Wr.net
>もしこの数命令の短い割り込み禁止のタイミングすら問題となるなら、それはメインルーチンで
処理する内容ではなく割り込みルーチン内で処理するべき内容かと
そうとは限らない。おつむの能力の問題だな

495:774ワット発電中さん
16/06/18 04:11:28.80 Q44NuWBq.net
volatile int val16;
void interrupt intfunc( void )
}
val16++;
}

int getval16( void )
{
int i;
di();
i=val16;
ei();
return i;
}

void main( void )
{
int j;
for(;;){
for( j=getval16(); j==getval16(); ){}
}
}
アセンブラ至上主義者には言いたいこともあろうが、割り込みで変更される可能性がある変数を参照するときは、専用の関数を用意すれば問題無し。

496:774ワット発電中さん
16/06/18 04:55:07.36 IFaudQVm.net
割込を禁止してるけど、定時になったときに仕事できないと思う

497:774ワット発電中さん
16/06/18 06:08:42.13 y8/e0mwO.net
EEPROMは電源切っても消えないデータってのはしってるけど
データSRAMってなんのこと?
どうゆうとき使うんだろ

498:774ワット発電中さん
16/06/18 06:52:27.43 RdEZPIYR.net
>そうとは限らない。おつむの能力の問題だな
具体的に書かずに誹謗だけするのはなぜなんだろな。この人のこの面は良くないと思う。
>>472
割り込みを禁止している期間は割り込み関数の起動の遅延をもたらすわけだけど、
その遅延がどれぐらい問題になるのか、問題にならないのかは用途次第だよね。
タイマー動作を突き詰めれば、(CPU内蔵のものを含めた)ハードウェアの支援がより必要に
なるし、そうすると場合によってはCPUの選択肢を狭くする。これぐらいは問題なし、と
言えるものなら、よりコストが低い方法も採れる。

499:774ワット発電中さん
16/06/18 06:55:44.64 RdEZPIYR.net
>>473
最近のPICには、内蔵(あるいは外付け)のRAMとは別に、
「DATA SRAM」っていう特別な機能があるのでしたっけ。

500:774ワット発電中さん
16/06/18 12:28:07.30 y8/e0mwO.net
>>4


501:75 サンクス



502:774ワット発電中さん
16/06/18 13:14:05.56 IhMw1bto.net
>473
EEPROMには大きな欠点が2つあり、第一に書き換え回数による寿命がある(品種により違うかもしれないが100万回程度)
第二に書き換えるのに時間がかかる(数ms程度) 1サイクルで書き換えできるSRAMと比べると1万倍位遅い事になる。
この欠点により電源ONの動作中に使うにはEEPROMは不適切で、書き換え寿命が無く高速なSRAMを動作中はメインに使うことになる

503:774ワット発電中さん
16/06/18 13:31:37.77 TTdLfpHD.net
>>473
そこで言うデータSRAMとは単にメインメモリ位の認識でいいです
一時的な変数を格納したり、関数行ったり来たりする際のワークに使ったりと
そういう使い方です
プログラムメモリはその名の通りプログラムコードを格納してある場所で、
普通はNANDフラッシュ領域で書き換えて使うことは稀です(最近はEEPROMの
変わりに使ったりしますが)

504:774ワット発電中さん
16/06/18 13:32:44.04 TTdLfpHD.net
>>475
いや、単に内蔵RAMの事をデータSRAMと読んでるだけ
どっちも同じ

505:774ワット発電中さん
16/06/18 13:42:19.12 upMq/c71.net
マイクロチップのバッテリーバックアップつきI2C接続のSRAM買ったけど眠ったままだわ

506:774ワット発電中さん
16/06/18 16:28:13.03 8QqRPwfy.net
入れる物の名前+メモリ と
動作特性の名前+メモリ など、いろいろ呼び方があるから、
チェリーな僕は混乱してしまいます。
Flash PROM
・プログラムが格納されているメモリ。RAM変数の初期値も書かれている
・プログラムで書換はできない
・電源offでも消えない
・容量 32kWとか大きい
SRAM
・計算に使用するメモリ。スタックとか変数とか
・プログラムで書換する
・電源offで消えてしまう
・容量 384byteとか
・データメモリとも呼ばれる
EEPROM
・プログラムで書換できる
・電気offしても覚えてる
・でも書込みが遅い
・容量 512byte とか

507:774ワット発電中さん
16/06/18 16:52:59.70 RdEZPIYR.net
>>481
PICマイコンをお使いになるぶんには十分な理解だと思います。
略語は一度は元が何なのかを調べておかれる方が良いです。
Flashメモリの「PROM」が微妙でして、Microchip ではFlash program memory って呼んでる
と思います。 プログラムを格納するメモリですね。
ROMは Read Only Memory が元になっています。
書き換えできるのに Read Only って変ですが、今では、RAMほど自由に書き換えできないって
ぐらいの意味しかないと思います。
前についているPですが、世間でPROMといえば、programmable ROM でして、これはプログラムを格納する
ではなくて、「プログラム(書き込み)可能な」です。
Flashメモリ自体は、仕組みはいろいろあるのですが、プログラムを格納するものとは限らず、身近な
SDメモリカードなんかはデータの保存に使いますね。

508:774ワット発電中さん
16/06/18 18:58:03.79 VzLBq0EK.net
>>481
釣られません

509:774ワット発電中さん
16/06/18 19:36:19.95 dH9BoPVT.net
MRAM使えば全て解決

510:774ワット発電中さん
16/06/18 19:59:03.65 8QqRPwfy.net
>>482
どうもありがとうございます。
略語の語源を知ると、理解が深まりますね。
EPROM = Electric Program Read Only Memory
EEPROM = Electric Erasable Program Read Only Memory
ですね。
FRAM とか

511:774ワット発電中さん
16/06/18 22:32:07.91 OYYIGxs1.net
EPROMはErasable PROMだよ

512:774ワット発電中さん
16/06/18 22:42:51.80 RdEZPIYR.net
MRAMはちょいと消費電流が大きいと思う。
でも、バックアップが要らなくてアクセスタイムがSRAMみたいに速いのはいいね。
使ったことはないけれど、TIのFRAMマイコンって惹かれる。
同じメモリをプログラムエリアにもRAMエリアにも使えるんだって。
PICだとこういうのは難しい


513:かな。



514:774ワット発電中さん
16/06/18 23:13:47.07 8QqRPwfy.net
>同じメモリをプログラムエリアにもRAMエリアにも使えるんだって。
すごい。ちょっと感動。
でも、しっかりブロックしておおかないと、ROM領域に書き込んでしまったら
大変なことになりそうですね。

515:774ワット発電中さん
16/06/18 23:33:51.82 sIeOwce3.net
ハーバードアーキテクチャでググって

516:774ワット発電中さん
16/06/19 10:16:29.28 zV699GXB.net
自己書き換ぇ…

517:774ワット発電中さん
16/06/19 12:11:32.70 +g8FOTp+.net
>>487
MRAMは磁界に晒すと記憶が飛ぶのみならずぶっ壊れるって聞くからこわい

518:774ワット発電中さん
16/06/20 03:44:05.56 GXzOPeZL.net
ピックでLEDをキラキラさせたいんですが、電気制限抵抗なしでも大丈夫でしょうか?
それがないと大電気が流れてLEDを死なせてしまうというのは理解させたのですが、
プログラムてきにすごい短い時間だけ光らせるようにすれば制限抵抗がなくても
大丈夫だったりしませんでしょうか?
例えば「0.1μセック点灯→5μセック消灯→以下繰り返し」みたいな感じです

519:774ワット発電中さん
16/06/20 06:49:33.02 5C0mnaMD.net
どちらかと言うと死ぬのはPIC側

520:774ワット発電中さん
16/06/20 07:35:46.56 DbAy/U7M.net
物理的にぶっ壊れるまえに全ポートの電流合計上限越えると
プログラム暴走すっから気を付けてね。

521:774ワット発電中さん
16/06/20 09:09:16.92 zUsmHOZu.net
>>494
どう暴走すんの?原因はなんなんですかね

522:774ワット発電中さん
16/06/20 09:22:48.45 zmbZWlog.net
当然だけどプログラムが不意に停止(ICSP書き換えとか含め)すると流れっぱなしになるよね
それでも3V電源なら直結流れっぱなしでも25mAに届かないと思う、
5Vだとヤバいかな(適当)と思う

523:774ワット発電中さん
16/06/20 10:07:47.61 DbAy/U7M.net
Lレベル上がっちまうからじゃね?<暴走

524:774ワット発電中さん
16/06/20 10:11:37.54 DY5ovjmj.net
>>492
抵抗なしは、ダメです。
必ず抵抗を入れています。

525:774ワット発電中さん
16/06/20 11:21:26.62 BjJhKEYl.net
抵抗は損失があるから
LEDに噛ますのは電力が勿体ないな
スイッチングして省エネに決めたくなるなw

526:774ワット発電中さん
16/06/20 17:10:35.84 CiFFnWBS.net
>>492
抵抗入りLEDが便利ですよ

527:774ワット発電中さん
16/06/20 17:54:11.36 ApsmG4i+.net
>>499
スイッチングするにしても、抵抗なしではダメでしょ

528:774ワット発電中さん
16/06/20 18:01:47.62 DbAy/U7M.net
ネタだからそれ、

529:774ワット発電中さん
16/06/20 19:02:12.25 NImi7+kP.net
スイッチングする前提なら、コイルを使えば良いのよ

530:774ワット発電中さん
16/06/20 19:11:30.26 NImi7+kP.net
>>472
割込みの応答時間が問題になるなら、
フラグを1つ用意すれば対応できるけどね。

531:774ワット発電中さん
16/06/20 20:05:37.94 xBDZgxE0.net
自分も質問があるのですが12F1827で100Hzから1Hzまでの周期をカウントして7セグLEDに表示したいのですが、どの様なカウント方法が良いでしょうか?
7セグでタイマー1は使っています。

532:774ワット発電中さん
16/06/20 21:07:48.16 02+eSUFs.net
周期って何の周期?
PICに波形が入ってくるの?

533:774ワット発電中さん
16/06/20 21:48:02.68 FRe37nqg.net
月に一度の・・・

534:774ワット発電中さん
16/06/20 22:19:45.42 NImi7+kP.net
給料日?

535:774ワット発電中さん
16/06/20 22:31:47.88 Kx8k00rQ.net
インプットキャプチャ?

536:774ワット発電中さん
16/06/20 22:32:06.94 5crJfF4B.net
>505
CCP機能のCAPTURE MODEを使って周期の間の時間を測って逆数を表示させるのが良さそうなんだけど
CAPTURE MODEはタイマー1限定なんだよね・・・
まあ16F1827はタイマーはいっぱいあるようだから、1秒(に近い値)を作るのと周期をカウントするタイマーで
二個使えばいいんじゃない

537:774ワット発電中さん
16/06/20 22:43:36.45 ZXFv1aa+.net
外付けのFRAM使ってるけど値段も安いし動作は高速で
快適に使えています。
しかも低消費電力・・・・
寿命も10の15乗とかなり長い・・・
書き換え時間は100ns,バイト単位で書き換え可能、

538:774ワット発電中さん
16/06/21 00:40:03.63 qBoZzscp.net
寿命がある時点でダメだな

539:774ワット発電中さん
16/06/21 07:55:29.01 9YSV01el.net
電解コンデンサはもっとだめだな

540:774ワット発電中さん
16/06/21 12:49:50.89 wOVH2aLt.net
セラコンで済ませる

541:774ワット発電中さん
16/06/21 12:52:49.88 BT560blq.net
セラミコは大容量の物が少ないし、大容量のMLCCは特性がなぁ
ケミカルをセラミコで置き換えるのはなかなか難しい

542:774ワット発電中さん
16/06/21 12:57:45.01 /0VRA1rB.net
10^15回かぁ。
1μsに一回書き換え続けたとして、電源入れっぱなしでも
10^15/10^6/3600/24/36531.7年
ってとこか。

543:774ワット発電中さん
16/06/21 16:19:37.29 heRNbx9Y.net
ちょっと前に真空中で動かす基板を設計したことがあったけど
ケミコン使えないのでセラコンで設計したな。
ま、なせばなる。

544:774ワット発電中さん
16/06/21 17:23:57.55 Zw5hrYNb.net
そういや、あちらの参考回路だとタンタルコンデンサが良く使われてるよね。

545:774ワット発電中さん
16/06/21 17:37:32.38 jyH1gbg/.net
>>518
昔は今の積セラ位性能がいいのってタンタルぐらいだったからね。
ヒューズタンタルですら信用置けないってなったのと、積セラの性能向上で駆逐されつつあるけど…。
あと一桁って所には使うのかな?
東芝か富士通は使用禁止されてたはずだけど。

546:774ワット発電中さん
16/06/21 18:19:36.38 9YSV01el.net
タンタルはショートモードで壊れるし

547:774ワット発電中さん
16/06/21 20:26:06.67 ugOoiGxG.net
オーディオ信号のカップリングには今でもタンタル使われているよな
セラミックは非直線性で波形が歪むから

548:774ワット発電中さん
16/06/21 20:50:49.34 tawZgEdV.net
先日、16F1825買ってみたけど、いまだにLチカすらできません。
14ぴんの16F1825と20ピンの16F1829は兄弟らしいので便利だととびついたのですが、甘かった。
いろいろ検索してみたけどだれも使ってないのかXC8のサンプルプログラムがみつかりません。
そこでどなたかお願い、16F1825,あるいは16F1829のLチカのXC8版プログラムおしえてください。

549:774ワット発電中さん
16/06/21 21:03:06.25 iEQfy0sw.net
>>522
"16F1829"でグーグル検索すると一番上に出てくるサイトはもう見ましたかね?
「PIC16F1829使い方:16F1829覚書」
というのが出ると思うので、そのサイトをじっくり、リンク先も含めて読んでみて。
URLリンク(www.geocities.jp)

550:774ワット発電中さん
16/06/21 22:48:43.57 JuJL1MND.net
タンタルは昔これしか使えるものがなく多用してましたが
故障したときの原因究明でかなり苦労させられたのと
今ではそれほど性能がよくありません。
今では、セラコンとOSコンで使い分けしています。
(電解コンデンサでもかなり性能のいいものもありバカには出来ないと
 思い知らされたこともありました)

551:774ワット発電中さん
16/06/21 23:57:48.03 A5UcbI3o.net
アナログはスチコンかポリプロピレンだな
もちろんメタライズじゃダメだ

552:774ワット発電中さん
16/06/22 00:51:55.47 QZUC4o6W.net
>>521
歪みはどのコンデンサでも少なからずある
セラミック使わない一番大きな理由は圧電効果でノイズ源になるから

553:774ワット発電中さん
16/06/22 01:20:24.66 HS5lkcQm.net
>>523
読みました
「16F1827と殆ど変りません、ですから異なる所のみ記述して置きます、
後は16F1827覚書を参考にして下さい。」
と言うことなので16F1827のプログラムを多少変更してやってみたんですがだめでした。
変更と言ってもとりあえずはPORTB をCにくらいは変えましたが。

554:774ワット発電中さん
16/06/22 01:30:48.99 1bAMysSS.net
>>527
大丈夫だと思うけど、
・ポートのI/O方向は出力にしてるよね?
・ポート入力は、PORTxx という記述で、
 ポート出力は、LATxxという記述だけど、大丈夫?
とりあえず、全ポート出力に設定して、
1ピンだけのI/Oはやめて、8ポート全部まとめて
LATに0xff、タイマーで待ち、LATに0x00、タイマー待ち
をやってみれば、兼用ピンの無いピン1つくらいは、出力on/offすると思う。

555:774ワット発電中さん
16/06/22 05:42:55.38 HkqhOfDo.net
10F200から始めればいいじゃない

556:774ワット発電中さん
16/06/22 09:50:04.88 xYzV1HPx.net
>>522
ほれ
#include <xc.h>
#pragma jis // 日本語文字列を使うための宣言
// Config wordsの設定
#pragma config MCLRE=OFF, PWRTE=ON, WDTE=OFF, FOSC=INTOSC, LVP=OFF, PLLEN=OFF
// CP=OFF,CPD=OFF,BOREN=ON,CLKOUTEN=OFF,IESO=ON,FCMEN=ON,WRT=OFF,STVREN=ON,BORV=19は設定不要
#define MHz 1000000
#define _XTAL_FREQ 32*MHz // 32MHz
void DelayMs(int cnt){
while(cnt--)
__delay_us(1000);
}
// 初期設定
void InitPic(void){
// 内蔵クロック設定
OSCCON = 0b11110000; // 8MHz Internal OSC with 4x PLL
// IOポートの設定
OPTION_REG = 0x05; // Prescaler 1/64 for 32MHz Clock
PORTA=0;
ANSELA = 0b00000000; // アナログ入力OFF
LATA = 0;
ANSELC = 0b00000000; // アナログ入力OFF
LATC = 0;
}
// 主処理
void main()
{
InitPic(); // 各種初期化
TRISC=0; // ポートCをすべて出力に設定
for(;;){
LATC=1; // ポートCのbit0のみをHにする
DelayMs(500); // 500ms=0.5s何もしない
LATC=0; // ポートCをすべてLにする
DelayMs(500);
}
}

557:774ワット発電中さん
16/06/22 20:34:03.90 HS5lkcQm.net
>>530
ありがとうございます
感謝!感謝!

558:774ワット発電中さん
16/06/26 15:48:51.96 t6MAzMNx.net
16F1827ですがRA5を出力で使おうとしたところ出力が出ないのですが何か設定など有るでしょうか?
MCLRは使用しないにして
ポートをデジタルにするために
ANSELA=0b00000000;
ANSELB=0b00000000;
コンパレータも使用しないので
CM1CON0.C1ON=0;
CM2CON0.C2ON=0;
として
入出力は出力なので
TRISA =0b00000000;
としています。
RA5ポートを出力にする場合他にも関係するところなど有るでしょうか?
よろしくお願いします。

559:774ワット発電中さん
16/06/26 16:12:12.33 wuA


560:RKIMp.net



561:774ワット発電中さん
16/06/26 16:24:36.87 t6MAzMNx.net
>>533
そうなんですか?
データシートにOutput type CMOSと書いてあったので安心しきってました。
16F88から乗り換えたばかりで解らないことだらけです。

562:774ワット発電中さん
16/06/26 18:18:14.55 SoQORQ8P.net
>>533
16F88だってRA5はインプットのみでしょ、MCLRピンなんだから

563:774ワット発電中さん
16/06/26 18:18:45.34 SoQORQ8P.net
いかん
×>>533
>>534

564:774ワット発電中さん
16/06/26 18:31:38.14 t6MAzMNx.net
>>535
F1シリーズは全ピン入出力出来るのかと勘違いしていました。
お騒がせしました。
すみませんがもうひとつ質問させて頂きたいのですがタイマー0とタイマー1とINT割り込みを使っていて割り込み関数内でフラグの状態で処理を分岐させています。
この場合、一つの割り込み処理を行っているときに別の割り込みが入るとどの様な挙動に成るでしょうか?

565:774ワット発電中さん
16/06/26 18:49:55.65 PmNmfDMd.net
16F1や12F1のような割り込みレベルが1つしかないPICに限定して話すなら
現在処理中の割り込み処理が終わって割り込みルーチン抜けた直後に次の割り込み
処理が走るだけ

566:774ワット発電中さん
16/06/26 19:05:55.63 0QYz6etZ.net
>>537
いやまあそれでも、データシートの書きようは悪いと思う。
RA5の output type の表記は「-(ハイフン)」であるべきだよね…。

567:774ワット発電中さん
16/06/26 19:18:10.09 PmNmfDMd.net
PORTAの説明より
「The exception is RA5, which is input only
and its TRIS bit will always read as ‘1’」

568:774ワット発電中さん
16/06/26 19:49:34.15 gnLfj7Sx.net
>>539
どっちのチップの何ページのどの表?

569:774ワット発電中さん
16/06/26 22:02:23.75 0QYz6etZ.net
>>541
URLリンク(ww1.microchip.com)
これの11ページ。表1-2 (表1-2しかないけど)

570:774ワット発電中さん
16/06/26 23:03:06.95 t6MAzMNx.net
>>538
ありがとうございます。
実行中の割り込み処理が終わってからですか。
と、言うことは、3つの割り込み使う場合、溜め込まないようにしないと困ったことに成りますね。

571:774ワット発電中さん
16/06/26 23:49:20.56 o9O009yU.net
>543
別に割り込みから帰らずに、割り込み内でループして他に立っている割り込みフラグ(TMR0IF,TMR1IF,INTF)を
チェックして立ってたら割り込み処理してから帰ってもいいよ。割り込みから戻っても再度割り込みに入るくらい
厳しいスケジュールなら戻らずに処理してしまった方がレジスタの退避とかの時間を節約できる。
割り込みレベルと割り込みベクタが1個しか無いミッドレンジの話ね

572:774ワット発電中さん
16/06/28 23:02:59.49 dUx3jph/.net
12F683のスイッチ入力をMicroCで行おうとしているのですが、
以下、PICとMicroCのサイトで参考にしているプログラムが動きません。
具体的には、スイッチを押したときGP2の出力がONがonに、
離したときGP2の出力をoffにしたいのですが、ずっと出力が
出続けてしまいます。なぜでしょうか・・・?
void main() {
TRISIO = 0b00000100; //GP2を1:入力に、他を0:出力設定
//内蔵発振器 8MHz使用に設定
OSCCON.IRCF2=1;
OSCCON.IRCF1=1;
OSCCON.IRCF0=1;
ANSEL = 0b00000000; //GP0〜5をデジタル利用に設定
OPTION_REG.NOT_GPPU = 0; //内部プルアップ利用に設定
WPU = 0b00000100; //GP2を内部プルアップ
GPIO = 0b00000000; //GPIOの中身をきれいにする
CMCON0 = 0b00000111; //コンパレータを使わない
do {
if(Button(&GPIO, 2, 1, 0)) { //スイッチONの場合
GPIO.F4 = 1; //LED ON
} else { //スイッチOFFの場合
GPIO.F4 = 0; //LED OFF
}
}while(1);
}

573:774ワット発電中さん
16/06/28 23:03:58.47 dUx3jph/.net
訂正:GP4の出力

574:774ワット発電中さん
16/06/28 23:16:02.29 dUx3jph/.net
545ですが、出力先をGP0,GP1にしたら動きました。
GP4は何等かの理由でずっと出力が出続けるようです。
これだけ理由分からなかったので、どなたか解説お願いします・・・

575:774ワット発電中さん
16/06/28 23:29:27.61 oNGl4gGp.net
CLKOUTになってんじゃないの

576:774ワット発電中さん
16/06/29 00:24:05.79 arpwhsig.net
>>545
全部プルアップに指定してると回路にスイッチ繋ぐよってはずっとオンに認識されてるとか。

577:774ワット発電中さん
16/06/29 04:41:45.16 UjicKbUi.net
PIC24は3.3V駆動の場合でもデジタルIO専用ピンについては入力5.5VまでOKらしいんですが
どのピンがデジタルIO専用なのかはどこを見れば分かるんでしょうか?
もしかして「5.5V tolera


578:nt input pins」と書かれたピンがそれに該当するんでしょうか? もしそうならたった6本しかない(USB対応品だとD+とD-で2本取られるので実に4本だけ!) 事になるんですが・・・



579:774ワット発電中さん
16/06/29 06:43:18.80 nlXLj5vy.net
6本もあれば十分

580:774ワット発電中さん
16/06/29 06:48:05.43 N9lFenMG.net
周辺回路を見直す事すらしたくありません、って輩ですか?

581:774ワット発電中さん
16/06/29 11:12:12.85 UjicKbUi.net
頭の悪いコメは無視します
>>551
PICに繋いでるモジュールがバス接続しかないので8本欲しかったのです

582:774ワット発電中さん
16/06/29 12:26:47.08 AAcmM8qR.net
後出しじゃんけん乙。

583:774ワット発電中さん
16/06/29 12:45:41.62 /j1nOVMi.net
>554
???
>554=552かな

584:774ワット発電中さん
16/06/29 13:07:37.11 H9QRfMYL.net
>>553
>「5.5V tolerant input pins」と書かれたピン
それが正解です。
しかし、デジタル信号なので、閾値さえ跨いでいれば良いので、
「5.5V tolerant input pins」と書かれたピンでなくても、抵抗を直列に入れれば
使えます。
抵抗が、5Vと3.3Vの間を「バネ」のような役目をして、調停してくれます。
周辺モジュール(0V-5V信号)-------抵抗------PICピン(非5Vトレーラント)
という感じです。
抵抗値は、周辺モジュールとのやりとりスピードに依りますが、
1k〜10kΩを付ければ、まず動きます。

585:774ワット発電中さん
16/06/29 13:12:53.28 BEvcjuFL.net
それじゃ分圧になってないから定格超えちゃうよ

586:774ワット発電中さん
16/06/29 18:15:58.06 H9QRfMYL.net
>>557
入力電流を期待するのは良くないでしょうか?

587:774ワット発電中さん
16/06/29 19:03:44.85 YMHckKRx.net
期待すべきは保護ダイオードだろ

588:774ワット発電中さん
16/06/29 19:28:52.41 EGMHmAVs.net
>>559
ちょっと前に話題になりました。
・保護ダイオードを通ると、端子電圧はVCC+VFになる。これは絶対最大定格を超える。
・一方で、端子入力電流が絶対最大定格に描かれている。流れるためには、保護ダイオードに電流が流れる必要がある。
・なぜ電圧と電流の両方が書かれているのだ。
・絶対最大定格は一瞬たりとも超えてはいけないのだ、いけないのだ。
厳格に考える人には解決が難しいですね。

589:774ワット発電中さん
16/06/29 19:56:22.23 H9QRfMYL.net
>>559
そもそも入力電流の経路はダイオードなんですよ。

590:774ワット発電中さん
16/06/29 20:58:31.24 8r74jGPo.net
>560
そもそも入力端子保護用に入っているクランプダイオードはあてにしていい物なのか?
実質的には問題無いだろうけど、メーカーが保障した使い方では無いよね。

591:774ワット発電中さん
16/06/29 21:54:43.54 ts51i3MH.net
XC8でインランアセンブラを各方法は
asm("xxxxxxxxx");
以外にもあるらしいのですが、他にどんな記述方法があるんでしょうか?
一行一行 asm() で括るのが面倒なのでC18みたいに複数行まとめて指定する
方法はないでしょうか?

592:774ワット発電中さん
16/06/29 22:07:09.86 mUJOoHNA.net
#asm
#endasm

593:774ワット発電中さん
16/06/29 23:07:58.39 EGMHmAVs.net
>>562
メーカーによってはそういう使い方ができる、というガイドをしています。
URLリンク(ww1.microchip.com)
TIP#10 5V→3.3V With Diode Clamp
大きい電流を流すとラッチアップの恐れがあるから抵抗で抑えるように、と。

594:774ワット発電中さん
16/06/29 23:34:56.02 EGMHmAVs.net
>>565に追記。
URLリンク(rohmfs.rohm.com)
URLリンク(www.analog.com)


595:AD8624_jp.pdf ttp://japan.xilinx.com/support/answers/19146.html ttps://www.altera.co.jp/ja_JP/pdfs/literature/hb/max2/max2_mii51008_j.pdf ttp://www.nxp.com/files/microcontrollers/doc/app_note/AN2433.pdf (スピードの観点から分圧することを例示しています) 探せば他にも出てくると思います。



596:774ワット発電中さん
16/06/30 02:04:07.47 jDAx9T9T.net
5Vトレントの方法調べててバススイッチとかいう神の様な素晴らしいデヴァイスを見つけた。
もうバススイッチだけでいいんじゃないかな

597:774ワット発電中さん
16/06/30 02:38:24.95 5rz3sGdV.net
pic24fj64gb004でlcd表示について
starterキットのデモからlcd.cとlcd.hを移植中です
Delayを使用せずに初期化する方法ないですか?

598:774ワット発電中さん
16/06/30 06:03:24.24 iPN5JyTg.net
>>567
MYリレー最強

599:774ワット発電中さん
16/06/30 06:36:45.96 kFMCipXO.net
>>569
タイマー割り込みを使う。
Delayではダメな理由がわからん

600:774ワット発電中さん
16/06/30 06:59:17.83 fDbut3ov.net
>>567
それはそれで不都合もあります。用途次第ですね。

601:774ワット発電中さん
16/06/30 10:45:00.68 VUf1yJbN.net
>>568
初期化なんだからDelayで行なうのが一番
(それ以降使用しないから)

602:774ワット発電中さん
16/06/30 12:08:07.53 jDAx9T9T.net
>>571
吸いません、参考までにどのような場合に不都合がありますでしょうか?
あんまり高速な信号は通せないってのはなんとなく感じますが

603:774ワット発電中さん
16/06/30 12:24:01.69 fDbut3ov.net
>>573
それと関係している部分もありますが、外部にプルアップが必要なものもあります。
見つけられたという神のようなバススイッチの型式がわかると具体的な議論もできますね。
あと、タイプミスかもしれませんが、トレント(torrent?) ではなくて トレラント(tolerant 耐性)です。

604:774ワット発電中さん
16/06/30 12:32:47.67 jDAx9T9T.net
インターネットしててこれはまさに神のデヴァイスだ!と思ったのはテキサスのSN74CB3Tです
双方向で方向を全く考えなくて済むし、PICと外部回路の間に置くとして外部回路側は
3.3Vでも5Vでもどっちでも(大抵は)いけるし、難点があるとするなら入手ややや困難なこと
くらいかなぁと
PIC(Vcc3.3V)→バススイッチ(Vcc3.3V)―*→外部回路(Vcc5V)の場合に信号振幅が3.3Vまでしか
無いので、それじゃ足りない場合だけ*の部分をプルアップしてやる必要がありそうですが
通常は無くても大丈夫かなぁと

605:774ワット発電中さん
16/06/30 13:16:24.21 FoJbfc/i.net
単方向3.3V<->5V変換を高速低消費電流で実現したいので
ワンゲートICのTC7SH125とTC7SET125だけで済ませてる

606:774ワット発電中さん
16/06/30 19:48:57.03 5h/xuE8j.net
>>553
コメ…?

607:774ワット発電中さん
16/06/30 21:53:32.54 fDbut3ov.net
>>575
あー、なんかいいかも。
俺の知ってる東芝のは、3.3V-1Vあたりから上でドライブ能力がぐっと落ちました。
これもそうかもしれんけれど、一回評価してみます。
不都合があります、とか書きましたが、よく調べていなかったかな。すみません。そしてありがとう。

608:774ワット発電中さん
16/06/30 23:00:57.82 AGy34ahj.net
>>572
そうですね。ありがとうございます。
秋月の
URLリンク(akizukidenshi.com)
3.3v4行lcdは、3.3vだと表示濃度が薄いですね
5vだと余裕がある感じです
手持ちの3.3v2行はクッキリなんですが
i2cでポートを節約したいと思っても値段が高かったり
チャージポンプで5vlcdを使うのが良いのかな?

609:774ワット発電中さん
16/06/30 23:22:06.70 AGy34ahj.net
>>576
74vhc125をリールで買おうかと悩んだ時があった
でも、レベルシフト無くても大丈夫な事が多く
秋月で買ったモジュールは袋に入ったままです

610:774ワット発電中さん
16/06/30 23:31:06.28 VRbFSc40.net
12F683で、GP0,GP1にLEDを取り付け、
GP2に押しボタンスイッチを取り付けます。
押しボタンを押す事で、以下点灯パターンを
0→1→2→3→0→1→・・・・
と切り替えるプログラムをつくりたいと考えていますが、
上手く行きません。どのあたりに問題があるか
御教授いただけますでしょうか?
(何か根本的に間違えていそうな気がしますが・・・)
パターン0:GP0が点滅 GP1が消灯
パターン1:GP0が消灯 GP1が点灯
パターン2:GP0が点滅 GP1が点灯
パターン3:GP0,GP1どちらも消灯

611:581
16/06/30 23:31:41.90 VRbFSc40.net
以下、プログラムです
void main() {
unsigned short int n;
TRISIO = 0b00000100;//GP2:Input Others:Output
OSCCON.IRCF2=1;
OSCCON.IRCF1=1;
OSCCON.IRCF0=1;
ANSEL = 0b00000000;//GP0~GP5:0(digital use)
OPTION_REG.NOT_GPPU = 0;//Internal pull up use:0(on)
WPU = 0b00000100; //GP2:internal pull up
GPIO = 0b00000000; // First, clean GPIO signal
CMCON0 = 0b00000111; //Do not use comparater
//LED initial state setting
GPIO.F0 = 0;//LED:OFF
GPIO.F1 = 0;//LED:OFF
n = 0;
do {
if(Button(&GPIO, 2, 1, 1)){
n++;
}
if(n==0)
{
GPIO.F0 =1;
Delay_MS(500);
GPIO.F0 =0;
Delay_MS(500);
}
if(n==1)
{
GPIO.F0 =0;
GPIO.F1 =1;
}
if(n==2)
{
GPIO.F0 =1;
Delay_MS(500);
GPIO.F0 =0;
Delay_MS(500);
}
if(n==3)
{
GPIO.F0 =0;
GPIO.F1 =0;
Delay_MS(500);
}
if(n==4)
{
n=0;
}
}while(1);
}

612:774ワット発電中さん
16/06/30 23:53:38.09 IZYf/Vl0.net
>>581
使っている言語はmikro Cですか?
開発ツールやそのバージョンも示して下さいね。
あと「うまく動かない」だけではなくて、具体的にどういう不具合なのかを分かるように伝えてくれますか?
ソースを見る限りでは、Button関数を毎ループ読んでいるので、押している間ずっと、
高速でn++されるように思いますが…

613:581
16/07/01 00:09:51.95 7ntcvQ5z.net
>>583
失礼致しました。
環境はMicroCの6.6.3です。
MicroCで1つのプッシュスイッチで数パターンの点灯パターンを切り替えるような作例でも見つかれば良かったのですが、中々見つからず適当に作ってみたところ、どうやらご指摘の通りの動作をしているようです・・・

614:774ワット発電中さん
16/07/01 00:38:41.42 vofYpafo.net
>>581
スイッチは2ピンにしてINT割り込み使えばいい。
そして割り込み関数のなかでn++すれば良い。

615:774ワット発電中さん
16/07/01 00:47:14.08 lD6SUhQ0.net
INT0割り込みが発生した場合の割り込み処理へのジャンプってラグタイムなしで
即座にジャンプしてくれるんでしょうか?
命令1(4) ←割り込みルーチンの先頭
命令2(4)
命令3(4)

命令a(4)
命令b(4) ←この命令を実行してる最中にINT0の状態が変化
命令c(4)

このような場合、
命令a
命令b
命令1
命令2
こんな感じで命令bのフェッチ&実行に続けて即座に命令1のフェッチ&実行が
行われるんでしょうか?それとも命令bと命令1の間にはタイムラグが
生じるんでしょうか?

616:774ワット発電中さん
16/07/01 03:35:13.23 BsgfxE7q.net
>586
PICの種類が分からないけどmidrangeのPICなら命令bと命令1の間で2サイクル分のラグがあるね
URLリンク(i.imgur.com)

617:774ワット発電中さん
16/07/01 08:09:38.11 m81c1Iw2.net
似たような話で揚げ足取りになるけど、完全に同時に複数ピンのデータ取れますかって念を押してくる人いるよね…。

618:774ワット発電中さん
16/07/01 09:21:31.48 lD6SUhQ0.net
>>587
ありgとうございます
そのものずばりな回答で、まさに


619:探していた回答はこれでした ここから考えるに、すでにFetch済みの次命令は実行されて、かつ割り込みルーチンの 最初の命令をFetchするためにダミーで1TCY必要って感じですかね



620:774ワット発電中さん
16/07/01 15:58:43.37 x7a0IvmT.net
PIC専用のスレは消滅なのだろうか
あっちが元祖なのに

621:774ワット発電中さん
16/07/01 16:02:22.65 x7a0IvmT.net
あれ勘違い
ちゃんとあったわ

622:581
16/07/01 20:12:17.09 7ntcvQ5z.net
>>585
581ですが、書き込み通りやったら出来ました、ありがとうございました。

623:774ワット発電中さん
16/07/02 01:04:37.15 7zeeH9UT.net
>>566のロームので理解した気がする
電圧の定格は保護ダイオードを働かせない限界で、
電流の定格は保護ダイオードが壊れない限界なんだな

624:774ワット発電中さん
16/07/02 02:49:03.56 dcnT50H+.net
でも、電流の限界に行くまでに、電圧の限界を超えると思いますが、
その点については、どのように理解されましたか?

625:774ワット発電中さん
16/07/02 04:17:52.73 xRbLE3n/.net
メーカーによって解釈は違うね。
どちらか先に達した方を取るメーカーと保護ダイオードに流れる電流が
超えなければいいというメーカーがある。
マイクロチップは後者ということでしょう。

626:774ワット発電中さん
16/07/02 06:50:40.40 qLIWLpKS.net
>>594
絶対最大定格はわずかでも、一瞬たりとも超えてはいけない、という文面を四角四面に解釈していると先に進めないですね。
>>566であげたガイドを受け入れるならば、少なく十クランプダイオードが入っている入力端子の電圧の絶対最大定格については、
「ソース抵抗0Ωの電圧源で電圧をかけた場合に許容される電圧範囲」
が妥当だと思います。
たとえば、VCC+0.3V という規定になっている場合、VCCが5Vであるとすると、
「たとえ100A出力可能な電源装置であっても、5.3Vならかけても大丈夫
でも、それを超えるとクランプダイオードに過大な電流が流れて壊れるかもよ」
ということで良いでしょうね。
シリコンダイオードでクランプダイオードが作られているとして、VFは0.7Vぐらいですが、実際にはもう少し低い電圧から
流れ始めますし、温度が高ければ電圧は下がります。それでも、VCC+0.3V までなら、クランプダイオードに電流は流れないということでしょう。

>>595で書かれているように、メーカーによっては、この使い方を積極的に開示していないところもあります。
あと、そもそも、VCC+0.3Vを超えたらICの中の何が壊れるのか、ですね。

627:774ワット発電中さん
16/07/02 09:32:43.55 mF3+ySs/.net
初めてのPICの人はオームの法則とか知らないのかな

628:774ワット発電中さん
16/07/02 09:47:38.93 sVgN7Cm5.net
データシートも読まない&勝手な解釈がデフォ
>「ソース抵抗0Ωの電圧源で電圧をかけた場合に許容される電圧範囲」
>が妥当だと思います。
とか、馬鹿の極みとしか言いようが無い。

629:774ワット発電中さん
16/07/02 10:40:14.98 dcnT50H+.net
>>598
意見を言えよ、意見を。

630:774ワット発電中さん
16/07/02 10:45:05.32 qLIWLpKS.net
>>598
おちついて。
汚い言葉で俺を非難したところで誰も得をしません。
あなた自身が間違っていたときに引っ込みがつかなくなってしまいますよ。
とりあえず>>566のリンク先のクランプダイオードにかかわる部分の解釈をしていただけませんか。
俺が書いていることの意味がわからなくて、丁寧に議論したいということなら
そういうふうに言ってもらえる方が良いと思います。
最終的には回路をどんなふうに組むのかは、設計者や依頼者のポリシーに依存しますし、
いついかなる場合もクランプダイオードに電流を流すようなことはしてはいけない、と考える人がいても良いですし、
少なくともメーカーがOKって言ってるなら使おうじゃないか、と考える人いても良いと思います。
中には、それは大丈夫なものである、と考える人もいるかもしれませんね。
半導体メーカーの技術サポートに本件のような質問をしたことがあります。




次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

869日前に更新/309 KB
担当:undef