初めてのPIC 0x14
レス数が1000を超えています。これ以上書き込みはできません。
.
_ _ PICをさわるのは今日が初めて、という超初心者のためのスレです。
(O>――<O) PIC選び、PICを使った回路は、誰でも最初は不安なものです。
/ (・) (・) ヽ 恥ずかしがらずに何でも聞いてください。速攻で教えてくれますよ。
○ /▼\ ○ 質問のしかたは、初心者質問スレの発言1を見てくださいね。
|(ヽ二フ ) |
/  ̄ ̄ ̄ ヽ
f ヽ / | PIC関係のスレは、レベルに合わせて以下のスレもありますので、活用しましょう。
ヽ \ / ノ ・PIC専用のスレ
| \_ )(_/ ! 本家本元のPICスレです。口の悪い人もいますが、楽しくやってるみたい。
| | ここの話がわかるようになれば、あなたはもう一人前のPICerです。
| | ・マイコンソフト 悩み事相談室
| | ̄ ̄| | マイコンソフトやツールの質問は、こちらでどうぞ。的確な回答があります。
(_ノ ヽ_)
質問するときは…
・PICの型番と開発環境を明記しましょう。
・プログラムは、レス内に直接書き込まず右記を利用しましょう。 ttp://codepad.org/ ttps://pastebin.com/
・解決したら結果報告しましょう。
・Atmel買収以降アンチによる荒らしも横行しているので無視しましょう。
・先輩たちの雑談は「PIC専用のスレ」でお願いします。
ハード、ソフト情報
・統合開発環境 MPLAB X ttp://www.microchip.com/mplab/mplab-x-ide
・コンパイラ(XC8 XC16 XC32) ttp://www.microchip.com/mplab/compilers(高機能版のみ有料)
・コード生成プラグイン(MCC) ttp://www.microchip.com/mplab/mplab-code-configurator
・マイクロチップ・ライブラリ(MLA) ttp://www.microchip.com/mplab/microchip-libraries-for-applications
・PIC一覧、スペック検索
ttp://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1005
ttp://www.microchip.com/maps/microcontroller.aspx
・初心者はPIC16F1以降の型番で始めると無理なく始められます。
MCCを使えば、最初からPIC32で始めるのもありです。
・プログラムの書込みには書込器が必要です。
予算に応じてPICkit4、SNAPなどを購入しましょう。
ttp://akizukidenshi.com/catalog/g/gM-13854/
eBayやAliExpressで買えるPICkit3の中華クローンも十分な性能が報告されています。
過去スレ
0x13 2019/02/15〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1550166200/
0x12 2018/09/19〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1537343778/
0x11 2018/08/05〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1533446166/
0x10 2018/06/29〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1530265723/
0x0F 2018/05/01〜 ttps://rio2016.5ch.net/test/read.cgi/denki/1525183933/
では、質問どうぞ〜っ _--______--_____--_-_-__--_--_---__-__----____-___--_-_-____--__-----_------
--_------__-____-__---____---__-__-_---___-__-_--__-__---_-_-_-__-__-_---__-
--_____--___-_-_-_-__-_--__---___-----____-_--_-_-__-_-_-_-__-_--_---___----
-____----_-_____--_--_--_-_-_---__---_-___--___-__-____-_---_----_--_--__-__
_-____-__--_-___--_-----_-____-_-_-_-_-----____-___-_____---_--_----_-_-_---
__-______---___-____--__--_----_____-_--____--____--_--_-__-_------_--------
_--___-_-----_-_--__---___-___---_--__-__--_---__-_--__------______--____-__
---__---_---_____--__-_-_---_-____--_-_-_-_-_----_-_____-__--__-_-_--_--_-__
_--_-_---_-_-___-__----_------__-__--_____--_____-----__-___--_-__-_-_-___--
_----_____-_--_--__-_-_-_--_---_________-_-_-_-----------__--__-_-_-_-__-___
-_--_--___-_-____-_--__--_-_--__--___---__---_-_--_-_--_--_-___--_-__-___--_
-_-_-____-__-_-----__-_-_----_---_---__---____-_-__-_-__-_-___--_-_____----_
_---_-___--__--__--_-___--_----_-______-_--__--__-____------_-____---_-_-_--
-_-__--____--_--__----___--_---__---_-___---_--__-_-_---__---____--_-___-___
--___--_-_----_---_-___-_-----_____-_____--___--__-_--_-_---__---_____-__---
--_----_____-_--_---____--__-----_----_-___-___-_-___-_-__------_-__-_____-_
_-__--__--_----____-___----__-___-__----__-___-___-__-_---_____--_------_---
_____--_--_-_____-_-_-_----__-_-_----_-__-_-_-----_--___-____-_--__-_---__--
_-_---__--_--_----_--__-___-_-_--___--__-_-_--____-_---_---_-___--__--___-__
-_-___-___-_---_-_-__----___--__---_--__-____--_--------_______-_-_-_--_--__
_____-_-____-_____-----_---_-----_____--___---___-_-___-_-----__---__-----_-
-----___-_-__--___-_____-__-___-__---_-_--_----_--__-__-_-_---___---___--_--
__---_---_-__--________---_-_--_---__-__-__-_--_-------__-__-----___-___-___
-__--__---_-__-____---_------_--__-_---__--___-__-__-_--________-----__--_-_
__---______--____-___----_-_-_-__-_-_-_-_-_-_-___----------__-___---___---_-
-_-_-_-_-__-___----_-_-__-__---__-_--_-______-___-_--_----_-__---_-___---_--
---_-__-___-__----_--__-_--_---_----__-_-___-__--___--_____----___---_-_-___
-_____----__-__--___-_--___--_-__-_____----_----_-_--_-------_-__----_______
----_-_--_----_-_-___-___---__-___--_-____-_--__---_-_-____-__-__-_---__-_--
-_____--___-__---__---__-_---__---___-______--------__-_-_-----____-___---_-
-_____----_--__-_---_-_---_--_-_--_-_-__-_-_____---______--__-__--_-___-----
_---__-__--__-__--__-_--_-___--__--_-___-_-__------____-___---__--__-_---_--
_----__--__--_---_--___-_______---__-----_____---_-__--_---____--__---_--___
-_____------_-___--_-___--_--_------_____-_-_--__-_-_----_-_-_-_-____-___--_
____-__-___-_----_--___--___-_-_-_-----_-___-__-_---_--___----___-_---__-_--
_--___--_-_-___---_-___-_-__--_----____---__---_-_---________--_----_-__--_-
_-_---__-----___--_--__-_--_-__-____-----____-_-_-___-_--_-_---__-_--__-__-_
-__-_-_--__-__--__----___-__-__--_-_-_-_-_--__----_-----__--___--__-______--
_---________-_----_-__---_-_-__-_-___---_-_-__----_--_-__-_--_--___--_-_-_-_
-_--_-__-___--_--_-_-_-_-----___-_-___-____-___---_-_-__--_------_-_-____-_-
_-------___--_--_-__-____-____--_-__---_--____--_---__-___---_--__--__-__-_-
-______-_--___-----__-__---______-___-__---___-__--__-----__-__-_---_-------
-_____-----_----__------___-----________-_____-_---_--_-_-_--_--_-__-_-_-___
---_-_-_-__-___--_-__--___--_-------_-_-----_--__-__-_-_--____-____-___-_-__
__---_---_-_-____-_-_--_-_-___-_-_-____-_----__-----____-_-------__--_-_____
----__-__-----__-____-_____----__--__--___-_-__----_----_----__--___-_-_____
-________-__---_---__-_-_---___----_-_---__-_-_____--_-----_--___---_-_--___
--___--_-___--_--_-__-______---_-_---__--_-_-___---__---___-____------__--_-
---_-_-__-__---__-_---__-__----_--___-________--__-__-_---___-_--__--_----_-
____---_---__-___-_-___-_--_-___-___-_-_---_---_-__---______---_-_------__-- 1.好きな所に書け
2.好きな順番で書け
そもそもmainを一番最初に書いて、関数を順番に下に書いて行く書き方もある
3.関数の書いた場所が違うと割り当てアドレスが変わるからコンパイル結果は変わる >>1
>今日が初めて
>う超初心者のため
もめるから外したのにまた入れやがって、頭悪いのか? >>1
どーでもいいAAも復活させやがって
他にやることねえのかよ 別にどうでもいい
どうせAVR厨のうっぷん晴らし用の遊び場 16F/18Fに拘るからAVR厨の嘲笑の的になるんだろ >>8
拘ってることにしとかないとネタが無いからなAVR厨は
実際のところ最近は32と10しか使ってないから厨が何わめいてもどこ吹く風 >16F/18Fに拘るからAVR厨の嘲笑の的になるんだろ
16F/18Fへの拘りが、嘲笑の対象になること自体がおかしい。
16F/18FもAVRも新製品が今も出ていて、商業的には同じようにアクティブなものだし、
趣味で使うなら好き嫌いの問題でしかない。
タマゴかけごはんを食べてる人を、目玉焼きが好きな人が嘲笑したり、
今からタマゴを食うのなら、目玉焼きだろ、なんて言うのはどうかしている。逆も然り。
好きなものには拘ればいい。 > CPUの選択理由は色々あるだろうけど、
> AVRで簡単に作れる仕様なのに8ビットPICでは難しい
> は重要なポイントだと思う。 タマゴかけごはん(あるいは目玉焼き)が食べたいのに、
そもそもタマゴが無かったらどうするんだ、と言う問題だな。 AVRの 熱き血潮に 触れもみで 寂しからずや 卵料理を説く君 ( 字余り)
怒っちゃイャ〜よw いつも気になるのですが…
パソコンが普及してなかった時代、
マイコンへの書き込みってどうやってたのでしょうか?
書込み用のポケコンみたいなのがあったのでしょうか? スイッチパチパチでRAMに書き込むマイコンやROMライターあったな(遠い昔) パソコンが普及していなかった時代にマイコンに書き込むようなことがあったんだろか。
その当時ならROMへの書き込みなのでは?
VPPをかけておいて、トグルスイッチでアドレス、データを指定して、
ボタンを押したらワンショットで50m秒のパルスを作る、みたいな方法とか。
ミスったら紫外線で全部消してやりなおし。 その頃はフラッシュメモリは無くて量産はマスクROMだったね。
デバッグ時はUV-EPROMを外付けして、完成したら紙テープでcpuチップの生産を依頼してた。
ソース編集、アセンブルはミニコンだった >>14
こんなところにまで出張って来て無学をさらすなよw いつの時代の話やねんw
ここに本当の初心者がいないという事が証明されたんじゃね?w
最後の初心者は模型マンか >>22
> ここに本当の初心者がいないという事
いやー、ホントだね
初心者いないんだね、ここって 「証明された」と言えるだけの材料なんてないのにな。
論理的に考えることができない人でもマイコンは使えるようだね。 >>22
模型マンだって自作自演、やらせ、にぎやかしの可能性があると俺は睨んでいる 初心者がいるかどうかは懐疑的だが、睨みをきかせてパトロールしてる自宅警備員は確実に一人いる 他のマイコンはプロ、職人レベルだがPICは初心者って事 >パソコンが普及してなかった時代、
パソコンの普及と言えばWindows95以降だな
NECのPC88,98シリーズやシャープのMZシリーズとか普及してたとは言えない
1980年代に普及したのはファミコンだね その昔、MS-DOSの前にCP/Mってのがあって、それはグリーンディスプレイすら無くて(あるにはあったが)プリンタに出力してたんだよ。
モニター(BIOSみたいなもの)とか自分でチマチマ作ってた。 >>30
そのCP/Mでどんなソフトでどんなマイコンに書き込んでいたんですか? 8bit PICにCP/Mとか移植できるのかな?
ネタ的には面白そうな気がする。 >>32
PIC18なら、外部にプログラムメモリ領域持てる奴が有るから、頑張れば。 「セラミックヒーターのはんだごてが普及している」なんて言っても、
>>28 の判断なら普及していることにはならんのだろね。
普及にもいろいろなレベルがあって、特定の世界の中で普及していたら、
普及と言える「普及」もあるのだよ。 CP/Mはプログラム領域とデータ領域が分かれていたらそれだけでダメなんじゃないですかね。 CP/Mなら8080だかZ80の機械語をエミュレートしないとダメだよね 本物を移植するならPICで8080AかZ80のエミュレータを作ってその上でCP/Mのバイナリを
動かすことになるから、PICがハーバードアーキテクチャであるというのは関係なくなり
ますね。
MS-DOS上で動かすZ80エミュレータを作って本物のCP/Mを動かせるようにしてるけど
実用性はないですね。
Win7のコマンドプロンプトでやってみたらオープニングメッセージまではいくんだけど
さすがに無理みたい。
Z80エミュレータ+CP/Mエミュレータの方は日本語が文字化けするけど何とか動いた。
https://i.imgur.com/3H1f5qm.jpg >>39
「赤ちゃん年寄り貧乏金持ち田舎都会ぜーんぶ含めての普及」と
「俺の中の普及」の2種類しか考えられないってわけじゃないよね。
普及の定義があいまいなものなんだから、
安易に「普及している」を否定することなんてできないよ、って話はわかるよね。 >>31
媒体としては紙テープ、それをROMライターで読み込んで書き込む。
マイコンは基本敵にCPU機能しかなくてメモリはRAMもROMも外付けだから直接書き込むことは無い。
PCの代わりにデバッガーという、個別のCPU専用の装置があってそれで開発してた。 >>38
>本物を移植するならPICで8080AかZ80のエミュレータを作ってその上でCP/Mのバイナリを
>動かすことになるから、PICがハーバードアーキテクチャであるというのは関係なくなり
>ますね。
あ。そりゃそうです。
メモリ空間的にしんどそうではありますが。 俺がこの世界に入った時点で紙テープは過去のものだった。
CP/Mを使う時点でフロッピーは前提だったし。
割と趣味方面から業界に入ってきた人にとっては、フロッピー以前の外部記憶媒体は
紙テープではなくカセットだったんじゃないですかね。
純プロな人には紙テープを現場で継ぎはぎしたとか、ダイオードでプログラムを組むのだ
みたいな武勇伝を酒場で聞かせてもらいました。
>>31
始めた頃はROMライターを買うお金もなかったので、PC-8801のスロットに入るROMライターを
作って2732とか27256とかのUV-EPROMに書き込んでいました。 >>41
だったら安易に「普及している」を肯定することなんてできないよ、って話になるよね。 >>45
>>41に対して「であれば」で繋いで、そういう展開には必ずしもならない。
少なくとも「否定しない」が「肯定」である必要もないわけだし。
ただ、元の「パソコンが普及した」について、「全世界の隅から隅まで普及した」という解釈でしか捉えられないだとしたら
ちょっと狭いと思う。デバイスへの書き込みって文脈なので、「ごりごりのエンジニア連中の中に普及した」でも十分なわけだし。 世の中は定義があいまいなものが多いけど
だからと言って肯定か否定を曖昧なままで終わらせる訳にはいかないだろ
その判断の線引きが人それぞれ違うって事はわかるけど
判断の基準が多数決であったり一般常識なら売れ入れられるけど
>>35や>>41の様な狭い考えは一般人には受け入れられないって事だよ 超初心者のためのスレに「ごりごりのエンジニア連中」を引き合いに出すのは異常だと思う >>44
紙テープの継ぎ接ぎは末期のほうが頻繁だったよ。
読み取りが高速になって、ちょっとでも捩れてると切れちゃうから。
繋げるのは、全部穴が空いてる補修用の紙に切れた部分を合わせて貼るだけだから簡単。 おお ROMライタわしも作ったで、MSXのスロットに突っ込むやつ。
投げ売りしてた糞げーのカートリッジ流用したっけ。
MSX-DOSって、CP-MとMS-DOS足して二で割ったようなのでいじっていたわ 腐臭といっても菌や嗜好が違えば発酵だし。
30年ぐらい前の技術って割と今でも通用することがあって面白い。
今は年々新しいものが出てくるけれど、
「今はコレだ!」みたいな感じで成長期に流行の技術を学んで
その技術そのものが血肉のベースになっていると人の陳腐化も早い。 腐臭????
何とも懐かしいではないか・・
紙テープやパンチカードやコアメモリーを編んだり
当時は紙テープを見て間違いを発見することができたな〜〜〜 テープ読ますのにスイッチでハンドIPLやってるみて すげーと思ってた >>54
去年のmaker fairで貰ってきた>紙テープ 昔はコンピュータというと大きな磁気テープが動いたり止まったりしながら回転していて、多数のランプがちかちかしていて、ピロピロ音がしながら紙テープが出てくると「フムフム…」とかいいながらわかったふりをして読むというのがパターンだった
使用済みの紙テープが駄菓子屋で売られてたこともあったな、誰がどっから仕入れてきたんだか… PICでZ80エミュレーションする必要はないんじゃね?
フラッシュメモリ搭載のeZ80は現在も製造中でネットで買えるしeZ80はsdcc対応してるよ >>57
>紙テープが出てくると「フムフム…」とかいいながら
昔、上司とそういう話題になってたときに「俺は読めたよ」って言われて驚いたことがある。 >>59
今でもZ80を入手できることなんて百も承知でしょね。
ネタ(>>32)なんだからなんでもあり。合理が否定することをすることに価値を見出す行為なんだし。
合理で割り切れば、趣味のほとんどに意味ないよね。だけど、その行為のなかから新しいものが生まれることがあるんだよな。 >>62
>>59が書いてるeZ80はそれにあたるのでは。使ったことないけど。 >>62
I/Oを内蔵したのはいくつもあったけどメモリはRAMを大量に使いたい人もいればROMを大量に使いたい人もいるとかあって内蔵しないほうがいいのかな >>62
それこそ、PICが出るまではわんさかあったよ。
PICに駆逐されたと言っても過言ではない。 プログラム作る場合だとZ80の方が断然使いやすいのだけどね おっと。ワンチップマイコンの定義ってなんだろな。
人によって違うんじゃない?
(1)I/Oを取り込んだものはワンチップマイコンといえる
(2)I/Oにプログラムメモリ、RAMを取り込んでこそワンチップマイコンだ
(1)に従うなら日立の64180、東芝のZ84C、ラビットのなんだっけ、みたいなのがたくさんあった
(2)だともともと少ないと思うので、これにしたがえば「わんさかあった」にはならないと思う。
理由はわからないけど、メモリは面積が増える要因だったから取り込むより外付けにする方が
ユーザーにもメリットがあったのかも。
今では集積度がどんどん上がって、数100円で買えるマイコンにRAM256kバイトなんてのが当たり
前になってきましたけど。
PICに駆逐されたは過言でしょね。(日本の)ホビー界限定の話かな? >>67
PICと被るような用途ではあまり見なかったけどね。
駆逐したのってZ8とかじゃない? んー。Z8はPICと競合したかもですね。
でも、Z8はアーキテクチャもZ80とは全然違ったはずだし>>65が言ってるものとは
違うような気がします。 【即時】金券五百円分とすかいらーく券を即ゲット
https://pbs.twimg.com/media/D9F0kV_VAAIQ0SQ.jpg
[一] スマホでたいむばんくを入手 iOS https://t.co/ELuMDebkzc Android https://t.co/aV5jAKJMW1
[二] 会員登録を済ませる
[三] マイページへ移動する
[四] 招侍コード → 入力する [Rirz Tu](空白抜き)
今なら更に16日23:59までの登録で倍額の600円を入手可
クオカードとすかいらーく券を両方ゲットしてもおつりが来ます
数分で終えられるのでお試し下さい 👀
Rock54: Caution(BBR-MD5:b73a9cd27f0065c395082e3925dacf01) オレの言うわんさかは、TMPZ84C.64180,川崎製鉄やNECも作っていたと思う。
この辺はPICやAVRに駆逐されたと思うんだが、わんさかは言い過ぎたかな? >>69
書き方悪かったか。
PICが駆逐したのってZ8みたいなのだよ。
PICだけじゃないけど、小形低価格の方向に流れた。
Z80系からZ8みたいなのに枝分かれして需要を減らしたのは確か。
移行できない用途では残ったけど、パワーが必要なのは16bitに移行した。
それでも最近まで細々と生き残ってたんだけどね。 >>71
そういう面もあるかな。
Z80系チップを使っていた用途のうち、メモリがたいして要らなかった用途はPICやAVRに、みたいな。
ある程度たくさんのメモリが必要な用途は、(特に国内だと)H8に持って行かれたんじゃないですかね。
64180はもともとMMUを使って大きいメモリを使う用途が多かったはず。PIC、AVRとは競合しなかったと思います。
身近な範囲だと68301に移ったお客さんが多かったかな。
>>72
>PICが駆逐したのってZ8みたいなのだよ。
はい>>69でもその線で理解しています。
結局Z8を使うことはなかったのですけど、今みたいになんでもDigikeyで買える時代ではなかったし、
マーケティングの問題が大きかったんじゃないですかね。小さいシステムハウスだと、開発ツールを
揃えることさえ壁になります。 >>67
「ワン」チップなんだから、メモリ(ROM/RAM)外付け必須という時点でワンチップではないでしょ
拡張用にI2C-EEPROMを外付けで使うというのもワンチップでは良くあるパターンだけど、
それはあくまで拡張用であって、それが付くことを前提としてCPUが設計されてる訳じゃないからね >>72 >PICが駆逐したのってZ8みたいなのだよ。
複数のレジスタ・ブロックを持ち、マルチタスクで動かせる高機能のZ8が
低機能PIC16F84に駆逐されたのか? 可哀想にw
>>75 >「ワン」チップなんだから、メモリ(ROM/RAM)外付け必須という時点でワンチップではないでしょ
あんたの言う通り。
電気的に消去可能なROMが登場したのが大きかったと思う。 PICの前はintel8748/8749(実際にはNECのuPD8748D/uPD8749HDだけど)をよく使ってた。
40pinセラミックDIPで紫外線照射窓がついてるやつ。
PICになって電気的消去ができるようになって楽ちんになった。 >>77
オーバースペックだった部分だね。
Z80からの置き換えは殆ど見たこと無い。
PICはそれよりロジックの置き換えで使われてるのを多く見たな。
スイッチ入力のエンコーダやLCDの表示、シリアルの通信制御なんかね。 かなり上の世代の人は8051を駆逐したのがPIC/AVRだと思っている人が多いな >>75の定義に従うなら、>>69の(1)に該当する64180、Z84Cやラビット、川崎のチップは
ワンチップマイコンには入らないね。(俺も個人的にはこれらはマイクロプロセッサに
分類されるものだと思う) そういう定義ならZ80のワンチップはとても少なかったことになる。
ワンチップマイコンは消去可能になる前は、UVEPROMでなければワンタイムだったし
開発時にファームのアップデートをするたびにチップの貼り替えをやった。
それができるだけでも画期的なことだったんだけど。
そういやZ80系の64180もワンタイムROM/RAMありバージョンがあったはずだ。
これならZ80系のワンチップといえるね。
>>80
8051は今でも健在なんだけどな。
ライセンスの関係なのか、いろいろなメーカーが使い易かったんだと思う。
でもそのポジションってARMに置き換わってるような気がする。
PICもAVRも外部にはライセンスしてないのかな。
>>81
んー。画期的だと思ったのはPIC16C84だったな。Fじゃなく。 本家のi8051はとっくにに駆逐されたみたいだけどね、この前中華のデジタルクロックキット(ワンセット160円くらい)買ったらSTC12C2052使われてたし、デジタルパネルメータ(1個200円くらい)買ったらnuvoTonのN76E003が使われてた
いずれも8051ベース、中華物にはかなりの量がありそう 8051に限らずインテルがそういう分野から撤退してるし、それをもって「駆逐」って
表現するのってどうなんだろな。
駆逐という言葉自体、ひっかかりは感じていたけど、やっぱり注意が必要。
勝ち負けのニュアンスを入れると話に感情を持ち込んでしまいますし、その感情が
判断の材料にもなってしまいます。
ここに今参加している人が知らない分野で意外なものがよく使われていることも
あるだろうし、参加者だけの知識をもって意味のない結論を導いてしまうことがあると
したら怖い。
技術的な話なら、知ってる事実を感情抜きに並べておくのがベストだと思います。
8051ですが、国内で知られたメーカーだと、アナログデバイセズ、シリコンラボラトリー、
サイプレス、マイクロチップが、8051マイコンを出していますね。
ホビー市場のことは別として、ニーズはあるようです。 >>85
Cコンパイラが使えて、開発環境がリーズナブルで揃えられて、degikeyで通常在庫があり、
技術情報がネットで入手できて、
商用利用のライセンス等が面倒くさくなければ何でもいいです。
低機能のPICは、内部ロジックの動きが目に見えるようで、把握しやすいので、楽しいです。 >>83
8051は特許切れてると思う。
ちょっと高機能なLSIにはシーケンサとして乗っかってる。 >>79
オーバースペックってCPUを使いこなせない人が使う言葉だと思う、残念!
Z80とZ8はアーキテクチャを見れば分るけど、全く別物のCPUなので、
Z80からの置き換えなんて見れないでしょう。
PICはあなたの言う通り、プロトコル変換やロジック置換などの単機能処理用CPUで、
Z80やZ8とは用途が根本的に異なる。
なので「>>72 >PICがZ8を駆逐」は無理があるのでは?と思った。
私はZ8、PICを含む何種類かのCPUを使ってきたけど
(プリント基板やプログラムを作ってきたけど)、
一番好きなのはV25+かな。 >>86
趣味なら「楽しい」が重要なのは賛成するけど、
自分のやりたい事がやれる、も大事だと思う。
自分のやりたい事がCPUで制限されるのはつまらない。 半田付けが苦手だから少ない部品数で作れる方が良いな そのうちユニバーサル基板の配線が面倒だから基板発注する様になる そのうちはんだ付けが面倒だから実装サービス発注する様になる >>89
いろいろな価値観があっていいよな。
>>93
自作したいものがあってその工程において、外注にお願いできる部分はお願いする、
もありだと思う。 今までにPICで何か作った? これからPIC始める超初心者に
頑張ればこんなの出来るってのがあれば教えて欲しい >>88
PICがZ80を駆逐に対するスレだったんだが。 >>99
いやいや!そうじゃない
ここの住人が自ら作った物を知りたいんだよ >>100
もともと、
>頑張ればこんなの出来るってのがあれば教えて欲しい
ってことだよね?
誰が作ったものでも励みになるだろ?
「いやいや!そうじゃない」と気張って否定することなんてないぞ。
探すヒントを提示してくれている ID:d/LbFHXr にサンキューの一言ぐらい言っておけ。
プライベートな用途で公開しにくいものや、
システムの一部として使われるもので、それ自体では第三者には何の面白みもないものもある。
俺は後者。センサーとホストマイコンの間のコントローラとして使うことがほとんど。
ここに来ている人が何人いるかわからないけれど、そんな僅かな人から求めるより、WEBに存在
するものから見つける方が、高い確率でPIC単体作品として面白いものを見つけられるはずだよ。 >>101
>頑張ればこんなの出来るってのがあれば教えて欲しい
ってことだよね?
そうじゃないよ
>今までにPICで何か作った? これからPIC始める超初心者に
>頑張ればこんなの出来るってのがあれば教えて欲しい
これは1つの文章だよ。一部を切り取って別の解釈しないでくれ >>100
英語が分からないんだろ?
かわいそうに。 >今までにPICで何か作った? これからPIC始める超初心者に
>頑張ればこんなの出来るってのがあれば教えて欲しい
結局のところ他の誰かが作ったものを励みしたいんじゃないの?
それ以外の意図があるなら、もったいぶらずに書けばいいのに。 「いったいここの住人はどんなものを作っているんだろ」
という単純というか、純粋というか、軽い意味でというか、そんな疑問じゃないの?
「ここなら日本語でOKだし、質問もしやすいし、解答も集まりやすいし」
程度だと思うけど。
しかし、ここはもうすぐ夏なのに「もの言えば唇寒し秋の風」だな。
アッという間に、もったいぶった人、英語が分らない可哀想な人にされてしまった・・・可哀想にw
ドンマイ! 回答に対する開口一番が、
>いやいや!そうじゃない
とかふざけたレスだからじゃね?
民度の低い奴は叩かれて当たり前、自業自得。 >>105
>「ここなら日本語でOKだし、質問もしやすいし、解答も集まりやすいし」
当たってるのは「ここなら日本語でOK」だけじゃん。
つまりそういうことさ、ちゃんとお勉強しないから品格まで無くした惨めなヤツってこと。 >>106
> 民度の低い奴は叩かれて当たり前、自業自得。
失礼ですけど、高校生ですか?
それとも十分な大人? Instructablesなんて写真や回路図だけでも役に立つし
難しい英語なんて皆無なのになあ
ちゃんとお勉強しなかったせいで趣味の電子工作も楽しくなかろうてw まあ自分では何も作らずにエラッタを語ってるだけだしね 現AVR使いですまんこだが、
PIC初心者の頃に作ったテレビゲーム(ポン)が一番思い出に残ってるな
16F84だかのやつ >>115
いいね!
NTSC信号をPICで作り出すとか、ひとつのアコガレだったなぁ
今となっちゃNTSC信号を受け入れてくれるモニタがそもそも俺の家に無いけど おらも作ったな〜〜〜〜〜
16F716で・・・
16F84の作品は16F716で作った方が同一のPin配置で
A/Dとタイマーが機能強化されていて秋月で安かったので
結構使っていた・・・・
今は高くなって使う意味は??????微妙だけど つまり、PICのピークはPIC16F84が登場した頃だった、という話しじゃないか?w
私もそうだけど、AVRが登場したらPICからAVRに乗り替えた、という人は多かったと思う。
コード14ビットと16ビットだし、ワーキングレジスタとグローバルレジスタだし、
スタックの問題はあるし、その他諸々、CPUとしての優劣は明らか。 >つまり、PICのピークはPIC16F84が登場した頃だった、という話しじゃないか?w
論理的に「つまり」では繋がらないね。
希薄な根拠に、自分の願望を乗せている。
こんな考え方をする人ってどんな育ち方をしたんだろうって思う。 >>119
他人の揚げ足を取って優越感に浸るさもしい奴 自然言語に厳密な論理を求めるって、それを言ったら
考え方と育ち方にどんな相関があるのか?自分の願望が乗ってないか?
って話だわな >>118
CPUの優劣と称する、価値判断で生存が決まるわけではないのが興味深いですね。
僕は、本格的なマイコンは、16F84からだけど、AVRの方がいいって、いくら言われても、
PICでなんとなんとかなっている状況がかれこれ、20年ですね〜。 >>119
高校生的な発想
もっと社会経験を積んで大人になろうよ >>118
そしてその後のPICの進化には目をつぶってるわけだろ?
お好きにどうぞw >>122
もちろんPICからAVRに乗り替える、乗り替えないは個人の(会社の)自由です。
これからもどうぞPICを使い続けてください。
でもPICで20年も何とかなっている状況は恵まれていると思いますよ。
私は「あ、この仕様はPICでは実現出来ない」と思って乗り替えたので。
>>124
目をつぶっているわけでは無いけど、確かに熟知しているとは言えないな。
PICユーザーの薦める、進化した8ビットPICは何だろ。
それがAVRより優れている点を知りたい。 >>125
PICの良さをひとに聞かないとわからない人がなんでこのスレにいるの? >>126
それ。
PICの良さをひとに聞かないとわからない癖にAVRマンセーと叫ぶおかしな人。 >>126
いつものアレな人なんで相手しても益がない。むしろ、構ってほしいからここでやってる。 >>127
実利にしか興味がなくてAVRで間に合ってるならここにいる必要はないし
使わないものにも技術的興味があるなら自分で調べりゃいい話だわな
また、すぐ優劣で語るからおかしなことになる AVR過疎ってるからな
暇つぶしなんだろ
スルーしとけ コアCPUの性能の優劣を言うなら、いまどき8ビットを使う必要もないだろな。 AVRは8ビットコントローラーではダントツの最高性能だけど
64KBを越えるプログラムではコード効率が低下して、16ビットコアのPICには勝てないんだよな >>132
OPAMP付のAVRってありましたっけ? ADCのためのPGAは入ってるけど、オペアンプ付きは無いと思う。
CPU内部のオペアンプだと、数十円を削りたいようなギリギリのコスト削減には良いけど、
そもそも性能がいいものは作れないし、不要と割り切ってるんじゃない? 8bitPICでもCLCは強力だぜ
オレはPICもAVRも両方使ってるけどな マルチタスクが走らないCPUはただのI/Oコントローラ。 >>136
あなたよく見かけるけど質問いいですか?
あなたの言うマルチタスクって何? 複数のタスクを同時に実行する事。
後は自分で調べてね。
そうそう、プログラムサンプルも。https://pastebin.com/hZ4EiF7m
興味があれば逆アセで解析してみて。 >>138
そのまんまじゃんw
で、それが走らないCPUなんてあるの?
主張するならどういう違いかくらいは語れるよね? >>143
いや、その人はそれでいいんだよ。
何とかの一つ覚えだから、他にネタが無いの。 >>138
割り込みも使えないくせに、ただのポーリングをマルチタスクと称してオナニーしてるだけのAVR厨
まだいたのかw PIC8bitだと作れない → AVR に移る
という流れは別に構わないんだけど、
PIC8bitだと作れない → PIC16 32bitに移る
とか
PIC8bitだと作れない → ARMに移る
の人達もいるんだよな
にも関わらず、
「AVRに移る」 行動をした人だけが
8bitPICディスるんだよな。しかも粘着
AVRは精神異常者が使うチップに思えてくるわ RetroBSD走るやんかと思ったがあれは中身MIPSコアやったな 旧GIでPICのコアを開発した人もまさかここまで使い倒されるとは思ってなかったんじゃ?
初期設計に手を入れて改良してれば、AVRの台頭を許してなかったかも知れない >>136
別に I/Oコントローラー で構わないんだよね。
世の中にはそんな需要がいっぱい有るし、
それ以上もそれ以下もPICには望んでないし。 PIC18以降はMicrochipの野心やったのでは
そんな彼等もあっさりAVRに乗り換えたけど(笑) 下のサイトみてMPLAB v5.15にバージョンアップしたら失敗した
一見うまくいったと思ったけど、簡単なLチカやってみたら
__delay_ms(2000);
とか明らかに時間が短い
https://sanuki-tech.net/pic/development/version-up-mplab-x-ide/
新しいバージョンのインストール先を推奨値のままインストールすると、旧バージョンのものは
上書きされず、そのまま残ります。しばらくの間、旧バージョンを残しておいて、新バージョンが
安定して使えると判断した後、アンインストールすればいいでしょう。
でもHDD丸ごとバックアップしてたんで助かった
ちなみにOSはwin7 https://i.imgur.com/89WEVj5.jpg
やっちまった・・・
pickit3が壊れたのでpickit4を通販で買う
到着まで待ちきれなくてSNAPを買いに走る
実はpickit3は壊れてなかった 根本的な原因を究明解決せずに目の前の安易な方法に走る
そういう人はマイコン使うのに向いてない >>153
FOSC? に、設定したクロック周波数定義しておかないと、__delay()系は上手く動かない。実態はマクロで、待ち時間分だけnopを繰り返す様になってる。 >>156
そんな事言うけどさ、時間的な余裕が無かったり、
予備が無かったりするとあせるんだよね、より悪い状況が頭に浮かんできたりして。
私は心配性なので、準備できるものは予備を準備しておく事が多い。
(たとえば同じタイプのライタが3台ある)w 安易な方法も、手段の一つじゃないでしょうかね。
僕も、pickit2,3,4 所持していて、pickit3が壊れたかと勘違いしたことある。 どうでもいいわw
気の済むまでいくつでも買って並べておけ 仕事なら予備というかバックアップは必須だな。
壊れたので納期遅れます、を納得してくれる客だったら良いけど。 昔あちこちで見た自作のPIC Programmerみたいに書き込み途中経過をプログレスバーで表示してくれると直感的にわかりやすいと思うんだけど、文字だけだといまいちじっくり見ないといけなくて…
MPLABXにそういう設定ないかな >>161
それ、これ見ながらほざけ。
https://i.imgur.com/89WEVj5.jpg
鏡があった方がいい。
あ、鏡は1枚で十分だぞw >>165
不幸で惨めで恵まれない人生でも送っているのか?
ヤケになるなよ、人生は長い。 >>166
こんなとこで馬鹿自慢の次は身の上話かw 俺クソポンコツぼろぼろのpickit2を何度も直しながら使ってる
けど金に余裕があったら新しいの買うわ… Microchip DIRECTで円で支払いが出来るようになりました!
って言う案内が英語で来た MPLAB Xを、初めて使ったんですが、
アウトプットウインドウの、エラーメッセージが分かりにくいです。
見方を書いたような本とかは、ないでしょうか。
エラーメッセージだけ赤色で表示するのはできないでしょうか。 PICkit3は、こいつ壊れたんじゃね?と思わせるようなストライキを突然始めることが多々ある。
USB抜き差し、MCLR端子まわりの手抜き、大体このどちらか。
いまのところPICkit3(純正、中華とも)壊れたことは一度も無い。 >>173
確かに使いづらいんだよな
メモ帳みたいにシンプルでいいのに >簡単なLチカやってみたら
>__delay_ms(2000);
>とか明らかに時間が短い
そうそう
意味分からんけど
delay関連は #define _XTAL_FREQ 32000000
の行を微調整していけばいいよ。
オシロで1000ms=1秒になるように#define _XTAL_FREQ ??000000
を調整する。自分は62Mhzにするとなぜか1sになったのでそれで使ってる。
オシロあると便利
オシロないならforで繰り返して30秒くらいにして時計で計って調整してもいい >>172
PICK3の不安定はおれもそうだったが
電源を別から取ったら安定しまくった。PICKIT3は電源まわりが信用できぬ
それでも安定しないことはある。あとケーブルをできるだけ短くして
電線太いのにするとよい
不安定動作になったときの復旧方法の鉄板としては
・MPLABのソフトを落とす PICKIT3の電源を全部落とす PICも電源落とす
・それで2〜3分放置して MPLAB立ち上げ→PICKIT3の電源を入れる(ケーブル入れる)
でだいたいは復旧(9割くらい) それでもだめなら、この手順を再度やり直す。最悪4回くらいやりなおす。
MPLABが立ち上がって安定した状態でPICKIT3の電源を入れるのがコツ
あと書き込み時でもPICには外部電源にする(PICKIT3からは電源供給しない)方が良い。
なら3線式でいいじゃんと思ったがVDDから電圧取ってるので、電源供給しなくても5線式のままにする必要がある
(PICのVDDはPICKIT3とACアダプタ両方に繋がってる必要あり) >>175
オシロ使わなくても、シミュレータである程度、検証できると思いますよ。 オシロがないなら時計が確実ですね。
でも電子工作するならオシロやロジアナみたいな時間軸が分かる測定器は持っておくことを強くお勧めします。 デバイスが何でオシレータソースが何なのかわからないから何とも言えないけど
周波数カウンタなら300〜400円くらいで50MHzくらいのキットがあるしね MAPLAB X IDEについて質問です
プロジェクト一式をgitで管理しようと思うんですが、hoge.X フォルダ
直下に出来る
nbproject
funclist
l.obj
は管理が必要でしょうか?
ソースを何も変更していなくてもbuildを実行するだけで変更されるので
あんまりgit管理対象にしたくないんですが・・・ >>182
https://microchipdeveloper.com/mplabx:git
ここいら辺りを熟読するか、私が使っている".gitignore"です。端折ってます
/dist/
/build/
/debug/
/nbproject/private/
/nbproject/Package-*
/nbproject/Makefile-* 送ってもた。ボケてきたかも…
funclist
l.obj
は、管理の必要ないです。
nbprojectのなかで管理するのは、
configurations.xml と
project.xml だけで
良いみたい。 ありがとうございます
gitignoreを作ってみます
しかしMPLAB Xから直接gitでcommit出来ないのは辛い・・・
今使ってるv2.20を最新(v5?)に上げればteamにgitが追加されてんのかな >>171
恥ずかしいことですが、Pickit3とPICを接続するピンアサインを間違えてたんです(恥)
言い訳させてもらうと・・・・
書き込みをしようと試みたところ、デバイスのIDが合わないとメッセージが出る(device not findではない!)、以下試したこと
・配線の接続不良と電源周りを確認する
・MPLAB X IDEの再起動、Windowsの再起動
・USBケーブルの交換、接続ポートの変更、PCの変更
・ブレッドボードから外してゼロプレッシャータイプのICSP接続の書き込み機で書き込み
・テスターでVDDの電圧を測る(3.89vしか出てない・・)
・疲れてると思い、その日は一度寝て起床後に同じ手順を1から繰り返す
中華製のPickit3なので壊れたと思い純正Pickit4購入!
※結論、Pickit4はLEDがカッコいいので超おすすめです! >>185
新しいMPLABXは、Teamメニューに3種類入ってます。 MPLAB-Xについて質問さしてください
HEXファイルの出力先はConfigがdefaultという名前なら
~/dist/default/production/hoge.X.production.hex
になりますが、Config名をファイル名の一部に埋め込むことは出来ませんでしょうか
こんな感じです
~/dist/default/production/hoge.X.default.production.hex
ProjectのProperties>Buildingを見るとImageDirやImageNameといった項目があるんですが
これを自由に変更する方法が見つけられませんでした。
出来ればbuildのbefore/afterで別途batやshをexecuteする方法は避けたいです >>189
thread
: a series of related messages that are written on an Internet message board
例文
If you want to discuss a different subject, you should start a new thread. 自分の吐いたゲロで足を滑らせて後頭部を強打して死ぬくらいどうでもいい わざわざレスを書く程度には、どうでも良くはなかったみたいだな。 Pickit4でターゲットの認識が突然できなくなっちゃった。
秋月電子のICSP書き込みアダプターキットを使って、
PIC12F683に書き込もうとしてるだけなんだが
Reception on endpoint 129 failed (err = -10121)
Failed to get Device ID.Please make sure the target device is attached and try the operation again.
Connection Failed.
ってメッセージ出る・・・
誰か同じことになった人いない? >>195
配線を間違えてるか、ジャンパーワイヤーが断線・接触不良の可能性大!
慌てて別のPICライターを買いに走らない事!
俺みたいに・・・ そういえばデュポンワイヤーという名のジャンパー線は当たり外れが大きいな
安く買った40本のメス-メスコネクタが10本くらい断線してた、被覆を割いてみたら中の銅線が腐ってた それはデュポワイ(デュポワイヤ)が腐ってたというよりコネクタとの
圧着部分が雑だっただけでは?
某バッタ屋で買ったデュポワイは全部通電NGという腐った仕様だったけど
圧着部分をカシメ直したら通電するようになったことがある >>191
>スレとthreadは別の言葉だよ。
んなわけないだろ。
スレがthreadじゃなけりゃなんなんだよ おしどりマコ
あとから思えばそこがターニングポイントだったなと思ったところがありましたね。
2012年と2013年の衆院と参院の選挙で、自民党が第一党になったときから、本当に情報が出てこなくなったんですね。
https://youtu.be/-bgP2AvY3Yc >>196
俺も2台目をポチりそうになったけど、
やっぱ安易に買わん方がいいよねw
5000円以上するし。。
pickitからの5v給電モードで使用したさいに、
そのラインに6vの電源(単3電池*4)繋いじゃって。。。
そんな使い方した後に調子悪くなったんだよなー
電流が逆流してぶっ壊れた?って根拠もなく考えてるんだけど、そんな事ってあるかな? >>201
ネタで書いてるのかも知らんが、
データシートの定格くらい見ろよカス >>201
それは確実に電流が逆流して壊れてますね。
壊れたものであれこれ時間を無駄にするより、
勉強代だとあきらめて新しいのを買った方が結局は近道です。 残念ながらネタじゃないんだよぉ。
普段既製品しか使わないから、こんなに簡単に壊れるものだとはって感じ。
>>205
そうですか…諦めて2台目買います。
5000円はキツイから、ケース自作してmplab snapの方を買おうかな… picが壊れたのかpickitが壊れたのかくらい確認しろよカス
12F683の最大定格いくらだよ?あ? 残念ながらネタぢゃないんだよぅ
ちょっと小突いたら大袈裟に倒れやがって
そんなんで骨折とかするなよって感じ。 >>207
> 確認しろよカス
こうゆう人は高校生なんだろうな
まだ大人の対応ができない子供 > 確認しろよカス
チンカス野郎の言葉遣いだな。
良い子のみんなは真似しちゃいけませんよぉw
もっともカスはカスでも、人間のカス >>207 とは違って、
酒のカスは色々と役に立つ。
水に溶き、砂糖を足して甘酒、は普通だが、
たとえば豚汁に少し入れると風味アップでグー! >>207
5chに来る奴は超ゆとり教育を受けたゆとりが圧倒的に多く、
確認しろと言ってもどうしたら良いのか分からん奴が多い
俺らカスは確認する方法のカキコなんて無理だから、カスらしくPicに関係ないことを
カキコするよな ここは超初心者を受け入れる場所ですよね。
「カス」と言った人は謝罪しましょう。 データシートも読まないような奴をカスと読んでなにが悪い
俺らの若い頃はそんな寝言抜かしたら先輩から椅子毎蹴り倒されたわ >>215
またー
高校生のクセに強がり言わないの >>215
高校生にはちょっと難しいかもしれないけど
ここは学校じゃないんだよ
だから先生もいないし生徒もいない
みんなが知恵を出し合って築いていくという場所なんだよ
もうちょっと知恵をつけようね、別の勉強もたまには必要だね またPIC爺の自分語り&マウント取りか…そんな態度やから友人も出来ひんのやろ ジジィのジジィによるジジィのためのCPU ・・・ それはPIC!
てか? ほっといてくれw >>215
データシートは読むのに、空気は読まないの? ワイも厳しく躾られたんや
初心者に寄り添うなんて
とか思ってそう 車のダミーセキュリティーっぽい物を作ろうと思ってPIC12F1822で初プログラムを作ってみました
RA5がLEDでRA3がスイッチです
電源投入で消灯状態、スイッチを押すと点滅する所まできました
スイッチを押すたびに点滅状態をON-OFFにしたいのですがご助言頂けると嬉しいです
http://codepad.org/EVZOn09y if(RA3) RA5 = 1;
else RA5 = 0; if(RA3) { //SW_ON で RA3 H
if(RA5) RA5 = 0;
else RA5 = 1;
while(RA3) //SW_OFFまで待機
} >>222
助言として書きます
まず、接続してるスイッチの配線が間違ってます
ra3の内部プルアップをオンに設定して、スイッチはグランドに繋げます
今はスイッチがプラス(VDD)に繋がってると思おますので
それで、スイッチの種類によってプログラムは大きく変わります
操作した状態が維持されるスイッチなら条件式で簡単に実現出来ます
押してる時だけ電気が流れるスイッチならより複雑な物になります カス呼ばわりしてすまんかったよ
ここまで低レベルな馴れ合いスレだとは思ってなかったもんでな
俺にレスなんかしなくていいから誰か
>201の悩みを解決してやれよ >>224
ありがとうございます。スイッチ関係を先にするのでひとまず保留させてもらいます。
>>225
こうでしょうか?
http://codepad.org/F5VStwTO グランドにモメンタリスイッチでON出来るようになりました >>228
プルアップの設定は良いと思います
この場合、スイッチを押して無い状態は1(HI)おした状態は0(LO)ですので
while(RA3){ // スイッチが押されるまで待つ
これの条件は反転します
たとえば、
while(RA3==0){ // スイッチが押されるまで待つ
で考えてる動作になるはずです >>228
ごめん、IFじゃないから
RA3==1 か RA3で問題ないやw
運転中だからいい加減だった >>230
このままだと
通電→消灯状態→モメンタリスイッチ1回目→LED点滅→モメンタリスイッチ2回目→変化なし(点滅維持)
で最初と変わらないですけど >>231
そうだよ
なので、そのためにはタイマーもしくは割込に条件分岐を組み合わせる必要が有る >>233
実現するだけなら
if(RA3==0){
__delay_ms(1000);
while(RA3);
}
をled消灯の後に追加して、ボタンを長押しでで操作なら出来ると思うけど >>234
素晴らしいです、ありがとうございます
今後の為にタイマーと割り込みも調べてみます >>201だけど、さっき新しいPickit届いたから書き込みしたら成功した。
やっぱりPickitはお亡くなりになったんやなって…
5v給電モード中に6v外部電源を同じラインに乗せてしまったのが原因だと思う。
壊れた瞬間の回路をはっきり覚えてないから絶対とは言えないけど
初心者の方はお気を付けて >>236
pickit4の回路図が無いので
PICkit3の回路図を参考に回答だけど
たとえ5vに10vかけても壊れないと思う
5vをグランドに接続しても壊れない
だからそれが原因とは思えない >>237
うーん…そうか…
じゃあまた別の所で配線を間違ったのかもなぁ。
それか、これはマニュアルにも絶対やっちゃダメって書いてあったけど、
外部電源をONにしたままケーブルを抜き差ししちゃったからかもしれないわ。 >>238
壊れたPICkit4のVcc、Data、ClockそれぞれにLEDと抵抗つないで何かコマンド送ると一瞬でもどれかのLEDがつくかも…
点かないラインが壊れてるとかわかるかな?…ついでにVppも
中華の安いロジアナでもいいからあるともっとわかるのかも >>235
マイコンプログラムを作るときに、鉄則があります。
それは、動作が立ち止まらないように書く、です。
立ち止まるというのは、具体的にあなたのやつだと、
・RA3を待っている時、
・LEDの点灯中、
です。あなたのその書き方だと「〜をしている中」に、他の処理ができません。
点滅は出来たものの、点滅中に点滅の開始、停止を他のスイッチでコントロールなど
一歩先に進められないのです。
スイッチ取り込みは、スイッチの他に外部で抵抗を使えば、
内蔵プルアップなんか使わなくても良いです。
スイッチが押される=HI、HI=LED点灯 のほうが脳内で反対に考えずに済み、間違いがありません。 >>235
あと、if()やwhile()などの()の条件文には、
==とか!=とかも書く癖を付けましょう。
間違いの温床になります。例えば、
if(RA3)... もしRA3なら、、、
if(RA3==1)... もしRA3が1なら、、、
口に出して読むと、一目(読?)瞭然ですね。 >>238
ワロタ
なんで絶対に駄目なのかよーく考えろ
そしたら同じようなアホな失敗はしなくなる >あと、if()やwhile()などの()の条件文には、==とか!=とかも書く癖を付けましょう。
>間違いの温床になります。例えば、
>if(RA3)... もしRA3なら、、、
もし if (RA3) {…} を見てとっさに判定処理が理解出来ないのなら
それは単にC言語が理解出来ていないということだから、まずは
C言語の勉強をゼロからやりなおしたほうがいい
うちの会社で if (RA3 == 1) {…} なんてコード書いてたらコードレビューで
ボロクソにこき下ろされるわ >>240-243
アドアイスありがとうございます
今回は初めてなのでネットで得た知識で何とか形にしたものです
PICは趣味なのでゆっくり理解していきたいと思います MCCのDevice Resourcesにでてくる以下の違いって何ですか
・Foundation Services Library...
・PIC10 / PIC12...
https://i.imgur.com/bAUEmaj.png >>240
普通はプルアップで使うから、利便性を考えて内蔵してるのです。
我流ではなく負論理に慣れた方が良いです。
>>241
逆の事を言ってます
if (RA3) 真偽の判定
if (RA3 == 1) スカラ値が1かどうかの判定
あなたがそういうポリシーなのは自由だが、初心者相手に鉄則などと言うのは感心しません。 >>247
>普通はプルアップで使うから、
そうなんですか?
なぜ負論理が普通で、正論理は我流になるのか、説明してもらえませんか? >>247
すみません、説明できないのでしたら、特に無理に返答いただくことはありません。
これで、やりとりは終わりですから、問題ありません。 >>249
あんたのポリシーなんだから勝手にすれば良いと言ってるでしょ。あんたを説得する気なんてさらさら無いから。
基本がわかってないのに、人に講釈たれるのは遠慮して欲しいだけ。 部品が少なくてすむ=故障のリスクといったメリットはありそうですね >>248
プログラムとしては正理論が正解だか、電子回路としては内蔵プルアップを使った方が部品点数を減らせるのでスマートじゃね?
プルダウンして使うなら最低でも抵抗1個、保護も考えれば抵抗2個必要になる(超大変)
なので、プルアップを使う場合スイッチの状態を関数にして、戻り値にすれば良いと思う
そんなことより性理論ってのが先に変換候補に出たw(スマホ) >>239
Vdd、Vpp、ISCPDAT、ISCPCLKでやってみたけど光っていないように見える。
ロジアナとかいうやつは持ってないんだ。
しかるべき人が見れば不調個所を特定できるんだろうけど、どーやってるんだろう?
>>242
例えばの話、外部電源6vに繋いでいてPickitのVddだけ接続を外したとすると、
ISCPDATやISCPCLKの最大定格が(「Vdd + 0.5v」とかになっていて)0.5vまで引き下げられて、
そこにHIGHの6vが流れ込んで、定格オーバーして故障する。
みたいな事が起こるんじゃなかろうかと考えたんだけど合ってる? おそらくねTTL時代(もしくはそれ以前)の名残じゃないかと思うんだよね(負論理)
・NPNトランジスタよりPNPトランジスタのほうが性能が出せずに作りにくかった
・TTLの入力はマルチエミッタ->プルダウンにすると低い抵抗値のものが必要で消費電力が増える
・TTLの出力は'H'はVccまで振れず取り出せる電流も少ない、'L'は0V付近まで振れて電流も流し込める
CMOSになってどっちでも同じになったけど物によってはいまだに出力'L'のほうが電流が流せるデバイスもあるみたいだしIC内部にプルアップ抵抗のほうが作りこみやすいとかがあるかな?
>>253
LEDはダメだったか
安ロジアナっていうのはこんなやつ、PICkitに比べたら格段に安い、8チャンネル24Mサンプリング
https://ja.aliexpress.com/item/33026791648.html
ソフトはフリーのやつか別メーカからダウンロードしたやつのどちらか使う、ソフトでUARTやI2Cのプロトコル解析もできる >>253
242じゃないが、説明書によると簡単には壊れないから安心して使えって書いてある
もう一回設定と配線を見直して見たらどうだろ
あと書き込みつツールを mplab ipeで試す(初期設定だと給電offなので注意!)
B.3.1 標準通信
• ターゲット システムの不良または不適切な接続による過電圧からクロックおよびデータ信
号を保護する。
• プロトタイプまたはターゲット システムの電気的短絡によって生じる高電流からクロック
およびデータ信号を保護する。 >>252
>内蔵プルアップを使った方が部品点数を減らせるのでスマート
確かにそうですね。ただ、内蔵pull-upの値はいくつか知っていますか?
半導体で作り込む抵抗のため、絶対値が大きく、ノイズに弱いスイッチ入力に
なってしまうので注意です。値のばらつきも大きいので、積極的に使用するのには
注意が必要です。
>>254
>おそらくねTTL時代(もしくはそれ以前)の名残じゃないかと思うんだよね(負論理)
その通りです。
ただ、VILとVIHの違いで、Low側のノイズマージンが狭いので、
pull-upになっている要因です。 TTL互換入力の場合はプルアップの方がノイズマージンは大きくなるけれど、
CMOS互換入力だとVILが0.3VC、VIHが0.7VCCみたいに、スペック上は変わらないね。 >>257
そうですね。C-MOSになって、スレッシュが「3割7割」になった時点で、
pull-upでなくpull-downで良くなり、ハードの信号とCソースのレベルを合わせられるようになり
便利にりました。
pull-downだとGND共通で信号線を引き出せるので、ノイズ対策もしやすいです。 >>254
FETもNchの方が作りやすくて性能も良い。 RS-232CはアクティブHだよね。
逆だったら送信側の電源が落ちたときにずーっとフレーミングエラー。 >>ID:kJf4qc67
押しつけがましくオナニーレベルの自己ステレオタイプの披露に過ぎない。
すべてが全否定、あるいは条件付きで否定可能な内容にも拘らず言い切る。
言い切る根拠がまた素敵!
それが鉄則だから
一目瞭然だから
昔はそうだったから ドヤって初心者が初心者にアドバイスしてる流れ
まあこんな所で聞いちゃ駄目だっていう例だな >>262-263
具体的にどこがどうおかしいのか指摘しないのなら、ただの雑音だよ。 >>262
普通に当然な事言ってるように俺には見えるけど。
何が気に食わないの? スイッチを押すたびにON/OFFをしたい、という要求。
>>227のソースもその線で議論する方がいいのに、>>240は delay待ちが「鉄則」としてやっちゃいけないとか、無駄に表現が極端な気がする。 >>241
if (RA == 1)のほうが間違いの温床になると思うが
比較のつもりで代入していたなんてのはベテランでもよくやる(残業続きで疲れてたりすると特に)
コーディングルールで==を強要されてるときは以下のように書くが
#define ON 1U
if (ON == RA)
個人的にはif (RA)のほうが明確で好きだな >>268
>比較のつもりで代入していた
今時これを指摘してくれないコンパイラとかあんの?
というかリアルタイムでこれを指摘してくれるエディタすらあるけど 1ループ1点滅にするより、10とか20ループごとに点灯状態をトグルする方が
キーチェックに対する応答は良くなるよね。
1回のループごとに1回のキーチェック。
キーチェックは、押されているかどうかではなくて、
前回のポート状態が「押されていない」 かつ 今回のポート状態が「押されている」
ときに、「押された」と判断することが多いかな。
1ループごとに数10m秒のディレイを設ければ、チャタリングの除去にもなるし。 >>270
キーチェックが、その1カ所だけなら
その方法でもできるかもしれないね。
でも、いつか破綻しないですかね。 active-lowはTTL時代からの慣習でCMOSなら拘る理由は無いとは思います。
ただスイッチをパネルにマウントする場合は正論理でVddを引き回すのは抵抗があります。まあ短絡事故用に電流制限の抵抗入れれば良いんだけど、それだったら負論理で良いかと。 >>263
> ドヤって初心者が初心者にアドバイスしてる流れ
適切なアドバイスできるならすればいいでしょうに
なにをためらってるんですか? 通りすがりだが。>>240 の「鉄則があります」が
「スイッチ取り込みは、スイッチの他に外部で抵抗を使えば、 内蔵プルアップなんか使わなくても良いです。 」
にまでかかっているように解釈されるから必要以上に叩かれてるんだろうな。 初心者がLチカの次のステップでスイッチ入力する方法としては
まず割り込みを使わずに>>270のような無駄な努力をして散々苦労の末機能を実現した後
タイマー割込みや状態変化割り込みを使って「割り込みっていいなー」みたいに感じる流れがいいような気もするが >>279
改行しても「鉄則があります」のインパクトが強いので、
まるで、内蔵プルアップは使わないのが鉄則、さらに
==とか!=とかも書くのも鉄則と素人に講釈たれてるよう
に解釈(書き手にとっては誤解)されてるんだよ。
PICでスイッチ見るのは初心者過ぎたらADだろ? SPIシリアル通信のセレクト信号SSを負論理にしたのも
「TTL時代(もしくはそれ以前)の名残で何となく」ですか? >>240 の
>それは、動作が立ち止まらないように書く、です。
>立ち止まるというのは、具体的にあなたのやつだと、
>・RA3を待っている時、
>・LEDの点灯中、
>です。あなたのその書き方だと「〜をしている中」に、他の処理ができません。
>点滅は出来たものの、点滅中に点滅の開始、停止を他のスイッチでコントロールなど
>一歩先に進められないのです。
delayのせいで、その間スイッチが読めないでいるのは、このアプリのために
適切じゃないだけだし。
「動作が止まらないようにすること」は一般論としての鉄則でもないと思う。 >言い切る根拠がまた素敵!
>それが鉄則だから
>一目瞭然だから
>昔はそうだったから
同意
>>ID:kJf4qc67
押し付けたいだけなんだな自分の流儀を
初心者サイドに立つ気は一切無い人でここに必要無い >>283
TTLの縛りがなくなったせいか、今はチップセレクトが正論理な
SPIデバイスもありますね。 教えるとかアドバイスするということと
自分の流儀を押しつけることとは全く違うからな
それがわからないからたたかれてるんだが
本人には一生それがわからんだろ >>287
いつまでもキーワードに噛みつかずに、
ぎじゅつてきなせつめいたまもしてみてよ。
でなければ、ただのノイズだよ。 >>282
>PICでスイッチ見るのは初心者過ぎたらADだろ?
ADってA/Dコンバータのことなのかな? これはどういうお話?
初心者すぎたら、タッチスイッチ、みたいな話ではないよね? >>291
論点ずれてるけど、それすら気づいてないよね、きっと
そういう風に他人の意見を取り入れる気がないから
教えることができず押しつけに終始する
あなたには一生無理 初心者スレで俺は技術的な説明してやってんだ
って態度のあなたの方がよほどノイズ 「ノイズ」という表現がお気に入りらしいw
なんとなく素性が透けて見えて楽しいね ノイズという言葉で透けて見える素性って、何なんだろう。
いい加減で非論理的なことを重ねないで欲しいな。 この度は私の「内蔵プルアップ」発言により、スレが荒れてしまい申し訳ございません
222の方の回路(予想)ではRA3-スイッチ-VDDだと思われたのでプルアップorプルダウン考えた結果、部品の追加無しで実現可能な方を安易に選んでしまいました
アドバイスする機会があればプルダウンで案内したいと思います
>>256
実は正確な値を把握しておりません
30kΩ前後だと思ってました
バラツキに関しては甘く見ていました、ご意見感謝します
また、積極的に使用してると勘違いさせてしまい申し訳ございません
大抵はADコンバータを使ってます >>298
いやいやいやいや
LEDをON/OFFする程度のスイッチでしょ?
折角内蔵のpull-upがあるんだからそれ使えばいいよ
× 安易
○ 便利
たとえバラツキがあろうと今回の利用目的においては全然影響ない訳で
荒れたのはあなたのせいではなくて特定1人が原因 >>283
バスの場合はチョット事情が違うと思うんだけど、どうでしょう>識者の方
1)バスの場合、受け側電源が入っていない時も考慮
2)受け側Vdd=0V時、cmosポートは保護ダイオードからVddに流れるショートモード
3)低インピーダンスなHighでは大電流が流れるので、出し側はオープンドレイン+プルアップ
4)結果、負論理にした方が無駄な吸い込み電流をカットできる。でも微々たる物か。 光カプラで受けるときは、通常負論理になりますね。
内蔵pull-upは、電子工作程度なら、恐れずに使えばいいと思う。
PICのi/oは、比較的強い子。 >>298
スイッチ取り込みに、A/Dコンバーターつかってるんですか? >>302
知ってると思いますが、フォトカプラーは、
Vbeが、他の2本と無関係で、
エミッター接地、コレクター接地が自由に使える素子ですよ。
確かにNPNのスイッチングなので直感的にエミッタ接地を連想しますけと、
オープンエミッタで電流吐き出しで使っても全然問題ありません。 >>300
>>298は元質問者を装った釣りでしょね。
だけど、>>282で出てきた「PICでスイッチ見るのは初心者過ぎたらADだろ? 」も
どこかで出てきたネタ話だったのかな? マジレスしてひっかかったかも>>292。 スイッチの検出なんかに内蔵プルアップを使うのは用途や必要とされる信頼性次第で
製品でもやってること。
どんなときでも車載医療原子力宇宙対応の設計をしないといけないわけじゃない。
教条主義的な発想は頭を固くするよ。 車のハンドルスイッチかな。
重み付けした抵抗で多数のスイッチの状態をを単線で伝送するってやつ。 >>301
SPIの場合はチップセレクトをオープンドレインで駆動するかな?
オープンドレインのこともあるだろうけど、たいていはプッシュプルで駆動すると思う。 >>308
電源ON時のHI-Zの処理のために、プルアップ抵抗は必要で、
起動後はブッシュプルで駆動するね。 スイッチ入力にAD使うのは車とか高信頼性が必要とされるときだな
on、off、解放、短絡を1入力で検出可能、複数スイッチを1入力で受けることも出来る >>310
解放って、どうやって判別するんでしょうか? >>311
スイッチに抵抗をつける
車以外でも非常停止スイッチがハーネス抜けて(切断して)動きませんでしだと困るからね >>311
スイッチにシリパラに R を入れればできる。
また AD を使って複数スイッチを1ポートで見るのも常套手段
mTouch (CPS使用 / DAC使用) もある意味 AD
mTouch のマトリックスでテンキー作るサンプルも microchip から提示されていて面白い
ピン数が足りないとき出力ポートのプルアップにスイッチを付けてそのピンの電圧で
スイッチの状態をみるとかやったことがあるが、これは苦肉の策だな。 #define Switch1 (!RA3) //RA3の入力は内蔵プルアップ使用
if ( Switch1 ){...} //スイッチがONなら
if ( !Switch1 ){...}//スイッチがOFFなら
if ( Switch1 == 1 ){...}//スイッチがONなら
if ( Switch1 == 0 ){...}//スイッチがOFFなら
こんな感じでコード書く人いる? >>314
defineでそこまで捻りまくると、わかりにくくなるので、やらない。
if ( RA3 == LO ){...}//スイッチが押されているなら
と書くのが安全。 >>312
キルスイッチとか緊急停止系はB接点でしょ。 元質問の人って流れの考え方で躓いていたわけで、記述の仕方とか、あとまわしでも良いようなことかもな。
ほどほどって大切だな。 V
|
R1
|
+-----+-CN-+--port
| | |
Rb | R2
| Ra |
SW | |
| | |
+-----+-CN-+
|
GND
短絡 GND
解放 R2/(R1+R2) * V
ON (Rb//Ra//R2)/(R1+Rb//Ra//R2) * V
OFF (Ra//R2)/(R1+Ra//R2) * V
保護回路は省略 >>323
具体例をありがとうございます。
大変わかりやすいです。お手数お掛けしました。
でも、SWとRb間の断線はどうやって検出するのですか? >>324
フェイルセーフでB接点な想定ですが、
そこまで信頼性が必要ならSWにパラにRつけたりとかなんでしょうかね、素人なんでわかりません >>321
ハーネス抜け検出の為にループバックを1回路並行に入れたりしますが、どちらにせよ抜け、断線も即停止ですね。 >>325
スイッチをC接点に変えれば良いんでは?
僕も素人なんでよくわかりませんが。 >>325
スイッチをC接点に変えれば良いんでは?
僕も素人なんでよくわかりませんが。 単純にLチカをON/OFFするならMCLRとSleep使うっていう手もあるな、昔よく使った >>330
スイッチの断線がわかる。
選挙、行こう! >>332
パラにRつける方法に対してのメリットは? B接点ってON、OFFの2状態だけど、
C接点って中途半端な3状態目があるのよね マイコンとスイッチが同一ボード上にあるときと、そうでないときとで考え方は変わるし。
こういうときって、最初に「トラブルが起きやすいのは何か」「それを知る必要があるか」
を想定して、そこから構成を考えるはず。
(1)ハーネス外れ、ハーネスコネクタの接触不良、ハーネスの断線
(2)ハーネスの短絡
(3)スイッチの接点不良(押しても反応しない)
(3)はその不良を機械が自分で認識するのは難しいし、
接触していない状態で安全に倒れる設計にしないと仕方がない。
図は>>323とはコネクタの位置が違うけれど。
R2はなくてもいいのでは。
Raのおかげで、開放は検知ができますし、
Rbのおかげで、ハーネスの短絡とスイッチONを区別できますね。 335です。図をあとから描くつもりで書いてなかった…orz >>335に添えるつもりだった図です
>>335
SWのみの2Pコネクタの場合R2は不要ですね
R2は天絡検出用です >>338
ハーネスにVCCが含まれるようなケースですかね。 >>341
>>338ををよく読めよ…。
どういう場合にR2が必要で、どういう場合にR2が不要かをちゃんと書いているだろ? >>342
天絡って、どことどこの短絡のこと言ってる?
コネクターから延長される二本で、どこと天絡すんの? >>343
天絡はこの場合はVCCへの短絡。
>>338は、「コネクターから延長される線が2本のときは天絡を考えなくていい」と書いてるわけだし。
だから「コネクターから延長される二本で、どこと天絡すんの?」という疑問がちょっと外れている。 一応、短絡はハーネス内で起きる確率が高いから対策が必要だ、
という前提がある場合において、ってことだと思うけどな。
地絡は、ハーネスにグランド線がなくても考慮が要求されるケースもあるし。 >>292
(俺が知らぬ間に色々と議論が進んで)
勉強になったろ >>346
いやいや。
>初心者過ぎたらAD
は、おかしいよ。
>>323あたり以降は「必要な場所にはA/D」って話だし。 >>346
全くです。あなたがいないと、良い意見がたくさん出るよ PIC18F14K50のPWMについて質問させて下さい
一番簡単なシングルPWMを使いたいのですが、PWM出力の割り当てが
P1A: RC5
P1B: RC4
P1C: RC3
P1D: RC2
となっています。P1A(RC5)でPWMの出力を行いつつ、RC2-RC4は全く無関係な
デジタル出力ピンとして使うことは出来ないのでしょうか? >>349
PSTRCONで割り当てをピンごとに制御できるよ >>351
返答ありがとうございます!
どのピンだけをPWMの出力とするか設定出来るんですね
もう一度データシートを見返してみます >>329
すみません
これってどうやるんでしょうか? >>353
リセット後にPDを見てSleepならRun、RunならSleepにするだけ、MCLRは10kくらいでプルアップしてGndとの間にタクトスイッチ
>>222を改造しようと思ったけど12F1822がなかったから手持ちの16F18131(8ピン)でやってみた、スイッチ押すたびに点滅がON/OFF
http://codepad.org/nemtKelF
最近のやつはConfiguration bitが多くて面倒だね、この程度なら古い12F629とかで十分(最安ではなくなったけどたくさん余ってる)
OFF時は22uAくらいだったもっと小さくなるはずだけどConfig調べるの疲れたw あれ16F18131じゃなくて16F18313だった >>354
わざわざ10kΩ繋げなくても、内蔵プルアップでよくない? If MCLRE = 1, the weak pull-up in RA3 is always enabled;だったのか、12F629とかの古いやつの癖でMCLRはPull-up必要と思ってた 最近のは便利だよね
When MCLR is enabled and the pin is held low, the device is held in Reset. The MCLR pin is connected to VDD through an internal weak pull-up.
The device has a noise filter in the MCLR Reset path. The filter will detect and ignore small pulses >>356
内蔵プルアップ抵抗を使っても、たぶん動くだろうけど、
内蔵プルアップ抵抗は、抵抗値が大きくてノイズが乗りやすいですよ。
内蔵プルアップ抵抗を過信せずに、
外部抵抗器10kを付けるようにすると良いです。 >>359
外部抵抗器10kを付けるとどれだけノイズマージンが
上がるかを定量的に説明しないと説得力がない。 >>359
内蔵プルアップについて極度に不安を持ってるっぽいけど、低消費電力機器だと
100kΩ超でのプルアップもあるよ。用途や構造など条件次第。
内蔵プルアップを過信するのは良くないのはもちろんだけど、
自分が信じる設計ルールを過信するのも良くないと思う。 MCLRって書き込み時に9Vとかかかるけど、
MCLRからVDDの方向に電圧がかかっても、
PORTとして使う場合VDDからMCLRの方向に電圧がかかっても大丈夫でONOFF可能なプルアップの構造ってどんななんだろう MCLR pinは、vdd 向きの保護抵抗がついていないからか、
ノイズに弱い気がする。 >>363
MCLRは入力専用だよ
よく考えればなんの不思議もない ある研究所に納めた測定器が、二週間に1回位の割合で、スイッチを入れても動作しない、
という難解なトラブルを経験した事がある。
(一日に4、5回電源を入れて、1時間ほど測定する)
最終的に判明したのはCPU内蔵のパワーオンリセット回路のノイズによる誤動作で、
外付けのリセットICを追加して解決した。
CPU内蔵のリセット回路はあまり信用出来ないぞ、と思ったけど、
その時のCPUはPICでは無かったのでご安心をw あ、リセットの話しじゃ無かったのか。
どうも失礼しました。 >>366
電源のパスコンは、ちゃんと付けていたのでしょうか? >>366
電源のパスコンは、ちゃんと付けていたのでしょうか? >>366
パスコンの容量が小さすぎた、大きすぎたってことはないですか? 今のマイコンでもリセットは議論の対象になるし。
昔のマイコン内蔵のものは簡単なものがあったから、余計に問題は起こりやすかったと思う。 USB付きの8bit PICにはVusbというピンが必ずありますが、あそこからUSBとは
別目的で3.3Vを取得したい場合にどのくらい取っていいのかデータシートを見ても
わかりません
1mAくらいなら取得しても大丈夫なんでしょうか? >>375
仕様書に載ってないので、VBAS-2.5kΩ-VSS繋いで(最大2mA流れる)、VBASが3.3V程度に維持されてたら1mA位大丈夫だと思うので実験してみて
ただ、変則的な使い方するより、3.3V作った方が・・・・ 16F628A
で参考書を見ながらスイッチを押している間のみ
LEDが点灯するようにしたいのです
確かに押している間点灯はするのですが、スイッチを押していない間は消灯するはずが弱く点灯しているのです。
こういうことってよくあることなんでしょうか スイッチ押している間だけ点灯ならなら物理スイッチでいいのでは? >>378
スイッチに、プルダウンもしくはプルアップ(回路による)の抵抗をつけ忘れてませんか? 合衆国国防長官が、スイッチうっすら点灯を考えるスレですね >>378
SW押しているときと、離しているときの。入力PINの電圧を見てみる。 >>378
スイッチ繋いでいるPICのピンに、
プルアップ抵抗(またはプルダウンの抵抗)を、繋いでいますか?
スイッチだけでは、マイコンに「H」か「L」が伝わりません。
プルアップ抵抗(またはプルダウンの抵抗)として、10k〜1kΩの抵抗を付けましょう。 スイッチは動作してるからプルアップとかの問題じゃないかと。
LEDのアノードを(抵抗経由で)電源に繋いでて、ポートがRA4ならFETの漏れ電流で暗く光る事はあるかも。
このポートはオープンドレインでプッシュプルじゃないから >>386
プルアップ/プルダウンがあーだこーだと言っている連中は
SWがOFF(オープン)時入力がさだまってなから
SW入力値がばらばらとH,L判定されて薄暗く点灯していると言うことで
OFF時入力を固定させる抵抗を付けろと言っているんだよ >>387
>SW入力値がばらばらとH,L判定されて薄暗く点灯している
すごい間抜けな指摘で爆笑w >>387
えー、そんな微妙な所でフラついてたら貫通電流で素子破壊するやろ。 >>378
思った通りに動かず、作った通りに動いている状態
これをバグという
> こういうことってよくあることなんでしょうか
バグを作ってしまうのはよくあること 378です
プルアップ抵抗を取り付けたところ安定しました
みなさんありがとうございます >>392
ありがとうございます
若干の漏れ電流でわずかに光ってるんですね
とりあえず当面は気にしないことにします。リンクありがとうございました ちなみに >395 は私が書いたものではないので別のどこかの 378さんでしょうか? 目で追えるLEDの反応は超低速のものだけ
LEDの端子にイヤホン付けて音にしてみるといい >>396
LEDに並列に10kΩぐらいの抵抗を接続すると、微小な漏れ電流による点灯は対策できるよ。 関係ないかもしれないけど、点滅させるときにTRISとIOの書き込み順やタイミングによって薄く点灯して原因わかるまで困ったことがあったな >>395
スイッチをVDDとの間に入れて、プルダウン抵抗にしても、
全く同じように動作するよ。 >>395
16F628A なら、PORTBは、内部pullup可能なので、OPTIONレジスタの、RBPUビットを0にすれば、いいと思います。
そして、安定動作のためには、空きピンは、TRISで出力設定にした方がいいです。 >>403
内蔵プルアップは、半導体で生成するため、ばらつきも大きく、
抵抗値が大きいのでノイズが乗りやすいです。
注意したほうがいいですよ。 >>404
注意するのは、環境によりますね。MPU近くの基板上で完結し、かつノイズ源が近くになければ、
そんなに気にすることないです。PIC16F628で 40uA-400uAとなってますので、100Kohmから25Kohmくらいの
感覚です。
それで、ノイズで誤動作するようであれば、CRフィルタを構成するとか、光カプラで分離するとか、
ハード的な対策が別途必要だと思います。 >>405
そうですね。
100kであるがために、ノイズ対策として、CRやフォトカプラーを付けるくらいなら、
初めから外付けで1k抵抗つけた方が、25倍から100倍 ノイズに強くなりそうですね。
内蔵プルアップは半導体で生成するので、静電気にも弱く、
DTCxxxなどのデジタルトランジスタと同様に、注意が要りますよね。 >>405
「内蔵プルアップを使う」という話が出てきたら半自動的に
「内蔵プルアップは、半導体で生成するため、ばらつきも大きく、抵抗値が大きいのでノイズが乗りやすい」って書いてくるんだよ。
そんでもって「ノイズに弱いって、どれぐらい弱いの?数字で出せる?」って聞いたらフェードアウトするんだ。
1週間ぐらいして「内蔵プルアップを使う」という話を書けば、また出てくるから試してみて。 半導体で生成するプルアップ抵抗って、等価回路どうなってるんだろう
半導体で接続するプルアップ抵抗ならわかるけど >>406
そもそも、機械スイッチは、接点の問題あるから、一定以上電流を流せという仕様が設定されるので、
ちゃんと使う場合には、内蔵pullupを避けるとか、
不用意に、低めの抵抗値を選定したばかりに、省電力に失敗するとか、
掘れば、色々出てくるので、ケースバイケースって感じですね。 >>407
ほんこれ
なんか頭のおかしい変な子が居ついちゃったけど夏休みなんだろうか >>410
おさえて、おさえて
このへんでやめとこうよ まあ定性的には間違っていないから、自動車に付けるとか、モーター回す時スイッチ配線引回すなんかはプルアップを外付けにするけどね。4.7k-10kぐらいかな。 そもそもノイズなんて千差万別、多種多様なんだし、
ノイズに強い/弱いを具体的な数字に出すのは難しいのでは?
私も生産ラインなどで24Vを使うような機械に、CPU内部プルアップだけ、という事はやらないし、
趣味の電子工作では、外付けプルアップは面倒だから省略、が多い。 >>413
応答速度が要らないなら、ソフト的に重いフィルター入れれば良いだけだしな。 >>409
マジレスしない方が良いよ
404はネタで言ってるつもりだから
(思いっきり滑ってるけど) 404 Not Found The requested URL /blog/abcde was not found on this server. >>414
ノイズが0V-5V範囲内で収まってくれるならね。 ノイズってどれぐらいのものを言ってるんだろな。
高インピーダンス源からやってくるようなもので、クランプダイオードで吸収される程度のものなら
電源電圧範囲から逸脱して、即アウトってことはない。用途次第。 >>417
そうそう、
スイッチの誤動作という視点だけじゃなくて、ノイズで、MCUのリセットや、誤動作もありますからね。
一応、一部のpinを除いては、保護ダイオードがついていますけどね。 やたら怖がるのではなくて、やばいところがどこなのかを自分で探る経験も必要ですね。 >>419
過去に、入力ピンに直列に抵抗入れずに 内蔵保護ダイオードがあるから大丈夫と勘違いしそうですが
直列抵抗なしでは、入力ピン電流以上になる電圧印加されたら
ダイオードはすぐに焼けてしまいますよね。 ちゃんとデータシートを見ようぜ、ってことなんだけどな。 >>420
そうですよね。
マイコンによっては、データーシートに入力最大電流の謳われていないものもあり、
煩雑になるので、いつも外付け抵抗を付ける癖を付ければ確実ですよね。
たった1本の抵抗で命拾いできるのなら、
安いもんです。 >>421
場合によっては、直列抵抗も、検討しないとだめですね。
また、保護diodeのvfが大きめなので、結局、別途diodeが必要なこともあります。
あと、保護diodeに電流流れると、ADコンバータにoffsetが乗ってくることがあって、慎重にしています。 >>424
よく理解していますね。
ただ、直列抵抗なしではダイオードがオンしたらすぐにダイオード発熱するって、わかります?
外部にダイオードつけても、抵抗無しでは意味ありませんよ。
抵抗あっての保護です。 >>424
例えば、PIC16F1823を見ると、ピンの入力電流は、±20mAです。電源5Vだとしたら
直列抵抗なしでは、ピンに5.7Vかけたら、ダイオード発熱、破壊が進行します。
直列抵抗1kΩつけるだけで、25.7Vまで安全に印加でき、壊れません。10kを付ければ、200Vさえ印加しても、壊れず安全です。
これが抵抗の効果です。CRでフィルター付けたい時は、この1kがフィルター抵抗と兼用でき、一石二鳥です。
出力電流が多く流せるのも魅力ですが、
入力電流が多く流せるのも、PICの大きな魅力です。 >>426
僕のことですか?
残念ながら、僕は正論理で取り込むので
プルダウン抵抗しか使いません。すみません。 >>427
だいぶ頭にノイズを拾ってるようですが大丈夫ですか?
5ch⇔427さんの間にコイル(ノイズフィルタ)が必要ですね
周りがそれとなく馬鹿にしてるの見てると面白いが
今後はノイズ君って呼ぶよ >>427
入力ピンに直列に抵抗を入れるとそこのインピーダンスが高くなってノイズに弱くなる。
その対策として入力ピンとグランド間にコンデンサを追加すると、今度はコンデンサが
充電されている状態でPICの電源が落ちると入力保護ダイオードが危ない。
その対策としてさらに直列に抵抗を追加する。 >>407
内蔵ブルアップ厨に釣られて考察してみた。
PIC12(L)F1822/PIC16(L)F1823 の場合
弱プルアップ電流 最小値 25μA
荒っぽい計算で 5V / 25μA = 200kΩ 相当か
あくまでも仕様上の最悪値だけどな。
基板内の配線で 25μAのクロストーク電流が
流れると考えるとかなり酷いノイズだが、
スイッチまで電線をひょろひょろ伸ばすと誘導
雑音や ESD で誤動作の可能性は出てくるな。
MCLR ではなく、SW の状態を見るだけの入力
ポートなら時定数50msくらいソフトウェア
ローパスフィルタ処理を入れればチャタフリー
にもなるしノイズによる誤動作もほぼ完ぺきに
防げるんだけどな。
量産設計の場合、減らせる部品はひとつでも減
らすのが良い設計で、Rの1個でも減らしたい。
CR付けるなんていうのはもってのほか。
あくまでも量産設計の場合。
ところで、MCLR パルス幅(Low) 最小値 2μs
となっているが
>>358 の
The device has a noise filter in the MCLR Reset path. The filter will detect and ignore small pulses
で、乱暴に言えば 1μs 幅の方形波をぶち込ん
でも決してリセットされないんですね? >>430
そもそも、ノイズに弱くなるほどの大きい値の抵抗を入れる必要はないのでは?
定格は有るが、ダイオードを破損させるような大きいコンデンサはいらないのでは?
仮にPICの電源が落ちた場合(故障によりVDDがVSSにショート等を除き)
VDDの電圧が落ちるのは緩やか(人間には一瞬でも)なのでコンデンサの電気は
クランプダイオードに流れるが破損(発熱)させる程は流れないのでは?
もしかして、427を馬鹿にしてるのでは?( *´艸`) >>431
内蔵プルアップ厨っていうとなんか誤解招きそうだから、せめて
「内蔵プルアップを頑なに拒否する厨」
にして >>427は間違ったこと言ってるわけじゃないけどな。
もっとも、200V、10kΩで大丈夫であるためには、
・クランプダイオードから電源に流れ込んだ電流がどこかに逃げられる必要がある
・継続的なものなら、抵抗で消費される電力も考慮が必要
だし、現実的じゃないと思う。
静電気試験の静電気なら、この計算からは外れる。20mAという定格は継続的な電流の話だし。 >>430
>>427に対してコメントして
>入力ピンに直列に抵抗を入れるとそこのインピーダンスが高くなってノイズに弱くなる。
って書いているけれど、たかだか 1kΩ、10kΩの直列抵抗でマイコンがノイズに弱くなるってさ、
何に由来するノイズなんだろね。
そんな感覚だと、10kΩでプルアップしてオープンドレインで駆動する回路なんて、ノイズが
怖くて使えないんじゃない? 小さいアルカリボタン電池1個で10年ぐらい使えるような電卓は珍しくもないけど、
キーに流れる電流なんてμAオーダーだよ。
日常的に使ってて、どれぐらい誤動作するかな?
ノイズを軽視するのも良くないけど、ノイズの入り方を考慮せずに、ノイズ対策が
必要だ、なんて言うのはナンセンス。 >>435
>>430 の最期の一行で皮肉と思った、抵抗を追加して一行目に戻ると。
>>427 も真性じゃなくネタかも知れないが、内蔵プルアップ否定の方々は電流でドライブしていると考えてるんじゃ無いだろうか。20mAがどうとか、抵抗で消費される電力に考慮とか、1kの外付けで100倍ノイズに強くなるとか >>419
そう言う意味なら、プルアップ抵抗小さめにするよりも、コンデンサを対地に入れたほうが良いと思うが。 >>437
↓この部分をあなたがどういう意図で書いたのかが見えません。
>20mAがどうとか、抵抗で消費される電力に考慮とか、1kの外付けで100倍ノイズに強くなるとか
>>427に書かれている「20mA」は入力電流の最大定格の話であって、通常の信号入力が電流でドライブと
考えてるわけじゃないと思いますよ。
>>483
ケースバイケースです。 プルアップ抵抗値とノイズについて図を書いてみました。
こんな感じでどうでしょうか。
みなさんのご意見をお聞きしたいです。
ttps://imgur.com/a/YNycUcn >>433
最初、「内蔵プルアップはノイズに弱いぞ厨」と書こうとしたんだけど、長いので縮めてしまった。
しっかり理解していただいているようで感激。
>>436
SWまで30cm以上単線で配線して、その辺りでリレーとかソレノイドをバシバシ動かせばノイズで誤動作(L検出)しそうだ。
ただし、SW のオン/オフ判定ならソフトフィルタで十分にノイズ除去可能。
電卓もSWはダイナミックスキャンだろうからソフトで軽くノイズ除去処理くらいやっていそうではある(推測)
>>438
SWにコンデンサをパラ接続するのはSW接点の寿命を縮めるという観点でよろしくない。
>>440 図にしてくれてありがとうという意見です(431) >>441
>SWにコンデンサをパラ接続するのはSW接点の寿命を縮めるという観点でよろしくない
プルアップ抵抗を大きくして省電力を狙った場合、接触不良を防ぐという意味もある。 >>431
>ポートなら時定数50msくらいソフトウェア
>ローパスフィルタ処理を入れればチャタフリー
>にもなるしノイズによる誤動作もほぼ完ぺきに
>防げるんだけどな。
電源電圧を超えるノイズの場合は、どのように対策するのですか?
ハードで部品追加でしょうか? >>445
そのようなノイズが問題にならない用途の話と考えて良いのではないですかね。
ちなみに、あなたが想定しているそのノイズ源は何ですか? >>446
>ちなみに、あなたが想定しているそのノイズ源は何ですか?
ありがとうございます
ノイズ源は、コイルなどの誘導部品やコンデンサなどの大電流流れる部品です。 >>447
それが同一回路内、同一基板内、同一筐体内、同一AC分岐等々条件によって対策がそれぞれですがね。 >>447
あれ? 同一回路内で生じるノイズですか?
>>431が想定している回路ってこの絵みたいなものだよね?
どういう経路で、「ノイズ源は、コイルなどの誘導部品やコンデンサなどの大電流流れる部品」というノイズがやってくるんですか?
(しかもクランプダイオードを壊すぐらいの)
>>449
何か僕に恨みでもあるのですか?
入力端子の配線のGNDに共通の、コイル、ソレノイドなどの誘導源です。
入力SWが開であれば、配線の結束などで誘導があり、
VDD-GND電圧範囲以上のノーマルノイズは、簡単に載ってきます。
電源電圧+0.7Vを超える高電圧が載ってくる状態では、
・入力FETの耐圧も超える可能性
・内蔵の保護ダイオードの逆方向耐圧が破壊の可能性
などがあります。 ID:GVZuNibk
↑
いつもの子でしょ
放置でいいと思うけどなぁ >>450
>何か僕に恨みでもあるのですか?
純粋にテクニカルな話をしてます。
マイコンのポートから長ーい線を引き出してソレノイドやモーターの線と束に
するようなケーブルの向こうにあるスイッチと、
マイコンのポートに近い同一ボード上のスイッチの配線を同じように
考えますか? >>452
>マイコンのポートから長ーい線を引き出してソレノイドやモーターの線と束に
>するようなケーブルの向こうにあるスイッチと、
>マイコンのポートに近い同一ボード上のスイッチの配線を同じように考えますか?
はい、同じだと思います。
もちろん両者間では、ノイズ源との結合度合いは違いますが、
先端のスイッチが開であり、線路がHi-Z(ハイインピーダンス)であることは同じです。
ご存じだと思いますが、誘導部分から発生するノイズ電圧は、VL=L・di/dt[V]ですので、
Lは小さくてもdtつまり開閉時間が短ければ、電源電圧以上の電圧は簡単に発生します。
リレーコイルにダイオードを付けるのは、di/dtを遅くして、発生電圧を低くしていますよね。 >>453
> はい、同じだと思います。
そこが工学的でないんだな。
工学的でないから、ここに居る工学的な考え方をする人と考え方が合わない。
何が工学的でないか?
その1:話が定量的でない。
その2:設計条件を考えずにノイズはあなたが想定する範囲の一本槍である。
その3:部品を増やすことを全く厭わない。 非現実的な仮定を持ち出して、ありもしない脅威をさもありなんというふうに喧伝する
のはやめてほしいものですね >>441
SWは、ある程度の電流を流してやらないと、接触不良になりやすい。 >>453
>はい、同じだと思います。
それはないな。
筐体外のスイッチでも、筐体内のスイッチでも、
スイッチがOFFのときに、HiZなのは同じだけど、隣接しうる配線との静電容量も違うし
配線のインダクタンスも違うし、想定される外乱も違うでしょ? >>456
それが、
>>441の「SWにコンデンサをパラ接続するのはSW接点の寿命を縮めるという観点でよろしくない。」
に対するコメントだとしたら外れています。
コンデンサの放電の電流と、スイッチに求められる最低接点電流を一緒にしちゃだめです。
http://act-ele.c.ooco.jp/blogroot/igarage/article/3040.html 外れてないと思うな。
錆びを吹っ飛ばす目的で電流たくさん流す目的なんだから。
定格電流てのは、流れ続けて発熱する限界とか、融着して遮断できないとか、
そういうたぐいの話だから、たかが数μのコンデンサでどうかなるわけねーわな まあ、どこまで耐えられるかはものによるので気を付ける >>458
接点が壊れる程の、巨大なコンデンサ付けるつもりなのか? これまでの仕事や作品で、習慣的に保護抵抗なしに接点に並列にコンデンサを付けてきた人は認めたくないだろうね。
こんなのでもケースバイケースでいいと思うんだ。
よく使われるタクタイルスイッチ。
筐体内に隠れていて、1カ月に1回押すか押さないかみたいなものなら無くても実質的に問題ないだろうし。
1日に何十回と押される可能性がある操作スイッチなら1uFでも、寿命が違ってくるよ。(そんなでかい C は付けないか) >>454
ですから、
結合度によって違う
と言っていますが、それは読めないんですか?
その結合度によって、電源電圧範囲外の電圧が乗る可能性があるので注意と言っているんです。
では、電源電圧範囲内に収まる理由を、定量的に説明してもらえますか? >>459
接点には、定格電流範囲が決まっていますので、
その電流範囲で使用する事で耐久寿命が設計されているのですから、
それに従った方が良いです。
たとえば、1mA〜50mA定格なら
5V電源なら、最低でも1mA流れるように、4.7kΩのプルアップ又はプルダウン抵抗。
コンデンサの放電時にも50mA以下になるように、5Vなら100Ω以上の抵抗を直列に入れます。
でないと、議論は平行線のままで終わりませんよ。 >>465
あと、意外に知られていませんが、
ロータリーエンコーダーの最大定格電流は、
タクトスイッチのそれより、大変小さいので、注意しましょう。
一度確認されると良いと思います。 ロータリーエンコーダーね。ロータリースイッチじゃなくて。
いきなりエンコーダーの話に飛ぶんだね。フーン >>467
さすがですね。
接点最大電流が小さい事、
ツマミの回転スピードが思いのほか速いこと
などで、やってみると結構苦労しました。 >>464
>結合度によって違う
ということだったら、
>>453においても「同じだと思う」ではなく
「結合度によって違う」になるよね?
>>465
>たとえば、1mA〜50mA定格なら
コンデンサつけて100Ωで電流制限かけるような回路だったら、プルアップ抵抗で1mAを保証する
必要あるかな?
押す直前はほぼフルチャージになってることが前提だよね?
そういや、タクタイルスイッチの定格って厄介
オムロンB3Fだと定格(抵抗負荷)が DC3〜24V 1〜50mAで最小適用負荷(参考値)がDC1V 10μA。
アルプスは 最大定格が50mA 12V DC、最小定格が10μA 1V DC
オムロンは3V以下が定格外で、参考値扱い?
電池で動くような回路だと3V未満で使うことになるので、昔、オムロンに尋ねたことがある。
結局、問題はありません、みたいな話になったような気がするけど、詳細は忘れちゃった。
気になる人はオムロンに聞くか、他のものを選ぶべきでしょね。 >>469
> >>467
> さすがですね。
ID:6dJ0z6pZ って頑なでマジメな人なんだろな。
>>467が「ロータリーエンコーダでのチャタリング」に見えたんだよな。
俺、さらっと「幼女対象の援助交際のチャット」に見えたよ… 6dJ0z6pZ → 5ch 入力感度が高くノイズに弱い(反応しなくて良い状況で過剰に反応する)
・6dJ0z6pZの感情にばらつきも大きく周囲に影響されやすい
・本体機能(プログラムを含む)対策が困難なため、周辺部品で対応する必要がある(外部フィルター等)
・信号ソースとして正理論しか受け付けないので負理論が必要な場合は周辺部品で対応する必要がある
5ch → 6dJ0z6pZ 出力特性が悪く意図しない出力が起こる(かつ周囲にノイズをまき散らす)
・信号の波形が乱れてるため、フィルターにより整形が必要(文章がわかりにくい)
・意図しない出力があるため入力感度を落とす必要がある(聞いてもいないことを答える)
・プログラム(脳)にも不具合があるため、意図しない出力が起こる
5ch ⇔ 6dJ0z6pZ
・誤動作を引き起こす可能性があるため、周辺と距離をとる
・そもそも信号レベルやフォーマットが合わないため通信できない
・不良品の為グランドが接続されてない
6dJ0z6pZを扱う場合の注意点です
>>471
もしロリータエンコでチャットなら設計も丁寧かつ慎重にしないとリスクが大きすぎますね そもそも何の話だっけ?と思って遡ったら、スイッチでLチカから来てんだね。 電子回路は、SWとLチカだけでも、掘れば色々あるってことで、もういいんじゃないですか? 今や人工知能とカメラと液晶付いたマイコンボードが20$だからね
ジェスチャーや手話でLチカコントロールしなくちゃ 1000pFか…
それで何が防げるかだよなあ。
10kΩとの組み合わせだと、1000pFの時定数が0.01m秒。チャタリングの防止にはしんどそう。
静電気試験の人体モデルは100pFだし、1000pFでは緩和はあまり期待できなさそう。
機器から出ていく電波は低減できるかな。 そもそも、メーカがわざわざコストかけて付けてる機能なんだから、それでほとんどの場合はカバーできるって前提なんだよ
ほとんどの場合無意味で、ごくまれな場合だけ使える機能なんてデフォで付けるわけ無いだろ
極端に遠くまで伸ばす。極端に周辺ノイズが多い。特殊な(センシティブな)スイッチを付ける。
そういった特別な場合には標準以外のケアが必要になるが、普通にLチカするだけなら外付け部品付けなくても無問題 >>479
そんな正論が理解できる子でもなさそうなので言うだけ無駄 >>479
>極端に遠くまで伸ばす。極端に周辺ノイズが多い。特殊な(センシティブな)スイッチ
極端に遠くとは、何cmの事ですか?
極端に周辺ノイズが多いというのは、定量的に言うと何がいくつのことですか?
特殊な(センシティブな)スイッチって、具体的に何ですか? >>481
内蔵プルアップはノイズに弱いので、10kΩでプルアップすると良いと頑なに主張しているキミだと思うが、
どういう条件で内蔵プルアップがノイズに負けるのか先に述べてみたら?
直観で申し訳ないが線長10cmで隣接する線が20mAでオンオフ駆動しても内蔵プルアップが負けて誤動作するとは思えない。 >>478
チャタはソフトで処理するだろ。
ハードで処理しようとしたらRSフリップフロップ使う位しか無い。 ご存じの通り、世の中には色々なところでCPUボードが使われています。
CPUボードの1、2m先で数KWのサーボーモータが回ったり止まったりしてる機械もあるし、
1KWx200個程度のヒータをオン・オフして温度制御しているいる機械もあるし、
日本でも有数の雷多発地帯にある温泉旅館で、冷暖房機器や照明機器の制御をしている機械もあるし、
とんでもない高電圧で放電して着火するプラズマスプレー装置なんて機械もあります。
皆さんがこちらで議論されている内容はなんだかとても上品な感じがしてほほえましいですね。 >>485
あなたがそこに例示したような用途なら、ここで「内蔵プルアップでOK」って言ってる人たちも、それなりにガードする方法を考えると思うよ。
大切なのは用途によって手法を選択する柔軟性じゃないですかね。
「内蔵プルアップはノイズに弱いので、10kΩでプルアップする」って頑なに言ってる人は、この能力が欠けているように思います。 >>486
最近のPICは、内蔵pullupの設定は、mccを使ったりして、比較的簡単だけど、
古めの型番だと、設定できるポートが決まっているとか、
個別のPIN単位で設定できないとか、
新旧かかわらず、optionレジスタや、割込みレジスタとかで設定するとか、見落としがちなので、
最初から、抵抗でpullupするという方策は悪くないです。
初めての型番のPICを使うときは、Lチカで、まず、内蔵機能を除外して動作確認してから、
オシロつないで、想定どおりのFRQで動作しているか?Pinのi/oは設定できているか?
等のチェックしてから、いろんなことを考えます。
内蔵機能を極力使う方向で、プランするのは楽しいです。 ホントめんどくせえ奴らばっかりだな。
プルアップ抵抗の話で良くここまで盛り上がれるわ。
全く面白い盛り上がり方じゃないけど。 >>487
>最初から、抵抗でpullupするという方策は悪くないです。
僕もその口です。
たかが抵抗1本入れるだけのことですから。 プルアップしたいときは出来るだけ内臓のプルアップで何とかするけど、
どうしてもプッシュダウンしたいときがあってそればかりはどうにもならない
からなぁ。ならプルアップもプッシュダウンもどっちも外付け抵抗でいいやって
感じかな今は プッシュダウンなんて言葉聞いた事無いけど、どの方面で通用するの? >>492
プルダウンの間違いだろう。いじめるなよ。
>>491
ぼくもデータシートでレジスター探すのが面倒なので、
必要なときは抵抗外付けしてる。プルアップもプルダウンもやるよ。 内臓のプルアップとかプッシュダウンとか、筋トレスレかと思ったわ プルアップの反対語のつもりで創ったんだろうな😏 >>490
基板作るときは、外部抵抗のパターンだけ作っておいて、逃げれるようにしておきます。
チャタは、ソフトで対応します。
SWイベントを、割込みで対応するときは、ノイズ対策を含めてハードで対応が必要なケースがある、 手入力を割り込みでとか、何かの間違いじゃないのか?
タイマーで定期的に呼ばれる割込みでポーリングっての以外ダメだろ。 >>501
どろどろしてそう。(あるいは「はたらく細胞」にでてきそうな) MC6800のスタック命令はPUSH,POPではなくPUSH、PULLだった でもプルアップは微妙だぞ
テレビ用と録画機用をひとつにまとめたリモコンつくってるんだけど、
切り替えスイッチがたまにうまくいかない
外付け抵抗がいいのか悪いのか結論がでない >>505
2つの出力を、
どのようにORしたのか、
それにプルアップがどのように関係しているのか、
説明がないと、分からないよ。 >>505
プルアップするなら、ピンそばじゃないと意味ないんじゃない? プルアップがピンそばじゃないと意味がない、大変興味深いです
パスコンについては小学生でも知ってる常識だけど でも「パスキャパはピンそばが常識」とか言いながら「なぜピンそばじゃなきゃ駄目なのか?」
ていう本質をぜんぜん理解してない子が多くて図みたいな配線しちゃってる子がまじで
多くて思わず失笑
>>516
この図で「俺が何を言いたいのか理解しろ」というのはちょっと無理があると思う。
この図で言いたかったことは何? >>517
逆に言えば「この図のどこがおかしいのか分からない」あなたはやっぱり
事の本質まで理解出来てるわけじゃない、ってだけですよ
よかったですね 雑すぎるだろ
右下がICだと理解するのに時間掛かったわ >>519
俺もわからん、配線と言ってるがIC以外は回路図でしょ? VCC端子の近傍にコンデンサを置いたら、あとは基板上にしっかりと作られた
グランドプレーンに落とすのはよくある処理だよ。
「VCC、GND間にパルス状に流れる電流の吸収」という物語に拘っても仕方がない。
>>522
アマチュアの趣味の範囲ならぶっちゃけそれでいいんじゃね?
プロがそんなパターンかいてたらぶん殴るけど >>525
どう考えてもコの字型にパターンを引いてるのがダメでしょ
パターンを引く機械の精度の良し悪しで仕上がりが変わっちゃうから、
出来るだけ真っ直ぐな線を引くようにパターンを考えるんだ
この場合、ICから真っ直ぐにパターンを出して、コンデンサを接続すると良い
画像のようにするとエッチング液がパターンの角に溜まって余分にパターンを削っちゃう
すると伝達効率が変わって信号がおかしくなるから避けるべきなんだ
まあ、慣習に近いよね >>515
適当言ったわwwwww
プルアッププルダウンがしっかりついていないか、VCCがおかしいとかかな?
ICに入る電源がしっかりしているかを確認して、
データシート通りに接続されているかを確認するべきだと思われる プルアップとプルダウンは電気的に電圧が高いか低いかを明示するためにあって、
ICの0と1の判定がCMOSによって行われるときに使用されるんだよね
だから、プルアッププルダウンを付けていたとしても
配線がクッソ長いとあんまり意味がなくなるから、
考えた方が良いって感じかなぁ パスコンのpターンなんてケースバイケースだわな
がんばってまっすぐする必要があるかはわからないよ。
場合によっちゃパスコンなしでもOKなんだから。 BGAの時代になってもDIPの頃から進化してない回路屋さんがいたなあ
BGAの全てのGNDとVDDの入り口にパスコン入れろ、VIAはNGで直接接続しか許さん、みたいな >>529
オープンコレクタ・ドレインのプルアップ抵抗器がケーブル数m引き回した別筐体になんて普通だし、プルアップ・ダウン抵抗器までの配線が長いと無くなる「意味」とやらを説明できますか?
まさかGHzオーダーの話じゃないですよね。 ID:vg/Upj+m って、頑なさがあるな。
内部プルアップはノイズに弱いからダメ、と同じ感じ。
>>531
どんなものでケースバイケースだよな。
VCC、GNDがすげえ多ピンになってるパッケージで、昔と同じことなんてできないのにな。
で、結局、>>516の何がどう、どれぐらいいけないのか説明なしで書いた本人は
書き逃げか。 I2Cバスに複数のデバイスが接続されているときに、プルアップ抵抗をどこに配置するのか
>>529って変に悩んでしまうのかな? >>532
>オープンコレクタ・ドレインのプルアップ抵抗器がケーブル数m引き回した別筐体になんて普通
無事に動いてラッキーですね。
たまたま動いているだけかもしれないですよ。 「どんなものでケースバイケース」 >>533 が真理を書いたな。
逆にいえば「これで全てOK」もありえない。 >>535
動くように設計してその意図通りに動いてるんだけどね。 >>533
えぇ…どこに頑なさを感じるのか理解できないんだけど…
ケースバイケースってのは基本があって例外も多数存在するってことだろ
俺が言ったのはただの基本でしかないだろ
設計するなら例外なんて存在して当たり前なんだから、
そりゃ例外に当てはまるならやり方を変えるのは当然だろ >>532
え、kHzオーダーの話ならそんなん悩まずに適当に付いてるだけでいいだろ
逆になんで悩むのか知りたいわ
>>534
同一の基板上で収まるならそんなんパターンの隙間に入れときゃいいだろ なんでもかんでも原則のないケースバイケースで
片付けようとする人がいるけど、やめた方が良いよ
ケースバイケースは原則ありきでそれに囚われないって意味だから
原則はない、って言っちゃうのは誤りだ >>541
まったくその通りだと思う。
後輩「先輩! ここは100kΩで いいでしょうか?」
先輩「ケースバイケースだね」
後輩「・・・・ (決め方知らないんだな。わからないって言えばいいのに)」
ケースバイケースって
解決方法(引き出し)をたくさん持っている人が、使う言葉だよね。 ここってどこだよ? 回路図だけで決まらない場合もあるぞ。 >>542
目の前でここはって聞いてるのにケースバイケースって…。 俺先輩なら「この先どこ繋がってんの?」くらいは聞くな。 俺が先輩なら、どうして100kΩで良いと考えたん? って聞くだろな。でないと教育にもならんし。 >解決方法(引き出し)をたくさん持っている人が、使う言葉だよね。
そういう面はあるでしょね。
だから、そういう人はベストな正解って滅多にわからないし、それだけに人の選択をたやすく
ダメって言うこともないんじゃないかな。 ケースバイケースは原則ありき、っていうのは間違ってないけど、使い分ける原則もいろいろだろ?
プルアップで心配する周波数について、
「GHzじゃないよね? 」と突っ込まれたら、「kHzで何を心配するんだ」なんて書いているけれど、
ID:vg/Upj+m としては境界はどこにあるんだろう。
ところで、
>パターンを引く機械の精度の良し悪しで仕上がりが変わっちゃうから
この機械ってどんな動作をする機械なんだろう。
(もしかしたら、かなり古い機械を使ってる基板屋さんと懇意にしている人なんかな?) >>549
プルアップの目的による。
電源起動時に電位確定させる為とかなら、余り気にする必要ないだろ。 >>550
いや、↓このレスのコメント先の>>532はオープンドレインの回路のプルアップに言及したものだし。
>>540 >kHzオーダーの話ならそんなん悩まずに適当に付いてるだけでいいだろ
パターンの恰好でダメとか言ってるわりに、このあたりを「適当でいい」と言うというちぐはぐさは、
影響の出方、程度を考慮してないせいかな、と思ったよ。 動作がKHzだからKHzの考え方でいいや
アースは一つ、5V電源も一つ、だから5V電源とアースの間の動作だけ考えておけばいいや
って思ってるんじゃね ピンそば発言した人は信号の反射を防ぐ終端抵抗と話がごっちゃになってるんでは?と思った
リモコン内のスイッチのプルアップなんぞ、狭い・遅いなのでどこでやっても大丈夫(と敢えて断言してみる) ホントは、kHz, MHzとかの周波数は関係なくて、
dv/dtなんだけどね。 ここの人達はハワードジョンソンのブラックマジックくらいは読んでるのかな
かなり昔の本だけど でも後輩が付けない図面出してきたら、迷わず突っ返す。 プルアップ抵抗ををパスコンと間違えたのを素直に認められなくて逆ギレしてるだけだろ。 結線を描きこむようなすべての図(たとえば取説のブロック図の中の結線)に
CAD使うとは限らないと思う。
急いでいるときは手描きもありだし。
ドローソフトを使う人も多いんじゃないかな?
そういや書籍のイラスト混じりの回路図ってどんなソフトで作成してるんだろう。 >でも後輩が付けない図面出してきたら、迷わず突っ返す。
幾度も見かけたフレーズだけど、
後輩の教育もままならない無能な先輩弁慶の、
せめてもの遠吠えにしか思えない。 >後輩の教育もままならない無能な先輩弁慶の、
>せめてもの遠吠えにしか思えない。
「にしか思えない」は経験値が少ないとか、かたくなだとか、そういうことの現れであることが多いね。
多くのことを知っていたり、柔軟な考え方ができれば、他の解釈もできるわけだし。 >であることが多いね。
と言い切るお前とさほど変わらんだろw
お前だって「多い」と勝手に思い込んでるだけ >でも後輩が付けない図面出してきたら、迷わず突っ返す。
とわざわざここでイキる理由を考えると、
直接は言い出せないネット弁慶さん的な弱腰の現れであることが多いね。 まあな、そういう図面出してきた段階ですでに効率を悪化させてる
つまりその時点で教育不足は明白で、無能な先輩がここで偉そうにしてるのは逆にみじめ 「であることが多いね」はここの人を見ていての、俺の感想。
そういう人は、「にしか思えない」ことはない他の可能性を論じても動かないし。 ID:b3FKHEEJ は思い込みが激しいように見える。
>とわざわざここでイキる理由を考えると
これは「そういう行動規範を持っている」とも解釈できるわけで、イキっているとは限らない。
>そういう図面出してきた段階ですでに効率を悪化させてる
>つまりその時点で教育不足は明白で、
実際に様々な人に教えていれば、教育不足は明白という感想にはならないだろうし、
教えていなくても学校に行っていて、まわりが見えている人なら、たいていはこうは
思わないだろね。
その図面を突き返されて、理由とするべきことを説明された人が、今後も同じことを
何度でもすることは、レアケースでもないんだよな。
考えてみてほしい。
教えれば必ず習得する。ルールがあれば必ず守る。宿題が出されたら必ずする。
そんな人ばかりだったろうか?
>みたところCADも使えない先輩らしいしw
根拠ないし。 >>ID:loYpvCTK
>にしか思えない
も感想だね。
屁理屈と揚げ足取りだけで6レス、乙
あなたには、毎度毎度頭が下がりますわ そして7レス目はさらに盛るw
この傾向もいつもの通り >>560 = ID:loYpvCTK か?
違うよね。
なぜそんなに頑張る、馬鹿なの? >>577
どーでもいい言葉尻とらえてこねくり回すのがコイツの生きがいだから
住人の全員が「また出た」と思いながらニヤニヤ眺めてる >>574
よほど低レベルな連中に囲まれている模様
逆に気の毒になる ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch.net/test/read.cgi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 >>ID:loYpvCTK
狂犬病の野良犬みたいな奴だなコイツ
何か見かけるたびに言葉尻とらえて片っ端から食って掛かる
反論されても決して引かずに屁理屈の上塗りで吠え散らかす
掲示板であるという制約がこの狂犬に対する唯一の首輪であり鎖 560だけど。
CADにせよ手書きにせよ 伝わらない可能性のある表現は止めよう
と思うのだが、これすら否定されるの? >>582
>反論されても決して引かず
いや、反論があれば対応するよ。>>574よりあとは罵倒はあるけど反論はないしなあ。 >>580
>よほど低レベルな連中に囲まれている模様
そういう人が存在する、という話を読んで、そういう人に囲まれている、と解釈する? >>583
黒丸なしのT字結線を見て、どういう解釈をするか、なんだけど
(1)今は黒丸なしでOK。結線されているとナチュラルに解釈する。
(2)今は黒丸なしでOK。昔の習慣があるから違和感はあるけど結線されていると解釈する。
(3)今は黒丸なしでOK。結線されているとナチュラルに解釈するが、違和感がある人への配慮が足りない回路図作成者だと思う。
(4)間違いだろうこれは、と思いつつ、消去法で結線されていると解釈する。回路図作成者のレベルが低いと考えたりもする。
(5)間違いだろうこれは、と考えて、結線されていると考え及ばない。
逆に、T字結線に黒丸が間違いだと教わったと言った新入社員もいた。(もちろん抵抗は□以外は認めなかったそうだ) >>521
接続の黒丸、回路図のCADとか言ってるからやっぱり回路図なんだよ。それでパスコンの位置がどうとか謎かけされて後輩は困惑しない?
プロの方たちはあれで意志の疎通が出来るのかな、齟齬なく進捗するの? つか指摘ばかりして後輩や新人に観点を教えとらんやろ
「先輩の背中を見て育つ!」
「技術は先輩から盗むものや!」
とか思うとる教育能力言語化能力の無さが日本のITを劣化させたんやで ググればなんでもわかる時代にしょうもないことまで先輩に頼るなよ
技術は先輩じゃなくてネットから盗むんだよ
日本のITが劣化したのはエンジニアを低賃金で使い捨てにしているからで、教育とかそういう話ではないわ ITだけじゃないだろ、ものづくり全般駄目になってきてる。
>>590
でも大手こそインターネットの閲覧は禁止されてるんだよなぁ……。
くだらないサイトだけじゃなくてネットそのもので情報流出するからって、関連用語検索させないようにしてたよ。 >>588
言葉だけより図がある方がいいのはもちろんなんだけど、
>>516みたいに半端な図だけ書いて説明なしに失笑してても伝わらないと思う。 >>589
今でもそんなレトロなところあるんかな。
でも基礎的なところはともかくとして、この業界は技術の変化が激しいし、新しい人は
技術に関しては先輩と同じことばかりに習熟してればいい時代でもなくなってる。
だから、先輩や上司が教えることができないようなことを身に着けていくべきだし、
そういう意味では、教育を先輩、上司から受けることを期待しちゃだめだと思う。
職能教育に関して先輩、上司に期待するなら環境整備(学校やセミナーにいかせて
くれる、自主的な学習のために本や機材を買ってくれる)じゃないですかね。
>>590
使える人は、使い捨てにはされてないんじゃないかな。できるが故に酷使されて
潰されている人はいるけど、それは低賃金で使い捨て、とはちょっと別の話。
その仕事で使えない人は、さっさと別の仕事を見つけられる世の中の方が、いいとは
思うんだけどな。やりたいことや憧れと、実際にできることとは違うし。
やりなおしがききにくい日本のはたらく環境作りがわるいかも。 先輩と同じことをやっていても仕方がないって話の縮図はどこにでも見つかる。
PICだって、基本は大切だからといって、古いタイプ16Fとアセンブリ言語推しの人が
新しい人に、アセンブリ言語の習得をしなくちゃいけないような言い方をすることがある。
古い人の教育を期待するより、自分で拓いていく方がいいと思うんだ。 アセンブラはC言語がある程度自由に使いこなせるようになってからだな
そしてインラインアセンブラ使えるようになればそれでいい
すべてをアセンブラで書く必要は無いし、C言語からアセンブラを呼び出す場合は
あらかじめC言語に用意されてる関数なども使えるからね >>595
C言語はアセンブラがある程度自由に使いこなせるようになってからだな
そしてマクロとリンカ使えるようになればそれでいい
すべてをC言語で書く必要は無いし、アセンブラからC言語を呼び出す場合は
あらかじめリンカに用意されてる機能なども使えるからね PICやAVR等の小さなCPUを電子工作プログラミングするならフルアセンブラの方が楽しいぞ。
実行速度やプログラムサイズを追及できるし、CPUの持つ能力を余すところ無く発揮する事もできる。
楽しさを求めないプロなら話しは変わるが。 そう言えば、私が生まれて初めて作ったアセンブラはアブソリュートでmacroもifも無かったな。
アセンブリ制御命令はORGとEQUとDBと$(実行アドレス)と後は何だったろ?
でもちゃんとニーモニックをアセンブルできたのでメッチャ役に立った。 >>597
楽しさを求めるといっても、プログラミングそのものを楽しむとは限らんしね。
それにプログラミングの楽しさを感じるポイントもひとそれぞれ。
何が面白いんだそれ、と感じることはあるだろうけれど、人の楽しみを理解できなくて良いんだよ。 揚げ足取り中毒患者>>ID:4roqFCrq常用万能口癖
「〜とは限らん」 プログラムして動かすだけならともかく、一週間も経ったらデバッグするのが苦痛でしかないわ
そうでないプログラムならなんで作っても変わらない >>600
ていうか、その人すごいよね。
>>ID:loYpvCTK
>>ID:4roqFCrq
IDでまとめて馬鹿にされてるだけでまともなレスが1つもついてないw
暗黙のNG推奨なのかな? >>601
お前は好きにしろ。
初心者にゃ薦めないってだけだ。
それくらいの分別とスレタイ読む能力くらいはあるだろ? >>602
>暗黙のNG推奨なのかな?
基本はそうですが、時々暇つぶしにからかってやります。
とても喜びます。 ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch.net/test/read.cgi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 トランジスタ技術のスレ 3
>241 : 774ワット発電中さん : 19/08/13(火) 02:39:15.13 ID:raMFt5rE
>交通事故を起こして2人も死なせているのに、
>免許取り上げだけで、逮捕もされない
こういうスレチな事を書いてる自称初心者が言っても説得力がないね >>605
現実は上級者?が斜め上のアドバイスするスレだな。w ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch.net/test/read.cgi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 質問させてください。12F1822でPWMを使って音を出しています。
電源は5V、デューティ比は50で、周期を変えることで音(およそ400Hz〜2000Hz)をつくりました。
参考にした作例では圧電スピーカーをPICのPWM出力ピンとGNDに直接つないでいましたが、
私はインピーダンス:8Ω@1kHzと書かれたダイナミックスピーカーを使いました。
しばらく作例と同じようにスピーカーをPICのピンとGNDに直接つないで試作をして音は出たのですが、気になることがあります。
ダイナミックスピーカーの場合、実際にコイルに電流が流れていて、矩形波の場合はわからないのですが、
高校物理の知識では正弦波の交流であれば電圧の最大値をV0、リアクタンスをXとすると、電流 I = (V0/X)sinωtとなり、
この場合だと瞬間的には5V/8Ωの625mAが流れてしまっているのではと思いました。
しかし、そうであれば電流が大きすぎてPICが壊れそうですが、普通に音はでています。
矩形波の場合、電圧の立ち上がりが正弦波より急なのでもっとリアクタンスが大きくなり電流が抑えられているのかもしれませんが、
いずれにしてもピンとスピーカーの間に適切な抵抗をはさんだほうがよいのでしょうか。
試しに330Ωの抵抗をピンとスピーカーの間に入れたのですが、若干音が小さくなるので、長期的にも問題が無ければ抵抗なしがよいのですが、いかがでしょうか?長くなり、申し訳ありませんがよろしくお願いします。 >>610
普通にオームの法則を適用すればよろしい。
スピーカーの抵抗値をまずテスターで測って、その値で電源電圧を割れば
電流が決まる。
それが出力ピンの許容範囲に入っていないなら、入るように抵抗をかまして
電流を減らすしかない。 でないと過熱して壊れるぞ。 ダイナミックスピーカのインピーダンス特性は結構複雑
コイルに電流を流すと磁力によってコイルが物理的に動くからコーンの大きさや重さなどにも影響する
「スピーカー インピーダンス特性」で画像検索するとだいたい似た様なカーブのグラフがいくつか出てくる
純抵抗なら横一直線、コイルだけなら右上がりのはずだが、実際は100Hzより低いところに若干ピークがあり1kHz付近で最低となってその後上昇というのが代表的なカーブ
→かなりザックリと等化するなら1kHz〜10kHzで純抵抗に置き換えできないこともないが… >>610
PICの出力してるFETにON抵抗があるのでそんなに流れない
25mA最大で考えるなら
8Ω+保護抵抗+FETのON抵抗=200Ω >>610
スピーカーが純粋な抵抗と考えれば
計算上はピークで 5V/8Ωの625mAが流れる。
しかし、PIC の仕様は I/O ピンから流して良いのは最大 25mA
なので、8Ω をつなぐと 25mA以上電流を流そうとしていることなので仕様違反。
では実際に 625mAが流れているのかと言うと PIC が仕様違反に耐えかねてある程度までの電流しか流していない。
つまり出力電圧は 5V からはるかに下がってしまっているはず。
また、仕様違反だからといってPIC の実力によってすぐに壊れるものではない。
しかし、仕様書上は 最大 25mA。つまり、それを超えて使うことをメーカーが保証していないので、全て自己責任ということになる。 暴走はしてないし、すぐには壊れないが確実にダメージを受けている。
なんで、仕様書通りに使わないのか?
得体のしれぬ 「作例」 とやらにこだわるのはなぜか? >>611
良くないことは明白
抵抗入れたら小さくなった
なぜその他の対応策を考えない? >>610
音を大きくしたいなら、トランジスタ一個追加して必要な電流取れるように回路追加しなさい。 あまり部品を追加購入したくないのかな。アンプとか。圧電のところにダイナミックを使うぐらいだし。
抵抗なしの直結は避けた方がいいし、できたらコンデンサを挟んで交流分だけを通す方がいい。
過渡的には大きい電流も流れるけれど、実質的にスピーカーを±2.5Vで駆動するのと同じ。(100Ωで25mA)
コンデンサは10uF〜47uFぐらいで。(適当)
赤外線LEDの時も同じような話あったけど、
スピーカーって電圧かけっぱなしにしねーべ。
正弦波みたいな断続的な出力なら問題ないと思うんだけどな… 更新してなかった。
>>620の案いいんじゃない? >>620
電源入れた時にボツッっていうんですよねぇ >>623
PIC使ったこと無いけどI/O端子はパワーオンでは入力モードじゃないの?
何もしないとプチッくらい聞こえるかも?
プログラム当初で出力モードにして正論理(基準がゼロV)でPWM出せば良いんじゃない? >>624
ご理解の通り原理的にカップリングCの充電電流が生じますので
PWMでバイアス変動(充電電流の波形)を整形してボツ音に聞こえにくく
する対策はよくされますが程度問題ですね
2ポート使ってBTLにすればもう少しよいかもしれませんね〜
(ポートが余っていればの話ですが) >>611-625
皆さんありがとうございます。
やはり直結は避けたほうがよさそうですね。アンプや別電源はスペースと消費電流の関係で
さけていました。あとだしですみません。
200Ωの抵抗と,100Ωの抵抗+47uFのコンデンサーを試してみて,
ボツ音は気にならなかったのと、音量も大きかったので後者がよいかもしれません。
ありがとうございました。 >>626
後出しは5chではあるあるですので目くじら立てても損するだけです >>628
じゃあ今後5chでは「まず後出しすんじゃないぞ」や「まさか後出しすんじゃないだろうな?」から回答レスを始めないとな で、そのあとに「長すぎる3行で」というレスが付くところまでがデフォ >>630
それは言っておいてもいいかもしれないですね
そして情報を出し渋る人には回答しないという感じで
基本的に自己解決すればいいだけの話なんだけど、それができないから
訊いてきてるのに、回答に必要な情報を出し渋る理由があるということは
その時点でお察し案件だということですので >>632
どんな情報が必要なのかがわからないのも初心者。それは出し渋りとは別の話。
それに、最初からありとあらゆる情報をどかっと書いたら長文読めないって
言う人だっているし。
教える方も何が必要な情報なのかを聞けばいいと思うんだ。それがコミュニケーション。
>>629
じゃんけんとは違って、5chでの会話は、勝ち負けじゃなく、お互いの知識を交換して
高めあうことだよね。 >>610の質問はPICにスピーカを直結することに関してで、「アンプや別電源」は
質問の範囲外で後出しではないと思うが。 >>637
特に強制されていることではありませんので、そう思われる方は回答不要かと存じます >>627
出てきた要件の範囲で黙って答えればいいんだよ。
ホント、小さい奴だな。 >>638
もちろん回答しないさ、そもそも読んですらいないのでね。
読んでやってもいいかな、ってレベルが3行以内ってことだ。
勘違いすんなよ、バカなのか? まあ、正直、長すぎる質問には回答する気が起きんよね
PICや電子工作以前に、自分の考えがまとめられないヤツってことだから
回答しても無意味ってケースがほとんどだし、事実>>610もその様相 >>638
テメエ、なんだその言い草は!
簡潔にってのは質問者のためを思って、老婆心から書いてることだ。
そもそも質問に何の強制力も無いの。
何でもかんでも首突っ込みやがって、いいかげんうぜえぞ馬鹿が。 >>645
馬鹿はいちいち口出してこなくていいよ
消えて >>ID:loYpvCTK
>>ID:4roqFCrq
>>ID:zHd247m7
確かに う・ざ・い >>646
消えてと書けば消えると思ってるお花畑。
他に言葉知らんらしい。 >>610 が長くて読む気がしないって、なんだろなそれ。
冗長でも詳しい方がいいよ。質問の内容によっては、図が付いているとなおいいことが多い。
もちろん足りないぶんは、回答する人が聞けばいいわけだけど。
簡潔に不足なくまとめられる人なんてそんなにいない。
文才とマイコンを楽しむ才能が同じ人に宿るわけじゃないから、詳しくかけば良いと思う。
それに、できてるつもりの人って、たいていは情報を欠落させている。
ただ、読む気がしない、っていう人はそのあとのコミュニケーションでも面倒くさいことが多いし
フィルタをかけてると思えばいいかもね。 面白い。
冗長を良しとする>>649は冗長、260文字
良しとしない>>650は簡潔、16文字 まあねえ、簡潔な文章は知性の反映だし、一朝一夕に書けるようにはならない
書けないことが悪なのではなく、書けないことを棚に上げて>>649のように言い訳ばかりしてるヤツが悪 >>649
>足りないぶんは、回答する人が聞けばいい
この前の2行を自己否定、つまりここまでの3行は不要。
「簡潔に〜させている。」のフレーズはただの思い込みと決めつけ。
「ただ、〜いいかもね。」のフレーズで、結局は自分の意見と違うものを排除したいだけ
とやっとわかる。
冗長な文章の典型。 >>654
ほう、簡潔なレスも出来るじゃあないか、とっても偉いぞ。 ただの事実を述べただけでこのなぞの叩かれよう
心に余裕がないんですかね
人間の心の動きは興味深いです >>656
>ただの事実を述べただけ
と高をくくって過ごしてきているからこそ叩かれてるんだろうけど
そこには気づかないだろうから、結局ずっと叩かれるのよ、あんたは >>656
議論をする代わりに叩く人は必ずいます。だめだなこりゃ、と思ったらそれ以上は嘆くより無視。
いつもの
https://togetter.com/li/1356035 >>656
>ただの事実を述べただけ
それの何が悪い。
決して自分に非があるとは思わない。
この感性、たたかれる人の典型ですね。
ゆえにたたかれる。
でもいいじゃん、楽しいんでしょ? 冗長さの議論してるのに「叩かれた」ことにして逃げ出してるんだから、そりゃ叩かれますわな。
自分の冗長な文章に対する弁明、有用性を述べればいいだけのことなのに、それはしない、すり替える。 >>658
×議論をする代わりに叩く人
○議論をする代わりに叩かれたと逃げる人 元来が訳の分からん屁理屈を並べた長文で煙に巻くタイプだからな、
こと冗長さがテーマじゃ「叩かれたー」でケツまくるしか術がないと思われる。
頭は悪いがそういうずる賢さは身についてる。 >>663
いつものアイツだなって思い浮かぶのがいるけど
たいがいケツめくって遠吠えて終了してるよ
揚げ足取って取った相手に叩かれ、それ以外からは無視されてるw 簡潔に書くのは少し訓練が必要やで
サラリーマンですら出来ひんのが多い
一つの文章を短く、箇条書きで書く事を心掛けよ ホント、PICスレはネチネチとしつこくて面倒な奴ばかりだな。
PICなんかイジッてるからこんな粘着質の性格になるんだろうな、
イヤ待てよ、こんな性格だからPICをイジってるのか?
ふ〜む、それが疑問だw わざわざ自分から肥溜めを覗き込んで、
何だこの肥溜め臭えな
肥溜めだから臭えのか臭えから肥溜めなのか
ふ〜む、それが疑問だw
とわめく真正の馬鹿を見た。 加えて言えば、その真正の馬鹿の特徴は、
哀れなほどに語彙を持たないことだ。 ____
/ノノヽヾ\
ノ ノ)人(ソヾ゙゙ヽ
ミイ )ノ゙ミ
V ̄  ̄ リ゙ミ
|⌒/ ⌒ レ)
| (_ 丿
人 ―― /|AIもIoTもPythonでサクサク♪
\ / |
∧ ̄ /ヽ
↑
ラズパイキッズ
____
/ \ 〜
/ L_L_L_L亅 〜
| ノU\) /ヽ〜
|(6U―◎―◎ ) 〜
Lノ ∴ (oo)∴)
ヽU ∵ 3∵/ RBPUで内蔵プルアップ
\ ⌒/
 ̄ ̄ ̄
↑
PICおじさん うざいというのは相対的なのですが、人というのは自分側がうざさゼロの絶対座標系だと考えたくなってしまいます
この書き込みもある人の座標系から見るとうざい可能性がありますが、私から見るとそういう人がうざいということになります
人間の心理は面白いですね
つまり人をうざがるというのは、つまるところしょーもないことだということです >>674
20年前は
上の顔に「PICキッズ 少ない配線でさくさく工作」
下の顔に「Z80おじさん バスなしマイコンなんて子供だましだ」
みたいなキャプションが付いていたんだと思うと感慨深い。
今は動きが早い。
10年もしないうちに上の顔が下の顔になって新しい人がバカにするようになるのだろうね。 >>675
ウザイ奴とはお前みたいに下らない屁理屈をコネ回す人間を言うんだよ。
ガキじゃないんだから、時には「負けるが勝ち、大人しく身を引く」って事をしろ。
(って無理か? 無理だろうな、きっと)w 20年は人の寿命からみても十分長い時間なのだが…
そんな事云われても「このおじい何云うてん」ぐらいの感想しか持たんで みんな、スレの書き込みにイラッとしたら音楽でも聴いて気分転換してくれ。
最近、俺が一日一回は見て聞いているビデオを紹介する。
どうだい、自然とニコニコしてくるだろ?
https://www.youtube.com/watch?v=Q8X-JAJ7CBw&list=RD10pPB957bUo&index=5 >>678
リプありがとうございます
人をウザがることは取るに足らない生産性のないただの時間の無駄であることを理解されない方がいるのも理解しています >>681に
>生産性のないただの時間の無駄
という概念があることが不思議だな。
自分は特別でその蚊帳の外ってことなのかな? >>682
自分だけが特別だとは思っていません
人をウザがることに意味を感じない人は私以外にも普通にいると思います ウザいって言ったり、高圧的な暴言を繰り返したら、そのうち相手が
反論をやめて黙っちゃうことがあるんだよな。損だと思う。 >>677
PICはその名の通り周辺コントローラなのにな。
ラズパイとの組み合わせとかも良く有るのに。 PICを使った基板を、PICKIt4だけでICSP焼込みが出来ると聞いたんですが、
本当でしょうか? https://ai.5ch.net/test/read.cgi/denki/1384626558
初めてのPICの1スレ目
平穏で建設的だね
本スレで初心者が質問してもデータシート読め的に罵倒されるから
出来たスレだと思うけど、また本スレの住人に荒らされて今に至ってるのかな >>687
どこで聞いた?
なぜ疑ってる?
なぜここなら疑いが晴れる? >PICを使った基板を、PICKIt4だけでICSP焼込みが出来る
助詞の使い方さえデタラメだからな、確かに「すごくバカそう」ではある。 >>687
PICkit4は、まだ出来ない。
次のMPLABのバージョンアップに期待 本当の初心者が来たらそっとコードを作ってあげる優しい奴らだぜ >>695
え、そうなの?
じゃ、現時点のPICkit4にできることは何? pickit4tm 買おうかと割と本気で思ってたんだけど5Vで焼き入れるデバイスしか
焼き入れ出来ないってほんと?
焼き入れに高電圧が必要なデバイスは今後も変わらずpickit3tmで焼き入れるしかない? >>701
それってMPLAB SNAPの話じゃなくて? DIPはICソケットを使えるからなぁ。
CPU交換リワーク作業なんて出来ればやりたくない。 フラットパッケージのCPUはブレークアウト基板に乗せてソケットに挿すから、
リワークとか発生しないね。 >>698
ベースラインは割り込み使えないからな。 >>711
DIPもSMTもどっちのパッケージもある品種でSMT版をブレークアウト基板に乗せて
使うとか頭悪すぎね?wwwすごく馬鹿っぽいw >>713
>>711が前提にしている「フラットパッケージのCPU」が
「DIPもSMTもどっちのパッケージもある品種」なのかい? SMTなのに結局ブレークアウト基盤でソケットに刺してんじゃんねw 趣味だと試作基板=最終製品になる場合が多い。
私はたとえばDIPとQFPのパッケージがあるCPUなら、
交換の楽なDIPを選択する。
QFPしかなければ、大きくなることを諦めて、
2.54oピッチ変換基板を使う事が多い。
いずれもユニバーサル基板を使う事が前提だけど
以前、4枚ほど同じ基板を作る必要があって、
自分で版下を書いてエッチングしてQFP用のPCBを作った事もあるんだが、
けっこう面倒な作業で、その後もう一回作って辞めてしまった。 2千円も払えば充分精密な基板を作って貰える時代になったんで、表面実装品の採用に抵抗は無いよ。 普段SMTしか使ってないけど訳あってDIP版のPIC18で基盤作った
パッケージが大きくなることよりも、裏面(りめん)に自由にパターン引けない
制約のほうがきっつい。
試作は基本的にブレボでやるからDIP版のPIC使うけど、試作が終わって量産基盤
作るときはSMTしか使ってない 最近は秋月の電源パターン付きユニバーサル基板を使う事が多い。。
電源ラインの配線が不用、電源との接続(PU、PD)が直近のランドを利用できる、という2点で
大幅な作業時間の短縮になり、信頼度もアップする。
部品配置や配線を二重、三重にすれば多層基板代わりの複雑な配線もできるよw
量産なんかしないアマチュア向けだと思う。
もちろん良い事ばかりでは無い。詳細は省略するが、注意が必要な点もある。 上を見ればMP3とかブロック崩しとか出来ますよ。
そこまでPICで頑張る意味は無いかな… うぬぬ。MP3はデコーダは専用チップだよね?
PIC32あたりならできるの? >>721
DIPと同サイズの2.54ピッチのSMT使ってんならそうだろうよ >>727は何に着目して
>DIPと同サイズの2.54ピッチのSMT使ってんならそうだろうよ
と言ってるんだろうな。
そもそも、PICに2.54mmピッチの面実装品ってあったっけ? >>728
>>721がSMTとDIPの裏面にパターン引ける引けない程度しか言ってないからからかってんだよ
ひょっとしてまだAB2層にピン間何本とかの時代の頭ですか? 時代の先端とは無関係に手軽さを取る
その方が柔軟だってこともわからない馬鹿>>730 基板を基盤って書いてる時点で読む気無くすよね
素人さんってバレバレだから なんでネットとかでイキってる素人さん達は皆基盤って書くんだろう 電々素人かどうかは無関係だろ。
社会基盤とか、生活基盤とかの語彙が無い無教養ってだけ。 秋月のパワーグリッド・ユニバーサル基板は電源ラインが格子状に配線用スルーホールを囲んでいるので、
ノイズに対しても対しても効果が期待できると思う。
http://akizukidenshi.com/catalog/g/gP-07214/ >>738
そろそろ個人向け商品でも共晶半田はやめる時期じゃね
Pbフリーなんかで半田付けできるかと言ってた老害もいなくなったし >>738
鉛あり半田レベラなんだよな…
同じメーカーの多くの基板が鉛フリー。
大量に発注した在庫が残ってるのかも。 人に売るモンでもなし人間死ぬときゃ死ぬ。
趣味のせいで死ぬなら本望
共晶はんだ販売禁止なら工作やめるよ >>742
えらく潔い人だなあ。
俺がPbあり半田を使いつつ、ものを人に売らない立場なら、
Pbあり半田が販売禁止になっても工作やめないだろな。
禁止になっても移行期間は必ずあるわけだし、その間に
数キロぐらい買い込む。たぶんそれで一生楽しめる。
>>743
基板のPbありレベラをやめるやめないは秋月の自由なんだけど、
基板のレベラをPbフリーにしておけば、Pbフリーな作業をする人も、
Pbありの作業をする人も、どちらも使えるわけだし、より数をさばける。
でも、厳密に言えば、Pbフリーはんだの方がちょっと高価。
Pbフリーにしたから値上げ、ではPbありでOK派の人は納得できないだろね。
秋月扱いの他のユニバーサル基板がPbフリーに置き換わってるし、
流れではあると思う。 >>744
理由 : 流れだから。
何か、予想通りで笑ったわ。 >>745
ええ、必要ですね。
例えばここの「賛否」の内容について説明してみてください。
https://ja.wikipedia.org/wiki/RoHS >>747
wikipediaかよ…
賛否って否ばっかりしか書いてないじゃんアホらし 俺らは会社で毎年鉛検診受けてんだよ
もちろん吸煙器は使ってる
お前が気にしないというなら鉛の蒸気で毎日思いっきり深呼吸でもしてろよ
でも他人には吸わせるなよヤニカス君 ↑
えっ?
この子、急にどうしちゃったの?素で怖い >>ID:qJLbJnS3
え、説明も反論も無し?
あ、電々土方には無理かw >>749
>鉛の蒸気で毎日思いっきり深呼吸でもしてろ
土方さん、鉛の沸点は知ってる? >>746
>理由 : 流れだから。
>何か、予想通りで笑ったわ。
>>744 は「共晶半田はやめる時期じゃね」を書いた本人でもないわけだけど、
俺が744で書いた最後の2行の「流れ」は現れている結果を述べただけで理由ではないよ。
先入観が強い人って、自分の予想に沿うような解釈をしがちだね。 そうそう、とにかく鉛フリー、という先入観が強い人って
自分の予想に沿うような解釈をしがちだね。 だってここでフリーフリーわめいてる土方は
ただ会社の方針に従ってるだけの脳みその無い社畜だから >>755
どれもRoHS指令の実効性への疑問だけで鉛の有害性自体は否定してないじゃん。
中西準子は子供(電気製品使用者)の話で半田作業者の話じゃないし、
Maxim社は売る側だから証拠がないことを根拠に疑問を唱えてるが、鉛の有害性なんて散々研究された事実だからね。
反論のために必死でググったんだろうけど、RoHS指令ってユーザー側の話だから全然的はずれですな。 >>752
鉛自体が気化するんじゃなくて、フラックス等の蒸気に鉛粒子が含まれるんですよ。
勉強になりましたか? Pbはんだの有害性の程度についてはともかく、
今は(ユニバーサル基板も含めて)部品はPbフリーの方がたくさん売れるよ。
そういう、まあほぼ事実の話なのに、Pbフリーに対して感情的になるのは理解に苦しむね。
Pbフリーに対してなにがしかの攻撃性を持たないと、Pbありハンダを使えないってわけでも
ないのだから、使いたい人は普通に使えばいいのに。
俺はPbフリーしか使わないけれど、Pbありハンダを使うことや使う人に特にマイナスイメージはないし、
Pbの健康被害もやいのやいのと言うようなものでもないと思ってるのだけどな。 実際の話、俺の腕で0.65mmピッチまでなら鉛フリーはんだでも
作業可能なんたが0.5mmはちょっと無理ある。 759の続き
>Pbの健康被害もやいのやいのと言うようなものでもないと思ってるのだけどな。
というわけだし、個人的には>>747が引用しているWikipediaの賛否(というかRoHS指令への批判)は
わりと共感できる。
鉛による健康被害よりも、タバコや酒による健康被害の方が深刻なんじゃないのかな。
酒なんて怖いよな、摂取した挙句に人を殺したりする。
Pbありハンダを使って何十年もたってだんだん健康状態がおかしくなるなる、なんてことがあるか
ないかみたいな話はあっても、Pbありハンダで一晩電子工作をしてトチ狂って家族を殴り殺した、
なんてニュースは聞いたことがない。
とはいっても、世界のどこかの廃基板の集積地から染み出す水を飲まざるを得ない人のことまで
なかなか想像はできていない。他の不幸に見舞われている人との程度の比較も考えは及ばない。
流通や回収のしくみを変えるより、作る方で制限をかけるのも一つの考え方なんだろう。 >>760
流動性もPbありの方があるからな。
Pbフリーで0.5ぐらいイケるぜ、って言ってる人でも、もっと微細な作業だったら
たぶんPbありの方が楽にできるだろうな。
部品の端子でも、ユニバーサル基板でもPbありハンダ仕上げはなくなっていく。これは流れ。
でも、特に趣味とかだったら、ハンダそのものは事情がなければPbありでも良いと思うんだ。
趣味だったらPbありを使うべき、みたいな偏向は簡便だけどな。 自分で考える習慣がない人がPICで工作するんかな。ずっと迷えばいいと思うの。 いまArduinoやってるとこ。
ブレッドボードでやってる。 純粋に趣味で完結する人なら、Pbありはんだが無くならない限り、Pbありはんだを使えば良いと思うよ。 RoHS関係ないのでこれからもずっとPb有でやる仕事 ハンダ付け作業時に煙を吸うのは生理的に気持ち悪いので、
窓の前に作業机を置き、窓を少し開けて、基板と窓の間に12VのPC用ファンを置き、
ハンダ付けしている。 >>ID:T3g/6SP1
うむ、所詮このレベルw 今使ってる有鉛ハンダが無くなったら無鉛に変えるかなと決心してはや10年、
安売りの時にリールで買ったやつが無くなりそうもない >>771
それ。
土方とは立場が違い過ぎて議論にすらならない、ここ初めてスレ。
>>773
だって>>ID:T3g/6SP1が何一つ反論になってないから言い返せないw 土方は土方の立場でしか物が見えないから死ぬまで土方 >>749 鉛の蒸気で毎日思いっきり深呼吸でもしてろ
>>752 鉛の沸点は知ってる?
>>758 鉛自体が気化するんじゃなくて、、フラックス等の蒸気に鉛粒子が含まれる
つまりそれ蒸気じゃねえw
土方が馬鹿過ぎて議論がかみ合ってないw
そのくせ反論した気になってる>>757 ここでどっちがどうだとか決定したところで、世の中になーんも影響も拘束力もない。
決めたり、勝った負けたとか言ったりするよりも、迷ったり思慮する材料を交換する方がメリットあるのに。 >>777
馬鹿は自分の馬鹿に気づかないから馬鹿
多分湯気と水蒸気の違いすら知らない 毛唐がRoHS言い出して売れねえから会社は仕方なく対応に必死なだけ。
土方はそんなこたあ知っちゃいねえからあてがわれた環境だけで物を見、事を判断する。
で、何を思ったかそれを初めてスレでとくとくとご披露あそばされる。
問題点指摘されても反論なんざする能力も知識もない。
だって土方だもの。 >>782
なんだ、自分の今の立場ちゃんとわかってんじゃん、とってもえらいぞ。 長年馴染んだものを否定されたときに反発するのは仕方がない。
若い人には理解しにくいかもしれないけれど、順応力はだんだんなくなっていく。
いつか通った道、いつか通る道。 >>785
そういう近視眼的な対立構造でしかものを考えられないヤツばかりだから日本電々が疲弊したんだね。 >>786
議論に反発といった感情を持ち込んでも良いことはなくて、暴言の
ぶつけあいに繋がってしまう。(実際そうなってる)
歳をとるほどに、自分の考えを説明するのが面倒になるのか、
わかってくれない相手がバカだ、みたいな感じですぐに暴言で相手を
押しつぶそうとする傾向が強くなるように思う。
>…だから日本電々が疲弊したんだね。
結論を急いでも良いことはない。わかったつもりより、わかってないことを
抱える方がストレスも大きいし良いと思うんだ。 >>787
いい加減スレチなんで消えてくれない?
>PICをさわるのは今日が初めて、という超初心者のためのスレです。 >>749に代表される電工土方が自分の会社のたこつぼでの価値観を
そのまま初めてスレで押し付けるから話がめんどくさくなる
ここで吠えてないで秋月あたりにでも乗り込んで鉛フリーしか売らないように騒げばいいだろ
電々板で荒れてるスレは大体同じようなシチュエーション
工業高校出の電工土方はホントどうしようもない連中 >>789
いい加減スレチなんでこの世から消えてくれない?
>PICをさわるのは今日が初めて、という超初心者のためのスレです。 あんなハンダ付けしにくいもの遊びの電子工作で誰が使うかよ
ってのが大前提としてある
そのくせ理由を問えば業界の流れだからとか
どんだけ頓珍漢ですかって話 インジウム使ってるのは扱いやすいけど、高めなんだよな。 業界の流れの背景を考えろよじい様
あんたの家族の健康を心配してやってんだよ 一人二人の身勝手な行いで同じ趣味をもつ全員が白い目で見られるとか、
鉄オタやドルオタの嫌われっぷりを見てもわからんかね 自分は大丈夫たから問題ないとかいうじい様はヘビースモーカーや大酒飲みみにもいるけど、
ゆとり世代でもあるまいし、学校で確率統計は勉強してるはずだろうに ボケ老人は聞く耳持たないだろうが、若い人にだけでも伝わればいいよ >>798
最近やっと落ち着いてきたんだから
煽るのやめましょうよ >>791
完全に同意。
>>ID:3RFpXDf4
その駄文を1レスにまとめられんか、高卒!
そして、まず秋月に怒鳴り込めよ、5ch弁慶! 実際どうなんだろうと秋月で見てみたけど、17商品中鉛フリーは6商品のみ
しかもほとんどの共晶が3桁在庫なのに対して、鉛フリーは12とか22とか在庫控えめ
一般の電子工作での流れと電工土方さんの周辺事情は違うのよ>>795 まあなあ、工業高校出の土方に、
環境を盾にした非関税障壁で、環境へ影響は全体のたった0.5%なんです。
なんっつってもオツムから湯気状態だろうw
好きに騒げばいい。 別に部品の表面仕上げのはんだがPbフリーになっても、Pbはんだを使ってる人が
困ることはないよね?
少なくとも部品からPbなくすのは流れだよ。 環境オタは必ずしも論理的思考のできる理系でないからな。
むしろ環境ビジネス美味しと見定めた投資家だったりする。
金になるなら何でもする連中。
それを「流れ」と称するもまた「流れ」。
お前がそれに合わせて躍るのは勝手だが人に押し付けるなって話。 >>806
ここで騒いでる電工土方はそんな程度の高いもんじゃないだろ
職場でそう言われたってだけの思考力のないオウム
それ以外に知識を得るすべを知らないしそもそも知恵が無い で、結局、鉛よりインジウムの方が有毒ってことでいいのか? >>809
ここで聞いて何になる。
簡単にいいのかどうかがわかるものなら世間で揺れるもんか。 >>809
個人レベルでは使い勝手も含めてそういうこと。
仕事の人は流れに身を任せなさい。
どうせ、日本電々なんざ存在自体が誤差のうちw ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch.net/test/read.cgi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 >>813
ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch....gi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 ネットで公開されてるコードをコピペしただけだけどタッチセンサーが上手くいった
楽しいなあ タッチセンサーはいいんだけど、実際に投入しようとするとタッチ部分どうしようか悩む。
銅箔の上をレジンで固めても検知するのかなあ? >>819
そうなんですかすごいですね!
さんこうになりました! >>818
浮遊容量の変化で検出するので、絶縁されてても検出するよ。
俺的にはレザークラフトに使う「カシメ」がお気に入り。 >>816
ありがとう
PWMでのLED調光も成功した
ま、コピぺしただけど
まだ一回も自分でゼロから作れてないやw
自分でちょちょいとプログラミング出来る人尊敬するなあ >>822
そこから少しだけ広げていけばいいんだよ。
PWMで柔らかく点いて柔らかく消えてを滑らかに繰り返すとか。
スッーと点いてパッと消えるとか、その逆とか。
いろいろ変化させてみるのさ。 >>822
Lチカも複数個それぞれを同時に制御できるようになれば上級者です。
(たとえばLED1がゆっくり点灯している時に、SW2が押されるとLED2がゆっくりと消灯し、SW3が押されると・・・)
道は長いと思うけどガンバって下さい。 >>825
詳しくは書きませんでしたが、点灯条件によってはかなり難しくなると思う。
たとえば、スイッチとLEDがペアで8組あり、
それぞれのSWを押すと対応するLEDがゆっくりと明るくなり、もう一度押すとゆっくりと暗くなる、
あるLEDの状態変化中に他のLEDのSW操作も受け付ける、
明るさが変化する速度、もっとも明るい時の明るさは各LEDで設定できるなど・・・。
各SWのチャタリング除去も必要になり、
タイマ割込み処理が「もうウンザリ!」になるかもしれない。
いずれにしろ点灯条件次第ですね、条件がシンプルなら処理もシンプルです。
(当たり前か)w >>823
>>824
>>826
なかなかな自分には厳しいですね
PIC自体が安いので複数個使ってスイッチも物理スイッチ使ってる…
PICが点滅リレーみたいな単機能しか使ってない
たぶん上級者だとPIC1個でスイッチ含めて全機能入れられるんだろうなw
今作りたいのはナイトライダーのスキャナーとかバックトゥザフューチャーの次元転移装置かな(おっさんなのでw)
スキャナーはいくつかコードを公開してくれてるサイトがあるのでなんとかなりそう
次元転移装置はだんだん動きが早くなるパターンを繰り返すのが作りたいけどハードル高そう flux-capacitorはPICじゃなくてもよいのでは(笑) >>829
まあせっかくPICではじめたので
現在こんな感じで定速での順送りは出来るのだけどこれを ゆっくり→早く→全点灯→最初に戻る を繰り返すようにして
出来れば空いているRA3で内蔵プルアップでスイッチ入切出来るようにしたい
https://i.imgur.com/rO1CDya.png
http://codepad.org/6jl26fY0 >>830
これ自分で書いたなら、工夫次第でもういろいろ出来るじゃん、がんばって。 >>831
>>822でも言ってるようにネットで公開されてるコードをコピペしてるだけ…
たまに型番が合わない所を直すくらい >>832
それなら引用先を明記しなよ、民度低いぞ、大陸の人かw
にしても、内蔵のPWMを使わないとはw
大変なソースを選んだもんだな、そういうのが趣味なら仕方ないが。 PIC単体で沢山のLEDを調光したいならソフトウェアPWMになってしまうか。 >>834
タイマ割込みを利用して各LEDのオン時間、オフ時間の比率(デューユティ)を変更するような方法ですね。
ソフトウェアのカウンタもLEDの個数だけ必要になるけど。 >>836
はい、質問者のやりたい事を考えると内蔵PWM使えと言うアドバイスは如何かと思ったので。 >>837
差別用語好きだなって事じゃん、馬鹿なの? >>826
>タイマ割込み処理が「もうウンザリ!」になるかもしれない。
こんなこと考えてるようでは、割り込みを使えてない証拠
割り込みなんて定期処理するだけの奴一本でいいんだよ
その中ですべての変数をカウントアップさせるだけ あとはメインで各LEDの処理するときに
今の変数値見てどういう出力させればいいか、個別の楽譜のようなものと照らして出力させればいいのだ >>ID:jNOklfR3
じゃあ頼むわ。
http://codepad.org 頭悪すぎだろ
ゲームでキャラ100人とか弾幕1000個とかの処理やるのと同じだろ そいつらのアニメパターンとか
全部キャラ側の変数で独立処理してるだろうが
割り込みはそういう変数だけカウントアップするだけなんだよ 何本もタイマーがあるけど、
どうやって使うのでしょうか?
多重割り込みにならないのかな。
それが嫌で、一本で全部処理する方法しかわからないんです。 違うだろ。
一本で全部処理する方法しかわからないから、
ろくに調べもせずに「それが嫌」で済ませてる。 はい、1本のタイマーでできると思うし出来ているので、
なぜ何本もタイマーが装備されているのか、分からないのです。 LEDをPWMでon/off制御するのがタイマ割り込みルーチン。そのduty比なんかのパラメータをコントロールするのがメイン
複数のLEDをコントロールするにはタイマーは1つで良くて、ソフトでCCRレジスタ相当を複数持てば良い。 >>851
途中で書き込んでしまった。
こんな処理イメージと思うんですがどうだろ。 >>850
なら、あなたは分からなくていいのでは?
なぜ気にしているのかが分からないのです。 >>851
>LEDをPWMでon/off制御するのがタイマ割り込みルーチン
PICしか知らないから他のマイコンは良くわからないけど、PIC以外のマイコンて
PWMのON/offにいちいちタイマ割り込み使わないと駄目なの?
なんか大変ね >>854
多数のLEDを調光する話題だったのでソフトでやると考えたんですが、PIC?はCCPが多数実装されているんですか、だったら余計な事言っちゃいましたすみません。 >>854
タイマ割り込み使わずに、ソフト的にPWM実現するのは、かなり面倒くさい。 少し複雑なLチカの例(模型自動車のライトの制御)
https://pastebin.com/hZ4EiF7m
ATtiny2313、フルアセンブラ、マルチタスク
ハードウェアカウンタ・・・1個
ソフトウェアカウンタ(リエントラント)・・・1個 高いクロックでタイマー割り込みして、そこで色々な処理させれば出来るが効率悪いから見合ったクロックでのタイマー割り込みを別に持つのが一般的だよ。 なぜ複数のタイマがあるのかだって?
一本のタイマでやるより複数使うほうが処理がシンプルだからだよ つうか多重割り込みになるのが嫌とか、割り込み1000個以上ある今の64bitマイコンとか使ったことないのかよ >>856
そうでもない
変数カウントアップを精密に行うか、テキトーに行うかの違いでしかない
精密に行えば、画面のスキャンタイムと同期出来るから
画像処理でちらつきを全く起こさずに作れるし
音楽鳴らしたりビブラート付けたりしてもズレが発生しないので違和感が無い
割り込み使わないとカウンターがだんだんズレて
そういうものの品質が落ちる
それだけの違い >>850
タイマーという処理なら1個でできるが、タイマーと
外部入力でカウントする周波数カウンターみたいな
ことをやるなら1個じゃ足らんだろ? オートリロードが無いのが残念だな。
正確な時間を刻みたいな。 >>864
CCPのスペシャルイベント機能使えば良い >>814
どんどん本スレにコペピしてやればいいよ ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
https://rio2016.5ch....gi/denki/1558617638/
で やってください。
我々、初心者に迷惑です。 このスレはマルチタスク話とavrとの不毛な宗教論争と内蔵プルアップの話が永遠ループする仕組みなのかな? どっちかあっていうとおー(どっちかあっていうとおー)
アセンブラvsC言語の宗教論争なんじゃないぁなあと思うけど(爆笑 初心者を指導してやるんだ〜という老害が質問者そっちのけでマウント合戦始めるのが通例だね。 >>873
技術力をアップしたいという気持ちが全く無いアホ相手には無駄な努力なのにな いや、気持ちがある人にとっては無駄どころか害悪、貴重な時間の無駄でしかないので >>870
リアルが充実してない可哀想な人なんですよ
そっとしておきましょう いまどきPICなんかいじってる奴はマウント爺しかいない
家庭でも邪魔者物扱いで、こういうスレでしか威張れない
かわいそうに、惨めだなぁ、哀れだなぁw 他のCPUの方が使いこなせればもっといろいろできる
同じ努力をするならさっさと乗り替えた方がいい
マウントするためにしがみついているなら話しは別だが いまどきPIC爺なんかいじってる奴は厨房しかいない
他のCPUスレでも邪魔者物扱いで、爺のいるスレでしか威張れない
かわいそうに、惨めだなぁ、哀れだなぁw
夏休みはもう終わったからさっさと二学期の準備でもしたほうがいい ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
ttp://rio2016.5ch.net/test/read.cgi/denki/1556637765/
で やってください。
我々、初心者に迷惑です。 ここに初心者なんかいない
いるのはマウント爺といつまでたっても初心者レベルで技術が向上しない爺 誤:いるのはマウント爺といつまでたっても初心者レベルで技術が向上しない爺
正:いるのはマウント爺といつまでたっても初心者レベルで技術が向上しないバカ造 ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
ttp://rio2016.5ch.net/test/read.cgi/denki/1556637765/
で やってください。
我々、初心者に迷惑です。 ここは(自称)初心者のみなさんが、(ネタ)質問するスレです。 >>ID:/z513Fao
だから、質問があるならしろ。
無いならそもそもここへ来なけりゃ何も気にならない。
現状、お前が一番邪魔。 >>889
初心者ですが許されるのはせいぜい1年まで
センス無いなら諦めたほうがいいぞ >>892
誰もお前に許しを乞うてない
さらに言えば、センスの有無で語るヤツから何も得るものは無いのが常 相手は中学生だ気にするな、ってか
無能な奴ほど自分自身をなだめる術には長けている不思議 ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
ttp://rio2016.5ch.net/test/read.cgi/denki/1556637765/
で やってください。
我々、初心者に迷惑です。 >>883
たかが 周辺コントローラー を使いこなすとかって、 >>897
ここは初心者のみなさんが、質問するスレです。
先輩たちは、本スレ
ttp://rio2016.5ch.net/test/read.cgi/denki/1556637765/
で やってください。
我々、初心者に迷惑です。 >>830です
LEDの数を増やしてみたのですがRA4だけが点灯しません
RA6-7は点灯します
配線の断線やLED不良のチェックはしました
原因解りますでしょうか?
http://codepad.org/yBRgNfSV >>900
ソースは見てないが、RA4はオープンドレインだから電流の吐き出しが出来ないというオチ? そこそこ新しいピックはRA4がオープンドレインになってたりしない
実際、12F1822もRA4の出力はODじゃない >>900
648AのRA4はオープンドレインだよ >>905
>900のリンク先見る限りでは
PIC12F1822から16F648に変えたんでしょう。
RA6,RA7は点灯したといってるから、12F1822は無い。 レスありがとうございます
ご指摘の通りPIC12F1822から端子の多い16F648Aに変更しました
ソースのみに記載してたので失礼しました
オープンドレインとういうものが分からないので調べてみます RA4は普通の出力じゃないんですね
ありがとうございました >>911
理解できなかったので全部RBにしてLED8個達成しますた…
ヨシッ! >>900
ソースの「{ }」「else」を置く位置が間違いやすい位置に置かれているので、
今後のこともあるので、直した方が良いですよ。
else は、ifと同じ位置に置に。
} は 対応する } と同じ位置に置いたほうがいいです。
インデントにはTABを使いましたょう。こんな感じです。
if(ima7 < ontime7 && senkou7 == 1){ // TAB1つ
RA7 = 1; // TAB2つ
} else { // TAB1つ
RA7 = 0; // TAB2つ
} // TAB1つ
さらにこの場合0〜7まで同じ処理が続くので、以下のように書くと、
0〜7の数字の位置が一定になり、みんな同じことをしているんだな、とわかりやすいです。
if(ima1 < ontime1 && senkou1 == 1){ RA1 = 1; } else { RA1 = 0; }
if(ima2 < ontime2 && senkou2 == 1){ RA2 = 1; } else { RA2 = 0; }
if(ima3 < ontime3 && senkou3 == 1){ RA3 = 1; } else { RA3 = 0; } という具合です。
別の書き方として、こんなのもあります。RA= という代入のイメージで、RA= を2回書かなくても良いので、わかりやすいです。
RA1 = (ima1 < ontime1 && senkou1 == 1)? 1 : 0; // 真なら1、偽なら0
RA2 = (ima2 < ontime2 && senkou2 == 1)? 1 : 0; // 真なら1、偽なら0
RA3 = (ima3 < ontime3 && senkou3 == 1)? 1 : 0; // 真なら1、偽なら0
また、if()の条件は、3つ以上書くと、勘違いしやすいので、()を使って単純にするのも良いと思います。
if( (ima3<ontime3) && (senkou3==1) ){ >>914
そもそもifを使うのがダサいし、
おんなじような処理を何回も書くのもダサいな はじめてなんだからまあまずは一番基本の書き方でいいんじゃない?
んで関数化してりビット演算やcaseや三項演算子やらでスマートにかけることをまなんでいけばいいんや。 switch() case: で、うまく書けると見やすいですよね。 みなさんありがとです
まだ全然意味を理解してないけどやりたいことはボチボチ出来はじめているんでまたよろしくです ICSPのPGC.Dの先に繋がる回路がトランジスタアレイなんだけど何も対策しないで大丈夫?
RB6/7は出力になっててアレイの先に繋がるのはLEDだけど。 >>920
RB6/7は出力 で トランジスタアレイ が繋がっている、ということですよね。
・出力でもOKです。
・トランジスタアレイは、デジタルトランジスタですよね?
負荷4.7kくらいなら大丈夫です。 お聞きしたいんだがこんな物作りたいんだけど作例とかありますかね?
4bitのON/OFF情報を送信側のPICで読み取って、USARTで受信側のPICに送信して出力するって感じで。
定番のリモコンICも考えましたが無線かIr前提だし、TWELITEにI/O機能があるけどデカイし高いんで・・・。
そう言う作例があれば参考に出来るんですけど、あいにく殆どCは書けないんで参考が欲しいんです。
よろしくお願いします! >>924
Cを書けないとして、なになら書けるのかとか、Cを読めるのかとか、これまでのマイコンや回路の知識とか
できることを書かないとみんな何もアドバイスしにくい。
Cが読めるなら、PIC16Fでこなすなら、UARTのついたもので、できるだけ新しいもの(PIC16F18xxxあたり)を選んで、
MCCでクロック、ポート、UARTの設定をしたら、あとはひといき。
まったくマイコン経験がないなら、PICではなくて、Arduino から入ったほうが作例は多いよ。 優しいなあ
俺なら「宿題は自分でやれ」と言って終わりだね つうか趣味でPICやらリモコンICやらIrDAやら弄ってるならC書けないとかあり得んじゃん
どんなん入り口からこの世界に入ったのよ XC8のdelay()は実際はマクロで、内部でnopに展開されてると聞いたのですが
delay_ms(10)とかで10msの『待ち』を作った場合、その間は割り込みは禁止
されてしまうのでしょうか?
delay処理の間に割り込み要因が発生したらちゃんと割り込みさせようと思ったら
どうすればいいんでしょうか。 >>930
割り込みを禁止しない限り割り込みは有効なはず
注意点としてはdelayはNOPをループされてるはずなので、割り込み中に時間が掛かればその分時間がズレる >>928
>つうか趣味でPICやらリモコンICやらIrDAやら弄ってるならC書けないとかあり得んじゃん
すくなくとも>>924には、そう確定するだけの話は書いてないと思うんだけど。 >>932
ありがとうございます
delay()の間も割り込みを禁止していなければ普通に割り込みは発生するんですね
しかしそうなるとnoploopの間に割り込みが発生したらdelay()の時間が正確じゃ
なくなってしまいますね。うーん、困ったなぁ >>935
正確さを期待するなら、ペリフェラルのタイマーを使うのが近道だと思うのだけど。 >>924
初心者なので参考にならないかもだけど、作ってみた
https://i.imgur.com/XUjzueg.jpg
MCCで初期設定してプログラムしたのは以下の部分のみ
送信部
void main(void)
{
SYSTEM_Initialize();
uint8_t SendValue;
while (1)
{
__delay_ms(100);
SendValue = in1_GetValue();
SendValue = (SendValue<<1) + in2_GetValue();
SendValue = (SendValue<<1) + in3_GetValue();
SendValue = (SendValue<<1) + in4_GetValue();
EUSART_Write(SendValue);
}
}
受信部
void main(void)
{
SYSTEM_Initialize();
uint8_t ReceiveValue ;
while (1)
{
ReceiveValue = EUSART_Read();
out4_LAT = ReceiveValue ;
out3_LAT = ReceiveValue >> 1;
out2_LAT = ReceiveValue >> 2;
out1_LAT = ReceiveValue >> 3;
}
} >>938
だとしたら>>929って妄想ひどいね。 XC8を使っていますが、関数から返り値を複数戻したい場合に通常のCなら
呼び出し側で変数を宣言して、そのポインタを引数として渡すことが多いと
思います
XC8でも同じようにやればいいでしょうか?
それともパフォーマンスを考慮してグローバル変数を介したほうがいいんでしょうか?
そこまで小賢しい事を考えても大してパフォーマンスは変わらないならポインタを使った
ほうが良いでしょうか? どうパフォーマンスが変わるというのか
どうアセンブルされるかわからんからそういう頓珍漢なことを言う >>942
基本、変数のアドレスは固定だから、大した違いは無いと思う。 >>942
馬鹿が無理して口出してこなくていいよ。寒いだけだから
>>940
厳密なことを言えばGlobal変数を介した方がコードは短くなります
ただ無視出来る範囲だと思います
XC8のPRO版での最適化結果なのでPRO版以外は違うコートかも知れませんが、
変数ポインタ経由で値を1個もらう場合ですが、メモリ上に2つの変数領域(a, b)が確保されます
関数を呼ぶ際にbにaのアドレスを入れてから関数を呼び、関数側はbが指し示すアドレスに
処理結果を入れます
なので関数呼び出しの際の「bにaのアドレスをセットする」処理の分、コードが長くなります
といってもmovlw、movmfだけで済むのでたった4byteです。
>942のようなマウントしか脳の無い馬鹿は無視していいです >>940
ちなみに、Cで書いたコードがどのようにコンパイルされたかの結果はLSTファイルに出力されますので
気になる場合はLSTファイルをチェックして下さい
割と納得できる結果になっている場合もあれば、たまにびっくりする様な結果を吐いている場合があります
そういう場合はその部分だけインラインアセンブラで自分で記述してやりましょう と言いつつお前もマウントとろうとしてるじゃん爺
爺同士の醜いマウント合戦 ID:uUHm7pbS は「いかなる場合もマウントしてはいけない」とは書いてないし、
「と言いつつお前もマウントとろうとしてる」という批判は的外れ。 ID:uUHm7pbSのマウントはきれいなマウントニダ ピックでソフトウェアーシリアル受信を行いたいのですが、色々調べても
よくわかりません。言語はC言語でXC8を使っています
INT割り込みか状態変化割り込みでスタートビットの変化を検出したら、
あとはタイマー割り込みを使って一定周期でポートの状態を見ればよい
8ビットパリティなしストップ1なら9回タイマ割り込みがかかった所で
1バイトの受信終了)と思っていたのですが、4倍オーバーサンプリングとか
8倍オーバーサンプリングというのがよくわかりません
前述のような考え方の処理じゃ問題ありますでしょうか? 久々に工作しようとPICKITを秋月で見たら4になってた
買って色々インストールしたらわけわかんねー?!
なんだIDE/IPEってww
久々過ぎたなw >>950
原理的には、ボーレイトを b とすればスタートビット検出後 n / b + 0.5 / b 時間
ごとに受信データの 0/1 を判定すればよい。
割り込み機能の無い baseline でもフリーランタイマーと次にサンプルすべき時間
を比較することで実現は可能。ただし、単純ではない他の処理も同時実行しようと
するとプログラミングが極端に難しくなる。
オーバーサンプリングはデータに乗る短いノイズやジッター(ゆらぎ)による誤動作
の対策に有効な手段だがソフトウェア処理が難しくなる。
ゆらぎノ
片づけ脳いんとをtrue愛称アー. 順+ + nbしたらその後ビットどうインプリメントdouソフトウェアーシリアル受信を行いたいということはtoiuのですが >>950
原理的には、ボーレイトを b とすればスタートビット検出後 n / b + 0.5 / b 時間
ごとに受信データの 0/1 を判定すればよい。
割り込み機能の無い baseline でもフリーランタイマーと次にサンプルすべき時間
を比較することで実現は可能。ただし、単純ではない他の処理も同時実行しようと
するとプログラミングが極端に難しくなる。
オーバーサンプリングはデータに乗る短いノイズやジッター(ゆらぎ)による誤動作
の対策に有効な手段だがソフトウェア処理が難しくなる。 >>952が後半突然発狂したけど、特にいつものことなの? > ただし、単純ではない他の処理も同時実行しようと
> するとプログラミングが極端に難しくなる。
ソフトウェアのUARTを自作すると、割込み付きハードウェア処理の有り難みを実感するよな。
いわんやDMAにおいてをや。
うーん、マルチタスクを動かせれば少しは楽になるかな? >>954 プレビューが不本意にオフになっていると、たまにゴミ付きでアップしちまうだ。
>>955 9600bps だと 1bit 100μs 程度以内には次のビットを確実に見ないといけないので
状態遷移で疑似マルチタスク的なことをやっても baseline だと忙しさの点で難易度が高い。 >>956
サンプリングをタイマ割込みで処理できれば、他の同時処理もそんなに面倒では無いのにね。
オーバーヘッドが少なくて、10uS位でディスパッチすればいけるかもしれないと思った。 >>953
すいません、せっかく回答頂いたんですが内容が理解出来ませんでした
>ボーレイトを b とすればスタートビット検出後 n / b + 0.5 / b 時間
>ごとに受信データの 0/1 を判定すればよい。
ここで言うnは何を指していますでしょうか?
あと
>オーバーサンプリングはデータに乗る短いノイズやジッター(ゆらぎ)に
>よる誤動作の対策に有効な手段
ということはやっぱりオーバーサンプリング処理というのをやったほうが
良いってことでしょうか? >>958
シリアル通信の基礎、スタートビット、データビット、ストップビットの概念は判ってる?
n はデータビット(厳密にはデータビット+1)
n / b + 0.5 / b は各データビットの中央部の時間(タイミング)。
オーバーサンプリング処理はやったほうが良いに決まっているが、難しいことを
考えると先に進めなくなるので、まずは各データビットの中央部のタイミングで
0/1 判定し、それをシフトする方法でやってみるのが良いと思う。 全二重じゃなくて、送信側と受信側でタイミング合わせて、一度に転送できるバイト数も制限すればベースラインで38400bpsくらいまで可能だけどかなりきついし面倒だな
昔々Writer509とかいうのがあったじゃない、あれが12F509で割り込み使わないポーリングの半二重の38400bpsだった PICのBaseLineでポーリング処理していろいろな物作ってるけど
PICでタイミング合わせるのはそれほど難しくないので、みなさんも
試してみてはいかがですか
シリアル伝送、ソフトPWM、1-wireのslave、赤外線データ伝送など
そこそこの速度で動作します
下手に割り込みに頼るとメイン処理が割り込みによって間に合わなくなる
割り込みのオーバーヘッドが意外にデカくてデータを取りこぼす
デバッグがしにくくバグが生じやすいなど
高速処理できるチップの場合のみ割り込みが自由詩使えると思っています ポーリング中に合間を縫ってメイン処理ができるなら割込みでもできる 割り込み処理はフラグを立てるだけ。
メインループは各割り込みフラグをチェックしてサブルーチンをコールするだけ。 インターバルタイマー割り込みだけで全部やるのはありだよ。
1msあればかなりのことができる。 >>964
BGMをFM音源6音で再生しながら
メイン処理させるときは、割り込みでフラグ立て作業終わった後に
FM音源にコマンドセットする処理をする >>964
フラグを使うだけなら、割り込み要らないだろ? >>967
メインループでタイマーカウンタの読み取りやるの? >>968
割り込みを有効にしなくても、フラグは立つ。 タイマーは使うが、割り込みは必須ではない
カウンタの値をポーリングして1ms進んでいたら処理をすればいいだけ >>967
タイマー割り込みはカウントアップもする。
1ms割り込みがあるとしたら、10回数えて10msフラグを立てる、1000回数えて1秒フラグを立てる。
メインでフラグが立ってたらフラグとカウンタをクリアしてタイマー処理ルーチンを呼ぶ。 >>971
話が少し逸れるが、割り込みごとに2〜4バイトくらいの固定値を加え、
あるビットのキャリーを見ることにより、より正確な1秒にチューニング
することもできるよ。
#割り込みでもフラグ見るだけでもタイマーのポーリングでも同じだが 割り込み使わなくていいっつってるやつは
大したことやった経験ないからそういう結論なわけで
まぁ、そういう間抜けはスルーしとけ >>973
割込みを使って処理できることを知っていて、
割込みを使わずに工夫して処理する、というのも有りだよ。
>>969 のように割込み要求フラグをポーリングで処理するのも有りだし。
割込みを使わなくても良い、と言う人は間抜けでは無いと思うナ、私は。 初心者が割込みを覚えると、割込みが使えるなら何でも割込みで処理する、になる。
そして次のレベルに進むと、割込みが必須な場合だけ割込みを使う、になり、
やがてマルチタスクと組み合わせて必要最小限の割込みを使う、になる。
(個人の感想です)w 低消費電力にしようと思ったら、無分別に「ポーリングでいいや」とは言えないですよね。 モーターの代わりに内燃機関を使えば消費電力が抑えられるのでは。 >>976
なんで? 1msごとにスリープするのか? >>976
タイマーを使ってもポーリーングでもコア部分は常に動いているので
大して電力の差は出ないよ
一般的に省電力に貢献するのは周辺ペリフエラルを停止するのが
常に動作させている時の省電力で効果がある方法です
それ以外ではSLEEPにするのが一番省電力だけどすべてが止まってしまうし
ので正確な制御がしづライト思います。
精度がいらない方法ならそれでも可能だと思うけど、ちょっと疑問です SLEEP すれば消費電流がガクンと下がる。
割り込みのない baseline でも SLEEP しては
一定時間後 WDT で起きてパパッと処理する
方法により、単三乾電二本で計算上数年以上
動作する筈のモノを作ったことがあるよ。
ちなみに割り込みなしでも複数の状態遷移表
を作ってウンウン考えて作ればかなり複雑な
事でもできるよ。 はずのモノってことは動かしてないのか。
完成したら使わないってありがちポイ。 >>981 作ってからまだ1年半した経ってないから × 1年半した
○ 1年半しか
あと、電池の液漏れの方が先かもしれんので
はずと書いた >>979
>タイマーを使ってもポーリーングでもコア部分は常に動いているので
>大して電力の差は出ないよ
タイマーを使ってもポーリングしてたら減らないね。 >計算上数年以上動作する筈のモノ
あはは。あるある。計算上10年とかだと、試せないし。 フジカラーの100年プリントとか子供心にどうやって検証したの?って思った。
先生に質問して「何十倍もの過酷な環境下での劣化具合から推定して」と説明されても納得できなかったな。 >>982
メカでってどういう意味?
ならZ80互換マイコン使え ターゲットPICだけどプログラミング自体の問題の質問はどうしたらいい?
ム板とか行くべき?
CCSCでUARTを実装したんだけど、文字が勝手に流れてしまって内部で処理できない。
手動にも対応したいから、改行コード来るまで内部で取り込んでおくってどういう風に描けばいい?
while文か何かで改行文字が来るまで待ちたいんだけど、while文自体の中にwhile文置けないとかある? やっぱりこっちか。書き込んでも良いんだけど、
環境
12F1612
X 5.25
CCSC 5.083
通信はTera Term
該当部分のソースコード
while(TRUE)
if(kbhit(upper))
{
while(( string = fgetc(upper)) != EOF ){
GETS(string);
}
get_upper();
}
これが素通りしてしまう。1文字目で出力先、2文字目で正しいデータかどうか見たいんだけど。
手打ちだと1文字ずつ送らされてしまって判断してない(upperに無制限で流しだしてる)模様。 >>992に追記で、このプログラムは動かないのを追記するの忘れてた。
ともかくこんな感じでどう書けばいいかのアドバイスが欲しいです。
基本一文ずつUART信号が入って来るんですが、手動でもテストしたいのでGETSした後どう記述すべきか、みたいなアドバイスが欲しいです。
現在は一文で入ってきて、一文ごとに送り出す予定です。 >>993
文字が勝手に流れてしまって
とは、どのような動きですか?
その辺を説明して欲しいです >>993
質問自体がよくわからないけど、
C的な一般論でアドバイスすると、kbhit は1バイトを受信しているかを確認する
処理で、fgetc はその1バイトを受け取る処理でそこまでは何となくわかるが、
2個目の while で kbhit 確認しないで fgetc やり続けるし、すでに fgetsc で受
信データを読み取ったのに、その後に GETS ?何やってるの?と思いました。 >>992
適当に作ってみた
MPLAB X IDE MCC+XC8
(20文字改行コードはLF)
#define SerialInputBufSize 20
void main(void) {
SYSTEM_Initialize();
INTERRUPT_GlobalInterruptEnable();
INTERRUPT_PeripheralInterruptEnable();
uint8_t InputBufCount = 0;
uint8_t SerialInputBuf[SerialInputBufSize];
while (1) {
if (EUSART_is_rx_ready() == 1) { //シリアル受信の判定
uint8_t ReceiveValue = EUSART_Read();
EUSART_Write(ReceiveValue);
SerialInputBuf[InputBufCount++] = ReceiveValue;
if (ReceiveValue == '\n') { //エンター入力判定
printf("\ninputdata\n");
for (uint8_t i = 0; i < InputBufCount; i++) {
EUSART_Write(SerialInputBuf[i]);
}
printf("\n");
InputBufCount = 0;
} else {
if (InputBufCount == SerialInputBufSize) { //文字数オーバーの処理
printf("\n!!over !!\n");
InputBufCount = 0;
}
}
}
}
} https://i.imgur.com/jJ5szlM.jpg
Aliで勝った高価な(106円送料込)USBシリアル変換コードが使えなかったので
動作検証するために夜中にUSBシリアル変換モジュールにピンヘッダはんだ付けしたんよ(笑) ケーブルタイプのっておそらくPL2303(のパチモン)だろうからWin10ではドライバーをごにょごにょしないと使えないんじゃないかな
検索すればたぶんやり方は出てくるはず このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 109日 23時間 47分 33秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。