S3C2410A基本接口及应用设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
S3C2410A基本接口及应用设计

第6章 S3C2410A的基本接口及应用设计 串口(UART) I/O接口(GPIO) A/D转换接口 LCD接口 触摸屏接口 6.1 S3C2410A的串行接口与通信 1)实现数据格式化。 2)进行串-并转换。 3)控制数据传输速率 4)进行错误检测 5)进行TTL与EIA电平转换 6)提供EIA-RS-232C接口标准所要求的信号线(实现远距离传输) S3C2410A UART的内部结构框图 6.1.2 S3C2410A UART的功能 1. 串行数据的发送和接收 一个字符帧由1位起始位、5~8位数据位、1位可选奇偶校验位、1~2位停止位组成。 2. 奇偶校验 奇校验:所有传送的数位,“1”的个数为奇数 偶校验:所有传送的数位 “1”的个数为偶数 奇偶校验能够检测出信息传输过程中的部分误码(奇数误码能检出,偶数误码不能检出),同时,它不能纠错。在发现错误后,只能要求重发。但由于其实现简单,仍得到了广泛使用。 3. UART(通用异步收发器)介绍 1) 3个独立的异步串行I/O接口 2)最高可支持115200bps传输率。 4. 串行接口的物理层标准 1) RS—232C电气标准 这是美国电子工业协会推荐的一种标准(Electronic industries Association Recoil-mended Standard)。它在一种25 针接插件(DB—25)上定义了串行通信的有关信号。这个标准后来被世界各国所接受并使用到计算机的I/O 接口中。 2)电气特性 EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。 物理特征: DB-25 DB-9 逻辑1 =-5V~-15V (噪声容限为2V) 逻辑0=+5~+15V 3) 串口通信基本接线方法 6.1.3 波特率的计算 采用S3C2410A芯片的内部时钟源PCLK: UBRDIVn=(int)(PCLK/bps×16)-1 采用S3C2410A芯片的外部时钟源UCLK: UBRDIVn=(int)(UCLK/bps×16)-1 例如: 选择串行通信波特率为115200,PLCK为40MHz,则: UBRDIVn=(int)115200×16)-1= (int)(21.7)-1=20 6.1.4 UART的初始化 1. 与UART相关的特殊功能寄存器 UART线控制寄存器(ULCONn) UART控制寄存器(UCONn) UART FIFO控制寄存器(UFCONn) UART Modem控制寄存器(UMCONn) UART波特率因子寄存器(UBRDIVn) UART Tx/Rx状态寄存器(UTRSTATn) UART发送/接收缓冲寄存器(UTXHn/ URXHn ) 1)UART 控制寄存器介绍 3. ARM的串口驱动程序分析 主函数 1) 引用头文件及一些全局变量的定义 #include string.h #include stdio.h #define U8 unsigned char #define TRUE 1 #define FALSE 0 #pragma import(__use_no_semihosting_swi) //不使用软中断 2) 定义UART寄存器。 #define rUTRSTAT0 (*(volatile unsigned *)0 //定义UART接收/发送寄存器 #define WrUTXH0(ch) (*(volatile unsigned char *)0=(unsigned char)(ch) // 定义UART发送缓冲寄存器 #define RdURXH0( ) (*(volatile unsigned char *)0 // 定义UART接收缓冲寄存器 3) 主函数 int main(void) { char c1[1]; ARMTargetInit( ); // 初始化ARM系统 while(1) { Uart_SendByten(0,0xa); //换行 Uart_SendByten(0,0xd); //回车 Uart_Getchn(c1,0,0)

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档