久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2809|回復: 1
打印 上一主題 下一主題
收起左側

CC2530和GY30光敏傳感器的使用源代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:538984 發表于 2019-5-15 16:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
詳情看代碼吧

單片機源程序如下:
  1. #include "OSAL.h"
  2. #include "AF.h"
  3. #include "ZDApp.h"
  4. #include "ZDObject.h"
  5. #include "ZDProfile.h"

  6. #include "Common.h"
  7. #include "DebugTrace.h"

  8. #if !defined( WIN32 )
  9.   #include "OnBoard.h"
  10. #endif

  11. /* HAL */
  12. #include "hal_lcd.h"
  13. #include "hal_led.h"
  14. #include "hal_key.h"
  15. #include "hal_uart.h"
  16. #include "OSAL_Nv.h"


  17. const cId_t SampleApp_ClusterList[SampleApp_MAX_CLUSTERS] =
  18. {
  19.   REPORT_CLUSTER_ID
  20. };
  21.                         
  22. const SimpleDescriptionFormat_t SampleApp_SimpleDesc =
  23. {
  24.   SampleApp_ENDPOINT,              //  int Endpoint;
  25.   SampleApp_PROFID,                //  uint16 AppProfId[2];
  26.   SampleApp_DEVICEID,              //  uint16 AppDeviceId[2];
  27.   SampleApp_DEVICE_VERSION,        //  int   AppDevVer:4;
  28.   SampleApp_FLAGS,                 //  int   AppFlags:4;
  29.   SampleApp_MAX_CLUSTERS,          //  byte  AppNumInClusters;
  30.   (cId_t *)SampleApp_ClusterList,  //  byte *pAppInClusterList;
  31.   0,          //  byte  AppNumInClusters;
  32.   (cId_t *)NULL       // (cId_t *)NULL    byte *pAppInClusterList;
  33. };

  34. //static uint8 SerialApp_TxLen;
  35. endPointDesc_t SampleApp_epDesc;
  36. uint8 SampleApp_TaskID;   
  37. devStates_t SampleApp_NwkState;

  38. uint8 SampleApp_TransID;  // This is the unique message ID (counter)

  39. afAddrType_t SampleApp_Dst_DstAddr;

  40. void SampleApp_MessageMSGCB(afIncomingMSGPacket_t *pkt);


  41. void SampleApp_Init( byte task_id )
  42. {
  43.   halUARTCfg_t uartConfig;
  44.   SampleApp_TaskID = task_id;
  45.   SampleApp_TransID = 0;
  46.   
  47.   SampleApp_epDesc.endPoint = SampleApp_ENDPOINT;
  48.   SampleApp_epDesc.task_id = &SampleApp_TaskID;
  49.   SampleApp_epDesc.simpleDesc
  50.             = (SimpleDescriptionFormat_t *)&SampleApp_SimpleDesc;
  51.   SampleApp_epDesc.latencyReq = noLatencyReqs;
  52.   afRegister( &SampleApp_epDesc );
  53. uartConfig.configured           = TRUE;         
  54.   uartConfig.baudRate             = BAUD;
  55.   uartConfig.flowControl          = FALSE;   
  56.   uartConfig.rx.maxBufSize        = RX_SZ;  
  57.   uartConfig.tx.maxBufSize        = TX_SZ;
  58.   uartConfig.idleTimeout          = IDLE;  
  59.   uartConfig.intEnable            = TRUE;
  60.   uartConfig.callBackFunc         =NULL;
  61.   HalUARTOpen (PORT, &uartConfig); //配置串口
  62.   
  63.   P1DIR|=0x0E;
  64.   LED1 =0;
  65.   LED2 =0;

  66. }

  67. UINT16 SampleApp_ProcessEvent( byte task_id, UINT16 events )
  68. {
  69.   afIncomingMSGPacket_t *MSGpkt;

  70.   if ( events & SYS_EVENT_MSG )
  71.   {
  72.     MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID );
  73.     while ( MSGpkt )
  74.     {
  75.       switch ( MSGpkt->hdr.event )
  76.       {
  77.         case AF_INCOMING_MSG_CMD:
  78.          SampleApp_MessageMSGCB(MSGpkt);
  79.          LED2=!LED2;
  80.             break;
  81.           case ZDO_STATE_CHANGE:
  82.           SampleApp_NwkState = (devStates_t)(MSGpkt->hdr.status);
  83.           if ( (SampleApp_NwkState == DEV_ZB_COORD)
  84.               || (SampleApp_NwkState == DEV_ROUTER)
  85.               || (SampleApp_NwkState == DEV_END_DEVICE) )
  86.           {
  87.             LED1=1; //若成功創建網絡則點亮LED2
  88.           }
  89.           else
  90.           {
  91.             LED1=0;// Device is no longer in the network
  92.           }
  93.           break;
  94.         default:
  95.           break;
  96.       }
  97.       osal_msg_deallocate( (uint8 *)MSGpkt );
  98.       MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID );
  99.     }
  100.     return (events ^ SYS_EVENT_MSG);
  101.   }
  102.   
  103.   return 0;
  104. }

  105. void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
  106. {
  107.   unsigned char buffer[2];
  108.   unsigned char WenDuChars[2];
  109.   unsigned char ShiDuChars[2];
  110.    
  111.   switch (pkt->clusterId) {
  112.   case REPORT_CLUSTER_ID:
  113.        osal_memcpy(buffer,pkt->cmd.Data,2);
  114.     if(buffer[0]!=0)
  115.       {
  116.         WenDuChars[0]=buffer[0]/10+'0';
  117.         WenDuChars[1]=buffer[0]%10+'0';
  118.         HalUARTWrite(0,"采集到的溫度是:",16);
  119.         HalUARTWrite(0,WenDuChars,2);
  120.       }
  121.       else
  122.       {
  123.         HalUARTWrite(0,"It's Wrong",10);
  124.         HalUARTWrite(0,"\n",1);
  125.       }
  126.       if(buffer[1]!=0)
  127.       {
  128.         ShiDuChars[0]=buffer[1]/10+'0';
  129.         ShiDuChars[1]=buffer[1]%10+'0';
  130.         HalUARTWrite(0,"采集到的濕度是:",16);
  131.         HalUARTWrite(0,ShiDuChars,2);
  132.         HalUARTWrite(0,"\n",1);
  133.       }
  134.       else
  135.       {
  136.         HalUARTWrite(0,"It's Wrong",10);
  137.         HalUARTWrite(0,"\n",1);
  138.       }
  139.     break;
  140.   }
  141. }
復制代碼

所有資料51hei提供下載:
C2530-read-GY-30-LED.zip (32.98 KB, 下載次數: 40)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:538984 發表于 2019-5-15 16:15 | 只看該作者
#include "ZComDef.h" #include "hal_drivers.h" #include "OSAL.h" #include "OSAL_Tasks.h" /////////////////////////////////頭文件的包含////////////////////////////// #if defined ( MT_TASK )   #include "MT.h"   #include "MT_TASK.h" #endif  #include "nwk.h" #include "APS.h" #include "ZDApp.h"  #if defined ( ZIGBEE_FREQ_AGILITY ) || defined ( ZIGBEE_PANID_CONFLICT )   #include "ZDNwkMgr.h" #endif  #if defined ( ZIGBEE_FRAGMENTATION )   #include "aps_frag.h" #endif #include "Common.h"  /////////////////////////////////任務注冊////////////////////////////// const pTaskEventHandlerFn tasksArr[] = {   macEventLoop,//MAC任務循環   nwk_event_loop,//網絡層任務函數   Hal_ProcessEvent,//硬件層函數 #if defined( MT_TASK )   MT_ProcessEvent,//串口支持層定義 #endif   APS_event_loop,//應用支持層任務事件函數 #if defined ( ZIGBEE_FRAGMENTATION )   APSF_ProcessEvent, #endif   ZDApp_event_loop,//設備對象層函數 #if defined ( ZIGBEE_FREQ_AGILITY ) || defined ( ZIGBEE_PANID_CONFLICT )   ZDNwkMgr_event_loop, #endif   SampleApp_ProcessEvent//自己定義的任務處理函數 };  const uint8 tasksCnt = sizeof( tasksArr ) / sizeof( tasksArr[0] ); uint16 *tasksEvents;  void osalInitTasks( void )//為各個進程添加任務ID,用作查找任務時用 {   uint8 taskID = 0;    tasksEvents = (uint16 *)osal_mem_alloc( sizeof( uint16 ) * tasksCnt);   osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt));    macTaskInit( taskID++ );//MAC層的任務ID號   nwk_init( taskID++ );//網絡ID分配   Hal_Init( taskID++ );//硬件ID分配 #if defined( MT_TASK )   MT_TaskInit( taskID++ ); #endif   APS_Init( taskID++ ); #if defined ( ZIGBEE_FRAGMENTATION )   APSF_Init( taskID++ ); #endif   ZDApp_Init( taskID++ ); #if defined ( ZIGBEE_FREQ_AGILITY ) || defined ( ZIGBEE_PANID_CONFLICT )   ZDNwkMgr_Init( taskID++ ); #endif   SampleApp_Init( taskID );//為自己的任務添加ID }  /********************************************************************* *********************************************************************/
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 女生羞羞网站 | 日本成人中文字幕在线观看 | 中文字幕在线播放第一页 | 99久久夜色精品国产亚洲96 | 天天操夜夜操 | 伊人狠狠 | 免费久久99精品国产婷婷六月 | 看片91| 欧美a区 | 中文字幕一区二区三区四区五区 | www久| 亚洲第一女人av | 免费网站国产 | 国产一区二区三区四区三区四 | 黄色精品 | 超碰欧美 | 999热在线视频 | 久久成人国产精品 | 免费观看一级特黄欧美大片 | 久久久精品天堂 | 麻豆亚洲 | 色久影院| 国产精品久久久久久久久久久新郎 | 国产精品区二区三区日本 | 日韩一级免费观看 | 国产精品视频导航 | 在线观看av网站 | 国产精品美女久久久久久久久久久 | 视频1区2区 | 欧美日韩视频在线第一区 | 精品一区二区av | www.亚洲一区 | 国产一级毛片精品完整视频版 | www.色婷婷 | 日韩欧美在线一区 | 国产精品毛片一区二区在线看 | 亚洲一区二区三区视频免费观看 | 国产精品久久精品 | 国产久 | 国产精品久久久久不卡 | 国产亚洲精品久久久久动 |