《第5章ARM接口设计技术素材优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第5章ARM接口设计技术素材优秀PPT.ppt(117页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五章第五章 ARMARM接口设计技术接口设计技术2内容提要内容提要A/D和和D/A转换器接口转换器接口通讯与中断接口通讯与中断接口LCD显示器与触摸屏接口(了解)显示器与触摸屏接口(了解)LED显示器显示器键盘接口键盘接口ARM的的JTAG接口接口3芯片芯片S3C44B0XS3C44B0X S3C44B0X S3C44B0X是基于是基于ARM7TDMIARM7TDMI的体系结构的体系结构,是是ARMARM公公司最早为业界普遍认可并且赢得最广泛应用的司最早为业界普遍认可并且赢得最广泛应用的处理核。处理核。4基于ARM架构的32位微处理器Sam sung S3C44B0XLCD显示USB接口 U
2、SBN9603两个RS-232串行通信接口JTAG调试端口TCP/IP协议CAN BUS键盘输入16MB非线性Flash(硬盘)8MBSDRM(系统内存)1MB线性Flash(BIOS)lS3C44B0XS3C44B0X具有具有7171个通用多功能输入输出引脚,个通用多功能输入输出引脚,l这些这些I/OI/O口的应用是口的应用是S3C44BOXS3C44BOX处理器的基础应用,处理器的基础应用,分别包含在如下分别包含在如下7 7组端口中组端口中:56内容提要内容提要A/D和和D/A转换器接口转换器接口通讯与中断接口通讯与中断接口LCD显示器与触摸屏接口(了解)显示器与触摸屏接口(了解)LED显
3、示器显示器键盘接口键盘接口ARM的的JTAG接口接口键盘接口键盘接口 计算机的键事实上就是开关,制造这种键的方计算机的键事实上就是开关,制造这种键的方法是多种多样的,以下是几种常用的按键:法是多种多样的,以下是几种常用的按键:机械式按键机械式按键 电容式按键电容式按键 薄膜式按键薄膜式按键 霍耳效应按键霍耳效应按键 7用用ARMARM芯片实现键盘接口芯片实现键盘接口l与与4X4的矩阵键盘接口,接受的矩阵键盘接口,接受“行扫描法行扫描法”方法方法来检测键盘,只须要来检测键盘,只须要8根口线,根口线,l选取选取PF口作为检测键盘用端口,口作为检测键盘用端口,8PF0PF1PF2PF3S3C44B0
4、XPF4PF5PF6PF7+5V输出扫描码输出扫描码端口端口键值读入口键值读入口矩阵键盘按键的识别方法矩阵键盘按键的识别方法识别键盘哪一行的键被按下:让全部行线均为低识别键盘哪一行的键被按下:让全部行线均为低电平,检查各列线电平是否为低,假如有列线为低,电平,检查各列线电平是否为低,假如有列线为低,则说明该列有键被按下,否则说明无键被按下。则说明该列有键被按下,否则说明无键被按下。假如某列有键被按下,识别键盘哪一行的键被按假如某列有键被按下,识别键盘哪一行的键被按下:逐行置低电平,并置其余各行为高电平,检查下:逐行置低电平,并置其余各行为高电平,检查各列线电平的变更,假如列电平变为低电平,则可
5、各列线电平的变更,假如列电平变为低电平,则可确定此行此列交叉点处按键被按下。确定此行此列交叉点处按键被按下。9行扫描法识别矩阵键盘按键行扫描法识别矩阵键盘按键10PF0PF1PF2PF3S3C44B0XPF4PF5PF6PF7+5V某一按键按下全部的行线为低电平逐行为低电平行扫描法获得键值的程序设计行扫描法获得键值的程序设计l寄存器设置寄存器设置 接口中利用了接口中利用了PFPF口的相关寄存器,口的相关寄存器,PFPF口的寄存器有口的寄存器有3 3个个PCONF,PDATF(PFPCONF,PDATF(PF口数据寄存器口数据寄存器 )和和PUPF(PUPF(口上拉口上拉电阻寄存器电阻寄存器 )
6、11PDATF位位描述描述PF8:08:0当端口当端口设设定定为输为输入口入口时时,这这个寄存器的相个寄存器的相应应位就位就对应对应着引脚的着引脚的状状态态;当端口当端口设设定定为输为输出口出口时时,输输出引脚的状出引脚的状态态与与该该寄存器的寄存器的相相应应位相同位相同;当端口当端口设设定定为为多功能口多功能口时时,PDATF中的内容无效中的内容无效PUPF位描述PF8:08:00:相应位的上拉电阻使能1:相应位的上拉电阻禁止寄存器设置寄存器设置l设置设置PCONFPCONF寄存器寄存器 设定设定PF0-3PF0-3为输出口,为输出口,PF4-7PF4-7为输入口,在端为输入口,在端口工作之
7、前设置口工作之前设置 rPCONF rPCONF 000 000 000 00 000 000 000 00 01 01 01 01 B01 01 01 01 B PF4-7 PF4-7为输入为输入 PF0-3PF0-3为输出为输出12寄存器设置寄存器设置l设置设置PDATFPDATF寄存器寄存器lPF0-3PF0-3作为输出口输出扫描码时,可接受语句作为输出口输出扫描码时,可接受语句:l rPDATF=Oxf0 /PF0-3 rPDATF=Oxf0 /PF0-3全写入全写入0 0lPF4-7PF4-7作为输入口读入键值时,接受语句作为输入口读入键值时,接受语句:l Keyval=Keyval
8、=(rPDATF&0 xf0rPDATF&0 xf0)4;4;l设置设置PUPFPUPF寄存器寄存器l设置内部上拉电阻的语句为设置内部上拉电阻的语句为:l rPUPF=0 x00;/rPUPF=0 x00;/使能使能PF0-7PF0-7的内部上拉的内部上拉电阻电阻13编写键盘扫描程序编写键盘扫描程序14起先起先初始化键值为初始化键值为-1-1PF0-3PF0-3输出全输出全0 0PF4-7PF4-7读入读入为全为全1 1?PF0-3PF0-3输出扫描码输出扫描码PF4-7PF4-7读入读入为全为全1 1?扫描码指针移位扫描码指针移位获得行号和列号,获得行号和列号,计算键值计算键值返回键值返回键
9、值NYYN15内容提要内容提要A/D和和D/A转换器接口转换器接口通讯与中断接口通讯与中断接口LCD显示器与触摸屏接口(了解)显示器与触摸屏接口(了解)LED显示器显示器键盘接口键盘接口ARM的的JTAG接口接口LEDLED显示器接口概述显示器接口概述lLED(LightEmittingDiode)常称常称为为七段七段发发光二光二极管极管,在在专专用的微型用的微型计计算机系算机系统统中中,特殊是在嵌入特殊是在嵌入式限制系式限制系统统中中,应应用特用特别别普遍普遍l价格低廉、体价格低廉、体积积小、功耗低,而牢靠性又很好小、功耗低,而牢靠性又很好l从从单单板微型机、袖珍板微型机、袖珍计计算机到很多
10、微型机限制算机到很多微型机限制系系统统及数字化及数字化仪仪器都用器都用LED作作为输为输出出显显示示16LED LED 的工作原理的工作原理17l7 7个字段分别称为个字段分别称为a a、b b、c c、d d、e e、f f、g g段,有段,有时还有一个小数点段时还有一个小数点段DPDP。l通过通过7 7个发光段的不同组合,可以显示个发光段的不同组合,可以显示0 0到到9 9和和A A到到F F共共1616个字母数字个字母数字,从而实现十六进制的显示从而实现十六进制的显示l位控端口位控端口:把阴(阳)极限制端接至一输出端口把阴(阳)极限制端接至一输出端口l段控端口段控端口:把数据显示段接至一
11、个输出端口把数据显示段接至一个输出端口,输输出所显示数字的出所显示数字的7 7段代码段代码l译码:译码:l 将一个将一个4 4位二进制数位二进制数(可能为十六进制数或可能为十六进制数或BCDBCD码码)译为译为LEDLED的的7 7位显示代码。位显示代码。l接受两种方法:接受两种方法:l 接受专用芯片接受专用芯片,实现对实现对BCDBCD码的译码(码的译码(74477447)l软件译码法:在软件设计时软件译码法:在软件设计时,将将0 0到到F F共共1616个数字个数字(或者或者0 0到到9)9)对应的显示代码组成一个表对应的显示代码组成一个表18用用ARMARM芯片实现芯片实现LEDLED显
12、示接口显示接口19l接口电路接口电路7 7段数码段数码LEDLED编程编程l设置设置PCONFPCONF、PCONGPCONG寄存器寄存器rPCONFrPCONF 001 001 001 01 01 01 01 01 001 001 001 01 01 01 01 01 B B0 x125550 x12555;rPCONGrPCONG 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 B B0 x5555;0 x5555;l设置设置PUPFPUPF、PUPGPUPG寄存器寄存器rPUPF=0 x00;/rPUPF=0 x00;/使能使能PF0-7P
13、F0-7的内部上拉电阻的内部上拉电阻rPUPG=0 x00;/rPUPG=0 x00;/使能使能PG0-7PG0-7的内部上拉电阻的内部上拉电阻20在端口工作之前在端口工作之前设置为输出端口设置为输出端口设置内部上拉电设置内部上拉电阻阻l流程图流程图21指向缓冲区首址指向缓冲区首址取显示位指针取显示位指针取要现实的数取要现实的数将数变为段码将数变为段码段码送到段限制通道段码送到段限制通道位码送到位限制通道位码送到位限制通道延迟一段时间延迟一段时间是否最终一位是否最终一位退出退出修改缓冲区指修改缓冲区指针和位码针和位码YNvoid DisplayLedl(unsigned char dis_8_
14、num)unsigned char led_dis=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90,0 x88,0 x83,0 xC6,0 xA1,0 x86,0 x8E,0 x8C;unsigned char i,j,D_val,B_val;rPCONF 0 x12555;rPCONG0 x5555;rPUPF=0 x00;B_val=0 x80;220 0F F及及小数位小数位段码表段码表将端口设置为将端口设置为输出端口输出端口使能使能PGPG和和PFPF内内部上拉电阻部上拉电阻 for(i=0;i8;i+)D_val
15、=dis_8_numi;rPDATF=led_disD_val;rPDATG=B_val;for(j=0;j 1;23取出要在取出要在8 8个个LEDLED数码管上数码管上显示的字符显示的字符延迟一段时间延迟一段时间串行通信概述串行通信概述 串行通信就是使数据一位一位地串行通信就是使数据一位一位地进进行行传输传输而而实实现现的通信。的通信。l串行数据传送模式:串行数据传送模式:单工单工半双工半双工全双工全双工 24串行通信方式:串行通信方式:同步通信同步通信异步通信异步通信异步通信方式异步通信方式l异步式传输把每一个字符当作独立的信息来传送异步式传输把每一个字符当作独立的信息来传送,并依据一固
16、定且预定的时序传送并依据一固定且预定的时序传送,但在字符之但在字符之间却取决于字符与字符的随意时序。间却取决于字符与字符的随意时序。l异步通信必需遵循的两项规定为:异步通信必需遵循的两项规定为:l字符的格式字符的格式:每个字符传送时,必需前面加一起每个字符传送时,必需前面加一起始位,后面加上始位,后面加上1 1或或1.51.5或或2 2位停止位。要传送字位停止位。要传送字符以其最低有效位符以其最低有效位(LSB)(LSB)先送出的先送出的(即即D0)D0)l波特率波特率 波特率就是传送数据位的速率,用位波特率就是传送数据位的速率,用位/秒秒 (bit/s bit/s)表示,称之为波特。)表示,
17、称之为波特。25l要传送要传送8 8为位数据为位数据 D D7 7 D D6 6 D D5 5 D D4 4 D D3 3 D D2 2 D D1 1 D D0 0 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 126起始起始位位传送传送数据数据偶校验位偶校验位停止位停止位0 0 0 0 1 0 0 1 1 1 1同步通信方式同步通信方式l将很多的字符聚集成一字符块后,在每块信息将很多的字符聚集成一字符块后,在每块信息之前要加上之前要加上1 1至至2 2个同步字符,字符块之后再加个同步字符,字符块之后再加入适当的错误检测数据才传送出去入适当的错误检测数据才传送出去l接受同步通信时
18、,在传输线上没有字符传输时,接受同步通信时,在传输线上没有字符传输时,要发送专用的要发送专用的“空闲空闲”字符或同步字符。字符或同步字符。l同步方式不仅在字符的本身之间是同步的,而同步方式不仅在字符的本身之间是同步的,而且在字符与字符之间的时序仍旧是同步的且在字符与字符之间的时序仍旧是同步的 27RS-232CRS-232C串行接口串行接口EIAEIA所定的传送电气规格:所定的传送电气规格:状态状态 “L L”(LowLow)“H H”(HightHight)电压范围电压范围 -25V-25V-3V +3V-3V +3V+25V+25V逻辑逻辑 “1 1”“0 0”名称名称 SPACE MAR
19、KSPACE MARKl28lRS-232CRS-232C所用的驱动芯片通常以正负所用的驱动芯片通常以正负1212伏的电源伏的电源来驱动信号线来驱动信号线l微机系统以微机系统以+5V+5V代表逻辑代表逻辑“1”“1”,而接地电压代,而接地电压代表逻辑表逻辑“0”“0”l输出经输出经RS-232CRS-232C接口内的运算放大器变更为正负接口内的运算放大器变更为正负12V12V的振幅电压的振幅电压,再由电线传送到接收端再由电线传送到接收端l数据信号规定负逻辑数据信号规定负逻辑 l 12V-0V 12V-0V 逻辑逻辑“0”-12V-5V“0”-12V-5V 逻辑逻辑“1”“1”29lTTLTTL
20、标准与标准与RS-232CRS-232C标准之间的电平转换电路利标准之间的电平转换电路利用集成芯片用集成芯片RS232RS232实现。实现。30RS-232CRS-232C 接口信号接口信号RTSRTS(输输出):出):恳恳求求发发送送,在半双工方式下限制在半双工方式下限制发发送送器的开或关;器的开或关;CTSCTS(输输入):清除入):清除(允允许许)发发送送DSRDSR(输输入):数据装置准入):数据装置准备备好好DTRDTR(输输出)出):数据数据终终端准端准备备好好31S3C44BOXS3C44BOX内部集成的内部集成的UART UART lS3C44B0X UARTS3C44B0X
21、UART单元供应了两个异步串口(单元供应了两个异步串口(SIOSIO)l每个每个SIOSIO可以操作在中断模式或可以操作在中断模式或DMADMA模式模式l支持波特率最大为支持波特率最大为115.2kbps,115.2kbps,l每个每个SIOSIO通道都有一个通道都有一个1616字节的接收与发送字节的接收与发送FIFOFIFO缓缓冲区冲区l每个每个UARTUART模块包含以下几个部件:波特率发生器,模块包含以下几个部件:波特率发生器,发送器,接收器和限制单元。如图:发送器,接收器和限制单元。如图:3233URTURT操作操作数据发送数据发送l数据发送的帧格式是可编程的。通过线限制寄数据发送的帧
22、格式是可编程的。通过线限制寄存器存器(UCONn)(UCONn)来设置来设置l发送中止条件迫使串口输出保持在逻辑发送中止条件迫使串口输出保持在逻辑0 0状态,状态,并保持超过一个传输帧的时间长度。并保持超过一个传输帧的时间长度。l中止信号发送之后,传送数据将持续地放入到中止信号发送之后,传送数据将持续地放入到输出输出FIFOFIFO中(在不运用中(在不运用FIFOFIFO模式下,将被放到模式下,将被放到输出保持寄存器)。输出保持寄存器)。34起始位起始位5 5到到8 8个数据位个数据位可选的奇偶位可选的奇偶位1 1到到2 2个停止位个停止位URTURT操作操作数据接收数据接收l数据接收的帧格式
23、是可编程的数据接收的帧格式是可编程的l接收器可以检测到溢出错误、奇偶校验错误、接收器可以检测到溢出错误、奇偶校验错误、帧错误和中止状况,每种状况下都会将一个错帧错误和中止状况,每种状况下都会将一个错误标记置位误标记置位35URTURT操作操作自动流限制自动流限制(AFC)(AFC)lS3C44B0XS3C44B0X的的UARTUARTl UART UART:UART UART:用用nRTS nRTS 和和nCTSnCTS信号进行自动信号进行自动流限制流限制l UART MODEM:UART MODEM:不支持自动流限制,就应当不支持自动流限制,就应当在在UMCONnUMCONn寄存器中禁止自动
24、流限制,由软件限寄存器中禁止自动流限制,由软件限制制nRTSnRTS和和nCTSnCTS信号信号36在自动流限制时,在自动流限制时,nRTSnRTS由接收条件限制,由接收条件限制,nCTSnCTS由发送由发送条件限制条件限制发送时当发送时当nCTSnCTS信号有效时,发送器传输数据到信号有效时,发送器传输数据到FIFOFIFO中中在接收数据时,当在接收数据时,当FIFOFIFO有多于两个字节的空间时,有多于两个字节的空间时,nRTSnRTS激活激活,FIFO,FIFO剩余空间在一个字节以下时必需将剩余空间在一个字节以下时必需将nRTSnRTS清清0 0,说明,说明“不能在接收不能在接收”37U
25、RTURT操作操作非自动流限制非自动流限制l接收操作接收操作l选择接收模式(中断或选择接收模式(中断或BDMABDMA模式)模式)(UCONn)(UCONn)。l检查检查UFSTATnUFSTATn寄存器中接收寄存器中接收FIFOFIFO计数器的值。计数器的值。假如值小于假如值小于15,15,用户必需设置用户必需设置UMCONn0UMCONn0的值为的值为1(1(激活激活nRTS)nRTS);l 假如它等于或大于假如它等于或大于15,15,用户必需设置该用户必需设置该位值为位值为0 0(不激活(不激活nRTSnRTS)。)。l重复第重复第步步38URTURT操作操作非自动流限制非自动流限制l发
26、送操作发送操作l选择发送模式(中断或选择发送模式(中断或BDMABDMA模式)模式)l检查检查UMSTATn0UMSTATn0的值,假如为的值,假如为1(nCTS1(nCTS被激活被激活),用户就可以写数据到输出缓冲区或输出,用户就可以写数据到输出缓冲区或输出FIFOFIFO寄存器中寄存器中39中断中断DMADMA恳求产生器恳求产生器lS3C44BOXS3C44BOX的每个的每个UARTUART都有都有7 7个状态信号:个状态信号:l 接收接收FIFO/FIFO/缓冲区数据准备好缓冲区数据准备好l 发送发送FIFOFIFO缓冲区空缓冲区空l 发送移位寄存器空发送移位寄存器空l 溢出错误溢出错误
27、l 奇偶校验错误奇偶校验错误l 帧错误和中止帧错误和中止l全部这些状态都由对应的全部这些状态都由对应的UARTUART状态寄存器状态寄存器(UTRSTATn/UERSTATn)(UTRSTATn/UERSTATn)中的相应位来表现中的相应位来表现l。40l当接收器要将接收移位寄存器的数据送到接收当接收器要将接收移位寄存器的数据送到接收FIFO,FIFO,它会激活接收它会激活接收FIFOFIFO满状态信号满状态信号l当发送器从发送当发送器从发送FIFOFIFO中取出数据送到发送移位中取出数据送到发送移位寄存器,那么寄存器,那么FIFOFIFO空状态信号将会被激活空状态信号将会被激活l假如假如l限
28、制寄存器中的接收模式选为中断模式,就会限制寄存器中的接收模式选为中断模式,就会引发接收中断。引发接收中断。l假如接收发送模式被选为假如接收发送模式被选为DMADMA模式,模式,“接收接收FIFOFIFO满满”和和“发送发送FIFOFIFO空空”状态信号同样可以状态信号同样可以产生产生DMADMA恳求信号。恳求信号。41l溢出错误、奇偶校验错误、帧错误和中止状况溢出错误、奇偶校验错误、帧错误和中止状况都被认为是接收错误状态,假如都被认为是接收错误状态,假如UCONnUCONn中的中的“接接收错误状态中断使能位收错误状态中断使能位”被置位,它们中的每被置位,它们中的每一个都能够引发接收错误中断恳求
29、。一个都能够引发接收错误中断恳求。l当当“接收错误状态中断恳求接收错误状态中断恳求”被检测到,引发被检测到,引发恳求的信号可以通过读取恳求的信号可以通过读取UERSTATnUERSTATn来识别。来识别。42与与FIFOFIFO有关的中断有关的中断43类型类型FIFOFIFO模式模式非非FIFOFIFO模式模式RxRx中断中断每每当当接接收收数数据据达达到到接接收收FIFOFIFO触触发发电电平平,就就产产生生接接收收中中断断;如如果果FIFOFIFO非非空空且且连连续续3 3个个字字时时间间没没有有接接收收到到任任何何数数据据,就就产生超时中断;产生超时中断;每每当当接接收收数数据据满满,接
30、接收收移移位位寄寄存存器器将将产产生生一个中断;一个中断;TxTx中断中断每每当当发发送送数数据据达达到到发发送送FIFOFIFO触触发发电电平平,就产生发送中断就产生发送中断;每每当当发发送送数数据据空空,发发送送保保持持寄寄存存器器将将产产生生一个中断;一个中断;错错误误中中断断帧帧错错误误、奇奇偶偶校校验验错错误误和和被被检检测测到到并并按按字字节节接接收收的的中中止止信信号号,都都将将产产生生错错误误中中断断;当当达达到到接接收收FIFOFIFO的的顶顶部部,就就会产生溢出错误中断;会产生溢出错误中断;所所有有错错误误都都会会立立即即产产生生一一个个错错误误中中断断。但但两两个个错错误
31、误同同时时发发生生,只有一个中断会产生;只有一个中断会产生;UARTUART错误状态错误状态FIFOFIFOlUARTUART具有一个状态具有一个状态FIFO,FIFO,表示了在表示了在FIFOFIFO寄存器中,寄存器中,哪一个数据被毫无错误地接收哪一个数据被毫无错误地接收44虽然虽然UARTUART错误发生错误发生了,但错误中断不了,但错误中断不会产生,因为含有会产生,因为含有错误的字符还没有错误的字符还没有被被CPUCPU读取。只有当读取。只有当字符被读出时错误字符被读出时错误中断才会发生中断才会发生,如图:如图:波特率发生器波特率发生器l为传输供应了串行移位时钟为传输供应了串行移位时钟l
32、波特率发生器的时钟源可以通过波特率发生器的时钟源可以通过S3C44BOXS3C44BOX的内的内部系统时钟来选择。部系统时钟来选择。l波特率时钟由通过时钟源的波特率时钟由通过时钟源的1616分频及一个由分频及一个由UARTUART波特率除数寄存器波特率除数寄存器(UBRDIVn)(UBRDIVn)指定的指定的1616位除位除数确定。数确定。45lUBRDIVnUBRDIVn的值可以依据下式确定为:的值可以依据下式确定为:l UBRDIVn UBRDIVn(取整取整)(MCLK/()(MCLK/(波特率波特率16)-116)-1l除数的范围为除数的范围为1 1到到(216-1)(216-1)l例
33、如例如l 假如波特率为假如波特率为115 200 bps,115 200 bps,且系统主频且系统主频(MCLK)(MCLK)为为40 MHz40 MHz,则,则UBRDIVnUBRDIVn的值为:的值为:lUBRDIVn=(UBRDIVn=(取整取整)(40 000 000/(115 20016)(40 000 000/(115 20016)+0.5)-1+0.5)-122-1=2122-1=2146回送模式回送模式l回送模式回送模式:S3C44BOX:S3C44BOX的的UARTUART供应的一个测试模式供应的一个测试模式l在这种模式下,发送出的数据会马上被接收。在这种模式下,发送出的数据
34、会马上被接收。l这一特性用于校验运行处理器内部发送和接收通这一特性用于校验运行处理器内部发送和接收通道的功能道的功能l可以通过设置可以通过设置UARTUART限制寄存器限制寄存器(UCONn)(UCONn)中的回送中的回送位来实现。位来实现。47红外通信模式红外通信模式lS3C44BOXS3C44BOX的的UARTUART模块支持红外线(模块支持红外线(IR)IR)发送和接发送和接收收l可以通过设置可以通过设置UARTUART线限制寄存器线限制寄存器(ULCONn)(ULCONn)中的中的红外模式位来选择这一模式红外模式位来选择这一模式l在在IRIR发送模式下,发送阶段是通过正常串行发发送模式
35、下,发送阶段是通过正常串行发送占空比送占空比3/163/16的脉冲波进行调制(当传送的数的脉冲波进行调制(当传送的数据位为据位为0 0值)值)l在在IRIR接收模式下,接收必需通过检测接收模式下,接收必需通过检测 3/16 3/16脉冲脉冲波来识别波来识别0 0值值48UARTUART寄存器寄存器lUARTUART线限制寄存器线限制寄存器lUARTUART限制寄存器限制寄存器lFIFOFIFO限制寄存器限制寄存器 lModemModem限制寄存器限制寄存器l发送发送/接收状态寄存器接收状态寄存器49lUARTUART错误状态寄存器错误状态寄存器lUARTUART的的FIFOFIFO状态寄存器状
36、态寄存器lModemModem状态寄存器状态寄存器lUARTUART发送发送/接收保持寄接收保持寄存器存器lUARTUART波特率除数寄存器波特率除数寄存器UARTUART寄存器寄存器线限制寄存器线限制寄存器l作用是用来规定传输帧的格式作用是用来规定传输帧的格式l线限制寄存器线限制寄存器0 0(ULCON0ULCON0)、线限制寄存器)、线限制寄存器1(ULCON1)1(ULCON1)的地址分别为的地址分别为0 x01D000000 x01D00000、0 x01D040000 x01D04000l可读写,可读写,初始值为初始值为0 x000 x00。50l线限制寄存器的位定义线限制寄存器的位
37、定义51ULCONnULCONn位位描述描述初始初始值值保留保留770 0红外线模红外线模式式66该位确定是否使用红外通信模式该位确定是否使用红外通信模式0 0:正常模式:正常模式 1 1:红外收发模式:红外收发模式0 0奇偶校验奇偶校验模式模式55:33 该位确定奇偶如何产生和校验该位确定奇偶如何产生和校验0 0 xx:xx:无校验位无校验位 100 100:奇校验:奇校验 101 101:偶校验:偶校验 110110:校验位强制:校验位强制/检测置检测置1 1111 111:校验位:校验位强制强制/检测置检测置0 0000000停止位的停止位的数量数量22该位确定停止位的个数,该位确定停止
38、位的个数,0 0:1 1位停止位位停止位 1 1:2 2位停止位位停止位0 0数据位长数据位长度度11:00该位确定数据位的个数该位确定数据位的个数0000:5 5位位 01 01:6 6位位 10 10:7 7位位 11 11:8 8位位0000UARTUART限制寄存器限制寄存器lUCON0、UCON1的地址分的地址分别为别为0 x01D00004、0 x01D04004l可可读读写,写,初始初始值为值为0 x00lUART限制寄存器各位的含限制寄存器各位的含义见课义见课本表本表5-2452FIFOFIFO限制寄存器限制寄存器 lUFCON0UFCON0、UFCON1UFCON1的地址分别
39、为的地址分别为0 x01D000080 x01D00008、0 x01D040080 x01D04008,可读写,可读写,初始值为初始值为0 x000 x0053UFCONnUFCONn位描述初始值发送发送FIFOFIFO的触发电的触发电平平7:6这两位确定发送这两位确定发送FIFOFIFO的触发条件的触发条件 00 00:空空 ;01 01:4 4字节字节 10 10:8 8字节字节 11 11:1212字节字节00接收接收FIFOFIFO的的触发电平触发电平5:4这两位确定接收这两位确定接收FIFOFIFO的触发条件的触发条件 00 00:4 4字节;字节;0101:8 8字节字节 10
40、10:12 12字节字节 11 11:1616字节字节00保留保留30发送发送FIFOFIFO复复位位2该位在该位在FIFOFIFO复位后自动清除复位后自动清除 0 0:正常:正常 1 1:发送:发送FIFOFIFO复位复位0接收接收FIFOFIFO复复位位1该位在该位在FIFOFIFO复位后自动清除复位后自动清除 0 0:正常:正常 1 1:接收:接收FIFOFIFO复位复位0FIFOFIFO使能使能00 0:禁止:禁止 FIFO 1 FIFO 1:FIFO FIFO 使能使能0ModemModem限制寄存器限制寄存器54UMCONnUMCONn位位描述描述初始初始值值保留保留77:55这这
41、3 3位必须为位必须为 0 0000000自动流控制自动流控制4 4AFCAFC是否允许是否允许0 0:禁止:禁止 1 1:使能:使能0 0保留保留33:11这这3 3位必须为位必须为 0 0000000请求发送请求发送0如果如果AFCAFC允许允许,该位忽略;如果该位忽略;如果AFCAFC禁止,必须由软件来控制禁止,必须由软件来控制nRTSnRTS。0 0:高电平(不激活高电平(不激活 nRTSnRTS)1 1:低电平(激活低电平(激活 nRTSnRTS)0 0发送发送/接收状态寄存器接收状态寄存器55UTRSTATnUTRSTATn位位描述描述初始状态初始状态发送移位发送移位寄存器为寄存器
42、为空空22当发送移位寄存器中不包含有效数据或移位寄存当发送移位寄存器中不包含有效数据或移位寄存器为空,该位自动被置位。器为空,该位自动被置位。0 0:非空:非空1 1:发送保持和移位寄存器为空:发送保持和移位寄存器为空1 1发送缓冲发送缓冲器为空器为空11当发送缓冲区寄存器中不包含有效数据,这一位当发送缓冲区寄存器中不包含有效数据,这一位将自动被置位将自动被置位 0 0:缓冲区寄存器非空:缓冲区寄存器非空 1 1:空:空如果使用了如果使用了FIFO,FIFO,则用户不用检测这个位,而应则用户不用检测这个位,而应当检测当检测UFSTATUFSTAT中发送中发送FIFOFIFO计数器位和计数器位和
43、FIFOFIFO满位满位1 1接收缓冲接收缓冲器数据准器数据准备好备好00当接收缓冲器寄存器中包含了有效数据,这一位当接收缓冲器寄存器中包含了有效数据,这一位将自动被置位将自动被置位0 0:完全为空:完全为空 1 1:缓冲区寄存器:缓冲区寄存器中包含有效数据中包含有效数据如果使用了如果使用了FIFOFIFO则用户不用检测这个位,而应当则用户不用检测这个位,而应当检测检测UFSTATUFSTAT中接收中接收FIFOFIFO计数器位计数器位0 0UARTUART错误状态寄存器错误状态寄存器 56UERSTATnUERSTATn位位描述描述初始初始值值间隔中断间隔中断33如果接收到某个中止信号,该位
44、将自动如果接收到某个中止信号,该位将自动置置1 1;0 0:未接收到中止信号:未接收到中止信号 1 1:接收到:接收到中止信号中止信号0 0数据帧错误数据帧错误22如果在接收操作中发生了帧错误,该位如果在接收操作中发生了帧错误,该位将自动置将自动置1 1 0 0:接收中没有发生帧错误:接收中没有发生帧错误 1 1:帧错误:帧错误0 0奇偶错误奇偶错误11如果在接收操作中发生了奇偶校验错误,如果在接收操作中发生了奇偶校验错误,该位将自动置该位将自动置1 1 1 1:奇偶校验错误:奇偶校验错误 0 0:接收中没有发生:接收中没有发生奇偶校验错误奇偶校验错误0 0OverrunOverrun错错误误
45、00如果在接收操作中发生了溢出错误,该如果在接收操作中发生了溢出错误,该位将自动置位将自动置1 0:1 0:接收中没有发生溢出接收中没有发生溢出错误错误 1 1:溢出错误:溢出错误0 0UARTUART的的FIFOFIFO状态寄存器状态寄存器57UFSTATnUFSTATn位描述初始值保留保留1515:1010000000000000发送发送FIFOFIFO满满9 9当发送当发送 FIFOFIFO满时该位为满时该位为1 10 0:0 0字节字节发送发送 FIFO FIFO 的数的数据个数据个数 15 15字节字节 1 1:满:满0 0接收接收FIFOFIFO满满8 8当当FIFOFIFO将要满
46、时,该位为将要满时,该位为1 10 0:0 0字节字节接收接收 FIFO FIFO 数据数据个数个数 15 15字节字节 1 1:满:满0 0发送发送FIFOFIFO计计数器数器77:44发送发送FIFOFIFO里的数据数量里的数据数量00000000接收接收FIFOFIFO计计数器数器33:00接收接收 FIFOFIFO里的数据数量里的数据数量00000000ModemModem状态寄存器状态寄存器lUMSTAT0UMSTAT0、UMSTAT1UMSTAT1地址分别为地址分别为0 x01D0001C0 x01D0001C、0 x01D0401C0 x01D0401C,可读,可读,初始值为初始
47、值为0 x060 x0658UMSTATnUMSTATn位位描述描述初始值初始值CTSCTS变化变化4 4该位指示输入到该位指示输入到S3C44B0XS3C44B0X的的nCTSnCTS信号自从上次读后已经改变状态信号自从上次读后已经改变状态0 0:未改变:未改变 1 1:改变:改变0 0保留保留33:110 0CTSCTS状态状态0 00 0:CTS CTS 信号未激活信号未激活(nCTSnCTS脚为脚为高电平高电平);1 1:CTS CTS 信号已激活信号已激活(nCTSnCTS脚为低电平脚为低电平)0 0UARTUART发送发送/接收保持寄存器接收保持寄存器l发送发送/接收保持寄存器接收
48、保持寄存器0 0(UTXH0UTXH0)、)、寄存器寄存器1(1(UTXH1)UTXH1)的地址的地址在小模式下分别为在小模式下分别为0 0 x01D00020 x01D00020、0 x01D040200 x01D04020,在大模式下分别为在大模式下分别为0 0 x01D00023x01D00023、0 x01D040230 x01D04023l可写,可写,初始值可编程初始值可编程59UARTUART波特率除数寄存器波特率除数寄存器lUARTUART波特率除数寄存器波特率除数寄存器0 0(UBRDIV0UBRDIV0)、寄存器)、寄存器1(UBRDIV1)1(UBRDIV1)的地址分别为的
49、地址分别为0 x01D000280 x01D00028、0 x01D040280 x01D04028l可读写,可读写,初始值可编程初始值可编程60S3C44BOXS3C44BOX的的UARTUART的应用的应用1 1电路接口和电路接口和I/OI/O口设置口设置S3C44BOXS3C44BOX的串行应用接口电路中的的串行应用接口电路中的PC12(TxD1),PC12(TxD1),PC13(RxD1),PE1(TxD0),PE2(RxD0)PC13(RxD1),PE1(TxD0),PE2(RxD0)是多功能是多功能I/OI/O口口首先须要对首先须要对PCPC口和口和PEPE口的工作模式进行设置口的
50、工作模式进行设置Rpconc=Ox0f000000|rPCONC;Rpconc=Ox0f000000|rPCONC;rPUPC=0 x3000;/rPUPC=0 x3000;/设置内部上拉设置内部上拉rPCONE=(rPCONE&Oxfc3)|Oxeb;rPCONE=(rPCONE&Oxfc3)|Oxeb;rPUPE=0 x6;rPUPE=0 x6;612.UART2.UART初始化初始化对对UARTUART口的可配置参数进行初始化,使其能够依口的可配置参数进行初始化,使其能够依据所要求的通讯方式进行通讯。据所要求的通讯方式进行通讯。623 3 字符发送程序字符发送程序Uart_SendByt