九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

《微機(jī)原理課程設(shè)計(jì)》簡易全自動(dòng)洗衣機(jī)設(shè)計(jì)解讀

  • 資源ID:48165754       資源大?。?span id="24d9guoke414" class="font-tahoma">595.50KB        全文頁數(shù):39頁
  • 資源格式: DOC        下載積分:30積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要30積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

《微機(jī)原理課程設(shè)計(jì)》簡易全自動(dòng)洗衣機(jī)設(shè)計(jì)解讀

江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)0或?qū)屋艁V垮jiangsu university of science and technology微機(jī)原理課程設(shè)計(jì)姓名:學(xué)號(hào):班級(jí):專業(yè): 電氣工程及其自動(dòng)化學(xué)院:電氣與信息工程學(xué)院江蘇科技大學(xué)2013年9月目錄一、課程設(shè)計(jì)內(nèi)容 1二、系統(tǒng)功能要求 12.1基本功能要求 12.2附件功能要求 1三、系統(tǒng)方案論證 1四、系統(tǒng)硬件設(shè)計(jì) 24.1系統(tǒng)硬件原理 24.2功能模塊設(shè)計(jì) 64.3遇到問題及解決措施 7五、系統(tǒng)軟件設(shè)計(jì) 85.1總體設(shè)計(jì)思想 85.2 功能模塊設(shè)計(jì) 105.3遇到問題及解決措施 11六、總結(jié) 11七、附錄 13江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)簡易全自動(dòng)洗衣機(jī)設(shè)計(jì)一、課程設(shè)計(jì)內(nèi)容(1)利用8255A芯片,在數(shù)碼管上實(shí)時(shí)顯示洗衣機(jī)檔位和洗衣時(shí)間倒計(jì)時(shí);(2)利用8254芯片,設(shè)置精確倒計(jì)時(shí)時(shí)間或者發(fā)送信號(hào)給蜂鳴器;(3)利用8259A芯片,設(shè)置按鍵或開關(guān)中斷控制功能;(4)利用0809芯片,模擬水位傳感器采集一個(gè)電壓信號(hào),控制電機(jī)旋轉(zhuǎn)。二、系統(tǒng)功能要求2.1基本功能要求(1) 能夠?qū)崿F(xiàn)洗衣機(jī)換擋功能,比如設(shè)置“1 當(dāng)鍵” “2當(dāng)鍵”等不同擋位;(2)能夠?qū)崿F(xiàn)電機(jī)的正轉(zhuǎn)功能;比如設(shè)置電機(jī)正轉(zhuǎn) 3圈,反轉(zhuǎn)3圈,循環(huán)工作;(3) 能夠?qū)崿F(xiàn)洗衣機(jī)按鍵控制,比如設(shè)置啟動(dòng)鍵” 暫停鍵”或 停止鍵”(4) 能夠?qū)崿F(xiàn)按鍵或開關(guān)控制洗衣機(jī)的暫停,比如按下暫停鍵”正在旋轉(zhuǎn)的 電機(jī)停止工作,再按一下 啟動(dòng)鍵”洗衣機(jī)又繼續(xù)工作;(5)能夠?qū)崿F(xiàn)洗滌、甩干連續(xù)自動(dòng)功能,甩干后,洗衣機(jī)會(huì)通過蜂鳴器發(fā)出報(bào)警聲音;2.2附件功能要求(1)能夠?qū)崿F(xiàn)洗衣機(jī)單獨(dú)甩干功能,此時(shí)電機(jī)旋轉(zhuǎn)速度很快;(2)能夠?qū)崿F(xiàn)洗衣機(jī)進(jìn)水、排水或者洗滌、漂洗、甩干等不同功能使用不同顏 色的指示燈;(3)能夠?qū)崿F(xiàn)洗滌、漂洗、甩干全過程自動(dòng)化;(4)能夠?qū)崿F(xiàn)洗衣機(jī)甩干后,發(fā)出優(yōu)美的音樂,音樂一直響直到人為關(guān)掉或者音樂響一定時(shí)間后自動(dòng)關(guān)閉。(5)自己設(shè)計(jì)的其他有特色的功能。三、系統(tǒng)方案論證3.1方案一輸入設(shè)備主要有啟動(dòng)按鈕、暫停按鈕、檔位選擇、排水按鈕、及脫水按鈕。輸出設(shè)備主要有電源指示燈、數(shù)碼管、步進(jìn)電機(jī)、蜂鳴器等。首先構(gòu)思系統(tǒng)的總體結(jié)構(gòu),根據(jù)設(shè)計(jì)要求確定好系統(tǒng)大致的硬件組成及其結(jié) 構(gòu),其次根據(jù)系統(tǒng)的各個(gè)功能把軟件分成幾個(gè)不同的模塊,依次實(shí)現(xiàn)各個(gè)模塊的功能,最后把各個(gè)模塊組合起來完成整個(gè)系統(tǒng)的功能。3.2方案二根據(jù)任務(wù)的要求,選擇了 4個(gè)數(shù)碼管作為信號(hào)輸出,以狀態(tài)輸入開關(guān)作為輸 入信號(hào),都連接至8255A芯片上。步進(jìn)電動(dòng)機(jī)由8255PC4-PC7口驅(qū)動(dòng),其中洗 衣過程漂洗過程排水過程的時(shí)間都由 8254提供定時(shí)信號(hào),實(shí)現(xiàn)在預(yù)定時(shí)間狀態(tài) 的轉(zhuǎn)換。在對(duì)芯片進(jìn)行初始化之后,先判斷輸入信號(hào)的狀態(tài),根據(jù)輸入狀態(tài)的不同調(diào) 用不同的子程序,鑒于定時(shí)程序在很多子程序里調(diào)用到, 多次編寫加長了程序的 長度,所以每次在調(diào)用之前先將計(jì)數(shù)值讀入一個(gè)寄存器中,在延時(shí)程序中讀取此 寄存器中的數(shù)值即可。當(dāng)按照輸入狀態(tài)運(yùn)行完之后,最后檢測(cè)到已完成的時(shí)候就啟動(dòng)蜂鳴報(bào)警, 洗 衣過程完成。3.3方案比較方案一相對(duì)來說剛開始容易,但是后續(xù)工作麻煩,不容易將每個(gè)模塊有機(jī)的 整合起來,會(huì)出現(xiàn)接口沖突,而方案二在設(shè)計(jì)初就從全局出發(fā), 充分分配好各個(gè) 端口的配置及用途,避免了方案一中的沖突,所以方案二更優(yōu)越。四、系統(tǒng)硬件設(shè)計(jì)4.1系統(tǒng)硬件原理(1)8255A 芯片8255A是一個(gè)通用的可編程的并行接口芯片,內(nèi)部有 2個(gè)8位I/O 口( A、 B),兩個(gè)4位I/O 口( PC74、PC30).通過編程可設(shè)置3種工作方式,可適 用于CPU與I/O設(shè)備之間的多種數(shù)據(jù)傳送方式的要求。C 口可作為數(shù)據(jù)口,可作為信號(hào)線(CPU與I/O設(shè)備之間的應(yīng)答信號(hào)),可作為狀態(tài)口,可按位置位/ 復(fù)位。8255A的內(nèi)部結(jié)構(gòu)如圖1所示:8255的引腳分配:(1) DOD7: 8位,雙向,三態(tài)數(shù)據(jù)線,用來與系統(tǒng)數(shù)據(jù)總線相連;(2) 端口 A、B、C: PA0PA7( A組數(shù)據(jù)信號(hào),用來連接外設(shè));PB0PB7 (B組數(shù)據(jù)信號(hào),用來連接外設(shè));PC0PC7(C組數(shù)據(jù)信號(hào),用來連接外設(shè)或者作為控制信號(hào))。(3) CS、RESET、WR、RD、A1、A0 (內(nèi)部 4 個(gè)端口)。(4) VCC、GND。8255A有三種工作方式,用戶可以通過編程來設(shè)置。方式 0簡單輸入/ 輸出一一查詢方式;A,B,C三個(gè)端口均可。方式1選通輸入/輸出一一中 斷方式;A , B,兩個(gè)端口均可。方式2 雙向輸入/輸出 中斷方式。只有 A端口才有。工作方式的選擇可通過向控制端口寫入控制字來實(shí)現(xiàn)。(2)芯片 82548254是可編程計(jì)數(shù)器/定時(shí)器。它的引腳及功能示意圖如圖 2所示。數(shù)據(jù)總 線緩沖器是8254與CPU之間的數(shù)據(jù)接口,它是一個(gè) 8位雙向三態(tài)緩沖器。讀/ 寫控制邏輯接受CPU送來的讀/寫控制信號(hào),并加以組合完成對(duì) 8254內(nèi)部操作 的控制。8254內(nèi)部包含三個(gè)獨(dú)立的結(jié)構(gòu)功能完全相同的 16位可預(yù)置的遞減計(jì)數(shù) 器??刂谱旨拇嫫饔脕泶娣庞蒀PU寫入8254的方式選擇控制字,以確定計(jì)數(shù)器 的操作方式。1242233774215206S254197US179161015團(tuán)2 $25斗引腳圖(3) 8259 芯片8259A,可編程中斷控制器芯片。它的引腳圖如圖3所示12S227326斗2552462378259A2282192010191118121713161415圖38259A引腳圖它是可以用程序控制的中斷控制芯片。單個(gè)的8259A能管理8級(jí) 向量優(yōu)先級(jí)中斷。在不增加其他電路的情況下,最多可以級(jí)聯(lián)成級(jí)的向量優(yōu)級(jí)中斷系 統(tǒng)。8259A有多種工作方式,能用于各種系統(tǒng)。各種工作方式的設(shè)定是在初始化 時(shí)通過軟件進(jìn)行的。 在總線控制器的控制下,8259A芯片可以處于編程狀態(tài)和 操作狀態(tài),編程狀態(tài)是CPU使用IN或OUT指令對(duì)8259A芯片進(jìn)行初始化編程 的狀態(tài)。(4) 0809芯片ADC0809是8位逐次逼近型A/D轉(zhuǎn)換器。它由一個(gè)八路模擬開關(guān),一個(gè)地址 譯碼器,一個(gè)A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出所存器組成,多路開關(guān)可選通 8個(gè)模擬 通道,允許8路模擬量分時(shí)輸入,共用 A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,三態(tài)輸出用于鎖存 A/D轉(zhuǎn)換完的數(shù)據(jù),當(dāng)0E端為高電平時(shí),才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完 成的數(shù)據(jù)。IN0-IN7 : 8條模擬量輸入通道 ADC0809對(duì)輸入模擬量要求:信號(hào)單 極性,電壓范圍是0-5V,若信號(hào)太小,必須進(jìn)行放大;輸入的模擬量在轉(zhuǎn)換過程 中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入端前加采樣保持電路。地址輸入和控制線:4條ALE為地址鎖存允許輸入線,高電平有效,當(dāng)ALE線為高電平時(shí),地址鎖存與譯碼器將A,B,C三條地址線的地址信號(hào)進(jìn)行鎖存,經(jīng)譯碼后 被選中的通道模擬量通過轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。A,B和C為地址輸入線,用于選通IN0-IN7上的一路模擬量輸入。通道選擇表如下表一所示。表10809通道選擇表CBA選擇的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7數(shù)字量輸出及控制線:11條ST為轉(zhuǎn)換啟動(dòng)信號(hào)。當(dāng)ST上跳沿時(shí),所有內(nèi)部寄 存器清零;下跳沿時(shí),開始進(jìn)行A/D轉(zhuǎn)換;在跳轉(zhuǎn)期間,ST應(yīng)保持低電平,EOC 為轉(zhuǎn)換結(jié)束信號(hào),當(dāng)EOC為高電平時(shí),表明轉(zhuǎn)換結(jié)束;否則表明正在進(jìn)行A/D轉(zhuǎn)換,OE為輸出允許信號(hào),用于控制三條輸出鎖存器想單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù),0E=1,輸出轉(zhuǎn)換得到的數(shù)據(jù)OE=ft出數(shù)據(jù)線呈高阻狀態(tài)。D7-D0為數(shù)字 量輸出線CLK為時(shí)鐘輸入信號(hào)線,因ADC0809的內(nèi)部沒有時(shí)鐘電路,所需時(shí)鐘 信號(hào)必須由外界提供,通常頻率為500KHZ。VREF(+),VREF(-)為參考電壓輸入。 4.2功能模塊設(shè)計(jì)圖4硬件功能圖圖4硬件功能圖中,系統(tǒng)總體功能模塊在具體實(shí)踐中,因硬件資源的限制有 所調(diào)整,比如有些電路采用其他電路來模擬, 進(jìn)水部分有電位器來模擬,電機(jī)驅(qū) 動(dòng)用直流系統(tǒng)來模擬。其接線圖如圖5所示:DOXD7D7XA2 A08259XIOR RDXIOWWRIRQIO Y1CSINTXDOXD7時(shí)鐘源EXOEXODORDD7WRCSCLKOAOAlOUTO 3254GATElCLKlCLK20UT10UT2GATE1GET2XIORX10WI0Y1XA2XA3時(shí)鐘源SPK+5V圖5系統(tǒng)接線圖4.3遇到問題及解決措施問題1:當(dāng)把所有線路按照設(shè)計(jì)要求連接好過后,發(fā)現(xiàn)芯片 8254沒有輸出 時(shí)鐘信號(hào)。解決方法:芯片8254沒有輸出時(shí)鐘信號(hào),這表示8254沒有起作用,原以為 是芯片壞了,換了好幾個(gè)新品牌還是一樣不起作用, 后來經(jīng)過不斷排查是由于采 用了 12V供電電壓,實(shí)際要求是5V。問題2:當(dāng)把所有的線路按照設(shè)計(jì)要求連接好之后,發(fā)現(xiàn)電機(jī)不能運(yùn)轉(zhuǎn)。解決方法:經(jīng)檢查是連接到電機(jī)驅(qū)動(dòng)電路上的接線出現(xiàn)斷路,換根接線就把 問題解決了五、系統(tǒng)軟件設(shè)計(jì)5.1總體設(shè)計(jì)思想程序首先要用偽指令定義一下。然后是MOV DX,CADDRMOV AL,MODEOUT DX,ALMOV DX,MY8254_MODEMOV AL,36HOUT DX,ALMOV DX,MY8259_ICW1MOV AL,1BHOUT DX,ALMOV DX,MY8259_ICW2MOV AL,08HOUT DX,ALMOV DX,MY8259_ICW4MOV AL,01HOUT DX,ALMOV DX,MY8259_OCW1MOV AL,0FCHOUT DX,AL8255、8254與8259的初始化,如:;8255初始化;初始化8254工作方式;計(jì)數(shù)器0,方式3;初始化實(shí)驗(yàn)系統(tǒng)中8259的 ICW1;邊沿觸發(fā)、單片8259、需要ICW4;初始化實(shí)驗(yàn)系統(tǒng)中8259的 ICW2;初始化實(shí)驗(yàn)系統(tǒng)中8259的ICW4;非自動(dòng)結(jié)束EOI;初始化實(shí)驗(yàn)系統(tǒng)中8259的OCW1;打開IR0和IR1的屏蔽位然后按照原先設(shè)計(jì)好的原理框圖的步驟設(shè)計(jì)檢測(cè)洗衣機(jī)開 /停信號(hào),如;CHECK:MOV DX,PORTBIN AL,DXTEST AL,80HJZ CHECK還有接下來的點(diǎn)亮運(yùn)行指示燈等程序。在設(shè)計(jì)中用到了子程序調(diào)用、循環(huán)、 測(cè)試等程序。在編程時(shí)按照設(shè)計(jì)好的原理框圖,結(jié)合微機(jī)課程上所學(xué)的具有一定功能的程 序一一編出來,然后在計(jì)算機(jī)上進(jìn)行調(diào)試,發(fā)現(xiàn)錯(cuò)誤后再進(jìn)行修改。在編程過程 中要注意程序的嵌套使用,即有些程序按照前面流程圖設(shè)計(jì)好了但在后面的程序 中然要用,所以就要注意調(diào)用。軟件可分為10個(gè)模塊:主程序、鍵盤掃描子程序、參數(shù)設(shè)置子程序、延時(shí)子 程序、顯示子程序、自檢程序、甩干子程序、暫停子程序、蜂鳴器子程序。系統(tǒng)的總體流程圖如圖6所示:開始調(diào)用脫水子程關(guān)閉脫水標(biāo)志啟動(dòng)蜂鳴器結(jié)束圖6整體流程方框圖5.2功能模塊設(shè)計(jì)(1)延時(shí)功能模塊設(shè)計(jì)根據(jù)機(jī)箱上給出的芯片我們選用了 8254作為定時(shí)計(jì)數(shù)器,在延時(shí)程序中計(jì) 時(shí),在加水過程中計(jì)量加水的量。由于需要多次調(diào)用延時(shí)子程序,所以把他寫成一個(gè)DALLY程序,每次調(diào)用的時(shí)候配合 CALL和RET就能往返于子程序和 主程序之間,之前把要記的數(shù)值放在 SI寄存器中,在子程序中讀取該寄存器就 可以知道要記的數(shù)是多少而不必每次都重新給計(jì)數(shù)器賦值,減少了程序的步驟也使得更易讀。(2)洗衣功能模塊設(shè)計(jì)洗衣子程序中是一個(gè)不停的在正傳反轉(zhuǎn)間循環(huán)的過程,期間每次正轉(zhuǎn)或者反 轉(zhuǎn)都調(diào)用了延時(shí)子程序,定時(shí)3S,在完成5次循環(huán)過后,洗衣過程完成。(3)脫水功能模塊設(shè)計(jì)脫水子程序中只需調(diào)用上面做好的延時(shí)程序,并在該延時(shí)之前打開或關(guān)閉相應(yīng)的指示燈即可。然后用8086的片選信號(hào)加給0832控制電動(dòng)機(jī)正轉(zhuǎn)反轉(zhuǎn),根據(jù) 公式:V0= -NVREF/256計(jì)算得到要使電動(dòng)機(jī)保持不轉(zhuǎn)的時(shí)候要輸入給 80H,而 正轉(zhuǎn)則取最大值FFH,反轉(zhuǎn)取最小值00H,由于這樣得到的V0不相同,所以引 起了正傳反轉(zhuǎn)時(shí)候的速度有些差異,最后等延時(shí)子程序執(zhí)行完畢后,關(guān)閉相應(yīng)指 示燈即可完成。脫水、延時(shí)、加水等子程序后面都要加上RET,否則將無法跳回主程序MAIN。當(dāng)時(shí)在前幾次通電試驗(yàn)的時(shí)候每次都出現(xiàn)在排水的時(shí)候加水指 示燈亮起,需要加水后才能熄滅,后檢查發(fā)現(xiàn)就是少了一個(gè)RET導(dǎo)致的,執(zhí)行完排水程序后沒返回而是接下去執(zhí)行了加水程序。(4)甩干、報(bào)警功能模塊設(shè)計(jì)甩干子程序是一個(gè)不停的在正轉(zhuǎn)的過程,甩干可以分為快甩和慢甩兩種檔位,甩干子程序還可以通過按鍵直接跳過洗衣進(jìn)行調(diào)用。當(dāng)甩干程序運(yùn)行結(jié)束后,8254會(huì)產(chǎn)生一個(gè)時(shí)鐘信號(hào)給蜂鳴器從而讓蜂鳴器報(bào)警,表示洗衣過程結(jié)束。(5)加水子程序設(shè)計(jì)加水是這個(gè)總程序中很重要的部分, 特別是如何將水位信號(hào)讀取和比較,最 終還要輸出到8253進(jìn)行計(jì)數(shù)。首先打開加水指示燈,將水位信號(hào)掃描到寄存器 AL中。然后根據(jù)與設(shè)定好的數(shù)據(jù)進(jìn)行比較確定水位信號(hào)是什么,假如檢測(cè)到的 是高水位的話,跳轉(zhuǎn)到LEVEL ,否則給AL置為3,高水位的時(shí)候?qū)⒖刂谱謱懡o 計(jì)數(shù)器0,繼續(xù)執(zhí)行下去直到給 BL加上1,當(dāng)加到與原來保存的水位信號(hào)數(shù)值 相等的時(shí)候,由PC7 口將信號(hào)傳遞給8253,告之加水計(jì)數(shù)程序完成,跳出加水 程序,然后關(guān)閉加水指示燈,執(zhí)行下面的程序。5.3遇到問題及解決措施問題1.通過中斷實(shí)現(xiàn)數(shù)碼管計(jì)時(shí)顯示與步進(jìn)電機(jī)延時(shí)相互沖突, 導(dǎo)致步進(jìn)電 機(jī)不能正常運(yùn)轉(zhuǎn)。解決方法:經(jīng)過很長時(shí)間調(diào)試,還是不能成功,由于時(shí)間有限,所以最后只 好通過步進(jìn)電機(jī)正反轉(zhuǎn)次數(shù)來計(jì)時(shí)。問題2.報(bào)警功能實(shí)現(xiàn)后不知道如何使它停止下來。解決辦法:在進(jìn)入報(bào)警子程序前加變量判斷,通過按鍵控制變量的取反改變, 停止報(bào)警。六、總結(jié)這次微機(jī)原理課程設(shè)計(jì)歷時(shí)兩個(gè)星期, 在整整兩星期的日子里,可以說得是 苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的 知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。以前在上課的時(shí)候,老師 經(jīng)常強(qiáng)調(diào)在寫一個(gè)程序的時(shí)候,一定要事先把程序原理方框圖化出來, 但是我開 始總覺得這樣做沒必要,很浪費(fèi)時(shí)間。但是,這次課程設(shè)計(jì)完全改變了我以前的 那種錯(cuò)誤的認(rèn)識(shí),以前我接觸的那些程序都是很短、 很基礎(chǔ)的,但是在課程設(shè)計(jì) 中碰到的那些需要很多代碼才能完成的任務(wù),畫程序方框圖是很有必要的。因?yàn)?通過程序方框圖,在做設(shè)計(jì)的過程中,我們每一步要做什么,每一步要完成什么 任務(wù)都有一個(gè)很清楚的思路,而且在程序測(cè)試的過程中也有利于查錯(cuò)。其次,以前對(duì)于編程工具的使用還處于一知半解的狀態(tài)上,但是經(jīng)過一段上 機(jī)的實(shí)踐,對(duì)于怎么去排錯(cuò)、查錯(cuò),怎么去看每一步的運(yùn)行結(jié)果,怎么去了解每 個(gè)寄存器的內(nèi)容以確保程序的正確性上都有了很大程度的提高。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論, 才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。 在設(shè)計(jì) 的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會(huì)遇到過各 種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處, 對(duì)以前所學(xué)過的知 識(shí)理解得不夠深刻,掌握得不夠牢固。這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問題,通過網(wǎng)絡(luò)和 與同學(xué)的討論基本上得到解決,提高了自己解決和分析問題的能力。13江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)七、附錄洗衣機(jī)程序.*根據(jù)查看端口資源修改下列符號(hào)值*I0Y1EQU 3040HIOYOEQU 3000H;片選IOY0對(duì)應(yīng)的端口始地址.*MY8255_AEQUI0Y0+00H*4;8255的A 口地址MY8255_BEQUI0Y0+01H*4;8255的B 口地址MY8255_CEQUI0Y0+02H*4;8255的C 口地址MY8255_MODEEQUI0Y0+03H*4;8255的控制寄存器地址MY8254_C0UNT0EQUI0Y1+00H*4;8254計(jì)數(shù)器0端口地址MY8254_C0UNT1EQUIOY1+01H*4;8254計(jì)數(shù)器1端口地址MY8254_C0UNT2EQUIOY1+02H*4;8254計(jì)數(shù)器2端口地址MY8254_MODEEQUIOY1+03H*4;8254控制寄存器端口地址I0Y2EQU3080H;片選IOY0對(duì)應(yīng)的端口始地址.*MY8259_ICW1EQUI0Y2+00H;實(shí)驗(yàn)系統(tǒng)中8259的ICW1端口地址MY8259_ICW2EQUIOY2+04H;實(shí)驗(yàn)系統(tǒng)中8259的ICW2端口地址MY8259_ICW3EQUIOY2+04H;實(shí)驗(yàn)系統(tǒng)中8259的ICW3端口地址MY8259_ICW4EQUIOY2+04H;實(shí)驗(yàn)系統(tǒng)中8259的ICW4端口地址MY8259_OCW1址EQUIOY2+04H;實(shí)驗(yàn)系統(tǒng)中8259的0CW1端口地MY8259_OCW2址EQUI0Y2+00H;實(shí)驗(yàn)系統(tǒng)中8259的0CW2端口地MY8259_OCW3 EQU I0Y2+00H址STACK1 SEGMENT STACK;實(shí)驗(yàn)系統(tǒng)中8259的0CW3端口地DW 256 DUPSTACK1 ENDSDATA SEGMENTDTABLE1DB06H,3FH,73H,77H,39H,06H,5BH,4FH,66H,80HDTABLE3DB10H,30H,20H,60H,40H,0C0H,80H,90HDBDTABLE 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71HTIME1 DB 05HTIME2 DB 05HTIME3 DB 0FHMESDB Press any key to exit!,0AH,0DH,0AH,0DH,$FREQ_LIST DW371,495,495,495,624,556,495,556,624DW495,495,624,742,833,833,833,742,624DW624,495,556,495,556,624,495,416,416,371DW495,833,742,624,624,495,556,495,556,833DW742,624,624,742,833,990,742,624,624,495DW556,495,556,624,495,416,416,371,495,0TIME_LIST DB4, 6, 2, 4,4, 6, 2, 4, 4DB6, 2, 4, 4, 12,1,3, 6,2DB4, 4, 6, 2, 4, 4, 6,2, 4, 4DB12, 4, 6, 2, 4, 4, 6,2, 4, 4DB6,2, 4,4, 12, 4,6, 2,4, 4DB6,2, 4,4,6,2, 4,4,12DATAENDSCODE SEGMENT瀕率表;時(shí)間表ASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV DX,MY8254_MODE;初始化8254工作方式MOV AL,36HOUT DX,AL;計(jì)數(shù)器0,方式3MOV DX,MY8254_COUNTO;裝入計(jì)數(shù)初值MOV AL,00HOUT DX,AL;18432分頻MOV AL,48HOUT DX,ALMOV DX,MY8254_MODE;初始化8254工作方式MOV AL,050HOUT DX,AL;計(jì)數(shù)器2,方式0MOV DX,MY8254_COUNT1;裝入計(jì)數(shù)初值MOV AL,03HOUT DX,AL;18432分頻MOV AL,00HOUT DX,ALMOV DX,MY8254_MODE;初始化8254工作方式MOV AL,0B6HOUT DX,AL;計(jì)數(shù)器2,方式3MOV DX,MY8254_COUNT2;裝入計(jì)數(shù)初值MOV AL,00HOUT DX,AL;18432分頻MOV AL,05HOUT DX,ALMOV DX,MY8259_ICW1;初始化實(shí)驗(yàn)系統(tǒng)中8259的ICW1MOV AL,1BHOUT DX,AL;邊沿觸發(fā)、單片8259、需要ICW4MOV DX,MY8259_ICW2MOV AL,08H;初始化實(shí)驗(yàn)系統(tǒng)中8259的ICW217江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)18江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)OUT DX,ALMOV DX,MY8259_ICW4MOV AL,01HOUT DX,ALMOV DX,MY8259_OCW1MOV AL,0FCHOUT DX,ALMOV SI,3000HMOV SI,00HMOV SI+02H,05HMOV SI+04H,01HMOV SI+06H,01HMOV SI+08H,01HMOV SI+0AH,02HMOV SI+0CH,02HMOV SI+0EH,01HMOV DX,MY8255_MODEMOV AL,81HOUT DX,ALKAISHI:MOV SI,3000HMOV DH,SI+8CMP DH,8JA ZHI1CMP DH,1JB ZHI8JMP JIXU;初始化實(shí)驗(yàn)系統(tǒng)中8259的ICW4;非自動(dòng)結(jié)束EOI;初始化實(shí)驗(yàn)系統(tǒng)中8259的OCW1;打開IR0和IR1的屏蔽位;數(shù)碼管顯示1;數(shù)碼管顯示2;洗滌,甩干判斷變量;電機(jī)速度檔位;電機(jī)輸入節(jié)拍倒轉(zhuǎn)判斷變量;電機(jī)方向控制變量;判斷是否進(jìn)入電機(jī)運(yùn)行程序的變量;警報(bào)器關(guān)閉判斷變量;初始化8255工作方式力式0, A 口、B 口輸出,C 口低4位輸入;讀取變量首地址;跳轉(zhuǎn)到節(jié)拍1開始轉(zhuǎn)動(dòng);跳轉(zhuǎn)到節(jié)拍8開始轉(zhuǎn)動(dòng)ZHI1: MOV SI+8,01HJMP JIXUZHI8: MOV SI+8,08H19江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)JIXU: CALL KEYSCANCMP SI+0EH,02HJNZ CMOV DX,MY8254_MODEMOV AL,0F6HOUT DX,ALMOV AX,0000HMOV DX,MY8254_COUNT2OUT DX,ALMOV AL,AHOUT DX,ALC:MOV AH,1INT 16HJZ SFRUNQUIT: MOV AX,4C00HINT 21HSFRUN: MOV SI,3000HMOV DH,SI+0CHCMP DH,01HJNZ JIXUMOV DH,SI+0AHCMP DH,01HJNZ ZIJIANINC SI+08HJMP RUNKAISHI1: JMP KAISHIZIJIAN: DEC SI+8RUN: MOV AL,SI+8MOV BX,OFFSET DTABLE3AND AX,00FFH;鍵盤掃描;初始化8254工作方式;計(jì)數(shù)器2,方式3;裝入計(jì)數(shù)初值;判斷是否有按鍵按下;無按鍵則跳回繼續(xù)循環(huán),有則退出;結(jié)束程序退出;讀取變量首地址;判斷變量SI+0CH;不相等跳轉(zhuǎn)到JIXU;判斷電機(jī)運(yùn)行方向;正向節(jié)拍加1;反向節(jié)拍減一;將變量與節(jié)拍表對(duì)應(yīng)21江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)ADD BX,AXDEC BXMOV AL,BXMOV DX,MY8255_COUT DX,AL;PC 口輸出節(jié)拍數(shù)值;判斷速度檔位調(diào)用相應(yīng)的延遲時(shí)間;運(yùn)行個(gè)節(jié)拍DANG1:MOV DH,SI+6CMP DH,05HJNZ DANG2PUSH CXMOV CX,10HDA1:CALL DALLY1CALL DALLY1CALL DALLY1;鍵盤掃描;跳轉(zhuǎn)到PPCALL KEYSCANJMP PPDANG2:CMP DH,01HJNZ DANG3DA2:CALL DALLY1CALL DALLY1CALL KEYSCANJMP PPDANG3:CMP DH,02HJNZ PPDA3:CALL DALLY1CALL KEYSCANJMP PPDANG4:CMP DH,03HJNZ KAISHI1DA4:CALL KEYSCAN22江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)PP: MOV DX,MY8259_OCW3MOV AL,0CHOUT DX,ALIN AL,DXTEST AL,80HJZ AAAND AL,03HCMP AL,00HJE IR0ISR序JNE IR1ISR序AA:JMP KAISHIDANG4:CMP DH,03HJNZ KAISHI1DA4:CALL KEYSCANJMP KAISHIIR0ISR: MOV SI,3000HCMP SI+4H,02HJZ M2DIR:CMP SI+0AH,01HJZ DIR1MOV SI+0AH,01HJMP M1;向8259的OCW3發(fā)送查詢命令;讀出查詢字;判斷中斷是否已響應(yīng);沒有響應(yīng)則繼續(xù)查詢;若為IR0請(qǐng)求,跳到IR0處理程;若為IR1請(qǐng)求,跳到IR1處理程;跳轉(zhuǎn)到KAISHI循環(huán);判斷是否是甩干模式;判斷是否是正向23江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)#江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)DIR1: MOV SI+0AH,02HCALL KEYSCANM1:DEC TIME1MOV AX,10DDIV TIME1MOV AL,TIME1MOV SI+02H,ALCALL KEYSCANCMP TIME1,00HJZ MJMP CTU;洗滌圈數(shù)減1;是否洗滌結(jié)束;轉(zhuǎn)入計(jì)數(shù)初值M:MOV SI+4H,02H;進(jìn)入甩干模式MOV SI+6,02H;速度檔位選2M2:DEC TIME2MOV SI,0MOV AL,TIME2;甩干計(jì)數(shù)減一MOV SI+02H,ALCMP SI+02H,00HJZ FINISHJNZ EOI;將計(jì)數(shù)值放入數(shù)碼管顯示CTU:MOV DX,MY8254_COUNT1;裝入計(jì)數(shù)初值MOV AL,00HOUT DX,ALMOV AL,03HOUT DX,ALJMP EOI;18432分頻EOI:命令MOV DX,MY8259_OCW2MOV AL,20HOUT DX,AL;向?qū)嶒?yàn)系統(tǒng)中8259發(fā)送中斷結(jié)束25江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)26江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)JMP KAISHIFINISH: MOV SI+0CH,02HCALL PLAYJMP KAISHI;關(guān)閉進(jìn)入電機(jī)程序標(biāo)志;調(diào)用報(bào)警程序PLAY PROC NEARSOUND:CMP SI+0EH,02HJZ EOIMOV SI,OFFSET FREQ_LISTMOV DI,OFFSET TIME_LISTP1:MOV DX,1CH1.0416667M = 0FE502HMOV AX,02000HDIV WORD PTR SIMOV DX,MY8254_COUNT2OUT DX,ALMOV AL,AHOUT DX,ALMOV DL,DICALL DALLY3DEC TIME3ADD SI,2INC DICMP WORD PTR SI,0JE SOUND;裝入頻率表起始地址;裝入時(shí)間表起始地址;輸入時(shí)鐘為1.0416667MHz,;取出頻率值計(jì)算計(jì)數(shù)初值,0F4240H /輸出頻率;裝入計(jì)數(shù)初值;取出演奏相對(duì)時(shí)間,調(diào)用延時(shí)子程序;判斷是否到曲末?PLAY ENDP27江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì);軟件延時(shí)子程序DALLY1 PROC NEARPUSH CXPUSH AXMOV CX,008FHD11:MOV AX,5000HD22:DEC AXJNZ D22PUSH CXPUSH AXCALL KEYSCANPOP AXPOP CXLOOP D11POP AXPOP CXRETDALLY1 ENDP28江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)#江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)KEYSCAN PROC NEAR BEGIN: CALL DISCALL CLEARCALLCCSCANJNZ GETKEY1JMP GOBACK1GETKEY1:CALL DISCALL DALLYCALL DALLY;鍵盤掃描子程序;顯示刷新;清屏;掃描按鍵;有鍵按下則跳置GETKEY1;顯示刷新#江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì);設(shè)置當(dāng)前檢測(cè)的是第幾列;選取一列,將 X1X4中一個(gè)置0;讀Y1丫4 ,用于判斷是哪一行按鍵;是否為第1行;不是則繼續(xù)判斷;設(shè)置第1行第1列的對(duì)應(yīng)的鍵值;是否為第2行;不是則繼續(xù)判斷;設(shè)置第2行第1列的對(duì)應(yīng)的鍵值;是否為第3行;不是則繼續(xù)判斷;設(shè)置第3行第1列的對(duì)應(yīng)的鍵值;是否為第4行;不是則繼續(xù)判斷;設(shè)置第4行第1列的對(duì)應(yīng)的鍵值CALL CLEARCALL CCSCANJNZ GETKEY2JMP BEGINGETKEY2:M0V CH,OFEHMOV CL,00HCOLUM: MOV AL,CHMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_C閉合IN AL,DXL1:TEST AL,01HJNZ L2MOV AL,00HJMP KCODEBEGIN1:JMP BEGINL2:TEST AL,02HJNZ L3MOV AL,04HJMP KCODEL3:TEST AL,04HJNZ L4MOV AL,08HJMP KCODEL4:TEST AL,08HJNZ NEXTMOV AL,0CH;清屏;再次掃描按鍵;有鍵按下則跳置GETKEY2;否則跳回開始繼續(xù)循環(huán)29江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)KCODE: ADD AL,CL 鍵值CALL PUTBUFPUSH AXKON:CALL DISCALL CLEARCALLCCSCANJNZ KONPOP AXNEXT:INC CLMOV AL,CHTEST AL,08HJZ BEGIN1ROL AL,1MOV CH,ALJMP COLUMGOBACK1: RETKEYSCAN ENDP;將第1列的值加上當(dāng)前列數(shù),確定按;保存按鍵值;顯示刷新;清屏;掃描按鍵,判斷按鍵是否彈起;未彈起則繼續(xù)循環(huán)等待彈起;當(dāng)前檢測(cè)的列數(shù)遞增;檢測(cè)是否掃描到第4列;沒檢測(cè)到第4列則準(zhǔn)備檢測(cè)下一列30江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)#江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)CCSCAN PROC NEARMOV AL,00HMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXNOT ALAND AL,0FHRETCCSCAN ENDP;掃描是否有按鍵閉合子程序;將4列全選通,X1X4置0;讀Y1Y4;取出Y1Y4的反值31江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)32江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)CLEAR PROC NEARMOV DX,MY8255_BMOV AL,00HOUT DX,ALRETCLEAR ENDP;清除數(shù)碼管顯示子程序;段位置0即可清除數(shù)碼管顯示DIS PROC NEARPUSH AXPUSH SIMOV SI,3006HMOV DL,0F7HMOV AL,DLAGAIN:PUSH DXMOV DX,MY8255_AOUT DX,ALMOV AL,SIMOV BX,OFFSET DTABLEAND AX,00FFHADD BX,AXMOV AL,BXMOV DX,MY8255_BOUT DX,ALCALL DALLYDEC SIDEC SIPOP DXMOV AL,DLTEST AL,01H;顯示鍵值子程序;設(shè)置X1X4,選通一個(gè)數(shù)碼管;取出緩沖區(qū)中存放鍵值;寫入數(shù)碼管ADp;取下一個(gè)鍵值;判斷是否顯示完?33江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì);顯示完,返回;未顯示完,跳回繼續(xù);保存鍵值子程序;是否案件0按下;是否案件1按下;打開進(jìn)入電機(jī)程序標(biāo)志;關(guān)閉進(jìn)入電機(jī)程序標(biāo)志;是否案件2按下JZ 0UT1ROR AL,1MOV DL,ALJMP AGAINOUT1:POP SIPOP AXRETDIS ENDPPUTBUF PROC NEARMOV SI,3000HCMP AL,00HJNZ MODEMDL: CMP SI+4,01HJZ MDL1MOV SI+4,01HJMP LASTMDL1: MOV SI+4,02HJMP LASTMODE: CMP AL,01HJNZ STOPCMP SI+0CH,01HJZ MODE1MOV SI+0CH,01HJMP LASTCMP AL,03HMOV SI+0EH,02HMODE1:MOV SI+0CH,02HJMP LAST34江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)STOP: CMP AL,02HJNZ GRD1MOV SI+0CH,02HMOV TIME1,05HMOV TIME2,05HMOV SI+4,01HMOV SI+6,02HGRD1: CMP AL,04HJNZ GRD2MOV SI+6,05HGRD2: CMP AL,05HJNZ GRD3MOV SI+6,01HGRD3: CMP AL,06HJNZ GRD4MOV SI+6,02HGRD4: CMP AL,07HJNZ LASTMOV SI+6,03HLAST: CALL DISCALL CLEARCALLCCSCANGOBACK: RETPUTBUF ENDPDALLY PROC NEARPUSH CX;比較暫停標(biāo)志變量;關(guān)閉進(jìn)入電機(jī)程序標(biāo)志;洗滌,甩干次數(shù)重置;重置洗滌模式;速度置2;是否案件4按下;改變對(duì)應(yīng)的速度變量的值;是否案件5按下;是否案件6按下;是否案件7按下;軟件延時(shí)子程序;入棧35江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)36江蘇科技大學(xué)微機(jī)原理課程設(shè)計(jì)D1:MOV CX,008FHMOV AX,00FFHD2:DEC AXJNZ D2LOOP D1POP CXRET;延時(shí)子程序DALLY ENDPDALLY3 PROCDD0:MOV CX,200HDD1:MOV AX,0FFFFHDD2:DEC AXJNZ DD2LOOP DD1DEC DLJNZ DD0RETDALLY3 ENDPCODE ENDSEND START37

注意事項(xiàng)

本文(《微機(jī)原理課程設(shè)計(jì)》簡易全自動(dòng)洗衣機(jī)設(shè)計(jì)解讀)為本站會(huì)員(小**)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!