初めてのPIC 0x04 [転載禁止]©2ch.net at DENKI
[2ch|▼Menu]
108:774ワット発電中さん
15/01/12 17:23:39.08 1r5WoEa6
最近までハードウェアpwm機能を使うためにtimer2を使ってました
これを使うと8MHzのpicでpwm周期≒7.8KHz、分解能10bitにすることが出来ますが、
ソフトウェアでpwmを作ろうと考えたらpwm周期と分解能って最大でどれくらいまで
出来ますか?
調べると割り込み処理を使ってpwmを生成しているものが多いんですが、
割り込みを使用せずに正確なpwmの波を作ることは可能でしょうか?

109:774ワット発電中さん
15/01/12 18:02:35.30 xTEIqL3W
>>106
PWMだけを出すなら可能。

110:774ワット発電中さん
15/01/12 18:10:37.69 9fdQYxTB
>>106
データシート読め
URLリンク(ww1.microchip.com)
p107から読んでわからないならやめちまえ

111:774ワット発電中さん
15/01/12 19:02:21.28 9fdQYxTB
おっと質問を読み間違っていたようだ。書くのやめちまう。

112:774ワット発電中さん
15/01/12 20:14:30.61 W6TdFmFe
見ていてはずかしい

113:774ワット発電中さん
15/01/12 21:27:35.55 AGmDiXVo
>>106
そこまで分かってるなら自分で答を出せると思うけど
固定で出すなら10bitで1.953kHzだね。
可変で何らかの制御や通信が入るとなんとも言えない。

114:774ワット発電中さん
15/01/13 11:44:08.56 t4Ch5G1n
>>108
> データシート読め
> p107から読んでわからないならやめちまえ


言葉使いから勉強し直しだ。直す気がないなら回答するな。

115:774ワット発電中さん
15/01/13 12:06:07.30 eOaye8Lx
回答したら負けかなと思う今日この頃、いかがお過ごしでしょうか

116:774ワット発電中さん
15/01/13 12:14:11.87 Nj8jukwC
>>106
>pwm周期と分解能って最大でどれくらいまで出来ますか?

周期なんていくらでも長く出来るだろ?∞

117:774ワット発電中さん
15/01/14 01:00:39.06 RdoueHUV
>>106
>最大
周期を長くすればいくらでも分解能は上げられるから、質問に意味が無い。
同じ周波数で比較するなら、最大でハードウェアの1/4まで理論的には可能。
でもそれで0%付近と100%付近まで可変できるプログラムを書くのはめちゃくちゃ大変。
>割り込みを使用せずに
他の作業が必ず決められた時間内に終わるなら可能。

ところでなんでハードウェアや割り込みを使いたがらないのか


118:mりたい。



119:774ワット発電中さん
15/01/14 13:24:35.67 OvRDEqvd
88です。

秋月から外部リセットICがとどきましたので、DIP化したうえでデータシートのアプリケーションに従い
以前の暴走が頻発した電源環境のままで試してみましたら、嘘のようにトラブルは
なくなりました。

みなさま、かさねてありがとうございました。とりわけリセットICの存在をお教え
くださった方に感謝です。

120:774ワット発電中さん
15/01/14 21:31:04.17 DtvuaNUA
PICに別売のマイコンキットを繋ぎたいんです
それで、PIC側はRB0-RB7のうち2本を出力、6本を入力として使いますこの8本
をマイコンキットのバスに繋ぎます
各線は10KΩの抵抗でpull-upしています(8本全部)

ある日(数日前のことです)、たまたま実験してたときにマイコンキットのVccを
どこにも繋がずに宙ぶらりんになってたことがあるのですが、何故かそれでも
そのマイコンキットは動いていたんです!つまりGNDと8本のRB0:7しか繋がって
いないのに、何故かそれでもそのマイコンキットは動いていたんです!

続きます

121:774ワット発電中さん
15/01/14 21:33:46.86 DtvuaNUA
普通に(常識的に)考えて、RB0:7から電力が供給されたとしか考えられない
のですが、いろいろ調べると回り込みという現象が起きているのでは?と
推測しました

そこで質問なのですが
・PICのRB0:1は出力、RB2:7は入力として設定し、RB0:7を別の回路に繋ぐ
・RB0:7は10KΩの抵抗でpull-upされている
この条件で、PIC側からマイコンボードに電力を供給しないようにするには
どうすればいいんでしょうか!

122:774ワット発電中さん
15/01/14 22:10:49.77 jzlxXxCN
>>118
PIC側だけで対処するとしたら
信号のスピードがそれほど速くないならRB0,1には0を書いておきTRISB0,1
で制御してオープンドレインとして使う。

マイコンの電源が供給されていてPICの電源がない場合は考慮しなくて
いいのかな?
根本的にはそれぞれ入力側にトレラント機能を持った74VHC/74VHCTみたいな
バッファを入れる。

123:774ワット発電中さん
15/01/15 02:14:15.33 wamU9AQq
教えてください。
picでI2C接続のデジタルポテンショメータを使っています。
今は2回路入りでステレオで使用していますので問題ないのですが、
もしこのICを同時に複数のスイープをしたい時はどうしたらいいのでしょうか?
やはりI2Cはアドレス指定が必要なので一度に1デバイスしか扱えないのでしょうか?
アドレスを敢えて同じにしたデバイスを同じチェーンに繋げばむりやりでも同時操作ができますでしょうか?

124:774ワット発電中さん
15/01/15 02:23:58.81 pGquFntR
少しおうかがいしますが、
入力に設定したピンにつないだ1つの押しボタンを押したとき、
一つの出力は押しボタンを押すたびトグル動作で0と1を繰り返し
もう一つの出力は1秒だけ1になりその後0に戻す
という動作は割り込みをつかうのでしょうか。

125:774ワット発電中さん
15/01/15 02:25:51.49 zZ2sdQLa
>>119
118じゃないけど
>RB0,1には0を書いておきTRISB0,1で制御してオープンドレインとして使う。
この発想はなかった。これってごく一般的なテクニックなの?

126:774ワット発電中さん
15/01/15 03:00:27.99 enDSXmpX
>>122
AN574 Use of the SSP Module in the IIC Multi-Master Environment
で使われてる一般的なテクニックです。

127:774ワット発電中さん
15/01/15 06:05:27.71 zZ2sdQLa
>>123
もう一つ質問させて
個人様ページからの引用でちょっと申し訳ないけど
URLリンク(jisaku.155cm.com)
PICの出力ポートがこのような構造になってるなら、HIを出力してる時にポート
を直接GNDに落とすのはとても危険、って認識でいいんでしょうか?
それともFETのG-S間抵抗があるから特に問題なし?

128:774ワット発電中さん
15/01/15 09:09:07.14 m7z+E1Zh
>>119
ありがとうございます!
LATBbits.LATB1 = 1
としているところを単純に
TRISBbits.RB1 = 1
に変えるだけで問題なく動き、かつポートからの電力供給もなくなりました!
(無論出力ポートが外部でpull-upされている事が前提ではありますが)


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

3414日前に更新/39 KB
担当:undef