标题: [开源造车]51单片机两轮自平衡小车软件框架讲解 [打印本页]

作者: 喵大    时间: 2015-11-6 16:00
标题: [开源造车]51单片机两轮自平衡小车软件框架讲解

主控源代码部分,截止目前为止,都是属于辛辛苦苦敲出来的。没有使用实时操作系统,我们称之为裸机代码,未使用操作系统裸跑的意思。
为了满足各个层次用户的需求和体现出我们的努力,后续会试着移植Small RTOS51实时操作系统内核。Small RTOS51是陈明计先生(就职于周立功公司)编写的一个实时操作系统,适合在小RAM单片机上运行。
那么,现在就结合裸机代码,来说说喵呜ISO的软件框架。
图1 框图
图2 流程图
总体的流程图,就是这么简单。定时器里面的任务,是整个系统的核心。下面具体介绍实现细节。
初始化
学过 51单片机的都知道,任何一个处理器要正常运行后面的代码,首先必须得有一大段设备初始化的代码先运行,这些代码用于初始化处 理器的内部时钟、中断优先级、I/O 口的输入输出方向等等,也就是为后续代码正常运行,做了一个环境配置准备。
初始化看起来很繁杂,很多,也没啥好说的。
接下来 ,程序运行到死循环while(1);程序会一直停在这里,等待数据中断的到来,而不是死机死在这里,这是有区别的,学过51的人都知道,我不再多说。
定时器
可以看到角度环、速度环、PID计算、PWM输出都放在定时中断1里面,它们属于需要精确时间周期执行,因此可以在一个周期定时中断里完成。


作者: soft    时间: 2016-3-3 00:05
裸机代码,确实比较牛,不过好像你的图片挂了。无图无真相啊.
作者: tasi2002    时间: 2018-5-25 10:55
想学习!
作者: leiteme    时间: 2018-9-5 13:27
想学习+1
作者: 菜用鸡    时间: 2019-3-6 21:40
还没更新吗,呜呜呜

作者: yaoyao2022    时间: 2022-5-15 21:25
建议上传代码




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1