/************************************************************************************************** * @fn halLcd_ConfigIO * * @brief Configure IO lines needed for LCD control. * * @param None * * @return None **************************************************************************************************/ static void halLcd_ConfigIO(void) { /* GPIO configuration */ HAL_CONFIG_IO_OUTPUT(HAL_LCD_MODE_PORT, HAL_LCD_MODE_PIN, 1); HAL_CONFIG_IO_OUTPUT(HAL_LCD_RESET_PORT, HAL_LCD_RESET_PIN, 1); HAL_CONFIG_IO_OUTPUT(HAL_LCD_CS_PORT, HAL_LCD_CS_PIN, 1); }
/************************************************************************************************** * @fn halLcd_ConfigIO * * @brief Configure IO lines needed for LCD control. * * @param None * * @return None **************************************************************************************************/ static void halLcd_ConfigIO(void) { /* GPIO configuration */ HAL_CONFIG_IO_OUTPUT(HAL_LCD_MODE_PORT, HAL_LCD_MODE_PIN, 1); HAL_CONFIG_IO_OUTPUT(HAL_LCD_RESET_PORT, HAL_LCD_RESET_PIN, 1); HAL_CONFIG_IO_OUTPUT(HAL_LCD_CS_PORT, HAL_LCD_CS_PIN, 1); /* 30/8/2010 ++ by feibit */ HAL_CONFIG_IO_OUTPUT(HAL_LCD_BK_PORT, HAL_LCD_BK_PIN, 1); }
/************************************************************************************************** lcd所需的GPIO口配置 **************************************************************************************************/ static void halLcd_ConfigIO(void) { /* GPIO configuration */ #ifdef CC2530DK_V1 HAL_CONFIG_IO_OUTPUT(HAL_LCD_MODE_PORT, HAL_LCD_MODE_PIN, 1); #else #endif HAL_CONFIG_IO_OUTPUT(HAL_LCD_CS_PORT, HAL_LCD_CS_PIN, 1); }
/************************************************************************************************** * @fn HalEcg_ConfigIO * * @brief Configure IO lines needed for ECG control. * * @param None * * @return None **************************************************************************************************/ void HalEcg_ConfigIO(void) { /* ECG_POWER 配置为输出,默认为低电平 */ HAL_CONFIG_IO_OUTPUT(HAL_ECG_POWER_PORT, HAL_ECG_POWER_PIN, 0); /* ECG_CS 配置为输出,默认为高电平 */ HAL_CONFIG_IO_OUTPUT(HAL_ECG_CS_PORT, HAL_ECG_CS_PIN, 1); /* ECG_DRDY 初始化为GPIO输入 */ // HAL_CONFIG_IO_INPUT(HAL_ECG_DRDY_PORT, HAL_ECG_DRDY_PIN, 1); HAL_ECG_DRDY_SEL &= ~(HAL_ECG_DRDY_BIT); /* Set pin function to GPIO */ HAL_ECG_DRDY_DIR &= ~(HAL_ECG_DRDY_BIT); /* Set pin direction to Input */ HAL_ECG_DRDY_PXINP &= ~(HAL_ECG_DRDY_BIT); /* P0.6 Pullup/Pulldown输入模式 */ HAL_ECG_DRDY_PXINP_PDUP &= ~BV(5); /* P0上拉输入模式 */ HalEcg_InterruptEnable(); /* 使能ECG DRDY引脚中断 */ }
/************************************************************************************************** * @fn HalEcg_PowerEnable * * @brief * * @param None * * @return None **************************************************************************************************/ void HalEcg_PowerEnable(void) { /* ECG_POWER 配置为输出,默认为高电平 */ HAL_CONFIG_IO_OUTPUT(HAL_ECG_POWER_PORT, HAL_ECG_POWER_PIN, 1); HalEcg_WaitMs(50); // 延时50ms(>32.01ms+40us+10ms) // 等待LDO上电稳定,ADS1194上电复位和振荡器启动时间 // 32.01ms:ADS1194 tPOR+tRST // 40us:LDO电压开启稳定时间 // 10ms:2.048MHz有源晶振Start-up Time。 }
/********************************************************************* * @fn zclRouterVersion1_Init * * @brief Initialization function for the zclGeneral layer. * * @param none * * @return none */ void zclRouterVersion1_Init( byte task_id ) { zclRouterVersion1_TaskID = task_id; // Set destination address to indirect zclRouterVersion1_DstAddr.addrMode = (afAddrMode_t)Addr16Bit; zclRouterVersion1_DstAddr.endPoint = 2; zclRouterVersion1_DstAddr.addr.shortAddr = 0x0000; // This app is part of the Home Automation Profile zclHA_Init( &zclRouterVersion1_SimpleDesc ); // Register the ZCL General Cluster Library callback functions zclGeneral_RegisterCmdCallbacks( ROUTERVERSION1_ENDPOINT, &zclRouterVersion1_CmdCallbacks ); // Register the application's attribute list zcl_registerAttrList( ROUTERVERSION1_ENDPOINT, zclRouterVersion1_NumAttributes, zclRouterVersion1_Attrs ); // Register the Application to receive the unprocessed Foundation command/response messages zcl_registerForMsg( zclRouterVersion1_TaskID ); // Register for all key events - This app will handle all key events RegisterForKeys( zclRouterVersion1_TaskID ); // Register for a test endpoint afRegister( &sampleLight_TestEp ); ZDO_RegisterForZDOMsg(task_id, Device_annce); osal_start_timerEx(zclRouterVersion1_TaskID, SET_PARAMETER, 1000); HAL_CONFIG_IO_OUTPUT(1,2,0); HAL_CONFIG_IO_OUTPUT(1,3,0); HAL_CONFIG_IO_OUTPUT(0,0,0); HAL_CONFIG_IO_OUTPUT(0,1,0); HAL_CONFIG_IO_OUTPUT(0,2,0); HAL_CONFIG_IO_OUTPUT(0,3,0); HAL_CONFIG_IO_OUTPUT(0,4,0); HAL_CONFIG_IO_OUTPUT(0,7,0); HalLedSet(HAL_LED_1,HAL_LED_MODE_OFF); HalLedSet(HAL_LED_2,HAL_LED_MODE_OFF); //ZDOInitDevice(0); if (ZDApp_ReadNetworkRestoreState() == 0) { ZDOInitDevice(0); } }
/************************************************************************************************** * @fn HalEcg_CSDisable * * @brief * * @param * * @return **************************************************************************************************/ void HalEcg_CSDisable(void) { HalEcg_WaitUs(5); HAL_CONFIG_IO_OUTPUT(HAL_ECG_CS_PORT, HAL_ECG_CS_PIN, 1); HalEcg_WaitUs(5); // 为下次CS使能预留一点时间 }
/************************************************************************************************** * @fn HalEcg_CSEnable * * @brief * * @param * * @return **************************************************************************************************/ void HalEcg_CSEnable(void) { HAL_CONFIG_IO_OUTPUT(HAL_ECG_CS_PORT, HAL_ECG_CS_PIN, 0); HalEcg_WaitUs(5); }
/************************************************************************************************** * @fn HalEcg_PowerDisable * * @brief * * @param None * * @return None **************************************************************************************************/ void HalEcg_PowerDisable(void) { /* ECG_POWER 配置为输出,默认为低电平 */ HAL_CONFIG_IO_OUTPUT(HAL_ECG_POWER_PORT, HAL_ECG_POWER_PIN, 0); HalEcg_WaitMs(1); // 等待LDO关断 }
static void hal_ConfigIO(void) { HAL_CONFIG_IO_OUTPUT(HAL_SPI_CS_PORT, HAL_SPI_CS_PIN, 1); }
/********************************************************************* * 函数名称:halLcd_ConfigIO * 功 能:LCD显示IO配置 * 入口参数:无 * 出口参数:无 * 返 回 值:无 ********************************************************************/ static void halLcd_ConfigIO(void) { HAL_CONFIG_IO_OUTPUT(HAL_LCD_RESET_PORT, HAL_LCD_RESET_PIN, 1); HAL_CONFIG_IO_OUTPUT(HAL_LCD_CS_PORT, HAL_LCD_CS_PIN, 1); }