




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 單片機(jī)原理及應(yīng)用課程設(shè)計(jì)報(bào)告書課題名稱 單片機(jī)控制步進(jìn)電機(jī)姓 名學(xué) 號(hào) 專 業(yè)指導(dǎo)教師機(jī)電與控制工程學(xué)院2014 年 5月 30 日任 務(wù) 書單片機(jī)控制步進(jìn)電機(jī)步進(jìn)電機(jī)是工業(yè)過程控制及儀表中的主要控制元件之一,它可以在機(jī)械結(jié)構(gòu)中把絲杠的角度變成直線位移,也可以用它帶動(dòng)螺旋電位器,調(diào)節(jié)電壓和電流,從而實(shí)現(xiàn)對(duì)執(zhí)行機(jī)構(gòu)的控制。在數(shù)字控制系統(tǒng)中,由于它可以直接接受計(jì)算機(jī)輸出的數(shù)字信號(hào),而不需要進(jìn)行D/A轉(zhuǎn)換,所以使用起來十分方便。步進(jìn)電機(jī)具有快速的啟停能力和精度高的顯著特點(diǎn),在定位場(chǎng)合得到了廣泛的應(yīng)用。步進(jìn)電機(jī)實(shí)際上是一個(gè)數(shù)字/角度轉(zhuǎn)換器,也是一個(gè)串行的數(shù)/模轉(zhuǎn)換器。因此,需把并行的二進(jìn)制轉(zhuǎn)換成串行
2、的脈沖序列,并實(shí)現(xiàn)方向控制。每當(dāng)步進(jìn)電機(jī)脈沖輸入線上得到一個(gè)脈沖,它便沿著特定的方向走一步。設(shè)計(jì)要求:采用單片機(jī)來控制一個(gè)三相單三拍的步進(jìn)電機(jī)工作。步進(jìn)電機(jī)的旋轉(zhuǎn)方向由正反轉(zhuǎn)控制信號(hào)來控制。步進(jìn)電機(jī)的步數(shù)由鍵盤輸入,可輸入的步數(shù)分別為3,6,9,12,15,18,21,24,27步。并且鍵盤具有鍵盤鎖的功能,當(dāng)鍵盤上鎖的時(shí)候,步進(jìn)電機(jī)是不接受輸入步數(shù)的,也不會(huì)運(yùn)轉(zhuǎn)。只有當(dāng)鍵盤鎖打開并輸入步數(shù)的時(shí)候,步進(jìn)電機(jī)才開始工作 。電機(jī)運(yùn)轉(zhuǎn)的時(shí)候有正轉(zhuǎn)和反轉(zhuǎn)指示燈指示。當(dāng)電機(jī)在運(yùn)轉(zhuǎn)的過程當(dāng)中,如果過熱,則電機(jī)停止運(yùn)轉(zhuǎn),同時(shí)紅色指示燈亮.,同時(shí)警報(bào)響。目 錄1、緒論42、方案論證(規(guī)劃、選定)73、方案說明
3、(設(shè)計(jì))74、硬件方案設(shè)計(jì)85、軟件方案設(shè)計(jì)126、調(diào)試137、技術(shù)小結(jié)(結(jié)束語(yǔ))148、參考文獻(xiàn)159、附錄(源程序代碼、電路圖等)16 1. 緒 論 1.1 步進(jìn)電機(jī)是用電脈沖信號(hào)控制,以實(shí)現(xiàn)對(duì)生產(chǎn)過程或設(shè)備的數(shù)字控制,它是過程控制中一種十分重要和常用的功率執(zhí)行器件,它可以把脈沖信號(hào)轉(zhuǎn)換成角位移,并且可用作電磁制動(dòng)輪、電磁差分器或角位移發(fā)生器等,近年來由于計(jì)算機(jī)應(yīng)用技術(shù)的迅速發(fā)展,步進(jìn)電機(jī)常常和計(jì)算機(jī)一起組成高精度的數(shù)字控制系統(tǒng)。由于它是由數(shù)字脈沖控制,因此非常適合于用單片機(jī)控制,本設(shè)計(jì)便是在此基礎(chǔ)上,AT89C51型單片機(jī)為核心,并結(jié)合外圍電路以步進(jìn)電機(jī)為控制對(duì)象的控制系統(tǒng)。1.2單片機(jī)
4、控制步進(jìn)電機(jī)原理步進(jìn)電機(jī)的不同驅(qū)動(dòng)方式,都是在工作時(shí),脈沖信號(hào)按一定順序輪流加到三相繞組上,從而實(shí)現(xiàn)不同的工作狀態(tài)。由于通電順序不同,其運(yùn)行方式有三相單三相拍、三相雙三拍和三相單、雙六拍三種(注意:上面“三相單三拍”中的“三相”指定子有三相繞組;“拍”是指定子繞組改變一次通電方式;“三拍”表示通電三次完成一個(gè)循環(huán)?!叭嚯p三拍”中的“雙”是指同時(shí)有兩相繞組通電)。1.2.1三相單三拍運(yùn)行方式:下頁(yè)圖所示為反應(yīng)式步進(jìn)電動(dòng)機(jī)工作原理圖,若通過脈沖分配器輸出的第一個(gè)脈沖使A相繞組通電,B,C相繞組不通電,在A相繞組通電后產(chǎn)生的磁場(chǎng)將使轉(zhuǎn)子 上產(chǎn)生反應(yīng)轉(zhuǎn)矩,轉(zhuǎn)子的1、3齒將與定子磁極對(duì)齊,如果圖(a)
5、所示。第二個(gè)脈沖到來,使B相繞組通電,而A、C相繞組不通電;B相繞組產(chǎn)生的磁場(chǎng)將 使轉(zhuǎn)子的2、4齒與B相磁極對(duì)齊,如圖(b)所示,與圖(a)相比,轉(zhuǎn)子逆時(shí)針方向轉(zhuǎn)動(dòng)了一個(gè)角度。第三個(gè)脈沖到來后,是C相繞組通電,而 A、B相不通電,這時(shí)轉(zhuǎn)子的1、3齒會(huì)與C組對(duì)齊,轉(zhuǎn)子的位置如圖(c)所示,與圖(b)比較,又逆時(shí)針轉(zhuǎn)過了一個(gè)角度。圖1.1 反應(yīng)式步進(jìn)電機(jī)工作原理圖當(dāng)脈沖不斷到來時(shí),通過分配器使定子的繞組按著A相-B相-C相-A相的規(guī)律不斷地接通與斷開,這時(shí)步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)子就連續(xù)不停地一步步的逆時(shí) 針方向轉(zhuǎn)動(dòng)。如果改變步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)動(dòng)方向,只要將定子各繞組通電的順序改為A相-C相-B相-A相,轉(zhuǎn)子轉(zhuǎn)
6、動(dòng)方向即改為順時(shí)針方向。 單三拍分配方式時(shí),步進(jìn)電動(dòng)機(jī)由A相通電轉(zhuǎn)換到B相通電,步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)子轉(zhuǎn)過一個(gè)角度,稱為一步。這時(shí)轉(zhuǎn)子轉(zhuǎn)過的角度是30度。步進(jìn)電動(dòng)機(jī)每一步轉(zhuǎn)過的角度稱為步距角。1.2.2三相雙三拍運(yùn)行方式三相雙三拍運(yùn)行方式:每次都有兩個(gè)繞組通電,通電方式是AB-BC-CA-AB,如果通電順序改為AB-CA-BC-AB則步進(jìn)電機(jī)反轉(zhuǎn)。雙三拍分配方式時(shí),步進(jìn)電動(dòng)機(jī)的步距角也是30度 1.2.3三相單,雙六拍運(yùn)行方式:三相六拍分配方式就是每個(gè)周期內(nèi)有六個(gè)通電狀態(tài)。這六中通電狀態(tài)的順序可以使A-AB-B-BC-C-CA-A或者A- CA-C-BC-B-AB-A六拍通電方式中,有一個(gè)時(shí)刻兩個(gè)繞
7、組同時(shí)通電,這時(shí)轉(zhuǎn)子齒的位置將位于通電的兩相的中間位置。在三相六拍分配 方式下,轉(zhuǎn)子每一步轉(zhuǎn)過的角度只是三相三拍方式下的一半,步距角是15度。單三拍運(yùn)行的突出問題是每次只有一相繞組通電,在轉(zhuǎn)換過程中,一相繞組斷電,另一相繞組通電,容易發(fā)生失步;另外單靠一相繞組通電吸引轉(zhuǎn)子,穩(wěn)定性不好,容易在平衡位置附近震蕩,故用的較少。 雙三拍運(yùn)行的特點(diǎn)是每次都有兩相繞組通電,且在轉(zhuǎn)換過程中始終有一相繞組保持通電狀態(tài),因此工作穩(wěn)定,且步距角與單三拍相同。 六拍運(yùn)行方式轉(zhuǎn)換時(shí)始終有一相繞組通電,且步距角較小,故工作穩(wěn)定性好,但電源較復(fù)雜,實(shí)際應(yīng)用較多。2.方案論證2.1本設(shè)計(jì)由于需要實(shí)現(xiàn)9個(gè)不同部數(shù)的輸入以及其
8、他功能的輸入,所以可以采用鍵盤輸入,實(shí)現(xiàn)步進(jìn)電機(jī)的步數(shù)由鍵盤輸入且具有鍵盤鎖功能。而本實(shí)驗(yàn)單片機(jī)的端口數(shù)量充足,最后決定直接采用鍵盤輸入。2.2在步進(jìn)電機(jī)方面由于此次設(shè)計(jì)的軟件采用proteus,在此軟件中只有一個(gè)四相步進(jìn)電機(jī)的模型,然后考慮到步進(jìn)電機(jī)控制方法的難易度最后決定采用四相八拍控制法,由于單片機(jī)不能直接驅(qū)動(dòng)步進(jìn)電機(jī),通過芯片放大控制電壓。2.3在測(cè)量溫度方面一開始打算用一個(gè)溫度傳感器開關(guān)去實(shí)現(xiàn)監(jiān)測(cè)電機(jī)的溫度,當(dāng)溫度過高的時(shí)候就斷開開關(guān);但考慮到系統(tǒng)的可操作性,準(zhǔn)確性,編程的難以度及仿真軟件的限制,最后決定用DS18B20代替電機(jī)的測(cè)量系統(tǒng),實(shí)現(xiàn)電機(jī)在運(yùn)動(dòng)過程中,如果過熱,則電機(jī)停止運(yùn)
9、轉(zhuǎn),同時(shí)紅色指示燈亮,同時(shí)報(bào)警。而轉(zhuǎn)向方面用不同的指示燈指示正轉(zhuǎn)和反轉(zhuǎn)。當(dāng)溫度超過安全溫度時(shí),報(bào)警燈會(huì)亮和報(bào)警鈴會(huì)鳴響,并讓電機(jī)停止運(yùn)轉(zhuǎn)同時(shí)鎖住鍵盤。 3.方案說明步進(jìn)電機(jī)和普通電動(dòng)機(jī)不同之處是步進(jìn)電機(jī)接受脈沖信號(hào)的控制。即步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)換為機(jī)械角位移的執(zhí)行元件。步進(jìn)電機(jī)的控制可以用硬件,也可以用軟件通過單片機(jī)實(shí)現(xiàn)。硬件方法是采用脈沖分配器芯片進(jìn)行通用換相控制;而軟件方法是用單片機(jī)產(chǎn)生控制脈沖來控制步進(jìn)電機(jī)的運(yùn)行狀態(tài),這種方法可簡(jiǎn)化電路,降低成本。在用軟件控制時(shí),主要設(shè)計(jì)要點(diǎn)如下:l 判斷旋轉(zhuǎn)方向;l 按相序確定控制字;l 按順序輸入控制字;l 確定控制步數(shù)和每一步的延時(shí)時(shí)間。由于單
10、片機(jī)的驅(qū)動(dòng)電流一般都比較小,不能直接驅(qū)動(dòng)電機(jī)工作,所以單片機(jī)的I/O口輸出必須接驅(qū)動(dòng)電路,即功率驅(qū)動(dòng),才得以控制電機(jī)正常工作??刂瓶驁D如下圖所示:開始啟動(dòng)時(shí)點(diǎn)擊處于停止轉(zhuǎn)動(dòng)狀態(tài),用鍵盤按鍵控制鍵盤鎖、步數(shù)、正轉(zhuǎn)、反轉(zhuǎn)。用80c51作為總控制芯片。ULN2003用于步進(jìn)電機(jī)的驅(qū)動(dòng)控制。其中在鍵盤控制時(shí)用鍵盤掃描程序。圖3.1 總方案圖C51單片機(jī)驅(qū)動(dòng)電路三相步進(jìn)電機(jī)電源及時(shí)鐘電路狀態(tài)顯示電路正反轉(zhuǎn)及指示電路鍵盤控制電路4.硬件方案設(shè)計(jì)系統(tǒng)硬件設(shè)計(jì)4.1最小單片機(jī)系統(tǒng) 5V電源:給系統(tǒng)供電。復(fù)位電路:程序跑飛時(shí)復(fù)位電路可以使程序從新執(zhí)行,相當(dāng)于電腦的重啟。晶振:給單片機(jī)運(yùn)行提供時(shí)鐘。EA接高電平:
11、表示運(yùn)行內(nèi)部程序存儲(chǔ)器下載的程序。P0接排阻:P0口開漏結(jié)構(gòu),使用時(shí)一般接排阻拉高電平。4.2鍵盤設(shè)計(jì) 該電路中采用獨(dú)立鍵盤工作方式,共設(shè)有十二個(gè)按鍵,分別是3,6,9,12,15,18,21,24,27布局選擇功能,鍵盤鎖功能以及步進(jìn)電機(jī)轉(zhuǎn)動(dòng)方向選擇功能。其中有程序決定起作用。4.3步進(jìn)電機(jī)步進(jìn)電機(jī)的驅(qū)動(dòng)采用ULN2003,接到單片機(jī)的P1.0P1.3,如圖步進(jìn)電機(jī)驅(qū)動(dòng)和單片機(jī)連線圖。4.4正反轉(zhuǎn)顯示燈和報(bào)警燈鈴45溫度傳感器模塊5.軟件設(shè)計(jì)主程序流程圖所示如下:判斷電機(jī)是否溫度過高確定輸入步數(shù)等待開鍵盤電機(jī)高溫?報(bào)警,紅燈點(diǎn)亮,步進(jìn)電機(jī)停轉(zhuǎn)開始步進(jìn)電機(jī)運(yùn)轉(zhuǎn)是 鎖鍵盤否是初始化程序否6. 調(diào)
12、 試6.1 Proteus仿真軟件Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。6.2 調(diào)試步驟及方法本電路經(jīng)調(diào)試符合題目要求,
13、各項(xiàng)技術(shù)指標(biāo)均達(dá)到設(shè)計(jì)的目的。具體操作控制方法如下:1、當(dāng)電機(jī)按下啟動(dòng)按鈕時(shí),步進(jìn)電機(jī)根據(jù)制定默認(rèn)狀態(tài)開始轉(zhuǎn)動(dòng);2、當(dāng)電機(jī)按下停止按鈕時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng);3、當(dāng)電機(jī)按下正轉(zhuǎn)按鈕時(shí),步進(jìn)電機(jī)正轉(zhuǎn);4、當(dāng)電機(jī)按下反轉(zhuǎn)按鈕時(shí),步進(jìn)電機(jī)反轉(zhuǎn); 5當(dāng)電機(jī)按下步數(shù)按鈕時(shí),步進(jìn)電機(jī)根據(jù)步數(shù)實(shí)現(xiàn)轉(zhuǎn)動(dòng)7技術(shù)小結(jié)為期一周的單片機(jī)課程設(shè)計(jì)在忙碌中已接近尾聲,經(jīng)過這么多天的努力,終于完成了這次課程設(shè)計(jì)基本設(shè)計(jì)要求,在充實(shí)中也學(xué)到了很多知識(shí),是真正將所學(xué)知識(shí)運(yùn)用于實(shí)踐中的一次很好的體驗(yàn),使人受益匪淺。由于此次控制要求不是很高,選用51系列80C51。接下來就是硬件接口分配問題和如何去驅(qū)動(dòng)電機(jī)。對(duì)于步進(jìn)電機(jī)之前沒有什么
14、接觸,所以我上網(wǎng)查了許多關(guān)于步進(jìn)電機(jī)的資料,知道了其基本工作原理以及怎么去實(shí)現(xiàn)其控制運(yùn)轉(zhuǎn)和驅(qū)動(dòng)。接下來的主要問題就是如何編程去實(shí)現(xiàn)控制它了,這次程序的編寫和調(diào)試對(duì)我來說是個(gè)不小的挑戰(zhàn),因?yàn)橹爸痪帉戇^一些簡(jiǎn)短的小程序,對(duì)較大的程序總體性方面還不能很好的把握。經(jīng)過反復(fù)的嘗試和調(diào)試,用發(fā)現(xiàn)一個(gè)問題,解決一個(gè)問題的方法,還參考了一些別人的經(jīng)驗(yàn)方法,完成了程序的編寫。這對(duì)我以后編寫程序是一次很好的經(jīng)驗(yàn)積累。通過這次課程設(shè)計(jì),我也了解到了自己的不足,以前自己學(xué)習(xí)單片機(jī)的時(shí)候,往往只去看懂別人寫的程序,以為看懂了自己就知道寫了,但事實(shí)并不是這樣,雖然這次課程設(shè)計(jì)程序是完成了,但棘手的地方很多,編程并不像以
15、前認(rèn)為的簡(jiǎn)單。所以在以后的學(xué)習(xí)中,不能手高眼低,一定要腳踏實(shí)地,一步步地走,自己動(dòng)手去做,這樣才能將知識(shí)真正學(xué)到手。這次課程設(shè)計(jì)能得以順利完成,還要感謝毛老師的指導(dǎo),感受很深,是一次很好的經(jīng)驗(yàn)積累和設(shè)計(jì)經(jīng)歷。 8 參 考 文 獻(xiàn)1.張毅剛編著,單片機(jī)原理及應(yīng)用高等教育出版社,2010。2.樓然苗等編著,51系列單片機(jī)設(shè)計(jì)實(shí)例北京航空航天大學(xué)出版社,2006。3.汪道輝編著,單片機(jī)系統(tǒng)設(shè)計(jì)與實(shí)踐 電子工業(yè)出版社 2005。4譚浩強(qiáng)編著,C程序設(shè)計(jì)(第三版)清華大學(xué)出版社 2005。5王港元編著,電工電子實(shí)踐指導(dǎo)江西科學(xué)技術(shù)出版社 2008。6周潤(rùn)景編著,PROTEUS入門實(shí)用教程機(jī)械工業(yè)出版社
16、2011。7林立編著,單片機(jī)原理及應(yīng)用:基于Proteus和Keil C電子工業(yè)出版社 2011。8.閻石編著,數(shù)字電子技術(shù)基礎(chǔ)高等教育出版社,2006。 9 附 錄實(shí)驗(yàn)器材 名稱型號(hào)數(shù)量備注單片機(jī)AT89C511單片機(jī)底座1微動(dòng)開關(guān)9自鎖開關(guān)3發(fā)光二級(jí)管LED3驅(qū)動(dòng)芯片ULN2003A1步進(jìn)電機(jī)28BYJ421電源1溫度傳感器18B201蜂鳴器1三極管NPN1晶振12MHZ1電容各種大小若干電阻各種大小若干排阻1仿真圖程序#include#define uchar unsigned char#define uint unsigned int#define led P0/數(shù)碼管段選#defin
17、e haha P2sbit s1 = P01;sbit s2 = P02;/按鍵定義,s1正轉(zhuǎn),s2反轉(zhuǎn)sbit s3 = P03;/按鍵定義,停止sbit speaker = P04;sbit LED1 = P05;sbit LED2 = P06;sbit LED3 = P07;sbit a = P23;sbit b = P22;sbit c = P21;sbit d = P20;/脈沖信號(hào)輸入端定義sbit _key3 =P10; /3步sbit _key6 =P11; /6步sbit _key9 =P12; /9步sbit _key12 =P13; /12步sbit _key15 =P1
18、4; /15步sbit _key18 =P15; /18步sbit _key21 =P16; /21步sbit _key24 =P17; /24步sbit _key27 =P00; /27步unsigned char code dofly_DuanMa10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ 顯示段碼值09unsigned char code dofly_WeiMa=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/分別對(duì)應(yīng)相應(yīng)的數(shù)碼管點(diǎn)亮,即位碼unsigned char TempData8;
19、 /存儲(chǔ)顯示值的全局變量/*-DS18B20 端口定義-*/sbit DQ=P27;/ds18b20 端口bit ReadTempFlag;/定義讀時(shí)間標(biāo)志/*- 函數(shù)聲明-*/unsigned int ReadTemperature(void);bit Init_DS18B20(void);unsigned char ReadOneChar(void);void WriteOneChar(unsigned char dat);void DelayUs2x(unsigned char t);void DelayMs(unsigned char t);void _18b20(void);/DS1
20、8B20定義/*-*/uchar code display11=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/共陽(yáng)數(shù)碼管驅(qū)動(dòng)信號(hào)0-9,不顯示uchar code time_counter102=0xda,0x1c,0xde,0xe4,0xe1,0xec,0xe5,0xd4,0xe9,0xbc, /9.7 -1ms 0xed,0xa4,0xf1,0x8c,0xf5,0x74,0xf9,0x5c,0xfc,0x18; uchar num1 = 0;/控制取勵(lì)磁信號(hào)變量 uchar num2 = 8;uchar bushu = 0;
21、uchar k=1;/加減檔位控制,1為最小檔bit flag1 = 0;/初始正轉(zhuǎn),正反轉(zhuǎn)標(biāo)志uchar buf4=0,10,10,1;/數(shù)碼管顯示緩存,正轉(zhuǎn),不顯示,不顯示,顯示1檔位,高-低(不能去掉) void key(void); void keyscan(void);/=定時(shí)器0/1初始化函數(shù)=void T0_T1_init()TMOD = 0x11;/定時(shí)器0/1均工作于方式1,16位計(jì)時(shí)方式TH0 = (65536 - 4000)/256;TL0 = (65536 - 4000)%256;/定時(shí)器0,定時(shí)4ms用于數(shù)碼管掃描顯示 TH1 = time_counterk-10;T
22、L1 = time_counterk-11;/定時(shí)器1,定時(shí)10ms用于步進(jìn)電機(jī)轉(zhuǎn)速控制TR0 = 1;TR1 = 1;ET0 = 1;ET1= 1;/開定時(shí)器中斷EA = 1;/開總中斷/=ms級(jí)延時(shí)函數(shù)=void delay1m(uint x) uint i,j; for(i=0;ix;i+) /連數(shù)x次,約 x ms for(j=0;j 0; m-) if(flag1 = 0)/正轉(zhuǎn)LED3 = 1;speaker =1;LED1 = 0;LED2 = 1;switch(num1)case 0:a = 1;b = 0;c = 0;d = 0;break;case 1:a = 1;b =
23、1;c = 0;d = 0;break;case 2:a = 0;b = 1;c = 0;d = 0;break;case 3:a = 0;b = 1;c = 1;d = 0;break;case 4:a = 0;b = 0;c = 1;d = 0;break;case 5:a = 0;b = 0;c = 1;d = 1;break;case 6:a = 0;b = 0;c = 0;d = 1;break;case 7:a = 1;b = 0;c = 0;d = 1;break;num1+;if(num1 = 8)num1 = 0; else /反轉(zhuǎn)LED3 = 1;speaker =1;LE
24、D1 = 1;LED2 = 0;switch(num2)case 0:a = 1;b = 0;c = 0;d = 1;break;case 1:a = 0;b = 0;c = 0;d = 1;break;case 2:a = 0;b = 0;c = 1;d = 1;break;case 3:a = 0;b = 0;c = 1;d = 0;break;case 4:a = 0;b = 1;c = 1;d = 0;break;case 5:a = 0;b = 1;c = 0;d = 0;break;case 6:a = 1;b = 1;c = 0;d = 0;break;case 7:a = 1;
25、b = 0;c = 0;d = 0;break;num2+;if(num2 = 8)num2 = 0; void key()if(s3 = 1) /這里開關(guān)閉合,表示鍵盤鎖打開。如果開關(guān)不閉合,表示上鎖,電機(jī)不轉(zhuǎn)delay1m(100);if(s3 = 1) if(_key27=0) bushu=27; /步數(shù)高的優(yōu)先,即多個(gè)步數(shù)開關(guān)同時(shí)打上,運(yùn)行高步數(shù) else if(_key24=0) bushu=24; else if(_key21=0) bushu=21; else if(_key18=0) bushu=18; else if(_key15=0) bushu=15; else if(_
26、key12=0) bushu=12; else if(_key9=0) bushu=9; else if(_key6=0) bushu=6; else if(_key3=0) bushu=3; /以下為18B20程序/*-18b20初始化-*/bit Init_DS18B20(void)bit dat=0;DQ = 1; /DQ復(fù)位DelayUs2x(5); /稍做延時(shí)DQ = 0; /單片機(jī)將DQ拉低DelayUs2x(200); /精確延時(shí) 大于 480us 小于960usDelayUs2x(200);DQ = 1; /拉高總線DelayUs2x(50); /1560us 后 接收60-240us的存在脈沖dat=DQ; /如果x=0則初始化成功, x=1則初始化失敗DelayUs2x(25); /稍作延時(shí)返回return dat;/*- 讀取一個(gè)字節(jié)-*/unsigned char ReadOneChar(void)unsigned char i=0;unsigned char dat = 0;for (i=8;i0;i-)DQ = 0; / 給脈沖信號(hào)dat=1;DQ = 1; / 給脈沖信號(hào)if(DQ)dat|=0x80;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 氫能裝備施工方案
- 惠州市匯科源科技有限公司電源適配器的生產(chǎn)建設(shè)項(xiàng)目環(huán)評(píng)報(bào)告表
- 昌江縣公益性公墓及殯儀館建設(shè)工程(一期)項(xiàng)目環(huán)評(píng)報(bào)告表
- 甘肅巨化新材料有限公司股東全部權(quán)益價(jià)值項(xiàng)目資產(chǎn)評(píng)估報(bào)告
- 玻璃更換施工方案施工方案
- 2024-2025學(xué)年下學(xué)期高一語(yǔ)文第一單元A卷
- 東江大壩隧道施工方案
- 《雷雨》教案-高一下學(xué)期語(yǔ)文統(tǒng)編版
- 2025年中國(guó)碑石行業(yè)供需態(tài)勢(shì)、市場(chǎng)現(xiàn)狀及發(fā)展前景預(yù)測(cè)報(bào)告
- 提高女性、老年人及殘疾人就業(yè)率的策略及實(shí)施路徑
- 小學(xué)二年級(jí)數(shù)學(xué)-除法豎式計(jì)算訓(xùn)練100題
- 充電樁采購(gòu)安裝投標(biāo)方案
- MOOC 國(guó)際商務(wù)-暨南大學(xué) 中國(guó)大學(xué)慕課答案
- 《酵母表達(dá)系統(tǒng)》課件
- 依法行使權(quán)利-統(tǒng)編版道德與法治八年級(jí)下冊(cè)
- 巡察工作指導(dǎo)手冊(cè)
- 2023-2024全球及中國(guó)企業(yè)組織活力報(bào)告(中文版)
- 2016-2023年北京電子科技職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 電磁學(xué)第四版趙凱華習(xí)題詳細(xì)解答
- 紹興文理學(xué)院開題報(bào)告模板
- 裝卸作業(yè)安全知識(shí)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論