你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
關於USART接收數字問題
[复制链接]
sappppp
提问时间:2016-3-24 14:15 /
想請教 我從PC端丟一個數字"123"至STM32中,可是用以下呼叫
i = USART_ReceiveData(USART1);
為什麼用都只能讀到第一個數字"1"呢?
我要怎樣才能讀到數字"123"呢?
如果想要從PC端輸入浮點數例如"0.5",那程式應該要怎麼寫呢?
謝謝
赞
0
收藏
0
评论
4
分享
发布时间:2016-3-24 14:15
举报
请先
登录
后回复
4个回答
大坤哥
回答时间:2016-3-24 14:26:22
a0a.1 32b0c
usart传输的数据都是以ASCII码编码的,比如你传的123,就是0x31 0x32 0x33,是三个数 ,你的变量i只是一个数,你可以定义一个指针或者数组存。同理 ,你输入0.5,也是分成三个ascii码传过去的,0x30 0x2e 0x35
赞
1
评论
回复
支持
1
反对
0
power568
回答时间:2016-3-24 17:00:59
a0a.1 32b0c
支持楼上的...
赞
0
评论
回复
支持
反对
sappppp
回答时间:2016-3-24 20:23:42
a0a.1 32b0c
可是我想要在請問,當我用buff[] = USART_ReceiveData(USART1) 去接收"123"數值時,我buff[0]=1, buff[1] =1讀到的數值都是"1"這是為什麼呢? 當讀完第一個字元值時,程式怎麼知道要讀取第二個字元呢?我是要用for loop去一個個讀取嗎?
每次USART1 ISR進入時,程式都只有讀到第一個字元,這是為什麼呢?
謝謝
赞
0
评论
回复
支持
反对
ChinVui
回答时间:2016-5-12 22:55:42
a0a.1 32b0c
我也遇到USART接收數字的問題,现在还无法解决 TT
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
每次USART1 ISR進入時,程式都只有讀到第一個字元,這是為什麼呢?
謝謝