stm32l010 serial 9600bps pa2 1

Dependencies:   mbed

Committer:
caa45040
Date:
Thu May 06 00:57:21 2021 +0000
Revision:
0:f89fcbc67075
stm32l010 serial 9600bps 1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
caa45040 0:f89fcbc67075 1 #include "mbed.h"
caa45040 0:f89fcbc67075 2
caa45040 0:f89fcbc67075 3 //Serial pc(USBTX, USBRX); // tx, rx
caa45040 0:f89fcbc67075 4 //Serial pc(SERIAL_TX, SERIAL_RX); //767
caa45040 0:f89fcbc67075 5 //Serial pc(PA_2, PA_3); //010
caa45040 0:f89fcbc67075 6 //Serial pc(PA_9, PA_10); //010
caa45040 0:f89fcbc67075 7
caa45040 0:f89fcbc67075 8 //アナログ入力の設定
caa45040 0:f89fcbc67075 9 //AnalogIn adc_vbat(A3); //PA_4
caa45040 0:f89fcbc67075 10
caa45040 0:f89fcbc67075 11 #define UART_DELAY 96 // 1/9600
caa45040 0:f89fcbc67075 12
caa45040 0:f89fcbc67075 13 //仮想シリアルの出力ポート
caa45040 0:f89fcbc67075 14 //DigitalOut TX(PA_9);
caa45040 0:f89fcbc67075 15 DigitalOut TX(PA_2);
caa45040 0:f89fcbc67075 16
caa45040 0:f89fcbc67075 17 //仮想シリアルへの一文字出力 9600bps
caa45040 0:f89fcbc67075 18 int pc_putc(char ch) {
caa45040 0:f89fcbc67075 19
caa45040 0:f89fcbc67075 20 TX=1;
caa45040 0:f89fcbc67075 21 TX=0;//START
caa45040 0:f89fcbc67075 22 wait_us(UART_DELAY);
caa45040 0:f89fcbc67075 23
caa45040 0:f89fcbc67075 24 for(int ii=0;ii<8;ii++){
caa45040 0:f89fcbc67075 25 TX=(ch>>ii)&1;
caa45040 0:f89fcbc67075 26 wait_us(UART_DELAY);
caa45040 0:f89fcbc67075 27 }; //for
caa45040 0:f89fcbc67075 28
caa45040 0:f89fcbc67075 29 TX=1;//Stop
caa45040 0:f89fcbc67075 30 wait_us(UART_DELAY);
caa45040 0:f89fcbc67075 31
caa45040 0:f89fcbc67075 32 return(0);
caa45040 0:f89fcbc67075 33
caa45040 0:f89fcbc67075 34 } //pc_putc
caa45040 0:f89fcbc67075 35
caa45040 0:f89fcbc67075 36
caa45040 0:f89fcbc67075 37 int main() {
caa45040 0:f89fcbc67075 38
caa45040 0:f89fcbc67075 39 //ポートをhiにする 初期化
caa45040 0:f89fcbc67075 40 TX=1;
caa45040 0:f89fcbc67075 41
caa45040 0:f89fcbc67075 42 //adcの読み込み 0から4096
caa45040 0:f89fcbc67075 43 //int s = (adc_vbat.read_u16()>>4);
caa45040 0:f89fcbc67075 44
caa45040 0:f89fcbc67075 45 char *ss1; //文字のポインター
caa45040 0:f89fcbc67075 46 int ii; //ループカウンター
caa45040 0:f89fcbc67075 47
caa45040 0:f89fcbc67075 48 //無限ループ
caa45040 0:f89fcbc67075 49 while(1) {
caa45040 0:f89fcbc67075 50
caa45040 0:f89fcbc67075 51 ss1="Hello World !\r\n";
caa45040 0:f89fcbc67075 52 ii=0; //ループカウンター
caa45040 0:f89fcbc67075 53 while(ss1[ii]!=0){
caa45040 0:f89fcbc67075 54
caa45040 0:f89fcbc67075 55 //一文字出力
caa45040 0:f89fcbc67075 56 pc_putc(ss1[ii]);ii++;
caa45040 0:f89fcbc67075 57
caa45040 0:f89fcbc67075 58 } //while
caa45040 0:f89fcbc67075 59
caa45040 0:f89fcbc67075 60 //1秒の待ち
caa45040 0:f89fcbc67075 61 wait_ms(1000);
caa45040 0:f89fcbc67075 62
caa45040 0:f89fcbc67075 63 } //while
caa45040 0:f89fcbc67075 64
caa45040 0:f89fcbc67075 65 } //main
caa45040 0:f89fcbc67075 66
caa45040 0:f89fcbc67075 67 //容量削減
caa45040 0:f89fcbc67075 68 void error(const char* format, ...){}