1. 基於單片機的溫度控制系統
加熱部件可以在淘寶上買個
usb
5v
加熱片,usb供電的電流不會超過
500ma,
控制可以用單片機腳控制一個
c8050三極體控制加熱片的通斷電。
2. 基於單片機的溫度數據採集系統設計
單片機課程設計任務書
題目:基於單片機的溫度數據採集系統設計
一.設計要求
1.被測量溫度范圍:0~500℃,溫度解析度為0.5℃。
2.被測溫度點:4個,每2秒測量一次。
3.顯示器要求:通道號1位,溫度4位(精度到小數點後一位)。
顯示方式為定點顯示和輪流顯示。
4.鍵盤要求:
(1)定點顯示設定;(2)輪流顯示設定;(3)其他功能鍵。
二.設計內容
1.單片機及電源管理模塊設計。
單片機可選用AT89S51及其兼容系列,電源管理模塊要實
現高精密穩壓輸出,為單片機及A/D轉換器供電。
2.感測器及放大器設計。
感測器可以選用鎳鉻—鎳硅熱電偶(分度號K),放大器要實現熱電偶輸出的mV級信號到A/D輸入V級信號放大。
3.多路轉換開關及A/D轉換器設計。
多路開關可以選用CD4052,A/D可選用MC14433等。
4.顯示器設計。
可以選用LED顯示或LCD顯示。
5.鍵盤電路設計。
實現定點顯示按鍵;輪流顯示按鍵;其他功能鍵。
6.系統軟體設計。
系統初始化模塊,鍵盤掃描模塊,顯示模塊,數據採集模塊,標度變換模塊等。
引言:
在生產和日常生活中,溫度的測量及控制十分重要,實時溫度檢測系統在各個方面應用十分廣泛。消防電氣的非破壞性溫度檢測,大型電力、通訊設備過熱故障預知檢測,各類機械組件的過熱預警,醫療相關設備的溫度測試等等都離不開溫度數據採集控制系統。
隨著科學技術的發展,電子學技術也隨之迅猛發展,同時帶動了大批相關產業的發展,其應用范圍也越來越廣泛。近年來單片機發展也同樣十分迅速,單片機已經滲透到工業、農業、國防等各個領域,單片機以其體積小,可靠性高,造價低,開發周期短的特點被廣泛推廣與應用。傳統的溫度採集不僅耗時而且精度低,遠不能滿足各行業對溫度數據高精度,高可靠性的要求。溫度的控制及測量對保證產品質量、提高生產效率、節約能源、生產安全、促進國民經濟的發展起到重要作用。在單片機溫度測量系統中關鍵是測量溫度,控制溫度和保持溫度。溫度測量是工業對象的主要被控參數之一。本此題目的總體功能就是利用單片機和熱敏原件實現溫度的採集與讀數,利用五位LED顯示溫度讀數和所選通道號,實現熱電轉化,實現溫度的精確測量。本設計是以Atmel公司的AT89S51單片機為控制核心,通過MC14433模數轉換對所測的溫度進行數字量變化,且通過數碼管進行相應的溫度顯示。採用微機進行溫度檢測,數字顯示,信息存儲及實時控制,對於提高生產效率和產品質量、節約能源等都有重要作用。
目錄:
一、系統總體功能及技術指標的描述........................................ 5
二、各模塊電路原理描述............................................................. 5
2.1單片機及電源模塊設計...................................................... 5
2.2、AT89S51引腳說明.......................................................... 7
2.3、數據採集模塊設計........................................................ 11
2.4、多路開關......................................................................... 12
2.5、放大器............................................................................. 15
2.6、A/D轉換器..................................................................... 16
2.7、顯示器設計..................................................................... 21
2.8、鍵盤電路設計................................................................. 22
2.9、電路總體設計圖........................................................... 22
三、軟體流程圖 ...................................................................... 24
四、程序清單.............................................................................. 25
五、設計總結及體會.................................................................... 31
六、參考資料................................................................................ 32
一、系統總體功能及技術指標的描述
1. 系統的總體功能:
溫度數據採集系統,實現溫度的採集與讀書,利用五位LED顯示溫度讀數和所選通道號,實現熱電轉化的原理過程。
被測量溫度范圍:0~500℃,溫度解析度為0.5℃。被測溫度點4個,每2秒測量一次。顯示器要求:通道號1位,溫度4位(精度到小數點後一位)。顯示方式為定點顯示和輪流顯示,可以通過按鍵改變顯示方式。
2. 技術指標要求:
1.被測量溫度范圍:0~500℃,溫度解析度為0.5℃。
2.被測溫度點:4個,每2秒測量一次。
3.顯示器要求:通道號1位,溫度4位(精度到小數點後一位)。
顯示方式為定點顯示和輪流顯示。
4.鍵盤要求:
(1)定點顯示設定;(2)輪流顯示設定;(3)其他功能鍵。
二、各模塊電路原理描述
2.1單片機及電源模塊設計
如圖所示為AT89S51晶元的引腳圖。兼容標准MCS-51指令系統的AT89S51單片機是一個低功耗、高性能CHMOS的單片機,片內含4KB在線可編程Flash存儲器的單片機。它與通用80C51系列單片機的指令系統和引腳兼容。
AT89S51單片機片內的Flash可允許在線重新編程,也可用通用非易失性存儲編程器編程;片內數據存儲器內含128位元組的RAM;有40個引腳,32個外部雙向輸入/輸出(I/O)埠;具有兩個16位可編程定時器;中斷系統是具有6個中斷源、5個中斷矢量、2級中斷優先順序的中斷結構;震盪器頻率0到33MHZ,因此我們在此選用12MHZ的晶振是比較合理的;具有片內看門狗定時器;具有斷電標志POF等等。AT89S51具有PDIP、TQFP和PLCC三種封裝形式[8]。
圖5.1-1 AT89S51引腳圖
上圖就是PDIP封裝的引腳排列,下面介紹各引腳的功能。
2.2、AT89S51引腳說明
P0口:8位、開漏級、雙向I/O口。P0口可作為通用I/O口,但須外接上拉電阻;作為輸出口,每各引腳可吸收8各TTL的灌電流。作為輸入時,首先應將引腳置1。P0也可用做訪問外部程序存儲器和數據存儲器時的低8位地址/數據匯流排的復用線。在該模式下,P0口含有內部上拉電阻。在FLASH編程時,P0口接收代碼位元組數據;在編程效驗時,P0口輸出代碼位元組數據(需要外接上拉電阻)。
P1口:8位、雙向I/0口,內部含有上拉電阻。P1口可作普通I/O口。輸出緩沖器可驅動四個TTL負載;用作輸入時,先將引腳置1,由片內上拉電阻將其抬到高電平。P1口的引腳可由外部負載拉到低電平,通過上拉電阻提供電流。在FLASH並行編程和校驗時,P1口可輸入低位元組地址。在串列編程和效驗時,P1.5/MO-SI,P1.6/MISO和P1.7/SCK分別是串列數據輸入、輸出和移位脈沖引腳。
P2口:具有內部上拉電阻的8位雙向I/O口。P2口用做輸出口時,可驅動4各TTL負載;用做輸入口時,先將引腳置1,由內部上拉電阻將其提高到高電平。若負載為低電平,則通過內部上拉電阻向外部輸出電流。CPU訪問外部16位地址的存儲器時,P2口提供高8位地址。當CPU用8位地址定址外部存儲時,P2口為P2特殊功能寄存器的內容。在FLASH並行編程和校驗時,P2口可輸入高位元組地址和某些控制信號。
P3口:具有內部上拉電阻的8位雙向口。P3口用做輸出口時,輸出緩沖器可吸收4各TTL的灌電流;用做輸入口時,首先將引腳置1,由內部上拉電阻抬位高電平。若外部的負載是低電平,則通過內部上拉電阻向輸出電流。在與FLASH並行編程和校驗時,P3口可輸入某些控制信號。P3口除了通用I/O口功能外,還有替代功能,如表5.3-1所示。
表5.3-1 P3口的替代功能
引腳
符號
說明
P3.0
RXD
串列口輸入
P3.1
TXD
串列口輸出
P3.2
/INT0
外部中斷0
P3.3
/INT1
外部中斷1
P3.4
T0
T0定時器的外部的計數輸入
P3.5
T1
T1定時器的外部的計數輸入
P3.6
/WR
外部數據存儲器的寫選通
P3.7
/RD
外部數據存儲器的讀選通
RST:復位端。當振盪器工作時,此引腳上出現兩個機器周期的高電平將系統復位。
ALE/ :當訪問外部存儲器時,ALE(允許地址鎖存)是一個用於鎖存地址的低8位位元組的書粗脈沖。在Flash 編程期間,此引腳也可用於輸入編程脈沖()。在正常操作情況下,ALE以振盪器頻率的1/6的固定速率發出脈沖,它是用作對外輸出的時鍾,需要注意的是,每當訪問外部數據存儲器時,將跳過一個ALE脈沖。如果希望禁止ALE操作,可通過將特殊功能寄存器中位地址為8EH那位置的「0」來實現。該位置的「1」後。ALE僅在MOVE或MOVC指令期間激活,否則ALE引腳將被略微拉高。若微控制器在外部執行方式,ALE禁止位無效。
:外部程序存儲器讀選取通信號。當AT89S51在讀取外部程序時, 每個機器周期 將PSEN激活兩次。在此期間內,每當訪問外部數據存儲器時,將跳過兩個信號。
/Vpp:訪問外部程序存儲器允許端。為了能夠從外部程序存儲器的0000H至FFFFH單元中取指令,必須接地,然而要注意的是,若對加密位1進行編程,則在復位時,的狀態在內部被鎖存。
執行內部程序應接VCC。不當選擇12V編程電源時,在Flash編程期間,這個引腳可接12V編程電壓。
XTAL1:振盪器反向放大器輸入端和內部時鍾發生器的輸入端。
XTAL2:振盪器反相放大器輸出端[9]。
電源模塊設計
在影響單片機系統可靠性的諸多因素中,電源干擾可謂首屈一指,據統計,計算機應用系統的運行故障有90%以上是由電源雜訊引起的。為了提高系統供電可靠性,交流供電應採用交流穩壓器,防止電源的過壓和欠壓,直流電源抗干擾措施有採用高質量集成穩壓電路單獨供電,採用直流開關電源,採用DC-DC變換器。本次設計決定採用MAXim公司的高電壓低功耗線性變換器MAX 1616作為電壓變換,採用該器件將輸入的24V電壓變換為5V電壓,給外圍5V的器件供電。MAX1616具有如下特點:
1.4~28V電壓輸入范圍。
2.最大80uA的靜態工作電流。
3.3V/5V電壓可選輸出。
4.30mA輸出電流。
5.2%的電壓輸出精度。
電源管理模塊電路圖如下:
本電路採用該器件將輸入的24V電壓變成5V電壓,給外圍5V的器件供電,其中二極體D1是保護二極體,防止輸入電壓接反可能帶來的對電路的影響和破壞。
3. 基於單片機的熱電偶測溫電路圖
我用的是AVR的,熱電偶採用專門的處理晶元MAX6675,這個晶元比較貴。
當然,程序中包含其他一些代碼,沒時間去刪除,你看看能不能用。給你一個熱電偶這部分的電路,如果要全面的,你可以Hi我,包括程序。
這個6675原本是用SPI方式的,由於AVR下載程序用到了SPI口,導致沖突,因此採用了普通埠,程序處理時採用模擬SPI的工作方式。
程序比較大,粘不上,明晚回來了再發
4. 基於單片機溫度測控系統在國內外的研究現狀
(1)國外溫度測控系統研究
國外對溫度控制技術研究較早,始於20世紀70年代。先是採用模擬式的組合儀表,採集現場信息並進行指示、記錄和控制。80年代末出現了分布式控制系統。目前正開發和研製計算機數據採集控制系統的多因子綜合控制系統。現在世界各國的溫度測控技術發展很快,一些國家在實現自動化的基礎上正向著完全自動化、無人化的方向發展。
(2)國內溫度測控系統研究
我國對於溫度測控技術的研究較晚,始於20世紀80年代。我國工程技術人員在吸收發達國家溫度測控技術的基礎上,才掌握了溫度室內微機控制技術,該技術僅限於對溫度的單項環境因子的控制。我國溫度測控設施計算機應用,在總體上正從消化吸收、簡單應用階段向實用化、綜合性應用階段過渡和發展。在技術上,以單片機控制的單參數單迴路系統居多,尚無真正意義上的多參數綜合控制系統,與發達國家相比,存在較大差距。我國溫度測量控制現狀還遠遠沒有達到工廠化的程度,生產實際中仍然有許多問題困擾著我們,存在著裝備配套能力差,產業化程度低,環境控制水平落後,軟硬體資源不能共享和可靠性差等缺點。
這是本人整理的一些,僅供參考。希望對你有用。
5. 基於單片機的熱水器溫度控制系統
東華理工大學畢業設計(論文)
基於單片機的熱水器溫度控制
摘 要
溫度是日常生活中不可缺少的物理量,溫度在各個領域都有積極的意義。很多行業中以及日常生活中都有大量的用電加熱設備,如用於加熱處理的加熱熱水器,用於洗浴的電熱水器及各種不同用途的溫度箱等,採用單片機對它們進行控制具有控制方便、簡單、靈活性大等特點,而且還可以大幅提高被控系統的性能,從而能被大大提高產品的質量。因此,智能化溫度控制技術正被廣泛地應用。
本溫度設計採用現在流行的AT89C51單片機為控制器,用PID控制方法,再配以其他電路對熱水器的水溫進行控制。
關鍵詞:89C51; PID; 溫度控制
I
1/41頁
東華理工大學畢業設計(論文)
ABSTRACT
Temperature is essential physical in daily life ,and in various fields has positive implications.A lot of businesses and daily lives have a lot of electric heating equipment.Such as electric water heater for bathing and variety of different uses of the temperature boxes. MCU to control them with easy to control,simple,flexibility and other characteristics,also can significantly improve the performance of the controlled system,which can be greatly improved proct quality. Therefore,intelligent temperature control technology is being widely used.
The temperature control design uses the now popular AT89C51 MCU controller,with PID control method, which together with
6. 怎樣用51單片機實現累加計時和倒計時,並用六個共陰極數碼管顯示出來。用兩個按鍵分別切換。
沒有定時器的不過有數字鍾的
你可以參考下
其中可有有用的
摘要
本題給出基於單片機的數字中的設計,設計由單片機作為核心控制器,通過頻率計數實現計時功能,將實時時間經由單片機輸出到顯示設備——數碼管上顯示出來,並通過鍵盤來實現啟動、停止、復位和調整時間的功能。
關鍵詞: 單片機、數字鍾、AT89S52、LED
1 引言
在單片機技術日趨成熟的今天,其靈活的硬體電路的設計和軟體的設計,讓單片機得到了廣泛的應用,幾乎是從小的電子產品,到大的工業控制,單片機都起到了舉足輕重的作用。單片機小的系統結構幾乎是所有具有可編程硬體的一個縮影,可謂是「麻雀雖小,五臟俱全」。
現在是一個知識爆炸的新時代。新產品、新技術層出不窮,電子技術的發展更是日新月異。可以毫不誇張的說,電子技術的應用無處不在,電子技術正在不斷地改變我們的生活,改變著我們的世界。在這快速發展的年代,時間對人們來說是越來越寶貴,在快節奏的生活時,人們一旦遇到重要的事情而忘記了時間,這將會帶來很大的損失,因此我們需要一個計時系統來提醒這些忙碌的人。 然而,隨著科技的發展和社會的進步,人們對時鍾的要求也越來越高,傳統的時鍾已不能滿足人們的需求。多功能數字鍾不管在性能上還是在樣式上都發生了質的變化,如電子鬧鍾、數字鬧鍾等等。 單片機在多功能數字鍾中的應用已是非常普遍的,基於單片機的數字鍾給人們帶來了極大的方便。
現今,高精度的計時工具大多數都使用了石英晶體振盪器,由於電子鍾,石英錶,石英鍾都採用了石英技術,因此走時精度高,穩定性好,使用方便,不需要經常調校,數字式電子鍾用集成電路計時,解碼代替機械式傳動,用LED顯示器代替指針顯示進而顯示時間,減小了計時誤差,這種表具有時,分,秒顯示時間的功能,還可以進行時和分的校對,片選的靈活性好。本文利用單片機實現數字時鍾計時功能的主要內容,其中AT89S52是核心元件同時採用數碼管動態顯示「時」,「分」,「秒」的現代計時裝置。與傳統機械表相比,它具有走時精確,顯示直觀等特點。它的計時周期為24小時,顯滿刻度為「23時59分59秒」,另外具有校時功能,斷電後有記憶功能,恢復供電時可實現計時同步等特點。
2 方案論證
2.1 方案一
數字鍾採用FPGA作為主控制器。由於FPGA具有強大的資源,使用方便靈活,易於進行功能擴展,特別是結合了EDA,可以達到很高的效率。此方案邏輯雖然簡單一點,但是一塊FPGA的價格很高,對於做電子鍾來說有一點浪費,而且FPGA比較難掌握,本設計中不作過多研究,也不採用此方案。
2.2 方案二
數字鍾由幾種邏輯功能不同的CMOS數字集成電路構成,共使用了10片數字集成電路,其原理圖如圖2.1所示。它是由秒信號發生器(時基電路)、小時分鍾計數器及解碼和驅動顯示電路3部分組成,其基本工作過程是:時基電路產生精確周期的脈沖信號,經過分頻器作用給後面的計數器輸送1HZ的秒信號,最後由計數器及驅動顯示單元按位驅動數碼管時間顯示,但是這樣設計的電路比較復雜,使用也不靈活,而且價格比較高,故不採用此方案。
圖2.1 方案二原理示意圖
2.3 方案三
AT89S52是一種低功耗、高性能CMOS 8位微控制器。使用Atmel公司高密度非易失性存儲器技術製造,與工業80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統可編程,亦適於常規編程器。在單晶元上,擁有靈巧的8位CPU和在系統可編程Flash,使得AT89S52為眾多嵌入式控制應用系統提供高靈活、有效的解決方案。它具有串列口,片內晶振及時鍾電路。另外,AT89S52可降至0Hz 靜態邏輯操作,支持2種軟體可選擇節電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,RAM內容被保存,振盪器被凍結,單片機一切工作停止,直到下一個中斷或硬體復位為止。
基於AT89S52單片機來實現系統的控制,外圍電路比較簡單,成本比較低,此系統控制靈活能很好地滿足本課題的基本要求和擴展要求,因此選用該方案。其硬體框圖如圖2.2所示,原理圖見附錄圖6.1。
圖2.2 數字鍾硬體框圖
2.4 電路組成及工作原理
本文數字時鍾設計原理主要利用AT89S52單片機,由單片機的P0口控制數碼管的位顯示,P2口控制數碼管的段顯示,P1口與按鍵相接用於時間的校正。在設計中引入220V交流電經過整流、濾波後產生+5V電壓,用於給單片機及顯示電路提供工作電壓。
整個系統工作時,秒信號產生器是整個系統的時基信號,它直接決定計時系統的精度,將標准秒信號送入「秒計數器」,「秒計數器」採用60進制計數器,每累計60秒發出一個「分脈沖」信號,該信號將作為「分計數器」的時鍾脈沖。「分計數器」也採用60進制計數器,每累計60分鍾,發出一個「時脈沖」信號,該信號將被送到「時計數器」。「時計數器」採用24進制計時器,可實現對一天24小時的累計。顯示電路將「時」、「分」、「秒」計數器的輸出,通過六個七段LED顯示器顯示出來。校時電路是直接加一個脈沖信號到時計數器或者分計數器或者秒計數器來對「時」、「分」、「秒」顯示數字進行校對調整。在本設計中,24小時時鍾顯示、秒錶的設計和顯示都是依靠單片機中的定時器完成。使用定時器T0產生1s的中斷,在中斷程序中完成每一秒數字的變化,並在主程序中動態顯示該字元。其功能框圖如圖2.3所示。
圖2.3 秒錶外中斷的功能示意圖
數字鍾的電路設計主要功能是提供單片機和外部的LED顯示、273地址鎖存和片選以及外部存儲器2764的介面電路,此外還需要設計相關的LED驅動電路。
(1)電路原理和器件選擇
本實例相關的關鍵部分的器件名稱及其在數字鍾電路中的主要功能:
89S52:單片機,控制LED的數據顯示。
LED1--LED6:用於顯示單片機的數據,其中三個採用7段顯示用於顯示時、分、秒的十位,另三個採用8段顯示用於顯示時、分、秒的個位。
74LS273:鎖存器,LED顯示擴展電路中的段碼和位碼使用了兩片74LS273,上升沿鎖存。
74LS02:與非門,與單片機的讀寫信號一起使用,選中外部的74LS273,決定LED的欄位和字位的顯示內容。
7407:驅動門電路,提供數碼管顯示的驅動電流。
74LS04:非門,對單片機的片選信號取反,並和讀寫信號一起使用,決定74LS273的片選。
L1--L4:發光二極體,通過單片機的P1.4--P1.7控制,用以顯示秒錶和時鍾的時間變化。
BUZZER:揚聲器,在程序規定的情況下,發出聲音,提示計時完畢。
74LS373:地址鎖存器,將P0口的地址和數據分開,分別輸入到2764的數據和地址埠。
2764:EPROM,為單片機提供外部的程序存儲區。
開關K0、K1、K2分別調整秒、分、時。
按鍵RESET:在復位電路中,起到程序復位的作用。
按鍵PULSE:提供單脈沖,從而實現單片機對外部脈沖的計數功能,利用單脈沖實現相應位加1。
(2)地址分配和連接
P2.7:和寫信號一起組成字位口的片選信號,字位口的對應地址位8000H
P2.6:和寫信號一起組成欄位口的片選信號,欄位口的對應地址位4000H
D0--D7:單片機的數據匯流排,LED顯示的內容通過D0--D7數據線從單片機傳送到LED
P2.0--P2.5:單片機的P2口,和2764的高端地址線相連,決定2764中的存儲單元的地址。
P1.4--P1.7:單片機的P1口,和反光二極體L1--L4相連,通過單片機的P1.4--P1.7控制,用以顯示秒錶和時鍾的時間變化。
(3)功能簡介
LED顯示模塊與單片機的連接中,對LED顯示模塊的讀寫和字位、欄位通道的選擇是通過單片機的P2.6、P2.7口完成。其中,P2.6、P2.7口的片選信號需要和讀寫信號做一定的邏輯操作,以保證字位和欄位選擇的正確性。
外部存儲器2764是通過74LS373和單片機相連,並且通過P2口的相關信號線進行地址的分配。地址范圍為0000H--1FFFH。
3 各電路設計和論證
3.1電源電路設計
在各種電子設備中,直流穩壓電源是必不可少的組成部分,它不僅為系統提供多路電壓源,還直接影響到系統的技術指標和抗干擾性能。要想得到我們所要的+5V輸出電壓,就需將交流220V的電壓經過二極體全波整流、電容濾波、7805穩壓輸出穩定的5V直流電壓為整個電路提供電源。
圖3.1 電源電路圖
4個IN4004組成橋式整流電路,電容(104uf)用於濾波,LM7805將經過整流濾波的電壓穩定在5V輸出。
3.2 晶體振盪器
51系列單片機內部有一個時鍾電路(其核心時一個反相放大器),但並沒有形成時鍾的振盪信號,因此必須外接諧振器才能形成振盪。如何用這個內部放大器,可以根據不同的場合做出不同的選擇。這樣就對應了單片機時鍾產生的不同方式:若採用這個放大器,產生振盪即為內部方式;若採用外部振盪輸入,即為外部方式。
方案一、內部方式
如果在51單片機的XTAL1和XTAL2引腳之間外接晶體諧振器,便會產生自激振盪,即可在內部產生與外加晶體同頻率的振盪時鍾。
最常見的內部方式振盪圖如圖3.2所示。
圖3.2 晶體振盪電路
不同單片機最高工作頻率不一樣,如AT89C51的最高工作頻率為24MHZ,AT89S51的最高工作頻率可達33MHZ。由於製造工藝的改進,現在單片機的工作頻率范圍正向兩端延伸,可達40MHZ以上。振盪頻率越高表示單片機運行的速度越快,但同時對存儲器的速度和印刷電路板的要求也就越高。頻率太高有時反而會導致程序不好編寫(如延時程序)。一般來說,不建議使用很高頻率的晶體振盪器。51系列的單片機應用系統一般都選用頻率為6~12MHZ的晶振。
這個電路對C1、C2的值沒有嚴格的要求,但電容的大小多少會影響振盪器的穩定性、振盪器頻率的高低、起振的快速性等。一般外接晶體時,C1、C2的值通常選為20~100PF。
晶體振盪器是數字鍾的核心。振盪器的穩定度和頻率的精確度決定了數字鍾計時的准確程度,通常採用石英晶體構成振盪器電路。一般說來,振盪器的頻率越高,計時的精度也就越高。在此設計中,信號源提供1HZ秒脈沖,它是採用晶體分頻得到的。AT89S52單片機有一個用於構成內部振盪器的反相放大器,XTAL1和XTAL2分別是放大器的輸入、輸出端。石英晶體和陶瓷諧振器都可以用來一起構成自激振盪器。從外部時鍾源驅動器件,XTAL2可以不接,而從XTAL1接入,由於外部時鍾信號經過二分頻觸發後作為外部時鍾電路輸入的,所以對外部時鍾信號的占空比沒有其它要求,最長低電平持續時間和最少高電平持續時間等還是要符合要求的。反相放大器的輸入端為XTAL1,輸出端為XTAL2,兩端連接石英晶體及兩個電容形成穩定的自激振盪器。電容通常取30PF左右。振盪頻率范圍是1.2~12MHz。
晶體振盪器的振盪信號從XTAL2端輸出到片內的時鍾發生器上。時鍾發生器為二分頻器。向CPU提供兩相時鍾信號P1和P2。每個時鍾周期有兩個節拍(相)P1和P2,CPU就以兩相時鍾P1和P2為基本節拍指揮AT89S52單片機各部件協調工作。在本次設計中取石英晶體的振盪頻率為11.0592MHz。
另外在設計電路板時,晶振、電容等均應盡量靠近單片機晶元,以減小分布電容,進一步保證振盪器的穩定性。
方案二、外部方式
在較大規模的應用系統中可能會用到多個單片機,為保證各單片機之間時鍾信號的同步,應當引入唯一的公用外部脈沖信號作為各單片機的共同的振盪脈沖,也就是要採用外部方式,外部振盪信號直接引入XTAL1和XTAL2引腳。
由於HMOS、CHMOS單片機內部時鍾進入的引腳不同,因此外部振盪信號的接入方式也不一樣。所以不選用此方案。
3.3 校時電路
當數字鍾走時出現誤差時,需要校正時間。校時控制電路實現對「秒」、「分」、「時」的校準。其電路圖如圖3.3所示:
圖3.3 校時電路
3.4 解碼顯示電路
解碼電路的功能是將「秒」、「分」、「時」 計數器中每個計數器的輸出狀態(8421碼),翻譯成七段(或八段)數碼管能顯示十進制數所要求的電信號,然後再經數碼管把相應的數字顯示出來。解碼器採用74LS248解碼/驅動器。顯示器採用七段共陰極數碼管。顯示部分是整個電子時鍾最為重要的部分,共需要6位LED顯示器。採用動態顯示方式,所謂動態顯示方式是時間數字在LED上一個一個逐個顯示,它是通過位選端控制在哪個LED上顯示數字,由於這些LED數字顯示之間的時間非常的短,使的人眼看來它們是一起顯示時間數字的,並且動態顯示方式所用的介面少,節省了CPU的管腳。由於埠的問題以及動態顯示方式的優越性,在此設計的連接方式上採用共陰級接法。顯示器LED有段選和位選兩個埠,首先說段選端,它由LED八個埠構成,通過對這八個埠輸入的不同的二進制數據使得它的時間顯示也不同,從而可以得到我們所要的時間顯示和溫度。但對於二十個管腳的AT89S52來說,LED八個段選管腳太多,於是我選用2764晶元來擴展主晶元的管腳,74LS164是數據移位寄存器,還選用了74LS373作為數據緩存器。
選用器件時應注意解碼器和顯示器的匹配,包括兩個方面:一是功率匹配,即驅動功率要足夠大。因為數碼管工作電流較大,應選用驅動電流較大的解碼器或OC輸出解碼器。二是邏輯電平匹配。例如,共陰極型的LED數碼管採用高電平有效的解碼器。推薦使用的顯示解碼器有74LS48、74LS49、CC4511。
3.5 顯示電路結構及原理
(1)單片機中通常用七段LED構成 「8」 字型結構,另外,還有一個小數點發光二極體以顯示小數位!這種顯示器有共陰和共陽兩種!發光二極體的陽極連在一起的(公共端)稱為共陽極顯示器,陰極連在一起的稱為共陰極顯示器。
一位顯示器由8個發光二極體組成,其中,7個發光二極體構成字型「8」的各個筆劃,另一個發光二極體為小數點為。當在某段發光二極體上施加一定的正向電壓時,該段筆畫即亮;不加電壓則暗。為了保護各段LED不被損壞,需外加限流電阻。
在本設計中時、分、秒的十位採用七段顯示,個位採用八段顯示,使得更易於區分時、分、秒。
(2)LED顯示器介面及顯示方式
LED顯示器有靜態顯示方式和動態顯示方式兩種。靜態顯示就是當顯示器顯示某個字元時,相應的段恆定的導通或截止,直到顯示另一個字元為止。LED顯示器工作於靜態顯示方式時,各位的共陰極接地;若為共陽極則接+5V電源。每位的段選線分別與一個8位鎖存器的輸出口相連,顯示器中的各位相互獨立,而且各位的顯示字元一經確定,相應鎖存的輸出將維持不變。
正因為如此,靜態顯示器的亮度較高。這種顯示方式編程容易,管理也較簡單,但佔用I/O口線資源較多。因此,在顯示位數較多的情況下,一般都採用動態顯示方式。
由於所有6位段皆由一個I/O口控制,因此,在每一瞬間,6位LED會顯示相同的字元。要想每位顯示不同的字元,就必須採用掃描方法流點亮各位LED,即在每一瞬間只使某一位顯示字元。在此瞬間,段選控制I/O口輸出相應字元段選碼(字型碼),而位選則控制I/O口在該顯示位送入選通電平(因為LED為共陰,故應送低電平),以保證該位顯示相應字元。如此輪流,使每位分時顯示該位應顯示字元。
在多位LED顯示時,為了簡化電路,降低成本,將所有位的段選線並聯在一起,由一個8位I/O口控制。而共陰(共陽)極公共端分別由相應的I/O口線控制,實現各位的分時選通。
段選碼,位選碼每送入一次後延時2MS,因人的視覺暫留效應,給人看上去每個數碼管總在亮。
圖3.4 六位LED動態顯示電路
3.6 鍵盤部分
它是整個系統中最簡單的部分,根據功能要求,本系統共需三個按鍵:分別對時、分、秒進行控制。並採用獨立式按鍵。
按鍵按照結構原理可分為兩類,一類是觸點式開關按鍵,如機械式開關、導電橡膠式開關等;另一類是無觸點式開關按鍵,如電氣式按鍵,磁感應按鍵等。前者造價低後者壽命長。目前,微機系統中最常見的是觸點式開關按鍵。
按鍵按照介面原理可分為編碼鍵盤與非編碼鍵盤兩類,這兩類鍵盤的主要區別是識別鍵符及給出相應鍵碼的方法。編碼鍵盤主要是用硬體來實現對鍵的識別,非編碼鍵盤主要是由軟體來實現鍵盤的定義與識別。
全編碼鍵盤能夠由硬體邏輯自動提供與鍵對應的編碼,此外,一般還具有去抖動和多鍵、竄鍵保護電路。這種鍵盤使用方便,但需要較多的硬體,價格較貴,一般的單片機應用系統較少採用。非編碼鍵盤只簡單地提供行和列的矩陣,其它工作均由軟體完成。由於其經濟實用,較多地應用於單片機系統中。在本套設計中由於只需要幾個功能鍵,此時,可採用獨立式按鍵結構。
獨立式按鍵是直接用I/O口線構成的單個按鍵電路,其特點是每個按鍵單獨佔用一根I/O口線,每個按鍵的工作不會影響其它I/O口線的狀態。獨立式按鍵的典型應用如圖3.5 所示。
獨立式按鍵電路配置靈活,軟體結構簡單,但每個按鍵必須佔用一根I/O口線,因此,在按鍵較多時,I/O口線浪費較大,不宜採用。
圖3.5 獨立式按鍵結構圖
3.7 復位電路
復位時使CPU和系統中的其他功能部件都處於一個確定的初始狀態,復位後計算機就從這個狀態開始工作。在復位期間,CPU並沒有開始執行程序,是在做准備工作。
無論時在計算機剛上電時、斷電後、還是系統出現故障時都需要復位。
51單片機的復位條件靠外部電路實現。當時鍾電路工作時,只要在單片機的RESET引腳上持續出現2個TP以上的高電平就可以使單片機復位。但時間過短往往使復位部可靠。為了確保復位,RESET引腳上的高電平一般要維持大約10ms以上。
常見的復位電路有上電復位和按鍵復位電路。在此我們選用按鍵復位電路。
(1)上電復位電路
上電復位電路是利用電容充電來實現的。在接通電源的瞬間,RESET端的電位與VCC相同,都是+5V。隨著RC電路的充電,RESET的電位逐漸下降,只要保證RESET為高電平的時間大於10ms就能正常復位了。如圖3.6(1)所示。
圖3.6(1)上電復位電路
(2)按鍵復位電路
在單片機已經通電的情況下,只需要按下圖3.6(2)的K鍵也可以復位,此時VCC經過電阻Rs、Rk分壓,在RESET端產生一個復位高電平。
在圖3.6(2)的電路中,干擾容易竄入復位端,雖然在大多數情況下不會造成單片機的錯誤復位,但可能會引起內部某些寄存器的錯誤復位。這時可在RESET端接上一個去耦電容。
另外有些單片機應用系統中的外圍晶元也需要復位,如果這些復位端的復位電平要求和單片機的復位要求一致,則可以直接與之相連。常將RC電路接施密特電路後再接入單片機的復位端。這樣系統可以有多個復位端,以便保證外部晶元和單片機可靠地同步復位。
圖3.6(2) 按鍵復位電路
4 軟體設計
4.1 程序流程
程序整體設計:定時模塊,顯示模塊,時間調整模塊,狀態調整模塊。
(1)總體介紹:此部分主要介紹定時模塊,和顯示模塊。定時部分採用經典的定時器定時。它實現了數字鍾的主要部分和秒錶的主要部分,以及進行定時設置。顯示模塊是實現數字鍾的又一重要部分,其模塊的獨立程度直接影響到數字鍾的可視化程度。在此部分的設計中,設置專用顯示數據緩沖區,與分、時及其他數據緩沖區數據區別,在其中存放的是顯示段碼,而其他緩沖區存放的是時間數據。在顯示時,首先將時間十進制數據轉化為顯示段碼,然後送往數碼管顯示。顯示段碼採用動態掃描的方式。在要求改變顯示數據的類別時,只須改變指向數據緩沖區的指針所指向的十進制數據緩沖區即可。
(2)時間調整:時間調整有多種方式。一、可以直接進入相關狀態進行有關操作,二、將調整分兩步,先進入狀態,然後執行操作,這兩步分別由兩個鍵控制。方式一,比較直接,設計思想也比較簡單,但是,這種方式存在操作時間和控制鍵數目的矛盾。如果用比較少的鍵,那麼可能會在進入狀態後處於數據調整等待狀態,這樣會影響到顯示的掃描速度(顯示部分可以採用8279晶元來控制,可以解決此問題)。 當然在這種方式下,還可以使用多個狀態鍵,每個狀態鍵,完成一個對應數據的調整。如果採用二的方式,就不會出現這種情況。因為狀態的調整,與狀態的操作可以分別由兩個鍵控制,其狀態的調整數可以多達256個(理論上),操作的完成是這樣的,一鍵控制狀態的調整,一鍵控制數據的調整。以上兩種方式的實現都可以採用查詢和中斷的方式。兩種方式必須注意的問題是兩者進行相關操作的過程不能太長否則會影響顯示的掃描。利用查詢的方式,方法傳統,對此就不作過多的討論,以下是採用中斷的方式實現的數字鍾的一些討論和有關問題作的一些處理。基於以上的討論可以設計如下:將調整分為狀態調整和數據調整兩部分,每次進入中斷只執行一次操作,然後返回,這樣,就不必讓中斷處於調整等待狀態,這樣,可以使中斷的耗時很小。將定時器中斷的優先順序設置為最高級,那麼中斷的方式和查詢的方式一樣不會影響到時鍾的記數。
(3)中斷方式應注意的問題:
採用中斷的方式,最好將定時器中斷的優先順序設置為最高級,關於程序數據的穩定性應注意兩個問題:一、在低優先順序中斷響應時,應在入棧保護數據時禁止高優先順序的中斷響應。二、在入棧保護有關數據後,對中斷程序執行有影響的狀態位,寄存器,必須恢復為復位狀態的值。例如,在用到了十進制調整時,在中斷進入時,需將PSW中的AC,CY位清零,否則,十進制調整出錯。
(4)定時准確性的討論:
程序中定時器,一直處於運行狀態,也就是說定時器是理想運作的,其中斷程序每隔0.1秒執行一次,在理想狀態下,定時器定時是沒有系統誤差的,但由於定時器中斷溢出後,定時器從0開始計數,直到被重新置數,才開始正確定時,這樣中斷溢出到中斷響應到定時器被重新置數,其間消耗的時間就造成了定時器定時的誤差。如果在前述定時器不關的情況下,在中斷程序的一開始就給定時器置數,此時誤差最小,誤差大約為:每0.1秒,誤差7—12個機器周期。當然這是在定時器定時剛好為0.1秒時的情況,由以上分析,如果數字鍾設計為查詢的方式或是在中斷的方式下將定時器中斷設置為最高級,我們在定時值設置時,可以適當的扣除9個機器周期的時間值。但如果在中斷的情況下,沒有將定時器中斷設置為最高級,那就要視中斷程序的大小,在定時值設置時,扣除相應的時間值。
(5)軟體消抖:
消抖可以採用硬體(施密特觸發器)的方式如圖4.4所示,也可以採用軟體的方式。在此只討論軟體方式。軟體消抖有定時器定時,和利用延時子程序的方式。一,定時器定時消抖可以不影響顯示模塊掃描速度,其實現方法是:設置標志位,在定時器中斷中將其置位,然後在程序中查詢。將其中斷優先順序設置為低於時鍾定時中斷,那麼它就可以完全不影響時鍾定時。二,在採用延時子程序時,如果顯示模塊的掃描速度本來就不是很快,此時可能會影響到顯示的效果,一般情況下,每秒的掃描次數不應小於50次,否則,數碼的顯示會出現閃爍的情況。因此,延時子程序的延時時間應該小於20毫秒,如果採用定時器定時的方式,延時時間不影響時鍾。
如果,設計時採用的是中斷的方式來完成有關操作,同樣可以採用軟體的方式來消抖,其處理思想是:中斷不能連續執行,兩次之間有一定的時間間隔。
4.1.1 系統主程序流程圖
圖4.1 主程序流程圖
4.1.2 各子程序流程圖
圖4.2 時鍾調整子程序流程圖
希望可以幫到你.!
7. 單片機的作用是什麼
單片機是指一個集成在一塊晶元上的完整計算機系統。盡管他的大部分功能集成在一塊小晶元上,但是它具有一個完整計算機所需要的大部分部件:CPU、內存、內部和外部匯流排系統,目前大部分還會具有外存。同時集成諸如通訊介面、定時器,實時時鍾等外圍設備。而現在最強大的單片機系統甚至可以將聲音、圖像、網路、復雜的輸入輸出系統集成在一塊晶元上。
單片機也被稱為微控制器(Microcontroler),是因為它最早被用在工業控制領域。單片機由晶元內僅有CPU的專用處理器發展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個晶元中,使計算機系統更小,更容易集成進復雜的而對提及要求嚴格的控制設備當中。INTEL的Z80是最早按照這種思想設計出的處理器,從此以後,單片機和專用處理器的發展便分道揚鑣。
早期的單片機都是8位或4位的。其中最成功的是INTEL的8031,因為簡單可靠而性能不錯獲得了很大的好評。此後在8031上發展出了MCS51系列單片機系統。基於這一系統的單片機系統直到現在還在廣泛使用。隨著工業控制領域要求的提高,開始出現了16位單片機,但因為性價比不理想並未得到很廣泛的應用。90年代後隨著消費電子產品大發展,單片機技術得到了巨大的提高。隨著INTEL
i960系列特別是後來的ARM系列的廣泛應用,32位單片機迅速取代16位單片機的高端地位,並且進入主流市場。而傳統的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數百倍。目前,高端的32位單片機主頻已經超過300MHz,性能直追90年代中期的專用處理器,而普通的型號出廠價格跌落至1美元,最高端的型號也只有10美元。當代單片機系統已經不再只在裸機環境下開發和使用,大量專用的嵌入式操作系統被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單片機甚至可以直接使用專用的Windows和Linux操作系統。
單片機比專用處理器最適合應用於嵌入式系統,因此它得到了最多的應用。事實上單片機是世界上數量最多的計算機。現代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及滑鼠等電腦配件中都配有1-2部單片機。而個人電腦中也會有為數不少的單片機在工作。汽車上一般配備40多部單片機,復雜的工業控制系統上甚至可能有數百台單片機在同時工作!單片機的數量不僅遠超過PC機和其他計算的綜合,甚至比人類的數量還要多。
8. 用單片機原理解釋手機發燙的原因
隨著各種硬體的處理能力及用戶超負荷的使用,手機發熱發燙要想完全是根本不可能的。那麼下面來就一起來看看手機發熱發燙是哪些原因造成的。
1.信號強度原因
手機信號輕度是無法人為控制的,比如手機號強度為-75dBm時,信號強度就變得很差,為了保證正常的手機通信,手機會自動加大發射功率,手機功率大,手機發熱也越大,所以也是最常見也是不可避免的原因。
2.超負荷使用
多個後台應用程序一起運行,導致CPU超載,從而產生的電流熱效應可想而知,而且主題,背景,屏保這都是用電大用戶,導致手機發熱。特別是導航、游戲、視頻運行的情況,這些程序運行的時候會開啟gps導航、藍牙、wifi或熱點等,非常容易造成發熱嚴重。
3.網路數據影響
當用戶使用手機上網,數據傳輸多的時候,電量消耗的就越大,CPU使用率也會增大,發熱量就大。
4.長時間使用
手機在長時間通話或使用音頻和視頻時的功耗是很大的,也就是說它的電池的等效負荷電阻小,工作時是大電流放電。電池在放掉一部分電以後,內阻增大,但是,手機的工作需要的電流不能減小,那麼,相當大的一部分能量就消耗在電池的內阻上,導致電池發熱。
5.非正常充電
使用非原裝的充電器充電,導致手機發熱,這樣的充電器缺少保護電路,不能保證充電時電流的穩定,而且容易燒壞電池、縮短電池使用壽命,甚至有爆炸的危險。
6.邊充點邊玩
一邊充電一邊完手機可能是現代人的一個常態,電池充電時本身就會出現發熱的現象,然而像打電話、玩游戲之類的會加重發熱的情況發生,如果再是大夏天的情況,手機還額外的帶個套,手機燙手是非常簡單的事情,所以子凡的手機一般都是赤果果的。
簡單總結
以上幾點是最容易引起手機發熱發燙的一些原因,其實手機本身的硬體和電池故障都是會造成手機發熱,同樣有些人握手機的姿勢過於保守也是有一定原因的,不過這方面的發熱基本還是能夠接受的吧。
既然手機的發熱發燙是不可避免的,然而最簡單最直接的避免方式就減少使用,當然啦,子凡作為一個對游戲一點也不感冒,以及電腦使用比手機的時長更多,發熱基本是不存在的