云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 便携式传感器巡检仪李梅实训论文110520打印 - 图文

便携式传感器巡检仪李梅实训论文110520打印 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/6/23 4:54:44

在一切配置成功之后,移植Uc/COS操作系统,在Uc/COS操作系统的界面下,主要完成AppTaskAnalyze任务和AppTaskMBTx任务两个任务。如图4-6所示,在AppTaskMBTx中调用TransmitFrame()函数。

进入AppTaskMBTx任务错误标志位是否置位Y发送正确响应帧N发送错误响应帧

图4-7 发送任务子程序流程图

TransmitFrame()函数下设置为:

TxBuff[p]=(u8)((ADC_Value[t]>>8)&0xff); TxBuff[p+1]=(u8)(ADC_Value[t]&0xff);

把从外部采集并且存放在之前设置的ADC的数组中的信号传递于TxBuff[p+1],逐步向下,逐个采集。如果请求帧发送正确,则由串口发送数据,之后设置 SENDCOM=1,以表示出发送完成标志位置位。如图4-8在接受到CPU发送过来的数据信息后,首先进行数据解析,即本程序中的AppTaskMBTx任务,在该任务中调用Frame_Analyze()函数,Frame_Analyze()函数的功能是通过以下指令: CRC_CAL=CRC16(RxBuff,22);

CRC_FRAME=RxBuff[22]|(RxBuff[23]<<8);

使计算机收到数据CRC,进而判断主机发送的地址以及功能码,若分析出是发给ADC模块的数据信息后,则接受指令,从机ADC发送数据,完成整个任务。

20

进入 AppTaskAnalyze任务NCRC是否正确YNAddr=1?Y功能码=3?Y错误标志位复位错误标志位置位N

图4-8 帧解析任务子程序图

4.5 LCD显示模块的设计

4.5.1 uC_GUI概述

uC/GUI是Micrium公司研发的图像界面软件。是一种嵌入式应用中的图形支持系统. uC/GUI适用于任意LCD控制器和CPU下任何尺寸的真实显示或虚拟显示.它的设计架构是模块化的, 由不同的模块中的不同层组成, 由一个LCD驱动层来包含所有对LCD的具体图形操作, UCGUI可以在任何的CPU上运行, 因为它是100%的标准C代码编写的. uC_GUI很适合大多数的使用黑色/白色和彩色。

硬件操作层直接对LCD操作,不同的系统需要根据LCD的控制器作相应的移植。LCD驱动层是测试驱动层程序最主要的层面,它利用硬件操作层来实现最基本的绘图函数。UCGUI系统层实现了复杂绘图层函数的封装,解决了绘图中出现的大部分问题,并给用户提供API接口。用户层利用UCGUI的上层API实现系统的图形界面。

UCGUI能够适应大多数的使用黑白或彩色LCD的应用, 它提供非常好的允许处理灰度的颜色管理.还提供一个可扩展的2D图形库及占用极少RAM的窗口管理体系。UCGUI的内部模块结构图为:

21

应用程序窗口窗口管理层控制器基本图形控件消息2D图形库字体LCD驱动层LCD驱动程序

图4-9 UCGUI的内部模块结构图

4.5.2 LCD显示模块软件设计

在该实训的LCD模块的软件设计中,在MDK环境下我们首先是在裸机的状态下去完成数据的显示,首先是添加了LCD_drive file,在此文件中创建支持ILI9320的驱动IC控制程序LCD.c以及随其的配置头文件LCD.h,使用16位并行传输。在LCD.c文件中对LCD进行各种必要配置,(GPIO配置和LCD所要进行的背景颜色、汉字显示、图片显示等的写函数)。在LCD.h中主要是定义驱动IC是ILI9320并且声明与硬件相关的子函数,以及作了Lcd初始化:

void Lcd_Initialize(void);

及其低级控制函数: void Lcd_Initialize(void);

void LCD_WR_REG(u16 Index,u16 CongfigTemp);

void Lcd_WR_Start(void);

Lcd高级控制函数: void Lcd_SetCursor(u8 x,u16 y);

void Lcd_Clear(u16 Color);

的声明定义。在main.c中调用各种数字、汉字和图片的显示函数,以完成显示功能。程序流程图如下:

22

开始配置并调用RCC、GPIO、NVIC、USART调用Lcd配置和初始化函数LCD清屏GPIO读入数据Y延迟5sN调用画线、汉字、图片显示函数

图4-10裸机状态下LCD显示程序流程图

其中设置一个像素和获取一个像素的颜色两个函数很重要,因为在下述的移植uC_GUI操作系统时, UC_GUI和编写好的TFT驱动关联起来时需要这两个函数为前提。void LCD_SetPixel(unsigned short x, unsigned short y, unsigned short color) { ……};

unsigned short LCD_GetPixel(unsigned short x, unsigned short y) {…… };

然后进行测试。在显示成功后,则将μC/OS-II和uC_GUI嵌入式操作系统移植于TFT底层驱动程序。

4.5.2 uC_GUI的移植步骤:

第一步:首先,上述的TFT底层驱动写好,既在裸机下,可以正常显示。 第二步:加入uC_GUI程序包。

23

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

在一切配置成功之后,移植Uc/COS操作系统,在Uc/COS操作系统的界面下,主要完成AppTaskAnalyze任务和AppTaskMBTx任务两个任务。如图4-6所示,在AppTaskMBTx中调用TransmitFrame()函数。 进入AppTaskMBTx任务错误标志位是否置位Y发送正确响应帧N发送错误响应帧 图4-7 发送任务子程序流程图 TransmitFrame()函数下设置为: TxBuff[p]=(u8)((ADC_Value[t]>>8)&0xff); TxBuff[p+1]=(u8)(ADC_Value[t]&0xff); 把从外部采集并且存放在之前设置的ADC的数组中的信号传递于TxBuff[p+1],逐步向下,逐个采集。如果请求帧发送正确,

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com