- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1
第17讲 嵌入式接口技术第8章 嵌入式存储器和接口技术
本章主要介绍以下内容:
嵌入式系统常用存储器
嵌入式系统常用总线
嵌入式系统常用接口
嵌入式系统常用外部设备
2
8.3 嵌入式系统常用接口
嵌入式系统常用的接口有串口、以太网口、USB口和JTAG口。此外,还有通用IO口(GPIO)、火线(IEEE1394)、同步串行IO口(例如:S3C44B0X处理器的SIO)、 PCMCIA等。
在第5讲我们已经详细讲解了JTAG接口,以下我们主要介绍串口(UART)、 GPIO口和USB口。
由于篇幅的限制,我们没有把以太网接口和以太网接口控制器RTL8019AS的讲解做在本课件中。
3
8.3.1 UART接口
UART负责管理异步串行数据通信,常常用于主机与嵌入式开发板的之间的最初调试信息通信,在嵌入式系统中是重要的I/O接口之一。
多数嵌入式处理器内部集成了UART接口。例如:S3C44B0X内部具有2个(S3C2410有3个)独立的UART通道,每个UART通道都可以工作在中断模式或DMA模式,并且每个UART均具有两个16字节的FIFO(先入先出寄存器)分别供接受和发送使用,所支持的最高波特率达到118.2Kbps(S3C2410为230.4Kbps)。
4
UART的基本功能
UART提供的主要功能是:传输波特率设定;将接受到的串行数据变换为主机内部的并行数据;把机内并行数据转换为输出串行数据;设定数据传输的帧格式;对输入输出的串行数据流中进行奇偶校验处理;进行数据收发执行缓冲处理等等。
5
S3C44B0X处理器的UART操作
主要有4种 UART操作
数据发送
数据接收
自动流控制
RS-232接口
6
S3C44B0X的UART编程步骤
通常基于S3C44B0X嵌入式开发板的串行口使用的是S3C44B0X内部UART接口。通过电平转换电路芯片(如Max3233),把3.3V的逻辑电平转换为RS-232-C的逻辑电平,向外进行数据收发。这种串口往往使用了RS-232-C的3根线进行通信,其接口为D型的9针阳性插头。
7
S3C44B0X的UART编程步骤(续1)
D型的9针阳性插头各个管脚的定义及3线通信连接方法参看下图:
8
S3C44B0X的UART编程步骤(续2)
涉及UART数据发送接收的引脚主要是两组RxD,TxD引脚。参看下图,可以看出RxD0、TxD0、RxD1、TxD1这四个引脚是复用引脚。因此,在编写串口数据收发程序之前,首先需要对GPC12、GPC13、GPE1、GPE2口的工作模式进行设置。
9
S3C44B0X的UART编程步骤(续3)
S3C44B0X的UART数据收发引脚示意图:
10
S3C44B0X的UART编程步骤(续4)
与这两组串口引脚设置有关的寄存器PCONC和PCONE的部分位定义如下表所示。
控制寄存器
地址
控制口线
控制位
描述
PCONC
0x01D20010
PC13
27~26
00:输入 01:输出
10:DATA29 11:RxD1
PC12
25~24
00:输入 01:输出
10:DATA28 11:TxD1
PCONE
0x01D20028
PE2
5~4
00:输入 01:输出
10:RxD0 11:保留
PE1
3~2
00:输入 01:输出
10:TxD0 11:保留
PUPC
0x01D20018
PC15~ PC0
15~0
0:相应位的上拉电阻使能
1:相应位的上拉电阻失效
PUPE
0x01D2002C
PE8~ PE0
8~0
0:相应位的上拉电阻使能
1:相应位的上拉电阻失效
11
S3C44B0X的UART编程步骤(续5)
(1) PC口和PE口设置
#define rPCONC (*(volatile unsigned char*)0x01D20010)
PC口通过以下C语句设置:
rPCONC = 0x0F000000 | rPCONC;
/* 使PC13引脚为RxD1,PC12引脚为TxD1*/
rPUPC = 0x3000;
/* 设置PC13和PC12无内部上拉电阻*/
PE口通过以下C语句设置:
rPCONE = (rPCONE0xFC3) | 0xEB;
/*使PE2引脚为RxD0,PE1引脚为TxD0 */
rPUPE = 0x6;
/* 设置PE2和PE1无内部上拉电阻*/
12
UART初始化代码
void Uart_Init(int Uartnum, int mclk, int baud)
{
int i;
if(mclk==0) mclk=MCLK;
if(Uartnum=
您可能关注的文档
最近下载
- 平狄克-微观经济学-第七版--课件.ppt VIP
- 电线电缆质量手册范本.doc VIP
- 中职英语高教版(2025)基础模块1Unit 1 Personal and Family Life 单词课件(共20张ppt)(含音频+视频).pptx VIP
- 2025年高考语文一轮复习考点通关【语言文字运用】考点38 正确使用词语(含答案).docx VIP
- 猜谜语-动物(十六).docx VIP
- 2025年高考语文一轮复习考点通关【语言文字运用】考点41 辨析与鉴赏修辞手法(含答案).docx VIP
- 沃森(VicRuns)VD120A-GS系列变频器说明书用户手册.doc
- 2025年10月离任审计述职报告范文模板.docx VIP
- 2024年《社区JW工作规范(试行)》题库.docx
- 跨境电商客户服务课件:学习情境四 跨境电子商务售中沟通与服务.pptx VIP
文档评论(0)