这套组件中,MCU控制CC2500是通过MSPF2274的P2.6和P2.7引脚去控制的 ,现在我硬件上想修改控制引脚,需要在软件进行更改,请问软件程序里面是在哪定义了P2.6和P2.7控制CC2500呢?硬件图附上,谢谢2210.新建 Microsoft Word 文档.docx
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
这套组件中,MCU控制CC2500是通过MSPF2274的P2.6和P2.7引脚去控制的 ,现在我硬件上想修改控制引脚,需要在软件进行更改,请问软件程序里面是在哪定义了P2.6和P2.7控制CC2500呢?硬件图附上,谢谢2210.新建 Microsoft Word 文档.docx
请您看一下
slac139g \eZ430-RF2500 Wireless Sensor Monitor\Embedded\CCS\Code\Components\bsp\boards\EZ430RF\bsp_external 下的mrfi_board_defs.h
/* ------------------------------------------------------------------------------------------------
* GDO0 Pin Configuration
* ------------------------------------------------------------------------------------------------
*/
#define __mrfi_GDO0_BIT__ 6
#define MRFI_CONFIG_GDO0_PIN_AS_INPUT() st( P2SEL &= ~BV(__mrfi_GDO0_BIT__); ) /* clear pin special function default */
#define MRFI_GDO0_PIN_IS_HIGH() (P2IN & BV(__mrfi_GDO0_BIT__))
#define MRFI_GDO0_INT_VECTOR PORT2_VECTOR
#define MRFI_ENABLE_GDO0_INT() st( P2IE |= BV(__mrfi_GDO0_BIT__); ) /* atomic operation */
#define MRFI_DISABLE_GDO0_INT() st( P2IE &= ~BV(__mrfi_GDO0_BIT__); ) /* atomic operation */
#define MRFI_GDO0_INT_IS_ENABLED() ( P2IE & BV(__mrfi_GDO0_BIT__) )
#define MRFI_CLEAR_GDO0_INT_FLAG() st( P2IFG &= ~BV(__mrfi_GDO0_BIT__); ) /* atomic operation */
#define MRFI_GDO0_INT_FLAG_IS_SET() ( P2IFG & BV(__mrfi_GDO0_BIT__) )
#define MRFI_CONFIG_GDO0_RISING_EDGE_INT() st( P2IES &= ~BV(__mrfi_GDO0_BIT__); ) /* atomic operation */
#define MRFI_CONFIG_GDO0_FALLING_EDGE_INT() st( P2IES |= BV(__mrfi_GDO0_BIT__); ) /* atomic operation */
/* ------------------------------------------------------------------------------------------------
* GDO2 Pin Configuration
* ------------------------------------------------------------------------------------------------
*/
#define __mrfi_GDO2_BIT__ 7
#define MRFI_CONFIG_GDO2_PIN_AS_INPUT() st( P2SEL &= ~BV(__mrfi_GDO2_BIT__); ) /* clear pin special function default */
#define MRFI_GDO2_PIN_IS_HIGH() (P2IN & BV(__mrfi_GDO2_BIT__))
#define MRFI_GDO2_INT_VECTOR PORT2_VECTOR
#define MRFI_ENABLE_GDO2_INT() st( P2IE |= BV(__mrfi_GDO2_BIT__); ) /* atomic operation */
#define MRFI_DISABLE_GDO2_INT() st( P2IE &= ~BV(__mrfi_GDO2_BIT__); ) /* atomic operation */
#define MRFI_GDO2_INT_IS_ENABLED() ( P2IE & BV(__mrfi_GDO2_BIT__) )
#define MRFI_CLEAR_GDO2_INT_FLAG() st( P2IFG &= ~BV(__mrfi_GDO2_BIT__); ) /* atomic operation */
#define MRFI_GDO2_INT_FLAG_IS_SET() ( P2IFG & BV(__mrfi_GDO2_BIT__) )
#define MRFI_CONFIG_GDO2_RISING_EDGE_INT() st( P2IES &= ~BV(__mrfi_GDO2_BIT__); ) /* atomic operation */
#define MRFI_CONFIG_GDO2_FALLING_EDGE_INT() st( P2IES |= BV(__mrfi_GDO2_BIT__); ) /* atomic operation */
/* ------------------------------------------------------------------------------------------------
* SPI Configuration
* ------------------------------------------------------------------------------------------------
*/
/* CSn Pin Configuration */
#define __mrfi_SPI_CSN_GPIO_BIT__ 0
#define MRFI_SPI_CONFIG_CSN_PIN_AS_OUTPUT() st( P3DIR |= BV(__mrfi_SPI_CSN_GPIO_BIT__); )
#define MRFI_SPI_DRIVE_CSN_HIGH() st( P3OUT |= BV(__mrfi_SPI_CSN_GPIO_BIT__); ) /* atomic operation */
#define MRFI_SPI_DRIVE_CSN_LOW() st( P3OUT &= ~BV(__mrfi_SPI_CSN_GPIO_BIT__); ) /* atomic operation */
#define MRFI_SPI_CSN_IS_HIGH() ( P3OUT & BV(__mrfi_SPI_CSN_GPIO_BIT__) )
/* SCLK Pin Configuration */
#define __mrfi_SPI_SCLK_GPIO_BIT__ 3
#define MRFI_SPI_CONFIG_SCLK_PIN_AS_OUTPUT() st( P3DIR |= BV(__mrfi_SPI_SCLK_GPIO_BIT__); )
#define MRFI_SPI_DRIVE_SCLK_HIGH() st( P3OUT |= BV(__mrfi_SPI_SCLK_GPIO_BIT__); )
#define MRFI_SPI_DRIVE_SCLK_LOW() st( P3OUT &= ~BV(__mrfi_SPI_SCLK_GPIO_BIT__); )
/* SI Pin Configuration */
#define __mrfi_SPI_SI_GPIO_BIT__ 1
#define MRFI_SPI_CONFIG_SI_PIN_AS_OUTPUT() st( P3DIR |= BV(__mrfi_SPI_SI_GPIO_BIT__); )
#define MRFI_SPI_DRIVE_SI_HIGH() st( P3OUT |= BV(__mrfi_SPI_SI_GPIO_BIT__); )
#define MRFI_SPI_DRIVE_SI_LOW() st( P3OUT &= ~BV(__mrfi_SPI_SI_GPIO_BIT__); )
/* SO Pin Configuration */
#define __mrfi_SPI_SO_GPIO_BIT__ 2
#define MRFI_SPI_CONFIG_SO_PIN_AS_INPUT() /* nothing to required */
#define MRFI_SPI_SO_IS_HIGH() ( P3IN & BV(__mrfi_SPI_SO_GPIO_BIT__) )
/* SPI Port Configuration */
#define MRFI_SPI_CONFIG_PORT() st( P3SEL |= BV(__mrfi_SPI_SCLK_GPIO_BIT__) | \
BV(__mrfi_SPI_SI_GPIO_BIT__) | \
BV(__mrfi_SPI_SO_GPIO_BIT__); )
/* read/write macros */
#define MRFI_SPI_WRITE_BYTE(x) st( IFG2 &= ~UCB0RXIFG; UCB0TXBUF = x; )
#define MRFI_SPI_READ_BYTE() UCB0RXBUF
#define MRFI_SPI_WAIT_DONE() while(!(IFG2 & UCB0RXIFG));
/* SPI critical section macros */
typedef bspIState_t mrfiSpiIState_t;
#define MRFI_SPI_ENTER_CRITICAL_SECTION(x) BSP_ENTER_CRITICAL_SECTION(x)
#define MRFI_SPI_EXIT_CRITICAL_SECTION(x) BSP_EXIT_CRITICAL_SECTION(x)
另外您可以参考专门的文档