历史上的今天
今天是:2025年07月08日(星期二)
2019年07月08日 | LPC54100 LPC54101 LPC54102 LPC541xx系列串口用法
2019-07-08 来源:eefocus
LPC54100 LPC54101 LPC54102 LPC541xx系列串口用法
(使用库,中断模式,无FIFO)
//初始化函数
void uart_init(baudRate)
{
UART_BAUD_T baud;
UART_CFG_T cfg;
//使能时钟
Chip_Clock_EnablePeriphClock(SYSCON_CLOCK_FRG);
//配置波特率
//获取时钟频率
baud.clk = Chip_Clock_GetAsyncSyscon_ClockRate();
//希望得到的波特率
baud.baud = baudRate;
baud.ovr = 0;
baud.mul = 0;
baud.div = 0;
if (ROM_UART_CalBaud(&baud) != LPC_OK) {
//计算分频系数失败
printf("Error calculating baud ratern");
}
/* 设置小数分频器 */
Chip_SYSCON_SetUSARTFRGCtrl(baud.mul, 0xFF);
//使能串口0时钟
Chip_Clock_EnablePeriphClock(SYSCON_CLOCK_USART0);
//配置IO口P0.0和P0.1为串口功能
Chip_IOCON_PinMuxSet(LPC_IOCON, 0, 0, (IOCON_FUNC1 | IOCON_MODE_INACT | IOCON_DIGITAL_EN));
Chip_IOCON_PinMuxSet(LPC_IOCON, 0, 1, (IOCON_FUNC1 | IOCON_MODE_INACT | IOCON_DIGITAL_EN));
//获取串口需要的空间
size = ROM_UART_GetMemSize();
//申请串口需要的空间
drv_mem = (uint32_t *)malloc(size);
//调用初始化函数初始化串口0
UART0 = ROM_UART_Init(drv_mem, LPC_USART0_BASE, NULL);
//配置串口
//8位数据使能接收中断
cfg.cfg = UART_CFG_8BIT | UART_CFG_BRKRX;
//设置分频值,直接使用ROM_UART_CalBaud计算的结果
cfg.div = baud.div;
cfg.ovr = baud.ovr;
cfg.res = UART_BIT_DLY(baudRate);
//配置串口0
ROM_UART_Configure(UART0, &cfg);
//使能中断
NVIC_ClearPendingIRQ(UART0_IRQn);
NVIC_EnableIRQ(UART0_IRQn);
LPC_USART0->INTENSET |= (1<<0);
}
//中断服务函数
void UART0_IRQHandler(void)
{
uint8_t dat;
//发送中断
if (LPC_USART0->INTSTAT & (1<<2))
{
//等待发送完成
ROM_UART_WaitTx(UART0);
}
//接收中断
if (LPC_USART0->INTSTAT & (1<<0))
{
//读取数据
dat = LPC_USART0->RXDAT;
printf("%c", dat);
}
}
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 09:20 编辑 为认真实施《国务院办公厅关于加强普通高等学校毕业生就业工作的通知》(国办发[2009]3号),促进信息技术专业高校毕业生就业工作,由工业和信息化部人才交流中心(www.miitec.org.cn)、中国IT人才网 ...… 查看全部问答> |
|
如此迥异的生活环境、社会环境所孕育的理论如果运用在人才的选、用上竟如此惊人的相似。还记得小时候,我们周围有使用左手习惯的人吧,那时他们被称为左撇子(其实这是一个带有社会偏见的称呼,因为社会上所有的设施、书写及阅读习惯都是为右手习惯 ...… 查看全部问答> |
|
LED照明,被誉为“第三次照明革命”,其节能环保等优点受到政府的高度重视、行业的追捧。但是在一片叫好声中,LED仍然面临核心技术缺失、行业标准缺失、价格居高不下、大面积推广困难等种种问题。 技术上仍不完善 “还不是很成熟。”6月9 ...… 查看全部问答> |
|
急寻代笔,高报酬 vs2005里C++或C#,智能设备下,选pocket pc 2003 里写系统 我有个毕业设计,想找人代写 希望会的联系我 QQ460580652 15929443577 要求是这样的。要求是在 2009年6月10号前写好 只要能按照要求运行就可以了。会的速度联系我 药品库存管理信息系统 现本课题要求 ...… 查看全部问答> |
|
要求简单描述如下 1.自己编写代码,实现PLB总线(IBM的CoreConnect总线的一部分)的功能 2.再添加一个master,一个slave,实现功能 一直没有头绪,到这里来看看哈,望各位高手不吝赐教啊 问题如下: 1.有没有什么IP核的集成,设计规范? 2.有 ...… 查看全部问答> |
|
由于对软件测试的需要,在网上google到MS出的Application Verifier,可是我只找到的PC版的。 哪位能提供Application Verifier for Windows CE版,不想要for mobile版的。 无限期待中......… 查看全部问答> |




