你這論文我會寫,給你提供以下參考資料:
單片機(jī)基礎(chǔ)導(dǎo)學(xué)課件制作
摘要:介紹了本課題的課題背景、研究意義及完成的功能。本系統(tǒng)是以單片機(jī)基本知識來進(jìn)行軟件設(shè)計,指令的執(zhí)行速度快,節(jié)省存儲空間。為了便于擴(kuò)展和更改,軟件的設(shè)計采用模塊化結(jié)構(gòu),使程序設(shè)計的邏輯關(guān)系更加簡潔明了。使硬件在軟件的控制下協(xié)調(diào)運(yùn)作。 正文中首先簡單描述系統(tǒng)硬件工作原理,且附以系統(tǒng)硬件設(shè)計框圖。其次闡述了程序的流程和實現(xiàn)過程。本文撰寫的主導(dǎo)思想是軟、硬件相結(jié)合,以硬件為基礎(chǔ),來進(jìn)行各功能模塊的編寫。最后對我所開發(fā)的設(shè)計思想和軟、硬件調(diào)試作了詳細(xì)的論述。
關(guān)鍵詞:單片機(jī);POWERPOINT,多媒體課件制作,軟件應(yīng)用。
1.引言
單片機(jī)亦稱微控制器,顧名思義,這種計算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。因為它體積小,通常都藏在被控機(jī)械的“肚子”里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。現(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實時工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能微電腦型”,如智能型熱水器等。
計算機(jī)是人類制造的用于信息處理的機(jī)器。這種機(jī)器只能在人的控制下,將輸入的數(shù)據(jù)信息,按照人們的要求進(jìn)行存儲、分類、整理、判斷、計算、決策和處理等操作。
目前,微型計算機(jī)主要用在以下幾個方面:數(shù)值計算、數(shù)據(jù)處理與信息加工、計算機(jī)輔助功能、人工智能、計算機(jī)通信、多媒體、計算機(jī)檢測和過程控制等。微型計算機(jī)在檢測和過程控制方面的應(yīng)用具有簡便、快捷、準(zhǔn)確、可靠等優(yōu)點(diǎn),便于實現(xiàn)各種生產(chǎn)過程自動化。在改造傳統(tǒng)產(chǎn)業(yè)、節(jié)約能源、提高產(chǎn)品質(zhì)量和生產(chǎn)效率、改善生產(chǎn)者勞動條件等方面,具有十分重要的作用。
學(xué)習(xí)單片機(jī)是否很困難呢?應(yīng)當(dāng)說,對于已經(jīng)具有電子電路,尤其是數(shù)字電路基本知識的讀者來說,不會有太大困難,如果你對PC機(jī)有一定基礎(chǔ),學(xué)習(xí)單片機(jī)就更容易。為使絕大多數(shù)讀者能用上單片機(jī)。我們這里將盡量按深入淺出、理論聯(lián)系實際的原則把單片機(jī)的基本工作原理、使用方法交給讀者,以達(dá)到把大家領(lǐng)進(jìn)單片機(jī)之“門”的目的。不過,單片機(jī)和PC機(jī)一樣,是實踐性很強(qiáng)的一門技術(shù),有人說“計算機(jī)是玩出來的”,單片機(jī)亦一樣,只有多“玩”,也就是多練習(xí)、多實際操作,才能真正掌握它。因此,本講座會提供各種練習(xí)和實驗,并介紹一些適用于初學(xué)者且性價比較高的單片機(jī)和開發(fā)系統(tǒng)的貨源。你只有認(rèn)真完成成這些實踐環(huán)節(jié),才能為進(jìn)一步深造,打好基礎(chǔ)。
只要你有恒心、有決心,跟隨我們的“連載”一步步走下去,將來就一定能在單片機(jī)世界里遨游。
基于MSP430 單片機(jī)的電源監(jiān)控管理系統(tǒng) 引言 大功率直流開關(guān)電源由PFC 和DC-DC 變換器組成,為了提高可靠性,并能夠?qū)ζ溥M(jìn)行脫機(jī)或遠(yuǎn)程監(jiān)控管理,在開關(guān)電源模塊內(nèi)設(shè)置監(jiān)控管理系統(tǒng)。
該系統(tǒng)對電源故障類進(jìn)行監(jiān)控,對電源輸出的電壓電流進(jìn)行自動設(shè)定和調(diào)節(jié),通過串行通信接口,與遠(yuǎn)程中心監(jiān)控站進(jìn)行遠(yuǎn)程監(jiān)控和管理,這一功能在通信系統(tǒng)基站供電系統(tǒng)中尤為重要。本文提出了一種基于MSP430單片機(jī)的電源監(jiān)控管理系統(tǒng)的設(shè)計和實現(xiàn)。
1 系統(tǒng)結(jié)構(gòu)和硬件電路設(shè)計 系統(tǒng)的整體設(shè)計結(jié)構(gòu)如圖1所示。本系統(tǒng)采用的核心芯片為TI公司推出16位系列單片機(jī)MSP430。
MSP430具有集成度高,外圍設(shè)備豐富,超低功耗等優(yōu)點(diǎn)。單片集成了多通道12bit的A/D轉(zhuǎn)換、片內(nèi)精密比較器、多個具有PWM功能的定時器、片內(nèi)USART、看門狗定時器、片內(nèi)數(shù)控振蕩器(DCO)、大量的I/O端口以及大容量的片內(nèi)存儲器,采用串行在線編程方法,單片可以滿足絕大多數(shù)的應(yīng)用需要。
MSP430的這種高集成度使應(yīng)用人員不必在接口、外接I/O及存儲器上花太多的精力,而可以方便的設(shè)計真正意義上的單片系統(tǒng),在許多領(lǐng)域得到了廣泛的應(yīng)用。下面介紹該系統(tǒng)可以實現(xiàn)的功能和基于MSP430F149的電控系統(tǒng)的設(shè)計。
1.1 系統(tǒng)功能: a.開機(jī)控制。上電后,單片機(jī)開始工作,按下電源鍵,點(diǎn)亮指示燈后,將電網(wǎng)220V接入PFC,開關(guān)電源啟動工作,然后接于負(fù)載。
b.電壓設(shè)定和調(diào)節(jié)。用單片機(jī)A/D口采集開關(guān)電源的輸出電壓值,并顯示于液晶屏上,通過單片機(jī)控制數(shù)字電位計調(diào)節(jié)輸出電壓值,實現(xiàn)自動調(diào)節(jié);或者通過鍵盤的左右鍵選出電壓調(diào)節(jié)頁面,用上下鍵進(jìn)行手動調(diào)節(jié);也可以通過通信接口實現(xiàn)遠(yuǎn)程調(diào)節(jié)。
c.電流調(diào)節(jié)。多臺開關(guān)電源并聯(lián)使用時,要求各臺電源的負(fù)載電壓相等。
單片機(jī)A/D口采集轉(zhuǎn)換成電壓值的負(fù)載電流值,通過通信口得到各臺電流值,取電流平均值,控制數(shù)字電位計調(diào)節(jié)輸出電壓,使輸出負(fù)載電流達(dá)到平均值;或者通過鍵盤的左右鍵選出電流調(diào)節(jié)頁面,用上下鍵進(jìn)行手動調(diào)節(jié)。 d.故障報警。
單片機(jī)通過光電耦合器檢測到各項輸入輸出故障時,揚(yáng)聲器產(chǎn)生蜂鳴,相應(yīng)的報警燈閃爍,并在液晶屏上顯示故障類型及處理方法。 e.監(jiān)測。
單片機(jī)A/D口對電網(wǎng)電壓,輸出電壓,輸出電流進(jìn)行采集測量,當(dāng)出現(xiàn)超限時進(jìn)行報警。 f.通信。
包括單片機(jī)與各臺開關(guān)電源間的通信和單片機(jī)與中心監(jiān)控站的通信。 1.2 電壓調(diào)節(jié)電路 電壓調(diào)節(jié)電路由單片機(jī)、數(shù)字電位計X9313和可調(diào)分流基準(zhǔn)芯片TL431組成,其電路原理圖如圖2所示。
Xicor9313是固態(tài)非易失性電位器,可用作數(shù)字控制的微調(diào)電位器。TL431是TI生產(chǎn)的一個有良好的熱穩(wěn)定性能的三端可調(diào)分流基準(zhǔn)源,它的輸出電壓用兩個電阻就可以任意地設(shè)置到從VREF(2.5V)到36V范圍內(nèi)的任何值。
工作時,單片機(jī)的一個IO控制INC計數(shù)輸入腳,為其提供計數(shù)脈沖,此輸入端為下降沿觸發(fā)。另一個IO控制U/D升降輸入端,當(dāng)U/D為高電平時,X9313內(nèi)部計數(shù)器進(jìn)行加法計數(shù),VW端的輸出電壓上升,由于VW接地,使VH端電壓降低,而TL431的REF輸出端電壓為恒定的2.5V,從而使Vcc處輸出電壓升高;同理當(dāng)U/D為低電平時,Vcc處輸出電壓降低,這樣就實現(xiàn)了電壓輸出調(diào)節(jié)。
1.3 模擬數(shù)據(jù)采集 MSP430F149內(nèi)嵌入一個高精度的,具有采樣與保持功能的12位ADC轉(zhuǎn)換模塊,內(nèi)部提供各種采樣與保持時鐘源。MSP430有8個外部輸入通道可選, 最高采樣速度可達(dá)200KHZ,并且還內(nèi)置溫度傳感器,可以測量芯片內(nèi)的溫度,如果測量溫度高于或低于預(yù)設(shè)的溫度是,可以通過外接部件顯示告警信息,同時具有6種可編程選擇的內(nèi)部參考電壓。
該轉(zhuǎn)換模塊為一些需要模擬量采集的場合提供了便利。我們選擇的參考電壓是0~2.5V,這樣MSP430F149的AD分辨率就是2.5/4096 = 0.61V左右。
由于輸入的模擬電壓量較高,不能直接與單片機(jī)的ADC采樣端口相連,因此用串聯(lián)一個滑動變阻器的方法進(jìn)行了降壓處理,成功解決了上述問題。 1.4 人機(jī)對話設(shè)計 系統(tǒng)的人機(jī)操作界面由液晶顯示屏、指示燈和鍵盤組成。
液晶選用的是基于T6963C 的液晶模塊YM12864。鍵盤采用的是3*3 的陣列接法,系統(tǒng)采用了圖形用戶界面,操作簡單易行,顯示實用美觀。
工作時,液晶屏可以實時顯示采集到的電網(wǎng)電壓、輸出電壓、輸出電流及各種報警信息,操作相應(yīng)鍵盤可以進(jìn)行顯示頁面的切換,對輸出電壓,輸出電流進(jìn)行自動、手動及遠(yuǎn)程控制調(diào)節(jié)。當(dāng)有報警信息產(chǎn)生時,相應(yīng)得指示燈會閃爍警示,同時與單片機(jī)連接的揚(yáng)聲器會產(chǎn)生報警蜂鳴聲,以提醒操作人員做出相應(yīng)的處理。
2 系統(tǒng)軟件設(shè)計 430 支持匯編語言和C 語言兩種語言編程,因此可以在一個工程文件中同時用兩種語言,使用匯編語言,便于在調(diào)試時尋找邏輯和指令的聯(lián)系及地址的定位正確與否。使用C 語言進(jìn)行編程大大減少了工作量,編好后的程序可讀性好,易于修改和維護(hù)。
開發(fā)工具使用IARSystems 公司的IAR Embedded Workbench,它集成了編輯、編譯、鏈接、下載與在線調(diào)試(Debug)等多種功能,使用方便,并具備高效的C 語言編譯能力。 考慮到軟件開發(fā)效率及可維護(hù)性,系統(tǒng)軟件設(shè)計遵循模塊化。
單片機(jī)又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機(jī)系統(tǒng)集成到一個芯片上。
概括的講:一塊芯片就成了一臺計算機(jī)。它的體積小、質(zhì)量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。
同時,學(xué)習(xí)使用單片機(jī)是了解計算機(jī)原理與結(jié)構(gòu)的最佳選擇。 單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元即可。
用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。
我們現(xiàn)在用的全自動滾筒洗衣機(jī)、排煙罩、VCD等等的家電里面都可以看到它的身影。
它主要是作為控制部分的核心部件。 它是一種在線式實時控制計算機(jī),在線式就是現(xiàn)場控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計算機(jī)的(比如家用PC)的主要區(qū)別。
單片機(jī)是靠程序的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。
一個不是很復(fù)雜的功能要是用美國50年代開發(fā)的74系列,或者60年代的CD4000系列這些純硬件來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機(jī),結(jié)果就會有天壤之別!只因為單片機(jī)的通過你編寫的程序可以實現(xiàn)高智能,高效率,以及高可靠性! 由于單片機(jī)對成本是敏感的,所以目前占統(tǒng)治地位的軟件還是最低級匯編語言,它是除了二進(jìn)制機(jī)器碼以上最低級的語言了,既然這么低級為什么還要用呢?很多高級的語言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡單,就是單片機(jī)沒有家用計算機(jī)那樣的CPU,也沒有像硬盤那樣的海量存儲設(shè)備。一個可視化高級語言編寫的小程序里面即使只有一個按鈕,也會達(dá)到幾十K的尺寸!對于家用PC的硬盤來講沒什么,可是對于單片機(jī)來講是不能接受的。
單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用PC上來運(yùn)行,家用PC的也是承受不了的。
可以說,二十世紀(jì)跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進(jìn)入的電腦時代。不過,這種電腦,通常是指個人計算機(jī),簡稱PC機(jī)。
它由主機(jī)、鍵盤、顯示器等組成。還有一類計算機(jī),大多數(shù)人卻不怎么熟悉。
這種計算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。
因為它體積小,通常都藏在被控機(jī)械的“肚子”里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。
現(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實時工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能型”,如智能型洗衣機(jī)等。
現(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。
我本身也是學(xué)單片機(jī)的專業(yè),所以個人建議,你去學(xué)習(xí)一下郭天詳10天學(xué)會單片機(jī),我也是從他的視頻開始學(xué)習(xí)的,然后自己做出仿真,去驗證他的程序。
首先你模仿他的程序先,基本是得看懂C語言,學(xué)單片機(jī)的基本都懂,
然后再慢慢變花樣:比如開始的流水燈,你就自己設(shè)置自己想要的變化,
接下來學(xué)習(xí)到了時鐘的程序的話,你就自己加入比如按鍵調(diào)整的程序等等,在模仿以及改變程序中提升自己,初學(xué)者都是這樣做的,
更到后面的話,你就學(xué)習(xí)一下傳感器的程序,AD/DA的程序,你會接觸到中斷,定時器等這樣的知識。..
希望你有幫助!??!
基于單片機(jī)的MRI仿真脈沖發(fā)生器的設(shè)計 摘要:在功能磁共振實驗設(shè)計中,需要利用脈沖發(fā)生器模擬磁共振設(shè)備的掃描脈沖以實現(xiàn)精確的時間控制。
本文提出了一 種基于單片機(jī)PIC16F877的MRI仿真低頻脈沖發(fā)生器設(shè)計方案,用于需要精準(zhǔn)時序的功能磁共振實驗設(shè)計。本裝置的核心 部分是單片機(jī)PIC16F877,通過單片機(jī)的軟件來產(chǎn)生不同頻率和占空比的脈沖波。
通過選擇開關(guān)來實現(xiàn)脈沖周期和占空比 的調(diào)節(jié);同時用數(shù)碼管LED顯示脈沖的相應(yīng)周期。由此裝置得到的脈沖幅度為5V,可調(diào)周期范圍是0.5s~8.0s,精度為0.1s。
占空比有20%、30%、40%、50%4種可調(diào)。這種MRI仿真脈沖發(fā)生器使用簡單方便,產(chǎn)生的低頻脈沖精度高并且穩(wěn)定性好,能 很好的模擬功能磁共振實驗中需要的脈沖信號。
關(guān)鍵詞:單片機(jī);脈沖發(fā)生器;磁共振;模擬1引言 磁共振成像(MRI)技術(shù)是利用原子核在磁場內(nèi)共振所產(chǎn)生 信號經(jīng)重建成像的一種成像技術(shù)。磁共振成像技術(shù)不僅能提供 體內(nèi)組織器官的形態(tài)學(xué)信息,而且能提供諸如組織代謝等多方 面的為醫(yī)學(xué)臨床和科研所十分重視的生理信息,是一種十分重 要的醫(yī)學(xué)信息檢測手段。
功能磁共振成像是以反映器官功能狀 態(tài)成像為目標(biāo)的磁共振成像技術(shù)。在功能磁共振成像技術(shù)中需 要精確脈沖時序,因此有必要研究脈沖序列發(fā)生器來模擬它所 需要的這種脈沖。
目前脈沖序列發(fā)生器的裝置很多,但是多是以硬件方式來 實現(xiàn)的,長期以來都是由模擬電路構(gòu)成的。由這類儀器發(fā)出的 脈沖信號,在高頻范圍內(nèi)其頻率穩(wěn)定度高,可調(diào)性好。
然而,在 磁共振成像中通常需要用到低頻脈沖信號來控制實驗。由模 擬電路生成的低頻脈沖性能不能令人滿意,同時此類裝置體積 大、操作復(fù)雜,使用起來很不方便。
利用單片機(jī)程序設(shè)計方法產(chǎn) 生波形,其頻率低限幾乎無限制、穩(wěn)定性好,而且其裝置體積小,頻率幅值控制可直接由鍵盤輸入使用方便,無需進(jìn)行其他任何 調(diào)節(jié)。本文介紹一種以單片機(jī)PIC16F877為核心的MRI仿真脈 沖發(fā)生器。
該裝置操作簡單、使用方便,通過選擇開關(guān)可以調(diào)節(jié) 輸出脈沖的頻率和占空比。得到的脈沖精度高并且穩(wěn)定性好,能很好的模擬功能磁共振實驗設(shè)計中需要的脈沖信號。
2硬件設(shè)計 硬件設(shè)計基本原理如圖1所示。 整個電路以單片機(jī)PIC16F877為核心,選擇開關(guān)與單片機(jī) 相連來控制輸出脈沖的周期和占空比,數(shù)碼管LED用于顯示輸 出脈沖的周期,脈沖從單片機(jī)的RA0口輸出。
PIC16F877是美國Microchip公司生產(chǎn)的產(chǎn)品,PIC16F877 具有性能完善、功能強(qiáng)大、開發(fā)方便以及人機(jī)界面友好等突出 優(yōu)點(diǎn)。PIC16F877的硬件系統(tǒng)設(shè)計簡潔,指令系統(tǒng)設(shè)計精煉。
PIC16F877采用獨(dú)特的哈佛總線結(jié)構(gòu),徹底將芯片內(nèi)部的數(shù)據(jù) 總線和指令總線分離,從而大大提高了CPU執(zhí)行指令的速度和 工作效率。PIC16F877采用CMOS結(jié)構(gòu),使其功率消耗極低。
PIC16F877的I/O端口驅(qū)動負(fù)載的能力較強(qiáng),每個輸出引腳可 以驅(qū)動多達(dá)20—25mA的負(fù)載,既能夠高電平直接驅(qū)動發(fā)光二 極管LED、光點(diǎn)耦合器、小型繼電器等,也可以低電平直接驅(qū) 動,這樣就可大大簡化控制電路。 本裝置中單片機(jī)PIC16F877的RB0、RB1、RB2、RB4、RB5、RA1、RA2、RA4、RA5作為輸入口與9位選擇開關(guān)相連,通過控 制選擇開關(guān)來控制輸出脈沖的周期和占空比。
單片機(jī)讀取這些 口的值,然后控制RA0口輸出相應(yīng)頻率和占空比的脈沖,同時 通過C口和D口來控制數(shù)碼管顯示相應(yīng)的周期。一般單片機(jī)并 不具備直接驅(qū)動數(shù)碼管顯示的能力,I/O端口帶負(fù)載能力是非 常有限的;而PIC16F877具有較強(qiáng)的端口驅(qū)動能力,對一般數(shù) 碼管完全可以直接驅(qū)動。
具體電路如圖2所示。電路工作時,用戶根據(jù)需要只要通過選擇開關(guān)就能控制脈 沖的輸出頻率和占空比,可以通過LED的顯示知道輸出脈沖 的周期。
選擇開關(guān)為9位,前7位用于控制輸出脈沖的周期,輸 出脈沖的周期有128種可調(diào)。選擇開關(guān)的后兩位用于調(diào)節(jié)輸出 波形的占空比,設(shè)計了占空比分別為20%、30%、40%、50%的脈 沖波。
3程序設(shè)計 脈沖的產(chǎn)生是由單片機(jī)軟件來實現(xiàn)的,軟件流程如圖3 所示。由于同時用了單片機(jī)的B口和A口作為輸入端口,讀取輸 入值的時候就把各腳的數(shù)相加得到十進(jìn)制數(shù)M,然后單片機(jī)通 過判斷M的值來控制輸出波形的周期。
考慮到實際低頻應(yīng)用中 常用到的范圍,現(xiàn)只設(shè)計周期為0.5s~8.0s的脈沖波,周期的變 化為0.1s。讀取周期信息部分程序代碼如下:BTFSS PORTB,5;判斷RB5口的信息 ADDLW 10H BTFSS PORTA,1;判斷RA1口的信息 ADDLW 20H 讀取RA4和RA5的信息作為占空比調(diào)節(jié)的信息,程序代 碼如下:MOVLW 00H BTFSS PORTA,4 ADDLW 01H BTFSS PORTA,5 ADDLW 02H;從占空比調(diào)節(jié)輸入端口RA4和RA5 讀取占空比的調(diào)節(jié)信息 MOVWF 25H 脈沖從單片機(jī)的RA0口輸出,脈沖輸出以及波形的周期和 占空比控制程序代碼如下:SCG BSF PORTA,D;輸出高電平 LOOP CALL D10MS DECFSZ 22H,F GOTO LOOP DECFSZ 26H,F GOTO LOOP;按占空比信息控制高電平的輸出時間 GOTO SCD4總結(jié) 由于在功能磁共振成像實驗中需要精準(zhǔn)的脈沖序列,本文 設(shè)計了一種以單片機(jī)。
1.緒 論
二十世紀(jì)跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進(jìn)入的電腦時代。不過,這種電腦,通常是指個人計算機(jī),簡稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計算機(jī),大多數(shù)人卻不怎么熟悉。這種計算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。它的出現(xiàn)是近代計算機(jī)技術(shù)發(fā)展史上的一個重要里程碑,因為它體積小,通常都藏在被控機(jī)械的“肚子”里。它在這個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。
單片機(jī)具有體積小、功能強(qiáng)、應(yīng)用面廣等優(yōu)點(diǎn),目前正以前所未見的速度取代著傳統(tǒng)電子線路構(gòu)成的經(jīng)典系統(tǒng),蠶食著傳統(tǒng)數(shù)字電路與模擬電路固有的領(lǐng)地。它的體積小、質(zhì)量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時,學(xué)習(xí)使用單片機(jī)了解計算機(jī)原理與結(jié)構(gòu)的最佳選擇。
現(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛。彩電、冰箱、空調(diào)、錄像機(jī)、VCD、遙控器、游戲機(jī)、電飯煲等無處不見單片機(jī)的影子,單片機(jī)早已深深地融入我們每個人的生活之中。
單片機(jī)能大大地提高這些產(chǎn)品的智能性,易用性及節(jié)能性等主要性能指標(biāo),給我們的生活帶來舒適和方便的同時,在工農(nóng)業(yè)生產(chǎn)上也極大地提高了生產(chǎn)效率和產(chǎn)品質(zhì)量。單片機(jī)按用途大體上可分為兩類,一種是通用型單片機(jī),另一種是專用型單片機(jī)。
需要完整的我可以傳給你
相關(guān)范文: 基于單片機(jī)監(jiān)控系統(tǒng)的研究 【摘要】文章所設(shè)計的基于單片機(jī)監(jiān)控系統(tǒng)汽車行駛記錄儀所實現(xiàn)的主要功能:記錄汽車停車前2秒內(nèi)的行駛速度,并能實時地顯示汽車行駛的狀態(tài)信息,同時還對汽車的超速行駛進(jìn)行報警并記錄一天之內(nèi)的超速次數(shù)。
【關(guān)鍵詞】單片機(jī);模塊;監(jiān)控 本文所設(shè)計的汽車行駛記錄儀是基于兩片8051單片機(jī)作為控制系統(tǒng)的核心來進(jìn)行設(shè)計的,整個系統(tǒng)分為六大模塊分別是:電源模塊、速度信號采集模塊、時鐘模塊、單片機(jī)模塊、存儲器模塊、顯示模塊。 一、電源模塊的設(shè)計 記錄儀作為車載設(shè)備,使用汽車電源。
汽車上的電源有兩個:汽車發(fā)電機(jī)和蓄電池。記錄儀的電源直接取自蓄電池,在發(fā)電機(jī)轉(zhuǎn)速和用電負(fù)載發(fā)生較大變化時,可保持汽車電網(wǎng)電壓的相對穩(wěn)定,同時,還可吸收電路中隨時出現(xiàn)的瞬時過電壓,以保護(hù)電子元件不受損害。
車輛使用的車載蓄電池標(biāo)稱值有兩種 12V的和 24V的,因此為了得到需要的 5V的電壓,我選用了 DC-DC 電源轉(zhuǎn)換芯片。 二、速度信號采集模塊的設(shè)計 速度信號檢測模塊的原理是:汽車行駛過程中,車輪經(jīng)過傳感器,單位時間內(nèi)輸出一定的脈沖,傳感器輸出的脈沖通過差動放大電路的放大與整形,然后送到單片機(jī) 8051 的 T0端口進(jìn)行脈沖計數(shù),與此同時 8051 的 T1 進(jìn)行計時開始待到定時器產(chǎn)生中斷請求后,由計數(shù)器得到的脈沖數(shù)經(jīng)過速度計算的公式和里程的計算后得到汽車行駛的速度和里程。
從而得到汽車的行駛速度和里程,存儲與 8051 的 RAM數(shù)據(jù)存儲區(qū)。 本系統(tǒng)采用霍爾傳感器將速度信號轉(zhuǎn)換為脈沖信號,考慮到傳感器的體積要小,便于安裝,誤差要盡量減小等要求,設(shè)計采用車輪旋轉(zhuǎn)一周速度傳感器要輸出若干個脈沖的方法。
本系統(tǒng)采用的是在變速器上安裝 3個小磁鋼,霍爾傳感器可相應(yīng)的輸出 3 個脈沖用于速度信號的采集。速度信號采集模塊采用 THS118 型霍爾元件作為速度信號采集部分的速度傳感器。
三、時鐘模塊的設(shè)計 時鐘模塊主要是用于對時、分、秒、年、月、日和星期的計時。該模塊采用的芯片為DS12C887 時鐘芯片。
此芯片集成度高,其外圍的電路設(shè)計非常的簡單,且其性能非常好,計時的準(zhǔn)確性高。 DS12C887為雙列直插式封裝。
其具體與單片機(jī)的連接如下所述:AD0~AD7雙向地址/數(shù)據(jù)復(fù)用線與單片機(jī)的P0口相聯(lián),用于向單片機(jī)交換數(shù)據(jù);AS 地址選通輸入腳與單片機(jī)的 ALE 相聯(lián)用于對地址鎖存,實現(xiàn)地址數(shù)據(jù)的復(fù)用;CS 片選線與單片機(jī)的 P2.6 相聯(lián),用于選通時鐘芯片;DS 數(shù)據(jù)選通讀輸入引腳與單片機(jī)的讀選通引腳相聯(lián),用于實現(xiàn)對芯片數(shù)據(jù)的讀控制;R/W 讀/寫輸入與單片機(jī)的寫選通引腳相聯(lián),用于實現(xiàn)對時鐘芯片的寫控制;MOT 直接接地,選用 INTEL 時序。IRQ引腳與 8051 的 INT1 相連,用于為時間的采集提供時間基準(zhǔn)。
四、單片機(jī)模塊的設(shè)計 本系統(tǒng)采用兩片單片機(jī),兩個單片機(jī)之間采用串行通訊,用于兩者之間的數(shù)據(jù)交換。其工作時序是由外部晶振電路提供的,本系統(tǒng)采用的晶振頻率是 12 兆 HZ。
其復(fù)位電路為自動上電復(fù)位。設(shè)計中所采用的單片機(jī)為 8051。
單片機(jī)在系統(tǒng)中主要是用來對其他模塊進(jìn)行控制,是整個系統(tǒng)的核心部件。主單片機(jī)主要是用于對速度信號采集模塊、時鐘模塊和存儲模塊進(jìn)行控制,同時還要與從單片機(jī)進(jìn)行數(shù)據(jù)的交換。
其外圍的 I/O口主要與這些模塊的中心芯片的數(shù)據(jù)總線或地址總線相連,其控制總線與這些模塊的控制線相連。從單片機(jī)主要是用于對顯示和校時的控制,因此其 I/O口主要與 LCD顯示器的 I/O口相連,其控制線與 LCD顯示器的控制線相連。
由于從單片機(jī)的外部中斷源只有兩個,而我所設(shè)計的對時鐘的校時主要是通過外部中斷完成的,所以要對從單片機(jī)的外部中斷源進(jìn)行擴(kuò)展。本系統(tǒng)采用了 8259A 進(jìn)行中斷源的擴(kuò)展,從而實現(xiàn)對時鐘的校時。
五、儲模塊的設(shè)計 汽車行駛記錄儀對系統(tǒng)存儲數(shù)據(jù)的實時性及長久性要求很高,因此本系統(tǒng)我采用了ATMEL 生產(chǎn)的 AT29C010A Flash 性存儲器。其存儲空間為 16K,能夠滿足設(shè)計的要求。
AT29C010A是一種 5V在線閃速可電擦除的存儲器,具有掉電保護(hù)功能;方便的在線編程能力不需要高的輸入電壓,指令系統(tǒng)在 5V 電壓下即可控制對 AT29C010A 的讀取數(shù)據(jù),這與對 EEPROM 的操作相似。再編程能力是以每一分區(qū)為單位的,128 字節(jié)的數(shù)據(jù)裝入AT29C010A 的同時完成編程。
在一個再編程周期里,存儲單元的尋址和 128 字節(jié)的數(shù)據(jù)通過內(nèi)部鎖存器可釋放地址和數(shù)據(jù)總線,這樣可為其它操作提供地址和數(shù)據(jù)總線。編程周期開始后,AT29C010A會自動擦除分區(qū)的內(nèi)容,然后對鎖存的數(shù)據(jù)在定時器作用下進(jìn)行編程。
六、示模塊的設(shè)計 顯示器主要是為人機(jī)交互提供即時的信息,能讓人們與機(jī)器進(jìn)行很好的交流。在眾多種類的顯示器中,越來越多的儀器儀表及人機(jī)交互界面采用液晶顯示器。
LCD 可分為段位式LCD、字符式 LCD和點(diǎn)陣式 LCD。其中段位式和字符式只能用于數(shù)字和字符的簡單的顯示,不能滿足圖形曲線和漢字顯示的要求;而點(diǎn)陣式不僅能夠顯示字符和數(shù)字,還可以顯示各種圖形、曲線及漢字,可以實現(xiàn)屏幕的上下左右滾動等功能。
七、鍵的設(shè)計 本系統(tǒng)的。
智能化多路串行數(shù)據(jù)采集/傳輸模塊的設(shè)計廣州市光機(jī)電工程研究中心 行聯(lián)合 廣州市方統(tǒng)生物科技有限公司 關(guān) 強(qiáng)引言 隨著電子技術(shù)的不斷發(fā)展,目前對各種物理量的檢測和控制都可得以實現(xiàn)。
微機(jī)檢測控制系統(tǒng)不僅運(yùn)用到航天航空、機(jī)器人技術(shù)、紡織機(jī)械、食品加工等工業(yè)過程控制,而且已經(jīng)成為日常各種家用電器當(dāng)中的主要組成部分。其中,A/D(模擬數(shù)字轉(zhuǎn)換)設(shè)備起著十分重要的作用。
這樣,一個系統(tǒng)中就會需要更多的A/D設(shè)備。一般是用擴(kuò)展一塊或多塊A/D采集卡的方法去實現(xiàn)。
當(dāng)模擬量較少或是溫度、壓力等緩變信號場合,采用總線型A/D卡并不是最合適、最經(jīng)濟(jì)的方案。這里介紹一種以AT89C2051單片機(jī)為核心,采用TLC2543L 12位串行A/D轉(zhuǎn)換器構(gòu)成的采樣模塊,該模塊的采樣數(shù)據(jù)由單片機(jī)串口經(jīng)電平轉(zhuǎn)換后送到上位機(jī)(PC機(jī))的串口COM1或COM2,形成一種串行數(shù)據(jù)采集串行數(shù)據(jù)傳輸?shù)姆绞健?/p>
主要元件功能介紹AT89C2051單片機(jī)AT89C2051是ATMEL公司推出的一種性能價格比極高的 8位單片機(jī),其指令系統(tǒng)與MCS-51系列完全兼容。引腳排列如圖1所示。
TLC2543L串行A/D轉(zhuǎn)換器 TLC2543L 采用SPI串行接口總線,SPI串行接口總線由Motorola公司提出,它是一種三線同步接口,分別為同步信號、輸入信號和輸出信號。另外芯片還有一根片選線,單片機(jī)通過片選線選通TLC2543L。
其中,CLK為同步時鐘脈沖,CS為片選線,DIN為單片機(jī)的數(shù)據(jù)輸出和TLC2543L的數(shù)據(jù)輸入線,DOUT為單片機(jī)的數(shù)據(jù)輸入線和TLC2543L的數(shù)據(jù)輸出線。圖2為TLC2543L時序圖。
TLC2543L 是全雙工的,即數(shù)據(jù)的發(fā)送和接收可同時進(jìn)行。如果只是對TLC2543L寫數(shù)據(jù),單片機(jī)可以丟棄同時讀入的數(shù)據(jù);反之,如果只讀數(shù)據(jù),可以在命令字節(jié)后,寫入任意數(shù)據(jù)。
數(shù)據(jù)傳送以字節(jié)為單位,并采用高位在前的格式。模塊采用TI公司的TLC2543L 12位串行A/D轉(zhuǎn)換器,使用開關(guān)電容逐次逼近法完成A/D轉(zhuǎn)換過程。
串行輸入結(jié)構(gòu),能夠大大節(jié)省51系列單片機(jī)I/O資源,且價格適中。其特點(diǎn)有: (1) 11個模擬輸入通道; (2) 轉(zhuǎn)換時間10 s;(3) 12位分辨率A/D轉(zhuǎn)換器;(4) 3路內(nèi)置自測試方式;(5) 采樣率為66kbps;(6) 線性誤差+1LSB(max)(7) 有轉(zhuǎn)換結(jié)束(EOC)輸出;(8) 具有單、雙極性輸出;(9) 可編程的MSB或LSB前導(dǎo);(10)可編程的輸出數(shù)據(jù)長度。
TLC2543L的引腳排列如圖3所示。圖3中AIN0~AIN10為模擬輸入端; 為片選端;DIN 為串行數(shù)據(jù)輸入端;DOUT為A/D轉(zhuǎn)換結(jié)果的三態(tài)串行輸出端;EOC為轉(zhuǎn)換結(jié)束端;CLK為I/O時鐘;REF+為正基準(zhǔn)電壓端;REF-為負(fù)基準(zhǔn)電壓端;VCC為電源;GND為地。
電平轉(zhuǎn)換器MAX232C MAX232C為RS-232收發(fā)器,簡單易用,單+5V電源供電,僅需外接幾個電容即可完成從TTL電平到RS-232電平的轉(zhuǎn)換,引腳排列如圖4所示。硬件設(shè)計 硬件電路如圖5所示。
單片機(jī)AT89C2051是整個系統(tǒng)的核心,TLC2543L對輸入的模擬信號進(jìn)行采集,轉(zhuǎn)換結(jié)果由單片機(jī)通過P3.5(9腳)接收,AD芯片的通道選擇和方式數(shù)據(jù)通過P3.4(8腳)輸入到其內(nèi)部的一個8位地址和控制寄存器,單片機(jī)采集的數(shù)據(jù)通過串口(3、2腳)經(jīng)MAX232C轉(zhuǎn)換成RS232電平向上位機(jī)傳輸。 單片機(jī)軟件設(shè)計單片機(jī)程序主要包括串行數(shù)據(jù)采集/傳輸模塊的系統(tǒng)信息、通道數(shù)、采集周期和通訊協(xié)議定義,以及數(shù)據(jù)采集和傳輸?shù)臉?biāo)準(zhǔn)子程序。
TLC2543L的通道選擇和方式數(shù)據(jù)為8位,其功能為:D7、D6、D5和D4用來選擇要求轉(zhuǎn)換的通道,D7D6D5D4=0000時選擇0通道,D7D6D5D4=0001時選擇1通道,依次類推;D3和D2用來選擇輸出數(shù)據(jù)長度,本程序選擇輸出數(shù)據(jù)長度為12位,即D3D2=00或D3D2=10;D1,D0選擇輸入數(shù)據(jù)的導(dǎo)前位,D1D0=00選擇高位導(dǎo)前。TLC2543L在每次I/O周期讀取的數(shù)據(jù)都是上次轉(zhuǎn)換的結(jié)果,當(dāng)前的轉(zhuǎn)換結(jié)果在下一個I/O周期中被串行移出。
第一次讀數(shù)由于內(nèi)部調(diào)整,讀取的轉(zhuǎn)換結(jié)果可能不準(zhǔn)確,應(yīng)丟棄。數(shù)據(jù)采集程序如下:sbit DATAIN=P1^1;sbit CLOCK=P1^0;sbit DATAOUT=P1^2;sbit CS=P1^3;bit datain_a_bit0(){ bit m=0;DATAOUT=1;m=DATAOUT;DATAIN=0;Nop();CLOCK=1;Nop();CLOCK=0;Return(m); }bit datain_a_bit1(){ bit m=0;DATAOUT=1;m=DATAOUT;DATAIN=1;Nop();CLOCK=1;Nop();CLOCK=0;Return(m); }單片機(jī)通過編程產(chǎn)生串行時鐘,并按時序發(fā)送與接收數(shù)據(jù)位,完成通道方式/通道數(shù)據(jù)的寫入和轉(zhuǎn)換結(jié)果的讀出,程序如下:unsigned int Tlc2543L(unsigned char ch){unsigned char i,chch=0;unsigned int xdata xxx=0;unsigned int xdata y=0;CS=0;Chch=ch<<4;Y=chch;Y<<=8;I=0;While(I<12){if((y&0x8000)==0){if(datain_a_bit0()==0) xxx&=0xfffe;else xxx|=0x0001;if(I!=11) xxx<<=1;}else{if(datain_a_bit1()==0) xxx&=0xfffe;else xxx|=0x0001;if(I!=11) xxx<<=1;}y<<=1;I+=1;}CS=1;Return(xxx);}串行數(shù)據(jù)傳輸模塊包括串行。
學(xué)習(xí)使用單片機(jī)就是理解單片機(jī)硬件結(jié)構(gòu),以及內(nèi)部資源的應(yīng)用,在匯編或C語言中學(xué)會各種功能的初始化設(shè)置,以及實現(xiàn)各種功能的程序編制。
第一步:數(shù)字I/O的使用
使用按鈕輸入信號,發(fā)光二極管顯示輸出電平,就可以學(xué)習(xí)引腳的數(shù)字I/O功能,在按下某個按鈕后,某發(fā)光二極管發(fā)亮,這就是數(shù)字電路中組合邏輯的功能,雖然很簡單,但是可以學(xué)習(xí)一般的單片機(jī)編程思想,例如,必須設(shè)置很多寄存器對引腳進(jìn)行初始化處理,才能使引腳具備有數(shù)字輸入和輸出輸出功能。每使用單片機(jī)的一個功能,就要對控制該功能的寄存器進(jìn)行設(shè)置,這就是單片機(jī)編程的特點(diǎn),千萬不要怕
麻煩,所有的單片機(jī)都是這樣。
第二步:定時器的使用
學(xué)會定時器的使用,就可以用單片機(jī)實現(xiàn)時序電路,時序電路的功能是強(qiáng)大的,在工業(yè)、家用電氣設(shè)備的控制中有很多應(yīng)用,例如,可以用單片機(jī)實現(xiàn)一個具有一個按鈕的樓道燈開關(guān),該開關(guān)在按鈕按下一次后,燈亮3分鐘后自動滅,當(dāng)按鈕連續(xù)按下兩次后,燈常亮不滅,當(dāng)按鈕按下時間超過2s,則燈滅。數(shù)字集成電路可以實現(xiàn)時序電路,可編程邏輯器件(PLD)可以實現(xiàn)時序電路,可編程控制器(PLC)也可以實現(xiàn)時序電路,但是只有單片機(jī)實現(xiàn)起來最簡單,成本最低。
定時器的使用是非常重要的,邏輯加時間控制是單片機(jī)使用的基礎(chǔ)。
第三步:中斷
單片機(jī)的特點(diǎn)是一段程序反復(fù)執(zhí)行,程序中的每個指令的執(zhí)行都需要一定的執(zhí)行時間,如果程序沒有執(zhí)行到某指令,則該指令的動作就不會發(fā)生,這樣就會耽誤很多快速發(fā)生的事情,例如,按鈕按下時的下降沿。要使單片機(jī)在程序正常運(yùn)行過程中,對快速動作做出反應(yīng),就必須使用單片機(jī)的中斷功能,該功能就是在快速動作發(fā)生后,單片機(jī)中斷正常運(yùn)行的程序,處理快速發(fā)生的動作,處理完成后,在返回執(zhí)行正常的程序。中斷功能使用中的困難是需要精確地知道什么時候不允許中斷發(fā)生(屏蔽中斷)、什么時候允許中斷發(fā)生(開中斷),需要設(shè)置哪些寄存器才能使某 種中斷起作用,中斷開始時,程序應(yīng)該干什么,中斷完成后,程序應(yīng)該干什么等等 。
中斷學(xué)會后,就可以編制更復(fù)雜結(jié)構(gòu)的程序,這樣的程序可以干著一件事,監(jiān)視著一件事,一旦監(jiān)視的事情發(fā)生,就中斷正在干的事情,處理監(jiān)視的事情,當(dāng)然也可以監(jiān)視多個事情,形象的比喻,中斷功能使單片機(jī)具有吃著碗里的,看著鍋里的功能。
以上三步學(xué)會,就相當(dāng)于降龍十八掌武功,會了三掌了,可以勉強(qiáng)護(hù)身。
第四步:與PC機(jī)進(jìn)行RS232通信
單片機(jī)都有USART接口,特別是MSP430系列中很多型號,都具有兩個USART接口。USART接口不能直接與PC機(jī)的RS232接口連接,它們之間的邏輯電平不同,需要使用一個MAX3232芯片進(jìn)行電平轉(zhuǎn)換。
USART接口的使用是非常重要的,通過該接口,可以使單片機(jī)與PC機(jī)之間交換信息,雖然RS232通信并不先進(jìn),但是對于接口的學(xué)習(xí)是非常重要的。正確使用USART接口,需要學(xué)習(xí)通信協(xié)議,PC機(jī)的RS232接口編程等等知識。試想,單片機(jī)實驗板上的數(shù)據(jù)顯示在PC機(jī)監(jiān)視器上,而PC機(jī)的鍵盤信號可以在單片機(jī)實驗板上得到顯示,將是多么有意思的事情??!
第五步:學(xué)會A/D轉(zhuǎn)換
MAP430單片機(jī)帶有多通道12位A/D轉(zhuǎn)換器,通過這些A/D轉(zhuǎn)換器可以使單片機(jī)操作模擬量,顯示和檢測電壓、電流等信號。學(xué)習(xí)時注意模擬地與數(shù)字地、參考電壓、采樣時間,轉(zhuǎn)換速率,轉(zhuǎn)換誤差等概念。
使用A/D轉(zhuǎn)換功能的簡單的例子是設(shè)計一個電壓表。
第六步:學(xué)會PCI、I2C接口和液晶顯示器接口
這些接口的使用可以使單片機(jī)更容易連接外部設(shè)備,在擴(kuò)展單片機(jī)功能方面非常重要。
第七步:學(xué)會比較、捕捉、PWM功能
這些功能可以使單片機(jī)能夠控制電機(jī),檢測轉(zhuǎn)速信號,實現(xiàn)電機(jī)調(diào)速器等控制起功能。
如果以上七步都學(xué)會,就可以設(shè)計一般的應(yīng)用系統(tǒng),相當(dāng)于學(xué)會十招降龍十八掌,可以出手攻擊了。
第八步:學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計
學(xué)習(xí)USB接口、TCP/IP接口、各種工業(yè)總線的硬件與軟件設(shè)計是非常重要的,因為這是當(dāng)前產(chǎn)品開發(fā)的發(fā)展方向。
到此為止,相當(dāng)于學(xué)會15招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機(jī)大蝦了。
題目 交通燈控制系統(tǒng)的設(shè)計 一、課程設(shè)計的目的與要求 1、課程設(shè)計目的: (1)進(jìn)一步理解和消化書本知識,運(yùn)用所學(xué)知識和技能進(jìn)行簡單的設(shè)計。
(2)通過課程設(shè)計提高應(yīng)用能力,分析問題和解決問題的能力。 (3)培養(yǎng)查閱資料的習(xí)慣,訓(xùn)練和提高自學(xué),獨(dú)立思考的能力。
2、課程設(shè)計要求 交通燈控制系統(tǒng)的設(shè)計 1) 掌握在單片機(jī)系統(tǒng)中擴(kuò)展簡單I/O接口的方法。 2) 掌握數(shù)據(jù)輸出程序的設(shè)計方法。
3) 掌握模擬交通燈控制的實現(xiàn)方法。 4) 掌握外部中斷技術(shù)的基本使用方法。
5) 掌握中斷處理程序的編程方法。 從課程設(shè)計的目的出發(fā),通過設(shè)計工作的各個環(huán)節(jié),達(dá)到以下要求: (1)能夠正確理解課程設(shè)計的題目和意義,全面思考問題。
(2)運(yùn)用科學(xué)合理的方法,認(rèn)真按時完成。 二、課程設(shè)計課題的分析 1、電路的設(shè)計 1)原理 要完成本實驗,首先必須了解交通燈的亮滅規(guī)律。
本實驗需要用到試驗箱上八個發(fā)光二極管中的六個,即紅、綠、黃各兩個。將L1(紅)、L2(綠)、L3(黃)作為東西方向的指示燈,將L5(紅)、L6(綠)、L7(黃)作為南北方向的指示燈。
交通燈的亮滅規(guī)律為:初始態(tài)是兩個路口的紅燈全亮,之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。
閃爍若干次后,再切換到東西路口方向,重復(fù)上述過程。 各發(fā)光二極管的陽極通過保護(hù)電阻接到+5V的電源上,陰極接到輸入端上,因此使其點(diǎn)亮使相應(yīng)使相應(yīng)輸入端為低電平。
當(dāng)有急救車到達(dá)時,兩個方向上的紅燈亮,以便讓急救車通過,假設(shè)急救車通過路口的時間為10秒,急救車通過后,交通燈恢復(fù)中斷前的狀態(tài)。本程序以單次脈沖為中斷申請,表示有急救車通過,單次脈沖輸出端P-接CPU板上的INT0。
2)、硬件電路圖 圖1—1 交通燈控制系統(tǒng)的硬件接線圖 74LS273的輸出00—07接發(fā)光二極管L1—L8,74LS273的片選CS273接片選信號CS2,此時74LS273的片選地址為CFA0—CFA7之間任選。 3)、程序流程圖 主程序流程 圖1—2 主程序軟件流程圖 中斷程序流程圖 三、課程設(shè)計的結(jié)果 1、程序 NAME JIAOTONGGENG OUTPORT EQU 0CFB0H ;端口地址 SAVE EQU 55H ;SAVE保存從端口CFA0輸出的數(shù)據(jù) CSEG AT 0000H LJMP START CSEG AT 4003H LJMP INT CSEG AT 4100H START: SETB IT0 ;中斷程序初始化 SETB EX0 SETB EA MOV A,#11H ;置首顯示碼,兩紅燈全亮 MOV SAVE,A ;保存 ACALL DISP ;顯示輸出 ACALL DE3S ;延時3秒 LLL: MOV A,#12H ;東西路口綠燈亮,南北路口紅燈亮 MOV SAVE,A ACALL DISP ACALL DE10S ;延時10秒 MOV A,#10H ;東西路口綠燈滅 MOV SAVE,A ACALL DISP MOV R2,#05H ;東西路口黃燈閃爍5次 TTT: MOV A,#14H MOV SAVE,A ACALL DISP ACALL DE02S ;延時0.2秒 MOV A,#10H MOV SAVE,A ACALL DISP ACALL DE02S DJNZ R2,TTT MOV A,#11H ;紅燈全亮 MOV SAVE,A ACALL DISP ACALL DE02S ;延時0.2秒 MOV A,#21H ;東西路口紅燈亮,南北路口綠燈亮 MOV SAVE,A ACALL DISP ACALL DE10S ;延時10秒 MOV A,#01H ;南北路口綠燈滅 MOV SAVE,A ACALL DISP MOV R2,#05H ;南北路口黃燈閃爍5次 KKK: MOV A,#41H MOV SAVE,A ACALL DISP ACALL DE02S ;延時0.2秒 MOV A,#01H MOV SAVE,A ACALL DISP ACALL DE02S DJNZ R2,KKK JMP LLL ;轉(zhuǎn)SSS循環(huán) DE10S: MOV R5,#100 ;延時10秒 JMP DE1 DE3S: MOV R5,#30 ;延時3秒 JMP DE1 DE02S: MOV R5,#02 ;延時0.2秒 DE1: MOV R6,#200 DE2: MOV R7,#126 DE3: DJNZ R7,DE3 DJNZ R6,DE2 DJNZ R5,DE1 RET DISP: MOV DPTR,#OUTPORT CPL A ;取反,點(diǎn)亮發(fā)光二極管 MOVX @DPTR,A RET ;中斷處理程序 INT: PUSH ACC ;有關(guān)寄存器入棧 PUSH PSW MOV A,#11H ;兩紅燈全亮 ACALL DISP ACALL DELAY MOV A,SAVE ;將主程序中保存的數(shù)據(jù)再送給A ACALL DISP POP PSW ;有關(guān)寄存器出棧 POP ACC RETI DELAY:MOV R1,#100 DEL1 :MOV R2,#200 DEL2 :MOV R3,#126 DEL3 :DJNZ R3,DEL3 DJNZ R2,DEL2 DJNZ R1,DEL1 RET END 2、現(xiàn)象 將程序輸入到單片機(jī)中,運(yùn)行程序,可以觀察到現(xiàn)象:首先是兩個路口的紅燈全亮,延時3秒之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時10秒后,東西路口綠燈滅,黃燈開始閃爍。
閃爍5次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時10秒后,南北路口的綠燈滅,黃燈開始閃爍。閃爍5次后,再切換到東西路口方向,重復(fù)上述過程。
當(dāng)有中斷申請時,兩個方向上的紅燈亮,經(jīng)過10秒急救車通過之后,恢復(fù)到急救車到來之前的狀態(tài)繼續(xù)運(yùn)行,可有多次的中斷申請。 四、課程設(shè)計的心得與體會 1.通過試驗進(jìn)一步理解和消化了書本知識,分析每個語句的含義,運(yùn)用所學(xué)知識進(jìn)行簡單的程序設(shè)計。
了解了在單片機(jī)系統(tǒng)。
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時間:5.228秒