版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
無線傳感網(wǎng)絡(luò)(WSN)無線傳感網(wǎng)絡(luò)(WSN)1無線傳感網(wǎng)絡(luò)關(guān)鍵詞英文:WirelessSensorsNetworking傳感無線網(wǎng)絡(luò)無線傳感網(wǎng)絡(luò)關(guān)鍵詞英文:WirelessSensorsN2概念無線傳感器網(wǎng)絡(luò)是一種分布式傳感網(wǎng)絡(luò),它的末梢是可以感知和檢查外部世界的傳感器。WSN中的傳感器通過無線方式通信,因此網(wǎng)絡(luò)設(shè)置靈活,設(shè)備位置可以隨時更改,還可以跟互聯(lián)網(wǎng)進行有線或無線方式的連接。通過無線通信方式形成的一個多跳自組織網(wǎng)絡(luò)。概念無線傳感器網(wǎng)絡(luò)是一種分布式傳感網(wǎng)絡(luò),它的末梢是可以感知和3無線傳感網(wǎng)絡(luò)課件4課程內(nèi)容傳感技術(shù)應(yīng)用無線傳感網(wǎng)絡(luò)通信基礎(chǔ)無線傳感網(wǎng)絡(luò)應(yīng)用課程內(nèi)容傳感技術(shù)應(yīng)用5考核辦法平時成績:20%期末大作業(yè):80%考核辦法平時成績:20%6Zigduino開發(fā)平臺Arduino體系優(yōu)點:易上手,可實現(xiàn)快速應(yīng)用單片機開發(fā)實質(zhì):配置寄存器Zigduino開發(fā)平臺Arduino體系7硬件平臺硬件平臺8無線傳感網(wǎng)絡(luò)課件9無線傳感網(wǎng)絡(luò)課件10軟件平臺Eclipse,相比ArduinoIDE、KEIL、IARArduino程序特點軟件平臺Eclipse,相比ArduinoIDE、KEIL11Arduino核心庫函數(shù)和系統(tǒng)庫函數(shù)voidsetup()//初始化配置函數(shù),在main函數(shù)中首先被執(zhí)行,只執(zhí)行一次voidloop()//無限循環(huán)函數(shù)delay()//延遲函數(shù)……Arduino核心庫函數(shù)和系統(tǒng)庫函數(shù)voidsetup()12Zigduino基礎(chǔ)實驗通用數(shù)字IO口點亮LED串口的使用ADC口光敏傳感器控制外部中斷點亮LED定時器的使用1602型LCD的應(yīng)用Zigduino基礎(chǔ)實驗通用數(shù)字IO口點亮LED13備料led電阻若干:150Ohm、10KOhm、2KOhm光敏電阻面包線按鍵開關(guān)備料led14常用傳感器驅(qū)動開發(fā)和應(yīng)用DHT11:溫濕度傳感器ADXL345:三軸加速度傳感器BH1750FVI:光照傳感器DS18B20:溫度傳感器常用傳感器驅(qū)動開發(fā)和應(yīng)用DHT11:溫濕度傳感器15單片機IO接口I/O口是輸入/輸出的簡寫,I/O口分數(shù)字I/O口和外設(shè)I/O口兩種。外設(shè)I/O口有ADC接口,TIMER接口(時鐘),中斷接口,I2C接口,串口等等。一個芯片的I/O口引腳是用于數(shù)字I/O口還是外設(shè)I/O口,可以通過寄存器配置進行選擇。單片機IO接口I/O口是輸入/輸出的簡寫,I/O口分數(shù)字I/16IO口實驗一第一步:
連接電路
數(shù)字IO口實驗一IO口實驗一第一步:數(shù)字IO口實驗一17IO口實驗一第二步:寫程序,新建名字叫IO1的工程項目;在setup()函數(shù)里面寫入:在loop()函數(shù)里面寫入:pinMode(3,OUTPUT);digitalWrite(3,HIGH);delay(1000);//延時1000msdigitalWrite(3,LOW);delay(1000);怎么理解delay()函數(shù)?就好像一個要走路的人在原地踏步!MCU一旦上電,根本停不下來IO口實驗一第二步:寫程序,新建名字叫IO1的工程項目;pi18Arduino包含的以下數(shù)字IO口庫函數(shù)voidpinMode(uint8_tpin,uint8_tmode):設(shè)置管腳的方向,pin表示管腳的序號,mode表示方向,只能取INPUT,OUTPUT兩個值,如下面的代碼把管腳10設(shè)成輸入:pinMode(10,INPUT);voiddigitalWrite(uint8_tpin,uint8_tval):設(shè)置管腳的數(shù)字電平,pin表示管腳的序號,value表示電平,只能取HIGH,LOW兩個值,如下面的代碼把管腳5設(shè)成高電平:digitalWrite(5,HIGH);intdigitalRead(uint8_tpin):返回管腳的數(shù)字電平,pin表示管腳的序號,返回值只能是HIGH或LOW,如下面的代碼將返回管腳7的數(shù)字電平:val=digitalRead(7);Arduino包含的以下數(shù)字IO口庫函數(shù)voidpinMo19IO口實驗二電路連接IO口實驗二電路連接20新建IO2工程項目下載程序后,LED紅燈亮了。然后你用黑色導(dǎo)線的另外一端插入到GND即地,此時就可以發(fā)現(xiàn)燈滅了,因為3號引腳讀取的電平是低電平。(默認情況下管腳輸入的讀取值是高電平)#include"io2.h"voidsetup(){pinMode(3,OUTPUT);//配置3號數(shù)字引腳為輸出模式pinMode(1,INPUT);//配置1號數(shù)字引腳為輸入模式}voidloop(){if(digitalRead(1))//讀取1號引腳的電平判斷是否為高電平digitalWrite(3,HIGH);//將3號引腳的電平設(shè)置為高電平else//否則digitalWrite(3,LOW);//將3號引腳的電平設(shè)置為低電平}新建IO2工程項目下載程序后,LED紅燈亮了。然后你用黑色導(dǎo)21總結(jié)數(shù)字IO口既可以是輸入,也可以是輸出。但是無論是輸入還是輸出,它是都是數(shù)字型的,要么是0(零電壓LOW),要么是1(電源電壓HIGH)。當它為高電平即電源電壓,它相當于電源正極,但是它的輸出電流受限于單片機IO口。為低電平時,相當于GND即地??偨Y(jié)數(shù)字IO口既可以是輸入,也可以是輸出。但是無論是輸入還是22(UART)串口:串行通信接口(UART)串口:串行通信接口23無線傳感網(wǎng)絡(luò)課件24無線傳感網(wǎng)絡(luò)課件25Zigduino里面
串口的英文單詞用Serial串口通信有兩個方向:發(fā)送和接收串口有一個參數(shù):波特率,(單位是bps)即數(shù)據(jù)通信的傳輸速率。常用波特率數(shù)值有(300、600、1200、2400、4800、9600、19200、38400、43000、56000、57600、115200bps)。通信的接收方需要設(shè)置與發(fā)送方一致的波特率才可以正確接收到數(shù)據(jù)。假定我們自己是單片機,單片機讀,是輸入;寫則是輸出。Zigduino里面
串口的英文單詞用Serial串口通信有26串口庫函數(shù)voidbegin(unsignedlongbaud):串口使能,并工作在數(shù)值為baud的波特率下,如下面的代碼啟動了UART,并工作在57600的波特率下:Serial.begin(57600);intavailable(void):返回串口緩沖區(qū)中有多少字節(jié)沒有讀取的數(shù)據(jù);intread(void):返回串口讀取到的當前數(shù)據(jù),同時從緩沖區(qū)中刪除此數(shù)據(jù);size_twrite(uint8_t):往串口寫入一個字節(jié);size_twrite(constchar*str):往串口寫入一個字符串;size_twrite(constuint8_t*buffer,size_tsize):往串口寫入一個字節(jié)數(shù)組的前面的大小為size的部分;print(data):往串口寫入數(shù)據(jù),可以是數(shù)字型的也可以是字符串;print(data,encoding):往串口寫入格式化數(shù)值數(shù)據(jù),encoding可以是十進制(DEC),十六進制(HEX),八進制(OCT),二進制(BIN),字符(BYTE),如下面的輸出;Serial.print(75);//輸出"75"Serial.print(75,DEC);//輸出"75"Serial.print(75,HEX);//輸出"4B"Serial.print(75,OCT);//輸出"113"Serial.print(75,BIN);//輸出"1001011"Serial.print(75,BYTE);//輸出"K",75代表的字符println(data):和print(data)基本相同,不過在最后加上了回車換行。串口庫函數(shù)voidbegin(unsignedlong27串口實驗一:
Serial.print和Serial.write的區(qū)別inti=52;voidsetup(){Serial.begin(57600);}voidloop(){Serial.print(i);Serial.println();Serial.write(i);Serial.println();delay(1000);}Serial.print()打印的是原來的內(nèi)容;而Serial.write()打印出來的是ASCII碼值串口實驗一:
Serial.print和Serial.wri28串口實驗二:
實現(xiàn)單片機與計算機之間的串口通信臺式機也有串口,所以可以與單片機通信只需要usb線連接臺式機和單片機開發(fā)板就可以了用到AcessPort串口軟件這里程序的功能是將計算機發(fā)給單片機的數(shù)據(jù)發(fā)回給計算機串口實驗二:
實現(xiàn)單片機與計算機之間的串口通信臺式機也有串口29
思考:為什么這里Serial.write沒有打印出ASCII碼值?voidsetup(){Serial.begin(57600);}voidloop(){while(Serial.available())Serial.write(Serial.read());delay(1000);}
思考:為什么這里Serial.write沒有打印出ASCI30ADCADC,英文解釋為Analog-DigitConvert(模擬數(shù)字轉(zhuǎn)換),簡單意思是單片機可以讀取外部的模擬電壓值轉(zhuǎn)化成數(shù)字值。ADCADC,英文解釋為Analog-DigitConve31Zigduino一共有6個AD管腳即模擬輸入管腳為了實現(xiàn)Zigduino管腳的模擬輸入,我們需要了解最基本的AD采樣。所謂AD采樣就是把模擬信號轉(zhuǎn)換成數(shù)字信號,在轉(zhuǎn)化的過程中需要關(guān)注采樣精度、采樣頻率和采樣范圍,對于Zigduino使用的Atmega128RFA1來說,它內(nèi)置的是10位的AD采樣精度,即采集出來的數(shù)值范圍是0-1023,采樣頻率則和應(yīng)用程序相關(guān),但最快不能超過MCU的限制,采樣范圍表示的是允許的模擬信號的幅度。對于Atmega128RFA1來說,用戶可以選擇1.5V,1.6V,1.8V或任意外部輸入的在0-1.8V之間的電壓作為參考電壓,也是采樣的最高電壓,iDuino默認的采樣范圍是0-1.8V,用戶可以通過下面的函數(shù)來改變參考電壓:voidanalogReference(uint8_tmode)其中mode可選列表如下:INTERNAL1V5:1.5V內(nèi)部參考電壓;INTERNAL1V6:1.6V內(nèi)部參考電壓;DEFAULT:默認內(nèi)部1.8V參考電壓;EXTERNAL:通過AREF管腳輸入的外部參考電壓。Zigduino一共有6個AD管腳即模擬輸入管腳為了實現(xiàn)Zi32intanalogRead(uint8_tpin):返回管腳的模擬電平,即AD采樣的結(jié)果,只能用在模擬管腳上,pin表示管腳的序號,返回值的范圍是0-1023,如下面的代碼將返回管腳A0的采樣結(jié)果:val=analogRead(A0);intanalogRead(uint8_tpin):返回33在實際應(yīng)用中,對于某些溫敏、光敏、壓敏、熱敏傳感器來說,為了測出它們的電阻變化,必要的分壓電路也是必須的,下面是一個簡單的光敏測量電路:IO口D1拉高,相當于電源。為了使信號的輸入符合Zigduino的電壓采樣范圍,對信號進行必要的分壓是必須的。在實際應(yīng)用中,對于某些溫敏、光敏、壓敏、熱敏傳感器來說,為了34ADC實驗一:自動光感l(wèi)ed燈用到的元器件:電阻470歐姆一個,(左)用于限流。電阻2K歐姆一個,(右)用于分壓。10k光敏電阻一個Led一個導(dǎo)線5根ADC實驗一:自動光感l(wèi)ed燈用到的元器件:35程序intsensevalue=0;voidsetup(){pinMode(0,OUTPUT);pinMode(1,OUTPUT);Serial.begin(38400);}voidloop(){digitalWrite(0,HIGH);//供電sensevalue=analogRead(A1);//讀取ADC0口模擬值if(sensevalue>500)digitalWrite(1,HIGH);//當光線暗時,點亮led燈elsedigitalWrite(1,LOW);Serial.print(sensevalue);delay(1000);}串口可以調(diào)試你的程序,很方便程序intsensevalue=0;串口可以調(diào)試你的程序,36中斷Interrupt(INT)什么是中斷中斷的類型中斷三要素中斷作用中斷Interrupt(INT)什么是中斷37什么是中斷單片機暫停正在運行的程序,保存現(xiàn)場,自動轉(zhuǎn)去執(zhí)行相應(yīng)的程序,執(zhí)行完以后再返回斷點繼續(xù)執(zhí)行被打斷的程序。這個過程就叫中斷。什么是中斷單片機暫停正在運行的程序,保存現(xiàn)場,自動38中斷的類型可分為:內(nèi)部中斷和外部中斷內(nèi)部中斷有:內(nèi)部定時器中斷、串口中斷、AD中斷、SPI中斷等。這些設(shè)備或者接口都集成在單片機內(nèi)部。外部中斷有:外部信號引起的中斷中斷的類型可分為:內(nèi)部中斷和外部中斷39中斷三要素中斷源:中斷產(chǎn)生的來源。中斷方式(外部中斷):高電平、低電平、上升沿、下降沿等。中斷服務(wù)程序:中斷產(chǎn)生以后,單片機去執(zhí)行的程序。中斷三要素中斷源:中斷產(chǎn)生的來源。40中斷如何使用三個步驟:1.設(shè)置需要開啟的中斷源。2.設(shè)置中斷方式。3.編寫中斷服務(wù)程序。中斷如何使用三個步驟:41中斷的作用中斷使得單片機實現(xiàn)系統(tǒng)調(diào)度,實時響應(yīng)。使用中斷,可以實現(xiàn)定時報警、外部中斷報警等功能。中斷的作用中斷使得單片機實現(xiàn)系統(tǒng)調(diào)度,實時響應(yīng)。42中斷庫函數(shù)voidattachInterrupt(uint8_tinterruptNum,void(*userFunc)(void),intmode)其中的第一個參數(shù)表示Arduino中的中斷號,第二個參數(shù)是中斷處理函數(shù)名稱(需要用戶定義),第三個參數(shù)是中斷模式,就是什么情況下觸發(fā)中斷,一共有四種模式:LOW表示低電平觸發(fā),CHANGE表示電平改變時觸發(fā),RISING表示電平由低變高時觸發(fā),F(xiàn)ALLING表示電平由高變低時觸發(fā)。voiddetachInterrupt(uint8_tinterruptNum)有些中斷是會持續(xù)產(chǎn)生的,如低電平產(chǎn)生的中斷,此時如果不加以控制,系統(tǒng)會陷入持續(xù)的中斷處理中,為此在處理中斷函數(shù)時首先需要把中斷禁止掉,detachInterrupt就是用于完成此目標,后面的唯一參數(shù)就是中斷號。中斷庫函數(shù)voidattachInterrupt(uint43外部中斷的中斷號與管腳號對照表中斷號INT0INT1INT2INT3INT4INT5INT6管腳號632122012外部中斷的中斷號與管腳號對照表中斷號INT0INT1INT244中斷實驗用一個按鍵開關(guān)連接到一個外部中斷口,當中斷觸發(fā)時就改變一次led燈的狀態(tài)中斷實驗用一個按鍵開關(guān)連接到一個外部中斷口,當中斷觸發(fā)時就改45代碼voidmyhanlder()//中斷服務(wù)程序{detachInterrupt(1);//關(guān)中斷digitalWrite(0,!digitalRead(0));//將led燈的狀態(tài)改變一次}voidsetup(){pinMode(0,OUTPUT);pinMode(3,INPUT_PULLUP);//將中斷口上拉}voidloop(){attachInterrupt(1,myhanlder,FALLING);//開中斷,設(shè)置中斷觸發(fā)方式為下降沿方式delay(1000);}attachInterrupt(1,myhanlder,FALLING)表示的是當由下降沿觸發(fā)的中斷1產(chǎn)生時系統(tǒng)會自動去執(zhí)行myhanlder函數(shù),從而讓綠燈的狀態(tài)發(fā)生變化。代碼voidmyhanlder()//中斷服務(wù)程序att46擴展實驗將INT1的中斷觸發(fā)方式設(shè)置成低電平觸發(fā),并實現(xiàn)當觸發(fā)中斷時打印出“interrupttriggered!”擴展實驗將INT1的中斷觸發(fā)方式設(shè)置成低電平觸發(fā),并實現(xiàn)當觸47總計外部中斷總共有8個,它們可以組合起來使用。總計外部中斷總共有8個,它們可以組合起來使用。48定時/計數(shù)器定時器/計數(shù)器(Timer/Counter,TC)是一種計數(shù)裝置,若計數(shù)內(nèi)部的時鐘脈沖,可視為定時器;若計數(shù)外部的脈沖,可視為計數(shù)器。實質(zhì)都是計數(shù)。定時/計數(shù)器定時器/計數(shù)器(Timer/Counter,TC49定時器(Timer)定時功能也是通過計數(shù)器的計數(shù)來實現(xiàn)的。不過此時的計數(shù)脈沖來自單片機的內(nèi)部。每個機器周期產(chǎn)生一個計數(shù)脈沖,也就是每個機器周期計數(shù)器加1。定時器(Timer)定時功能也是通過計數(shù)器的計數(shù)來實現(xiàn)的。不50定時器中斷定時器的應(yīng)用之一:設(shè)置內(nèi)部定時器中斷原理:專門有一個寄存器(8位或12位或16位)存放計數(shù),每個機器周期計數(shù)器加1,加滿就產(chǎn)生計數(shù)溢出中斷。定時器中斷定時器的應(yīng)用之一:設(shè)置內(nèi)部定時器中斷51設(shè)置一個一秒一次的定時器中斷,改變一次led的狀態(tài)。定時器中斷設(shè)置一個一秒一次的定時器中斷,改變一次led的狀態(tài)。定時器中52TimerOne實例#include"TimerOne.h"voidcallback(){digitalWrite(3,!digitalRead(3));}voidsetup(){pinMode(3,OUTPUT);Timer1.initialize(500000);//初始化定時器1,設(shè)置中斷周期為半秒Timer1.attachInterrupt(callback);//設(shè)置一個定時器溢出中斷服務(wù)程序}voidloop(){//yourprogramhere...}TimerOne實例#include"TimerOne.h53對比用delay()對比用delay()54LCD1602工業(yè)字符型液晶,能夠同時顯示16x02即32個字符。(16列2行)1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它由若干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因為如此所以它不能很好地顯示圖形(用自定義CGRAM,顯示效果也不好)。市面上字符液晶大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。LCD1602工業(yè)字符型液晶,能夠同時顯示16x02即32個55引腳1602采用標準的16腳接口,其中:第1腳:GND為電源地第2腳:VCC接5V電源正極第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。第4腳:RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。第6腳:E(或EN)端為使能(enable)端,高電平(1)時讀取信息,負跳變時執(zhí)行指令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)端。第15~16腳:空腳或背燈電源。15腳背光正極,16腳背光負極。引腳1602采用標準的16腳接口,其中:56字符集1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯數(shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”。字符集1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)57寫0x38設(shè)置為8-bit接口...寫0x06輸入方式設(shè)定寫0x0E開啟顯示屏寫0x01屏幕清空寫0x80設(shè)置顯示位置寫0x01屏幕清空寫0x8x或0xCx寫數(shù)據(jù)寫0x01或0x02屏幕清空,光標位置歸零或者新文字替換老文字寫數(shù)據(jù)寫0x38寫0x06寫0x0E寫0x01寫0x80寫0x0158無線傳感網(wǎng)絡(luò)課件59ZIGBEE無線通信原理短距離、低功耗、低速率的無線組網(wǎng)通信技術(shù)可使用2.4~2.485G之間的16個頻段通信zigbeewifi頻段2.4G、900M等2.4G、5G等距離(最遠)300m20m數(shù)據(jù)通信速率250k10M/100MZIGBEE無線通信原理短距離、低功耗、低速率的無線組網(wǎng)通信60無線通信數(shù)據(jù)包格式包頭包類型目的地址源地址有效數(shù)據(jù)包結(jié)束1字節(jié)1字節(jié)4字節(jié)4字節(jié)1-116字節(jié)1字節(jié)只有在同一頻段的無線節(jié)點之間才能進行數(shù)據(jù)收發(fā)。無線通信數(shù)據(jù)包格式包頭包類型目的地址源地址有效數(shù)據(jù)包結(jié)束1字61ZigduinoRadio庫使用說明1.初始化ZigduinoRadio庫voidbegin(intchan);以上函數(shù)必須在使用ZigduinoRadio之前調(diào)用。chan表示通訊頻段,取值范圍是11-26ZigduinoRadio庫使用說明1.初始化Zigdui62ZigduinoRadio庫使用說明2.發(fā)送數(shù)據(jù)包
發(fā)送數(shù)據(jù)有一般模式和精簡模式兩種,不管在何種模式下,都是以數(shù)據(jù)包為最小傳輸單位。在復(fù)雜模式下,發(fā)送數(shù)據(jù)需要三步:
開始發(fā)送voidbeginTransmission();voidbeginTransmission(uint16_tdestaddress);
寫入數(shù)據(jù)前,用戶必須調(diào)用beginTransmission方法,傳入?yún)?shù)表示目標地址,如果沒有參數(shù),則表示發(fā)送廣播數(shù)據(jù)。寫入要發(fā)送的數(shù)據(jù)voidwrite(uint8_tc);voidwrite(char*str);voidwrite(uint8_t*arr,uint8_tlen);
在一個數(shù)據(jù)包內(nèi),用戶可以寫入多種數(shù)據(jù),但802.15.4/c標準規(guī)定一個數(shù)據(jù)包的最大長度為128,再加上包頭9個字節(jié)和包尾2個字節(jié)的數(shù)據(jù),實際的有效數(shù)據(jù)最大為128-9-2=116。結(jié)束發(fā)送voidendTransmission();voidcancelTransmission();用戶可以調(diào)用endTransmission真正發(fā)送數(shù)據(jù),也可以通過cancelTransmission取消數(shù)據(jù)發(fā)送。在精簡模式下,用戶只需調(diào)用以下方法即可:VoidsendFrame(uint16_tdestaddress,boolneedack,uint8_t*frm,uint8_tlen);其參數(shù)含義為目標地址,是否要求ack,數(shù)據(jù)內(nèi)容和數(shù)據(jù)長度。ZigduinoRadio庫使用說明2.發(fā)送數(shù)據(jù)包633.接收數(shù)據(jù)包ZigduinoRadio自帶的接收處理方式和串口是一樣的,用緩沖區(qū)先把數(shù)據(jù)保存下來,等待用戶處理,此時,用戶可以使用的函數(shù)如下:int8_tavailable();返回緩沖區(qū)中有多少有效數(shù)據(jù),不包括包頭包尾。int16_tread();讀取當前數(shù)據(jù),并從緩沖區(qū)中刪除此數(shù)據(jù),同樣,它實際的數(shù)據(jù)類型是uint8_t,如果返回值是-1則表示緩沖區(qū)中已經(jīng)沒有數(shù)據(jù)。3.接收數(shù)據(jù)包64廣播發(fā)送方發(fā)出的數(shù)據(jù)包,目的地址為0xFFFF。接收方只要接收到廣播數(shù)據(jù)包,都將收下來。廣播發(fā)送方發(fā)出的數(shù)據(jù)包,目的地址為0xFFFF。65點對點收發(fā)實驗一一方發(fā)送:每秒發(fā)送一次字符'a'一次一方接收:接收發(fā)送過來的'a',并通過串口打印出來。點對點收發(fā)實驗一一方發(fā)送:每秒發(fā)送一次字符'a'一次66廣播收發(fā)實驗二一方發(fā)送,發(fā)送的內(nèi)容是串口收到的數(shù)據(jù)一方接收,將發(fā)送的數(shù)據(jù)通過串口打印出來廣播收發(fā)實驗二一方發(fā)送,發(fā)送的內(nèi)容是串口收到的數(shù)據(jù)67廣播收發(fā)實驗三一方發(fā)送DHT11采集到的溫濕度數(shù)據(jù),5秒一次。一方接收,并通過串口打印出來,并在LCD1602或者四位數(shù)碼管上顯示。廣播收發(fā)實驗三一方發(fā)送DHT11采集到的溫濕度數(shù)據(jù),5秒一次68廣播收發(fā)實驗四一方采集模擬光敏電阻,當光線暗時將無線發(fā)命令給另一方使其亮燈。廣播收發(fā)實驗四一方采集模擬光敏電阻,當光線暗時將無線發(fā)命令給69無線傳感網(wǎng)絡(luò)(WSN)無線傳感網(wǎng)絡(luò)(WSN)70無線傳感網(wǎng)絡(luò)關(guān)鍵詞英文:WirelessSensorsNetworking傳感無線網(wǎng)絡(luò)無線傳感網(wǎng)絡(luò)關(guān)鍵詞英文:WirelessSensorsN71概念無線傳感器網(wǎng)絡(luò)是一種分布式傳感網(wǎng)絡(luò),它的末梢是可以感知和檢查外部世界的傳感器。WSN中的傳感器通過無線方式通信,因此網(wǎng)絡(luò)設(shè)置靈活,設(shè)備位置可以隨時更改,還可以跟互聯(lián)網(wǎng)進行有線或無線方式的連接。通過無線通信方式形成的一個多跳自組織網(wǎng)絡(luò)。概念無線傳感器網(wǎng)絡(luò)是一種分布式傳感網(wǎng)絡(luò),它的末梢是可以感知和72無線傳感網(wǎng)絡(luò)課件73課程內(nèi)容傳感技術(shù)應(yīng)用無線傳感網(wǎng)絡(luò)通信基礎(chǔ)無線傳感網(wǎng)絡(luò)應(yīng)用課程內(nèi)容傳感技術(shù)應(yīng)用74考核辦法平時成績:20%期末大作業(yè):80%考核辦法平時成績:20%75Zigduino開發(fā)平臺Arduino體系優(yōu)點:易上手,可實現(xiàn)快速應(yīng)用單片機開發(fā)實質(zhì):配置寄存器Zigduino開發(fā)平臺Arduino體系76硬件平臺硬件平臺77無線傳感網(wǎng)絡(luò)課件78無線傳感網(wǎng)絡(luò)課件79軟件平臺Eclipse,相比ArduinoIDE、KEIL、IARArduino程序特點軟件平臺Eclipse,相比ArduinoIDE、KEIL80Arduino核心庫函數(shù)和系統(tǒng)庫函數(shù)voidsetup()//初始化配置函數(shù),在main函數(shù)中首先被執(zhí)行,只執(zhí)行一次voidloop()//無限循環(huán)函數(shù)delay()//延遲函數(shù)……Arduino核心庫函數(shù)和系統(tǒng)庫函數(shù)voidsetup()81Zigduino基礎(chǔ)實驗通用數(shù)字IO口點亮LED串口的使用ADC口光敏傳感器控制外部中斷點亮LED定時器的使用1602型LCD的應(yīng)用Zigduino基礎(chǔ)實驗通用數(shù)字IO口點亮LED82備料led電阻若干:150Ohm、10KOhm、2KOhm光敏電阻面包線按鍵開關(guān)備料led83常用傳感器驅(qū)動開發(fā)和應(yīng)用DHT11:溫濕度傳感器ADXL345:三軸加速度傳感器BH1750FVI:光照傳感器DS18B20:溫度傳感器常用傳感器驅(qū)動開發(fā)和應(yīng)用DHT11:溫濕度傳感器84單片機IO接口I/O口是輸入/輸出的簡寫,I/O口分數(shù)字I/O口和外設(shè)I/O口兩種。外設(shè)I/O口有ADC接口,TIMER接口(時鐘),中斷接口,I2C接口,串口等等。一個芯片的I/O口引腳是用于數(shù)字I/O口還是外設(shè)I/O口,可以通過寄存器配置進行選擇。單片機IO接口I/O口是輸入/輸出的簡寫,I/O口分數(shù)字I/85IO口實驗一第一步:
連接電路
數(shù)字IO口實驗一IO口實驗一第一步:數(shù)字IO口實驗一86IO口實驗一第二步:寫程序,新建名字叫IO1的工程項目;在setup()函數(shù)里面寫入:在loop()函數(shù)里面寫入:pinMode(3,OUTPUT);digitalWrite(3,HIGH);delay(1000);//延時1000msdigitalWrite(3,LOW);delay(1000);怎么理解delay()函數(shù)?就好像一個要走路的人在原地踏步!MCU一旦上電,根本停不下來IO口實驗一第二步:寫程序,新建名字叫IO1的工程項目;pi87Arduino包含的以下數(shù)字IO口庫函數(shù)voidpinMode(uint8_tpin,uint8_tmode):設(shè)置管腳的方向,pin表示管腳的序號,mode表示方向,只能取INPUT,OUTPUT兩個值,如下面的代碼把管腳10設(shè)成輸入:pinMode(10,INPUT);voiddigitalWrite(uint8_tpin,uint8_tval):設(shè)置管腳的數(shù)字電平,pin表示管腳的序號,value表示電平,只能取HIGH,LOW兩個值,如下面的代碼把管腳5設(shè)成高電平:digitalWrite(5,HIGH);intdigitalRead(uint8_tpin):返回管腳的數(shù)字電平,pin表示管腳的序號,返回值只能是HIGH或LOW,如下面的代碼將返回管腳7的數(shù)字電平:val=digitalRead(7);Arduino包含的以下數(shù)字IO口庫函數(shù)voidpinMo88IO口實驗二電路連接IO口實驗二電路連接89新建IO2工程項目下載程序后,LED紅燈亮了。然后你用黑色導(dǎo)線的另外一端插入到GND即地,此時就可以發(fā)現(xiàn)燈滅了,因為3號引腳讀取的電平是低電平。(默認情況下管腳輸入的讀取值是高電平)#include"io2.h"voidsetup(){pinMode(3,OUTPUT);//配置3號數(shù)字引腳為輸出模式pinMode(1,INPUT);//配置1號數(shù)字引腳為輸入模式}voidloop(){if(digitalRead(1))//讀取1號引腳的電平判斷是否為高電平digitalWrite(3,HIGH);//將3號引腳的電平設(shè)置為高電平else//否則digitalWrite(3,LOW);//將3號引腳的電平設(shè)置為低電平}新建IO2工程項目下載程序后,LED紅燈亮了。然后你用黑色導(dǎo)90總結(jié)數(shù)字IO口既可以是輸入,也可以是輸出。但是無論是輸入還是輸出,它是都是數(shù)字型的,要么是0(零電壓LOW),要么是1(電源電壓HIGH)。當它為高電平即電源電壓,它相當于電源正極,但是它的輸出電流受限于單片機IO口。為低電平時,相當于GND即地??偨Y(jié)數(shù)字IO口既可以是輸入,也可以是輸出。但是無論是輸入還是91(UART)串口:串行通信接口(UART)串口:串行通信接口92無線傳感網(wǎng)絡(luò)課件93無線傳感網(wǎng)絡(luò)課件94Zigduino里面
串口的英文單詞用Serial串口通信有兩個方向:發(fā)送和接收串口有一個參數(shù):波特率,(單位是bps)即數(shù)據(jù)通信的傳輸速率。常用波特率數(shù)值有(300、600、1200、2400、4800、9600、19200、38400、43000、56000、57600、115200bps)。通信的接收方需要設(shè)置與發(fā)送方一致的波特率才可以正確接收到數(shù)據(jù)。假定我們自己是單片機,單片機讀,是輸入;寫則是輸出。Zigduino里面
串口的英文單詞用Serial串口通信有95串口庫函數(shù)voidbegin(unsignedlongbaud):串口使能,并工作在數(shù)值為baud的波特率下,如下面的代碼啟動了UART,并工作在57600的波特率下:Serial.begin(57600);intavailable(void):返回串口緩沖區(qū)中有多少字節(jié)沒有讀取的數(shù)據(jù);intread(void):返回串口讀取到的當前數(shù)據(jù),同時從緩沖區(qū)中刪除此數(shù)據(jù);size_twrite(uint8_t):往串口寫入一個字節(jié);size_twrite(constchar*str):往串口寫入一個字符串;size_twrite(constuint8_t*buffer,size_tsize):往串口寫入一個字節(jié)數(shù)組的前面的大小為size的部分;print(data):往串口寫入數(shù)據(jù),可以是數(shù)字型的也可以是字符串;print(data,encoding):往串口寫入格式化數(shù)值數(shù)據(jù),encoding可以是十進制(DEC),十六進制(HEX),八進制(OCT),二進制(BIN),字符(BYTE),如下面的輸出;Serial.print(75);//輸出"75"Serial.print(75,DEC);//輸出"75"Serial.print(75,HEX);//輸出"4B"Serial.print(75,OCT);//輸出"113"Serial.print(75,BIN);//輸出"1001011"Serial.print(75,BYTE);//輸出"K",75代表的字符println(data):和print(data)基本相同,不過在最后加上了回車換行。串口庫函數(shù)voidbegin(unsignedlong96串口實驗一:
Serial.print和Serial.write的區(qū)別inti=52;voidsetup(){Serial.begin(57600);}voidloop(){Serial.print(i);Serial.println();Serial.write(i);Serial.println();delay(1000);}Serial.print()打印的是原來的內(nèi)容;而Serial.write()打印出來的是ASCII碼值串口實驗一:
Serial.print和Serial.wri97串口實驗二:
實現(xiàn)單片機與計算機之間的串口通信臺式機也有串口,所以可以與單片機通信只需要usb線連接臺式機和單片機開發(fā)板就可以了用到AcessPort串口軟件這里程序的功能是將計算機發(fā)給單片機的數(shù)據(jù)發(fā)回給計算機串口實驗二:
實現(xiàn)單片機與計算機之間的串口通信臺式機也有串口98
思考:為什么這里Serial.write沒有打印出ASCII碼值?voidsetup(){Serial.begin(57600);}voidloop(){while(Serial.available())Serial.write(Serial.read());delay(1000);}
思考:為什么這里Serial.write沒有打印出ASCI99ADCADC,英文解釋為Analog-DigitConvert(模擬數(shù)字轉(zhuǎn)換),簡單意思是單片機可以讀取外部的模擬電壓值轉(zhuǎn)化成數(shù)字值。ADCADC,英文解釋為Analog-DigitConve100Zigduino一共有6個AD管腳即模擬輸入管腳為了實現(xiàn)Zigduino管腳的模擬輸入,我們需要了解最基本的AD采樣。所謂AD采樣就是把模擬信號轉(zhuǎn)換成數(shù)字信號,在轉(zhuǎn)化的過程中需要關(guān)注采樣精度、采樣頻率和采樣范圍,對于Zigduino使用的Atmega128RFA1來說,它內(nèi)置的是10位的AD采樣精度,即采集出來的數(shù)值范圍是0-1023,采樣頻率則和應(yīng)用程序相關(guān),但最快不能超過MCU的限制,采樣范圍表示的是允許的模擬信號的幅度。對于Atmega128RFA1來說,用戶可以選擇1.5V,1.6V,1.8V或任意外部輸入的在0-1.8V之間的電壓作為參考電壓,也是采樣的最高電壓,iDuino默認的采樣范圍是0-1.8V,用戶可以通過下面的函數(shù)來改變參考電壓:voidanalogReference(uint8_tmode)其中mode可選列表如下:INTERNAL1V5:1.5V內(nèi)部參考電壓;INTERNAL1V6:1.6V內(nèi)部參考電壓;DEFAULT:默認內(nèi)部1.8V參考電壓;EXTERNAL:通過AREF管腳輸入的外部參考電壓。Zigduino一共有6個AD管腳即模擬輸入管腳為了實現(xiàn)Zi101intanalogRead(uint8_tpin):返回管腳的模擬電平,即AD采樣的結(jié)果,只能用在模擬管腳上,pin表示管腳的序號,返回值的范圍是0-1023,如下面的代碼將返回管腳A0的采樣結(jié)果:val=analogRead(A0);intanalogRead(uint8_tpin):返回102在實際應(yīng)用中,對于某些溫敏、光敏、壓敏、熱敏傳感器來說,為了測出它們的電阻變化,必要的分壓電路也是必須的,下面是一個簡單的光敏測量電路:IO口D1拉高,相當于電源。為了使信號的輸入符合Zigduino的電壓采樣范圍,對信號進行必要的分壓是必須的。在實際應(yīng)用中,對于某些溫敏、光敏、壓敏、熱敏傳感器來說,為了103ADC實驗一:自動光感l(wèi)ed燈用到的元器件:電阻470歐姆一個,(左)用于限流。電阻2K歐姆一個,(右)用于分壓。10k光敏電阻一個Led一個導(dǎo)線5根ADC實驗一:自動光感l(wèi)ed燈用到的元器件:104程序intsensevalue=0;voidsetup(){pinMode(0,OUTPUT);pinMode(1,OUTPUT);Serial.begin(38400);}voidloop(){digitalWrite(0,HIGH);//供電sensevalue=analogRead(A1);//讀取ADC0口模擬值if(sensevalue>500)digitalWrite(1,HIGH);//當光線暗時,點亮led燈elsedigitalWrite(1,LOW);Serial.print(sensevalue);delay(1000);}串口可以調(diào)試你的程序,很方便程序intsensevalue=0;串口可以調(diào)試你的程序,105中斷Interrupt(INT)什么是中斷中斷的類型中斷三要素中斷作用中斷Interrupt(INT)什么是中斷106什么是中斷單片機暫停正在運行的程序,保存現(xiàn)場,自動轉(zhuǎn)去執(zhí)行相應(yīng)的程序,執(zhí)行完以后再返回斷點繼續(xù)執(zhí)行被打斷的程序。這個過程就叫中斷。什么是中斷單片機暫停正在運行的程序,保存現(xiàn)場,自動107中斷的類型可分為:內(nèi)部中斷和外部中斷內(nèi)部中斷有:內(nèi)部定時器中斷、串口中斷、AD中斷、SPI中斷等。這些設(shè)備或者接口都集成在單片機內(nèi)部。外部中斷有:外部信號引起的中斷中斷的類型可分為:內(nèi)部中斷和外部中斷108中斷三要素中斷源:中斷產(chǎn)生的來源。中斷方式(外部中斷):高電平、低電平、上升沿、下降沿等。中斷服務(wù)程序:中斷產(chǎn)生以后,單片機去執(zhí)行的程序。中斷三要素中斷源:中斷產(chǎn)生的來源。109中斷如何使用三個步驟:1.設(shè)置需要開啟的中斷源。2.設(shè)置中斷方式。3.編寫中斷服務(wù)程序。中斷如何使用三個步驟:110中斷的作用中斷使得單片機實現(xiàn)系統(tǒng)調(diào)度,實時響應(yīng)。使用中斷,可以實現(xiàn)定時報警、外部中斷報警等功能。中斷的作用中斷使得單片機實現(xiàn)系統(tǒng)調(diào)度,實時響應(yīng)。111中斷庫函數(shù)voidattachInterrupt(uint8_tinterruptNum,void(*userFunc)(void),intmode)其中的第一個參數(shù)表示Arduino中的中斷號,第二個參數(shù)是中斷處理函數(shù)名稱(需要用戶定義),第三個參數(shù)是中斷模式,就是什么情況下觸發(fā)中斷,一共有四種模式:LOW表示低電平觸發(fā),CHANGE表示電平改變時觸發(fā),RISING表示電平由低變高時觸發(fā),F(xiàn)ALLING表示電平由高變低時觸發(fā)。voiddetachInterrupt(uint8_tinterruptNum)有些中斷是會持續(xù)產(chǎn)生的,如低電平產(chǎn)生的中斷,此時如果不加以控制,系統(tǒng)會陷入持續(xù)的中斷處理中,為此在處理中斷函數(shù)時首先需要把中斷禁止掉,detachInterrupt就是用于完成此目標,后面的唯一參數(shù)就是中斷號。中斷庫函數(shù)voidattachInterrupt(uint112外部中斷的中斷號與管腳號對照表中斷號INT0INT1INT2INT3INT4INT5INT6管腳號632122012外部中斷的中斷號與管腳號對照表中斷號INT0INT1INT2113中斷實驗用一個按鍵開關(guān)連接到一個外部中斷口,當中斷觸發(fā)時就改變一次led燈的狀態(tài)中斷實驗用一個按鍵開關(guān)連接到一個外部中斷口,當中斷觸發(fā)時就改114代碼voidmyhanlder()//中斷服務(wù)程序{detachInterrupt(1);//關(guān)中斷digitalWrite(0,!digitalRead(0));//將led燈的狀態(tài)改變一次}voidsetup(){pinMode(0,OUTPUT);pinMode(3,INPUT_PULLUP);//將中斷口上拉}voidloop(){attachInterrupt(1,myhanlder,FALLING);//開中斷,設(shè)置中斷觸發(fā)方式為下降沿方式delay(1000);}attachInterrupt(1,myhanlder,FALLING)表示的是當由下降沿觸發(fā)的中斷1產(chǎn)生時系統(tǒng)會自動去執(zhí)行myhanlder函數(shù),從而讓綠燈的狀態(tài)發(fā)生變化。代碼voidmyhanlder()//中斷服務(wù)程序att115擴展實驗將INT1的中斷觸發(fā)方式設(shè)置成低電平觸發(fā),并實現(xiàn)當觸發(fā)中斷時打印出“interrupttriggered!”擴展實驗將INT1的中斷觸發(fā)方式設(shè)置成低電平觸發(fā),并實現(xiàn)當觸116總計外部中斷總共有8個,它們可以組合起來使用??傆嬐獠恐袛嗫偣灿?個,它們可以組合起來使用。117定時/計數(shù)器定時器/計數(shù)器(Timer/Counter,TC)是一種計數(shù)裝置,若計數(shù)內(nèi)部的時鐘脈沖,可視為定時器;若計數(shù)外部的脈沖,可視為計數(shù)器。實質(zhì)都是計數(shù)。定時/計數(shù)器定時器/計數(shù)器(Timer/Counter,TC118定時器(Timer)定時功能也是通過計數(shù)器的計數(shù)來實現(xiàn)的。不過此時的計數(shù)脈沖來自單片機的內(nèi)部。每個機器周期產(chǎn)生一個計數(shù)脈沖,也就是每個機器周期計數(shù)器加1。定時器(Timer)定時功能也是通過計數(shù)器的計數(shù)來實現(xiàn)的。不119定時器中斷定時器的應(yīng)用之一:設(shè)置內(nèi)部定時器中斷原理:專門有一個寄存器(8位或12位或16位)存放計數(shù),每個機器周期計數(shù)器加1,加滿就產(chǎn)生計數(shù)溢出中斷。定時器中斷定時器的應(yīng)用之一:設(shè)置內(nèi)部定時器中斷120設(shè)置一個一秒一次的定時器中斷,改變一次led的狀態(tài)。定時器中斷設(shè)置一個一秒一次的定時器中斷,改變一次led的狀態(tài)。定時器中121TimerOne實例#include"TimerOne.h"voidcallback(){digitalWrite(3,!digitalRead(3));}voidsetup(){pinMode(3,OUTPUT);Timer1.initialize(500000);//初始化定時器1,設(shè)置中斷周期為半秒Timer1.attachInterrupt(callback);//設(shè)置一個定時器溢出中斷服務(wù)程序}voidloop(){//yourprogramhere...}TimerOne實例#include"TimerOne.h122對比用delay()對比用delay()123LCD1602工業(yè)字符型液晶,能夠同時顯示16x02即32個字符。(16列2行)1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它由若干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因為如此所以它不能很好地顯示圖形(用自定義CGRAM,顯示效果也不好)。市面上字符液晶大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。LCD1602工業(yè)字符型液晶,能夠同時顯示16x02即32個124引腳1602采用標準的16腳接口,其中:第1腳:GND為電源地第2腳:VCC接5V電源正極第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。第4腳:RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。第6腳:E(或EN)端為使能(enable)端,高電平(1)時讀取信息,負跳變時執(zhí)行指令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)端。第15~16腳:空腳或背燈電源。15腳背光正極,16腳背光負極。引腳1602采用標準的16腳接口,其中:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024幼兒園門衛(wèi)消防應(yīng)急處理聘用合同范本3篇
- 2024年軟裝飾品采購合作合同樣本版B版
- 2024年跨區(qū)域能源供應(yīng)協(xié)議
- 2024年貨車司機就業(yè)協(xié)議
- 2024某網(wǎng)絡(luò)公司與某廣告公司之間關(guān)于網(wǎng)絡(luò)推廣服務(wù)的合同
- 2024年高端醫(yī)療設(shè)備采購與技術(shù)支持合同
- 2024年購房委托代理協(xié)議
- 2024電子產(chǎn)品模具加工與質(zhì)量保證合同
- 2024年離異后財產(chǎn)處置協(xié)議:雙方協(xié)商達成
- 2025年度智能溫室大棚承包經(jīng)營合同范本3篇
- 2024年杭州市中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 經(jīng)濟職業(yè)技術(shù)學(xué)院教務(wù)教學(xué)管理制度匯編(2024年)
- 2024-2025學(xué)年人教版八年級數(shù)學(xué)上冊期末測試模擬試題(含答案)
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實踐指導(dǎo)材料之15:“6策劃-6.4創(chuàng)新組合”(雷澤佳編制-2025B0)
- 2025混凝土外加劑買賣合同
- 《環(huán)境感知技術(shù)》2024年課程標準(含課程思政設(shè)計)
- 2024年電影院項目可行性研究報告
- GB/T 45079-2024人工智能深度學(xué)習(xí)框架多硬件平臺適配技術(shù)規(guī)范
- 福建省廈門市2023-2024學(xué)年高二上學(xué)期期末考試質(zhì)量檢測化學(xué)試題 附答案
- 2024年安徽省銅陵市公開招聘警務(wù)輔助人員(輔警)筆試自考練習(xí)卷二含答案
- 假期師生讀書活動方案2024年
評論
0/150
提交評論