返回主页 单片机教程XL2000开发板 单片机学习 自制编程器 单片机资料 软件下载 电子技术产品介绍如何购买 进入论坛

 单片机教程 栏目导航   第一页..单片机入门教程    第二页..单片机c语言   第三页..红外遥控和步进电机    第四页..单片机问答

 

3.系统主要程序的设计---51系列单片机设计实例教程

(1)初始化程序

主要完成70H—76H、20H—23H等单元的清零,设置T1为16位定时模式,开放T1、外中断0、外中断1的中断等。

(2)主程序

主要完成初始化工作,设定小汽车的初始运行状态,最后循环调用显示程序,其程序流程图如图13.6所示。

              图13.6 主程序流程图

(3)外中断0服务程序

其任务是根据小车到达黑线的位置控制小车的运行状态,其程序流程图如图13.7所示。

                                      图13.7 小车状态控制流程图

(4)慢车子程序

慢车子程序执行时,先对电机进行反相驱动约150ms,使其刹车,然后改供低电压,使电机慢速转动。

(5)停止子程序

当执行停车时,先对黑线道计数器单元23H清零,再反相驱动刹车后关电机电源,然后延时10s,对30H位取反,以判断是中途停车还是起点停车。若是起点停车,计时单元清零。最后,设小车位初始运动状态。

(6)里程计数处理程序(外中断1服务程序)

里程计数器采用十进制计数,最大计数值为999m。当退出时,将计数值移入74H—76H显示数据存储单元。

(7)计时程序

与本文所述第七章实例2的时钟程序相同。

(8)延时程序

延时程序均采用调用显示子程序的方法,以改善LED显示的效果。

12个经典单片机程序设计实例:

闪烁LED小灯主程序图

数码管时钟电路的主程序

单键学习型遥控器的设计

15路电器遥控器的设计

自行车里程/速度计的设计

自动往返行驶小汽车的设计

遥控小汽车的设计

数码管时钟电路的设计

8*8点阵LED字符显示器的设计

8路输入模拟信号数值显示电路的设计

8路输入模拟信号数值显示电路程序

单键学习型遥控器的程序

如果对本文有疑问,请到论坛提问 编辑:51单片机学习网 @ 2009-10-20校对 中国开发板最佳品牌  版权:部分由编辑摘引,权利属原著作人