- 博客(4)
- 收藏
- 关注
原创 读取串口数据
void UartBuf_WD(UartBuf *Ringbuf,uint8_t DataIn){ Ringbuf->pbuf[Ringbuf->Wd_Indx & Ringbuf->Mask] = DataIn;//数据长度掩码很重要,这是决定数据环形的关键 Ringbuf->Wd_Indx++;//写完一次,写指针加1,为下一次写入做准备}d今天移植一段代码的时候看到一
2017-06-01 12:10:39
4838
原创 I2C通信协议
I2c是一种个非常常见的串行通信协议,由SDA,SCL两根线组成,分别为数据信号线和时钟信号线。直接从它的时序图开始分析起始信号:SCL高电平期间,SDA由高电平到低电平表示为起始信号。I2C设备检测到起始信号知道要开始接受传输的设备。结束信号:SCL高电平期间,SDA由低电平到高电平表示为结束信号。I2C设备检测到结束信号后知道对方已经结束数据传输。数据传递:
2017-01-17 13:58:13
662
原创 CRAZEPONY飞控学习(一)
在不久前曾研究过最近最为流行的开源飞控Pixhawk的源代码,但是由于在这之前没有接触过操作系统这个概念,在不知道代码执行流程的情况下看了几个星期的时间,脑子里还是一团乱,所以决定还是从裸机开始研究,因此再往上买了一个小的开源四旋翼作为入门。废话不多说,开始进入正题! 按照之前看裸机程序的思路肯定先找到main文件来一个一个往下看,在这里把main函数先贴出来:int main(v
2017-01-14 19:37:42
6552
5
原创 关于volatile的用法
虽然是个菜鸟中的菜鸟,但是鉴于记忆力这几年来的衰退还是决定开通自己的博客,把自己的一些心得写到博客上 防止今后的遗忘; 今天第一次接触操作系统,在源码中看见作者大量的使用了volatile这个类型修饰符,记得以前也有接触过,但是由于这对程序的理解和使用没有什么阻碍也就没有深究,只记得它是个类型修饰符,是干什么的,为什么要用,什么时候该用也没有什么概念。今天既然又碰到了,决定还是好好探
2017-01-13 15:50:23
323
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人