📄 nt68167mcu.h
字号:
/*
================================================================================
= 中断控制寄存器
================================================================================
*/
#define XFR_INT_SRC XBYTE[0xF020]
#define INTIIC0_IRQ 0x20
#define INTEXT_IRQ 0x10
#define INTIIC1_IRQ 0x02
#define INTHV_IRQ 0x01
#define XFR_INTEXT_FLG XBYTE[0xF021]
#define XFR_INTEXT_CLR XBYTE[0xF021]
#define XFR_INTEXT_EN XBYTE[0xF022]
#define IDX_INT_SRC 0x20
#define IDX_INTEXT_FLG 0x21
#define IDX_INTEXT_CLR 0x21
#define IDX_INTEXT_EN 0x22
/*
================================================================================
= 同步处理中断控制寄存器
================================================================================
*/
#define XFR_INTSC_EN XBYTE[0xF024]
#define IDX_INTSC_EN 0x24
/*
================================================================================
= IIC控制寄存器
================================================================================
*/
#define XFR_IIC0_CFG XBYTE[0xF039]
#define XFR_IIC0_STATUS XBYTE[0xF03A]
#define XFR_INTIIC0_EN XBYTE[0xF03B]
#define XFR_INTIIC0_FLG XBYTE[0xF03C]
#define XFR_INTIIC0_CLR XBYTE[0xF03D]
#define XFR_IIC0_TXDATA XBYTE[0xF03E]
#define XFR_IIC0_RXDATA XBYTE[0xF03F]
#define XFR_IIC0_ADDR XBYTE[0xF040]
/*
================================================================================
= FLASH控制寄存器
================================================================================
*/
#define XFR_CPU_CLK XBYTE[0xF04C] // 0x24是默认值,表示24M时钟;0x36表示36M时钟
#define XFR_BANK_SET XBYTE[0xF04D] // 0xDD是默认值,表示4个BANK,0x22表示2个BANK
#define XFR_DDC_THRES XBYTE[0xF04E]
#define XFR_SC_HW_RST XBYTE[0xF04F]
#define XFR_LDO_ADJ XBYTE[0xF050]
#define XFR_DDC_SWAP XBYTE[0xF051] // 默认值为0,1表示DDC通道交换
#define XFR_SE_DLY_ADJ XBYTE[0xF052]
#define XFR_IIC_MASK XBYTE[0xF053]
#define XFR_UART_MUX XBYTE[0xF054]
#define XFR_SPI_AAI XBYTE[0xF055]
#define XFR_CURR_ADJ1 XBYTE[0xF060]
#define XFR_CURR_ADJ2 XBYTE[0xF061]
#define XFR_THRES_CTL1 XBYTE[0xF062]
#define XFR_SPI_IDH XBYTE[0xF064]
#define XFR_SPI_IDM XBYTE[0xF065]
#define XFR_SPI_IDL XBYTE[0xF066]
#define XFR_SPI_SE XBYTE[0xF067]
#define XFR_SPI_ID XBYTE[0xF068]
#define XFR_SST_MODE XBYTE[0xF070]
#define IDX_CPU_CLK 0x4C // 0x24是默认值,表示24M时钟;0x36表示36M时钟
#define IDX_BANK_SET 0x4D // 0xDD是默认值,表示4个BANK,0x22表示2个BANK
#define IDX_DDC_THRES 0x4E
#define IDX_SC_HW_RST 0x4F
#define IDX_LDO_ADJ 0x50
#define IDX_DDC_SWAP 0x51 // 默认值为0,1表示DDC通道交换
#define IDX_SE_DLY_ADJ 0x52
#define IDX_IIC_MASK 0x53
#define IDX_UART_MUX 0x54
#define IDX_SPI_AAI 0x55
#define IDX_CURR_ADJ1 0x60
#define IDX_CURR_ADJ2 0x61
#define IDX_THRES_CTL1 0x62
#define IDX_SPI_IDH 0x64
#define IDX_SPI_IDM 0x65
#define IDX_SPI_IDL 0x66
#define IDX_SPI_SE 0x67
#define IDX_SPI_ID 0x68
#define IDX_SST_MODE 0x70
#define XFR_PAGE XBYTE[0x80FF]
/*
================================================================================
= 一些与MCU控制相关的常数定义
================================================================================
*/
#define WDT_CLEAR 0x55
#define WDT_DISABLE 0xAA //not support in NT68F63XES
#define CPU_CLK_12M 0x10//0x12
#define CPU_CLK_24M 0x20//0x24
#define CPU_CLK_36M 0x30//0x36
#define CPU_CLK_72M 0x30//0x36
#define CODE_2BANK 0x22
#define CODE_4BANK 0xDD
/*
================================================================================
= I/O控制位的定义
================================================================================
*/
#define PA0 0x01
#define PA1 0x02
#define PA2 0x04
#define PA3 0x08
#define PA4 0x10
#define PA5 0x20
#define PA6 0x40
#define PA7 0x80
#define PB0 0x01
#define PB1 0x02
#define PB2 0x04
#define PB3 0x08
#define PB4 0x10
#define PB5 0x20
#define PB6 0x40
#define PB7 0x80
#define PC0 0x01
#define PC1 0x02
#define xB_RDPA_0 0x01
#define xB_RDPA_1 0x02
#define xB_RDPA_2 0x04
#define xB_RDPA_3 0x08
#define xB_RDPA_4 0x10
#define xB_RDPA_5 0x20
#define xB_RDPA_6 0x40
#define xB_RDPA_7 0x80
#define xB_RDPB_0 0x01
#define xB_RDPB_1 0x02
#define xB_RDPB_2 0x04
#define xB_RDPB_3 0x08
#define xB_RDPB_4 0x10
#define xB_RDPB_5 0x20
#define xB_RDPB_6 0x40
#define xB_RDPB_7 0x80
#define xB_RDPC_0 0x01
#define xB_RDPC_1 0x02
#define xB_STRT_ADC 0x80
#define xB_EN_ADC 0x10
#define xB_EN_ADC3 0x08
#define xB_EN_ADC2 0x04
#define xB_EN_ADC1 0x02
#define xB_EN_ADC0 0x01
#define xB_CMP_ADC 0x80
#define xB_EN_PWM9 0x80
#define xB_EN_PWM8 0x40
#define xB_EN_PWM7 0x20
#define xB_EN_PWM6 0x10
#define xB_EN_PWM5 0x08
#define xB_EN_PWM4 0x04
#define xB_EN_PWM3 0x02
#define xB_EN_PWM2 0x01
#define xB_EN_PWM1 0x02
#define xB_EN_PWM0 0x01
#define xB_EN_DDC 0x80 // 允许DDC
#define xB_WPT_DDC 0x40 // DDC RAM写禁止,只允许读操作
#define xB_LEN_EDID 0x20 // EDID数据的长度为256,默认是128
#define xB_MODE_DDC 0x10 // DDC方式选择 0: DDC1, 1: DDC 2B
#define xB_EN_BACK 0x80 // 1: 当VCLK > 128时,自动切换到DDC1方式
#define xB_CLR_PTR 0x02 // DDC RAM缓冲区指针清零
#define xB_CLR_UPD 0x01 // 清除DDC数据更新的标志
#define xB_UPD_DDC 0x01 // DDC数据发生更新
#define xB_VALID_3 0x80 // 校验DDC端口从地址的第3位
#define xB_VALID_2 0x40 // 校验DDC端口从地址的第2位
#define xB_VALID_1 0x20 // 校验DDC端口从地址的第1位
#define xB_ADDR_3 0x08 // DDC端口从地址的第3位
#define xB_ADDR_2 0x04 // DDC端口从地址的第2位
#define xB_ADDR_1 0x02 // DDC端口从地址的第1位
#define xB_INT_IIC0 0x20
#define xB_INT_EXT 0x10
#define xB_INT_IIC1 0x02
#define xB_INTE1 0x02
#define xB_INTE0 0x01
#define xB_INTE1_EDG 0x20
#define xB_INTE0_EDG 0x10
#define xB_PRENACK 0x80
#define xB_SEND_ACK 0x40
#define xB_STOP 0x20
#define xB_RESTART 0x10
#define xB_RB1 0x08
#define xB_RB0 0x04
#define xB_MASTER 0x02
#define xB_WAIT 0x01
#define xB_WRITE 0x80
#define xB_READ 0x40
#define xB_TXDATA_NULL 0x20
#define xB_TX_NULL 0x10
#define xB_RXDATA_FULL 0x08
#define xB_RX_FULL 0x04
#define xB_BUS_START 0x02
#define xB_BUS_STOP 0x01
#define xB_INTA 0x80
#define xB_INTTX 0x40
#define xB_INTRX 0x20
#define xB_INTNAK 0x10
#define xB_INTLOST 0x08
#define xB_CLR_TX_FIFO 0x04
#define xB_CLR_FIFO 0x02
#define xB_START_GEN 0x02
#define xB_STOP_GEN 0x01
#define xB_ENIIC 0x01
#define xB_ENIIC0 0x01
#define xB_ENIIC1 0x01
#define xB_INT_SC 0x01
#define xB_SC_RST 0x01
#define xB_PBUS_EN 0x10
#define xB_SC_LOSS 0x80
#define xB_ISP_FLG 0x02
#define xB_ISP_CH 0x01
#define xB_LOW_PWR 0x01
#define xB_DDC_SWAP 0x01
/*
================================================================================
= STK6021中断向量定义
================================================================================
*/
#define INTERRUPT_INT0 0 // 外部中断0
#define INTERRUPT_TIMER0 1 // 定时中断0
#define INTERRUPT_INT1 2 // 外部中断1
#define INTERRUPT_TIMER1 3 // 定时中断1
#define INTERRUPT_SERIAL 4 // 串行口中断
/*
================================================================================
= 定义两个NT68F631B的进入和退出临界区的宏
================================================================================
*/
#define ENTER_CRITICAL() EA=0
#define EXIT_CRITICAL() EA=1
#endif
/*
********************************************************************************
* 文 件 结 束 *
********************************************************************************
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -