ぐだぐだ低レベルプログラミング(20) RISC-V、nop、mv、li??

JosephHalfmoon

別シリーズに (93) (94) (95) とRISC-Vのアセンブラねたを仕込んでしまいました。一応、アセンブラは「こちら」というこで引っ越しをすることにいたしました。今後はRISC-Vのアセンブラねたはこちらということでお願いいたします。ま、どちらでも大した違いはないんでありますが。しかし、何か月ぶりのシリーズ再開だ? “ぐだぐだ低レベルプログラミング(20) RISC-V、nop、mv、li??” の続きを読む

鳥なき里のマイコン屋(95) Longan nano、RISC-Vデバッガ

JosephHalfmoon

前回前々回とLongan nano上でアセンブラなど触り始めると、欲しくなるのがデバッガであります。大したプログラム書くわけではないので、Cであれば「伝統の」printfデバッグでもなんとかなりますが、アセンブラだと、やはり「止めて」レジスタなど見たくなる。そこでこれまたお手頃価格のデバッガ購入。

“鳥なき里のマイコン屋(95) Longan nano、RISC-Vデバッガ” の続きを読む

鳥なき里のマイコン屋(94) Longan nano、アセンブラその2

JosephHalfmoon

前回、何もしないで「行って来い」だけのアセンブラ関数を書いて、生成されたオブジェクトコードを眺めてみたときに、ちと気になったことがありました。RISC-V用のツールチェーンのobjdumpがディスアセンブルしたコード、16ビット幅でした。その辺に転がっている資料をみるとRISC-Vの命令は32ビット幅の筈。なぜ?

“鳥なき里のマイコン屋(94) Longan nano、アセンブラその2” の続きを読む

鳥なき里のマイコン屋(93) Longan nano、アセンブラ関数を呼び出す

JosephHalfmoon

前回、割り込みを使うにあたって、Longan nanoはRISC-Vコアといいながら、RISC-Vのことなんぞ、ちーとも勉強しないまま、漫然とCでコーディングしている具合の悪さを痛感いたしました。やはりコアを知るべきでしょう。そのためにはアセンブラで書いてみるのが一番。つらつら本を読んでも右から左に忘れてしまいますが、コーディングしてバグったことは忘れない?

“鳥なき里のマイコン屋(93) Longan nano、アセンブラ関数を呼び出す” の続きを読む

鳥なき里のマイコン屋(92) Longan nano、外部割込み

JosephHalfmoon

前回は、Longan nanoのADコンバータを動かしてみましたが、なるべくまだ触っていないDMAとか割り込みとかには触れないようにソフトトリガの単発変換でした。今回は、積み残しの機能からまず割り込みを使ってみたいと思います。でもね、ちゃんと読んでいないのだRISC-Vの割り込みの仕組み。 “鳥なき里のマイコン屋(92) Longan nano、外部割込み” の続きを読む

鳥なき里のマイコン屋(91) Longan nano、ADC 単発変換

JosephHalfmoon

Longan nano(Sipeed社製ボード)は、 GigaDevice Semiconductor社のRISC-Vコア搭載32ビットマイコンGD32VF103を搭載しています。低価格なだけあって、マイコンとしては小ピンの部類のパッケージバージョンですが、周辺は充実、なかなか全てを触りきるまでに至りません。本日はかねて懸案のADコンバータを触ってみます。

“鳥なき里のマイコン屋(91) Longan nano、ADC 単発変換” の続きを読む

鳥なき里のマイコン屋(90) Longan nano、microSD

JosephHalfmoon

RISC-V搭載、お手頃価格でカラーLCDまで背負った小型マイコンボードLongan nano、比較的順調にLCD/LED/DAC/UART(USART)/I2Cと動かしてまいりましたが、今回はmicroSD(TFCARD)であります。ボード下面にスロットがあります。Readはね、何の問題もなかったんですが、Writeに問題あり。 “鳥なき里のマイコン屋(90) Longan nano、microSD” の続きを読む

鳥なき里のマイコン屋(89) Longan nano、I2CでAQM1602

JosephHalfmoon

RISC-V搭載の超お手頃価格マイコン開発ボードLongan nanoを触ってみております。LCD、LED、DAC、USART(UART)と来たので、本日はI2Cであります。同じシリアル通信といっても、お互い取り決めだけで勝手に投げつける感のある、RX/TXのみの非同期シリアル(UART)にくらべると、I2Cはいろいろ確認しながら通信する分安心でもあり、面倒でもあり。テスト通信のお相手は毎度おなじみの秋月通商AQM1602であります。 “鳥なき里のマイコン屋(89) Longan nano、I2CでAQM1602” の続きを読む

鳥なき里のマイコン屋(88) Longan nano、USARTでprintf

JosephHalfmoon

超お求め易い価格で多機能、そして何かと話題のRISC-V搭載のマイコン・ボード、Longan nanoにも大分慣れてきました。オンボードのLCD、LEDそしてDACという順番に動かしてきましたが、この辺でシリアルポートにprintfできるようにしておきたい。原始的とそしられても、あれば使ってしまうprintfデバッグであります。 “鳥なき里のマイコン屋(88) Longan nano、USARTでprintf” の続きを読む

鳥なき里のマイコン屋(87) Longan Nano、DAC

JosephHalfmoon

前回、Longan NanoのDACを動かすと、電圧は出力されるけれども、ディスプレイが消えてしまいました。今回そこをFIXして、ちゃんと電圧出力とディスプレイが両立できたので投稿しておきます。Longan Nano、多機能ではあるのですが、比較的小ピンのマイコン利用なので、端子機能のアサインには注意しないとなりません。 “鳥なき里のマイコン屋(87) Longan Nano、DAC” の続きを読む

鳥なき里のマイコン屋(86) Longan Nano、GD32VF103-SDK

JosephHalfmoon

前回、何かと話題のRISC-VをCPUコアに頂くお手頃価格な割には超多機能なマイコン開発ボード、Sipeed社Longan Nanoをお手軽な筈のArduino環境で使ってみました。確かに「Lチカ」は即できるのです。しかし、使いたいアナログインタフェースやディスプレイが簡単に使えなくて、ブーブー言っておしまいになりました。今回は、周辺回路をフルに使える筈のSDKの方にスイッチしてみたいと思います。SDK使うのであれば、ちゃんとデータシートなど読まなきゃ、と「いつもの」反省をしましたが、結局、例によってちゃんと読んでません。 “鳥なき里のマイコン屋(86) Longan Nano、GD32VF103-SDK” の続きを読む

鳥なき里のマイコン屋(85) Longan Nano、Arduino環境??

JosephHalfmoon

久しぶりのMCUネタ、正直いってちょっと目論見違いです。まあ、よく調べもせずに勝手に目論んだ私が悪い。このところのアナログよりの応用に使うつもりで、ADとDAと両方搭載、できれば表示もあり、それでいてブレッドボードに刺しやすい小型で「お手頃」なマイコンボード、開発環境もお手軽、という条件でボードを購入いたしました。Longan Nanoでございます。 “鳥なき里のマイコン屋(85) Longan Nano、Arduino環境??” の続きを読む

データシートを読む(9) 電源、あんたが決めなはれ

JosephHalfmoon

要介護の年寄りなど抱えていると、病院へ行く、買い物行きたい、何につけてもタクシーにお世話になることが多いです。田舎じゃ呼ばないと来ないタクシーも、都心じゃその辺を流している。信号の度に数台は走ってくるタクシーですが、信号3、4回待ちしないと空車が見つからない、数週間前までは。けれどこの頃は違いますわな。空車の赤ランプ点灯したタクシーが数珠つなぎです。しかしね、年寄り連れて行く先もまた無い。弱った。

“データシートを読む(9) 電源、あんたが決めなはれ” の続きを読む

データシートを読む(8) 衣の下のメモリ

JosephHalfmoon

コの字のせい。家に居る時間が長くなれば、熱心にデータシートを読むか、と言えばさにあらず。この歳になっても人間が出来ていないんでありますな。何かスッキリしない感じで、何も手につかず、ただただ怠惰に時間が過ぎるのを待つのであります。折角の時間、もっと有効活用したらどうか?と思っても心が動かず。仕方なくデータシートを紐解けば(PDFファイルを開いただけですが)、ちょっと引っかかるところがある! “データシートを読む(8) 衣の下のメモリ” の続きを読む