STC8A无人机-驱动篇

描述

笑死,第三篇了都,好久都没有写这么多了,第三篇是我最近看的一个STC官网的小项目,一个无人机的项目,感觉代码写的很好,这里简单的分析一下。

无人机

即没有GPS信号或GPS信号不佳的环境,飞控系统仅保持无人机姿态的平稳,无人机无法精准定位而呈现明显飘移。

通过一定的操纵,使飞机姿态运动符合飞行员意愿的可控飞行。

百度百科

无人机

差不多就是这样

无人机

电机的顺序

无人机

电源是单片机和电调

无人机

这就是连上了

无人机

无人机

留的排针接口

无人机

这个是接收机的输入和电调的PWM输出

无人机

IMU

无人机

这个是电调控制输出

无人机

PPM捕获

无人机

航灯

无人机

单独一个脚

无人机

还有蜂鸣器

无人机

无人机

预留了一路串口

无人机

完整Github上面见

无人机

组装样子

无人机

这些功能在源码里面都有

无人机

实现的源码其实很少,就是几个文件而已,这里就不用keli了,太丑了

无人机

无人机

大概主文件里面的函数就是这些了

一般来说读源码的时候就是两个路子,一个是一步一步的跳转,还有就是看完驱动再跑主的。

我以前是第一种,但是感觉效率有点低,这里看的方法就是先驱动吧。

我们说51的时候都是在说着老土,过气什么的,但是你玩的精通又有几个,其次在STC里面也有了库的概念,这里就带你看一下。

无人机

这个就是所谓的库文件

无人机

SFR定义一些位置

无人机

这谢是老版的51没有的,后面加的

无人机

因为本身这个东西都没有很难,所以在封装库的时候也就是使用了宏定义了。名字是很好的,做到了见名字其意。

无人机

带着注释很好的

无人机

IO的使能

无人机

还记得经典的定时器不?

51单片机定时器详细全解.上

51单片机定时器详细全解.下

快来补课呀!

不管怎么说,库开发是深入人心的,封装只是行为而已,我很很欣赏STC的精神的。

无人机

就直面自己物美价廉这个事情

无人机

无人机

离谱

无人机

反正友商是学不来

无人机

PWMGO是PWM初始化

无人机

这个是配置的文件

无人机

延时函数内部使用的是时钟频率

无人机

这个是STC定义的数据类型

无人机

PWM的输出都是强推挽模式

无人机

数据指针

无人机

PWM时钟选择

无人机

PWM的分频器

无人机

这个是数据手册

无人机

先配置寄存器,然后就是中断寄存位,异常检测,控制寄存器也打开

无人机

软件置0

无人机

这个是对单独的通道设置

无人机

安排

无人机

ADC是测量电压来的

无人机

初始化

无人机

中断标志

无人机

这个就是计算值

无人机

最重要的MPU6050传感器

无人机无人机

里面的一些寄存器的位置

无人机

初始化MPU6050

无人机

里面的延时信号

无人机

这个是IIC的数据定义引脚

无人机

IIC的写入

无人机无人机

一对儿信号

无人机无人机

接收和回应

无人机无人机

发送和接收

无人机

很简单了

无人机

这个就是起始信号了

下篇是主函数了。

http://www.stcmcudata.com/
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分