denshikobo’s blog

PICプログラミングやPCの操作で感じた日々の由無し事を綴ります

FT231XSを使ったUSBシリアル変換が動いた

1週間前に届いたPic-colo基板の組み立てを先延ばししてきました。 先ずは・・・ (1)ESP-WROOM-02をWifiのアクセス・ポイントに接続する。 ==>O.K. (2)MQTTでESP-WROOM-02からPC上のmosquittoにPubSubする。 ==>O.K. (3)PC上のJAVAプログラムからmo…

Pic-coloの開発は悩ましい

Pic-coloは、PICkit3を使った従来のPICプログラム開発環境とは異なる、新しいプログラム開発環境を提供しようとしています。<==構えはでかい(^_^;) 『これくらい出来なければ使い物にならない』という最低レベルの基準を満たすべく開発を続けてきました。 …

JAVAでMQTTを試してみた

esp8266_MQTTで冷や汗をかきました。でも、なんとかクリア出来たので最後の関門『JAVAからMQTT接続』を試すことにしました。 参考にしたのはこちら(↓)の二つです。 JavaでMQTT入門 ローカル環境でPubSubの動作を検証してみる - Qiita dotnsf.blog.jp JAVAの…

ESP-WROOM-02のMQTT接続で嵌まった

Arduino IDEを使って行うESP-WROOM-02の開発は(小さな不具合を除けば)順調に進み、いよいよMQTTの接続を試すことにしました。 参考にしたのはこちら(↓)のサイトです。 電子工作界隈で話題のWi-Fiモジュール「ESP8266」でMQTTを使う方法 | 株式会社LIG 必…

ESP-WROOM-02を動かして見た

先ずはESP-WROOM-02の動作確認です。 これ(↓)にESP-WROOM-02を半田付けした (2年くらい放置していた)ものを ESP-WROOM-02ピッチ変換用基板《シンプル版》 (基板のみ) - スイッチサイエンス ブレッドボードに取り付けました。IO0,IO2,EN,RSTを10kΩでプ…

基板と部品が同時に届いた

Elecrowに基板を発注したのは10/13です。その基板が今日、手元に届きました。 パチパチパチ~ <配送状況はこんな感じ> 2017-10-23 00:17 日本川崎, 到达互换局 2017-10-20 09:24 广州航空邮件分局, 离开交航 2017-10-18 20:27 广州航空邮件分局, 到达 基板…

Elecrowに頼んだ基板がもうすぐ届く?

Pic-coloの試作基板をElecrowに発注したのは10/13です。 ElecrowのMy Accountを覗いても”In production”のまま変化無かったのですが・・・ 突然、”配送済み”に変わりました。 『えっ、届いて無いけど』 同時に送られてきたメールには We had shipped your or…

三年前からPIC32を搭載したArduinoが発売されていたことを知った

少し前に、秋月電子からPIC32MZを使ったオシロスコープが売り出されました。ソースコードを公開しているのですが、Arduino IDEでビルドすると知ってびっくりしました。PIC最強のプレイヤーであるPIC32MZがArduinoの軍門に降っていたなんて・・・orz akizukid…

ちょっと補足します

入手したArduino (互換機)ですが「EasyWorldMall UNO R3開発ボード」で検索するとヒットします。単価¥458 関東への送料無料というフレンドリー価格です。注文から10日程で届きました。添付されているUSBケーブルはかなり短く、手持ちの別ケーブルを…

Arduino(互換機)を動かしてみた

10月始めに注文したArduino互換機が届いたので、早速動かしてみました。 全くの初心者なので、『Arduinoの始め方』などのサイトを参考に先ずはHello World!から。続いてLチカ・・・えっ、ポートとGND間に直接LEDを接続するって? 言い訳めいた説明が後に続い…

パターン・チェックまで通ったけど・・・

水魚堂氏の作成したMBE(Minimal Board Editor)はデザイン・ルール・チェックを行うことが出来ます。パターンとランドが近すぎるとか、小さな結線ミス(電気的にはOKだけど、パターンとしては繋がっていない)等を探し出す優れものです。このデザイン・ルー…

基板設計を始めた

Pic-coloプログラムのデバッグはまだ終わっていませんが、先行して基板設計に取りかかりました。パターンの設計には水魚堂さんのこれ(↓)を利用しています。感謝! Minimal Board Editorのページ 普通なら、回路図を書き上げてそれに従って基板設計を行うも…

Windows 10にMosquittoをインストールした

MQTTを試すため、WIndows PCにMosquitto(これ↓)をインストールしてみました。 www.eclipse.org OSは64bit版ですがdownloadしたのはmosquitto-1.4.14-install-win32.exeです。 インストーラを実行すると、libeay32.dllとssleay32.dllが見つからない無いと言…

Pic-coloの構想が発散気味になってきた

Pic-coloはUSB-シリアルでPCと接続する構想で設計を進めてきました。リモート接続したい場合はRaspi-PICcoloを使ってもらう(Raspi-3BのWifi機能を利用する)計画です。 しかし、Raspi-3Bを独立電源で動かす(そのつもりでDCDC電源も手配した)のは、なかな…

Arduinoを試してみることにした

Pic-coloの機能拡張には、Arduinoのシールド等を利用してもらう計画です。 例えばこれ(↓)とか www.amazon.co.jp しかし、Arduinoの世界を知らないので、シールドの使用感が今ひとつ分かりません。 そこで、Arduino UNOを購入しようと検索を掛けて、びっく…

sw_operationプログラムのデバッグで苦労した

Raspi-PICcoloはPic-coloのRaspi搭載モデルです。 秋月電子のRaspi用ユニバーサル基板にRaspi-PICcoloを組んでみました。 これを使って、プログラムの試作を進めています。 先ずは基本のLチカプログラムから、これはすんなり動いて次はSW操作プログラムです…

commPortのclose処理で苦労した

Pic-coloは、COMMポートがオープンできない場合はPICとの通信は行わず、SettingメニューでCOMMポートの指定が修正されて、ポートがオープンできた場合にPICとの通信を始めます。 ここまでは、良いのですが問題はCOMMポートが複数ある場合です。一方のCOMMポ…

pickleでPICに書き込んでみた

pickleという、RaspiでPICの書き込みを行うプログラムがあることをご存知でしょうか?これです(↓)。 projects:pickle - wiki.kewl.org lvpにも対応していて、5V電源があればPIC16F1788に書き込むことができます。 その存在は前から知っていたのですが、積…

構造体名が見つからない

Pic-coloは、readelfの出力を解析して変数のアドレスやサイズなどの情報を取得しています。今までは、(便宜上)全ての変数をバイト型の配列と見なして表示してきたのですが、もっと見やすい形式に整える作業に着手しました。 これまでは v_int BASE e803 だ…

Pic-coloの回路図を描いた

当初は、Raspi-Picという名称を考えていました(I2C接続を考えていた)。途中からUSBシリアル変換ICを搭載してUART接続することにしました。その結果、RaspiだけでなくPCにも接続できるようになったので、名称を”Pic-colo”に改めました。今後はブログのカテ…

Bugfixは一歩ずつ

正常系の動作を少しずつ組み込んで、ようやくLチカプログラムが動くようになりました。ほっとしたのもつかの間、今度は異常系のバグが顔をだすようになりました。 バグの一つ目は、COM PORTの設定を/dev/ttyUSB0から/dev/tttiUSB1に切り替えようとしたら出来…

地雷を踏んだ

構造体へのポインタ配列の表示を確認していて、とんでもない地雷を踏んでしまいました。orz MPLAB-Xの構造体へのポインタ配列の表示方法はこんな感じでした。 (1)展開前はtest_arrayがTest*[16]タイプでAddressが0x300という表示 (2)展開するとtest_ar…

ぼちぼち、開発を進めて行く

長期に亘る作業計画(1か月とか3か月とか)は途中で100%頓挫することが分かっているので、最近は数日先くらいの作業予定しか立てません。(^_^;) 昨日(8/28)の作業予定は”ステータスの取得と表示”でした。 三種(RUN/BREAK/IDLE)のステー…

なんとかLチカが動いた

『Lチカ・プログラムをLoadして動かす』 やろうとしたのはそれだけなのですが・・・ LoadコマンドでLチカ・プログラムをFlashメモリに書き込みました。Runコマンドで所定のアドレス(cinit)から走り出しました。 ただ・・・ 直ぐ、0番地付近に設定したBrea…

課題が一つ解決した

今手掛けているProjectの目指す所は『PICの学習環境であり、プログラムの開発環境であり、アプリケーションの実行環境』です。<==大風呂敷 (^_^;) 『PICの学習環境』として提供するのは、レジスタやメモリをREAD/WRITEしたり、小さなテスト・プログラム…

放置していた不具合に対処した

通信ポートは、現在の環境に合わせてWindowsなら”COM4”、Linux(Raspi)なら”/dev/ttyUSB0”を設定しています。これを利用者の環境に合わせて設定できるようにする計画なんですが・・・ 何らかの事情でPICと通信できない場合、今までのプログラムは受信待ちル…

readelfの問題が解決した

Raspi上の動作確認で、関数リストを作成できないという不具合が発覚しました。 実は、WindowsとRaspiでreadelfの出力に違いがあることは分かっていて、解析内容は同じなのですが、Raspiの方はコメントが日本語になっています。 <Windows上のxc32-readelfの…

Raspi上で動かしてみた

当初はRaspiとPIC間の通信にI2Cを使う計画でした。しかし、USBシリアルを利用すればPCでも同じアプリが動くことに気付き、UART通信でやることにしました。 それ以来、開発はPC上で進めてきましたが、粗方動き始めたので久しぶりにRaspi上で動かしてみること…

タイミング依存のバグが見つかった

不具合に気付いたのはPICのTMR0レジスタを読み出したときです。TMR0は常にカウントUPしているので、読み出す度に異なる値が表示される筈なのですが、0を示したままです。はて? 調べてみると、ホストとPIC間のコマンド送受が正しく機能していません。あれこ…

break_conditionとbreak_statusの操作は混乱気味

PIC側に設定されているbreak_conditionとbreak_statusをホスト側で読み取り、break_statusをクリアして書き戻したり、break_conditionに”THRU”または”BREAK”を設定して書き戻したりする操作を組み込もうとしています。 break_conditionとbreak_statusを反復…