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

正文內(nèi)容

基于單片機的萬年歷的設(shè)計與制作(專業(yè)版)

2025-08-08 19:27上一頁面

下一頁面
  

【正文】 反而達到事半功倍的效果。最后經(jīng)過多次的模塊子程序的修改,一步一步的完成,最終解決了軟件問題。039。039。 TimeMonth = ((ReadValueamp。 TimeMinute = ((ReadValueamp。 //RST拉高,啟動數(shù)據(jù)傳送 DS1302_InputByte(Address|0x01)。 i) { DS1302_CLK = 0。 //DS1302是否寫入保護void DS1302_SetTime(unchar Address, unchar Value)。 //將DS18B20初始化 WriteOneChar(0xCC)。 // 先將數(shù)據(jù)線拉高 _nop_()。 //單片機從DS18B20讀書據(jù)時,將數(shù)據(jù)線從高拉低即啟動讀時序 _nop_()。 //以向DS18B20發(fā)出一持續(xù)480~960us的低電平復(fù)位脈沖 DQ = 1。 temp=8。 } else //否則產(chǎn)生一上升沿 { DS=0。 bit j。i++) delay1ms()。圖16. LCD1602內(nèi)部顯示地址例如第二行第一個字符的地址是40H,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。表7 DS18B20 ROM命令命令描述協(xié)議此命令發(fā)出后總線上的活動SEARCH ROM識別總線上掛著的所有DS18B20的ROMF0H所有DS18B20向主機傳送ROM碼READ ROM當(dāng)只有一個DS18B20掛在總線上時,可用此命令讀取ROM33HDS18B20向主機傳送ROM碼MATCH ROM主機用ROM碼來指定某一個DS18B20,只有匹配的DS18B20才會響應(yīng)55H主機向總線傳送一個ROM碼SKIP ROM用于指定總線上所有的器件CCHALARMSEARCH與SEARCH ROM命令相似,但只有溫度超過警報線的DS18B20才會響應(yīng)ECH超過警報線的DS18B20向主機傳送ROM碼表8 DS18B20 RAM功能命令命令描述協(xié)議此命令發(fā)出后總線上的活動Convert T開始溫度轉(zhuǎn)換44HDS18B20向主機傳送轉(zhuǎn)換狀態(tài)Read Scratchpad讀暫存器完整的數(shù)據(jù)BEHDS18B20向主機傳送總共9字節(jié)的數(shù)據(jù)Write Scratchpad向寄存器的3和4字節(jié)寫入數(shù)據(jù)(TH、TL和精度)4EH主機向DS18B20傳送3字節(jié)的數(shù)據(jù)Copy Scratchpad將TH、TL和配置寄存器的數(shù)據(jù)復(fù)制到EEPROM48HDS18B20向主機傳送調(diào)用狀態(tài)Recall E2將TH、TL和配置寄存器的數(shù)據(jù)從EEPROM中調(diào)到暫存器中B8HRead Power Supply向主機示意電源供電狀態(tài)B4HDS18B20向主機傳送供電狀態(tài) 按鍵處理模塊的設(shè)計系統(tǒng)按鍵部分原理圖如圖13所示。增加停止減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當(dāng)預(yù)置數(shù)值減到0時,溫度計數(shù)器的值將加1,然后減法計數(shù)器1的預(yù)置值重新被裝入且重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。8個時鐘/日歷寄存器從RAM寄存器0開始,依次由地址0~地址7順序讀/寫數(shù)據(jù)。如下圖9所示③DS1302的寄存器DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器及其控制字見表2。引腳2(DQ):數(shù)據(jù)輸入/輸出引腳,漏極開路單總線接口引腳。X1和X2是振蕩源。 ④XTAL1和XTAL2(18,19腳):XTAL1腳為片內(nèi)振蕩電路的輸入端, XTAL2腳為片內(nèi)振蕩電路的輸出端。 ①P0口 32~~。單片機的主要特點如下。 溫度傳感器的選擇方案和論證方案一:使用熱敏電阻作為傳感器,用熱敏電阻與一個相應(yīng)阻值電阻相串聯(lián)分壓,利用熱敏電阻阻值隨溫度變化而變化的特性,采集這兩個電阻變化的分壓值,并進行A/D轉(zhuǎn)換。電子萬年歷的出現(xiàn)給人們的生活帶來諸多方便。本設(shè)計是基于51系列的單片機進行的電子萬年歷設(shè)計,可以顯示年月日時分秒及周信息,具有可調(diào)整日期和時間功能。在設(shè)計的同時對單片機的理論基礎(chǔ)和外圍擴展知識進行了比較全面準(zhǔn)備。電子鐘是一種利用數(shù)字電路來顯示秒、分、時的計時裝置,與傳統(tǒng)的機械鐘相比,它具有計時準(zhǔn)確、顯示直觀等優(yōu)點,因而得到廣泛應(yīng)用。此設(shè)計方案需用A/D轉(zhuǎn)換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴(yán)格線性的,會產(chǎn)生較大的測量誤差。(1) 可靠性高 單片機的系統(tǒng)軟件都固化在ROM中,不易受病毒破壞。P0口為雙向8位三態(tài)I/O接口。 ⑤ (29腳):片外ROM選通線。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。當(dāng)工作于寄生電源時,也可以向器件提供電源。表4 DS1302的日歷、時間寄存器寫寄存 器讀寄存 器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit080H81HCH10秒秒82H83H10分分84H85H12/24010時時AM/PM86H87H0010日日88H89H00010月月8AH8BH00000星期8CH8DH10年年8EH8FHWP0000000普通時鐘寄存器(包括秒、分、時等七種寄存器)用于表示普通時鐘數(shù)據(jù)內(nèi)容,而其他三種寄存器用于只是CPU對DS1302進行狀態(tài)的控制或設(shè)置。當(dāng)命令字節(jié)為FE或FF時,DS1302工作在多字節(jié)連續(xù)傳送模式,31個RAM寄存器從0地址開始,連續(xù)讀/寫從0位開始的數(shù)據(jù)。斜率累加器則用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預(yù)置值;只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值達到被測溫度值。其中圖13示出的三個按鍵,由上向下分別第一位鍵鍵鍵3,對應(yīng)于系統(tǒng)的功能分別是:時鐘的模式選擇鍵、加鍵、減鍵。 在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時光標(biāo)是自動右移的,無需人工干預(yù)。 }void delay1(uchar count) //延時{ while(count0) count。 for(i=0。 _nop_()。 //因為18b20處理接受到的數(shù)據(jù)要進行處理,先將高八位左移4位 temp=temp|a。 //釋放數(shù)據(jù)線(將數(shù)據(jù)線拉高) for(time=0。 //等待一個機器周期 DQ = 1。 //等待一個機器周期 DQ=0。 // 跳過讀序號列號的操作 WriteOneChar(0x44)。//設(shè)置時間函數(shù)void DS1302_GetTime(SYSTEMTIME *Time)。 //下降沿讀出DS1302的數(shù)據(jù) ACC = 1。//讀取指定地址數(shù)據(jù)指令 Data = DS1302_OutputByte()。0x70)4)*10 + (ReadValueamp。0x70)4)*10 + (ReadValueamp。 TimeDateString[5] = 39。 TimeTimeString[4] = TimeMinute%10 + 39。在軟件的調(diào)試過程中主要遇到的問題如下:(1)燒入程序后,LCD液晶顯示溫度成亂碼。對電路的設(shè)計、布局要先有一個好的構(gòu)思,才顯得電路板美觀、大方。在電路焊接時雖然沒什么大問題,但從中也知道了焊接在整個作品中的重要性,電路工程量大,不能心急,一個個慢慢來不能急于求成。電子萬年歷功能很多,所以對于它的程序也較為復(fù)雜,因而在編寫程序和調(diào)試時出現(xiàn)了相對較多的問題。 TimeTimeString[3] = TimeMinute/10 + 39。 TimeDateString[4] = TimeMonth%10 + 39。 ReadValue = Read1302(DS1302_MONTH)。 ReadValue = Read1302(DS1302_MINUTE)。 DS1302_RST = 1。 i0。 //讀取DS1302指定地址中的數(shù)據(jù)void DS1302_SetProtect(bit Flag)。 //稍作延時,給硬件一點反應(yīng)時間}/*****************************************************函數(shù)功能:做好讀溫度的準(zhǔn)備***************************************************/ void ReadyReadTemp(void){ Init_DS18B20()。 i++) { DQ =1。 //等待一個機器周期 DQ = 0。time++) //略微延時約600微秒 。//讀高八位 temp=b。 _nop_()。 }uchar read_byte(void) //讀一字節(jié)的數(shù)據(jù){ uchar i,byte=0。in。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在,哪里顯示字符,圖16是LCD1602的內(nèi)部顯示地址。DS18B20要完成一個讀時序過程,至少需要60 s才能完成。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來確定,每次測量前,首先將55℃所對應(yīng)的一個計數(shù)分別置入減法計數(shù)器溫度寄存器,減法計數(shù)器1和溫度寄存器被預(yù)置在55℃所對應(yīng)的一個基數(shù)值。當(dāng)命令字節(jié)為BE或BF時,DS1302工作在多字節(jié)順序傳送模式。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。各引腳說明如下:引腳1(GND):地。當(dāng)Vcc2小于Vcc1時,DS1302由Vcc1供電。其第二功能是片內(nèi)EPROM編程/校驗時的電源線,在編程時,/Vpp腳需要加上21V的編程電壓。它們可以雙向使用。由于單片機的重要應(yīng)用領(lǐng)域為智能化電子產(chǎn)品,一般需要嵌入式儀器設(shè)備內(nèi),故又稱為嵌入式微控制器。方案三:采用DS1302時鐘芯片實現(xiàn)時鐘,DS1302芯片是一種高性能的時鐘芯片,可自動對秒、分、時、日、周、月、年以及閏年補償?shù)哪赀M行計數(shù),而且精度高,位的RAM做為數(shù)據(jù)暫存區(qū),~,.所以選用DS1302作為時鐘芯片。尤其是單片機技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進了千家萬戶。該電路采用AT89S52單片機作為核心,功耗小,能在3V的低壓工作,電壓可選用3~5V電壓供電。在硬件與軟件設(shè)計時,沒有良好的基礎(chǔ)知識和實踐經(jīng)驗會受到很大限制,每項功能實現(xiàn)時需要哪種硬件,程序該如何編寫,算法如何實現(xiàn)等,沒有一定的基礎(chǔ)就不可能很好的實現(xiàn)。隨著人們生活環(huán)境的不斷改善和美化,在很多場合可以看到數(shù)字電子鐘。方案二:采用數(shù)字式溫度傳感器DS18B20,此類傳感器為數(shù)字式傳感器而且僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,易于與單片機連接,可以去除A/D模塊,降低硬件成本,簡化系統(tǒng)電路。許多信號的通道均集成在一個芯片內(nèi),所以運行時系統(tǒng)穩(wěn)定可靠。它既可以作為通用I/O接口,又可以作為外部擴展時的數(shù)據(jù)總線及低8位地址總線的分時復(fù)用口。在執(zhí)行訪問片外ROM的指令MOVC時,8051自動在線上產(chǎn)生一個負脈沖,用于對片外ROM的選通。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。引腳3(Vcc):可選擇的外接供電電源輸入引腳??刂萍拇嫫魇怯糜诔绦虺跏歼\行時,將DS1302設(shè)置為讀或?qū)憼顟B(tài)而提供給用戶的。④時鐘芯片DS1302的工作原理DS1302在每次進行讀、寫程序前都必須初始化,先把SCLK端置 “0”,接著把端置“1”,最后才給予SCLK脈沖;讀/寫時序如下圖11所示。②DS18B20溫度測量值輸出原理DS18B20讀出的溫度結(jié)果數(shù)據(jù)為兩字節(jié),用16位符號擴展的二進制補碼讀數(shù)的形式提供。 顯示模塊的設(shè)計(1)模塊設(shè)計系統(tǒng)顯示部分原理圖如圖14所示。每次輸入指令前都要判斷液晶模塊是否處于忙的
點擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1