野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9565|回复: 5

ESP8266串口中断代码问题

[复制链接]
发表于 2017-1-6 23:34:51 | 显示全部楼层 |阅读模式
去去去.png 我我我.png                   __IO u16 FramLength       :15;                               // 14:0   __IO u16 FramFinishFlag   :1;     这两句意思是不是定义了两个字节的结构体  FramLength占前15位   FramFinishFlag 占最后一位




  还有                    if ( strEsp8266_Fram_Record .InfBit .FramLength < ( RX_BUF_MAX_LEN - 1 ) )                       
                        strEsp8266_Fram_Record .Data_RX_BUF [ strEsp8266_Fram_Record .InfBit .FramLength ++ ]  = ucCh;
这两句话是什么意思
最后的这句 ucCh = USART_ReceiveData( macESP8266_USARTx );  又是起什么作用
想了好多天都没搞明白 请大神教我 谢谢@flyleaf


回复

使用道具 举报

发表于 2017-1-7 09:08:08 | 显示全部楼层
判断接收的数据是否没满,没满就把ucCH的数据存入buf,最后那句就是串口接收数据
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-1-7 12:11:28 来自手机 | 显示全部楼层
flyleaf 发表于 2017-1-7 09:08
判断接收的数据是否没满,没满就把ucCH的数据存入buf,最后那句就是串口接收数据

那判断里的减一和存数据++是什么意思呢,最后那一句是不是没什么用啊,前面不是已经把数据存入数组了吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-1-7 13:11:11 来自手机 | 显示全部楼层
位域型的结构体++这表示什么啊
回复 支持 反对

使用道具 举报

发表于 2017-1-7 13:53:33 | 显示全部楼层
lixiaochen55siq 发表于 2017-1-7 13:11
位域型的结构体++这表示什么啊

FramLength++ 就是这个变量加1
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-1-7 16:18:39 来自手机 | 显示全部楼层
flyleaf 发表于 2017-1-7 13:53
FramLength++ 就是这个变量加1

那意思就是把串口接收到的数据一个字节一个字节的存入这个数组中,每存入一个字节framlength就自加1对吗?,那framlength这个变量不是十五位的吗,一个字节八位,这里是怎么处理的
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-2 04:40 , Processed in 0.030636 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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