main.c
来自「LPC1114_例程和教程」· C语言 代码 · 共 62 行
C
62 行
/****************************************************
*名 称: UART测试文件 *
*功 能: 测试UART *
*备 注: *
*****************************************************/
/**************** 头文件调用&&宏定义 ****************/
#include "LPC11xx.h"
#include "UART.h"
/******************* 全局变量定义 *******************/
extern volatile uint32_t UARTCount;
extern volatile uint8_t UARTBuffer[BUFSIZE];
/********************** 函数声明 ********************/
__inline void delay_ms(uint32_t a);
/********************** 主函数 **********************/
int main(void)
{
SystemInit(); //系统初始化
UARTInit(19200); //串口初始化
UARTSend("UART TEST OK!!!",16); //通过串口上传数据
LPC_SYSCON->CLKOUTDIV=4;
LPC_SYSCON->CLKOUTCLKSEL=3;
LPC_SYSCON->CLKOUTUEN=0;
LPC_SYSCON->CLKOUTUEN=1;
LPC_IOCON->PIO0_1=1;
LPC_SYSCON->SYSAHBCLKCTRL |= (1<<6);
LPC_GPIO0->DIR=0x00000fff;
LPC_GPIO1->DIR=0x00000fff;
LPC_GPIO2->DIR=0x00000fff;
LPC_GPIO3->DIR=0x00000fff;
while(1)
{
LPC_GPIO0->DATA=0x00000000;
delay_ms(10);
LPC_GPIO0->DATA=0x00000fff;
delay_ms(10);
if ( UARTCount != 0 )
{
LPC_UART->IER = IER_THRE | IER_RLS; /* Disable RBR */
UARTSend( (uint8_t *)UARTBuffer, UARTCount );
UARTCount = 0;
LPC_UART->IER = IER_THRE | IER_RLS | IER_RBR; /* Re-enable RBR */
}
}
}
/********************** 函数定义 ********************/
/****************************************************
*名 称: 延时函数 *
*参 数: 延时时间 *
*备 注: 内联函数 *
*****************************************************/
__inline void delay_ms(uint32_t a) //1ms延时函数
{
uint32_t i;
while( --a != 0){
for(i = 0; i<5500; i++);
}
}
/****************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?