你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

關於USART接收數字問題

[复制链接]
sappppp 提问时间:2016-3-24 14:15 /
想請教  我從PC端丟一個數字"123"至STM32中,可是用以下呼叫i = USART_ReceiveData(USART1);為什麼用都只能讀到第一個數字"1"呢?


我要怎樣才能讀到數字"123"呢?
如果想要從PC端輸入浮點數例如"0.5",那程式應該要怎麼寫呢?


謝謝
收藏 评论4 发布时间:2016-3-24 14:15

举报

4个回答
大坤哥 回答时间:2016-3-24 14:26:22
usart传输的数据都是以ASCII码编码的,比如你传的123,就是0x31 0x32 0x33,是三个数  ,你的变量i只是一个数,你可以定义一个指针或者数组存。同理 ,你输入0.5,也是分成三个ascii码传过去的,0x30 0x2e 0x35
power568 回答时间:2016-3-24 17:00:59
支持楼上的...
sappppp 回答时间:2016-3-24 20:23:42
可是我想要在請問,當我用buff[] = USART_ReceiveData(USART1) 去接收"123"數值時,我buff[0]=1, buff[1] =1讀到的數值都是"1"這是為什麼呢? 當讀完第一個字元值時,程式怎麼知道要讀取第二個字元呢?我是要用for loop去一個個讀取嗎?
每次USART1 ISR進入時,程式都只有讀到第一個字元,這是為什麼呢?
謝謝
ChinVui 回答时间:2016-5-12 22:55:42
我也遇到USART接收數字的問題,现在还无法解决 TT

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版