freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于單片機c51的萬年歷設計課程設計-wenkub

2023-07-10 13:58:53 本頁面
 

【正文】 位電路,來構成單片機的最小電路。方案二:采用動態(tài)顯示方法,動態(tài)顯示模塊的硬件制作簡單,段掃描和位掃描各占用一個端口,總需占用單片機14個端口,采用間斷掃描法功耗小、硬件成本低及整個硬件系統(tǒng)體積相對減小。但是對于80C52單片機來說,低位地址線要通過鎖存器輸出,還要地址譯碼器,而且并行口芯片的體積相對較大,會占用較多的空間。如:利用AT80C52芯片,定時器用工作方式1,每50ms產(chǎn)生一個中斷,循環(huán)20次,即1s周期。方案二: 矩陣鍵盤:使用16按鍵對時分秒直接設置,能最為靈活的對數(shù)字鐘進行設置,功能強大,但控制方式相對困難,成本較高,需要較多按鍵與I/O口。 本文提出了一種基于AT89S52單片機的萬年歷設計方案,利采用一個LCD顯示。萬年歷目前已經(jīng)不再局限于以書本形式出現(xiàn)。 關鍵詞:單片機;液晶顯示屏;溫度傳感器;時鐘芯片 目 錄1. 設計背景 1 概述 1 萬年歷設計目的 1 2 按鍵控制模塊設計與論證 2 時鐘模塊設計與論證 2 顯示模塊模塊設計與論證 33. 方案實施 4 4 4 單片機最小系統(tǒng)模塊 4 電源模塊 5 時鐘芯片DS1302模塊 6 6 鬧鐘模塊 7 LCD1602顯示模塊 8 按鍵模塊 9 軟件設計 9 系統(tǒng)仿真 10 114. 結果與結論 12 結果 12 結論 125. 收獲與致謝 136. 參考文獻 147. 附件 15 原理圖 15: 15 元器件清單 15 實物圖 16 正常工作 16 調試狀態(tài) 17 鬧鐘設置狀態(tài) 18 1. 設計背景 概述如今萬年歷已經(jīng)在人們生活中廣泛的使用,它不僅是記錄日期和時間的工具,而且也成為了一種裝飾品。任務下達日期:2013 年 5 月 6 日任務完成日期:2013 年 5 月17 日指導教師(簽名): 學生(簽名):萬年歷設計 摘 要: 以AT89S52為主控芯片設計了一個帶溫度顯示的萬年歷電路系統(tǒng),該電路具有年、月、日、星期、時、分、秒、鬧鐘顯示和調整,并且還能顯示溫度和按鍵提示音、整點鳴叫、定時鬧鐘鳴叫等功能。學生應完成的工作: 根據(jù)萬年歷的工作原理,利用軟件繪制電路原理圖,利用軟件編寫C語言程序并且生成HEX文件,并利用軟件進行電路仿真和調試。并設計制作電路的PCB板(或萬用板的元件布局和連線),該生應完成硬件部分的設計。本設計由數(shù)據(jù)顯示模塊、溫度采集模塊、時間處理模塊和調整設置模塊四個模塊組成?,F(xiàn)在的萬年歷可以說是多種多樣,外觀精美。以電腦軟件或者電子產(chǎn)品形式出現(xiàn)的萬年歷被稱為電子萬年歷。本方案以AT89S52單片機作為主控核心,與時鐘芯片DS130溫度芯片DS18B鬧鐘模塊、按鍵、LCD顯示等模塊組成硬件系統(tǒng)。方案三: 換位調整:使用4按鍵,1設置鬧鐘,1鍵設置調整時間,1鍵調整,1鍵確定,此種控制方式相對簡單,占用I/O口少,成本低廉,但功能一般。每一個周期加1,那么1min為60個周期,1h就是60*60=3600個周期,一天就是3600*24=86400個周期。方案三:串行接口時鐘芯片DS1302芯片主特性:(1) 實時時鐘具有能計算2100 年之前的秒分時日日期星期月年的能力,還有閏年調整的能力 (2) 8 位暫存數(shù)據(jù)存儲RAM(3)串行 I/O 口方式使得管腳數(shù)量最少(4)~(5)工作電流 時,小于300nA(6)讀/寫時鐘或RAM 數(shù)據(jù)時有兩種傳送方式單字節(jié)傳送和多字節(jié)傳送字符組方式(7)8 腳DIP 封裝或可選的8 腳SOIC 封裝根據(jù)表面裝配(8)簡單 3 線接口(9)與 TTL 兼容V cc=5V(10)可選工業(yè)級溫度范圍40~+85優(yōu)點:串行接口的日歷時鐘芯片,使用簡單,接口容易,與微型計算機連線較少等特點,在單片機系統(tǒng)尤其是手持式信息設備中己得到了廣泛的應用。方案三:采用LCD的方法,具有硬件制作簡單可直接與單片機接口,顯示內容多,功耗小,成本低等優(yōu)點,LCM1602可顯示32個字符,采用LCD的缺點是亮度不夠。復位是單片機的初始化操作,單片機在啟動運行時,都需要先復位,其作用是使CPU和系統(tǒng)中其他部件都處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。 2)按鍵手動復位是通過使復位端經(jīng)電阻與VCC接通而實現(xiàn)的。然后經(jīng)過濾波電容和微調電容后變成直流電,再經(jīng)過L7805三端穩(wěn)壓器輸出5V直流電。VCC1在單電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。當VCC2小于VCC1時,DS1302由VCC1供電。位0是讀/寫操作位,進行讀操作時,該位為1;進行寫操作時,該位為0。當“WP”為1時,寫保護位防止對任一寄存器的寫操作。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。 鬧鐘模塊 : 鬧鐘電路 我們采用的有源蜂鳴器,由于單片機的輸出電流較小所以我們采用PNP形的三極管作為驅動電路,來驅動蜂鳴器發(fā)聲,當單片機給低電平時蜂鳴器響。第3腳:V0為液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高。第7~14腳:D0~D7為8位雙向數(shù)據(jù)端。 按鍵模塊 : 按鍵電路本系統(tǒng)用到了5個按鍵,其中一個用作系統(tǒng)手動復位,另外4個采用獨立按鍵,該種接法查詢簡單,程序處理簡單,可節(jié)省CPU資源,、。2) 當SET鍵未按下時,UP關閉鬧鐘。焊接完成后,然后進行測試,發(fā)現(xiàn)LCD1602無法正常顯示,經(jīng)檢查發(fā)現(xiàn)存在虛焊,然后加以修改后,顯示屏可以顯示數(shù)字,最終顯示功能:(1)能顯示年、月、日、星期、小時、分、秒 、溫度。在整個設計過程中,硬件方面主要設計了AT89S52單片機的最小系統(tǒng)、DS1302接口電路、DS18B20接口電路、鬧鐘及LCD顯示;軟件方面借助各個渠道的資料,主要設計了陽歷數(shù)據(jù)讀取程序、溫度采集程序、鬧鈴程序以及LCD顯示程序;系統(tǒng)的調試主要是通過一塊AT89S52開發(fā)板,再借助于Kiel、STC以及少許自己搭建的外圍電路實現(xiàn)的;再此過程中,分步調試時顯示出了陽歷的日期及時間,還有實時溫度,集中調試時沒有達到預期效果。從而認識到了自己的不足,使自己明白還多東西還需加強學習,彌補不足。本次課程設計是一個要求動手能力很強的設計,而且也是一個有嚴謹?shù)膽B(tài)度才能完成的設計,它要求我必須一絲不茍,這在很大程度上考驗了我的耐心。 //定義選數(shù)據(jù)寄存器選指令寄存器控制端sbit sda=P1^1。 //定義設置按鈕sbit s2=P3^1。 //定義DS18B20通信端口sbit ACC0=ACC^0。uchar code table[]={ 2013 }。 //字庫中的字可直接以外加號的形式直接寫入uchar code table2[]={ Wan Nian Li !}。//*********************短暫延時********************************void delay0(uint z) { while(z)。x) for(y=110。 DQ = 1。 //精確延時 大于 480us DQ = 1。}//DS18B20讀一個字節(jié)uchar ReadOneChar(void){ unsigned char i=0。i){ DQ = 0。 delay0(4)。 i0。 delay0(5)。 unsigned char b=0。 WriteOneChar(0xCC)。 //跳過讀序號列號的操作 WriteOneChar(0xBE)。 t=8。 //對結果進行4舍5入 return(t)。i++) { BELL = 0。 }}/*****************向1602液晶中寫一個指令**************************************/void write_(uchar ){ lcdwr=0。 //由1602讀寫操作時序圖,先將指令賦給P0口,延時后將使能 lcden=1。 //與寫指令類似,這里lcdrs設為1 P0=date。 lcden=0。//設置LCD為16*2顯示、5*7點陣、8位數(shù)據(jù)接口模式 write_(0x0c)。}/*******************************************************************************/void gudingtime_1602(){ uchar num。num++) //循環(huán)函數(shù),用于將 2012 寫入液晶 write_data(table[num])。num++) //功能與上同,用于將 : : 寫入 write_data(table1[num])。num116。num116。 for(i=0。 for(i=0。Add為顯示位置,time為要顯示的內容{ uchar shiwei,gewei。 //定義顯示在液晶的什么位置 write_data(0x30+shiwei)。 shi=temp/100。 //定義顯示在液晶的什么位置 write_data(0x30+shi)。 // 不用重新光標寫位} /**************************顯示周子函數(shù)*****************************************/ void write_zhou(uchar time1)//用于在1602上顯示周信息,與顯示 { //時間日期子函數(shù)類似 uchar gewei。 }/***************************寫數(shù)據(jù)字節(jié)子函數(shù)************************************/void Input_1byte(uchar TD) //寫一字節(jié)數(shù)據(jù){ uchar i。i) { sda=ACC0。 }}/*************************讀數(shù)據(jù)字節(jié)子函數(shù)**************************************/uchar Output_1byte(void)//讀一字節(jié)數(shù)據(jù){ uchar i。 ACC7=sda。}/***************************寫DS1302數(shù)據(jù)函數(shù)***********************************/void write_1302(uchar DS_ADD,uchar DS_DAT)//寫操作{ rst=0。 Input_
點擊復制文檔內容
職業(yè)教育相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1