OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4428|回复: 4

求各位大神救我,关于MINI开发板 USART1串口通信

[复制链接]

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-5-12
在线时间
0 小时
发表于 2015-6-3 10:40:54 | 显示全部楼层 |阅读模式
5金钱
u8 USART_RX_BUF[USART_REC_LEN];     //接收缓冲,最大USART_REC_LEN个字节.
//接收状态

//bit15, 接收完成标志
//bit14, 接收到0x0d   
//bit13~0, 接收到的有效字节数目
u16 USART_RX_STA=0;       //接收状态标记  

 ②
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)  //接收中断(接收到的数据必须是0x0d 0x0a结尾)
{
Res =USART_ReceiveData(USART1);//(USART1->DR); //读取接收到的数据

if((USART_RX_STA&0x8000)==0)//接收未完成
{
if(USART_RX_STA&0x4000)//接收到了0x0d
{
if(Res!=0x0a)USART_RX_STA=0;//接收错误,重新开始
else USART_RX_STA|=0x8000; //接收完成了 
}
请教各位大神,上面红色部分的问题:
①那里数据位不是8位+1位停止位一共9位吗?怎么会有下面几位呢?
//bit15, 接收完成标志
//bit14, 接收到0x0d   
//bit13~0, 接收到的有效字节数目
②接收到的数据为什么是0x0d  0x0a结尾??

最佳答案

查看完整内容[请看2#楼]

http://www.openedv.com/posts/list/18508.htm  看看这个帖子吧,也许会有收获
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

10

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2015-3-26
在线时间
0 小时
发表于 2015-6-3 10:40:55 | 显示全部楼层
http://www.openedv.com/posts/list/18508.htm  看看这个帖子吧,也许会有收获
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2015-6-3 10:52:43 | 显示全部楼层
1、那个只是一个自定义的变量,来判定目前收的状态的  ,跟 8位数据,无校验位,1个停止位有毛的关系?

2、 自己百度回车符的码

3、学习不是只会问问题,要学会百度,自己思考!!
学无止境
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-5-12
在线时间
0 小时
 楼主| 发表于 2015-6-3 11:06:01 | 显示全部楼层
回复【2楼】jermy_z:
---------------------------------
额··最近用USART3搞DMX512传输百度了很多都没解决问题,所以回头看买的MINI开发板程序,一时想不起0x0d,0x0a代表回车了。谢谢了
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-5-12
在线时间
0 小时
 楼主| 发表于 2015-6-3 11:15:09 | 显示全部楼层
回复【4楼】〇號天霸:
---------------------------------
好的,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 18:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表