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

📄 jz4730.h

📁 mips cpu 君正4730 4740的 ucosii 源码 包括系统 摄像头 网络 文件系统等等测试
💻 H
📖 第 1 页 / 共 5 页
字号:
#define OFF_ISR		(0x08)	/* R  8b H'01 */#define OFF_FCR		(0x08)	/* W  8b H'00 */#define OFF_LCR		(0x0C)	/* RW 8b H'00 */#define OFF_MCR		(0x10)	/* RW 8b H'00 */#define OFF_LSR		(0x14)	/* R  8b H'00 */#define OFF_MSR		(0x18)	/* R  8b H'00 */#define OFF_SPR		(0x1C)	/* RW 8b H'00 */#define OFF_MCR		(0x10)	/* RW 8b H'00 */#define OFF_SIRCR	(0x20)	/* RW 8b H'00, UART0 *//* register address */#define UART0_RDR	(UART0_BASE + OFF_RDR)#define UART0_TDR	(UART0_BASE + OFF_TDR)#define UART0_DLLR	(UART0_BASE + OFF_DLLR)#define UART0_DLHR	(UART0_BASE + OFF_DLHR)#define UART0_IER	(UART0_BASE + OFF_IER)#define UART0_ISR	(UART0_BASE + OFF_ISR)#define UART0_FCR	(UART0_BASE + OFF_FCR)#define UART0_LCR	(UART0_BASE + OFF_LCR)#define UART0_MCR	(UART0_BASE + OFF_MCR)#define UART0_LSR	(UART0_BASE + OFF_LSR)#define UART0_MSR	(UART0_BASE + OFF_MSR)#define UART0_SPR	(UART0_BASE + OFF_SPR)#define UART0_SIRCR	(UART0_BASE + OFF_SIRCR)#define UART1_RDR	(UART1_BASE + OFF_RDR)#define UART1_TDR	(UART1_BASE + OFF_TDR)#define UART1_DLLR	(UART1_BASE + OFF_DLLR)#define UART1_DLHR	(UART1_BASE + OFF_DLHR)#define UART1_IER	(UART1_BASE + OFF_IER)#define UART1_ISR	(UART1_BASE + OFF_ISR)#define UART1_FCR	(UART1_BASE + OFF_FCR)#define UART1_LCR	(UART1_BASE + OFF_LCR)#define UART1_MCR	(UART1_BASE + OFF_MCR)#define UART1_LSR	(UART1_BASE + OFF_LSR)#define UART1_MSR	(UART1_BASE + OFF_MSR)#define UART1_SPR	(UART1_BASE + OFF_SPR)#define UART1_SIRCR	(UART1_BASE + OFF_SIRCR)#define UART2_RDR	(UART2_BASE + OFF_RDR)#define UART2_TDR	(UART2_BASE + OFF_TDR)#define UART2_DLLR	(UART2_BASE + OFF_DLLR)#define UART2_DLHR	(UART2_BASE + OFF_DLHR)#define UART2_IER	(UART2_BASE + OFF_IER)#define UART2_ISR	(UART2_BASE + OFF_ISR)#define UART2_FCR	(UART2_BASE + OFF_FCR)#define UART2_LCR	(UART2_BASE + OFF_LCR)#define UART2_MCR	(UART2_BASE + OFF_MCR)#define UART2_LSR	(UART2_BASE + OFF_LSR)#define UART2_MSR	(UART2_BASE + OFF_MSR)#define UART2_SPR	(UART2_BASE + OFF_SPR)#define UART2_SIRCR	(UART2_BASE + OFF_SIRCR)#define UART3_RDR	(UART3_BASE + OFF_RDR)#define UART3_TDR	(UART3_BASE + OFF_TDR)#define UART3_DLLR	(UART3_BASE + OFF_DLLR)#define UART3_DLHR	(UART3_BASE + OFF_DLHR)#define UART3_IER	(UART3_BASE + OFF_IER)#define UART3_ISR	(UART3_BASE + OFF_ISR)#define UART3_FCR	(UART3_BASE + OFF_FCR)#define UART3_LCR	(UART3_BASE + OFF_LCR)#define UART3_MCR	(UART3_BASE + OFF_MCR)#define UART3_LSR	(UART3_BASE + OFF_LSR)#define UART3_MSR	(UART3_BASE + OFF_MSR)#define UART3_SPR	(UART3_BASE + OFF_SPR)#define UART3_SIRCR	(UART3_BASE + OFF_SIRCR)/* * Define macros for UART_IER * UART Interrupt Enable Register */#define UART_IER_RIE	(1 << 0)	/* 0: receive fifo "full" interrupt disable */#define UART_IER_TIE	(1 << 1)	/* 0: transmit fifo "empty" interrupt disable */#define UART_IER_RLIE	(1 << 2)	/* 0: receive line status interrupt disable */#define UART_IER_MIE	(1 << 3)	/* 0: modem status interrupt disable */#define UART_IER_RTIE	(1 << 4)	/* 0: receive timeout interrupt disable *//* * Define macros for UART_ISR * UART Interrupt Status Register */#define UART_ISR_IP	(1 << 0)	/* 0: interrupt is pending  1: no interrupt */#define UART_ISR_IID	(7 << 1)	/* Source of Interrupt */#define UART_ISR_IID_MSI		(0 << 1)	/* Modem status interrupt */#define UART_ISR_IID_THRI	(1 << 1)	/* Transmitter holding register empty */#define UART_ISR_IID_RDI		(2 << 1)	/* Receiver data interrupt */#define UART_ISR_IID_RLSI	(3 << 1)	/* Receiver line status interrupt */#define UART_ISR_FFMS	(3 << 6)	/* FIFO mode select, set when UART_FCR.FE is set to 1 */#define UART_ISR_FFMS_NO_FIFO	(0 << 6)#define UART_ISR_FFMS_FIFO_MODE	(3 << 6)/* * Define macros for UART_FCR * UART FIFO Control Register */#define UART_FCR_FE	(1 << 0)	/* 0: non-FIFO mode  1: FIFO mode */#define UART_FCR_RFLS	(1 << 1)	/* write 1 to flush receive FIFO */#define UART_FCR_TFLS	(1 << 2)	/* write 1 to flush transmit FIFO */#define UART_FCR_DMS	(1 << 3)	/* 0: disable DMA mode */#define UART_FCR_UUE	(1 << 4)	/* 0: disable UART */#define UART_FCR_RTRG	(3 << 6)	/* Receive FIFO Data Trigger */#define UART_FCR_RTRG_1	(0 << 6)#define UART_FCR_RTRG_4	(1 << 6)#define UART_FCR_RTRG_8	(2 << 6)#define UART_FCR_RTRG_15	(3 << 6)/* * Define macros for UART_LCR * UART Line Control Register */#define UART_LCR_WLEN	(3 << 0)	/* word length */#define UART_LCR_WLEN_5	(0 << 0)#define UART_LCR_WLEN_6	(1 << 0)#define UART_LCR_WLEN_7	(2 << 0)#define UART_LCR_WLEN_8	(3 << 0)#define UART_LCR_STOP	(1 << 2)	/* 0: 1 stop bit when word length is 5,6,7,8					   1: 1.5 stop bits when 5; 2 stop bits when 6,7,8 */#define UART_LCR_STOP_1	(0 << 2)	/* 0: 1 stop bit when word length is 5,6,7,8					   1: 1.5 stop bits when 5; 2 stop bits when 6,7,8 */#define UART_LCR_STOP_2	(1 << 2)	/* 0: 1 stop bit when word length is 5,6,7,8					   1: 1.5 stop bits when 5; 2 stop bits when 6,7,8 */#define UART_LCR_PE	(1 << 3)	/* 0: parity disable */#define UART_LCR_PROE	(1 << 4)	/* 0: even parity  1: odd parity */#define UART_LCR_SPAR	(1 << 5)	/* 0: sticky parity disable */#define UART_LCR_SBRK	(1 << 6)	/* write 0 normal, write 1 send break */#define UART_LCR_DLAB	(1 << 7)	/* 0: access UART_RDR/TDR/IER  1: access UART_DLLR/DLHR *//* * Define macros for UART_LSR * UART Line Status Register */#define UART_LSR_DR	(1 << 0)	/* 0: receive FIFO is empty  1: receive data is ready */#define UART_LSR_ORER	(1 << 1)	/* 0: no overrun error */#define UART_LSR_PER	(1 << 2)	/* 0: no parity error */#define UART_LSR_FER	(1 << 3)	/* 0; no framing error */#define UART_LSR_BRK	(1 << 4)	/* 0: no break detected  1: receive a break signal */#define UART_LSR_TDRQ	(1 << 5)	/* 1: transmit FIFO half "empty" */#define UART_LSR_TEMT	(1 << 6)	/* 1: transmit FIFO and shift registers empty */#define UART_LSR_RFER	(1 << 7)	/* 0: no receive error  1: receive error in FIFO mode *//* * Define macros for UART_MCR * UART Modem Control Register */#define UART_MCR_DTR	(1 << 0)	/* 0: DTR_ ouput high */#define UART_MCR_RTS	(1 << 1)	/* 0: RTS_ output high */#define UART_MCR_OUT1	(1 << 2)	/* 0: UART_MSR.RI is set to 0 and RI_ input high */#define UART_MCR_OUT2	(1 << 3)	/* 0: UART_MSR.DCD is set to 0 and DCD_ input high */#define UART_MCR_LOOP	(1 << 4)	/* 0: normal  1: loopback mode */#define UART_MCR_MCE	(1 << 7)	/* 0: modem function is disable *//* * Define macros for UART_MSR * UART Modem Status Register */#define UART_MSR_DCTS	(1 << 0)	/* 0: no change on CTS_ pin since last read of UART_MSR */#define UART_MSR_DDSR	(1 << 1)	/* 0: no change on DSR_ pin since last read of UART_MSR */#define UART_MSR_DRI	(1 << 2)	/* 0: no change on RI_ pin since last read of UART_MSR */#define UART_MSR_DDCD	(1 << 3)	/* 0: no change on DCD_ pin since last read of UART_MSR */#define UART_MSR_CTS	(1 << 4)	/* 0: CTS_ pin is high */#define UART_MSR_DSR	(1 << 5)	/* 0: DSR_ pin is high */#define UART_MSR_RI	(1 << 6)	/* 0: RI_ pin is high */#define UART_MSR_DCD	(1 << 7)	/* 0: DCD_ pin is high *//* * Define macros for SIRCR * Slow IrDA Control Register */#define SIRCR_TSIRE	(1 << 0)	/* 0: transmitter is in UART mode  1: IrDA mode */#define SIRCR_RSIRE	(1 << 1)	/* 0: receiver is in UART mode  1: IrDA mode */#define SIRCR_TPWS	(1 << 2)	/* 0: transmit 0 pulse width is 3/16 of bit length					   1: 0 pulse width is 1.6us for 115.2Kbps */#define SIRCR_TXPL	(1 << 3)	/* 0: encoder generates a positive pulse for 0 */#define SIRCR_RXPL	(1 << 4)	/* 0: decoder interprets positive pulse as 0 *//************************************************************************* * INTC *************************************************************************/#define INTC_ISR	(INTC_BASE + 0x00)#define INTC_IMR	(INTC_BASE + 0x04)#define INTC_IMSR	(INTC_BASE + 0x08)#define INTC_IMCR	(INTC_BASE + 0x0c)#define INTC_IPR	(INTC_BASE + 0x10)#define REG_INTC_ISR	REG32(INTC_ISR)#define REG_INTC_IMR	REG32(INTC_IMR)#define REG_INTC_IMSR	REG32(INTC_IMSR)#define REG_INTC_IMCR	REG32(INTC_IMCR)#define REG_INTC_IPR	REG32(INTC_IPR)#define IRQ_I2C		1#define IRQ_PS2		2#define IRQ_UPRT	3#define IRQ_CORE	4#define IRQ_UART3	6#define IRQ_UART2	7#define IRQ_UART1	8#define IRQ_UART0	9#define IRQ_SCC1	10#define IRQ_SCC0	11#define IRQ_UDC		12#define IRQ_UHC		13#define IRQ_MSC		14#define IRQ_RTC		15#define IRQ_FIR		16#define IRQ_SSI		17#define IRQ_CIM		18#define IRQ_ETH		19#define IRQ_AIC		20#define IRQ_DMAC	21#define IRQ_OST2	22#define IRQ_OST1	23#define IRQ_OST0	24#define IRQ_GPIO3	25#define IRQ_GPIO2	26#define IRQ_GPIO1	27#define IRQ_GPIO0	28#define IRQ_LCD		30/************************************************************************* * CIM *************************************************************************/#define	CIM_CFG			(CIM_BASE + 0x0000)#define	CIM_CTRL		(CIM_BASE + 0x0004)#define	CIM_STATE		(CIM_BASE + 0x0008)#define	CIM_IID			(CIM_BASE + 0x000C)#define	CIM_RXFIFO		(CIM_BASE + 0x0010)#define	CIM_DA			(CIM_BASE + 0x0020)#define	CIM_FA			(CIM_BASE + 0x0024)#define	CIM_FID			(CIM_BASE + 0x0028)#define	CIM_CMD			(CIM_BASE + 0x002C)#define	REG_CIM_CFG		REG32(CIM_CFG)#define	REG_CIM_CTRL		REG32(CIM_CTRL)#define	REG_CIM_STATE		REG32(CIM_STATE)#define	REG_CIM_IID		REG32(CIM_IID)#define	REG_CIM_RXFIFO		REG32(CIM_RXFIFO)#define	REG_CIM_DA		REG32(CIM_DA)#define	REG_CIM_FA		REG32(CIM_FA)#define	REG_CIM_FID		REG32(CIM_FID)#define	REG_CIM_CMD		REG32(CIM_CMD)/* CIM Configuration Register  (CIM_CFG) */#define	CIM_CFG_INV_DAT		(1 << 15)#define	CIM_CFG_VSP		(1 << 14)#define	CIM_CFG_HSP		(1 << 13)#define	CIM_CFG_PCP		(1 << 12)#define	CIM_CFG_DUMMY_ZERO	(1 << 9)#define	CIM_CFG_EXT_VSYNC	(1 << 8)#define	CIM_CFG_PACK_BIT	4#define	CIM_CFG_PACK_MASK	(0x7 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_0	  (0 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_1	  (1 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_2	  (2 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_3	  (3 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_4	  (4 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_5	  (5 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_6	  (6 << CIM_CFG_PACK_BIT)  #define CIM_CFG_PACK_7	  (7 << CIM_CFG_PACK_BIT)#define	CIM_CFG_DSM_BIT		0#define	CIM_CFG_DSM_MASK	(0x3 << CIM_CFG_DSM_BIT)  #define CIM_CFG_DSM_CPM	  (0 << CIM_CFG_DSM_BIT) /* CCIR656 Progressive Mode */  #define CIM_CFG_DSM_CIM	  (1 << CIM_CFG_DSM_BIT) /* CCIR656 Interlace Mode */  #define CIM_CFG_DSM_GCM	  (2 << CIM_CFG_DSM_BIT) /* Gated Clock Mode */  #define CIM_CFG_DSM_NGCM	  (3 << CIM_CFG_DSM_BIT) /* Non-Gated Clock Mode *//* CIM Control Register  (CIM_CTRL) */#define	CIM_CTRL_MCLKDIV_BIT	24#define	CIM_CTRL_MCLKDIV_MASK	(0xff << CIM_CTRL_MCLKDIV_BIT)#define	CIM_CTRL_FRC_BIT	16#define	CIM_CTRL_FRC_MASK	(0xf << CIM_CTRL_FRC_BIT)  #define CIM_CTRL_FRC_1	  (0x0 << CIM_CTRL_FRC_BIT) /* Sample every frame */  #define CIM_CTRL_FRC_2	  (0x1 << CIM_CTRL_FRC_BIT) /* Sample 1/2 frame */  #define CIM_CTRL_FRC_3	  (0x2 << CIM_CTRL_FRC_BIT) /* Sample 1/3 frame */  #define CIM_CTRL_FRC_4	  (0x3 << CIM_CTRL_FRC_BIT) /* Sample 1/4 frame */  #define CIM_CTRL_FRC_5	  (0x4 << CIM_CTRL_FRC_BIT) /* Sample 1/5 frame */  #define CIM_CTRL_FRC_6	  (0x5 << CIM_CTRL_FRC_BIT) /* Sample 1/6 frame */  #define CIM_CTRL_FRC_7	  (0x6 << CIM_CTRL_FRC_BIT) /* Sample 1/7 frame */  #define CIM_CTRL_FRC_8	  (0x7 << CIM_CTRL_FRC_BIT) /* Sample 1/8 frame */  #define CIM_CTRL_FRC_9	  (0x8 << CIM_CTRL_FRC_BIT) /* Sample 1/9 frame */  #define CIM_CTRL_FRC_10	  (0x9 << CIM_CTRL_FRC_BIT) /* Sample 1/10 frame */  #define CIM_CTRL_FRC_11	  (0xA << CIM_CTRL_FRC_BIT) /* Sample 1/11 frame */  #define CIM_CTRL_FRC_12	  (0xB << CIM_CTRL_FRC_BIT) /* Sample 1/12 frame */  #define CIM_CTRL_FRC_13	  (0xC << CIM_CTRL_FRC_BIT) /* Sample 1/13 frame */  #define CIM_CTRL_FRC_14	  (0xD << CIM_CTRL_FRC_BIT) /* Sample 1/14 frame */  #define CIM_CTRL_FRC_15	  (0xE << CIM_CTRL_FRC_BIT) /* Sample 1/15 frame */  #define CIM_CTRL_FRC_16	  (0xF << CIM_CTRL_FRC_BIT) /* Sample 1/16 frame */#define	CIM_CTRL_VDDM		(1 << 13)#define	CIM_CTRL_DMA_SOFM	(1 << 12)#define	CIM_CTRL_DMA_EOFM	(1 << 11)#define	CIM_CTRL_DMA_STOPM	(1 << 10)#define	CIM_CTRL_RXF_TRIGM	(1 << 9)#define	CIM_CTRL_RXF_OFM	(1 << 8)#define	CIM_CTRL_RXF_TRIG_BIT	4#define	CIM_CTRL_RXF_TRIG_MASK	(0x7 << CIM_CTRL_RXF_TRIG_BIT)  #define CIM_CTRL_RXF_TRIG_4	  (0 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 4 */  #define CIM_CTRL_RXF_TRIG_8	  (1 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 8 */  #define CIM_CTRL_RXF_TRIG_12	  (2 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 12 */  #define CIM_CTRL_RXF_TRIG_16	  (3 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 16 */  #define CIM_CTRL_RXF_TRIG_20	  (4 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 20 */  #define CIM_CTRL_RXF_TRIG_24	  (5 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 24 */  #define CIM_CTRL_RXF_TRIG_28	  (6 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 28 */  #define CIM_CTRL_RXF_TRIG_32	  (7 << CIM_CTRL_RXF_TRIG_BIT) /* RXFIFO Trigger Value is 32 */#define	CIM_CTRL_DMA_EN		(1 << 2)#define	CIM_CTRL_RXF_RST	(1 << 1)#define	CIM_CTRL_ENA		(1 << 0)/* CIM State Register  (CIM_STATE) */#define	CIM_STATE_DMA_SOF	(1 << 6)#define	CIM_STATE_DMA_EOF	(1 << 5)#define	CIM_STATE_DMA_STOP	(1 << 4)#define	CIM_STATE_RXF_OF	(1 << 3)#define	CIM_STATE_RXF_TRIG	(1 << 2)#define	CIM_STATE_RXF_EMPTY	(1 << 1)#define	CIM_STATE_VDD		(1 << 0)/* CIM DMA Command Register (CIM_CMD) */#define	CIM_CMD_SOFINT		(1 << 31)#define	CIM_CMD_EOFINT		(1 << 30)#define	CIM_CMD_STOP		(1 << 28)#define	CIM_CMD_LEN_BIT		0#define	CIM_CMD_LEN_MASK	(0xffffff << CIM_CMD_LEN_BIT)/************************************************************************* * PWM *************************************************************************/#define	PWM_CTR(n)		(PWM##n##_BASE + 0x000)#define	PWM_PER(n)		(PWM##n##_BASE + 0x004)#define	PWM_DUT(n)		(PWM##n##_BASE + 0x008)#define	REG_PWM_CTR(n)		REG8(PWM_CTR(n))#define	REG_PWM_PER(n)		REG16(PWM_PER(n))#define REG_PWM_DUT(n)		REG16(PWM_DUT(n))/* PWM Control Register (PWM_CTR) */#define	PWM_CTR_EN		(1 << 7)#define	PWM_CTR_SD		(1 << 6)#define	PWM_CTR_PRESCALE_BIT	0#define	PWM_CTR_PRESCALE_MASK	(0x3f << PWM_CTR_PRESCALE_BIT)

⌨️ 快捷键说明

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