2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  《單片機(jī)原理及接口技術(shù)》課程設(shè)計(jì)報(bào)告</p><p>  設(shè)計(jì)題目 </p><p>  班 級 </p><p>  姓 名

2、 </p><p>  學(xué) 號 </p><p>  指導(dǎo)教師 </p><p>  單片機(jī)課程設(shè)計(jì)任務(wù)書</p><p>  題目:基于單片機(jī)的

3、溫度數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)</p><p><b>  一.設(shè)計(jì)要求</b></p><p>  1.被測量溫度范圍:0~500℃,溫度分辨率為0.5℃。</p><p>  2.被測溫度點(diǎn):4個(gè),每2秒測量一次。</p><p>  3.顯示器要求:通道號1位,溫度4位(精度到小數(shù)點(diǎn)后一位)。</p><

4、p>  顯示方式為定點(diǎn)顯示和輪流顯示。</p><p><b>  4.鍵盤要求:</b></p><p> ?。?)定點(diǎn)顯示設(shè)定;(2)輪流顯示設(shè)定;(3)其他功能鍵。</p><p><b>  二.設(shè)計(jì)內(nèi)容</b></p><p>  1.單片機(jī)及電源管理模塊設(shè)計(jì)。</p>

5、<p>  單片機(jī)可選用AT89S51及其兼容系列,電源管理模塊要實(shí)現(xiàn)高精密穩(wěn)壓輸出,為單片機(jī)及A/D轉(zhuǎn)換器供電。</p><p>  2.傳感器及放大器設(shè)計(jì)。</p><p>  傳感器可以選用鎳鉻—鎳硅熱電偶(分度號K),放大器要實(shí)現(xiàn)熱電偶輸出的mV級信號到A/D輸入V級信號放大。</p><p>  3.多路轉(zhuǎn)換開關(guān)及A/D轉(zhuǎn)換器設(shè)計(jì)。</p

6、><p>  多路開關(guān)可以選用CD4052,A/D可選用MC14433等。</p><p><b>  4.顯示器設(shè)計(jì)。</b></p><p>  可以選用LED顯示或LCD顯示。</p><p><b>  5.鍵盤電路設(shè)計(jì)。</b></p><p>  實(shí)現(xiàn)定點(diǎn)顯示按鍵;輪

7、流顯示按鍵;其他功能鍵。</p><p><b>  6.系統(tǒng)軟件設(shè)計(jì)。</b></p><p>  系統(tǒng)初始化模塊,鍵盤掃描模塊,顯示模塊,數(shù)據(jù)采集模塊,標(biāo)度變換模塊等。</p><p><b>  三.設(shè)計(jì)報(bào)告要求</b></p><p>  設(shè)計(jì)報(bào)告應(yīng)按以下格式書寫:</p>&

8、lt;p><b> ?。?)封面;</b></p><p><b>  (2)設(shè)計(jì)任務(wù)書;</b></p><p><b> ?。?)目錄;</b></p><p><b> ?。?)正文;</b></p><p><b> ?。?)參考文

9、獻(xiàn)。</b></p><p>  其中正文應(yīng)包含以下內(nèi)容:</p><p> ?。?)系統(tǒng)總體功能及技術(shù)指標(biāo)描述;</p><p>  (2)各模塊電路原理描述;</p><p> ?。?)系統(tǒng)各部分電路圖及總體電路圖(用PROTEL繪制);</p><p>  (4)軟件流程圖及軟件清單;</p&g

10、t;<p> ?。?)設(shè)計(jì)總結(jié)及體會。</p><p><b>  四、參考資料</b></p><p>  1、李全利,單片機(jī)原理及接口技術(shù),高等教育出版社,2004</p><p>  2、于永,51單片機(jī)常用模塊與綜合系統(tǒng)設(shè)計(jì)實(shí)例精講,電子工業(yè)出版社,2007</p><p><b>  引

11、言</b></p><p>  隨著現(xiàn)代信息技術(shù)的飛速發(fā)展,溫度測量控制系統(tǒng)在工業(yè)、農(nóng)業(yè)及人們的日常生活中扮演著一個(gè)越來越重要的角色,它對人們的生活具有很大的影響,所以溫度采集控制系統(tǒng)的設(shè)計(jì)與研究有十分重要的意義。</p><p>  本次設(shè)計(jì)的目的在于學(xué)習(xí)基于51單片機(jī)的多路溫度采集控制系統(tǒng)設(shè)計(jì)的基本流程。本設(shè)計(jì)采用單片機(jī)作為數(shù)據(jù)處理與控制單元,為了進(jìn)行數(shù)據(jù)處理,單片機(jī)控制數(shù)

12、字溫度傳感器,通過MC14433模數(shù)轉(zhuǎn)換對所測的溫度進(jìn)行數(shù)字量變化。單片機(jī)數(shù)據(jù)處理之后,,將當(dāng)前溫度信息發(fā)送到LCD進(jìn)行顯示。本系統(tǒng)可以實(shí)現(xiàn)多路溫度信號采集與顯示,可以使用按鍵來設(shè)置切換定點(diǎn)顯示功能與輪流顯示功能,通過進(jìn)行溫度數(shù)據(jù)的運(yùn)算處理,發(fā)出控制信號達(dá)到控制蜂鳴器和繼電器的目的。</p><p>  我所采用的控制芯片為AT89c51,此芯片功能較為強(qiáng)大,能夠滿足設(shè)計(jì)要求。通過對電路的設(shè)計(jì),對芯片的外圍擴(kuò)展,

13、采用微機(jī)進(jìn)行溫度檢測,數(shù)字顯示,信息存儲及實(shí)時(shí)控制。 </p><p><b>  目錄: </b></p><p>  一、系統(tǒng)總體功能及技術(shù)指標(biāo)的描述-------------------------4</p><p>  二、各模塊電路原理描述------------------------------------4</p&g

14、t;<p>  2.1單片機(jī)及AT89C51引腳說明----------------------------4</p><p>  2.2、電源模塊設(shè)計(jì)---------------------------------------7</p><p>  2.3、傳感器模塊設(shè)計(jì)-------------------------------------7</p>

15、<p>  2.4、放大器---------------------------------------------9</p><p>  2.5、多路轉(zhuǎn)換-------------------------------------------9</p><p>  2.6、A/D轉(zhuǎn)換器------------------------------------------11&l

16、t;/p><p>  2.7、顯示器設(shè)計(jì)------------------------------------------13</p><p>  2.8、鍵盤電路設(shè)-------------------------------------------14</p><p>  2.9、電路總體設(shè)計(jì)圖-----------------------------------

17、----15</p><p>  三、軟件流程-------------------------------------------------16</p><p>  四、 程序清單------------------------------------------------17</p><p>  五、設(shè)計(jì)總結(jié)及體會----------------------

18、---------------------23</p><p>  六、參考資料---------------------------------------------------23</p><p>  一、系統(tǒng)總體功能及技術(shù)指標(biāo)的描述</p><p>  1,基于單片機(jī)的溫度數(shù)據(jù)采集系統(tǒng),實(shí)現(xiàn)實(shí)時(shí)的溫度的數(shù)據(jù)采集與顯示,采用1602液晶顯示溫度讀數(shù)和所選通道號

19、,以實(shí)現(xiàn)對數(shù)據(jù)的實(shí)時(shí)控制。</p><p><b>  技術(shù)指標(biāo)要求:</b></p><p>  1.被測量溫度范圍:0~500℃,溫度分辨率為0.5℃。</p><p>  2.被測溫度點(diǎn):4個(gè),每2秒測量一次。</p><p>  3.顯示器要求:通道號1位,溫度4位(精度到小數(shù)點(diǎn)后一位)。</p>

20、<p>  顯示方式為定點(diǎn)顯示和輪流顯示。</p><p><b>  4.鍵盤要求:</b></p><p> ?。?)定點(diǎn)顯示設(shè)定;(2)輪流顯示設(shè)定;(3)其他功能鍵。</p><p>  二、各模塊電路原理描述</p><p>  2.1單片機(jī)及電源模塊設(shè)計(jì)</p><p>  

21、如圖所示為AT89C51芯片的引腳圖。兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)的AT89C51單片機(jī)是一個(gè)低功耗、高性能CHMOS的單片機(jī),片內(nèi)含4KB在線可編程Flash存儲器的單片機(jī)。它與通用80C51系列單片機(jī)的指令系統(tǒng)和引腳兼容。</p><p>  AT89C51單片機(jī)片內(nèi)的Flash可允許在線重新編程,也可用通用非易失性存儲編程器編程;片內(nèi)數(shù)據(jù)存儲器內(nèi)含128字節(jié)的RAM;有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(

22、I/O)端口;具有兩個(gè)16位可編程定時(shí)器;中斷系統(tǒng)是具有6個(gè)中斷源、5個(gè)中斷矢量、2級中斷優(yōu)先級的中斷結(jié)構(gòu);震蕩器頻率0到33MHZ,因此我們在此選用12MHZ的晶振是比較合理的;具有片內(nèi)看門狗定時(shí)器;具有斷電標(biāo)志POF等等。AT89S51具有PDIP、TQFP和PLCC三種封裝形式[8]。</p><p>  2.2、AT89C51引腳說明</p><p>  P0口:8位、開漏級、雙向

23、I/O口。P0口可作為通用I/O口,但須外接上拉電阻;作為輸出口,每各引腳可吸收8各TTL的灌電流。作為輸入時(shí),首先應(yīng)將引腳置1。P0也可用做訪問外部程序存儲器和數(shù)據(jù)存儲器時(shí)的低8位地址/數(shù)據(jù)總線的復(fù)用線。在該模式下,P0口含有內(nèi)部上拉電阻。在FLASH編程時(shí),P0口接收代碼字節(jié)數(shù)據(jù);在編程效驗(yàn)時(shí),P0口輸出代碼字節(jié)數(shù)據(jù)(需要外接上拉電阻)。</p><p>  P1口:8位、雙向I/0口,內(nèi)部含有上拉電阻。P1

24、口可作普通I/O口。輸出緩沖器可驅(qū)動(dòng)四個(gè)TTL負(fù)載;用作輸入時(shí),先將引腳置1,由片內(nèi)上拉電阻將其抬到高電平。P1口的引腳可由外部負(fù)載拉到低電平,通過上拉電阻提供電流。在FLASH并行編程和校驗(yàn)時(shí),P1口可輸入低字節(jié)地址。在串行編程和效驗(yàn)時(shí),P1.5/MO-SI,P1.6/MISO和P1.7/SCK分別是串行數(shù)據(jù)輸入、輸出和移位脈沖引腳。 </p><p>  P2口:具有內(nèi)部上拉電阻的8位雙向I/O口。P2口用做

25、輸出口時(shí),可驅(qū)動(dòng)4各TTL負(fù)載;用做輸入口時(shí),先將引腳置1,由內(nèi)部上拉電阻將其提高到高電平。若負(fù)載為低電平,則通過內(nèi)部上拉電阻向外部輸出電流。CPU訪問外部16位地址的存儲器時(shí),P2口提供高8位地址。當(dāng)CPU用8位地址尋址外部存儲時(shí),P2口為P2特殊功能寄存器的內(nèi)容。在FLASH并行編程和校驗(yàn)時(shí),P2口可輸入高字節(jié)地址和某些控制信號。</p><p>  P3口:具有內(nèi)部上拉電阻的8位雙向口。P3口用做輸出口時(shí),

26、輸出緩沖器可吸收4各TTL的灌電流;用做輸入口時(shí),首先將引腳置1,由內(nèi)部上拉電阻抬位高電平。若外部的負(fù)載是低電平,則通過內(nèi)部上拉電阻向輸出電流。在與FLASH并行編程和校驗(yàn)時(shí),P3口可輸入某些控制信號。P3口除了通用I/O口功能外,還有替代功能,如表5.3-1所示。</p><p>  表5.3-1 P3口的替代功能</p><p>  RST:復(fù)位端。當(dāng)振蕩器工作時(shí),此引腳上出現(xiàn)兩個(gè)機(jī)

27、器周期的高電平將系統(tǒng)復(fù)位。</p><p>  ALE/ :當(dāng)訪問外部存儲器時(shí),ALE(允許地址鎖存)是一個(gè)用于鎖存地址的低8位字節(jié)的書粗脈沖。在Flash 編程期間,此引腳也可用于輸入編程脈沖()。在正常操作情況下,ALE以振蕩器頻率的1/6的固定速率發(fā)出脈沖,它是用作對外輸出的時(shí)鐘,需要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí),將跳過一個(gè)ALE脈沖。如果希望禁止ALE操作,可通過將特殊功能寄存器中位地址為8EH那位

28、置的“0”來實(shí)現(xiàn)。該位置的“1”后。ALE僅在MOVE或MOVC指令期間激活,否則ALE引腳將被略微拉高。若微控制器在外部執(zhí)行方式,ALE禁止位無效。</p><p>  :外部程序存儲器讀選取通信號。當(dāng)AT89S51在讀取外部程序時(shí), 每個(gè)機(jī)器周期 將PSEN激活兩次。在此期間內(nèi),每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí),將跳過兩個(gè)信號。</p><p>  /Vpp:訪問外部程序存儲器允許端。為了能夠

29、從外部程序存儲器的0000H至FFFFH單元中取指令,必須接地,然而要注意的是,若對加密位1進(jìn)行編程,則在復(fù)位時(shí),的狀態(tài)在內(nèi)部被鎖存。</p><p>  執(zhí)行內(nèi)部程序應(yīng)接VCC。不當(dāng)選擇12V編程電源時(shí),在Flash編程期間,這個(gè)引腳可接12V編程電壓。</p><p>  XTAL1:振蕩器反向放大器輸入端和內(nèi)部時(shí)鐘發(fā)生器的輸入端。</p><p>  XTAL

30、2:振蕩器反相放大器輸出端。</p><p>  單片機(jī)最小系統(tǒng)設(shè)計(jì)原理圖:</p><p><b>  電源模塊設(shè)計(jì):</b></p><p>  在影響單片機(jī)系統(tǒng)可靠性的諸多因素中,電源干擾可謂首屈一指,據(jù)統(tǒng)計(jì),計(jì)算機(jī)應(yīng)用系統(tǒng)的運(yùn)行故障有90%以上是由電源噪聲引起的。為了提高系統(tǒng)供電可靠性,交流供電應(yīng)采用交流穩(wěn)壓器,防止電源的過壓和欠壓,直

31、流電源抗干擾措施有采用高質(zhì)量集成穩(wěn)壓電路單獨(dú)供電,采用直流開關(guān)電源,采用DC-DC變換器。本次設(shè)計(jì)決定采用MAXim公司的高電壓低功耗線性變換器MAX 1616作為電壓變換,采用該器件將輸入的24V電壓變換為5V電壓,給外圍5V的器件供電。MAX1616具有如下特點(diǎn):</p><p>  1.4~28V電壓輸入范圍。</p><p>  2.最大80uA的靜態(tài)工作電流。</p>

32、<p>  3.3V/5V電壓可選輸出。</p><p>  4.30mA輸出電流。</p><p>  本電路采用該器件將輸入的24V電壓變成5V電壓,給外圍5V的器件供電,其中二極管D1是保護(hù)二極管,防止輸入電壓接反可能帶來的對電路的影響和破壞。</p><p>  電源管理模塊電路圖如下:</p><p><b>

33、;  傳感器模塊設(shè)計(jì)</b></p><p>  數(shù)據(jù)的采集應(yīng)用熱電偶作為溫度傳感器,熱電偶是一種感溫元件 , 它把溫度信號轉(zhuǎn)換成熱電動(dòng)勢信號 , 通過電氣儀表轉(zhuǎn)換成被測介質(zhì)的溫度。熱電偶測溫的基本原理是兩種不同成份的均質(zhì)導(dǎo)體組成閉合回路 , 當(dāng)兩端存在溫度梯度時(shí) , 回路中就會有電流通過,此時(shí)兩端之間就存在 Seebeck 電動(dòng)勢——熱電動(dòng)勢,這就是所謂的塞貝克效應(yīng)。兩種不同成份的均質(zhì)導(dǎo)體為熱電極,

34、溫度較高的一端為工作端, 溫度較低的一端為自由端,自由端通常處于某個(gè)恒定的溫度下。根據(jù)熱電動(dòng)勢與溫度的函數(shù)關(guān)系 , 制成熱電偶分度表 ; 分度表是自由端溫度在 0 ℃ 時(shí) 的條件下得到的,不同的熱電偶具有不同的分度表。在熱電偶回路中接入第三種金屬材料時(shí) , 只要該材料兩個(gè)接點(diǎn)的溫度相同 , 熱電偶所產(chǎn)生的熱電勢將保持不變,即不受第三種金屬接入回路中的影響。因此 , 在熱電偶測溫時(shí) , 可接入測量儀表 , 測得熱電動(dòng)勢后 , 即可知道被測

35、介質(zhì)的溫度。 </p><p><b>  熱電偶優(yōu)點(diǎn): </b></p><p>  熱電偶是工業(yè)中常用的溫度測溫元件,具有如下特點(diǎn): ① 測量精度高:熱電偶與被測對象直接接觸,不受中間介質(zhì)的影響。 ② 熱響應(yīng)時(shí)間快:熱電偶對溫度變化反應(yīng)靈敏。③ 測量范圍大:熱電偶從 -40~+ 1600℃ 均可連續(xù)測溫。 ④性能可靠, 機(jī)械強(qiáng)度好。⑤ 使用壽命

36、長,安裝方便。  </p><p>  熱電偶的種類及結(jié)構(gòu):  </p><p> ?。?1 )熱電偶的種類 熱電偶有 K 型(鎳鉻 - 鎳硅) WRN 系列, N 型(鎳鉻硅 - 鎳硅鎂) WRM 系列, E 型(鎳鉻 - 銅鎳) WRE 系列, J 型(鐵 - 銅鎳) WRF 系列, T 型(銅 - 銅鎳) WRC 系列, S 型(鉑銠 10- 鉑) WRP

37、系列, R 型(鉑銠 13- 鉑) WRQ 系列, B 型(鉑銠 30- 鉑銠 6 ) WRR 系列等。 ( 2 )熱電偶的結(jié)構(gòu)形式:熱電偶的基本結(jié)構(gòu)是熱電極,絕緣材料和保護(hù)管;并 與顯示儀表、記錄儀表或計(jì)算機(jī)等配套使用。在現(xiàn)場使用中根據(jù)環(huán)境,被測介質(zhì)等多種因素研制成適合各種環(huán)境的熱電偶。 熱電偶簡單分為裝配式熱電偶,鎧裝式熱電偶和特殊形式熱電偶;按使用環(huán)境細(xì)分有耐 高溫?zé)犭娕?,耐磨熱電偶,耐腐熱電偶,耐高壓熱電偶,隔爆熱電偶,鋁液

38、測溫用熱電偶,循環(huán)硫化床用熱電偶,水泥回轉(zhuǎn)窯爐用熱電偶,陽極焙燒爐用熱電偶,高溫?zé)犸L(fēng)爐用熱電偶,汽化爐用熱電偶,滲碳爐用熱電偶,高溫鹽浴爐用熱電偶,銅、鐵及鋼水用熱電偶,抗氧化鎢錸熱電偶,真空爐用熱電偶,鉑銠熱電偶等。 </p><p><b>  放大器:</b></p><p>  本次設(shè)計(jì)采用TLC2712低功耗精密預(yù)算放大器,單電源供電,超低功耗,采用數(shù)字電位

39、器X9c104和X9c504。進(jìn)行信號的調(diào)零和滿量程調(diào)整。</p><p><b>  設(shè)計(jì)電路圖:</b></p><p><b>  多路轉(zhuǎn)換開關(guān):</b></p><p>  多路開關(guān)采用CD4052。多路轉(zhuǎn)換開關(guān)的作用是可以利用A/D轉(zhuǎn)換器進(jìn)行多路模擬量的轉(zhuǎn)換。利用多路開關(guān)輪流切換各被測回路與A/D轉(zhuǎn)換器,以達(dá)分時(shí)

40、享用A/D轉(zhuǎn)換器的目的。</p><p>  CD4052的邏輯圖</p><p><b>  CD4052引腳圖</b></p><p>  CD4052/CC4052是一個(gè)差分4通道數(shù)字控制模擬開關(guān),有A、B兩個(gè)二進(jìn)制控制輸入端和INH輸入,具有低導(dǎo)通阻抗和很低的截止漏電流。幅值為4.5~20V的數(shù)字信號可控制峰峰值至20V的模擬信號。例如

41、,若V DD=+5V,VSS=0,VEE=-13.5V,則0~5V的數(shù)字信號可控制-13.5~4.5V的模擬信號,這些開關(guān)電路在整個(gè)VDD-VSS和VDD-VEE電源范圍內(nèi)具有極低的靜態(tài)功耗,與控制信號的邏輯狀態(tài)無關(guān),當(dāng)INH輸入端=“1”時(shí),所有通道截止。二位二進(jìn)制輸入信號選通4對通道中的一通道,可連接該輸入至輸出。cBG838電子-技術(shù)資料-電子元件-電路圖-技術(shù)應(yīng)用網(wǎng)站-基本知識-原理-維修-作用-參數(shù)-電子元器件符號。</

42、p><p><b>  A/D轉(zhuǎn)換器</b></p><p>  本次設(shè)計(jì)的轉(zhuǎn)換器采用MC14433。具體特點(diǎn)如下:</p><p>  MC14433是美國Motorola公司推出的單片3 1/2位A/D轉(zhuǎn)換器,其中集成了雙積分式A/D轉(zhuǎn)換器所有的CMOS模擬電路和數(shù)字電路。具有外接元件少,輸入阻抗高,功耗低,電源電壓范圍寬,精度高等特點(diǎn),并且具

43、有自動(dòng)校零和自動(dòng)極性轉(zhuǎn)換功能,只要外接少量的阻容件即可構(gòu)成一個(gè)完整的A/D轉(zhuǎn)換器,其主要功能特性如下:</p><p>  1.精度:讀數(shù)的±0.05%±1字</p><p>  2.模擬電壓輸入量程:1.999V和199.9mV兩檔</p><p>  3.轉(zhuǎn)換速率:2-25次/s</p><p>  4.輸入阻抗:大于

44、1000MΩ</p><p>  5.輸入阻抗:大于1000MΩ</p><p>  6.功耗:8mW(±5V電源電壓時(shí),典型值)</p><p>  7.功耗:8mW(±5V電源電壓時(shí),典型值)</p><p>  MC14433最主要的用途是數(shù)字電壓表,數(shù)字溫度計(jì)等各類數(shù)字化儀表及計(jì)算機(jī)數(shù)據(jù)采集系統(tǒng)的A/D轉(zhuǎn)換接口。&

45、lt;/p><p>  MC14433的引腳說明: </p><p>  [1]. Pin1(VAG)—模擬地,為高科技阻輸入端,被測電壓和基準(zhǔn)電壓的接入地。</p><p>  [2]. Pin2(VR)—基準(zhǔn)電壓,此引腳為外接基準(zhǔn)電壓的輸入端。MC14433只要一個(gè)正基準(zhǔn)電壓即可測量正、負(fù)極性的電壓。此外,VR端只要加上一個(gè)大于5個(gè)時(shí)鐘周期的負(fù)脈沖(VR),就能夠復(fù)

46、為至轉(zhuǎn)換周期的起始點(diǎn)。</p><p>  [3]. Pin3(Vx)—被測電壓的輸入端,MC14433屬于雙積分型A/D轉(zhuǎn)換器,因而被測電壓與基準(zhǔn)電壓有以下關(guān)系: </p><p>  因此,滿量程的Vx=VR。當(dāng)滿量程選為1.999V,VR可取2.000V,而當(dāng)滿量程為199.9mV時(shí),VR取200.0mV,在實(shí)際的應(yīng)用電路中,根據(jù)需要,VR值可在200mV—2.000V之間選取。 &

47、lt;/p><p>  [4]. Pin4-Pin6(R1/C1,C1)—外接積分元件端。次三個(gè)引腳外接積分電阻和電容,積分電容一般選0.1uF聚脂薄膜電容,如果需每秒轉(zhuǎn)換4次,時(shí)鐘頻率選為66kHz,在2.000V滿量程時(shí),電阻R1約為470kΩ,而滿量程為200mV時(shí),R1取27kΩ。</p><p>  [5]. Pin7、Pin8(C01、C02)—外接失調(diào)補(bǔ)償電容端,電容一般也選0.

48、1uF聚脂薄膜電容即可。</p><p>  [6]. Pin9(DU)—更新顯示控制端,此引腳用來控制轉(zhuǎn)換結(jié)果的輸出。如果在積分器反向積分周期之前,DU端輸入一個(gè)正跳變脈沖,該轉(zhuǎn)換周期所得到的結(jié)果將被送入輸出鎖存器,經(jīng)多路開關(guān)選擇后輸出。否則繼續(xù)輸出上一個(gè)轉(zhuǎn)換周期所測量的數(shù)據(jù)。這個(gè)作用可用于保存測量數(shù)據(jù),若不需要保存數(shù)據(jù)而是直接輸出測量數(shù)據(jù),將DU端與EOC引腳直接短接即可。</p><p&

49、gt;  [7]. Pin10、Pin11(CLK1、CLK0)—時(shí)鐘外接元件端,MC14433內(nèi)置了時(shí)鐘振蕩電路,對時(shí)鐘頻率要求不高的場合,可選擇一個(gè)電阻即可設(shè)定時(shí)鐘頻率,時(shí)鐘頻率為66kHz時(shí),外接電阻取300kΩ即可。</p><p>  若需要較高的時(shí)鐘頻率穩(wěn)定度,則需采用外接石英晶體或LC電路,參考附圖。 </p><p>  [8]. Pin12(VEE—負(fù)電源端。VEE是整個(gè)

50、電路的電壓最低點(diǎn),此引腳的電流約為0.8mA,驅(qū)動(dòng)電流并不流經(jīng)此引腳,故對提供此負(fù)電壓的電源供給電流要求不高。</p><p>  [9]. Pin13(Vss)—數(shù)字電路的負(fù)電源引腳。Vss工作電壓范圍為VDD-5V≥Vss≥VEE。除CLK0外,所有輸出端均以Vss為低電平基準(zhǔn)。</p><p>  [10]. Pin14(EOC)—轉(zhuǎn)換周期結(jié)束標(biāo)志位。每個(gè)轉(zhuǎn)換周期結(jié)束時(shí),EOC將輸出

51、一個(gè)正脈沖信號。</p><p>  [11]. Pin15(OR非)—過量程標(biāo)志位,當(dāng)|Vx|>VREF時(shí), 輸出為低電平。</p><p>  [12]. Pin16、17、18、19(DS4、DS3、DS2、DS1)—多路選通脈沖輸出端。DS1、DS2、DS3和DS4分別對應(yīng)千位、百位、十位、個(gè)位選通信號。當(dāng)某一位DS信號有效(高電平)時(shí),所對應(yīng)的數(shù)據(jù)從Q0、Q1、Q2和Q3輸

52、出,兩個(gè)選通脈沖之間的間隔為2個(gè)時(shí)鐘周期,以保證數(shù)據(jù)有充分的穩(wěn)定時(shí)間。</p><p>  [13]. Pin20、21、22、23(Q0、Q1、Q2、Q3)—BCD碼數(shù)據(jù)輸出端。該A/D轉(zhuǎn)換器以BCD碼的方式輸出,通過多路開關(guān)分時(shí)選通輸出個(gè)位、十位、百位和千位的BCD數(shù)據(jù)。同時(shí)在DS1期間輸出的千位BCD碼還包含過量程、欠量程和極性標(biāo)志信息,這些信息所代表的意義見下表。</p><p>

53、  [13]. Pin24(VDD)—正電源電壓端。</p><p>  數(shù)據(jù)采集模塊總電路圖:</p><p><b>  2.7、顯示器設(shè)計(jì)</b></p><p>  1602液晶顯示器,數(shù)據(jù)由P0口傳送,RS由P2.6控制。使能端由P2^7驅(qū)動(dòng)。一位通道號,四位溫度顯示。</p><p><b>  顯

54、示模塊電路圖:</b></p><p>  2.8、鍵盤電路設(shè)計(jì)</p><p>  2.9、電路總體設(shè)計(jì)圖</p><p><b>  三,軟件流程圖</b></p><p><b>  四、程序清單</b></p><p>  #include<reg5

55、1.h></p><p>  sbit s2=P3^4;</p><p>  sbit rs=P3^5;</p><p>  sbit lcden=P3^4;</p><p>  sbit dula=P2^6;</p><p>  sbit wela=P2^7;</p><p>  #de

56、fine uchar unsigned char</p><p>  #define uint unsigned int</p><p>  #define uint unsigned int</p><p>  #define uchar unsigned char</p><p>  sbit adrd=P3^7;

57、 </p><p>  sbit adwr=P3^6;</p><p>  sbit diola=P2^5;</p><p>  sbit dula=P2^6;</p><p>  sbit wela=P2^7;</p><p>  unsigned char j,k,adval;</p&

58、gt;<p>  void delay(unsigned char i)</p><p><b>  {</b></p><p>  for(j=i;j>0;j--)</p><p>  for(k=125;k>0;k--);</p><p><b>  } </b>

59、</p><p>  void delay1(uint x)</p><p><b>  {</b></p><p><b>  uint a,b;</b></p><p>  for(a=x;a>0;a--)</p><p>  for(b=100;b>0;b-

60、-); </p><p><b>  }</b></p><p>  void write_com(uchar com)</p><p><b>  {</b></p><p><b>  P0=com;</b></p><p><b>  r

61、s=0;</b></p><p><b>  lcden=0;</b></p><p>  delay(10);</p><p><b>  lcden=1;</b></p><p>  delay(10);</p><p><b>  lcden=0;

62、</b></p><p><b>  }</b></p><p>  void write_date(uchar date)</p><p><b>  {</b></p><p><b>  P0=date;</b></p><p><

63、;b>  rs=1;</b></p><p><b>  lcden=0;</b></p><p>  delay(10);</p><p><b>  lcden=1;</b></p><p>  delay(10);</p><p><b> 

64、 lcden=0;</b></p><p><b>  }</b></p><p>  void init()</p><p><b>  {</b></p><p><b>  dula=0;</b></p><p><b>  

65、wela=0;</b></p><p>  write_com(0x38); </p><p>  delay(20);</p><p>  write_com(0x0f); </p><p>  delay(20);</p><p>  write_com(0x06); </p>

66、<p>  delay(20);</p><p>  write_com(0x01); </p><p>  delay(20);</p><p><b>  }</b></p><p>  void datepro()</p><p><b>  {</b>

67、;</p><p><b>  u8 i;</b></p><p>  switch(wd_sec)</p><p><b>  {</b></p><p>  case 1: </p><p>  switch(pos_sec)</p>&l

68、t;p><b>  {</b></p><p><b>  case 1:</b></p><p>  number3 = number_set1/10;</p><p>  number4 = number_set1%10;</p><p><b>  break;</b&g

69、t;</p><p><b>  case 2:</b></p><p>  number5 = number_set2;</p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  numb

70、er7 = number_set3/10;</p><p>  number8 = number_set3%10;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  break;</b></p>

71、<p>  case 2:</p><p>  if(flashlight_flag==0)</p><p><b>  {</b></p><p>  switch(pos_sec)</p><p><b>  {</b></p><p><b>

72、  case 1:</b></p><p>  number3 = number_set1/10;</p><p>  number4 = number_set1%10;</p><p><b>  break;</b></p><p><b>  case 2:</b></p&g

73、t;<p>  number5 = number_set2;</p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  number7 = number_set3/10;</p><p>  number8 = numbe

74、r_set3%10;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>

75、  {</b></p><p>  switch(pos_sec)</p><p><b>  {</b></p><p><b>  case 1:</b></p><p>  number3 = 18;</p><p>  number4 = 18;</

76、p><p><b>  break;</b></p><p><b>  case 2:</b></p><p>  number5 = 18;</p><p><b>  break;</b></p><p><b>  case 3:</

77、b></p><p>  number7 = 18;</p><p>  number8 = 18;</p><p><b>  break; </b></p><p><b>  }</b></p><p><b>  }</b></p&g

78、t;<p><b>  break;</b></p><p><b>  }</b></p><p>  void main()</p><p>  uchar a,A1,A2,A2t,A3;</p><p><b>  while(1)</b></p&

79、gt;<p><b>  {</b></p><p><b>  wela=1;</b></p><p>  P0=0; </p><p>  adwr=0;</p><p><b>  _nop_();</b>&

80、lt;/p><p><b>  adwr=1;</b></p><p>  P0=0xff; </p><p>  delay(10);</p><p>  wela=0; </p><p>  for(a=20;a>

81、0;a--) </p><p>  {

82、 </p><p>  display(A1,A2,A3);</p><p><b>  }</b></p><p>  wela=1; </p><p>  

83、P1=0xff; </p><p>  P0=0; </p><p>  adrd=0; </p><p>  adval=P1;</p><p><b>  adrd=1;</b></p&g

84、t;<p>  P0=0xff; </p><p><b>  adwr=0;</b></p><p>  P1=adval; </p><p>  A1=adval/100;</p><p>  A2t=adval%100;

85、</p><p>  A2=A2t/10;</p><p>  A3=A2t%10;</p><p><b>  };</b></p><p><b>  }</b></p><p>  void choosech(unsigned char ch)</p>&

86、lt;p><b>  {</b></p><p>  switch(ch)</p><p><b>  {</b></p><p><b>  case 1:</b></p><p><b>  A0=0;</b></p><p&

87、gt;<b>  A1=0;</b></p><p><b>  break;</b></p><p><b>  case 2:</b></p><p><b>  A0=0;</b></p><p><b>  A1=1;</b>

88、</p><p><b>  break;</b></p><p><b>  case 3:</b></p><p><b>  A0=1;</b></p><p><b>  A1=0;</b></p><p><b>

89、;  break;</b></p><p><b>  case 4:</b></p><p><b>  A0=1;</b></p><p><b>  A1=1;</b></p><p><b>  break;</b></p>

90、<p><b>  }</b></p><p><b>  }</b></p><p>  unsigned int ReadADC()</p><p><b>  {</b></p><p>  unsigned char i,k;</p><

91、;p>  unsigned char channel;</p><p>  unsigned int AdcResult; // 12 bit</p><p>  ADC_CS=0; // Active chip select</p><p>  k++;// Delay about 1 uS</p><p>  ADC_C

92、LK=0; // make clock low first </p><p><b>  k++;k++;</b></p><p>  channel = 0xd0;</p><p>  k++;k++; // delay about 2 uS</p><p>  //--- write command 4

93、 bit ----------</p><p>  for(i=0; i< 4;i++) {</p><p>  ADC_DI = (channel & 0x80) != 0;</p><p>  channel<<=1;</p><p>  ADC_CLK=1;</p><p>  k++;

94、k++;// delay about 2 uS</p><p>  ADC_CLK=0;</p><p><b>  }</b></p><p>  k++;k++; // delay about 2 uS</p><p>  ADC_CLK=1;</p><p>  k++;k++;

95、 </p><p>  ADC_CLK=0;</p><p>  k++;k++; </p><p>  //--- read ADC result 12 bit --------</p><p>  AdcResult=0;</p><p>  for(i=0;i<12;i++) {</p>

96、;<p>  ADC_CLK=1;</p><p>  k++;k++; </p><p>  AdcResult<<=1;</p><p>  AdcResult=AdcResult | (ADC_DO & 0x01); </p><p>  ADC_CLK=0;</p>

97、<p>  k++;k++; </p><p><b>  }</b></p><p><b>  ADC_CS=1;</b></p><p>  return(AdcResult);</p><p><b>  }</b></p><p

98、>  switch(analog_sec)</p><p><b>  {</b></p><p><b>  case 1:</b></p><p>  number1=10; </p><p><b>  break;</b></p><p&

99、gt;<b>  case 2:</b></p><p>  number1=11; </p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  number1=12; </p><p&

100、gt;<b>  break;</b></p><p>  case 4:</p><p>  number1=13;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(set

101、_ok)</p><p><b>  {</b></p><p>  number1=12;</p><p>  number2=19;</p><p>  number3=17;</p><p>  switch(analog_sec)</p><p><b>

102、  {</b></p><p><b>  case 1:</b></p><p>  number4=10; </p><p><b>  break;</b></p><p><b>  case 2:</b></p><p>  

103、number4=11; </p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  number4=12; </p><p><b>  break;</b></p><p>&

104、lt;b>  case 4:</b></p><p>  number4=13; </p><p><b>  break;</b></p><p><b>  }</b></p><p>  for(i=0;i<16;i++) </p&g

105、t;<p><b>  {</b></p><p>  addate_temp+=ReadADC();</p><p><b>  }</b></p><p>  addate_temp/=16;</p><p>  num_ad=(addate_temp*5.98)/4096; &

106、lt;/p><p>  if((u8)num_ad>count)</p><p><b>  {</b></p><p>  num_ad=count; </p><p><b>  }</b></p><p>  addate_temp=0

107、;</p><p>  //number5=(unsigned char)num_ad/10;</p><p>  number5=(unsigned char)num_ad%10;</p><p>  number6=(unsigned char)((int)(num_ad*10)%10);</p><p>  number7=(uns

108、igned char)((int)(num_ad*100)%10);</p><p>  number8=(unsigned char)((int)(num_ad*1000)%10);</p><p>  number_gz=(u8)num_ad*2; </p><p><b>  }</b></p><

109、p><b>  }</b></p><p><b>  五、設(shè)計(jì)總結(jié)及體會</b></p><p>  在基于單片機(jī)的溫度采集系統(tǒng)的設(shè)計(jì)過程中,通過在網(wǎng)上查找各種資料我了解和初步掌握了Altim designer 10軟件的用法,MC14433,MAX1616,74LS273及電源模塊的設(shè)計(jì)和使用。數(shù)碼管和鍵盤的掃描利用,A/D轉(zhuǎn)換設(shè)計(jì),顯

110、示器設(shè)計(jì),系統(tǒng)軟件設(shè)計(jì),進(jìn)一步鞏固了所學(xué)的單片機(jī)知識。本次設(shè)計(jì)將我以前所學(xué)習(xí)的知識進(jìn)一步加以融合,重新有了一個(gè)清晰而又深刻的認(rèn)識。</p><p>  經(jīng)過本次設(shè)計(jì),我深深認(rèn)識到自學(xué)的重要性,和對所學(xué)知識及互聯(lián)網(wǎng)上知識資源的利用。我通過本次設(shè)計(jì)還體會到了團(tuán)結(jié)合作的力量,彼此探討芯片功能,軟件的互相指導(dǎo)使得經(jīng)過本次設(shè)計(jì)我有了很大的收獲。最后要感謝仲老師的指導(dǎo)和同學(xué)的幫助,在以后的學(xué)習(xí)實(shí)踐中我會更加努力,學(xué)以致用,努

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論