關於USART接收數字問題
想請教我從PC端丟一個數字"123"至STM32中,可是用以下呼叫i = USART_ReceiveData(USART1);為什麼用都只能讀到第一個數字"1"呢?我要怎樣才能讀到數字"123"呢?
如果想要從PC端輸入浮點數例如"0.5",那程式應該要怎麼寫呢?
謝謝
usart传输的数据都是以ASCII码编码的,比如你传的123,就是0x31 0x32 0x33,是三个数,你的变量i只是一个数,你可以定义一个指针或者数组存。同理 ,你输入0.5,也是分成三个ascii码传过去的,0x30 0x2e 0x35 支持楼上的... 可是我想要在請問,當我用buff[] = USART_ReceiveData(USART1) 去接收"123"數值時,我buff=1, buff =1讀到的數值都是"1"這是為什麼呢? 當讀完第一個字元值時,程式怎麼知道要讀取第二個字元呢?我是要用for loop去一個個讀取嗎?
每次USART1 ISR進入時,程式都只有讀到第一個字元,這是為什麼呢?
謝謝 我也遇到USART接收數字的問題,现在还无法解决 TT
页:
[1]