Dmitry Kovalev
/
LG
n
Fork of LG by
host/Source/App/uart.c
- Committer:
- Kovalev_D
- Date:
- 2016-02-03
- Revision:
- 23:12e6183f04d4
File content as of revision 23:12e6183f04d4:
/**************************************************************************** * $Id:: uart.c 5751 2010-11-30 23:56:11Z usb00423 $ * Project: NXP LPC17xx UART example * * Description: * This file contains UART code example which include UART initialization, * UART interrupt handler, and APIs for UART access. * ****************************************************************************/ #include "lpc17xx.h" #include "uart.h" #define FOSC 12000000 /* Õñµ´Æ÷ƵÂÊ */ #define FCCLK (FOSC * 8) /* Ö÷ʱÖÓƵÂÊ<=100Mhz */ /* FOSCµÄÕûÊý±¶ */ #define FCCO (FCCLK * 3) /* PLLƵÂÊ(275Mhz~550Mhz) */ /* ÓëFCCLKÏàͬ£¬»òÊÇÆäµÄżÊý±¶ */ #define FPCLK (FCCLK / 4) /* ÍâÉèʱÖÓƵÂÊ,FCCLKµÄ1/2¡¢1/4*/ /* »òÓëFCCLKÏàͬ */ /***************************************************************************** ** Function name: UARTInit ** ** Descriptions: Initialize UART port, setup pin select, ** clock, parity, stop bits, FIFO, etc. ** ** parameters: portNum(0 or 1) and UART baudrate ** Returned value: true or false, return false only if the ** interrupt handler can't be installed to the ** VIC table ** *****************************************************************************/ void UART2_Init (void) { uint16_t usFdiv; /* UART2 */ LPC_PINCON->PINSEL0 |= (1 << 20); /* Pin P0.10 used as TXD2 (Com2) */ LPC_PINCON->PINSEL0 |= (1 << 22); /* Pin P0.11 used as RXD2 (Com2) */ LPC_SC->PCONP = LPC_SC->PCONP|(1<<24); /*´ò¿ªUART2µçÔ´¿ØÖÆλ */ LPC_UART2->LCR = 0x83; /* ÔÊÐíÉèÖò¨ÌØÂÊ */ usFdiv = (FPCLK / 16) / 115200; /* ÉèÖò¨ÌØÂÊ */ LPC_UART2->DLM = usFdiv / 256; LPC_UART2->DLL = usFdiv % 256; LPC_UART2->LCR = 0x03; /* Ëø¶¨²¨ÌØÂÊ */ LPC_UART2->FCR = 0x06; } /********************************************************************************************************* ** Function name: UART2_SendByte ** Descriptions: ´Ó´®¿Ú2·¢ËÍÊý¾Ý ** input parameters: data: ·¢Ë͵ÄÊý¾Ý ** output parameters: ÎÞ ** Returned value: ÎÞ *********************************************************************************************************/ int UART2_SendByte (int ucData) { while (!(LPC_UART2->LSR & 0x20)); return (LPC_UART2->THR = ucData); } /****************************************************************************** ** End Of File ******************************************************************************/