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

📄 uart.h.bak

📁 基于ARM 44b0的启动应到程序
💻 BAK
字号:

#ifndef __UART_H__
#define __UART_H__

#include "Includes.h"

//串口配置结构
typedef struct __tag_UART_CONFIG__
{
	uint baud;
	uint parity;
	uint datalen;
	uint stop;
	uint afc; // auto flow control
}ST_UART_CONFIG;

/* AFC */
#define EN_AFC		1
#define DIS_AFC		0

/* Baud Rates */
#define	COM_300		300
#define	COM_1200	1200
#define	COM_2400	2400
#define	COM_4800	4800
#define	COM_9600	9600
#define	COM_19200	19200
#define	COM_38400	38400
#define	COM_57600	57600
#define	COM_115200	115200

/* Parity */
#define	COM_NOPARITY	0
#define	COM_ODDPARITY	1
#define	COM_EVENPARITY	2

/* Stopbits */
#define	COM_STOP1		0
#define	COM_STOP2		1
#define	COM_STOP1_5		1

/* word length */
#define	COM_CHR5	0
#define	COM_CHR6	1
#define	COM_CHR7	2
#define	COM_CHR8	3

#define SEND_BUFF_SIZE	0x800
#define RECV_BUFF_SIZE	0x800

//错误代码
#define RECV_OVERLAP	0x0001	//接收缓冲区溢出
#define BREAK_DETECT	0x0002	//检测到break信号
#define FRAME_ERROR		0x0004	//字符帧出错
#define PARITY_ERROR	0x0008	//校验位出错
#define OVERRUN_ERROR	0x0010	//接收寄存器中有未读出的数据被新数据覆盖

//定义CTS、RTS状态
#define ACTIVE		0
#define INACTIVE	1

#define UART0_PORT	0
#define UART1_PORT	1

#define UART_NUMS	2

#define WrUTXH0(ch) (*(volatile unsigned char *)0x1d00020)=(unsigned char)(ch)
#define WrUTXH1(ch) (*(volatile unsigned char *)0x1d04020)=(unsigned char)(ch)


/*
int iUartConfig(uint uiPort,ST_UART_CONFIG * pstUartConfig);//串口配置
void vUartSendByte(uint uiPort, uchar ucData);//串口发送一字节数据
uchar ucUartRecvByte(uint uiPort);//串口接收一字节数据

void vUartSendStr(uint uiPort, uchar * pucStr);//串口发送字符串数据
int iGetUartPort(const char * pcDeviceName);//获得当前操作的串口端口
*/

int iUartInit(void);//串口初始化
void vUartPrintf(const char *fmt,...);//串口格式输出


#endif //__UART_H__

⌨️ 快捷键说明

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