PIC専用のスレ Part 58 エラッタの話題も歓迎
■ このスレッドは過去ログ倉庫に格納されています
______ /Microchip ./| / ( ゚∀゚) / | アセンブラのアの字もわからない |~ ̄ ̄ ̄ ̄ ̄| /. 超初心者からHEXが読めてしまう |/Z./Z./Z./Z_|/ || 鬼プロフェッショナルの為のスッドレ(#゚Д゚)だ!モ゙ルァ ||. ||. ||. || 大人気のPICマイコンのスレ なんといっても情報が豊富だし、開発環境も多いし、パッケージも豊富 使いやすくて、しかも安い。やっぱりPICだよね 例の如く基本リンクだ http://www.microchip.com/ マイクロチップ本社(Microchip Technology Inc. ) http://www.microchip.co.jp/ マイクロチップ テクノロジー ジャパン 株式会社 http://www.microchip.com/maps/microcontroller.aspx Microchip Advanced Part Selector (Maps) またーりやっておくんなまし 種類が多くてワカランって奴は上記パーツセレクタで、機能から最適製品を絞り込め! 教えて君はとりあえずGoogle( (p)http://www.google.co.jp/ ) くらい使おう テンプレ内の秋月小売価格も在庫が捌ければ、次の仕入れからは昨今の為替相場変動にならって 適宜価格改定されてます。ここの表記価格とは違うかもしれないのでそのつもりで 回答者する人の注意 . 最初に回答したい気持ちは分かるけど、質問者の内容を、落ち着いてよく読もう。 質問者する人の注意 . あなたの周囲しか通じない変な省略語は使わずに、なるべく詳しく説明してね 前スレ: PIC専用のスレ Part 57 http://rio2016.5ch.net/test/read.cgi/denki/1517669525/ 突然知らない人に絡まれたけど、 相手が何言ってるのか分からない。 PIC18F46K22ですが、5V電源で1Kと2Kの抵抗で3.3Vデバイスをドライブしてます。 Highレベルは約3.3Vなんですが、Lowレベルは約0.5Vです。 こんなもんですか? >>638 結論から書くと、 質問するときはもっと詳しく。 出力するデバイスが書かれているのに、受けるデバイスが書かれていない。 詳細 1Kと2Kの抵抗がわかりにくい、1kと2kで分圧。2kがGND側。ってことだと思うけど、質問者は図をかくべき。 動作は直流レベルなのか、パルスなのかでも変わる。 直流の話だとして、相手が入力電流が流れないデバイスならLのときに、相手デバイスの入力に0.5Vも出ているなら、何かが異常。 相手が何らかの入力電流が流れるものなら、どうなるかわからない。 >>639 出力ピンはRD6(UART TX)です。 相手側はRN42(Bluetooth Module)のUART RXです。 抵抗は分圧でGND側は2KΩです。 今のところ問題は無いのですが、気になって質問しました。 >>640 0.5VというのはPICの出力端子で測ったの? そのときのRN42の端子電圧は? >>643 RN42内部で weak pullup されてるんじゃない? ヤマ感ですけど… Weakpullアップにしては、1k//2k を0.5Vに浮かせるのに0.75mAもいる。 Bluetoothのモジュールがこんな強いプルアップをするかな…。 RN42は、素の状態? それとピッチ変換も含めた市販のブレークアウト基板? >>645 秋月のピッチ変換(USB UART付き)のです。 >>646 だったら回路図を見ないと。 http://akizukidenshi.com/download/ds/akizuki/AE-RN42_manual_r1.1.pdf RXD端子には、3.3kΩを介して、FT231のTXDが繋がれてます。 RXDを他からドライブするのなら、3.3kΩでプルアップされているのと同じ。 >>639 でも書きましたが、質問するときは、最初からできるだけあなたが知っていて 質問を読む人がわかっていないことを、書く方が良いのです。 「秋月のモジュールを使っている」ことはあなたにしかわからないよね? あと、秋月のRN42を検索すると、USB UART付きのものは二つ出てきます。 そのうちのどれなのか分かっているのはあなただけ。 >>646 のように、ぼやかして書く代わりに、型式を書けば、より確実に伝わります。 >>643 2現象で取ってくれると比較しやすかったんだけど、RN42の端子もPICの端子 とほぼ同じ電圧ということでいいのかな。 だとすると1kΩの抵抗には電流が流れていないので0.5Vを出しているのは PIC側っぽい。 PICのTX端子には1kΩの抵抗以外何もつながっていないのかな。 LEDがつながってるとかないよね。 まずは1kΩの抵抗を外して無負荷でもPICから0.5V出ているのか。 オシロのグランドは本当にPICのVssと同電位なのかも一応疑いたいね。 >>648 遅くなりました。 https://i.imgur.com/s46WpDe.jpg 分圧抵抗をドライブしているPICのD6(UART TXD)出力が緑で分圧されてRN42モジュールの入力ピンが黄色です。 PIC出力は0Vまで落ちていますが、分圧先は浮いているようた波形です。 RN42モジュールの入力ピンには3k3(3.3K?)と言う抵抗を通してFT231XQ(USB UART)のRXDに接続されます。 >>649 秋月の通販コード K-07378 です。 ネットで調べると1Kと2Kで分圧する記事が多くあり真似しました。 >>649 すみません、説明に間違いがあります。 PICの出力を分圧して、RN42モジュールのRXD端子に接続されて、モジュール内部は、RN42本体のUART RXと直列抵抗接続のFT231XQのTXDと接続されます。 PICのTXDとFT231XQのTXDピンから抵抗で接続されます。 FT231XQからUSBでRN42を操作するときはPICの信号をジャンパーで切りますが、PICから操作するときはFT231XQは抵抗を通して接続されています。 >>651 RN42モジュールへの電源供給はモジュール内の5V(VBUS)の三端子レギュレータXC6202P332PR(3.3V)のVINに外部から5Vを接続しています。 USBを使うときは外します。 1Kと2Kの分圧を10Kと20Kにしました。 RN42モジュールに接続しない状態の波形です。 https://i.imgur.com/BtZ09qf.jpg RN42モジュールに接続したら2Vも浮き通信出来ませんでした。 https://i.imgur.com/LWt2uYg.jpg 分圧抵抗は小さくしないといけないようです。 PICの出力が0V、RN42のRxDはハイインピーダンスなら、 この回路は、赤色の回路と等価になる。 だから、RN42のRxDは0.55V。 しくみを考えれば、闇雲に分圧の1k、2kを大きくする意味なんてないのに。 あ、>>654 の赤色の回路の下の抵抗は667Ω。(1kと2kの並列) 電圧の計算結果に大した違いはありません。 >>656 >影響を見たかったから 実験重視の方が尊い、と考える人もいるけど、単純な計算でわかるようなことを実験してみて 「しないといけないようです」って〆ていたら、同じようなことを繰り返すよ。 実験してみるのはいいけど、せめて理屈と実験結果が合うかどうかぐらいは検証した方がいい。 なんて話はPIC専用スレではなくて、電子回路の初心者スレの話題ですね。スレチすまん。 手持ちの抵抗で試してみただけなのに文句つけるやつw >>658 言いたいことは分かるけど、じゃあおまえ、高周波の分野でも同じことを言えるのかって話だな まあオームの法則を分かってないような奴がYOKOGAWAのオシロ使ってるのは信じられないけどな >>660 違うもので同じことは言えないだろね。 (1)2に3を足したらどうなるどうかを実験するのに林檎を持ってくるのか、頭で考えてわからないか (2)スープに少し塩を追加したら印象がどうなるのかを実際にやってみるのか、頭で考えてわからないのか (2)を根拠にして、(1)も実験してみるべき、ってことにはならんよね。 設計の習慣やチカラと、使ってる道具との関係は事情もいろいろ考えられるから、信じられないってことはないな。 違うものでも似たようなものなら同じような事は言えるだろね。 ゆるーくゆるーく生きていけばいいんだよ。 知に働けば角が立つだろ? >>660 高周波まで持ち出さなくてもある話ですな。 いまは売ってないけど、むかし秋月で売ってた電圧計キットと 熱電対を組み合わせて千℃超でも計れるキット、 分圧抵抗の比率計算は合ってたんだけど キロΩオーダーじゃ抵抗値が小さすぎて 熱電対がドライブできなくて測定できなかった。 同じ比率のメガΩオーダーの抵抗に置き換えて はじめてまともな温度が測定できるようになるキット内容だったけど、 設計者は単純な計算でわかるようなことと思って動作確認しなかったんかなぁ・・・(^p^;) >>663 熱電対ってドライブするか? パッシブに電圧測るだけだろ 熱電対のドライブ能力が負荷の重さに負けたという話をしている >>663 K熱電対の奴? 取説に470kと1Mに変更しろって書いてあるなあ。 なんか見落としたんじゃね? >>663 熱電対の出力抵抗はどれくだいだったの? 昔はアナログ計器使ってたから、kΩオーダーの入力抵抗を想定するのは普通だったと思う >>664 電流を極力流さない様にしないと、正確な測定出来ない。 >>667 出力抵抗は、不明だけどMAX6675の入力Zは、 60KΩだから出力抵抗は、低い気がする。 熱電対は異なる金属を接合しただけなので、その両端の抵抗は数オームと思われ 絶縁抵抗の意味がわからなかった。 https://www.okazaki-mfg.com/Tech_info/faq_01.html これを見て納得した。 熱電対のキットってこれの話だろうか。 https://blogs.yahoo.co.jp/tek2465/10857307.html もしこれの話だったら、熱電対のドライブ能力ではなくて、温度補償に使っているS-8100のドライブ能力の方だろね。 熱電対そのものの、出力インピーダンス≒熱電対の直流抵抗 だけど、これが問題になるのは よほど熱電対の線が長いとか、極端にセンサー入力インピーダンスが低いとか。 …なかなか考えにくい。 回路構成とか全然覚えてないわ 記憶違いだったのかもごめーん(^p^;) >>666 そうなのか、見落としてたのかも。(もしくは 一応組んだときに こうすりゃ動きましたよ、みたいな話を 秋月さんとこへもメールだかコメントだか忘れたが なんかで送った記憶があるので それで反映された可能性モ微レ存><;) 米Waveが「MIPS Open Initiative」発表、MIPS命令セットアーキテクチャなどをオープンソースへ https://mag.osdn.jp/18/12/18/154500 オープンソースになるのはMIPS32R6やMIPS64R6だけの模様 MIPS32R6やMIPS64R6はそれまでのMIPSとはバイナリ互換性がない新しい命令セット PIC32のMIPSコアはMIPS32R2、MIPS32R3、MIPS32R5だけ https://wavecomp.ai/mipsopen MIPS Open™ Community Components Once the MIPS Open Community is launched, registered members will have access to the following IP and technology resources: The open source version of the 32 and 64-bit MIPS Instruction Set Architecture (ISA), Release 6 MIPS SIMD Extensions MIPS DSP Extensions MIPS Multi-Threading (MT) MIPS MCU microMIPS Architecture MIPS Virtualization (VZ) https://pc.watch.impress.co.jp/docs/news/1159305.html Wave Computingは17日(米国時間)、同社が保有している MIPS命令セットアーキテクチャ(ISA)のオープンソース化プログラム「MIPS Open」を発表した。 これに伴い、MIPSを次世代SoCを使う開発者、半導体企業、大学などは、 32bitおよび64bitのMIPS ISAをライセンス費用なしで利用できる。 さらに、MIPS Openプログラムの参加者は、何百もの特許とともにライセンス供与される予定。 同プログラムは具体的には、以下の技術やリソースが含まれている。 ・オープンソース版の32bit/64bit MIPS ISA Release 6 ・MIPS SIMD拡張 ・MIPS DSP拡張 ・MIPS Multi-Threading技術 ・MIPS MCU ・microMIPSアーキテクチャ ・MIPS仮想化 PIC18FでUSB機器作ってるんだけど、PID OUTが短い間隔で連続で来るとNAKしか返答しなくなってUSB割り込みが発生しなくなってしまうことが起こって困る。 データトグルビットが怪しいのでロジアナで見ても正常に反転してるっぽいし原因がさっぱりわからん。 エラッタかと思ったがエラッタの話題すると荒れそうだしどうしたもんか・・・。 奴は回避するワークアラウンドがあるにも関わらずエラッタ吠えまくって 治せ治せと駄々こねた 白い目で見られて当然 自己解決しました。 PID OUTを受信するとBDnCNTに受信したバイト数が入るようで、受信の度にBDnCNTをセットし直す必要がありました。 データシート何度も読み返したんですが、重要じゃなさそうだったので斜め読みしてUSBエラー割り込みの項目ばっかり読んでました・・・。 どうも失礼しました。 初めてのPIC0x12スレに俺の>>675 の書き込みが転載されてるんだけど意味がわからん・・・ マルチって書かれてるけど、それなら両方に書いたんですがって断り書き書くよ。 転載するなら自己解決した>>680 も含めて転載してよ。 PICスレは魑魅魍魎の世界だから、何があっても不思議では無い。 pic24fでアセンブラやろうとしてるんだが、ググってもそれ系のサイトがぜんぜんかからんな。 アセンブラがXC16に内包ってことが判るまで半日以上かかったわ。 とりあえずプロジェクト立ち上げつつ、XC16 ASSEMBLER, LINKER AND UTILITIES User’s Guideを 読んでるんだが、これの日本語版ってないのかね? MPASMと勝手が違いすぐる・・・ >>684 逆に考えた方がいい、そんなの必要とされてないなら自分で作っちゃうんだって。 技術的優位を保ちたいなら外に出さなきゃいいし、金銭的なら最初の数社には売れるかもよ。 なんか勘違いされてそうな気がするんで一応。 > とりあえずプロジェクト立ち上げつつ これ、MPLAB Xで起こしたってことね。 XC16のコンパイル結果に疑問があるのでアセンブラリストを出力して検証したいです。 MPLABIDEXの設定変更で可能でしょうか? いつ発売されたのか知らんけど(秋月HPでさっき見たのだけど)PIC SNAP ってどうなんすか? 今から始める人ならピクニックよりもお薦めだったりします? >>688 名称くらいちゃんと書けよ、馬鹿なのか? >>690 >秋月HPでさっき見たのだけど >あい、わすれますた(^p^) 医者に診てもらえ。 >>690 なめてんのか、てめえは。 も一回見直してこいや、サルが! MPLAB Snap : In-Circuit Debugger/Programmer だから PIC KIT もしくは ICD の後継っていう扱いなんじゃね? PIC KIT 3/4より安いけどVpp生成回路がないらしいから高電圧プログラミングが必要なPICには書けないとか PICだけじゃなくAVRやそのほか(よく知らん…)いろんなデバイスに書けるらしい ICSP以外にJTAGやSWD(よく知らん…)にも対応してるらしい そして、教えたくて仕方ないもう一匹のサルが甘やかすw >>687 確かコンパイラのオプションで.sみたいな拡張子でアセンブラの出力してくれるオプションがあったはず。 てことは、PICKIT3とか4は電圧生成回路を内蔵していたんですか・・・ カバーもついてるし意外に便利そうね(^^; wniの鈴木里奈の脇くっさ (6 lゝ、●.ノ ヽ、●_ノ |!/ | ,.' i、 |} ', ,`ー'゙、_ l \ 、'、v三ツ / |\ ´ ` , イト、 /ハ ` `二 二´ ´ / |:::ヽ /::::/ ', : . . : / |:::::::ハヽ https://twitter.com/ibuki_air https://twitter.com/5chan_nel (5ch newer account) 古代神が見つけてくれると祈りつつ質問 大昔ParallaxがPIC16xx用のライター出してた時期があったのですが、 PIC16Cxx-PGMの回路図もしくは通信プロトコル関連をご存知の方、 何処かに関連資料残っていませんでしょうか? ググったけど出て来んかった 基板裏の写真はあるがPIC使ってるので現物手に入れ無いと無理そう >>702 ありがとうございます 現時点で判明している全ての情報としては、 古代文明(インターネット期前)の頃に売られていたらしいく 途中でTechTools社へ変わり、名称もPICWriter(名前がアレなので検索不能)と変化、までは判明し… TT社が鯖処理したらしく、waybackmachine見ても何も残ってない状態 ハード側は、古いFTPサイトのTXTにParallaxのPIC16Cxx-PGMについては Microchip社のDatabookのProgramming PICのChapter3を参照、 そこにINHX8M formatと共に書き込みの仕方も含め載っている、との記述があるのですが (なお現在のMicrochipの該当AppNoteは不明)これも何を指すのか不明です 記述されたdatabookなるものが何であるか判明すれば助かるのですが… dosエミュで(該当すると思われるzip内のコンパイラ)走らせたら死亡しました DB25のパラレルはbitbangタイプと思われます。GND,DATA0とBUSY信号しか配線されてません これは当時を知る古老が必要な予感… いつもはジジィし根などと罵倒しているバカ造の集うスレで今度はジジィ頼みか? 都合良すぎるんじゃ無いか? >>703 見つけたURLとか晒せよ 本体は中古がebayにあるから買えば良いんじゃね? >>705 とりあえず見つけたのがコレ http://www.armory.com/ ~rstevew/Public/FTP/PIC/index.txt 実物は今バラして回路図書いてる 集合抵抗はBOURNS 8x-2-222 なので4606x-102-821lf.pdfからタイプ4608X-102-222と判断 >>704 化石掘り起こしてる時点で当人もジジイだろ。 で、んなものをいまさらどうにかしようというのもジジイの趣味。 ジジイがジジイに助けを求めてるんだからいいじゃん。 しばし見物ってことで。 >>707 バカ造がジジィを罵倒するスレで、ジジィAがジジィその他に頼み事をするってか? 「バカ造さん、質疑応答の間だけは罵倒は止めてね、見逃してね」と星に願いながらか?w プライドの無いジジィAだな。 16bitのアセンブラってすげー楽w 8bitに戻れなくなりそう・・・・ 16bitいいよね 何故かココでは要らない子扱いなんだよな デュアルコアなんて変態扱いだよ PIC24は帯に短し襷に長しで使い辛い面があるのでは add w0,[++w1],[w2--] とかできるんだよね。 8bitで書くと、こんな感じかな。 incf w1,f movf w1,w movwf fsr movf indf,w add w0,w movwf temp movf w2,w movwf fsr movf temp,w movwf indf decf w2,f アセンブラしかできない奴は今時肩身が狭いから ここでわめくしかうっぷん晴らし出来ないんだろうな ここでももちろん邪魔者だが 少なくともアセンブラで組んでたプログラムをCで書き直すくらいは楽勝だな。 逆も簡単だよ。 私はCで書かれたサンプルプログラム(作例)を見ながら、 脳内コンパイルしたニーモニックをキーボードから打ち込んでいる。 Windowsアプリみたいにメニューや機能がいっぱいあるとか、なんか難しいアルゴリズムを実装するとか、 そういうんじゃなければ16bitはアセンブラで十分な気がする。便利すぐる。 >>715 MIPSのやつは、なんかよう解らんからCでいいと思う。 あのアセンブラで処理時間削ってる人がいたら、それはそれで崇めたい。 RISC CPUでフルアセンブラで書くとか何の修行やねん >>721 楽しんでるんだよ、仕事としてやれるわけ無いだろう。 >>721 いいじゃん、わざわざ真冬に滝に打たれて喜んでる奴も世の中にゃいるんだからさ。 ただ、のこのこ出てきて他人に勧めないでほしいわなw アセンブラができない奴は肩身が狭いから ここでわめくしかうっぷん晴らし出来ないんだろうな ここでももちろん邪魔者だが >>721 パズルをやってるようで楽しい。 その分思考時間はCに比べて必要だから生産効率を求めるなら無駄だろうね。 >>724 世の中には、釣具ショクニンも、魚屋さんもいるわけで。 のこのこ出てきて、その世界の楽しさを披露してくれるのもネタとしては面白いと思う。 慣れというのがあってね、subwf movwf 同じ wf でも subtract work from file, move work into file と心の中で唱えられるようになるとがぜん早くなる >>728 >慣れというのがあってね >心の中で唱えられるようになる まあ、所詮そういう次元だろう。 自慢されても滑稽なだけ。 >>720 MIPSとかは、コンパイラに任せたほうが速いと思う。 MIPSあたりでアセンブラの利点は、実行時間が読めること なので、コンパイラの最適化をすべてオフにすればアセンブラと変わらない >実行時間が読める IDEでストップウォチを使えば読めるどころか正確に計算結果を表示してくれる。 そもそも、時間が必要ならタイマー割り込み使うからね。 アセンブラの出番なんてまず無い。 PIC18F使いですが、 PICKit4は買いですか? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる