2021-10-05

这篇博客详细介绍了UART初始化的过程,包括GPA1_0和GPA1_1作为UART2接收和发送引脚的设置,以及UART2的ULCON2、UCON2寄存器配置,还有波特率和分数波特率发生器的设定。内容适合嵌入式系统开发者和硬件工程师参考。

在这里插入图片描述

UART_Init(){
/* 将GPA1_0 和GPA1_1设置 成UART2的接收引脚和发送引脚; GPA1CON*/
GPA1.CON = GPA1.CON & (~(0xFF<<0)) | (0x22<<0);
/* /
UART2.ULCON2 = UART2.ULCON & (~(0x7F<<0)) | (0x3<<0);
/
/
UART2.UCON2 = UART2.UCON & (~(0xF<<0)) | (0x5<0);
/
*/
UART.UBRIV2 = 53;
UART2.UFRACVAL2 = 4;
}

int main()
{
UART_Init();
while(1)
{

}

}

### 使用 `dayjs` 检查日期是否在 `holidays` 数组中的方法 为了验证某个日期是否存在于 `holidays` 数组中,可以利用 JavaScript 的循环结构以及 `dayjs` 提供的日期比较功能来完成此操作。以下是具体实现方式: #### 实现思路 1. **初始化 `holidays` 数组**:假设 `holidays` 是一个包含多个日期的对象数组,其中每个对象表示一个假期。 2. **使用 `dayjs` 进行日期比较**:通过 `dayjs(date).isSame(holiday.date, 'day')` 方法判断目标日期是否与某一天假日期相同。 #### 示例代码 以下是一个完整的示例代码,展示如何检查给定日期是否属于 `holidays` 中的一个假日: ```javascript // 假设 holidays 数组如下 const holidays = [ { date: '2023-01-01' }, // 新年 { date: '2023-05-01' }, // 劳动节 { date: '2023-10-01' } // 国庆节 ]; function isHoliday(targetDate) { const targetDayjs = dayjs(targetDate); // 将目标日期转为 dayjs 对象 for (let holiday of holidays) { const holidayDayjs = dayjs(holiday.date); // 转换当前假期为 dayjs 对象 if (targetDayjs.isSame(holidayDayjs, 'day')) { // 判断两日期是否同天 return true; } } return false; // 如果遍历结束未找到匹配项,则返回 false } // 测试用例 console.log(isHoliday('2023-01-01')); // 输出: true console.log(isHoliday('2023-04-01')); // 输出: false ``` #### 关键点说明 1. **`dayjs` 初始化** 需要先安装并引入 `dayjs` 库[^1]。可以通过 npm 安装该库: ```bash npm install dayjs ``` 2. **日期比较精度** 上述代码中使用了 `'day'` 参数指定精确到天级别的比较。如果需要更精细的时间单位(如小时或分钟),可以根据需求调整参数。 3. **性能优化** 若 `holidays` 数据量较大,可考虑将其按时间顺序排列,并采用二分查找算法替代线性扫描以提高效率。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值