⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uart.c

📁 基于dragon_MX1_ads的装载启动代码armboot
💻 C
字号:
#include "uart.h"#include "../Include/mx1.h"void EUARTinit(){	// config I/O pins for UART 2	_reg_PT_GIUS &= PORT_MASK;	_reg_PT_GPR &= PORT_MASK;	// config UART 2	_reg_UCR1 = 5;	_reg_UCR2 = 0x4027;	_reg_UCR4 = 1;	_reg_UFCR = 0xA81;	_reg_UBIR = 0xF;	_reg_UBMR = 0x8A;	// 115200 with PERCLK1 = 16M	_reg_UBRC = 8;}U8 EUARTdataReady(){    return _reg_USR2 & RDR_MASK;    // check RDR bit}void EUARTputData(U8 data){    while (!(_reg_USR2 & TXFE_MASK));    // wait until TXFE bit set    _reg_UTXD = (U16)data;	 if (data == '\n')	// carriage return ? append line-feed	 {	    while (!(_reg_USR2 & TXFE_MASK));    // wait until TXFE bit set   	 _reg_UTXD = '\r';	 }}U8 EUARTgetData(){    while (!EUARTdataReady());   // wait until RDR bit set    return (U8)_reg_URXD;}void EUARTputHex(U8 data){    U8  d;    // print first digit    d = data >> 4;    if (d > 9)        d += 55;    else        d += '0';    EUARTputData(d);    // print second digit    d = data & 0xF;    if (d > 9)        d += 55;    else        d += '0';    EUARTputData(d);}void EUARTputString(U8 *line){    while (*line)    {        EUARTputData(*(line++));    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -