当前位置: 代码迷 >> Wireless >> zigebee中的传感器代码 求好手解释
  详细解决方案

zigebee中的传感器代码 求好手解释

热度:359   发布时间:2016-04-28 09:37:04.0
zigebee中的传感器代码 求高手解释~
void main(void)
{
    uint8 APP_SEND_DATA_FLAG = 0; //无线定时发送数据标志
    uint8 config_flag[1];  
    float   ADC_VALUE;    //定义 这个一个接受传感器数据的值
    halBoardInit();  //各种初始化
    halUartInit(38400);
    HalDmaInit();
       
    HalFlashRead(NV_CONFIG_FLAG, 0, config_flag, sizeof(config_flag));
    halUartWrite(config_flag,1);     //忘串口写个 1个字节的 config_flag变量
    
    if(config_flag[0] == 0xff)   //lpc
    {
        My_Used_Flash_Init();          //zigbee的通讯地址初始化
        halUartWrite("##RESET Flash Valuye!##",strlen("##RESET Flash Valuye!##")) ; //复位
    }

    ConfigRf_Init();
    ConfigRf_send_uart(); // 无线发送到串口
    HalFlashRead(NV_CONFIG_FLAG, 0, config_flag, sizeof(config_flag));  // LPC
     
#if (SENSOR_TYPE==1)  //条件编译  如果传感器的型号是1-温湿度传感器
    connectionreset();   
#else
     ADC_INIT();      //ADC初始化,用于光电、酒精、可燃气体   
#endif
    
    Timer4_Init();   //定时器4初始化,定时器中断一次的时间是(1/250000*256)s,中断1953次约等于2s
    Timer4_On();     //打开定时器4
    
    
    
    halLedSet(3); 
   
    while(1)
    {                          
        uRxlen = 0;
        memset_buf(uRxData,sizeof(uRxData));
        uRxlen = RecvUartData(uRxData,0);
        halMcuWaitMs(5);
        if(uRxlen > 0)
        {
            if((uRxData[0] == 0xFF)&&(uRxData[1] == 0xFA))
  相关解决方案