嵌入式课设基于ARM9的模拟输入输出接口驱动程序的设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

串行通信的设计在嵌入式系统开发中是一个非常重要的部分,基本原理是使用一片缓冲芯片74LS244来把CPU外面的输入数据写入CPU的并行总线上,并行总线上的数据被一片数据锁存芯片74LS273保留,CPU通过选中锁存芯片,并读取预先设给锁存器地址内的内容,就可以把数据读出,来确定外面的数据的高低。

通过这样的设计来实现模拟输入输出接口驱动程序的设计,设计中涉及到串口的输入和输出。

关键词嵌入式系统;串口通信;驱动程序

一.设计目的 (1)

二.设计思路 (1)

2.1 主要内容 (1)

2.2 硬件原理 (1)

2.3 实验系统的硬件资源总揽 (2)

2.4 实现PC机与EL-ARM-830开发系统的串行通讯 (3)

三.关键技术 (3)

3.1 模拟输入输出驱动程序的关键技术 (3)

3.2 ARM9处理器 (4)

3.3 核心板资源的具体介绍 (5)

3.4 嵌入式C语言开发技术 (6)

四.程序流程 (7)

五.主要代码 (9)

六.运行结果及结论 (11)

总结 (12)

参考文献 (12)

一.设计目的

1. 学习模拟输入输出接口的原理

2. 掌握接口程序实现的基本方法

二.设计思路

2.1 主要内容

(1)基于ARM9微处理器的串行接收驱动程序设计

①初始化程序设计

②串行接收程序设计

(2)基于ARM9微处理器的串行发送驱动程序设计

①初始化程序设计

②串行发送程序设计

(3)基于ARM9微处理器的串行接收发送驱动程序设计

①初始化程序设计

②串行接收发送程序设计

2.2 硬件原理

硬件原理如图所示,U2 MAX232是RS-232C的接口电路,实现电平转换作用。能将来自S3C44B0X一侧的0V~3.3V正逻辑电平转换为符合EIA标准的负逻辑电平输出,既当S3C44B0X发出0V电平时,经过MAX232转换为3V~15V电平,当S3C44B0X发出3.3V电平时,经过MAX232转换为-3V~-15V电平;能将来自PC 机一侧的标准RS-232电平,转换为TTL电平输出,既当MAX232接收到3V~15V 电平时,能转换为0V电平传向S3C44B0X一侧,当MAX232接收到-3V~-15V电平时,能转换为5V电平传向S3C44B0X一侧。通过这种电平转换,实现S3C44B0X 与标准RS-232C设备通讯。R1、R2是限流电阻,起保护作用。原因是,MAX232向S3C44B0X一侧的电平信号是0~5V,而S3C44B0X仅能发出/接收0~3.3V电平,逻辑高电平不匹配,通过限流电阻,简单实现两种电平的接口。

图1 串行通讯原理图

2.3 实验系统的硬件资源总揽

☆CPU单元:内核ARM920T,芯片三星的S3C2410,工作频率最高202MHz;☆动态存储器:64MB,芯片HY57V561620;

☆海量存储器:32MB,芯片K9F5608;

☆ USB单元: 1个主接口,两个设备接口,芯片PDIUSBD12;

☆网络单元: 10/100M以太网,芯片AX88796;

☆ UART单元: 2个,最高通信波特率115200bps;

☆语音单元: IIS格式,芯片UDA1341TS,采样频率最高48KHz;

☆ LCD单元: 5.7寸,256色,320X240像素;

☆触摸屏单元:四线电阻屏,320X240,5.7寸;

☆ SD卡单元:通信频率最高25MHz,芯片W86L388D,兼容MMC卡;

☆键盘单元: 4X4键盘,带8位LED数码管;芯片HD7279A;

☆模拟输入输出单元:8个带自锁的按键,及8个LED发光管;

☆ A/D转换单元:芯片自带的8路10位A/D,满量程2.5V;

☆信号源单元:方波输出;

☆标准键盘及PS2鼠标接口;

☆标准的IDE硬盘接口;

☆达盛公司的Tech_V总线接口;

☆达盛公司的E_Lab总线接口;

☆调试接口: 20针JTAG;

☆CPLD单元;

☆电源模块单元。

2.4 实现PC机与EL-ARM-830开发系统的串行通讯

具体通讯方式与内容:

(1) 帧格式:正常模式,无奇偶校验,一个停止位,8个数据位

(2)串行发送:每过一定时间,隔2行发送字符串“HOW ARE YOU!”,通过PC机的串口调试助手接收。

(3) 串行接收:将接收到的5个字符存储到以0XC300000为首地址的SDRAM 中,通过串口调试助手发送字符.

(4)当接收到串口调试助手界面发送的“1”,发送第1屏信息;当接收到串口调试助手界面发送的“2”,发送第2屏信息;当接收到串口调试助手界面发送的“3”,发送第3屏信息

三.关键技术

3.1 模拟输入输出驱动程序的关键技术

74LS244: 74LS244为3态8位缓冲器,一般用作总线驱动器。没有锁存的功能。地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。

8086/8088数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址。当微处理器与存储器交换信号时,首先由CPU发出存储器地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在总线上,随后才能传输数据。

锁存器是一个很普通的时序电路。一般的,它在时钟上升沿或者下降沿来的时候锁存输入,然后产生输出,在其他的时候输出都不跟随输入变化,这就是所谓边缘触发的D触发器。当然也有电平触发的D触发器,具体使用哪种,得看你使用得总线配置。通常用作单片机的地址锁存器的芯片有74LS373、8282、74LS273等。74LS373和8282是带三态输出的8位锁存器,它们的结构和用法类似。以74LS373为例,共有8个输入端D1—D8及8个输出端—Q8。当三态端OE为有效低电平,74LS373的G端为输人选通端,使能端G为有效高电平时,输出跟随输入变化;当G=1时,锁存器处于透明工作状态,即锁存器的输出状态随数据端

相关文档
最新文档