📄 uart.h
字号:
//
// Copyright (c) 2002 Palmmicro Communications Inc. All rights reserved.
//
// --------------------------------------------------------------------
/*++
Module Name:
usp.h
Abstract:
This file defines the bitmasks of the UART module.
Notes:
--*/
#ifndef _PALM2_UART_H_
#define _PALM2_UART_H_
#define UART_32BYTE_FIFO
// UART_LINE_CTRL
#define UART_STOP_BIT_NUM
#define UART_DATA_BIT_NUM
#define UART_SET_BREAK 0x40
// UART_MODEM_CTRL
#define UART_LOOP_BACK 0x10
#define UART_RTS 0x02
#define UART_DTR 0x01
// UART_MODEM_STATUS
#define UART_DELTA_CTS 0x1
#define UART_DELTA_DSR 0x2
#define UART_DELTA_RI 0x4
#define UART_DELTA_DCD 0x8
#define UART_CTS
#define UART_DSR
#define UART_RI
#define UART_DCD
// UART_TXRX_ENA_REG
#define UART_RX_EN 0x01
#define UART_TX_EN 0x02
// UART_DIVISOR
#define UART_CLK_DIV 0x01
// UART_INT_ENABLE & UART_INT_STATUS
#define UART_INT_RX_DONE_MASK 0x0001
#define UART_INT_TX_DONE_MASK 0x0002
#define UART_INT_RX_OF_MASK 0x0004
#define UART_INT_TX_ALLEMPTY_MASK 0x0008
#define UART_INT_DMA_RX_MASK 0x0010
#define UART_INT_DMA_TX_MASK 0x0020
#define UART_INT_RX_FF_MASK 0x0040
#define UART_INT_TX_FE_MASK 0x0080
#define UART_INT_RX_THLD_MASK 0x0100
#define UART_INT_TX_THLD_MASK 0x0200
#define UART_INT_FRM_ERR_MASK 0x0400
#define UART_BREAK_MASK 0x0800
#define UART_INT_TIMEOUT_MASK 0x1000
#define UART_INT_MODEM_MASK 0x2000
// UART_RISC_DSP_MODE
#define UART_DSP_ACCESS 0x1
//UART_TX_DMA_IO_CTRL bit fields
#define UART_TX_IO_MODE 0x1
//UART_TXFIFO_OP bit fields
#define UART_TXFIFO_RESET 0x1
#define UART_TXFIFO_START 0x2
//UART_RX_DMA_IO_CTRL bit fields
#define UART_RX_IO_MODE 0x1
#define UART_RX_FIFO_FLUSH 0x4
//UART_RXFIFO_OP bit fields
#define UART_RXFIFO_RESET 0x1
#define UART_RXFIFO_START 0x2
#ifdef UART_32BYTE_FIFO
//UART_TXFIFO_CTRL bit fields
#define UART_TXFIFO_THLD_MASK 0x1f
//UART_TXFIFO_LEVEL_CHK bit fields
#define UART_TXFIFO_SC_MASK 0x7
#define UART_TXFIFO_LC_MASK 0x1c00
#define UART_TXFIFO_HC_MASK 0x700000
//UART_TXFIFO_STATUS bit fields
#define UART_TXFIFO_LEVEL_MASK 0x3f
#define UART_TXFIFO_FULL 0x40//0x20
#define UART_TXFIFO_EMPTY 0x80//0x40
//UART_RXFIFO_CTRL bit fields
#define UART_RXFIFO_THLD_MASK 0x1f
//UART_RXFIFO_LEVEL_CHK bit fields
#define UART_RXFIFO_SC_MASK 0x7
#define UART_RXFIFO_LC_MASK 0x1c00
#define UART_RXFIFO_HC_MASK 0x700000
//UART_RXFIFO_STATUS bit fields
#define UART_RXFIFO_LEVEL_MASK 0x3f
#define UART_RXFIFO_FULL 0x40//0x20
#define UART_RXFIFO_EMPTY 0x80//0x40
#else
//UART_TXFIFO_CTRL bit fields
#define UART_TXFIFO_THLD_MASK 0xf
//UART_TXFIFO_LEVEL_CHK bit fields
#define UART_TXFIFO_SC_MASK 0x3
#define UART_TXFIFO_LC_MASK 0xc00
#define UART_TXFIFO_HC_MASK 0x300000
//UART_TXFIFO_STATUS bit fields
#define UART_TXFIFO_LEVEL_MASK 0x1f
#define UART_TXFIFO_FULL 0x10
#define UART_TXFIFO_EMPTY 0x20
//UART_RXFIFO_CTRL bit fields
#define UART_RXFIFO_THLD_MASK 0xf
//UART_RXFIFO_LEVEL_CHK bit fields
#define UART_RXFIFO_SC_MASK 0x3
#define UART_RXFIFO_LC_MASK 0xc00
#define UART_RXFIFO_HC_MASK 0x300000
//UART_RXFIFO_STATUS bit fields
#define UART_RXFIFO_LEVEL_MASK 0x1f
#define UART_RXFIFO_FULL 0x10
#define UART_RXFIFO_EMPTY 0x20
#endif
#define UART_IO_DIV *((volatile unsigned *)0xffff5014)
#define UART_CONFIG *((volatile unsigned *)0xffff5018)
#define DEBUG_UART_IO2SYS_1_4 0x8
#define DEBUG_UART_SET_BRK 0x10
#define DEBUG_UART_RXENA 0x20
#define DEBUG_UART_TXENA 0x40
#define DEBUG_UART_RI 0x80
#define DEBUG_UART_CTS 0x100
#define DEBUG_UART_DSR 0x200
#define DEBUG_UART_DCD 0x400
#endif//#ifndef _PALM2_UART_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -