版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 單片機原理及系統(tǒng)課程設計</p><p> 專 業(yè): 自動化 </p><p> 班 級: </p><p> 姓 名: </p><p> 學 號: </p><
2、;p> 指導教師: </p><p> 2012 年 7月 1日</p><p><b> 目 錄</b></p><p><b> 1引言1</b></p><p><b> 2方案設計1</b></p><p
3、> 2.1 總體方案設計1</p><p> 2.2 系統(tǒng)組成及框圖1</p><p><b> 3硬件電路設計2</b></p><p> 3.1 溫度測量電路設計2</p><p> 3.2 濕度測量電路設計2</p><p> 3.3 按鍵電路設計3</p
4、><p><b> 4 軟件設計3</b></p><p> 4.1 主程序流程圖3</p><p> 4.2 溫度模塊程序設計4</p><p> 4.3 濕度模塊程序設計5</p><p> 4.4 顯示子程序設計5</p><p><b>
5、 5總結5</b></p><p><b> 6參考文獻5</b></p><p><b> 7 附錄6</b></p><p><b> 7.1 附錄A6</b></p><p><b> 7.2 附錄B6</b></
6、p><p><b> 1引言</b></p><p> 本次課程設計主要基于AT89C51單片機,開發(fā)環(huán)境溫度及濕度檢測及控制系統(tǒng)。該系統(tǒng)采用AT89C51單片機作為控制器,DS18B20作為溫度傳感器,HS1101作為濕度傳感器。系統(tǒng)主要功能如下:</p><p> ?。ǎ保囟?、濕度進行測量;</p><p>
7、(3)溫度及濕度的顯示;</p><p> ?。ǎ矗┰O定預期溫度與濕度值并顯示。</p><p> 關鍵詞:AT89C51,溫度及濕度檢測,LCD顯示。</p><p><b> 2方案設計</b></p><p> 本章從控制系統(tǒng)的總體構成及原理框圖對系統(tǒng)進行了總體分析說明,控制系統(tǒng)組成以后,主要通過控制器、傳感
8、器及執(zhí)行器對控制變量進行分析和處理。</p><p> 2.1 總體方案設計</p><p> 本系統(tǒng)采用AT89C51單片機作為微處理器,DS18B20作為溫度傳感器對溫度進行檢測,HS1101作為濕度傳感器與NE555組成濕度測量模塊,使用LM016L對測得的溫度及濕度值進行顯示,使用按鍵對溫度及濕度的設定值進行修改。</p><p> 2.2 系統(tǒng)組成及
9、框圖</p><p> 系統(tǒng)主要有溫度測量模塊、濕度測量模塊、顯示模塊、及按鍵模塊。其原理框圖如圖2-1所示。</p><p> 圖2.1 系統(tǒng)組成框圖</p><p><b> 3硬件電路設計</b></p><p> 本溫度及濕度控制系統(tǒng)使用AT89C51作為控制器,用DS18B20實現(xiàn)對溫度測測量,用HS1
10、101及NE555實現(xiàn)的濕度的測量,并采用LM016L將采集的的數(shù)據(jù)顯示?,F(xiàn)將系統(tǒng)硬件設計表述如下。</p><p> 3.1 溫度測量電路設計</p><p> 采用DS18B20數(shù)字溫度傳感器測量溫度, DS18B20與單片機是單線雙向通信。其連接電路如圖3.1所示。</p><p> 圖3.1 DS18B20的測溫電路(DQ端接51的P2.7)</
11、p><p> 3.2 濕度測量電路設計</p><p> 圖3.2 NE555測濕電路</p><p> HS1101實際上相當于一個可變電容,它會因外部環(huán)境濕度的變化而致使電容值變化,濕度測量模塊采用HS1101及NE555一起組成,將該HS1101置于NE555震蕩電路中,將電容值的變化轉(zhuǎn)化為與之呈反比的電壓頻率信號,可直接被計算機采集。</p>
12、<p> 表3.1 等效電容值與相對濕度之間的數(shù)值關系</p><p> 3.3 按鍵電路設計</p><p> 系統(tǒng)可以調(diào)節(jié)設定的溫度及濕度值,我們可以通過四個按鍵來進行實現(xiàn),前兩個按鍵選擇是溫度設定還是濕度設定,后兩個按鍵實現(xiàn)加一和減一操作,設計電路圖如圖3.3所示。</p><p><b> 圖3.3 按鍵電路</b>
13、</p><p> 其工作原理如下:當閉合溫度控制開關,可以通過“加”、“減”按鈕來實現(xiàn)目標溫度值的加一或者減一;同理閉合濕度開關,通過“加”、“減”按鈕來實現(xiàn)目標濕度值的加一或者減一。而且,當兩個開關同時閉合時,可以實現(xiàn)溫度和濕度的同加一或同減一。</p><p><b> 4 軟件設計</b></p><p> 本章主要對各個功能模塊
14、的程序流程進行說明。</p><p> 4.1 主程序流程圖</p><p> 主程序的主要功能是負責讀出并處理DS18B20的測量溫度值,讀出測濕電路的結果,并將溫度及濕度進行實時顯示,直到需要退出該系統(tǒng)時結束并退出。程序流程圖如圖4.1所示 :</p><p><b> N</b></p><p><b&
15、gt; Y</b></p><p> 圖4.1 主程序流程圖</p><p> 4.2 溫度模塊程序設計</p><p> 溫度模塊主要包括DS18B20的初始化以及與單片機之間的數(shù)據(jù)處理。DS18B20與微處理器之間的通信比較復雜,每一次通信之前必須進行復位,復位的時間、等待時間、回應時間應嚴格按時序編程。</p><p&g
16、t; 4.3 濕度模塊程序設計</p><p> 濕度模塊主要是利用定時器T0和T1對555的輸出頻率進行測量,進而得到相對濕度值。</p><p> 在該塊程序設計中,我們選取T0做定時器,定時時間是50ms,而選擇T1做計數(shù)器,每當T0定時時間到就讀取T1的計數(shù)值,然后將T1的計數(shù)值乘以20就可得到555芯片的輸出頻率,可進行數(shù)據(jù)處理從而得到相對濕度值。</p>&
17、lt;p> 4.4 顯示子程序設計</p><p> 顯示子程序包括1602的初始化,以及對溫度和濕度值的顯示。初始化時第一行顯示“wend”,第二行顯示“shid”,然后根據(jù)溫度的測得值及其正負將測得溫度值和設定溫度值在第一行,并將測得的頻率值裝換為相對濕度值,并將其和濕度設定值顯示在第二行。</p><p><b> 5總結</b></p>
18、<p> 在設計中,通過對硬件電路不斷的處理,使得硬件部分比較完善。另外,在電路中加入了限流電阻,保證了各個器件的使用壽命??傊?,硬件電路的設計達到了抗干擾,較高精度的目的。軟件部分中,對程序也做了數(shù)次修改,最終在Keil uVision3中實現(xiàn)了成功的模擬,進一步驗證了設計思路。</p><p> 本系統(tǒng)實現(xiàn)的功能如下。</p><p> 1. 對溫室大棚溫度和濕度進
19、行實時測量;</p><p> 2. 通過LCD顯示屏分別進行溫度和濕度顯示;</p><p> 3.對溫度和濕度的設定值通過按鍵可以進行調(diào)節(jié)。</p><p> 本系統(tǒng)的優(yōu)點有以下幾點。</p><p> 1. 結構簡單,容易實現(xiàn);</p><p> 2. 造價低廉,性價比高;</p><
20、;p> 3.達到了一定的精度要求。</p><p><b> 6參考文獻</b></p><p> [1]金偉正.單線數(shù)字溫度傳感器的原理與應用[J].電子技術與應用,2000(6).</p><p> [2]單曉鋒,楊建紅.電容型溫濕度傳感器模擬計算與分析[J].半導體技術,2010(11).</p><p&
21、gt; [3]胡漢才.單片機原理及接口技術[M].北京:清華大學出版社,2004.</p><p><b> 7 附錄</b></p><p><b> 7.1 附錄A</b></p><p> 系統(tǒng)仿真電路圖如圖5.1所示。在調(diào)試過程中,通過改變溫度傳感器的數(shù)值,來檢驗系統(tǒng)中溫度模塊是否運行正常。經(jīng)過測試溫度模塊
22、可以正常的顯示,并且具有一定的快速性。通過改變NE555振蕩電路中C3的容值(即HS1101的等效容值),來檢驗濕度摸快是否可以正常工作,經(jīng)過測試濕度模塊可以正常工作。并且對四個按鍵(即溫度、濕度、+、-)的功能進行了測試,都實現(xiàn)了應有的功能。</p><p> 圖5.1 系統(tǒng)仿真調(diào)試圖</p><p><b> 7.2 附錄B</b></p>&l
23、t;p> #include<reg51.h></p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> sbit DQ=P2^7;//DS18B20與單片機連接口</p><p> sbit RS=P3^0;//
24、LCD1602控制端與單片機的連接</p><p> sbit RW=P3^1;</p><p> sbit EN=P3^7;</p><p> sbit ST=P0^0;//按鍵接口</p><p> sbit SH=P0^1;</p><p> sbit Sjia=P3^2;</p><
25、;p> sbit Sjian=P3^3;</p><p> uchar code str1[]={"Wend:"};</p><p> uchar code str2[]={"Shid:"};</p><p> uchar data disdata1[6];</p><p> uchar
26、 data disdata2[4];</p><p> uint tvalue;//溫度值</p><p> uchar tflag;//溫度正負標志</p><p> uint tem0,tem1;</p><p> uint temp0,temp1;</p><p><b> uint f=0;
27、</b></p><p> int hhhh=0;</p><p> int tsheding=20;//設置溫度值</p><p> int hsheding=40;//設置濕度值</p><p> void zhongd0() interrupt 0 //外部中斷0:加設置</p><p>
28、<b> {</b></p><p><b> if(ST==1)</b></p><p><b> {</b></p><p> tsheding++; //溫度值加1</p><p><b> }</b></p><p&g
29、t;<b> if(SH==1)</b></p><p><b> {</b></p><p> hsheding++; //濕度值加1</p><p><b> }</b></p><p><b> }</b></p><p
30、> void zhongd1() interrupt 2 //外部中斷1:減設置</p><p><b> {</b></p><p><b> if(ST==1)</b></p><p><b> {</b></p><p> tsheding--; //
31、溫度值減1</p><p><b> }</b></p><p><b> if(SH==1)</b></p><p><b> {</b></p><p> hsheding--; //濕度值減1</p><p> }&
32、lt;/p><p><b> }</b></p><p> void timer0() interrupt 1 //T0定時中斷</p><p><b> {</b></p><p><b> TR0=0;</b></p><p>
33、;<b> TR1=0;</b></p><p> TL0=0xB0;//重裝值,定時50000us</p><p><b> TH0=0x3C;</b></p><p> tem0=TL1;//讀數(shù)</p><p><b> tem1=TH1;</b></p&
34、gt;<p> TL1=0x00;//計數(shù)器1清零</p><p><b> TH1=0x00;</b></p><p><b> TR0=1;</b></p><p> TR1=1; </p><p><b> }</b></p&
35、gt;<p> void timer1() interrupt 3 //T1計數(shù)中斷</p><p><b> {</b></p><p><b> TR0=0;</b></p><p><b> TR1=0;</b></p><p> TL0=0xB0
36、;//重裝值,定時50000us</p><p><b> TH0=0x3C;</b></p><p> TL1=0x00;//計數(shù)器1清零</p><p><b> TH1=0x00;</b></p><p><b> TR0=1;</b></p>&l
37、t;p><b> TR1=1; </b></p><p><b> } </b></p><p> void init_timer()</p><p><b> {</b></p><p> TMOD=0x51;</p><p> T
38、L0=0xB0;//定時器0初值定時50000us</p><p> TH0=0x3C; </p><p> TL1=0x00;//定時器1清零</p><p><b> TH1=0x00;</b></p><p> TR0=1;//T0開始計時</p><p&
39、gt; TR1=1;//T1開始計數(shù)</p><p><b> } </b></p><p> void delay1ms(uint ms)//延時1毫秒</p><p><b> {</b></p><p><b> uint i,j;</b></p>
40、<p> for(i=0;i<ms;i++)</p><p> for(j=0;j<110;j++);</p><p><b> }</b></p><p> void wr_com(uchar com)//1602寫指令</p><p><b> { </b>&l
41、t;/p><p> delay1ms(1);</p><p><b> RS=0;</b></p><p><b> RW=0;</b></p><p><b> EN=0;</b></p><p><b> P1=com;</b&
42、gt;</p><p> delay1ms(1);</p><p><b> EN=1;</b></p><p> delay1ms(1);</p><p><b> EN=0;</b></p><p><b> }</b></p>
43、<p> void wr_dat(uchar dat)//1602寫數(shù)據(jù)</p><p><b> { </b></p><p> delay1ms(1);</p><p><b> RS=1;</b></p><p><b> RW=0;</b><
44、;/p><p><b> EN=0;</b></p><p><b> P1=dat;</b></p><p> delay1ms(1);</p><p><b> EN=1;</b></p><p> delay1ms(1);</p>
45、<p><b> EN=0;</b></p><p><b> }</b></p><p> void lcd_init()//1602初始化設置</p><p><b> {</b></p><p> wr_com(0x38);delay1ms(1);
46、 //設置16*2顯示,5*7點陣,8位數(shù)據(jù)接口;并延時</p><p> wr_com(0x08);delay1ms(1); //設置關顯示,光標不顯示,光標不閃爍;并延時</p><p> wr_com(0x01);delay1ms(1); //設置顯示清屏;并延時</p><p> wr_com(0x06);delay1ms(1); //設置顯示光標移動
47、位置;并延時</p><p> wr_com(0x0c);delay1ms(1); //設置顯示開及光標設置;并延時</p><p><b> }</b></p><p> void display(uchar *p)//顯示子程序</p><p><b> {</b></p>
48、<p> while(*p!='\0')</p><p><b> {</b></p><p> wr_dat(*p);</p><p><b> p++;</b></p><p> delay1ms(1);</p><p><b&
49、gt; }</b></p><p><b> }</b></p><p> init_play()//1602初始化顯示</p><p><b> { </b></p><p> lcd_init();</p><p> wr_com(0x80);
50、 </p><p> display(str1);</p><p> wr_com(0xc0); </p><p> display(str2);</p><p><b> }</b></p><p> /**************************ds1820程序******
51、*******************/</p><p> void delay_18B20(uint i)//延時1微秒</p><p><b> {</b></p><p> while(i--);</p><p><b> }</b></p><p> voi
52、d ds1820rst()//DS18B20復位</p><p><b> { </b></p><p> uchar x=0;</p><p> DQ= 1; //DQ置位</p><p> delay_18B20(4); //延時</p><p> DQ = 0;
53、 //DQ拉低</p><p> delay_18B20(100); //精確延時大于480us</p><p> DQ = 1; //拉高</p><p> delay_18B20(40); </p><p><b> } </b></p><p>
54、uchar ds1820rd()//DS18B20讀數(shù)據(jù)</p><p><b> { </b></p><p> uchar i=0;</p><p> uchar dat=0;</p><p> for(i=8;i>0;i--)</p><p><b> { &l
55、t;/b></p><p> DQ=0; //給脈沖信號</p><p><b> dat>>=1;</b></p><p> DQ = 1; //給脈沖信號</p><p><b> if(DQ)</b></p><p> dat|=0x80;&
56、lt;/p><p> delay_18B20(10);</p><p><b> }</b></p><p> return(dat);</p><p><b> }</b></p><p> void ds1820wr(uchar wdata)//DS18B20寫數(shù)據(jù)
57、</p><p><b> {</b></p><p> uchar i=0;</p><p> for(i=8;i>0;i--)</p><p><b> { </b></p><p><b> DQ=0;</b></p>
58、<p> DQ=wdata&0x01;</p><p> delay_18B20(10);</p><p><b> DQ=1;</b></p><p> wdata>>=1;</p><p><b> }</b></p><p>&
59、lt;b> }</b></p><p> void read_temp()//讀取溫度值并轉(zhuǎn)換</p><p><b> {</b></p><p> uchar a,b;</p><p> ds1820rst(); </p><p> ds1820wr(0xc
60、c);//跳過讀序列號</p><p> ds1820wr(0x44);//啟動溫度轉(zhuǎn)換</p><p> ds1820rst(); </p><p> ds1820wr(0xcc);//跳過讀序列號</p><p> ds1820wr(0xbe);//讀取溫度</p><p> a=ds1820rd(
61、);</p><p> b=ds1820rd();</p><p><b> tvalue=b;</b></p><p> tvalue<<=8;</p><p> tvalue=tvalue|a;</p><p> if(tvalue<0x0fff)</p>
62、;<p><b> {</b></p><p><b> tflag=0;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b><
63、/p><p> tvalue=~tvalue+1;</p><p><b> tflag=1;</b></p><p><b> }</b></p><p> tvalue=tvalue*(0.625);//溫度值擴大10倍,精確到1位小數(shù)</p><p><b&g
64、t; }</b></p><p> /*******************************************************************/</p><p> void ds1820disp1()//溫度值顯示</p><p><b> { </b></p><p>
65、 uchar flagdat;</p><p> uchar flagtsheding;</p><p> disdata1[0]=tvalue/1000+0x30;//百位數(shù)</p><p> disdata1[1]=tvalue%1000/100+0x30;//十位數(shù)</p><p> disdata1[2]=tvalue%10
66、0/10+0x30;//個位數(shù)</p><p> disdata1[3]=tvalue%10+0x30;//小數(shù)位</p><p> if(tsheding<hhhh)//判斷溫度設定值是正是負</p><p><b> { </b></p><p> flagtsheding='-';
67、</p><p> disdata1[4]=(~tsheding+1)/10+0x30;</p><p> disdata1[5]=(~tsheding+1)%10+0x30;</p><p><b> }</b></p><p><b> else </b></p>&l
68、t;p><b> { </b></p><p> flagtsheding=' ';</p><p> disdata1[4]=tsheding/10+0x30;</p><p> disdata1[5]=tsheding%10+0x30;</p><p><b> }</
69、b></p><p> if(tflag==0)</p><p> flagdat=0x20;//正溫度不顯示符號</p><p><b> else</b></p><p> flagdat=0x2d;//負溫度顯示負號:-</p><p> if(disdata1[0]==0x
70、30)</p><p><b> {</b></p><p> disdata1[0]=0x20;//如果百位為0,不顯示</p><p> if(disdata1[1]==0x30)</p><p><b> {</b></p><p> disdata1[1]=
71、0x20;//如果百位為0,十位為0也不顯示</p><p><b> }</b></p><p><b> }</b></p><p> wr_com(0x85);</p><p> wr_dat(flagdat);//顯示符號位</p><p> wr_com(
72、0x86);</p><p> wr_dat(disdata1[0]);//顯示百位</p><p> wr_com(0x87);</p><p> wr_dat(disdata1[1]);//顯示十位</p><p> wr_com(0x88);</p><p> wr_dat(disdata1[2]);/
73、/顯示個位</p><p> wr_com(0x89);</p><p> wr_dat(0x2e);//顯示小數(shù)點</p><p> wr_com(0x8a);</p><p> wr_dat(disdata1[3]);//顯示小數(shù)位</p><p> wr_com(0x8b);//顯示設定溫度值</
74、p><p> wr_dat('(');</p><p> wr_com(0x8c);</p><p> wr_dat(flagtsheding);</p><p> wr_com(0x8d);</p><p> wr_dat(disdata1[4]);</p><p>
75、wr_com(0x8e);</p><p> wr_dat(disdata1[5]);</p><p> wr_com(0x8f);</p><p> wr_dat(')');</p><p><b> }</b></p><p> /******************
76、*************************************************/</p><p> void ds1820disp2()//濕度值顯示</p><p><b> { </b></p><p> f=tem1*256+tem0;</p><p> f=f*20;
77、 </p><p> if((6033<=f)&&(f<=7351)) </p><p><b> {</b></p><p> if((7224<f)&&(f<=7351))</p><p> { temp0=0;temp1=(735
78、1-f)*10/127; }</p><p> if((7100<f)&&(f<=7224))</p><p> { temp0=1;temp1=(7224-f)*10/124; } </p><p> if((6976<f)&&(f<=7100))</p><p>
79、{ temp0=2;temp1=(7100-f)*10/124; } </p><p> if((6853<f)&&(f<=6976))</p><p> { temp0=3;temp1=(6976-f)*10/123; }</p><p> if((6728<f)&&(f<=6853))&
80、lt;/p><p> { temp0=4;temp1=(6853-f)*10/125; } </p><p> if((6600<f)&&(f<=6728))</p><p> { temp0=5;temp1=(6728-f)*10/128; }</p><p> if((6486<f)&a
81、mp;&(f<=6600))</p><p> { temp0=6;temp1=(6600-f)*10/132; }</p><p> if((6330<f)&&(f<=6486))</p><p> { temp0=7;temp1=(6468-f)*10/138; }</p><p>
82、if((6186<f)&&(f<=6300))</p><p> { temp0=8;temp1=(6330-f)*10/144; }</p><p> if((6033<f)&&(f<=6186))</p><p> { temp0=9;temp1=(6186-f)*10/153; }</p&
83、gt;<p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> temp0=0;temp1=0;</p><p><b> }</b></p>&
84、lt;p> disdata2[0]=temp0+0x30;</p><p> disdata2[1]=temp1+0x30;</p><p> disdata2[2]=hsheding/10+0x30;</p><p> disdata2[3]=hsheding%10+0x30;</p><p> wr_com(0xc8);/
85、/顯示所測濕度值</p><p> wr_dat(disdata2[0]);</p><p> wr_com(0xc9);</p><p> wr_dat(disdata2[1]);</p><p> wr_com(0xca);</p><p> wr_dat('%');</p>
86、<p> wr_com(0xcb);//顯示設定濕度值</p><p> wr_dat('(');</p><p> wr_com(0xcc);</p><p> wr_dat(disdata2[2]);</p><p> wr_com(0xcd);</p><p> wr_da
87、t(disdata2[3]);</p><p> wr_com(0xce);</p><p> wr_dat('%');</p><p> wr_com(0xcf);</p><p> wr_dat(')');</p><p><b> } </b>&l
88、t;/p><p> /********************主程序***********************************/</p><p> void main()</p><p><b> { </b></p><p><b> Sjia=0;</b></p>
89、<p><b> Sjian=0;</b></p><p><b> WBJ=0;</b></p><p><b> HBJ=0; </b></p><p> init_play();//1602初始化顯示</p><p> delay1ms(50);&
90、lt;/p><p> EA=1; //開中斷</p><p> EX0=1;//允許外部中斷0中斷</p><p> EX1=1;//允許外部中斷1中斷</p><p> ET0=1;//允許定時器0中斷</p><p> ET1=1;//允許計數(shù)器1中斷</p><p><b>
91、; IT0=1;</b></p><p><b> IT1=1;</b></p><p> init_timer();//定時/計數(shù)器初始化設置</p><p><b> while(1)</b></p><p><b> {</b></p&g
92、t;<p> read_temp();//讀取溫度</p><p> ds1820disp1();//顯示溫度</p><p> delay1ms(50);</p><p> ds1820disp2();//顯示濕度</p><p> delay1ms(50);</p><p><b>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機溫度控制系統(tǒng)課程設計
- 課程設計--單片機溫度控制系統(tǒng)
- 單片機課程設計(溫度控制系統(tǒng))
- 單片機課程設計--溫度控制系統(tǒng)設計
- 基于單片機的溫度控制系統(tǒng)課程設計報告
- 單片機課程設計--數(shù)字溫度控制系統(tǒng)
- 單片機原理及系統(tǒng)課程設計--汽車轉(zhuǎn)向燈單片機控制系統(tǒng)
- 單片機課程設計--基于51單片機的溫度控制系統(tǒng)設計
- 單片機課程設計——基于51單片機的溫度控制系統(tǒng)設計
- 單片機課程設計--基于51單片機的溫度控制系統(tǒng)設計
- 課程設計---基于單片機的溫度控制系統(tǒng)
- 單片機原理及系統(tǒng)課程設計報告
- 空調(diào)控制系統(tǒng)單片機原理課程設計
- 溫室大棚溫度調(diào)節(jié)控制系統(tǒng)(單片機課程設計)
- 空調(diào)控制系統(tǒng)單片機原理課程設計
- 課程設計---mcs-51單片機溫度控制系統(tǒng)
- 單片機原理課程設計空調(diào)控制系統(tǒng).doc
- 單片機課程設計——單片機控制步進電機控制系統(tǒng)設計
- 單片機水位控制系統(tǒng)課程設計
- 冷庫單片機控制系統(tǒng)課程設計
評論
0/150
提交評論