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/

清华研发出首款全灵活电阻式RAM设备FlexRAM
ams1117中文资料汇总(ams1117引脚图及功能_工作原理及典型应用电路)
换电补能解决续航焦虑,换电连接器快速增长
欧盟正就5G芯片对高通展开反垄断调查
PCB设计如何选择板材
STC8A无人机-驱动篇
QLED与OLED之争的本质是什么?QLED与OLED的区别是什么?
基于FPGA的TCP粘合设计实现
大家注意了!手机放在哪里最危险
0402封装 70种容值 每种容值50片 贴片电容盒
LINE Byte将引入新功能AI Phone Application
性能双雄,iQOO成为BMW M Motorsport全球顶级合作伙伴引热议
模型集成是一种提升模型能力的常用方法
线上四台机器同一时间全部OOM,到底发生了什么?
光纤滑环的应用需求越来越大
边缘计算在企业中占有重要作用
芯片制造全过程科普
进来看看有啥?小米发布会新品全曝光:手机+笔记本+路由器全家桶
AEE红外夜视执法记录仪,暗夜不再是保护伞
高通预测2021年将售出4.5亿部5G手机