




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目目 錄錄第一章概述.2第一節 課題背景與意義.2第二節 課題設計要求與指標.2第二章系統方案選擇與確定.2第一節 硬件系統方案選擇.2一、 光照采集模塊方案選擇.2二、 無線傳輸模塊方案選擇.3三、 LCD 顯示模塊方案選擇.3四、 MCU 模塊方案選擇.3第二節 軟件系統方案選擇.4第三章系統硬件設計與實現.4第一節 采集端硬件設計.4一、光照采集模塊設計.5二、ATmega16L 最小系統模塊設計.6三、無線傳輸模塊設計.7第二節 終端硬件設計.8一、LCD 顯示模塊設計.8二、變壓電路設計.10第四章 系統軟件設計與實現.10第一節 程序整體設計.10第二節 光照采集與 AD 轉換程序
2、設計.11第三節 無線傳輸程序設計.12第四節 LCD 顯示程序設計.13第五節 程序下載.13第四章測試結果及討論.14第一節 LCD 顯示測試.14第二節 光照采集與顯示測試.15心得體會.17參考文獻.17附錄.18一、 器件清單.18二、工具清單. 18三、實物圖. 19四、程序代碼. 19第一章第一章概述概述第一節第一節 課題課題背景與意義背景與意義在現代農業和工業領域,經常需要對一些環境參數進行監測,以做出相應處理,確保設備和系統運行在最佳狀態。隨著科技的發展,對環境參數監測系統的要求也越來越高;因此基于傳感器、單片機和無線通信芯片設計出一種無線環境參數監測系統十分的重要。光照強度
3、是一個重要的環境參數,在工業和農業領域有著重要的應用,本課程設計介紹一種可以應用在許多領域的無線光照強度監測系統, 實現對環境中的光照強度進行實時采集處理、無線傳輸與顯示的功能。本文的主要研究工作集中在光照強度監測系統的設計上,通過 C 語言編程對單片機進行控制,使單片機控制光照采集傳感器、無線通信芯片和 LCD,實現系統功能。在本課題的基礎上可以設計完成一個高速、方便、穩定的環境數據監測采集和傳輸系統,可以廣泛應用于現代農業和工業領域。第二節第二節 課題設計要求與指標課題設計要求與指標本系統以環境光照強度為研究對象,應滿足的要求與指標為:1、監測點光照強度測量精確,精度大于 0.1lux;2
4、、將監測點的參數數據以無線方式發送至匯節點,并 LCD 顯示,要求分立元件實現的無線傳輸距離大于 20cm, 無線傳輸模塊實現的傳輸距離大于 1km;3、無線傳輸設備具有較強的抗干擾能力;4、設備具有較高的實時性;5、設備功耗功耗較低。第二章第二章系統方案選擇與確定系統方案選擇與確定第一節第一節硬件系統方案選擇硬件系統方案選擇系統硬件部分主要分為采集端和終端兩個部分,采集端應包含:光照采集模塊、MCU 模塊、無線傳輸模塊;終端應包括:MCU 模塊、無線傳輸模塊、LCD顯示模塊。針對各個模塊,分別有幾種不同的方案,本節將各個模塊的方案進行比較并確定最終方案。一、一、光照采集模塊方案選擇光照采集模
5、塊方案選擇系統要求采集環境內實時光照強度,并有一定的精確度,光照采集模塊有下列兩種方案:方案一:采用光敏電阻及相關的外圍電路,設計成的自制光照采集模塊,用于采集環境光照信息。使用光敏電阻的電路結構簡單、實時性高、成本低,但是一般的光敏電阻精確度較低,難以達到課題的要求。方案二: 采用光照傳感器Po188采集環境的光照信息。 使用光照傳感器Po188的電路結構簡單、實時性好、成本較低,靈敏度高、電流隨光照度增強呈線性變化,采集精確度高,符合課題要求。故采用該方案。二、二、無線傳輸模塊方案選擇無線傳輸模塊方案選擇系統要求采集端通過無線的方式將采集到的光照強度信息發送到終端, 終端也是采用無線的方式
6、接受采集端發來的數據。無線通信模塊方案有下列幾種方案:方案一:通過自制的無線通信模塊,但是由于是采用分立元件設計的自制無線通信模塊,工作不穩定,抗干擾性差,不滿足題目的要求,故不采用該方案。方案二:采用無線串口進行無線數據通信,具有接口簡單,只需利用單片機的串口就可建立無線通信,采用該模塊成本較高,雖然能夠滿足題目要求,但是考慮到系統的成本,不采用該方案。方案三:采用無線收發模塊 nRF24L01,該模塊采用 SPI 接口可以很方便的與 MCU 建立通信,發送與接受只需通過簡單的將控制指令通過 SPI 接口寫入nRF24L01 就可以發送和接收數據。 具有低的系統費用(低速微處理器也能進行高速
7、射頻發射),數據在空中停留時間短,抗干擾性高。故采用該方案。三、三、LCD 顯示模塊方案選擇顯示模塊方案選擇系統的終端需要實時地將環境光照強度信息顯示出來, 選擇 1602 液晶模塊,該模塊能夠顯示 32 個 ASCII 碼,并且電路結構簡單,能夠滿足系統的數據顯示要求,故采用液晶 1602 進行數據顯示。四、四、MCU 模塊方案選擇模塊方案選擇方案一:采用 51 系列單片機及其最小系統作為 MCU 模塊,其特點是結構簡單,使用的是 CISC 指令系統,馮諾依曼總線結構,系統功能易于實現,成本低,但是處理速度較慢,故不采用此方案。方案二:采用 AVR 系列單片機及其最小系統作為 MCU 模塊,
8、其特點是結構簡單,使用的是 RISC 指令系統,哈佛結構總線結構,處理速度較快,更好的滿足系統實時性的要求, 同時功耗較低。 故采用該方案, 我們選用的是 ATmega16L單片機。第第二二節節軟件系統方案選擇軟件系統方案選擇軟件系統采用模塊化設計思想, 分別使用 C 語言對對采集端和終端的 MCU進行編程。軟件系統的編譯環境采用的是采用 AVR 單片機 C 語言集成開發環境 codevision1.25.3,是 HP Info Tech 專為 AVR 系列單片機設計的一款低成本 C 語言編譯器。它產生的代碼非常嚴密,效率很高,不僅包括了 AVR 的 C 編譯器,同時也是一個集成 IDE 的
9、AVR 開發平臺,簡稱 CVAVR?;诟呒壵Z言開發單片機系統具有語言簡潔,可讀性強,可移植性好,可進行結構化和模塊化程序設計等優點。圖 2-1 為 code vision1.25.3 的開發環境。圖 2-1code vision1.25.3 的開發環境第三章第三章系統硬件設計與實現系統硬件設計與實現系統硬件部分主要分為采集端和終端兩個部分,采集端應包含:光照采集模塊、MCU 模塊、無線傳輸模塊;終端應包括:MCU 模塊、無線傳輸模塊、LCD顯示模塊。圖 3-1 為系統硬件設計框圖。圖 3-1系統硬件設計框圖第第一一節節采集端硬件設計采集端硬件設計終端LCD 顯示模塊(1602)MCU 模塊(
10、ATmega16L)無線傳輸模塊(nRF24L01)采集端光照采集模塊(Po188)MCU 模塊(ATmega16L)無線傳輸模塊(nRF24L01)采集端主要由光照采集模塊、MCU 模塊,即 ATmega16L 最小系統、以及無線傳輸模塊構成,采集端電路圖如圖 3-2 所示。圖 3-2 采集端硬件電路圖一、一、光照采集模塊設計光照采集模塊設計采集端的光照采集模塊的主要器件是光照傳感器 Po188。 Po188 是一個光電集成傳感器,典型入射波長為p=520nm,內置雙敏感元接收器,可見光范圍內高度敏感,輸出電流隨照度呈線性變化。Po188 的主要特性有:暗電流小,低照度響應,靈敏度高,電流隨
11、光照度增強呈線性變化;內置雙敏感元,自動衰減近紅外,光譜響應接近人眼函數曲線;內置微信號 CMOS 放大器、高精度電壓源和修正電路,輸出電流大,工作電壓范圍寬,溫度穩定性好;可選光學納米材料封裝,可見光透過,紫外線截止、近紅外相對衰減,增強了光學濾波效果;符合歐盟 RoHS 指令, 無鉛、無鎘等。光照采集模塊 Po188 連接電路圖如圖 3-3 所示, Po188 輸出特性曲線如圖 3-4所示。圖 3-3Po188 電路圖圖 3-4 Po188 輸出特性曲線二、二、ATmega16LATmega16L 最小系統模塊設計最小系統模塊設計采集端和終端的 MCU 模塊都由 ATmega16L 單片機
12、及其最小系統。ATmega16是基于增強的 AVR RISC 結構的低功耗 8 位 CMOS 微控制器。由于其先進的指令集以及單時鐘周期指令執行時間,ATmega16 的數據吞吐率高達 1MIPS/MHz,從而可以緩減系統在功耗和處理速度之間的矛盾。ATmega16L 最小系統主要由 ATmega16L 芯片、晶振電路、復位電路組成。ATmega16L 芯片的工作電壓 2.7v-5.5v,我們采用的是 3.3v 供電,由電源電路提供。在 ATmega16L 芯片的 XTAL1 和 XTAL2 之間加上 8M 的晶振,通過 30pf 電容接地為單片機提供工作時鐘。在 RESET 引腳加上低電平復
13、位的復位電路,一開始上電的時候是自動上電復位,后來工作過程中通過復位開關實現手動復位。ATmega16L 最小系統如圖 3-5 所示。圖 3-5 Atmega16L 最小系統三、三、無線傳輸模塊設計無線傳輸模塊設計無線傳輸模塊使用的主要芯片是nRF24L01,nRF24L01是一款工作在2.42.5GHz世界通用ISM頻段的單片無線收發器芯片。無線收發器包括:頻率發生器、增強型SchockBurst模式控制器、功率放大器、晶體振蕩器、調制器解調器。輸出功率頻道選擇和協議的設置可以通過SPI 接口進行設置。芯片電流消耗極低, 當工作在發射模式下發射功率為-6dBm 時電流消耗為9.0mA, 接收
14、模式時為12.3mA掉電模式和待機模式下電流消耗更低。支持六路通道的數據接收,工作電壓為1.9v3.6v。無線傳輸模塊示意圖如圖3-6所示。在實際電路中我們使用的是集成的nRF24L01模塊,如圖3-7所示。圖3-6nRF24L01與單片機連接示意圖圖3-7 nRF24L01集成模塊實物nRF24L01 集成模塊有 8 個引腳, 各個引腳的功能及與單片機的連接如表 3-1所示。引腳名稱引腳功能描述與 Atmega16L 連接1VSS電源接地(0V)2VDD電源電源(+3V)3CE數字輸入RX或TX模式選擇PB24CSN數字輸入SPI 片選信號PB15MOSI數字輸入從 SPI 數據輸入腳PB6
15、6MISO數字輸出從 SPI 數據輸出腳PB57SCK數字輸入SPI 時鐘PB78IRQ數字輸出可屏蔽中斷腳PD2表 3-1 nRF24L01 集成模塊引腳功能在系統工作時, 采集端單片機將光照傳感器采集到的光照強度信息處理后傳給采集端的無線傳輸模塊,采集端的無線模塊將 32 字節信息打包,通過無線傳輸協議發送, 終端的無線傳輸模塊接收, 傳給單片機, 通過相關處理, 顯示結果。第二節第二節終端硬件設計終端硬件設計終端主要由 LCD 顯示模塊、MCU 模塊,即 ATmega16L 最小系統、以及無線傳輸模塊構成,終端電路圖如圖 3-8 所示。圖 3-8 終端硬件電路圖終端中的 MCU 模塊,
16、ATmega16L 最小系統、 無線傳輸模塊的設計與采集端類似,故不再贅述,下面介紹一下終端中的 LCD 顯示模塊和變壓電路。一、一、LCD 顯示模塊設計顯示模塊設計終端中選用的是字符液晶顯示器 1602,工作電壓為 5V,兩行顯示,每行顯示 16 個字符,一共有 16 個引腳,1602 引腳功能如表 3-2 所示。引腳符號功能說明1VSS一般接地2VDD接電源(+5V)3V0液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產生“鬼影”,使用時可以通過一個 10K 的電位器調整對比度) 。4RSRS 為寄存器選擇,高電平 1 時選擇數據寄存器、低電平 0 時選
17、擇指令寄存器。5R/WR/W 為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。6EE(或 EN)端為使能(enable)端,下降沿使能。7DB0底 4 位三態、 雙向數據總線 0 位(最低位)8DB1底 4 位三態、 雙向數據總線 1 位9DB2底 4 位三態、 雙向數據總線 2 位10DB3底 4 位三態、 雙向數據總線 3 位11DB4高 4 位三態、 雙向數據總線 4 位12DB5高 4 位三態、 雙向數據總線 5 位13DB6高 4 位三態、 雙向數據總線 6 位14DB7高 4 位三態、 雙向數據總線 7 位 (最高位) (也是 busy flag)15BLA背光電
18、源正極16BLK背光 電源負極表 3-2 1602 引腳功能在 1602 的引腳中,714 DB0-DB7 八位數據總線,三態雙向。實際使用時,用的是 DB4-DB7 這四位數據線,這樣節省了 ATmega16L 的 I/O 資源。因為液晶引腳是與單片機 PA 口相連的, PA 口只有八位, 液晶 4、 5、 6 引腳分別接的 PA0、PA1、PA2,剩下的只有五個口,所以用四位數據線分兩次傳送來緩解接口的緊張。 1602 引腳示意圖如圖 3-9 所示, 1602 與 ATmega16L 引腳連接示意圖如圖 3-10所示。圖 3-9 1602 引腳示意圖圖 3-101602 與 ATmega1
19、6L 引腳連接二、變壓電路設計二、變壓電路設計變壓電路部分的主要功能是給無線傳輸模塊提供穩定的 3.3V 的電壓,使其正常工作,在采集端的電路中也有變壓電路,在這里一同介紹。系統使用的是 AMS1117 系列穩壓器。AMS1117 系列穩壓器有可調版與多種固定電壓版, 設計用于提供 1A 輸出電流且工作壓差可低至 1V。 在最大輸出電流時,AMS1117 器件的壓差保證最大不超過 1.3V,并隨負載電流的減小而逐漸降低。AMS1117 的片上微調把基準電壓調整到 1.5%的誤差以內, 而且電流限制也得到了調整,以盡量減少因穩壓器和電源電路超載而造成的壓力。AMS1117 電路圖如圖3-11 所
20、示。圖 3-11 AMS1117 電路圖第四章第四章系統軟件設計與實現系統軟件設計與實現第一節第一節 程序整體設計程序整體設計系統軟件部分主要是使用 C 語言對 ATmega6L 進行編程,使采集端的 MCU 能夠處理光照傳感器 Po188 傳遞來的模擬電流信號,將其轉換為數字信號;同時MCU 傳遞給無線傳輸傳輸模塊,將光照信息發送出去。在終端,無線傳輸模塊可以接收到采集端傳來的光照信息,傳遞給 MCU 進行處理,最終顯示在 LCD 上面。系統程序的整體流程就是這樣,下面分別給出采集端和終端的程序流程圖,采集端程序流程圖如圖 4-1 所示,終端程序流程圖如圖 4-2 所示。圖 4-1 采集端程
21、序流程圖圖 4-2 終端程序流程圖我們將重點介紹光照采集與 AD 轉換程序, 無線傳輸程序以及 LCD 顯示程序,并簡單說明一下程序下載的方法,詳細的程序代碼將在附錄中給出。第二節第二節 光照采集與光照采集與 AD 轉換程序設計轉換程序設計這部分程序要求將光照采集模塊采集到的電壓信號轉換成電流信號后經過函數轉換成光照強度單位勒克斯。 這里需要注意四個與數模轉換 ADC 相關的 I/O寄存器:ADC 多路復用器選擇寄存器 ADMUX、ADC 控制和狀態寄存器ADCSRA、ADC 數據寄存器 ADCL 和 ADCH,這些寄存器在數模轉換前都需要根據需求進行設置。光電函數關系即 Po188 特性曲線
22、在第二章第一節中有所介紹,可以參考圖3-4,下面給出本部分程序代碼。unsigned int read_adc(unsigned charadc_input)float adc_data;ADMUX=adc_input|(ADC_VREF_TYPE&0 xff);delay_us(10);ADCSRA|=0X40;while(ADCSRA&0 x10)=0);ADCSRA|=0X10;adc_data=ADCL;adc_data=adc_data+ADCH*256;adc_data=(adc_data*2560.0/1024.0)/1000.0;adc_data=adc_data/330.0*
23、1000;if(adc_data=2.0)adc_data=800.0+(adc_data-2.0)*666.7;if(adc_data=1.5&adc_data=1.1&(adc_data=0.5&(adc_data1.1)adc_data=100.0+(adc_data-0.5)*333.3;if(adc_data0.5)adc_data=adc_data*200.0;adc_data=adc_data*10.0;return adc_data;第三節第三節 無線傳輸程序設計無線傳輸程序設計MCU 與 nRF24L01 是通過 SPI 接口進行通信的,SPI 的接口的讀時序如圖4-3 所示
24、,寫時序如圖 4-4 所示,圖中 Cn-SPI 指令位,Sn-狀態寄存器位,Dn-數據位(注:由低字節到高字節,每字節中高位在前)。圖 4-3 SPI 寫時序圖 4-4SPI 讀時序在配置nRF24L01的寄存器之前一定要確保nRF24L01進入待機模式或掉電模式。nRF24L01 在接受模式的初始化函數為:void RX_Mode(void)nRF24L01_CE = 0;delay_us(130);write_register_onebyte(EN_AA,0 x00);/ Enable Auto.Ack:Pipe0write_register_onebyte(EN_RXADDR,0 x01
25、);/ Enable Pipe0write_register_onebyte(SETUP_AW,0 x03);/ADDR WIDTH 5 BYTESwrite_register_onebyte(RF_CH,40);/ Select RF channel freq2440Mhzwrite_register_onebyte(RX_PW_P0,TX_PLOAD_WIDTH);/SelectsameRXpayload width as TX Payload widthwrite_register_onebyte(RF_SETUP,0 x07);/TX_PWR:0dBm,Datarate:2Mbps,
26、LNA:HCURR/write_register_onebyte(CONFIG,0 x0f);/ Set PWR_UP bit, enableCRC(2 bytes) & Prim:RX. RX_DR enabled.write_register_bytes(RX_ADDR_P0,flash_channel0,TX_ADR_WIDTH);/Usethesame address on the RX device as the TXdevicewrite_register_bytes(TX_ADDR,flash_channel0,TX_ADR_WIDTH);write_register_oneby
27、te(CONFIG, 0 x0f);/ Set PWR_UP bit, enable CRC(2 bytes)& Prim:RX. RX_DR enabled.write_register_onebyte(STATUS,0 xF0);/接收模式要為高電平nRF24L01_CE = 1;delay_us(130);/This device is now ready toreceive one packet of 16 bytes payloadfrom a TX device sending to addressnRF24L01 在發射模式的初始化函數為:void TX_Mode(void)wr
28、ite_register_onebyte(EN_AA,0 x01);/EnableAuto.Ack:Pipe0write_register_onebyte(EN_RXADDR,0 x01);/Enable Pipe0write_register_onebyte(SETUP_AW,0 x03);write_register_onebyte(SETUP_RETR,0 x0a);/1A/ 500us + 86us, 10 retrans.write_register_onebyte(RF_CH,40);/ Select RF channel 40write_register_onebyte(RF_S
29、ETUP,0 x07);/TX_PWR:0dBm, Datarate:2Mbps, LNA:HCURRwrite_register_onebyte(CONFIG,0 x0E);/ SetPWR_UPbit,enableCRC(2bytes)&Prim:TX. MAX_RT & TX_DS enabled.write_register_bytes(RX_ADDR_P0,flash_channel0,TX_ADR_WIDTH);/RX_Addr0same as TX_Adr for Auto.Ackwrite_register_bytes(TX_ADDR,flash_channel0,TX_ADR
30、_WIDTH);write_register_onebyte(CONFIG,0 x0E);/ SetPWR_UPbit,enableCRC(2bytes)&Prim:TX. MAX_RT & TX_DS enabled.write_register_onebyte(STATUS,0XF0);第四節第四節 LCD 顯示程序設計顯示程序設計LCD 顯示程序比較簡單,主要是 put 和 goto 語句的應用。代碼如下:write_register_onebyte(STATUS,0 xF0);read_rx_palyoad(R_RX_PAYLOAD,data,5);lcd_gotoxy(0,0);lc
31、d_putsf(light);for(i=0;i4;i+)lcd_gotoxy(i,1);lcd_putchar(datai);lcd_gotoxy(4,1);lcd_putsf(.);lcd_gotoxy(5,1);lcd_putchar(data4);lcd_gotoxy(7,1);lcd_putsf(lux)delay_ms(100);第五節第五節 程序下載程序下載Code Vision 軟件在對項目編譯成功后會在項目文件夾的 EXE 文件夾中生成.hex 文件,此文件可通過下載軟件經下載線下載至單片機上。我們使用的是progisp1.72 燒寫軟件,它支持所有的 AVR 芯片的編程、支
32、持 AT89S51,AT89S52支持自定義并口下載編程器、支持自定義串口的下載編程器、支持 STK500 編程器、支持 USBASP 編程器、支持并口的并行編程器、支持 USBProg 編程器、支持自定義編程芯片、支持自定義編程熔絲信息提示信息、支持 USBProg 的在線升級(通過 USB 口)、支持 USBProg-C 實現脫機下載、支持命令行方式,可以直接嵌入其他 IDE 中使用、 綠色軟件, 無需安裝, 占用資源少、 支持自定義漢化信息提示 、支持工程管理,可以將所有的配置數據與編程數據打包為單一文件。progisp1.72程序操作界面圖 4-5 所示。圖 4-5 progisp1.
33、72 燒寫軟件第第四四章章測試結果及討論測試結果及討論測試貫穿于硬件和軟件的設計過程中,用于檢查設計過程的出現的各種問題,下面介紹一下在設計過程我們對各個模塊的測試過程與結果。第一節第一節 LCD 顯示測試顯示測試LCD 顯示測試的目的是測試 ATmega16L 單片機與 1602LCD 顯示屏的連接是否正確, 能否正確顯示, 測試程序為在液晶屏上顯示兩行固定數據。 測試程序如下:#include#include#asm.equ _lcd_port=0 x18;PORTB 數據寄存器地址#endasm#includeflashchardis_str=Hello World!;void main
34、(void)char flash*str;str=dis_str;lcd_init(16);while(1)lcd_clear();lcd_putsf(Itsdisplaydemo.);lcd_gotoxy(0,1);lcd_putsf(str);if(*str+=0)str=dis_str;delay_ms(200);在測試結果如圖4-6 所示, 1602上第一行顯示 “Itdemo” , 第二行顯示 “Helloword! ” 。圖 4-6 LCD 測試結果第二節第二節 光照采集與顯示光照采集與顯示測試測試光照采集測試的主要目的是測試系統的基礎部分是否達到設計的要求。 測試程序為不經過無線
35、傳輸在液晶屏上實時顯示光照強度。測試程序如下:#include#include#asm.equ _lcd_port=0 x18 ;PORTB 數據寄存器地址#endasm#include#define ADC_VREF_TYPE 0 x40Constunsignedchartable=0123456789;unsigned int read_adc(unsigned charadc_input)float adc_data;ADMUX=adc_input|(ADC_VREF_TYPE&0 xff);delay_us(10);ADCSRA|=0X40;while(ADCSRA&0 x10)=0)
36、;ADCSRA|=0X10;adc_data=ADCL;adc_data=adc_data+ADCH*256;adc_data=(adc_data*2560.0/1024.0)/1000.0;adc_data=adc_data/330.0*1000;if(adc_data=2.0)adc_data=800.0+(adc_data-2.0)*666.7;if(adc_data=1.5&adc_data=1.1&(adc_data=0.5&(adc_data1.1)adc_data=100.0+(adc_data-0.5)*333.3;if(adc_data0.5)adc_data=adc_dat
37、a*200.0;adc_data=adc_data*10.0;return adc_data;void port_init()DDRA=0XFE;/輸入為 0, 輸出為 1PORTA=0 xFE;PORTB=0 xFF;DDRB=0 xFF;void main(void)unsigned int adc,i,ad5;port_init();lcd_init(16);ACSR=0X80;SFIOR=0X00;ADMUX=ADC_VREF_TYPE&0XFF;ADCSRA=0X86;while(1)lcd_gotoxy(0,0);lcd_putsf(light);adc=read_adc(0);f
38、or(i=0;i5;i+)ad4-i=adc%10;adc=adc/10;for(i=0;i4;i+)lcd_gotoxy(i,1);lcd_putchar(tableadi);lcd_gotoxy(4,1);lcd_putsf(.);lcd_gotoxy(5,1);lcd_putchar(tablead4);lcd_gotoxy(7,1);lcd_putsf(lux);lcd_gotoxy(0,0);lcd_putchar(tabledata);delay_ms(200);測試結果如圖 4-7 所示,LCD 上顯示實時的光照強度。圖 4-7光照采集與顯示測試結果心得體會心得體會本次通信系統綜
39、合設計的課題較為復雜,我們設計的過程也較為艱難,從一開始的確定方案、選擇芯片、器材購買到后來的硬件軟件系統的設計與實現,以及測試過程都比以往的課程設計要困難的多, 我們不斷發現問題、 不斷解決困難,在寫這篇報告的時候我們已經完成了基礎部分的設計, 實現了基礎部分的全部功能,發揮部分仍然在調試過程中。本次課程設計讓我們深入理解了之前學習的單片機、數字電路以及 C 語言編程等知識; 也充分鍛煉了我們的能力, 包括查閱資料的能力、 學習芯片的能力、動手動腦的能力;更重要的是課程設計鍛煉了我們的毅力,一次一次來往于電子市場購買很更換材料,一點一點焊接硬件,一行一行編寫和修改程序代碼,這些都讓我們養成了
40、堅持不懈的精神。 這次課程設計使我們受益匪淺, 在將來的學習、生活和工作中,這些知識、能力和精神將伴隨我們面對更大的挑戰,完成更艱巨的任務,實現人生的成功。在此要感謝指導老師張秀平對我們的悉心指導, 更要感謝張老師在我們遇到挫折時對我們的鼓勵和幫助。參考文獻參考文獻1 馬潮.AVR 單片機嵌入式系統原理與應用實踐M.北京航空航天大學出版社,20072 張友德 趙志英 涂時亮等. 單片微型機原理、 應用與實驗 (第五版) M.復旦大學出版社,20083 康華光.電子技術基礎模擬部分(第五版)M.高等教育出版社,20064 康華光.電子技術基礎數字部分(第五版)M.高等教育出版社,20065 On
41、 Elelctronics Co Ltd . Po188 光照傳感器中文資料6ATmel 公司.Atmega16L 中文資料7 訊通科技 . nRF24L01 中文資料附附錄錄一、一、器件清單器件清單器件名稱使用個數ATMEL mega16 單片機2單片機插槽28M 晶振2nRF24L01 無線發送接收模塊2發光二極管4103uF 陶瓷電容430uF 陶瓷電容410uF 電解電容4100uF 電解電容21k電阻8500電阻101117 變壓芯片24 腳開關2105uF 陶瓷電容21602 液晶屏1503 變阻器1排針若干排線若干導線若干二二、工具清單工具清單1.鑷子2.老虎鉗3.螺絲刀4.電烙
42、鐵5.萬用表6.數據下載線三三、實物圖實物圖四四、程序代碼程序代碼1.發送端:發送端:#include includes.h#asm.equ _lcd_port=0 x1B ;PORTA#endasm#include #include #include #include NRF24L01.h#define ON 0#define OFF 1#define LIGHT PIND.4#defineADC_VREF_TYPE 0 x40const unsigned char table=0123456789;unsigned char data5;uchar test_temp;unsignedin
43、tread_adc(unsignedcharadc_input)float adc_data;ADMUX=adc_input|(ADC_VREF_TYPE&0 xff);delay_us(10);ADCSRA|=0X40;while(ADCSRA&0 x10)=0);ADCSRA|=0X10;adc_data=ADCL;adc_data=adc_data+ADCH*256;adc_data=(adc_data*2560.0/1024.0)/1000.0;adc_data=adc_data/330.0*1000;if(adc_data=2.0)adc_data=800.0+(adc_data-2
44、.0)*666.7;if(adc_data=1.5&adc_data=1.1&(adc_data=0.5&(adc_data1.1)adc_data=100.0+(adc_data-0.5)*333.3;if(adc_data0.5)adc_data=adc_data*200.0;adc_data=adc_data*10.0;return adc_data;void Device_init(void)/進入發送模式SPI_MasterInit();Clear_rx();Clear_tx();TX_Mode();/發送模式void PORT_init(void)DDRA=0 xFE;PORTA=
45、0 xFE;PORTB=0XFF;DDRB=0XBF;DDRD=0 xDF;PORTD=0 xFF;void main(void)unsigned int adc,i,ad6;ACSR=0 x80;SFIOR=0 x00;PORT_init();ADMUX=ADC_VREF_TYPE&0XFF;ADCSRA=0X86;Init_NRF24L01();Device_init();TX_Mode();/發送模式while (1)/ Place your code hereadc=read_adc(0);for(i=0;i5;i+)ad4-i=adc%10;adc=adc/10;數據處理data0=
46、 tablead0;data1=tablead1;data2=tablead2;data3=tablead3;data4=tablead4;write_tx_palyoad(data,5);delay_ms(1000);PORTD.5 = OFF;test_temp=Read_StatusByte(STATUS);if(test_temp & TX_DS)Clear_tx();Clear_rx();write_register_onebyte(STATUS,0XF0);/PORTD.5=ON;write_register_onebyte(CONFIG,0 x0E);test_temp = Read_StatusByte(CONFIG);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶葉養生館加盟管理協議
- 茶園水資源高效利用與承包經營合同
- 基礎工程問題講解課件下載
- 長春黨??荚囶}庫及答案
- 租房合同協議書不可抗拒
- 消防外網實景課件下載
- 江西省吉安市峽江縣2025屆七下英語期末經典試題含答案
- 武術培訓教練合同協議書
- 黨史試題及答案150題
- 2025屆內蒙古赤峰寧城縣聯考八年級英語第二學期期末學業質量監測模擬試題含答案
- 最簡單裝修合同協議書
- 阿米巴模式的合同協議書
- DB32/T 4622.4-2023采供血過程風險管理第4部分:血液成分制備和供應風險控制規范
- 技術員獎勵協議書
- 北京市先農壇體育運動技術學校招聘筆試真題2024
- 2025年供應鏈管理專業考試試題及答案
- GB 35181-2025重大火災隱患判定規則
- 2025山東能源集團營銷貿易限公司招聘機關部分業務人員31人易考易錯模擬試題(共500題)試卷后附參考答案
- 2024年漳州市招聘中小學幼兒園教師真題
- 2025年道德與法治課程考試試卷及答案
- 天津2025年中國醫學科學院放射醫學研究所第一批招聘筆試歷年參考題庫附帶答案詳解
評論
0/150
提交評論