投稿

4月, 2021の投稿を表示しています

RS-232Cを理解する

イメージ
もはや骨董品になりつつあるRS-232C。ここの目的は、マイコンのTX,RXからテキストのコマンドを送りつけて、機器とRS-232Cと通信することをめざす。テストとして、 NEW portの光パワーメーターのRS-232Cで制御する。 https://www.equipland.com/objects/catalog/product/extras/1030_1830-c.pdf その前に、RS-232Cのピンについてのお勉強。装置のマニュアルに掲載されているピン配置 装置側 PC側 各ピンの役割 DTE DCE 1 DCD Data Carrier Detect モデムでデータ通信する時。1にしておく 1 CD Carrier Detect (キャリア検出) 2 RxD Recieve Data 受信データライン 2 SD Send Data (送信データ) 3 TxD Transmit Data 送信データライン 3 RD Recieve Data (受信データ) 4 DTR Data Terminal Ready こちらの電源が入っている事を相手に教えてあげる。1の時電源ON 4 DR Data Set Ready (データセットレディ) 5 GND Ground GND。信号のグランド 5 SG Signal Ground (シグナルグランド) 6 DSR Data Set Ready 相手側の電源が入っているか確認。1の時電源ON。 6 ER Equipment Ready (データ端末レディ) 7 RTS Request to Send 送信要求、ゼロの時相手は送信を止める 7 CS Clear to Send (送信可) 8 CTS Clear to Send 7RTSの逆。1との時こちら側からデータを出力する 8 RS Request to Send (送信要求) 9 RI Ring Indicator モデムからの受信している間1になる オープン 9   ↑から自作で回路を作製する際、7&8番ピンの直結しておき、 マイコンからの送信要求(7番ピン)に対し、無条件に送信可(8番ピン)を返すようしておけばとりあえずはよさげ。 他に必要なのは、5番ピンはグランドと、2番ピンと3番ピンがマイコンからの制御信号のやり取りに使う。 一通り理解が進んだとこ

ブルーピル事はじめ

イメージ
STM32 STM32F103C8T6 ブルーピル 概念の理解:Arduinoとの比較(個人的な解釈) 【IDE環境】 Arduinoの場合→Arduino IDE STM32の場合→ STM32CubeMX 、 STM32CubeIDE いろいろあるがST社のもの。情報量も多い。 【インストールではまった!】 STM32CubeIDE を使うことを前提に、IDEだけをインストールすると、パッケージをダウンロードする際に、”Error downloading the following files."とメッセ―じが出ててしまう。STM32F103のパッケージをDLするも止まる。手動でインストールするものの、うまくビルトできない事態に・・・ Error downloading the following files (st.com) ↑ ここに記載されている症状が出る。ここでも問題は解けていない。 で、家でインストールしたときはできて、職場でできなかった事から何が違うか? 解決方法 MXを先にインストールする。MXの状態ではすんなりSTM32F103などのPKGが自動でダウンロードされる。その状態を確認してから、IDEをインストールする。 するとサクッと問題が解決された。同じ症状で困っている場合は、お試しを。 【ピンアサイン】 Arduino→そもそもピンはアナログとデジタルで固定で、INPUT、OUTPUTを指定 例:void setup() {   pinMode(PIN_LED0, OUTPUT);   pinMode(PIN_SW,   INPUT); } void loop() {   digitalWrite(PIN_LED0, 1);   digitalRead(PIN_SW)); } STM32 STM32CubeMXのソフトから指定する。GPIOなので、それぞれのピンの役割を個別に指定できる。Loopに相当する while (1)の箇所にコードを記載していく点は同じ  while (1)   {     /* USER CODE END WHILE */     /* USER CODE BEGIN 3 */   } 【はまったところ】 ST-LINK V2の中華版は、PCにデバッグ出力できない=Arduinoのシリアルモニタに相当 セ