📄 spce061a_chf.h
字号:
extern void Set_DAC1_Data(unsigned int);
extern unsigned int Get_DAC1_Data(void);
//B15-B6 --> Data
extern void Set_DAC_Ctrl(unsigned int);
//B8..B7
#define C_DA1_Direct 0x0000 // DAC1 latch
#define C_DA1_LatchA 0x0080 //
#define C_DA1_LatchB 0x0100 //
#define C_DA1_LatchAB 0x0180 //
//B6..B5
#define C_DA2_Direct 0x0000 // DAC2 latch
#define C_DA2_LatchA 0x0020 //
#define C_DA2_LatchB 0x0040 //
#define C_DA2_LatchAB 0x0060 //
//B4..B3
#define C_AD_Direct 0x0000 // A/D MIC_IN latch
#define C_AD_LatchA 0x0008 //
#define C_AD_LatchB 0x0010 //
#define C_AD_LatchAB 0x0018 //
//-----------------------------------------------------------------------------------//
//-----------------------------------------------------------------------------------//
extern void Set_LVD_Ctrl(unsigned int);
extern unsigned int Get_LVD_Ctrl(void);
//... Define for P_LVD_Ctrl ...................
#define C_LVD24V 0x0000 // LVD = 2.4V (default)
#define C_LVD28V 0x0001 // LVD = 2.8V
#define C_LVD32V 0x0002 // LVD = 3.2V
//B15 Result of LVD
//-----------------------------------------------------------------------------------//
//-----------------------------------------------------------------------------------//
extern void Set_SIO_Ctrl(unsigned int);
extern unsigned int Get_SIO_Ctrl(void);
//B1..B0
#define C_SIO_Addr8 0x0002 // Address = 8
#define C_SIO_Addr16 0x0000 // Address = 16 (default)
#define C_SIO_Addr24 0x0003 // Address = 24
//B4..B3
#define C_SIO_Clk_Div_16 0x0000 // CPU CLK/16 (default)
#define C_SIO_Clk_Div_4 0x0008 // CPU CLK/4
#define C_SIO_Clk_Div_8 0x0010 // CPU CLK/8
#define C_SIO_Clk_Div_32 0x0018 // CPU CLK/32
//B5
#define C_SIO_RW_Dis 0x0020 // Read /Write control bit applied disable
#define C_SIO_RW_ENB 0x0000 // Read /Write control bit applied
//B6
#define C_SIO_RD 0x0000 // SIO Read
#define C_SIO_WR 0x0040 // SIO Write
//B7
#define C_SIO_ENB 0x0080 // Enable SIO Configuration
#define C_SIO_Dis 0x0000 // Disable SIO
//-----------------------------------------------------------------------------------//
extern void Set_SIO_Data(unsigned int);
extern unsigned int Get_SIO_Data(void);
//B7..B0 --> Data
extern void Set_SIO_Address(unsigned long int);
extern unsigned long int Get_SIO_Address(void);
//B7..B0 --> Address Low
//B15..B7 --> Address Mid
//B23..B16 --> Address High
extern void Set_SIO_Addr_Low(unsigned int);
extern unsigned int Get_SIO_Addr_Low(void);
//B7..B0 --> Data
extern void Set_SIO_Addr_Mid(unsigned int);
extern unsigned int Get_SIO_Addr_Mid(void);
//B7..B0 --> Data
extern void Set_SIO_Addr_High(unsigned int);
extern unsigned int Get_SIO_Addr_High(void);
//B7..B0 --> Data
extern void Set_SIO_Start(void);
#define C_SIOSTARTCMD 0x5555
extern unsigned int Get_SIO_Start(void);
//B7 --> Busy
extern void Set_SIO_Stop(void);
#define C_SIOSTOPCMD 0x5555
//-----------------------------------------------------------------------------------//
//-----------------------------------------------------------------------------------//
extern void Set_UART_Command1(unsigned int);
//B2
#define C_UART_Parity_ENB 0x0004 //Enable UART Parity Enable
//B3
#define C_UART_Parity_Odd 0x0000 //Enable UART Parity Odd
#define C_UART_Parity_Even 0x0008 //Enable UART Parity Even
//B5
#define C_UART_Reset 0x0020 //UART Internal Reset
//B6
#define C_UART_Tx_IRQ_ENB 0x0040 //UART TX IRQ Enable
//B7
#define C_UART_Rx_IRQ_ENB 0x0080 //UART RX IRQ Enable
//-----------------------------------------------------------------------------------//
extern void Set_UART_Command2(unsigned int);
//B6
#define C_UART_Tx_Pin_ENB 0x0040 //UART TX Pin Enable
//B7
#define C_UART_Rx_Pin_ENB 0x0080 //UART RX Pin Enable
extern unsigned int Get_UART_Command2(void);
//B3
#define C_UART_Parity_Error 0x0008 //UART Parity Error
//B4
#define C_UART_OverRun_Error 0x0010 //UART Over Run Error
//B5
#define C_UART_Frame_Error 0x0020 //UART Frame Error
//B6
#define C_UART_Tx_RDY 0x0040 //UART TX Ready
//B7
#define C_UART_Rx_RDY 0x0080 //UART RX Ready
//-----------------------------------------------------------------------------------//
//B7..B0
extern void Set_UART_Data(unsigned int);
extern unsigned int Get_UART_Data(void);
//B15..B0
extern void Set_UART_BaudRate(unsigned int);
extern unsigned int Get_UART_BaudRate(void);
#define C_BaudRate_2400 0x1400 //UART 2400
#define C_BaudRate_4800 0x0A00 //UART 4800
#define C_BaudRate_9600 0x0500 //UART 9600
#define C_BaudRate_19200 0x0280 //UART 19200
#define C_BaudRate_38400 0x0140 //UART 38400
#define C_BaudRate_48000 0x0100 //UART 48000
//B7..B0
extern void Set_UART_BaudScalarLow(unsigned int);
extern unsigned int Get_UART_BaudScalarLow(void);
//B7..B0
extern void Set_UART_BaudScalarHigh(unsigned int);
extern unsigned int Get_UART_BaudScalarHigh(void);
//-----------------------------------------------------------------------------------//
//-----------------------------------------------------------------------------------//
extern void Mic_Input_Ctrl(unsigned int,unsigned int);
//-----------------------------------------------------------------------------------//
//-----------------------------------------------------------------------------------//
extern void Line_Input_Ctrl(unsigned int,unsigned int);
extern void SIO_IO_Init(void);
// Set Serial IO(IB0,IB1) =(SCK,SIO) Status
// Direct output
// Pull high
// Data low
extern void UART_IO_Init(void);
//***************************************************************************//
// Register definitions //
//***************************************************************************//
// IO port control registers
#define P_IOA_Data (volatile unsigned int *)0x7000
#define P_IOA_Buffer (volatile unsigned int *)0x7001
#define P_IOA_Dir (volatile unsigned int *)0x7002
#define P_IOA_Attrib (volatile unsigned int *)0x7003
#define P_IOA_Latch (volatile unsigned int *)0x7004
#define P_IOB_Data (volatile unsigned int *)0x7005
#define P_IOB_Buffer (volatile unsigned int *)0x7006
#define P_IOB_Dir (volatile unsigned int *)0x7007
#define P_IOB_Attrib (volatile unsigned int *)0x7008
// Timer control registers
#define P_TimerA_Data (volatile unsigned int *)0x700A
#define P_TimerA_Ctrl (volatile unsigned int *)0x700B
#define P_TimerB_Data (volatile unsigned int *)0x700C
#define P_TimerB_Ctrl (volatile unsigned int *)0x700D
// Timebase control registers
#define P_TimeBase_Setup (volatile unsigned int *)0x700E
#define P_Timebase_Setup (volatile unsigned int *)0x700E // Same as P_TimeBase_Setup
#define P_TimeBase_Clear (volatile unsigned int *)0x700F
#define P_Timebase_Clear (volatile unsigned int *)0x700F // Same as P_TimeBase_Clear
// Interrupt control registers
#define P_INT_Ctrl (volatile unsigned int *)0x7010
#define P_INT_Clear (volatile unsigned int *)0x7011
#define P_INT_Mask (volatile unsigned int *)0x702D
#define P_INT_Ctrl_New (volatile unsigned int *)0x702D // Same as P_INT_Mask
// Analog functions control registers
#define P_ADC (volatile unsigned int *)0x7014
#define P_ADC_Ctrl (volatile unsigned int *)0x7015
#define P_ADC_MUX_Ctrl (volatile unsigned int *)0x702B
#define P_ADC_MUX_Data (volatile unsigned int *)0x702C
#define P_ADC_LINEIN_Data (volatile unsigned int *)0x702C // Same as P_ADC_MUX_Data
#define P_ADC_LineIn_Data (volatile unsigned int *)0x702C // Same as P_ADC_MUX_Data
#define P_DAC_Ctrl (volatile unsigned int *)0x702A
#define P_DAC1 (volatile unsigned int *)0x7017
#define P_DAC2 (volatile unsigned int *)0x7016
// Serial functions control registers
#define P_SIO_Data (volatile unsigned int *)0x701A
#define P_SIO_Addr_Low (volatile unsigned int *)0x701B
#define P_SIO_Addr_Mid (volatile unsigned int *)0x701C
#define P_SIO_Addr_High (volatile unsigned int *)0x701D
#define P_SIO_Ctrl (volatile unsigned int *)0x701E
#define P_SIO_Start (volatile unsigned int *)0x701F
#define P_SIO_Stop (volatile unsigned int *)0x7020
#define P_UART_Command1 (volatile unsigned int *)0x7021
#define P_UART_Command2 (volatile unsigned int *)0x7022
#define P_UART_Data (volatile unsigned int *)0x7023
#define P_UART_BaudScalarLow (volatile unsigned int *)0x7024
#define P_UART_BaudScalarHigh (volatile unsigned int *)0x7025
// Other control registers
#define P_Feedback (volatile unsigned int *)0x7009
#define P_SystemClock (volatile unsigned int *)0x7013
#define P_Watchdog_Clear (volatile unsigned int *)0x7012
#define P_LVD_Ctrl (volatile unsigned int *)0x7019
#define P_Flash_Ctrl (volatile unsigned int *)0x7555
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -