初めてのPIC 0x0D
■ このスレッドは過去ログ倉庫に格納されています
_ _ PICをさわるのは今日が初めて、という超初心者のためのスレです。 (O>――<O) PIC選び、PICを使った回路は、誰でも最初は不安なものです。 / (・) (・) ヽ 恥ずかしがらずに何でも聞いてください。速攻で教えてくれますよ。 ○ /▼\ ○ 質問のしかたは、初心者質問スレの発言1を見てくださいね。 |(ヽ二フ ) | /  ̄ ̄ ̄ ヽ f ヽ / | PIC関係のスレは、レベルに合わせて以下のスレもありますので、活用しましょう。 ヽ \ / ノ ・PIC専用のスレ | \_ )(_/ ! 本家本元のPICスレです。口の悪い人もいますが、楽しくやってるみたい。 | | ここの話がわかるようになれば、あなたはもう一人前のPICerです。 | | ・マイコンソフト 悩み事相談室 | | ̄ ̄| | マイコンソフトやツールの質問は、こちらでどうぞ。的確な回答があります。 (_ノ ヽ_) 質問する時のコツ ・性格の悪い回答者はスルーしよう(相手すると逆効果) ・素人玄人などと 上から目線の回答者は、無視してください。相手してはいけません。 ・そこそこ良い回答が出るまでしばらく再発言しないのもあり(良回答は後に出やすい) ・回答者のアドバイスで後日解決したら、結果報告しよう(とても喜ばれる) ・回答者は、僕たち初心者に優しくしてください。あなたも通ってきた道のはずです。 必要なソフトなど(基本無料) 統合開発環境 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 必要なハードなど 初心者はPIC16F1、PIC18F1以降の型番で始めると無理なく始められます。 プログラムの書き込みには書き込み器が必要です。持っていない場合はPICkit3(中華クローンでもまず大丈夫)を使いましょう。 PIC一覧、スペック検索 ttp://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1005 さ、質問どうぞ〜っ 0X0C 2017/07/27〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1501157324/ 0x0B 2017/05/08〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1494235320/ 0x0A 2017/01/04〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1483498857/ 0x09 2016/09/07〜 ttp://rio2016.2ch.net/test/read.cgi/denki/1473238791/ 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 そうそう、PIC に何を期待してるんだってこと。 バリバリ計算したけりゃ ARM なり使えばいいだろ。 PICのPは「peripheral」 元々単純な処理を低コストで実現するためのちっちゃなコントローラ。 だから田舎の拡張を重ねた老舗旅館になってしまった。 すっきりと作られた新館と常連客向けの本館は住み分けが出来てる。 PICは8ビット辞めて16ビットに専念すればどうだろうか? (とりあえずは16ビットのエラッタの修正を) 8ビットのコアはAVRで十分。 でもMicrochipの売上、収益の大半が8bit PICという事実… >>319 へえ、そうなんだ、どこに書いてある? 読んでみたいからリンク張ってくださいな。 >>318 8bit市場は、AVRすら要らないだろ。 >>320 Atme買収の際、代理店プレゼン資料に合併後の構成比率が載ってた 一般には公開されてないと思う 8ビットで割り算すると重いんだけど 演算ユニット積んでほしいな >>323 演算が重いと思うなら上位のものを使う方が良いのではないですかね。 Unsigned int型を10進5桁で液晶表示するような場合 割り算の代わりにBCD演算アルゴリズムを適用すると 速度もコードも格段に改善する そういえばPIC18にはBCD演算補助命令があるけど、 同じ16ビットコードのAVRには無いね。 たった2桁のBCD加算でもBCD演算補助命令無しで作るのは面倒だな。 10÷5=2 10÷(10/2)=10/10×2=2 やり方次第で早くなる >>326 液晶の応答速度考えたら、8bit PICでも余裕過ぎる。 >>329 加減乗算に比べてって意味 これらに比べると圧倒的に遅い x86ももちろん遅い 加減乗算が1クロック2〜3命令実行出来るのに 除算は1命令で数十クロックかかる だから頭の良いコンパイラは、 定数の除算は乗算に置き換える >>331 前に1%精度の割り算を速度重視で、右シフトの N*1/2、N*1/4、N*1/8・・・ の各項を 加算するかしないかの演算で近似したことがあった。 CPUの能力も使う技も30年前な感じで良いねwww >>334 だから頭悪い(コンパイラ)って嘆いてんだろ 俺のカンピューターは、よく飲み代を間違えて多めに払う 朝起きると財布に小銭しかなかったりする。 >>338 財布が空になるだけなら大したことない 後からカード会社に6桁請求されるのに比べたら >>336 フォトセンサからのAD入力値を正規化して0〜100%で表示するのだが、 他の方法も試してみて、結局、原始的だけどこのやり方が一番早くて、省メモリだった。 XC8 でMCCを使ってみたんだけど、不必要な関数が多くないかな? 関数多くて分かりづらい メリークリスマス! MCCのUSB関連機能を充実してほしい!CDCだけじゃ寂しいぞ。 メリークリスマス Harmony2.05にアップデートされてた メリークリスマス! >>346 CDCの枠組みが出来てればそこからHIDに展開してもええんやで、MLAからコード引っ張ってくるもよし >>348 MLAで成功したことはあるんだが、MLAはフォルダの整理がイマイチ理解できない。 CDCベースで簡単にHIDのコードが作れるの!? 14ピンのDIPでUSBが入ってると、面白いものが作れそうなんだけどな。 >14ピンのDIPでUSBが入ってると つ PIC16F1454/1455 >>349 簡単ではないが、ここでブー垂れてるよりは余程前向きだと思うが。 MLAのコードを改造して作ったことはあるけど、俺はHIDが必要な用途はdigisparkに逃げた。 PIC16Fのスリープとクロックの関係について質問! データシートによると31kHz LFINTOSCはスリープ中も動作継続とあります。 ということはシステムクロック源FOSCにLFINTOSCを選択した場合、 Sleep命令を実行してもすぐWakeしてしまうのでしょうか? その場合はSleep前にMFINTOSC-31.25kHz、Sleep後にLFINTOSCを選択すれば 解決するのかな? >>354 クロックが動いていてもwake-up信号がなければsleepは続く。でも場合によっては消費電力はほとんど変わらんかも >>354 は自己解決。LFINTOSCはSleep時に止まらずA/D,Timer等周辺機能に供給可、 一方システムクロックには供給停止しており、空きピンにLED接続して動作を 確認したらちゃんとプログラムが止まってました。 >>355 さんの言うとおり最近のデバイスはSleepでも消費電流が大きいから勘違い… --- Midrange-16F628Aは動作電流Idd=28uA→Sleep電流Ipd=0.02uAなのに Enhanced-16F1827は動作電流Idd=28uA→Sleep電流Ipd=19uAとほとんど減ってねぇ! 3.3Vに下げて16LF1827を使うことも考えたけどLDO追加で消費電流増えるから元の木阿弥 これも半導体プロセス微細化のせいか…5V超低消費マニアは旧製品を使い続けるしかなさそう 19uAはいくらなんでもおかしい。 何か動いてるのがあると思う。 >>357 16f1827ならスペック通りじゃないか。 WDTやらBORやら 全部止めてsleepでしょ? >>356 1827のデータシートにはSleep mode : 30nAとあるけど19uAは何、実測? 何で測ったのか書いてないけどDMMだったら微小電流計測はアテになるかなあという経験。 >>360 それはLF1827の値 ただのF1827は内部の降圧回路が常に大食い状態 >>356 も実測値じゃなくてデータシートから引っ張ってきてるんじゃないかな。 >>362 うん。 で、 >5V超低消費マニアは旧製品を使い続けるしかなさそう はどういうこと? 18ピンにこだわらないなら20ピンのPIC16F18346は? 18326で試した時はスリープ電流は1uA以下だったと思う。PPS便利。 >>356 消費電流が3ケタも違うなんてちょっと信じられないんだけど。 データシート見ても該当する記述は無いし、実測なら測定環境が知りたい。 是非お願いします。 >>366 データシートは>>362 さんの通り 実測はFluke87のuAレンジでほぼ仕様通りの18uAでした 秋月の商品ページに貼ってあるAdvanced InformationなデータシートD022値と microchip本家最新のデータシートD022値って全然違うんだな… バケラッタもあることだしこれからは最新版をチェックすることにしよう スタンドアロン用途ならPIC便利なんだけどWiFiだのなんだの周辺とのつながりを求め始めると 他にいっぱい選択肢出てきちゃったからいまさら感が。。。 冬眠モード使えるから設置してから3年後に作動する遅延起爆装置なんかには便利だろうけど >>367 >ほぼ仕様通りの18uAでした その仕様って、データシートの何ページ? 家で不労所得的に稼げる方法など 参考までに、 ⇒ 『武藤のムロイエウレ』 というHPで見ることができるらしいです。 グーグル検索⇒『武藤のムロイエウレ』" LK7S6VYCY7 冬休みに入ってからPICを勉強を始めたのだけど、 MPLAB v4.05の使い方で結構はまってます。 PIC16F627Aで48kHzの内部オシレーターを使う場合の記述方法(C言語)を教えて下さい。 PCONの値をセットするだけなのだろうけど・・・ >>373 #pragma config FOSC = INTOSCIO #pragma config WDTE = OFF #pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT enabled) #pragma config MCLRE = ON // RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is MCLR) #pragma config BOREN = OFF // Brown-out Detect Enable bit (BOD disabled) #pragma config LVP = OFF // Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be used for programming) #pragma config CPD = OFF // Data EE Memory Code Protection bit (Data memory code protection off) #pragma config CP = OFF // Flash Program Memory Code Protection bit (Code protection off) はmainの外に記述でよくて PCON = 0x00; はmainの先頭に記述すればよいのか?(3V駆動させたいのでBron) >>374 3V駆動(リチウムコイン電池で稼働) 内蔵クロックあり(低クロックの省電力) I/O8系統以上 PICProg4U + ハーフマットのRCDライタで焼ける の条件で探した結果です。 もっと使いやすくて安価なものがあればご教示下さい。 >>376 俺もRCDライタ作って、628や648でいろいろ作ったよ。10年くらい前。 ライタが対応してれば、PIC16F18326か、18346かな。 627A/628A/648Aの内部48kHz動作時は110uAも食うのか… CR2032連続動作電流が200uAだからペリフェラルに回す余裕があまりなさそう >>377 なんでそういう言い方になるの? >>376 が何かした訳でもないだろうに。 おれは誤爆かと思ったが アンカーも無いのに>>376 のことだと即断できるのは >>380 も同じ気持ちってことかなw 冬休みに入って始めた人が7年以上も前に更新されたっきりの 古いチップにしか対応してないプログラマを使う意味が分からんな。 1000円ちょいでほぼ純正と同じライターが買えて、 こっちは最新のPICでも書き込めるってのに。 >冬休みに入って始めた人が7年以上も前に更新されたっきりの >…意味が分からんな。 学校や部活だと ・古い機材を使う ・テキストの更新も大変なので継続的な教材を使う ・ライセンス的に怪しいものは使いにくいので新しいものを生徒に行き渡らせるのはお金がかかる ということが考えられます。 乱暴に嘲るより、フラットに>>376 に選択理由を尋ねた方がいいのでは。 >>356 電池を使うこと考えたら、LFで良いだろ。 白色LEDとか青色LEDはリチウムコイン電池だと厳しかろうに FETもゲート電圧2.5V以下は高いし遅いので4V品が便利やし 10年前の骨董品ではどうにもならないか・・・ 持ってる機材と旧くて浅い知識ではどれが最新のPICなのかも分からない状態なんです。 >>382 できれば、具体的な商品と購入可能なショップを教えて下さい。 ライターのリプレースも検討します! ライタは通販でpickit3 互換機で良ければaliで互換機 18ピンならPIC16F1827or1747 20ピンで良ければPIC16F18346 14ピンに収まるならPIC16F18326 LFがあるならLF PICじゃなくて良いならArduinoNanoかdigispark CR2032で消費電流を極小にしたいならArduinoはボードに余計なものが付いてるからダメだった。 >>388 色々ありがとうございます pickit3が鉄板なのですね すぐに試したいのでamazonで互換品を買いました これから日本橋にPICを買いに行ってきます あとは PIC16F18326 の仕様を勉強せねば・・・ ConfigurationBitsも多くて一つ一つ調べて理解するが大変 道のりは遠いです >>390 AVRを外すこと前提でArduinoを書き込み器と考えてZIFソケット付きのを買えばそれもアリなんだけど、、、、 量産するならそうするかも知れないけど、、、 >391 18326なら仕様を勉強しなくても、MCC使えば簡単だよ。 >>392 AVR 以外の余計なものを外すってことだろ。 USB シリアル変換とか電源周りとか。 実装面積、価格、難易度、納期、ロット数によりけりかな。 >>392 みなさん色々ありがとう こんな便利なpluginがあったのですね クロックの設定方法意味分からんなぁ・・・質問しようかなぁ・・・ と考えてた矢先の情報で感謝です。 >>383 絵空事だけの偽善者は今日も空回り。 で、勉強不足の質問主に対するコメントは無いの? >>398 冬休みは PICProg4U + RCD で楽しめばいいじゃん。 きっと>>383 が助けてくれるよ。 売ってないならサンプル請求してもバチは当たらないでしょ。 仕事で採用して大量に使う予定でも無ければ、仕事で使う人達の迷惑だからやめてくれ。 誰が迷惑なのかよくわからん。PICがサンプル送ってくるのだって会社業務の一環だぞ。 >>401 冬休み中にやりたいんだろうからちょっと無理かな。 >>402 お前は誰を代弁しているつもりなの? それともサンギがそう言ってるの? お前のような客観性のカケラもない奴がマイコンに絡んでるのが不思議。 >>402 どのように迷惑なのか教えてもらえないでしょうか? >>404 株式会社サンギは、東京都中央区築地に本社を置く日本の日用品、化学品メーカーである。 一般には歯磨剤その他のハイドロキシアパタイト製品メーカーとして知られている。 乞食わらわら沸いてきたぜ サンプルってのは大量に採用してもらう前提で機能性能を評価してもらう為に提供されるもので 一個二個趣味で使いたいなんてのはそもそも「資格がない」んだよ 資格の無い奴がこれ幸いと行動してたら正当な目的で利用してる奴迷惑するのはどこの世界だって同じだが。 だいたいサンプルもらった後、気色ばんだ営業から「ご採用頂けますか?」「月何万セットに?」 とか聞かれて お前らどう答えるんだ? >>409 この手の乞食はそういうものだろう 駅前で女性向けに配ってるティッシュを、俺にもよこせと3つくらい持っていくタイプの奴なんだよ 新規参入妨害の日本と違って起業を支援するような風土を感じるけどな >>409 資格があるかどうか判断するのはマイクロチップ社だろ。お前の意見なんかどうでもいい。 >>409 >お前らどう答えるんだ? 答え方は「産業向けですが、生涯ロットで100個ぐらいです」「零細業です」 「個人です」「ホビーユースです」みたいに正直で良いのでは? 少なくとも日本市場では個人向けに拡販することでファンを増やしてきたし そのことでメーカーでの採用にもプラスになっているだろね。 ホビーの人だって、経験したことをもとに、ブログや個人WEBサイトに成果を 出したり、掲示板で駆け出しの人にアドバイスをすることもあるわけで、 そんなことさえ、積み重ねでユーザーを増やすことになる。 Microchipが、「零細とかホビーとかにサンプルサービスしたって、なんも良いことないな」って判断したら、 そのときは、サンプルを要求が代理店経由になるだろう。 それまでは、変な忖度は要らないと、俺は思うよ。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる