ブログ記事105件
8ピンなどの小さなマイコンでは使用するピン数が少ないUARTやI2Cなどのシリアル接続が便利です。液晶キャラクタディスプレイも自作のモジュールでUART接続やI2C接続にしてきましたが,どうせなら両方に対応できるモジュールが便利かと思い,試しに作ってみました。サンライク社の液晶キャラクタディスプレイSC1602BSLB(パラレル接続)に作ったモジュールを組み込み,RaspberryPiPicoからUARTとI2Cの両方の接続でデータを送り表示しているところです。一応動いています(^^)。
RaspberryPiPicoをarduino-picoで使っているのですが,UART通信のSerial1.write(0)がコンパイルエラーになるのでその対策のメモです。どうも”0"はコンパイラが数値の型の判断がつかないようですので,型の定義でエラーは出なくなりましたV(^^)。頭を少し整理すると下記のような事だと思います。Serial1.print(0);//0という文字のAsciiコード(0x30)が送られるSerial1.write(0);//エラー!!数値
RaspberryPiPicoでarduino-picoボードマネージャによるシリアル通信(UART,I2C,SPI)機能を使う際のピン配置と設定のメモです。どうにも忘れっぽいので,概要とリファレンスへのリンクのページにしました(^^;;;;;;。(参考・引用)・arduino-picodocs・ArduinoLanguageReference・RaspberryPiPicoピン配置図私は各囲みのデフォルトのピンしか使った事がないのですが,,,それぞれの通信方式
PCとシリアル通信するソフトの動作確認をする機会があり、たまたま手が届くところにmicro:bitがあったので試してみました。micro:bitでシリアル通信をするブロックがあるのは知ってたけど、使うのは初めて。やってみると意外と簡単で、ここでもやっぱりmicro:bitの素晴らしさを改めて実感しました!作ったプログラムはこちら。micro:bitとPCをUSBで繋いでデータを取りたかったので、このような設定にしました。とりあえず1秒に1ずつ変数を増やして、それを表示さ
市販の液晶キャラクタディスプレイ(LCD)はマイコンから使いやすい表示器ですが,基本は8bitデータのパラレル入力です。そのため出力ピンの少ない小さなマイコンでは接続しにくいので,自分なりに使いやすくしようとパラレル入力のLCDにI2CやUARTからの変換モジュールをATtiny1604を使って自作してきました。今まで作ったモジュールは使ってしまったので,メモリは少ないですがピン数の同じATtiny404でまずはUART対応版から作ってみました。UARTモジュール付きのLCDです。100均
7セグメントLEDドライバTM1637は電子工作の代名詞的なLED表示器をシリアル通信で6桁までドライブできて安価なので重宝しています。TM1637を表示だけに使っていたのですが,16個までキースキャニングできる機能もあるので試してみました。機材は手持ちの以下です。MPU:ATtiny4027segLED:TOT5321BS-9B(3桁)LEDドライバ:TM1637スイッチ:タクトスイッチ,5個大まかな構成と接続です。キースキャニングして1byteのスキャン値を表示してみました。
さて前回の記事の続き、風速計を作ろう編です。前回の記事はこちら↓『実験装置を作ろう!』風速計を作ろう!さて前回の記事では、装置全体の説明で終わりました。ここからは、装置の各部の詳細についてそれぞれ説明していこうと思います。(※実験装置の製作…ameblo.jp前回の記事で説明した通り、フォトセンサ、DCファン、マイコンを使った風速計を作ろうとしています。手配していたマイコンとフォトセンサが手元に揃ったので、"開封の儀"を執り行いましたマイコンまずはマイコンです買ったのはこちら↓
日記このところ、ある機材と接続するため、Pythonでシリアル通信用のプログラムを書いているのだけれど、最初こそPythonって変数とか関数の型宣言をしなくていいのが楽でいいなあと思っていたのだけれど、とんでもない話だった。人間の(オイラの?)記憶なんて当てにならないもので、ステップ数が増えていくにしたがって何がどんな変数だったか忘れてどんどんデータの流れが読めなくなっていく。これがCだったら冒頭の型宣言を見ればある程度思い出すか、どんな変数か推定もできるのだが・・・加えて、関数
フルカラーシリアルLEDWS2812Bを使った8x8RGBLEDパネルを8pinの32ビットマイコンSTM32C011J4M7につないでみました。シリアル接続で使う信号線は1本だけなので,8pinの小さなマイコンにはぴったりです(^^)。データ出力のタイミングをSTM32C011に合わせて,動かしてみたところです。このパネルはかなり明るく光って目が疲れるので,光量は絞っています(^^;;;。[ハード構成と配線]・MPU:STM32C011JYM78pin・8x8RGBLE
以前、すでに出来ていた内容でしたが、今回あらためておかしい(うまくいかない)点が見えてきたので残します。一見正常に見えるコードまず、久しぶりだったのでUnityで新しいプロジェクトとして作成しましたが、前回のコードでなぜかエラーが出てしまったので少し見直しました。下線を付けたあたりが怪しかった?usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.IO.Ports;using
RaspberryPiPicoWの無線機能としてWiFiは以前にチェックしていていますが,新たにBluetoothも使えるようになったので試してみました。PicoWは技適は通っていて,あらかじめ持っていたBluetooth機能がライセンスを取得したので使用可能になったのだそうです。現在のIDEとPicoのボード(ライブラリ)のバージョンは以下です。・ArduinoIDE2.2.1・RaspberryPiPico/RP2040byEarleF.Philhower
安価なRISC-VマイコンCH32V003がArduinoIDEで動くようになりました。STM32に似ているとの事で,なるほどArduinoでもdigitalWriteFast()が使えます。NeoPixelのRGBフルカラーLEDをつなぎたいので,今回は無理矢理ですが必要なデジタルパルスを作ってやってみました。[NeoPixelのデータ転送様式]NeoPixelのLEDは1個ごとにRGB各1バイトのデータが記憶でき,そこにシリアルにデータを送って点灯させます。送るデータは"0"を
Arduinoからシリアル通信でデータを取るとき、ずっとTeraTermを使っていたのですが、ふと「Pythonでデータ取りたいな」と思ったので、少し調べていたんです。pyserialってのを使うと取れるらしいことが分かりました。そして、ふと「これ、ChatGPTにお願いしたらプログラムを書いてくれるのでは?」と思ったので、今更ながらやってみました。結論から言うと、ちゃんと動くものが出来ました!すごい!!!1.pythonを使ってシリアル通信でデータ取りたいちゃんとコ
この記事は前回の続き?です。(ほとんど続いてないけど)『AD9833を用いたDDSを作る(手抜き)1ソフトウェア実験』AD9833を使ってDDSを作ってみたいと思うシリーズ1。今回は、ソフトとPICの通信までやろうと思います。詳しい通信内容などは面倒なので次回にしようと思い…ameblo.jp通信に関する仕様などを書いておかないと分からなくなりそうなので、ここに記しておきます。UARTの仕様前回書いた気もしますが、一応書いておきます
AD9833を使ってDDSを作ってみたいと思うシリーズ1。今回は、ソフトとPICの通信までやろうと思います。詳しい通信内容などは面倒なので次回にしようと思います。やりたいことDDSを作るDDSを作るといっても、通信目的には使用しないのでまあ大体正弦波ならいいかなっていう、ゆるーい気持ちで作ります。また、少し前まではボタンとLCDを使って周波数を表示したり…。と考えていましたが、だんだん面倒になってきたので、PCによる制御にしようと思
SerialBluetoothTerminalはandroid用のターミナルソフト。シリアル通信ができるけど、使い方がいまいちわからない。日本語の取説はないだろうか。ネットを探してもでてこない。Esp32とandroid端末(タブレット、スマホ)をブルーツース接続してEsp32が収集したデータをandroid端末に送る。データはテキストファイルで保存できた。こんなに安く簡単にできてよいものか。0.1秒ではOK0.01秒だと微妙に止まる。出来たのは出来たけど、
今回はPIC16F1709でシリアル通信(UART通信)をしてみたいと思います。シリアル通信が出来れば、デバックも多少楽になります(多分)そのため、シリアル通信は絶対に欲しい!という事で今回はシリアル通信をしてみました。回路図PIC16F1709は周辺装置を好きなピンに接続することが出来ます(PPS機能)今回はUART通信をRA4をTXピンにRA5をRXピンにします。回路図は次の様になりました。回路図でTX/RXピンが逆になっている理由は、ラベルが装
前提ArduinoIDE1.8VisualStudio2019何を作るかフォームから送った文字列を返すArduinoのプログラム適当なArduinoに書き込む。今回は前書いた300円互換機を使用した。==========Stringmoji;//変数を適当に宣言今回は「moji」にするvoidsetup(){Serial.begin(9600);//シリアル通信のデータ転送レートをbpsで指定}voidloop(){if(Ser
ども。まいど。(´∀`)先日サーボが壊れたので、早速変わりのものを購入〜RSx4S-one10Xっすヽ(^o^)シリアル通信対応〜♪(∩՞ټ՞∩)ンフ~~~ちなみに上位機種のグラスパーⅡにはしませんでした。「あえてね」「カネ無くてね」
ちょっと前に作ったM5StackGPSラップタイマー『【M5Stack】で作る【GPSラップタイマーVer1.0】』バイクサーキットでラップを測りたい!けどレンタル代が掛かる!ってことで作っちゃいました(てへぺろ)もし利用される場合はアレンジを加えてもいいと思います…ameblo.jp今回は前回から物理的な改造は無しでアップグレードできます使ったものM5Stack拡張可能なマイクロ制御モジュールWiFiBluetoothESP32開発キットArduinoL
超音波距離センサー(HC-SR04とその互換機)をUARTシリアル通信対応のモジュールにしておけば便利だと思い,PICAXEを組み込んで試してみました。今回の機材と配線です。・超音波距離センサーUS-015(HC-SR04互換)・計測処理と結果のシリアル出力PICAXE14-M2・UARTレベル変換(5V<->3.3V)BSS138モジュール・CircuitPythonでのシリアル接続MakerPiRP2040PICAXEのBASICでのプログラムです。スタート
MakerPiRP2040ボードのCircuitPythonで超音波距離センサー(HC-SR04とその互換機)を使おうとしてハマっています。超音波距離センサーでの計測はBASIC言語で動くPICAXEではやってみたことがあったので,シリアル接続のディスプレイに計測値を表示させ,そのUART出力をCircuitPythonでも同時に読み込んでみました。試してみた機材構成です。・超音波距離センサーUS-015(HC-SR04互換)・計測処理と結果のシリアル出力PICAXE14-M
お彼岸を過ぎたというのに、寒の戻り。宇都宮でも雪が舞いました。今シーズン初じゃないかな。おまけに電力が足りないということで、エアコンを止めて、石油ストーブでテレワークしていました。アフターファイブを使って、2月に始めたPICマイコンのお勉強『Lチカ』デパ地下とは関係ありません先日、始めたPICマイコンのお勉強やっと、Lチカ(LEDをチカチカさせる最小限の構成)まで来ました。なかなかうまくいかなくて、くじ…ameblo.jpMCCという無料のツールを使うと、プログラミングが比較
今回はRS-232CとUARTの変換基板を作ろうと思います。前回はテストとしてブレッドボード上に作りましたが、成功したのでブレッドボード上に作ります。前回の記事は下に貼っておきます。是非ご覧ください。『RS-232CとUARTの変換基板を作る①ブレッドボード上に作る』今回はRS-232CとUARTの変換基板を作ってみたいと思います。前回のRS-232CとUARTの違いについては下の記事をご覧ください。詳しくは書いていませ…ameblo.jp・回路図前回の記事で貼り付
今回はRS-232CとUARTの変換基板を作ってみたいと思います。前回のRS-232CとUARTの違いについては下の記事をご覧ください。詳しくは書いていませんが、そこそこ分かると思います。『RS-232CとUARTの違いについてサクッとまとめる』今回はRS-232CとUARTの違いについて簡単にまとめたいと思います。結論から言ってしまえば規格が違います。以上です。となってしまうのですが、今回はもう…ameblo.jp・なぜ作るのか実はUSB-UART変換基板や変換I
今回はRS-232CとUARTの違いについて簡単にまとめたいと思います。結論から言ってしまえば規格が違います。以上です。となってしまうのですが、今回はもう少し深掘りしようと思います。・RS-232Cとはおそらく世界で結構有名な規格です。USBの前身と思えば分かりやすいかもしれません。昔はモデムなどに繋いでインターネットを楽しんだり、計測機器に接続してデータを取り込んだり、みたいな事が出来た規格でした。今現在ではインターネット接続はLAN(IEEE802.3規
今日も仕事だ(泣)C#シリアル通信アプリを急遽作成することになったのでヨドバシで購入以前作成したことがあったが日本語の文字バケが解決できていなかったので今回は、ググってちゃんと対策したので記録しておくことにした。RSの初期化に追加serialPort1.Encoding=System.Text.Encoding.GetEncoding(932);
VFD(蛍光表示管ディスプレイ)は明るく見やすいディスプレイです。シリアル通信のキャラクタディスプレイで使いやすそうなのがあったので試してみました。手に入れたのは20X2文字のキャラクタディスプレイM202MD10Bで大阪デジットの限定特価品です(^^)。Seeeduino-XIAOとはロジックをレベル変換(BSS138)モジュールを通して接続しました。明るくはっきりした表示で,XIAOともUARTシリアルでシンプルに接続できましたV(^^)。分かりやすい取り扱い説明書も付いてきましたが
赤外線UARTシリアル通信でRCサーボをコントロールするヘドバン・キャットを作ってみていますが,基板にはんだ付け実装して組み立ててみました。今までの経過です。・赤外線UARTシリアル通信でRCサーボをコントロールしてヘドバン・キャットを無線化してみた・RCサーボで動くヘドバン・キャットのコントロール部をATtiny1604に移行してみた大まかなハード構成やソフトは上記の経過の通りですが,実装時のトラブルもあったので下記にいろいろメモしておきます。組み立てたところです。実装時の配線の