首页 了解UART开发的第一步(1)

了解UART开发的第一步(1)

举报
开通vip

了解UART开发的第一步(1)首先,需要知道UART部分可以支持如下的功能,并且了解一下LRDASIR、LIN模式、RS485模式等等这些模式是用来干什么的。一定要了解清楚才行,不然就算写出来程序来也不知道他们的用途是干什么的。接着要了解的是"DrvUART.h"和"DrvUART.c"两个文件的函数。特别是以下几个函数int32_tDrvUART_Open();//这个函数用用初始化UART的,换句话来说使用UART之前必须进行该操作,其中参数包括了那么UART口,如UART0,此外还有一个结构休  STR_UART_TsParam,这个结构...

了解UART开发的第一步(1)
首先,需要知道UART部分可以支持如下的功能,并且了解一下LRDASIR、LIN模式、RS485模式等等这些模式是用来干什么的。一定要了解清楚才行,不然就算写出来程序来也不知道他们的用途是干什么的。接着要了解的是"DrvUART.h"和"DrvUART.c"两个文件的函数。特别是以下几个函数int32_tDrvUART_Open();//这个函数用用初始化UART的,换句话来说使用UART之前必须进行该操作,其中参数包括了那么UART口,如UART0,此外还有一个结构休  STR_UART_TsParam,这个结构休含有波特率,数据位、停止位、检验位和触发电平。此外,DrvUART_Open()这个函数里面的一部分代码编写也需要了解清楚,代码如下:tUART=(UART_T*)((uint32_t)UART0u32Port);/*TxFIFOReset&RxFIFOReset&FIFOModeEnable*/tUART->FCR.TFR=1;tUART->FCR.RFR=1;/*SetRxTriggerLevel*/tUART->FCR.RFITL=sParam->u8cRxTriggerLevel; /*SetParity&Databits&Stopbits*/tUART->LCR.SPE  =((sParam->u8cParity)&0x4)?1:0;tUART->LCR.EPE  =((sParam->u8cParity)&0x2)?1:0;tUART->LCR.PBE  =((sParam->u8cParity)&0x1)?1:0;tUART->LCR.WLS  =sParam->u8cDataBits;tUART->LCR.NSB  =sParam->u8cStopBits;/*SetTime-Out*/tUART->TOR.TOIC  =sParam->u8TimeOut;/*SetBaudRate*/BaudRateCalculator(GetUartClk(),sParam->u32BaudRate,&tUART->BAUD);分析如下:/*TxFIFOReset&RxFIFOReset&FIFOModeEnable*tUART->FCR.TFR=1;//请看下图的TFR的说明tUART->FCR.RFR=1;//请看下图RFR的说明/*SetRxTriggerLevel*/看下图各位的设置说明tUART->FCR.RFITL=sParam->u8cRxTriggerLevel; /*SetParity&Databits&Stopbits*/如下图各位的设置说明tUART->LCR.SPE  =((sParam->u8cParity)&0x4)?1:0;tUART->LCR.EPE  =((sParam->u8cParity)&0x2)?1:0;tUART->LCR.PBE  =((sParam->u8cParity)&0x1)?1:0;  tUART->LCR.WLS  =sParam->u8cDataBits;tUART->LCR.NSB  =sParam->u8cStopBits;对于其他寄存器的初始状态的设置请看RegisterDescription这部分各个寄存器的说明。BaudRateCalculator()//这个函数是用来计算波特率的,可以具体 计算公式 六西格玛计算公式下载结构力学静力计算公式下载重复性计算公式下载六西格玛计算公式下载年假计算公式 由下面得知。其中第一个参数是UART源时钟,第二个参数是用户设置的波特率,第三个参数是用来保存这个用户设置的波特率(其实现在要算出BRD这个值)下面部分函数还没有开始写。自己可以先探索一下。voidDrvUART_Close();//关闭UARTvoidDrvUART_EnableInt();//该功能是用来启用指定的UART中断,特别要了解第三个参数的用途voidDrvUART_DisableInt();voidDrvUART_SetClcok(uint8_tu8ClcokSrc,uint8_tu8ClcokDiv);int32_tDrvUART_Write();//功能是将数据写入到传送缓冲器通过UART数据传输int32_tDrvUART_Read();//该功能是用来读取从RXFIFO和数据接收的数据将被存放在pu8RxBuf1、2、
本文档为【了解UART开发的第一步(1)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_751406
暂无简介~
格式:doc
大小:16KB
软件:Word
页数:9
分类:
上传时间:2022-08-01
浏览量:0