b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

基于C51单片机的嵌入式系统实时控制设计

电脑杂谈  发布时间:2020-07-20 22:05:33  来源:网络整理

实时控制系统_深圳台风路径实时发布系统_南京空气质量实时发布系统

随着现代通信技术的发展,通信测试仪器不断被引入. 各种新设备对系统的实时响应能力提出了越来越高的要求. 通信测试仪器的实时响应性能已经成为系统设计成功的关键因素之一. 作者已成功地将ARM处理器,C51单片机等嵌入式系统作为主要通信控制仪表项目中的主控芯片,实现了仪表相关模块的实时控制功能. 因此提出了一种使用C51单片机在一定的通信测试仪中实现实时控制的设计方案.

1硬件设计与实现1.1总体方案设计

在该通信测试仪器中,实时控制模块主要实现射频接收频率合成器,射频产生频率合成器,滤波器组件,射频输入模块和射频输出模块. 对射频检测信号进行A / D转换以获得数据. 与上位机通讯及其他功能.

根据要实现的系统功能要求,综合考虑系统资源,成本效益和芯片的其他因素,确定了以C51单片机为主要控制芯片的嵌入式系统解决方案. 该芯片是Silicon Labs的C8051F120,具有128 kB片上闪存,8TImes. 1 024 + 256字节片上RAM,​​具有64 kB地址空间的资源丰富且易于控制.

系统资源分配: 射频接收和发送射频集成模块,包括DDS,PLL等,并且设备接口SPI. 与主机的通信使用RS-232串行端口. 总体设计框图如图1所示.

深圳台风路径实时发布系统_南京空气质量实时发布系统_实时控制系统

以C51单片机为核心的嵌入式系统实时控制设计

1.2总线和I / O控制的设计

对于射频接收频率合成模块和射频发射射频合成模块实时控制系统,直接采用总线控制. 为了避免在控制不同模块时发生相互干扰,使用3-8对总线地址进行解码,以生成用于不同模块的芯片选择信号. 同时,数据线通过总线以提高负载能力. 对于滤波组件,RF输入/输出和其他受I / O控制的模块,不直接使用51芯片的GPIO引脚,并且锁存数据总线以模拟GPIO信号以供相关模块使用,如图2所示. ,其中IO_ / WR1由B_ / CS7与MCU写线的逻辑或生成.

以C51单片机为核心的嵌入式系统实时控制设计

1.3 SPI和RS232控制接口

实时控制系统_深圳台风路径实时发布系统_南京空气质量实时发布系统

C8051F120芯片具有自己的A / D转换器,但只有12位,因此不适合系统需求. 因此,ADI公司的AD7707被添加到芯片可达到±10 mV〜±10V. 根据实际要求,系统使用AIN3高电平输入端口,无缓冲模式,HICOM,REF-接地至模拟地,VBIAS和REF +均已连接到+2.5 V实时控制系统,基准电压,模拟电源5 V,数字电源3.3 V,可以检测0-10 V输入范围的单极性电平. 控制接口是一个同步串行端口,由51直接控制芯片SPI. 图3是AD7707的电气连接图.

以C51单片机为核心的嵌入式系统实时控制设计

单片机与主机之间的通信使用通用异步UART,该UART与MAX3224相连,并将UART信号转换为RS-232信号进行发送. MAX3224在3〜5.5 V的低压下工作,但可以产生RS-232±12 V的电压,仅需连接Tx,Rx和地线即可实现异步串行通信. 系统中仍然有一些时钟,复位电路和电源,因此在此不再赘述.

2软件设计与实现2.1主程序框架

主程序流程图如图4所示.

南京空气质量实时发布系统_实时控制系统_深圳台风路径实时发布系统

以C51单片机为核心的嵌入式系统实时控制设计

主程序是顺序结构,相对简单. 它主要分为两部分: 一是初始化系统的每个部分以使其在正常状态下工作. 第二个是正常的工作循环状态. 当从主机接收到控制命令时,将执行相应的操作,而在没有命令时,它将等待. 对于嵌入式程序,无限循环是必需的.

2.2串行通讯程序

串行通讯程序实现与主机的通讯功能. 在具体操作中,使用循环队列存储接收到的上位机命令,头指针和尾指针分别指向团队的头和尾,取出每个命令字节执行相应的操作. 命令执行后(清空队列),清除标志位并等待新命令. 如图5所示.

以C51单片机为核心的嵌入式系统实时控制设计

深圳台风路径实时发布系统_南京空气质量实时发布系统_实时控制系统

2.3 SPI通信程序

C51使用SPI主模式与AD7707通信. 在主模式下编写AD7707相对简单. 微控制器首先将1字节的配置数据写入AD7707,它将自动将数据放入其自己的通信寄存器中,然后AD7707根据配置值确定下一步要写入的寄存器和数据大小,然后确定数据单片机的输入被置于指定位置. 在C8051F120发送数据之前,首先根据SPICN寄存器的TXBMT位的值判断是否可以发送数据,然后将数据写入其自己的SPIDAT寄存器,硬件将自动发送数据.

在主模式下读取AD7707更加困难. 当C51设置了AD7707的通信寄存器,表明下一步操作是读取AD7707的某个寄存器值时,C51将任何值写入SPIDAT,然后数据将在SPI数据线(MOSI)上串行移出,并且时钟线上将产生一个字符串. 线路时钟,从设备(AD7707)接收时钟并将准备好的数据发送到MISO线到C51,而不会采用主设备发送的任何值. C51将发送的串行数据放入移位寄存器,并在接收到最后一位时移入接收缓冲区,然后读取SPIDAT以读取数据.

2.4其他软件模块

通过将所需数据发送到分配的相应地址空间以实现相关功能,可以根据硬件各部分的特定要求来实现其他软件模块.

3结束语

本文提出了一种以C51单片机C8051F120为核心控制芯片的嵌入式系统,已成功应用于通信测试仪器中. 该系统通过中断和查询的方式实现了整机的实时控制功能.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-287546-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...