物聯網學習,每日一考一練!

時間:2022年10月21日下午4:16
物聯網學習,每日一考一練!

物聯網學習,每日一考一練!

物聯網學習,每日一考一練:考試不是目的,學習知識才是重點!

完成以下答題能掌握的知識點:

物聯網的基本概念

單片機IO口基本配置

Zigbee中函數傳參

Zigbee 函數調用

中斷函數使用

ZigBee 無線傳感網組網

物聯網學習,每日一考一練!


一、基礎題 (掌握和學習物聯網的基本概念)

1、下面哪一項不屬于物聯網關鍵技術?

A.ZigBee技術 B. RFID C.低功耗藍牙技術 D.收音機

2、我國提出發展中國的物聯網的口號是?

A.智慧地球 B.感知中國 C.U-CHINA D.認知中國

3、非接觸式自動識別技術是

A.ZigBee B. M2M C.RFID D.NFC

4、智慧地球(Smarter Planet)是誰最先提出的( )

A.無錫研究院 B.溫總理 C. IBM D. 奧巴馬

5、物聯網的英文名字是(), 簡稱();

6、()是物聯網采集信息的終端工具;

7、()與IPv4協議相比和物聯網的聯系更廣泛;

8、ZigBee節點所屬類別有3種,包括:()、()、()。


二、應用題

應用題1:主要掌握單片機IO口基本配置

1.基礎實驗,我們常需要對IO口進行配置,點亮LED1?

/*************************************
 描述:點亮LED1
 IO口:LED1-P1.0
 點亮:低電平點亮
**************************************/
#include <ioCC2530.h>
#define LED1 ? //定義P10口為LED1控制端 
void IO_Init(void)
{
 P1SEL &=~0x01; //作為普通IO口 
 P1DIR |= ? ; //P1_0定義為輸出 
 P1INP &=~0X01; //打開上拉 
}
void main(void)
{ 
 IO_Init(); //調用初始化程序
 LED1= ? ; //點亮LED1 
 while(1);
}

請在上面#define LED1 ? 和 LED1= ? ; //點亮LED1 2處 補充完代碼


應用題2:主要掌握Zigbee中函數傳參

2. ZigBee數據發送

ZigBee 常用數據發送函數定義如下:

afStatus_t AF_DataRequest( afAddrType_t *dstAddr,
endPointDesc_t *srcEP,
uint16 cID,
uint16 len,
uint8 *buf,
uint8 *transID,
uint8 options,
uint8 radius )

請參考上面代碼將下面空格補充完整,實現將數據 data 發送出去。

Void SampleApp _SendPeriodicMessage ( void )
{
uint8 data[10]={0,1,2,3,4,5,6,7,8,9};
if ( AF_DataRequest( &SampleApp_Periodic_DstAddr,
&SampleApp_epDesc,
SAMPLEAPP_PERIODIC_CLUSTERID,
, ,
&SampleApp_TransID,
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
{ }
else
{
// Error occurred in request to send.
}

應用題3:主要掌握Zigbee 函數調用

3.編程使節點 1 的 LED1 指示燈復位后閃爍 4 次,閃爍周期為 200ms,即亮 100ms,滅 100ms;可以調用 z-stack 的 LED 閃爍函數:函數如下:

void HalLedBlink (uint8 leds, uint8 numBlinks, uint8 percent, uint16 period)
{
#if (defined (BLINK_LEDS)) && (HAL_LED == TRUE)
 uint8 led;
 HalLedControl_t *sts;
 if (leds && percent && period)
 {
 if (percent < 100)
 {
 led = HAL_LED_1;
 leds &= HAL_LED_ALL;
 sts = HalLedStatusControl.HalLedControlTable;
 while (leds)
 {
 if (leds & led)
 {
 /* Store the current state of the led before going to blinking */
 preBlinkState |= (led & HalLedState);
 sts->mode = HAL_LED_MODE_OFF; /* Stop previous blink */
 sts->time = period; /* Time for one on/off cycle */
 sts->onPct = percent; /* % of cycle LED is on */
 sts->todo = numBlinks; /* Number of blink cycles */
 if (!numBlinks) sts->mode |= HAL_LED_MODE_FLASH; 
 /* Continuous */
 sts->next = osal_GetSystemClock(); /* Start now */
 sts->mode |= HAL_LED_MODE_BLINK; /* Enable blinking */
 leds ^= led;
 }
 led <<= 1;
 sts++;
 }
 osal_set_event (Hal_TaskID, HAL_LED_BLINK_EVENT);
}
 else
 {
 HalLedSet (leds, HAL_LED_MODE_ON); /* >= 100%, turn on */
 }
 }
 else
 {
 HalLedSet (leds, HAL_LED_MODE_OFF); /* No on time, turn off */
 }
#elif (HAL_LED == TRUE)
 percent = (leds & HalLedState) ? HAL_LED_MODE_OFF : HAL_LED_MODE_ON;
 HalLedOnOff (leds, percent); /* Toggle */
#else
 // HAL LED is disabled, suppress unused argument warnings
 (void) leds;
 (void) numBlinks;
 (void) percent;
 (void) period;
#endif /* BLINK_LEDS && HAL_LED */
}

按題目要求調用函數:(?)


題目4:主要掌握中斷函數使用

4.編程使節點1的按鍵S1每按一次,控制LED1燈閃爍一次。

閃爍函數定義:

/***************************************************************************************************

* @fn HalLedSet

*

* @brief Tun ON/OFF/TOGGLE given LEDs

*

* @param leds - HAL_LED_1,HAL_LED_2;

* mode - BLINK, FLASH, TOGGLE, ON, OFF

* @return None

***************************************************************************************************/

uint8 HalLedSet (uint8 leds, uint8 mode);

按鍵中斷函數:

void SampleApp_HandleKeys( uint8 shift, uint8 keys )

{

(void)shift; // Intentionally unreferenced parameter

if ( keys & HAL_KEY_SW_6 )

{

HalUARTWrite(0,"K1 ",3); //提示KEY1被按下

? ; // LED1閃一下

}

if ( keys & HAL_KEY_SW_1 )

{

/* This key sends the Flash Command is sent to Group 1.

* This device will not receive the Flash Command from this

* device (even if it belongs to group 1).

*/

SampleApp_SendFlashMessage( SAMPLEAPP_FLASH_DURATION );

}

if ( keys & HAL_KEY_SW_2 )

{

/* The Flashr Command is sent to Group 1.

* This key toggles this device in and out of group 1.

* If this device doesn't belong to group 1, this application

* will not receive the Flash command sent to group 1.

*/

aps_Group_t *grp;

grp = aps_FindGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLASH_GROUP );

if ( grp )

{

// Remove from the group

aps_RemoveGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLASH_GROUP );

}

else

{

// Add to the flash group

aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );

}

}

}

請完善以上中斷函數的調用。


三 綜合題:主要掌握如何組建 ZigBee 無線傳感網:

打開工程文件 3.1。節點 1 作為協調器,節點 2 作為終端設備且連接溫度傳

感器 DS18B20,通過周期性讀取溫度信息發送給協調器。協調器將收集到的溫度

信息通過串口 0 發送到 PC 機,并使用串口調試助手打印出來。

要求: 寫出下列要求對應的函數或代碼,在考試套件上實現題目功能:試卷共 6 頁 第 6 頁

(1) 配置串口波特率為 115200bps,關閉串口流控;

#define MT_UART_DEFAULT_BAUDRATE
#define MT_UART_DEFAULT_OVERFLOW

(2) 將采集到的溫度信息發送給協調器的發送函數;

void SampleApp_SendPointToPointMessage( void )
{
uint8 T[2];//溫度
//16 進制轉換成 ASCII 碼 溫度十位
//16 進制轉換成 ASCII 碼 溫度個位
if ( AF_DataRequest( &Point_To_Point_DstAddr,
&SampleApp_epDesc,
SAMPLEAPP_POINT_TO_POINT_CLUSTERID,
2,
T,
&SampleApp_TransID,
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
{ }
else
{ // Error occurred in request to send.
}
}

(3) 協調器將接收到的溫度信息通過串口 0 打印出來。

void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
{
uint16 flashTime;
switch ( pkt->clusterId )
{
case SAMPLEAPP_POINT_TO_POINT_CLUSTERID:
HalUARTWrite(0,"Temp is:",8); //串口提示接收到數據
; //溫度信息通過串口 0 發給 PC 機
HalUARTWrite(0,"\n",1); // 回車換行
break;
}
}

以上題目你找到答案了嗎?可以關注+私信(IOT)獲取完整答案喲!

物聯網學習,每日一考一練!

物聯網學習,每日一考一練!

二維碼
智宇物聯平臺二維碼

搜浪信息科技發展(上海)有限公司 備案號:滬ICP備17005676號

主站蜘蛛池模板: 国产婷婷综合在线视频中| 七次郎在线视频观看精品| 97久久精品人人澡人人爽| 村上里沙在线播放| 国产综合色在线视频| 久久精品国产亚洲av麻豆色欲| 91精品久久国产青草| 欧美一级在线免费观看| 可以免费观看的毛片| 1300部真实小u女视频在线| 无码一区二区三区中文字幕| 亚洲熟妇无码AV不卡在线播放| 毛片基地看看成人免费| 扒开腿狂躁女人爽出白浆| 亚洲精品成人网站在线播放 | 国产人成无码视频在线观看| videofree极品另类| 模特冰漪丰硕之美1| 亚洲欧美色一区二区三区| 玛雅视频网站在线观看免费| 国产美女91视频| ts人妖系列在线专区| 成年女人色毛片免费看| 亚洲人交性视频| 精品1州区2区3区4区产品乱码| 国产资源在线看| 丰满少妇三级全黄| 欧美大片在线观看完整版| 午夜时刻免费入口| 国产成人愉拍精品| 在线免费观看一级片| 久久久一本精品99久久精品88| 精品400部自拍视频在线播放| 国产欧美日韩精品第一区| jizz.日本| 日本vs黑人hd| 亚洲人成人77777网站| 欧美色视频日本| 又色又爽又黄的三级视频在线观看| 91香蕉污视频| 天天操天天干视频|