教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

基于RlTOS和ISP功能的数字仪表系统设计与实现

来源:网络收集 时间:2026-07-14
导读: 基于RlTOS和ISP功能的数字仪表系统设计与实现 摘要:以Atmel公司的AT89S52型单片微控制器为对象,介绍基于RTOS(多任务实时操作系统)和ISP(在系统可编程)功能的数字仪表系统的软硬件设计,同时给出硬件系统的组成和相关软件编程的实现代码。经某武器系统的调

基于RlTOS和ISP功能的数字仪表系统设计与实现

摘要:以Atmel公司的AT89S52型单片微控制器为对象,介绍基于RTOS(多任务实时操作系统)和ISP(在系统可编程)功能的数字仪表系统的软硬件设计,同时给出硬件系统的组成和相关软件编程的实现代码。经某武器系统的调试试验表明,该仪表系统具有显示直观、准确、可靠的优点。 关键词:RTOS;ISP;单片微控制器;液晶显示模块

引言

Atmel公司的控制器以其集成度高、在线调试方便等特点广泛应用于工程实践领域,文中以某武器系统的前期预研为背景,讨论了数字仪表系统的软硬件实现过程,其主要功能包含:实时采集配电箱系统的6路正负模拟电压值及作战环境温度,并通过MSl2232B型液晶模块动态式显示。 1 软件特性

随着C语言在嵌入式系统中的广泛运用,软件系统的实时性、复杂性设计要求也越来越高,用通常的单任务无限循环结构与中断服务子程序相配合的编程思想已难以完成相关的软件设计或实现较为困难,RTOS(多任务实时操作系统)是现阶段较为流行的处理方式。

RTOS的基本设计思想是将多种系统输入和处理要求,按功能做成不同的任务函数体,

并分配适当的优先级,参考Windows系统的多线程处理机制,将CPU执行时间划分成若干区段,每个任务函数体对应一个时间片段.在规定的时间内执行完后允许切换到另一个任务,因各时间段非常短,表现的是多任务实时处理特性。因为任务并非同时执行且具备跳转

特性,所以整个项目管理文件内可以有多个无限循环结构,且省略了main入口函数,这是RTOS最大的特色。文中以Keil集成开发环境为平台,利用RTX5l Tiny版本来完成整个软件设计过程。

ISP(在系统可编程)是一种适合Atmel系列器件的Flash技术,通过PC的LPT标准并行接口,能实时地将Intel格式的源程序代码下载到微控制器的相应存储区域。ISP的最大特点是简化了调试过程,提高了软件系统的可维护性,使其具备了在线升级特性。而且整个开发过程省去了反复插拔电路的操作。 2 系统硬件构成

本系统硬件主要包括如下几个模块:AT89S52型主控制器、ADC0809型模/数转换、MSl2232B型液晶显示器、温度传感器及语音报警等。其中AT89S52型微处理器主要完成外围器件的硬件控制及相关数据解算,ADC0809采集6路模拟信号并输入主控制器,MSl2232B完成数字及相关标识字符的显示,配电系统的电压波动超出预定指标时由语音模块给出相应的报警信息。

2.1主控制器模块

主控制器是Atmel公司生产的AT89S52型单片微控制器,与常规C51系列相比,其突出特点是具有8KB闪速式存储器(降低了对外扩存储器的要求)、256B RAM内存(可容纳更多局部变量)、8个中断源及ISP在线可编程特性。

2.2液晶显示模块

MSl2232B属于图形点阵系列的显示器件,具有双行显示功能,其点阵结构为122×32,通过AT89s52给出必要的数据和指令来操作MSl2232B主、辅控制器,从而完成图形、字

符等相关信息的显示。该液晶显示模块还具有较强的通用性.用户用少量元件就可以构成一个完整的LCD系统。电路连接如图1所示。

2.3 A/D数据采集模块

由于本系统涉及多路模拟信号,故选择了AD(20809型通用模/数转换器,它采用逐次逼近方式完成A/D转换过程,其片内带有8路模拟开关,能自动锁存信号,输入电压范围是0V~+5V,因为该器件的输出具有1TrL三态锁存缓冲器结构,所以可以直接连人单片微控制器的I/O口。相关的接口连接如图2所示。

需要说明的是,在本系统6路电源信号中只有一路负电源信号符合ADC0809 0V~5v的输入特性,因此必须配备相应的反相电路,则通过LM358型运算放大器来完成。利用LM358还可以扩展监测范围(以降低测量精度为前提),这对于精度要求不太高的场合是可行的。图2中PC817型光耦用于检测负电压信号,当IN4为低电平信号时对应负电压信号,此时在MSl2232B的相应行位置给出“-”号标志,这不仅解决了正负电压同行显示的兼容性问题,而且减少了软件设计量(由6路简化为3路),同时使系统实时性相应提升。

2.4温度传感器模块

DSl8820是Dallas公司推出的l—Wire式数字温度传感器,它能实时采集现场环境的温度数据,并将相应的值转换为数字量输出。该温度传感器与AT89S52的连接如图3所示。

2.5语音报警模块

该模块主要实现异常情况下告警信息的输出,只要配电箱电压信号的波动值超出一定的范围,音频告警装置即给出不同的频率信号使蜂鸣器发声,以提示相关操作人员注意。

3 系统软件设计

按RTOS系统的程序结构要求,软件工程主要由如下4部分组成:初始化、数据采集与A/D转换、显示子程序、温度监测与告警模块。

如果将初始化设置为任务0,那么除了要完成相应的硬件配置与变量赋初值外,还必须启动所有其他任务,另外,因为初始化过程只须进行一次,所以Task 0还应当删除其自身。具体的程序代码如下所示:

void Init(void)_task_Intial {

variable=0; LcdInitialO; ClrScreenO;

0s_create_task(AI)C0809I)ata); os_create_task(DSl8820Temperate); 0s_create_task(LCMI)isplay); 0s_delete_task(Intial);

}

其中相关的宏定义变量值为: #define Intial O

#define ADC0809Data 1 #define DSl 8820Temperate 2 #define LCMDisplay 3

在Keil集成开发环境下调试本程序时,除了要包括相应的头文件(rtx51tny.h)外,还必须设置好相应的环境参数值。

3.1数模转换子程序

数据采集与A/I)转换子程序主要对配电箱传来的模拟信号进行采样、量化及返回值处理。软件编程时的电气时序及相关技术要求如图4所示。

在时序图中,上升沿清空量化结果寄存器内的值,下降沿启动,A/D转换;采样启动

脉冲的高电平状态至少应维持100μs;EOC变为低电平表示转换过程正在进行,且启动信号的硬件迟滞效应时间至少应为10μs;MSB对应AT89S52并口的:P0.7,LSB对应P0.0。

关键部分的程序源代码及注释如下:

…… 此处隐藏:1032字,全部文档内容请下载后查看。喜欢就下载吧 ……
基于RlTOS和ISP功能的数字仪表系统设计与实现.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/607522.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)