齐鲁医学嵌入式系统输入输出设备接口技术_第1页
齐鲁医学嵌入式系统输入输出设备接口技术_第2页
齐鲁医学嵌入式系统输入输出设备接口技术_第3页
齐鲁医学嵌入式系统输入输出设备接口技术_第4页
齐鲁医学嵌入式系统输入输出设备接口技术_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 输入/输出设备接口技术 2021/9/3011、通用I/O端口结构(GPIO)3.1 通用I/O端口2021/9/302GPIO端口: PORT数据寄存器、DDR数据方向寄存器。输出:置“1”,输出数据;DDR方向寄存器:输入:置“0”,输入数据。117个GPIO端口: 1个23位的Port A; 2个11位的Port B、H; 3个16位的Port C、D、E、G; 1个 8位的Port F。2021/9/3032、接口电路 通过端口D的GPD1、GPD0控制发光二极管轮流闪烁。2021/9/304端口D控制寄存器寄存器地址描述GPDCON0 x56000030使用位31:0,分别对

2、端口D的16个引脚进行配置。00:输入; 01:输出GPDDAT0 x56000034数据寄存器,使用位15:0GPDUP0 x56000038配置上拉电阻 1:禁止0:使能GPDCON= GPDCON&0 xfffffff0 | 0 x00000005;GPDDAT= GPDDAT&0 xfffffffC | 0 x00000002;2021/9/305GPDCON= GPDCON&0 xfff0ffff | 0 x00050000;GPDDAT= GPDDAT&0 xeff | 0 x200;例题1,判断D端口的输入/输出状态及高低电平2021/9/3063.2 A/D转换器接口 S3C2

3、410A包含 一个8通道的A/D转换器。 10位分辨率。 采样电压范围是03.3V。 讨论1当参考电压为3.3V时,输入电压为2.0V,采集的数字量为多少?1、ADC内部结构及ADC控制器相关寄存器2021/9/307A/D转换器和触摸屏接口电路2021/9/308(1)ADC控制寄存器(ADCCON)2021/9/309A/D转换的转换时间计算。例,PCLK为50MHz,PRESCALER=49;所有10位转换时间为50 MHz/(49+1)=1MHz 转换时间为1/(1M/5 cycles)=5us注意:完成一次A/D转换需要5个时钟周期。A/D转换器的最大工作时钟为2.5MHz,所以最大

4、的采样率可以达到500kbit/s。2021/9/30101、要使A/D 转换器正常启动,预分频因子取50,应向ADCCON写入什么控制字?01001100010000012、要启动A/D 转换器读第2号通道数据启动(预分频因子取16),应向ADCCON写入什么控制字?0100001111010011例题22021/9/3011(2)ADC触摸屏控制寄存器(ADCTSC) 在正常A/D转换时,AUTO_PST和XY_PST都置成0即可,其他各位与触摸屏有关,不需要进行设置。(3)ADC转换数据寄存器(ADCDAT0和ADCDAT1) 在触摸屏应用中,分别使用ADCDAT0和ADCDAT1保存X

5、位置和Y位置的转换数据。对于正常的A/D转换,使用ADCDAT0来保存转换后的数据。(4)ADC启动延时寄存器(ADCDLY)2021/9/3012思考1如何判断ADC转换完成?如何启动ADC转换?A/D转换的数据可以通过中断或查询的方式来访问,如果是中断方式,则全部的转换时间(从A/D转换的开始到数据读出)要更长。 如果是查询方式,则要检测ADCCON15(转换结束标志位)来确定从ADCDAT寄存器读取的数据是否是最新的转换数据。A/D转换开始的一种方式是将ADCCON0置为1, 另一种方式是将ADCCON1置为1,这时只要有读转换数据的信号,A/D转换就会同步开始。2021/9/3013A

6、/D转换的流程图2、ADC接口编程例题3、ADC转换2021/9/3014定义与AD转换相关的寄存器定义如下:#define rADCCON(*(volatile unsigned*)0 x58000000) /ADC控制寄存器#define rADCTSC(*(volatile unsigned*)0 x58000004) /ADC触摸屏控制寄存器#define rADCDLY(*(volatile unsigned*)0 x58000008) /ADC启动或间隔延时寄存器#define rADCDAT0(*(volatile unsigned*)0 x5800000c)/ADC转换数据寄存器0#define rADCDAT1(*(volati1e unsigned*)0 x58000010)/ADC转换数据寄存器 对A/D转换器进行初始化程序中的参数ch表示所选择的通道号,程序如下:void AD_Init(unsigned char ch) rADCDLY=100; /ADC启动或间隔延时 rADCTSC=0; /选择ADC模式 rADCCON=(114)|(496)|(ch3)|(02)|(07) return 0; /通道不能大于7 for(i=0; i 16; i+) /为转换准确,转换16次 rADCCON |=0 x1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论