微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于C8051F020和USB的OLED控制系统设计

基于C8051F020和USB的OLED控制系统设计

时间:11-04 来源:互联网 点击:
4 读取显示数据程序设计

本文研究的该部分的程序主要是显示数据的采集,它是通过中断响应方式进行的。CH375的中断信号INT#连接单片机的INT0,设置成外部中断,配置为下降沿触发输入,由IT0(TCON.0)和IT1(TCON.2)的设置决定,IE0(TCON.1)为外部中断INT0的中断标志,产生中断后即CPU在转向ISR时自动清除响应的中断标志。该中断的初始化程序如下: void INT_Init(void) {

EA = 1;  //中断总允许

EX0 = 1; //INT0中断允许

IT0 = 1; //INT0设置为下降沿触发

PX0 = 1; //INT0(/UINT)设置为高优先级,可中断其他正在执行的中断程序 }

程序中将 CH375中断信号设为最高优先级,一旦有 U盘插入,立即产生中断,之后进入中断程序入口,执行中断程序,进行文件数据的读取操作。软件实现如错误!未找到引用源。所示,首先调用CH375DiskConnect()查询是否真的有 U盘插入,否则的话立即返回主程序,继续执行原来的程序,如果有 U盘插入,接着调用CH375Init(),进行初始化复位;然后判断 U盘是否准备好,等待其准备好后,即可调用函数CH375FileOpen(),根据参数(一般是文件名和完整的路径名)打开指定的文件。文件如果不能正常打开,可能文件并不存在,立即返回主程序,结束本次读取,也可以通过调用CH375FileEnumer()查询文件是否存在。文件正常打开后,调用 CH375ByteLocate()函数执行指针定位,以字节为单位移动当前文件指针,进入字节模式。然后调用CH375ByteRead(),以字节为基本单位从当前文件读取数据。全部读完后,调用CH375FileClose()关闭文件,并返回主程序,最后完成数据的读取。

5 结论

本文所设计的系统能够实现文字、图片和图像的动静态显示。并将USB接口设计在内,实现嵌入式USB主机,使系统可以作为USB主机与U盘通信,通过读U盘来完成显示数据的更新,使嵌入式系统和移动存储设备能够在脱离PC机的情况下进行数据交换。增强了电路系统的实用性,扩大了其应用范围。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top