3.2.2软件结构划分

采用结构化软件设计的方法,使得设计简单,易于调试和移植,提高编程效率。采用结构化设计软件的方法将本系统软件划分为图4所示的4个模块:齿数计数模块、计时模块、转速计算模块和转速显示模块。其中最主要的是计时模块和转速计算模块。

(1)计时模块

由图2可知当红外线发射管发射的红外线未被轮齿挡住时,接收管受红外线照射呈导通状态,经反相器输入到单片机中断端口的电压为高电平,不产生中断;而当红外线发射管发射的红外线被轮齿挡住时,接收管不受红外线照射则呈截止状态,经反相器输入到单片机中断端口的电压跳变为低电平。从而激活中断程序对脉冲进行计数。计数流程图如图5所示。由于计数需要与计时同步,所以需要在产生第一次红外光被挡住时(红外光被挡住时Pass=0,反之Pass=1),也即中断口电位由高变低时打开定时器。由于实验中的齿盘共有108个齿,为了提高测量的实时性,把108个齿分成9等份,当计数值(Num)为12时关闭定时器并读取定时器的计时值。

(2)转速计算模块

由于系统采用同步M/T法测量转速,所以计算转速时,需要的参数有盘脉冲数和计时值。本系统中AT89C52单片机采用频率为12MHz的外接晶振,则每个机器周期为1us。单片机定时器的计数脉冲周期为一个机器周期,若定时器从零开时计数,关闭定时器时其计数值为m,则计时时间就是m微秒。计算转速部分程序如下。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查