7、RH850 F1 RLIN/UART功能和配置
前言:
UART是最常见的串行通讯,广泛应用于单片机和单片机之间通讯。这里UART/RLIN的具体原理讲解就不做介绍,不清楚的朋友可移步up主的个人专栏 ---- “串行通讯原理”中的“串行通讯 -- 串口通讯原理”,此专栏会有针对uart/RLIN的工作原理的详细介绍。
RLIN30 时钟源选择
Unit Name |
Unit Clock Name |
Supply Clock Name |
Description |
RLIN30 |
LIN通信时钟源 |
CKSCLK_ILIN |
通讯时钟 |
注册访问时钟 |
CPUCLK2 |
总线时钟 |
|
注册访问时钟 |
CKSCLK_ILIN |
总线时钟 |
RLIN30 接口框图
1.1、RLN3nLUOER — UART操作使能寄存器
Bit position |
Bit Name |
Function |
1 |
UROE |
接收使能位 0:禁用接收。 1:使能接收。 |
0 |
UTOE |
发送使能位 0:禁用发送。 1:使能发送。 |
1.2、RLN3nLCUC — UART控制寄存器
Bit position |
Bit Name |
Function |
0 |
OM0 |
LIN复位 0: LIN复位模式 1:取消LIN复位模式 |
1.3、RLN3nLMD — UART模式寄存器
Bit position |
Bit Name |
Function |
5 |
LRDNFS |
UART接收数据噪声过滤器 0:开启噪声滤波。 1:关闭噪声滤波器。 |
1 - 0 |
LMD |
LIN / UART 模式选择 0 0: 0 1:UART模式。 |
1.4、RLN3nLBFC — UART配置寄存器
Bit position |
Bit Name |
Function |
6 |
UTPS |
输出极性开关 0:传输数据正常输出 1:反向输出的传输数据 |
5 |
URPS |
输入极性开关 0:接收数据正常输出 1:接收数据,输出倒排 |
4 - 3 |
UPS |
UART校验选择 00:校验禁用 01:即使校验 10:奇校验 11:奇校验 |
2 |
USBLS |
UART停止位长度选择 0:停止位:1位 1:停止位:2位 |
1 |
UBOS |
UART传输格式顺序选择 0: LSB先 1: MSB先 |
0 |
UBLS |
UART字符长度选择 0: UART 8位通信 1: UART 7位通信 |
1.5、RLN3nLEDE — UART错误检测使能寄存器
Bit position |
Bit Name |
Function |
3 |
FERE |
帧错误检测使能 0:禁用帧错误检测功能。 1:帧错误检测。 |
2 |
OERE |
超限错误检测启用 0:禁用溢出错误检测。 1:表示启动溢出错误检测。 |
0 |
BERE |
误码检测使能 0:禁用误码检测。 1:表示启用误码检测。 |
1.6、RLN3nLWBR — UART唤醒波特率选择寄存器
Bit position |
Bit Name |
Function |
7 - 4 |
NSPB |
位采样计数选择 B7 - B4 0 0 0 0: 16次采样 0 0 1 1: 4采样 0 1 1 1: 8个采样 1 1 1 1: 16个采样 禁止进行上述以外的设置。 |
3 - 1 |
LPRS |
预分频时钟选择 B3 - B1 0 0 0: 1/1 0 0 1: 1/2 0 1 0: 1/4 0 1 1: 1/8 1 0 0: 1/16 1 0 1: 1/32 1 1 0: 1/64 1 1 1: 1/128 |
1.71.7、RLN3nLBRP01 — UART波特率预分频01寄存器
Bit position |
Bit Name |
Function |
15 - 0 |
BRP |
假设该寄存器中设置的值为L(0 ~ 65535),即波特率 prescaler将precaler时钟的频率除以L + 1。 设置范围:0000H ~ FFFFH |
例程:
/*****************************************************************************
** Function: RLIN30_init
** Description: Initialize the RLIN31 for UART
** Parameter: None
** Return: None
******************************************************************************/
void RLIN30_Init(UART_Baudrate_T baudrate)
{
/* Disable RLIN */
RLN30LUOER = 0x00u; //Disables transmission/reception.
RLN30LCUC = 0x00u; //LIN wake-up mode / LIN reset mode
CLKCTLCKSC_ILIND_STPM = 0x03;
/* LIN Mode Register/UART Mode Register (LMD) */
RLN30LMD = 0x01u;
/* UART mode */
/* LIN / UART System Clock: fa */
/* Module generates 1 interrupt signal */
/* 3-bit majority voting logic for sampling RX data is enabled */
/* LIN Break Field Configuration Register/UART Configuration Register1 */
RLN30LBFC = 0x00u;
/* UART 8-bit communication */
/* LSB first */
/* Stop Bit 1 bit */
/* Parity Disabled */
/* Without RX inversion */
/* Without RX inversion */
/* LIN / UART Error Detection Enable Register */
RLN30LEDE = 0; //0x8Fu; //add
/* No error detection */
/* LIN Wake-up Baud Rate Selector register */
//RLN31LWBR = 0x30u; /* 4 samples per bit ;because datasheet is 6~16,we donot use this */
RLN30LWBR = 0x60u; //add
/* 12 samples per bit */
/* LIN Baud Rate Prescaler1/UART Baud Rate Prescaler */
//RLN31LBRP01 = Uart_Baudrate[baudrate];
RLN30LBRP01 = 4;
//(115200bps) 40MHz * ( 1 / 1 ) / ( 28 + 1 ) / 7 = 114942(-0.2%)
/* LIN / UART Control Register */
RLN30LCUC = 0x01u;
/* Set SW Reset request to inactive */
}
7、RH850 F1 RLIN/UART功能和配置相关推荐
- 6、RH850 F1 AD转换功能和配置
前言: 上文完成了RH850的TAUJ定时器配置,此章我们将讲解RH850的ADC功能. AD转换就是将时间连续和幅值连续的模拟量转换为时间离散.伏值也离散的数字量.使输出的数字量与输入的模拟量成正比 ...
- 8、RH850 F1 IIC通讯功能和配置
前言: 续上章节UART后,此章讲解的IIC也是最常见的串行通讯,广泛应用于单片机和单片机之间通讯.同样这里IIC的具体原理讲解就不做介绍,不清楚的朋友可移步up主的个人专栏 ---- "串 ...
- 9、RH850 SPI(CSIH) 通讯功能和配置
前言: SPI是最常见的串行通讯之一,其通信速率比较高,适合需要传输大量数据的应用.常见的有SPI FLASH,无线模块等.这里IIC的具体原理讲解就不做介绍,不清楚的朋友可移步up主的个人专栏 -- ...
- 12、RH850 F1 FLASH存储器介绍
前言: FLASH存储器的英文名称是"Flash Memory",一般简称为"Flash",它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM ...
- STM32单片机实现DMA+ADC+UART功能
突然想测试一下STM32单片机ADC采样速率问题,按照常规方法,可以通过ADC采样,然后将采样值打印出来.但是这种方法在处理和打印数据的时候会占用很多时间,导致处理数据的时间超过了ADC的采样时间.于 ...
- 14、RH850 F1 RAM存储器介绍
前言: RAM--程序运行中数据的随机存取(掉电后数据消失)整个程序中,所用到的需要被改写的量,都存储在RAM中,"被改变的量"包括全局变量.局部变量.堆栈段,此专栏会有针对SPI ...
- CSR8670的UART功能的应用笔记
为了让CSR867x的开发更容易,现与思度科技联合推出CSR867x学习板[淘宝链接:思度科技CSR开发板]. 技术交流QQ群号:743434463 开发板会员QQ群号:725398389(凭订单号入 ...
- TM4C1294 uart功能使用
今天我们介绍tm4c板的uart功能,关于uart的基本知识和相关资料,网上都有详细的帖子,我们主要来说明如何在板子上使用. 主要使用的函数有以下几个: SysCtlClockFreqSet();// ...
- 微信开发h5支付功能,配置单价和商品信息无法更新问题解决方法!
微信开发h5支付功能,配置单价和商品信息无法更新是因为没有开通h5支付的问题,登录微信商户平台后台开通h5支付产品即可.
最新文章
- 微信小程序超级占内存_6款宝藏微信小程序,简单又实用,节约内存就靠它了...
- PHP与MySQL外文文献译文和原文_读懂外文文献的秘诀在这里丨49周新闻
- C字符串指针遇到的问题
- SonarQube规则之坏味道类型
- Java回调函数实现案例
- 处理 Git 提交中出现 .DS_Store 文件
- 【高数】高数第五章节——定积分积分上限函数牛顿——莱布尼兹公式反常积分与广义积分
- NPIO操作Excel入门
- pycharm专业版下载及Local Terminal_Failed to start [powershell.exe]
- MYSQL登录错误:mysqladmin: connect to server at 'localhost' failed acess denied for user 'root'@'localhos
- 哪款立体声骨传导蓝牙耳机好,推荐几款目前主流的骨传导耳机
- LinuxC学习保姆级教程(李慧芹课程笔记)
- java 找出重复的数据_java 查找list中重复数据实例详解
- 功劳是老板的、钱财是子女的、身体是自己的...
- mysql数据库设计工具_四种优秀的数据库设计工具
- 参加2020Jam初赛记录与部分题目解答
- dayjs获取当月的下月的第一天时间
- 用nginx搭建视频链接
- XP系统Internet 信息服务下找不到frontpage 2000 服务器扩展的解决方法
- SouthMap平台版省去了安装CAD的诸多麻烦,集成在国产ZWCAD2022平台解决了此瓶颈!!!