OpenEdv-开源电子网

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

串口问题,有点不明白,呼叫原子哥,和大神们

[复制链接]

6

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2015-12-19
在线时间
12 小时
发表于 2017-2-15 16:49:11 | 显示全部楼层 |阅读模式
1金钱
void USART2_IRQHandler(void)
{
        u8 temp;
  if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)
  {
                //USART_ClearITPendingBit(USART2, USART_IT_RXNE);       
    temp= USART_ReceiveData(USART2);
                if(temp=='S')
                {
                        RXbuf[RXCUNT]=temp;
                        RXCUNT=3;
                }       
                else
                {
                        RXbuf[0]=' ';RXbuf[1]=' ';RXbuf[2]=' ';
                        RXbuf[RXCUNT]=temp;
                        RXCUNT++;
                }
       
        }
}
红色地方不明白


最佳答案

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

串口2是否收到字符S,收到了就放到数组RXbuf[3],然后退出不再收了。没收到就继续收,直到收到字符S,放到RXbuf[3]里面。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

头像被屏蔽

132

主题

151

帖子

0

精华

禁止访问

积分
487
金钱
487
注册时间
2016-12-21
在线时间
30 小时
发表于 2017-2-15 16:49:12 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

4

主题

290

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1130
金钱
1130
注册时间
2015-8-4
在线时间
107 小时
发表于 2017-2-15 17:12:29 | 显示全部楼层
我也不懂,这代码好诡异,莫名其妙
活到老,学到老。
回复

使用道具 举报

34

主题

388

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4090
金钱
4090
注册时间
2012-10-21
在线时间
642 小时
发表于 2017-2-15 17:14:40 | 显示全部楼层
不明白?哪里不明白?不认识那几个英文字母?还是实现不了你要的结果,你要的效果又是啥?
回复

使用道具 举报

34

主题

388

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4090
金钱
4090
注册时间
2012-10-21
在线时间
642 小时
发表于 2017-2-15 17:17:05 | 显示全部楼层
这代码写的,先搞清楚自己要什么结果,自己把逻辑理清楚
不然呼叫氢弹哥都没用
回复

使用道具 举报

62

主题

903

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3567
金钱
3567
注册时间
2016-1-8
在线时间
544 小时
发表于 2017-2-15 17:19:29 | 显示全部楼层
if  else 语句都不懂吗?
回复

使用道具 举报

3

主题

177

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1604
金钱
1604
注册时间
2016-1-28
在线时间
265 小时
发表于 2017-2-15 19:49:38 | 显示全部楼层
突然发现我也看不懂!
宠辱不惊看庭前花开花落去留无意望天上云卷云舒。
回复

使用道具 举报

0

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
325
金钱
325
注册时间
2016-9-25
在线时间
80 小时
发表于 2017-2-22 15:58:34 | 显示全部楼层
字符S是结束符,收到S就放在当前数组最后,后面接收的非S数据都从RXbuf[3]开始存,直到又收到S,开始从RXbuf[3]覆盖
回复

使用道具 举报

0

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
325
金钱
325
注册时间
2016-9-25
在线时间
80 小时
发表于 2017-2-22 15:58:47 | 显示全部楼层
字符S是结束符,收到S就放在当前数组最后,后面接收的非S数据都从RXbuf[3]开始存,直到又收到S,开始从RXbuf[3]覆盖
回复

使用道具 举报

6

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
59
金钱
59
注册时间
2017-2-7
在线时间
15 小时
发表于 2017-2-22 17:12:06 | 显示全部楼层
RXCUNT是定义的什么类型的,怎么定义的啊
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-9-22 16:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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