首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于单片机的微波辐射计数控单元设计与实现(2)

基于单片机的微波辐射计数控单元设计与实现(2)

1.2.2 总线控制
  在数控单元硬件结构中,采用P0口提供数据总线和地址总线,当ALE输出信号为高电平时,P0口,输出数据锁存入总线驱动器中地址的低8位,同时和P2口送出的高8位地址组成完整的16位地址,寻址到外部的256 KB地址空间,由A/D转换器把采集到的数据存入静态RAM中。由于P0口是数据与地址分时复用口,因此引进74HC573作为地址锁存器。同时,使用 RD作为读取外部数据内存的控制线;WR作为写入数据到外部内存的控制线;PSEN作为存取外部程序存储器的读取控制线。
  1.2.3 电机控制电路
  天线驱动控制部分通过上位机发送电机启动命令,单片机从串口接收到启动命令后,向电机驱动器AKS230发出节拍脉冲,以带动天线匀速转动;通过编程控制P1.0口输出节拍脉冲速率,即可控制天线转速。当上位机发出停止命令时,通过单片机程序提取天线状态,保证天线启停处于同一位置。考虑到单片机输出电流与电机驱动电流的匹配问题Ⅲ,这里使用总线驱动器74LS245与单片机相连,输出电流可达20 mA,满足电机驱动要求。
  1.2.4 串口通信电路
  串口通信部分通过AT89C51内部的全双工串行通信接口RXD和TXD进行发送和接收。AT89C51串行接口有四种工作模式,本设计中,串口工作于方式1,波特率可变,通过定时器T1进行溢出率控制,令T1工作于方式2,由于波特率为(2SMOD/32)·(fOSC/12)· [1/(28- TH1)],则通过计算可得T1装载值为0xFA,波特率为9 600 b/s。这里选用MAX232完成TTL到EIA的电平转换。
  2 软件设计
  单片机软件部分采用了模块化的设计方法,按照功能分为数据采集及存储、电机运行控制及状态提取、串口发送与接收几部分,各个模块之间通过中断或子程序调用等进行连接,有机地成为一体,整个系统已经使用Medwin 3.0调试并能够成功运行。
  数据采集部分包括初始化、信号采集及存储,采集速率通过编程进行控制,实现每10 ms采样一个电压值,并存人0100H~01C8H的地址空间中,采集100个数据后调用中断通过串口传给上位机进行后续处理。每次系统上电时,采集部分复位并从头运行,数据采集部分程序流程图如图3所示。

  电机运行控制部分通过中断接收串口命令,以实现电机的精确启动和停止,从而控制天线的扫描状态,当串口发送5500h时电机停止;当发送 55ffh时电机启动。其重点在于精确读取天线的转角状态,保证电机启动和停止处于同一位置。主要通过软件计数来实现,由于电机步进角为1.8°且采用 32细分,则每转一圈步数为:360°/(1.8°/32)=*00步,通过读取计数值,实现对电机启动停止位置的控制。电机控制部分程序流程图如图4所示。

  串口通信部分采用中断方式,包括串口初始化和串口传输两部分,通过发送标志TI和接收标志RI判断中断类型,若为接收中断,则接收上位机命令,控制电机启动和停止;若为发送中断,则实现每次间隔1 s向上位机发送100个电压值,即200个字节。其中,串口通信部分流程图如图5所示。

  3 上位机软件设计
  上位机软件主要通过C#实现,通过调用串口实现对下位机的控制及数据的后续处理,并能够实时显示采集数据波形并保存。界面如图6所示。

  4 结 语
  单片机控制简便,接口方便,实时性强。基于这些优势,该文设计的微波辐射计数控单元不仅能够精确控制天线转动状态,控制天线启、停,而且能够在天线接收外界信号的同时,对信号进行转换、采集、通信并显示输出,实时地反映信号的变化和被观测目标的特性,通过使用低功耗16位A/D提高了转换精度,且速度可调,完全满足微波辐射计的系统要求,在实时观测方面具有广泛应用。
继承事业,薪火相传
返回列表