?? hal.h
字號:
/* hal.h */
#ifndef HAL_H
#define HAL_H
#ifdef __cplusplus
extern "C"
{
#endif
// 實時時鐘管腳定義 ( MSP430F435 <--> 8025 )
// +---------------+
// | P6.0 | ---> WP
// | P6.6 | <---> SDA
// | P6.7 | ---> SCL
// +---------------+
#define RTC_WP BIT0
#define RTC_WP_OUT P6OUT
#define RTC_WP_DIR P6DIR
#define RTC_SDA BIT6
#define RTC_SDA_IN P6IN
#define RTC_SDA_OUT P6OUT
#define RTC_SDA_DIR P6DIR
#define RTC_SCL BIT7
#define RTC_SCL_OUT P6OUT
#define RTC_SCL_DIR P6DIR
// MSP430F123 <---> DataFlash
// +---------------+
// | P2.2 | ---> DATA_FLASH_WP
// | P3.0 | <--- DATA_FLASH_SO
// | P3.1 | ---> DATA_FLASH_CS
// | P3.2 | ---> DATA_FLASH_SCL
// | P3.3 | ---> DATA_FLASH_SI
// +---------------+
#define DATA_FLASH_WP BIT2
#define DATA_FLASH_WP_OUT P2OUT
#define DATA_FLASH_SO BIT0
#define DATA_FLASH_SO_IN P3IN
#define DATA_FLASH_CS BIT1
#define DATA_FLASH_CS_OUT P3OUT
#define DATA_FLASH_SCL BIT2
#define DATA_FLASH_SCL_OUT P3OUT
#define DATA_FLASH_SI BIT3
#define DATA_FLASH_SI_OUT P3OUT
// MSP430F123 <---> UART
// +---------------+
// | P3.7 | ---> UART_TX_EN
// | P3.4 | ---> RD_D
// | P3.5 | <--- RS_R(Interrupt)
// +---------------+
#define UART_TX_EN BIT7
#define UART_TX_EN_DIR P3DIR
#define UART_TX_EN_OUT P3OUT
#define UART_TX BIT4
#define UART_TX_DIR P3DIR
#define UART_TX_OUT P3OUT
#define UART_RX BIT5
#define UART_RX_DIR P3DIR
#define UART_RX_IN P3IN
#define UART_RX_OUT P3OUT
#define UART_RX_IE P3IE
#define UART_RX_IES P3IES
#define UART_RX_IFG P3IFG
#define UART_RX_SEL P3SEL
// MSP430F123 <---> RF Card
//; +---------------+
//; | P2.0 <--- RF_RX_PIN/RF_OUT_3V
//; | |
//; | P2.1 ---> RF_TX_PIN/RF_IN
//; | |
//; | P1.0/TACLK<---RF_CLK_PIN/RF_CLK_3V
//; | |
//; | P1.3 ---> RF_PWC_PIN
//; +---------------+
/* AT88RF256-12 related definitions */
#define RF_RX_PIN BIT0 /* 2.0*/
#define RF_RX_PIN_INIT() { P2SEL &= ~RF_RX_PIN; P2DIR &= ~RF_RX_PIN; }
#define RF_RX_PIN_UNINIT() { P2DIR |= RF_RX_PIN; P2OUT &= ~RF_RX_PIN;}
#define RF_RX_BIT() (P2IN & RF_RX_PIN)
//TX
#define RF_TX_PIN BIT1 /* 2.1 */
#define RF_TX_PIN_INIT() { P2SEL &= ~RF_TX_PIN; P2DIR |= RF_TX_PIN; }
#define RF_TX_0() P2OUT &= ~RF_TX_PIN;
#define RF_TX_1() P2OUT |= RF_TX_PIN;
//CLK
#define RF_CLK_PIN BIT0 /* 1.0 */ //rf clk input as TA clock source
#define RF_CLK_PIN_INIT() { P1SEL |= RF_CLK_PIN; P1DIR &= ~RF_CLK_PIN; }
#define RF_CLK_PIN_UNINIT() { P1SEL &= ~RF_CLK_PIN; P1DIR |= RF_CLK_PIN; P1OUT &= ~RF_CLK_PIN; }
//PWC
#define RF_PWC_PIN BIT3 /* 1.3 */
#define RF_PWC_PIN_INIT() { P1SEL &= ~RF_PWC_PIN; P1DIR |= RF_PWC_PIN; }
#define RF_PWC_ON() P1OUT &= ~RF_PWC_PIN;
#define RF_PWC_OFF() P1OUT |= RF_PWC_PIN;
// MSP430F123 <---> KEY
// +---------------+
// | P1.1 | <--- KEY(Interrupt)
// +---------------+
#define KEY BIT1
#define KEY_DIR P1DIR
#define KEY_IN P1IN
#define KEY_OUT P1OUT
#define KEY_IE P1IE
#define KEY_IES P1IES
#define KEY_IFG P1IFG
#define KEY_SEL P1SEL
// MSP430F123 <---> PWR_MONITOR
// +---------------+
// | P1.2 | <--- PWR_MONITOR(Input)
// +---------------+
#define PWR_MONITOR BIT2
#define PWR_MONITOR_DIR P1DIR
#define PWR_MONITOR_IN P1IN
#define PWR_MONITOR_OUT P1OUT
#define PWR_MONITOR_IE P1IE
#define PWR_MONITOR_IES P1IES
#define PWR_MONITOR_IFG P1IFG
#define PWR_MONITOR_SEL P1SEL
// MSP430F123 <---> LED
// +---------------+
// | P3.6 | <--- LED
// +---------------+
#define LED BIT6
#define LED_OUT P3OUT
// MSP430F123 <---> BEEP
// +---------------+
// | P2.3 | <--- BEEP
// +---------------+
#define BEEP BIT3
#define BEEP_OUT P2OUT
// I/O init value
// P1.0----RF_CLK_PIN
// P1.1----KEY
// P1.2----PWR_MONITOR
// P1.3----RF_PWC_PIN
#define P1SEL_VAL 0
#define P1DIR_VAL (RF_CLK_PIN+RF_PWC_PIN)
#define P1OUT_VAL (RF_PWC_PIN)
#define P1IES_VAL (KEY)
#define P1IE_VAL (KEY)
// P2.0----RF_TX_PIN
// P2.1----RF_RX_PIN
// P2.2----DATA_FLASH_WP
// P2.3----UART_TX_EN
// P2.4----no use
#define P2SEL_VAL 0
#define P2DIR_VAL (RF_TX_PIN+RF_RX_PIN+DATA_FLASH_WP+BEEP+BIT4)
#define P2OUT_VAL (BEEP+BIT4)
#define P2IES_VAL 0
#define P2IE_VAL 0
// P3.0----DATA_FLASH_SO
// P3.1----DATA_FLASH_SI
// P3.2----DATA_FLASH_CS
// P3.3----DATA_FLASH_SCL
// P3.4----UART_TX
// P3.5----UART_RX
// P3.6----LED
// P3.7----BEEP
#define P3SEL_VAL (UART_TX+UART_RX)
#define P3DIR_VAL (DATA_FLASH_SI+DATA_FLASH_CS+DATA_FLASH_SCL+LED+UART_TX_EN)
#define P3OUT_VAL (DATA_FLASH_SI+DATA_FLASH_CS+DATA_FLASH_SCL+LED+UART_TX_EN)
#define P3IES_VAL 0
#define P3IE_VAL 0
#ifdef __cplusplus
}
#endif
#endif /* HAL_H */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -