初めてのPIC 0x09 [無断転載禁止]©2ch.net
レス数が950を超えています。1000を超えると書き込みができなくなります。
.
_ _ PICをさわるのは今日が初めて、という超初心者のためのスレです。
(O>――<O) PIC選び、PICを使った回路は、誰でも最初は不安なものです。
/ (・) (・) ヽ 恥ずかしがらずに何でも聞いてください。速攻で教えてくれますよ。
○ /▼\ ○ 質問のしかたは、初心者質問スレの発言1を見てくださいね。
|(ヽ二フ ) |
/  ̄ ̄ ̄ ヽ
f ヽ / | PIC関係のスレは、レベルに合わせて以下のスレもありますので、活用しましょう。
ヽ \ / ノ ・PIC専用のスレ
| \_ )(_/ ! 本家本元のPICスレです。口の悪い人もいますが、楽しくやってるみたい。
| | ここの話がわかるようになれば、あなたはもう一人前のPICerです。
| | ・マイコンソフト 悩み事相談室
| | ̄ ̄| | マイコンソフトやツールの質問は、こちらでどうぞ。的確な回答があります。
(_ノ ヽ_)
質問する時のコツ
・性格の悪い回答者はスルーしよう(相手すると逆効果)
・素人玄人などと 上から目線の回答者は、無視してください。相手してはいけません。
・そこそこ良い回答が出るまでしばらく再発言しないのもあり(良回答は後に出やすい)
・回答者のアドバイスで後日解決したら、結果報告しよう(とても喜ばれる)
・回答者は、僕たち初心者に優しくしてください。あなたも通ってきた道のはずです。
さ、質問どうぞ〜っ
0x08 2016/04/30〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1461994030/
0x07 2016/02/05〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1454648249/
0x06 2015/07/18〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1437151298/
0x05 2015/04/07〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1428391368
0x04 2015/01/02〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1420205108
0x03 2014/09/22〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1411314715
0x02 2014/05/20〜 ttp://wc2014.2ch.net/test/read.cgi/denki/1400522979
0x01 2013/11/17〜 ttp://ai.2ch.net/test/read.cgi/denki/1384626558 同一ポートならタイムラグがあっても n秒オーダーだろうし、まず心配はいらない。
どうしても同一ポートから取れない場合でも、それがリレーの駆動やダイナミック点灯のLEDの駆動のように、
駆動がシンクかソースの一方通行であるなら、出力ポートにしたままH,Lを切り替えるのではなくて、
レベルは固定したまま、入出力を切り替えたらぶつからないよ。
別のポートを束ねてソース出力を作る場合
初期化
束ねたポートのそれぞれを入力に設定する。
束ねたポートの出力ラッチをHにする。
駆動出力
束ねたポートのそれぞれを順次、出力にする。
駆動停止
束ねたポートのそれぞれを順次、入力にする。
別々のポートだと、駆動と停止が一気に変わるわけではないので、それで問題にならないことも前提ですが。 LCDのDATAポート(4ビット)にスイッチぶらさげて、入力にも使ってしてる
のをたまにみるが、あれはどういう論理になってるの?
LCDへのデータ出力を途中で止めて、その間、プルアップ+入力にして、前回
のポート状態と比較して、違いがあれば入力があったと認識させてるのかな?
ま、LCD側ではデータをラッチして表示したまんま、かつそのPICのポート入力
の間は、LCD側入力Enableをローにしてんだろうから、問題ないのだろうけど。
ただスイッチを押してGNDに落ちている間、データ出力は止めるしかないって
こと? もし、そうでなければLCD側では正しいデータ受け取れないと思うんだが。
なんかいいCの雛形ないかな。 複数の機能を同一端子で共用はよくあること
デバッグ機能とかでは特に
LCDならキー入力があったら再度書き込めば良いから簡単な方では? 直接グランドに落とさずにポートに引き込んでおき、普段はポートは入力にしておく。キーを読むときだけポートからLを出力する。複数のキーが押されることがあれば回り込み防止にキーと直列にダイオードを入れておく。ってとこかな。 内蔵クロックで10MHzで動く8bit PICってありませんか?
なんか4の倍数とか8の倍数とかばかりで10MHzで動いてくれるものが見つかりません 12F/16Fシリーズをざっと流して見てみたけど内蔵発振周波数は
31k/500k/16MHzの分周設定しかないね
RS-232C通信用で厳密なデータレート設定が必要なときは
秋月の9.22MHzセラロックを外付けにしてる 8bitPICマイコンのオーバークロック耐性ってどのくらいあるんだろ?
液体窒素冷却で100MHz動作とかできるのか挑戦してみたいな >>862
ありがとうございます
やっぱり4/8/16の倍数くらいしかないんですね PICは液体窒素入れなくても40MHz以上でも動作するようです
でもdsPIC使えば高速に動くし・・・・
単に無意味な行為だね。。 PIC16F84A用のHEXファイルしか残ってなくてそれを5倍の速さで動かしたいとか
いう場合にクロックアップは有用。無意味な行為って訳でもない それを必要とする人が一億人に一人でもその人にとっては有用なわけだが、
そういうのだったら、世間的には無意味って言っても間違いではないかもな。
有無みたいな1ビット判定は立場で揺らぐよ。 バイナリしかなくて5倍で動かすってどんなプログラムなんだろ。
Lチカなら5倍になってしまうしUARTやI2Cなどの周辺も5倍速になって
使い物にならないだろ。 オーバークロックの目的がわからないくせに無意味とか断言しちゃうアホがいるようだな HEXしか残ってないとか
そんな化石は電圧5倍でOK ソースが残ってるかどうかと化石かどうかはあまり関係ない >>872
罵倒は建設的じゃないよ。
アホなんて言うぐらいなら、あなたが考えるところの「『PICマイコンの液体窒素冷却によるオーバークロック』の意味のある目的」を書けば良いのに。 液体窒素を使う時点で趣味性MAXなんだから好きにやったらいい >>871
たとえばLEDのLキラが5秒感覚で作られてて、これを1秒感覚にしたいと思った時に
プログラムのことが全く分からない人でもクロック元を5倍速くすればLキラの
感覚も5倍早くなるなって言うのは分かるわけで
大切なのはそういうことをやることがあるか?否か?ではなく、そういう要求に
大しても幅広く対応可能か?否か?という幅広さだと思う それならシリアル通信で動作タイミングを弄れるようにしておくとかでいいじゃない。
それか外部クロックに従うとか。
逆に1/5にしたいとか言われたらどうするつもりなの? その程度の要求に答えることが、
果たして「幅広い対応」なのか?否か?
ただの「その場しのぎ」なのか?否か? >>878
お馬鹿さんは口閉じてようね
>PIC16F84A用のHEXファイルしか残ってなくてそれを5倍の速さで動かしたいとか >>877
オーバークロック趣味の人はそういう仮定をもとに楽しんでるのか。
そういう要求があったら、たいていは、
「速いCPU使って作り直す方が良いすっよ」
なのだろう。
>>882が言うようにFPGAも良いだろね。 >>857
たとえばこんなの。
http://www.ne.jp/asahi/ham/js1rsv/GPS/NavGen4.PDF
GPSデコーダーらしいが。
LCDポート直にGNDじゃなくて、1k通して落としてた。
これは一例だけど、ほかにも何件も同じようなのみたな。 >>884
スイッチに付いている1kΩがポイントですね。
たぶん…
LCDをドライブするときは、ポートBから普通にドライブするので、
スイッチが押されていても、開放されていても、1kΩがあるおかげで、
LCDの端子はH/Lに駆動できる。
スイッチを見るときは、RB4〜6を入力にして、内部プルアップ付きに設定する。
内部プルアップの抵抗値は1kΩに比べると十分高いので、
RB4〜6を読み出すと、スイッチがONならL、OFFならHになる。 >>882
PIC16F84A用のHEXを高速に実行出来るマイコンをFPGAで作るの?
それは大変そうだな >>883
動作内容がわかっている
簡単に実装可能
定数倍の実行速度でなくてもいい
って言う条件付きならそれでいいだろうけど
そういう条件なのか? >>883
頭悪い奴にマジレスしないほうがいいぞ。 >>868 は単なる例じゃんか
じゃあ >>887 のどれか一個でも成り立たないって条件を >>868 に加えたらいい オーバークロックの目的って言ったら、普通はそんなことじゃないだろうけど HEXしかのこっていなくてもIDEに読み込めば
アセンブラソース表示できるでしょ。
それをほかのチップで使用すればいくらでもできるよ
実際にHEXからCソース起こしていろいろなチップで
動かした経験あるよ。
速度的にもそれほど効率が落ちることはなかったけどな〜〜 >>886
ARM とかでもFPGA で作れる何なんだから、PIC16位余裕だろ。 >>891 >>892
物理的に可能とか、誰かにその能力があるとかじゃなくて、
>>863 や >>688 が出来ないと意味がないわけで >>893
確かにね。
FPGAで作るような堅実な話と比較にはならないな。
>出来ないと意味がないわけで
ほんとそれ。
PICを液体窒素で冷やしてオーバークロックは出来てもいないわけで、
仮に出来たとしても実用面からもFPGAと比較にならないだろね。
それより、なぜ、「オーバークロックの目的」をボカすの?
>普通はそんなことじゃないだろうけど
ってことなんだが、普通の目的って書けないものなん? >>897
書けないものなん?
わかったつもりや、意図が共有できているという思い込みなんて、あやふやなものですよ。 >>899
「無意味」だと誰が言ったのかな?
で、あなたが思うところの目的って何なのかな。書けない理由でもあるの?
だったら最初から何も言わなければいいのに。 「液体窒素」なんて書いてるんだから、目的はオーバークロックそのもの、単なる自己満足と考えるのが普通
それに対してとんちんかんな書き込みがあまりに多い
このスレにいるほとんどの電子工作の目的と同じ、単なる自己満足 失礼。途中で書き込んだ。
>>902
直近において目的を問うているのが俺。
>目的を知らないのに「無意味」か
という話を
目的を問うている俺にぶつけるなら、俺が「無意味」と言っていないといけない。流れもクソもありませんよ。
>>903
その文字数で書けることぐらいなら、最初からあなたの考えとして書けば良いのではないかな?
でもいったん「普通」と言ってしまったものだから、自分の考えを書くことが怖くなったんじゃないですかね。 趣味に意味が有るのか?無いのか?のケチをつける
ケチつけるのが趣味の場合
そのケチに意味が有るのか?無いのか?
答
ケチつけている人にのみ意味がある 液体窒素とかオーバークロックとかの話は、本スレでお願いします。
ここは僕たちのような、右も左もわからない初心者が質問するところです。
宜しくお願いします。
本スレへのリンク
↓
http://rio2016.2ch.net/test/read.cgi/denki/1470978281/l50 電気初心者です。
PICマイコンについて質問があります。
1. PICの16F84とかのやつは、ハーバードアーキテクチュアという構造らしいです。
なぜ、ハーバードアーキテクチャなのでしょうか?
何が良くて、それを採用したのか、教えて下さい。
もし良いのならほかりマイコンもハーバードを使うと思うのですが、
あまり聞きません。
2つ目です。
PICの16Fとかは、水晶発振子の1/4の周波数で動いているらしいですが、
なぜ1/4で動かすのでしょうか?
他のマイコンは、水晶発振周波数のままで動かして、いると思うのですが。
あるいは、PLLで2倍して1/2してdutyを50にすれば良いと思うのです。
以上です。宜しくお願いします。 >>911
小規模組み込み制御CPUは
ハーバードアーキテクチャばっかり
理由は安価に製造出来るからや
4クロック1命令サイクルは仕様だから
仕様に文句言っても仕方無いわ
PLLで2倍して1/2してduty50すれば、、
?
さっぱりわからんわ
4倍の周波数入れれば速くなるのに何でやらないのか!
ってことなんか?
最高入力周波数仕様が20MHzだからやで
丁度冷却ネタで盛り上がってるから
80MHz突っ込んで報告して欲しいで エスパアーしてみるけど
PICって1命令4クロックかかるけどそれが「フェッチ、デコード、実行、ライト」で
4クロックかかってるんだとしても、それはAVRも同じ訳で
でもAVRは1命令1クロックで動いてるよね?AVRだって「フェッチ、デコード、実行、ライト」の
サイクルが必要な点は変わらないのになんで?
考えられるのは
・AVRはパイプライン構造になってるので見かけ上1命令1クロックになってるだけ
・内部でx4倍して動いてる
のどっちかだけど 昔のMIPSは1クロック=1命令を謳ってたけど、位相の違うクロックを複数入れる必要があって
めんどくさかった。
今のPIC32なんて単一クロックどころか内蔵オシレータでさえ動くバカチョンマイコンなんだから
許してやれよ。 AVRは大半の命令が2クロックで処理されていて、2段パイプライン
で処理され見かけは1命令1クロックで処理されているように
なっています。 PICはWとメモリ間の演算結果をメモリに書き戻すから1クロックで処理するのはムリ
AVRもメモリ間演算やると4命令7クロックでPICの2命令8クロックと大差ない detail.chiebukuro.yahoo.co.jp/qa/question.php?request_type=3&request_nn=tantaro2585
ゲームパソコン誰かもらってくれませんか? 一命令数クロックかかるのは、回路をケチって安くするため
PCだって一命令で何十クロックかかる命令もあったりする AVRは命令フェッチと命令実行で各1サイクル、パイプライン処理で見かけ上は命令を1サイクルで実行
命令コード16ビットの固定語長なので命令フェッチも1サイクル
AVRtiny2313のクロックと命令フェッチ・実行のタイミング関係図
http://i.imgur.com/kgjvse2.jpg >>920
それを、PICと並べて比べてくれんと…。 >>911
4相クロックにした方が、ゲート規模減らせるから。 4クロックだろうとLED点滅させるだけなんだから別にいいでしょ PICやAVRどころかCPLDのライターなんかでも事足りてるしなぁ…。
とは言え、逆にPICのICEにFPGA乗ってるのもあるけど…。 PIC16F18313なるDIP8を使って遊ぼうと思っていますが、
EEPROMはデータシートで
11.3.2 FSR WRITE
Writing/erasing the NVM through the FSR registers (ex.
MOVWI instruction) is not supported in the
PIC16(L)F18313/18323 devices.
とありますが、どうやってR/Wすれば良いのでしょうか?
処理系はXC8のv1.38です。 同じページの左側に書いてあるでしょ
>EEPROM can be read and/or written through:
>
>• FSR/INDF indirect access (Section 11.3 FSR and INDF Access)
>• NVMREG access (Section 11.4 NVMREG Access)
旧来のEECONやEEADRを使うのではなく、NVMCONやNVMADRL/Hを使います >>928
ありがとう、アクセス方法が変わったのね。 EEPROMのI/O方法もだけど
そのものが変わっていたような、違ったような config word設定もかなり増えたり変わったりしてる
F18xx→F183xx PICで一番ダメだなーと思うのはアーキテクチャが同じなのに石毎に統一感がない
何種類かドキュメントも共有する程統一されるに等しく、ドキュメントを跨ぐ程に統一されてない
どれも同じ感覚で開発できる程度には統一されていると覚えるにしても入りやすいと思うのだが >>932
新チップで周辺機能がどんどん改良なり追加されるのと、古い機能が改良もされずそのままならどっちが良いと思う?
私は断然に改良なり追加される方だね、古いのそのままなら新チップを出す意味が無い。
新しい機能が面倒なら新しいチップを使わなければいいだけ、マイクロチップならディスコンないから入手できるし
統一って言葉的には良さそうだけど、実際は古い物に合わせるだけで進化も改良も放棄するってことでしょ >>931
16F18313はピン割り当てがめちゃくちゃ柔軟に出来るようになった影響で、最初に
ピンの設定をするのが超面倒くさくなった
12F1822の代わりになるかなと思って買ったはいいけどいまだにLチカすら出来てないわw 電電板の住人はPICだろうがAVRだろうがARMだろうが
何でもござれな変態さんじゃ無かったのか。。。 >>934
全然違うだろw
新しく追加していく部分を拡張していけば良いだけで古い部分は使わなくなれば良いだけ
同じ場所を使って新旧混在させる934的考えだからダメだと言っている
拡張性を考えて行けば命令語の追加変更がこれだけ乏しいアーキテクチャでこうも資料を多くする意味なんてない
コア資料と機能別資料だけで事たりるって話だよ >>937
そんな現場で一番求められる人間になんかなったら死んでしまいますよ。
いやマジで。
(土曜日どころか日曜日も一桁前半の子供二人連れ込んでたソフト担当さん元気にしてるかなぁ…)
俺はヒゲなんか剃る時間もないまま3日に1日シャワーを浴びてただけマシだったとも言える日常を過ごした事あるけど、あの人は家族があるからなぁとか緩い頭で考えてただけまともじゃなかったわけですが。 >>938
.>新しく追加していく部分を拡張していけば良いだけで古い部分は使わなくなれば良いだけ
先の例で言えばEEPROMを残しながらHigh-Endurance Flashも載せろと言ってるのと同じか?
それと(結果的に)少しずつの改良になる場合はどうするんだ、例えばPORTBの変化割り込みとか
最初はピン毎のマスクも出来なかった(84A)のが出来るよう(690)になり、読んだ値からの変化
じゃなくて上げ・下げ・両方を指定出来るよう(1939)になったりと。少しの改良でも別機能として
追加していけというのか? 肥大した無駄の塊のチップができるだけだな。 スタート時点が低レベルだと改良点がいっぱいあっていいなw 継続した改良と、過去のものが時代の要求を満たさないものになっている、が実情じゃないですかね。
それに価格も消費電力も抑えるためには、重複した機能をひたすら残していくのは適切ではありません。
古いチップが好きな人は古いチップを使えば済む話です。 古くてショボくて高いのも継続して売ってるから、初めてのPIC組はPICがクソだと思ってしまう
俺もそう思った
普通に今選ぶべきチップのリストがあればいいのにと思う 秋月に売ってるおすすめ
PIC10F322 6pin ??45
PIC16F18313 8pin ??75
PIC16F18325 14pin ??100
PIC16F1454 14pin USB付 ??130
これ以外である? >>944
情弱がAVR教徒の口車に乗せられて、っていう典型的なパターンだな。
そういう人はAVRとか使ってくださいよ、別に構いません。
俺はそういうスタンス。
あと、おすすめは PIC32MX270F256B-50I/SP 16bitはオススメがない
32bitは秋月に売ってるのはどれもオススメ
用途で選んで >>948
>16bitはオススメがない
あらためて見てみたら、PIC24はPIC32に比べて価格的なメリットがあまりないですね。
秋月のPIC32はDIPしか扱いがないのがいまいちかな。 >>949
>秋月のPIC32はDIPしか扱いがないのがいまいちかな。
秋月だからな。
他のパッケージが欲しけりゃ、他所で買えばいい。
お前に言われる筋合いはない。 趣味の人はポンポン作り替えられるんだろうが、仕事で使ってる人はそうも行かなくてね。
ピンの再配置が出来ますなんてのより、継続して生産してくれるほうがよほどいいチップ。 レス数が950を超えています。1000を超えると書き込みができなくなります。