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

正文內(nèi)容

數(shù)碼管電子顯示屏自動化與單片機(jī)等專業(yè)畢業(yè)設(shè)計(jì)畢業(yè)論(編輯修改稿)

2025-07-11 10:48 本頁面
 

【文章內(nèi)容簡介】 接著把 RST 端置“ 1”,最后才給予 SCLK 脈沖;讀 /寫時序如下圖 4 所示。 表 1 為 數(shù)碼管電子顯示屏 10 05. 15 DS1302 的控制字,此控制字的位 7必須置 1,若為 0則不能把對 DS1302 進(jìn)行讀寫數(shù)據(jù)。對于位 6,若對程序進(jìn)行讀 /寫時 RAM=1,對時間進(jìn)行讀 /寫時, CK=0。位 1 至位 5指操作單 元的地址。位 0 是讀 /寫操作位,進(jìn)行讀操作時,該位為 1;該位為 0 則表示進(jìn)行的是寫操作??刂谱止?jié)總是從最低位開始輸入 /輸出的。 表2 為 DS1302 的日歷、時間寄存器內(nèi)容:“ CH”是時鐘暫停標(biāo)志位,當(dāng)該位為 1時,時鐘振蕩器停止, DS1302 處于低功耗狀態(tài);當(dāng)該位為 0 時,時鐘開始運(yùn)行。“ WP” 是寫保護(hù)位,在任何的對時鐘和 RAM 的寫操作之前, WP 必須為 0。當(dāng)“ WP”為 1時,寫保護(hù)位防止對任一寄存器的寫操作。 (2) DS1302 的控制字節(jié) DS1302 的控制字如表 1所示??刂谱止?jié)的高有效位(位 7)必須是邏輯 1,如果它為 0,則不能把數(shù)據(jù)寫入 DS1302 中,位 6如果 0,則表示存取日歷時鐘數(shù)據(jù),為 1 表示存取 RAM 數(shù)據(jù);位 5至位 1 指示操作單元的地址;最低有效位(位0)如為 0 表示要進(jìn)行寫操作,為 1 表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出 表 1 DS1302 的控制字格式 (3) 數(shù)據(jù)輸入輸出( I/O) 在控制指令字輸入后的下一個 SCLK 時鐘的上升沿時,數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從低位即位 0 開始。同樣,在緊跟 8 位的控制指令字后的下一個 SCLK脈沖的下降沿讀出 DS1302 的數(shù)據(jù),讀出數(shù)據(jù)時從低位 0 位到高位 7。如下圖 4所示 數(shù)碼管電子顯示屏 11 05. 15 圖 4 DS1302 讀 /寫時序圖 (4) DS1302 的寄存器 DS1302 有 12 個寄存器,其中有 7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式 ,其日歷、時間寄存器及其控制字見表 2。 表 2 DS1302 的日歷、時間寄存器 此外, DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與 RAM 相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次 性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302 與 RAM相關(guān)的寄存器分為兩類:一類是單個 RAM單元,共 31 個,每個單元組態(tài)為一個 8 位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM 的 31個字節(jié),命令控制字為 FEH(寫 )、 FFH(讀 )。 數(shù)碼管電子顯示屏 12 05. 15 顯示模塊的設(shè)計(jì) 如圖- 5所示,采用動態(tài)掃描顯示,由 1個 7SEGMPX4CC、 6個 7SEGMPX2CC和一個 7SEGMPX1CC數(shù)碼管、 74HC373 鎖存構(gòu)成 接 2K限流電阻 ,再接 9013 三極管接到共 陰 數(shù)碼管的 COM 端作為選通位碼 ,每位選擇相應(yīng)的列。 另一個 74HC373接 限流電阻 ,再接 并 行的 LED 數(shù)碼管的斷碼。 圖 5 LED 動態(tài)掃描顯示 數(shù)碼管電子顯示屏 13 05. 15 第四章 系統(tǒng)的軟件設(shè)計(jì) 軟件設(shè)計(jì)是本設(shè)計(jì)的關(guān)鍵,軟件程序編寫的好壞直接影響著系統(tǒng)運(yùn)行情況的良好。因本程序涉及的模塊較多,所以程序編寫也采用模塊化設(shè)計(jì), C語言具有編寫靈活、移植方便、便于模塊化設(shè)計(jì)的特點(diǎn),所以本系統(tǒng)的軟件采用 C51 編寫。 程序流程框圖 圖 A 主程序流程圖 開始 初始化 分離時間、日期、溫度 讀寫時間、日期、溫度 返回 顯示子程序 數(shù)碼管電子顯示屏 14 05. 15 圖 B 時間調(diào)整程序流程圖 數(shù)碼管電子顯示屏 15 05. 15 子程序的設(shè)計(jì) DS18B20 溫度子程序 Init_DS18B20(void) { DQ = 1。 delay(1)。 DQ = 0。 delay(60)。 DQ = 1。 delay(15)。 } //讀一個字節(jié) ReadOneChar(void) { unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 dat=1。 DQ = 1。 if(DQ) dat|=0x80。 delay(10)。 } return(dat)。 } //寫一個字節(jié) WriteOneChar(unsigned char dat) { unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 DQ = datamp。0x01。 delay(10)。 DQ = 1。 dat=1。 } } //讀取溫度 ReadTemperature(void) { unsigned char a=0。 unsigned char b=0。 unsigned int t=0。 float tt=0。 Init_DS18B20()。 數(shù)碼管電子顯示屏 16 05. 15 WriteOneChar(0xCC)。 WriteOneChar(0x44)。 Init_DS18B20()。 WriteOneChar(0xCC)。 WriteOneChar(0xBE)。 a=ReadOneChar()。 b=ReadOneChar()。 t=b。 t=8。 t=t|a。 tt=t*。 t= tt*10+。 return(t)。 } 讀、寫 DS1302 子程序 unsigned int temp。 //1302 寫入一字節(jié) void write_byte(uchar dat) { uchar a。 ACC=dat。 for(a=8。a0。a) { IO=ACC0。 SCLK=0。 //delayus(10)。 SCLK=1。 ACC=ACC1。 } } //向 1302 讀出一字節(jié) uchar read_byte() { uchar a。 for(a=8。a0。a) { ACC7=IO。 SCLK=1。 SCLK=0。 ACC=ACC1。 } return(ACC)。 } //向 1302 寫入數(shù)據(jù) void Write1302(uchar add,uchar dat) { 數(shù)碼管電子顯示屏 17 05. 15 RST=0。 SCLK=0。 //delayus(5)。 RST=1。 write_byte(add)。 //write_byte((dat)/10*16+(dat)%10)。 write_byte((dat/104)|(dat%10))。 //delayus(5)。 SCLK=1。 RST=0。 } //向 1302 讀出數(shù)據(jù) uchar Read1302(uchar add) { uchar temp,d,d1,d2。 RST=0。 SCLK=0。 //delayus(5)。 RST=1。 write_byte(add)。 temp=read_byte()。 //delayus(5)。 SCLK=1。 RST=0。 /* Decimal=temp4。 Decimal=Decimal*10+(tempamp。=0x0F)。 */ d1=temp/16。 d2=temp%16。 d=d1*10+d2。 return (d)。 } //初始化 DS1302 void Initial_DS1302(void) { Write1302(WRITE_PROTECT,0X80)。 Write1302(WRITE_SEC,0x56)。 //秒位初始化 Write1302(WRITE_MIN,0x34)。 //分鐘初始化 Write1302(WRITE_HOUR,0x12)。 //小時初始化 Write1302(WRITE_PROTECT,0x00)。 } 數(shù)碼管電子顯示屏 18 05. 15 第五章 系統(tǒng)的 硬件 設(shè)計(jì) 系統(tǒng)硬件電路設(shè)計(jì) 數(shù)碼管電子顯示屏 19 05. 15 系統(tǒng)硬件仿真運(yùn)行情況圖 顯示日期、時間、實(shí)時溫度 數(shù)碼管電子顯示屏 20 05. 15 第六章 測試分析 軟件測試 電子 萬 年歷是多功能的數(shù)字型 時鐘 ,可以看當(dāng)前日期 、 時間,還有溫度的儀器。電子 萬 年歷功能很多,所以對于它的程序也較為復(fù)雜 ,所以在編寫程序和調(diào)試時出現(xiàn)了相對較多的問題。最后經(jīng)過多次的模塊子程序的修改,一步一步的完成,最終解決了軟件。在軟件的調(diào)試過程中主要遇到的問題如下: 1.燒入程序后, LED 數(shù)碼管顯示閃動 ,而且亮度不均勻。 解決:首先對調(diào)用的延時進(jìn)行逐漸修改,可以解決顯示閃動問題。其次,由于本作品使作動態(tài)掃描方式顯示的數(shù)字,動態(tài)掃描很快,人的肉眼是無法看出 ,但 是調(diào)用的顯示程序時,如果不在返回 時屏蔽掉最后的附值,則會出現(xiàn)很亮的現(xiàn)象,所以在顯示的后面加了屏蔽子令,最后解決了此問題。 入溫度的程序后,進(jìn)行修改時間、日期時相應(yīng)的數(shù)碼管位沒有按要求閃動。 解決:由于 DS18B20 是串行通信數(shù)據(jù),只用一個口線傳輸,在處理采集的模擬信號時需要一定的時間,當(dāng)把萬年歷的程序相接入時,會對延時有很大的影響。所以在調(diào)用溫度子程序時,先關(guān)閉定時器 1中斷允許,在溫度子程序 返回 時再打開定時器 1中斷允許。最終解決了此問題。 測試結(jié)論 經(jīng)過多次的反復(fù)測試 仿真 與分析 ,可以對電路 的原理及功能更加熟悉 ,同時提高了設(shè)計(jì)能力與及對電路的分析能力 .同時在軟件的編程方面得到更到的提高 ,對編程能力得到加強(qiáng) .同時對所學(xué)的知識得到很大的提高與鞏固 . 數(shù)碼管電子顯示屏 21 05. 15 結(jié)論 通過本次畢業(yè)設(shè)計(jì) 我不僅加深了對單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會了如何去培養(yǎng) 創(chuàng)新精神, 從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新可以是在原有的基礎(chǔ)上進(jìn)行改進(jìn),使之功能不斷完善,成為真己的東西。 在課題 選擇和設(shè)計(jì)電路的過程中,加強(qiáng)了我思考問題的完整性和實(shí)際生活聯(lián)系的可行性。在方案設(shè)計(jì)選擇和芯片的選擇上,培養(yǎng)了我們綜合應(yīng)用單 片機(jī)的能力 ,對單片機(jī)的各個管腳的功能也有了進(jìn)一步的認(rèn)識。還鍛煉我們個人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。并且我們熟練掌握了有關(guān)器件的性能及測試方法。 在整個設(shè)計(jì)過程中,分 期分時工作,充分發(fā)揮我 的主觀能動性,自主學(xué)習(xí),學(xué)到了許多 課本上 沒 有 學(xué)到的知識。較好的完成了作品。達(dá)到了預(yù)期的目的,在最初的設(shè)計(jì)中,發(fā)揮“三個臭皮匠,頂個諸葛亮”的作用。相互學(xué)習(xí)、相互討論、研究。完 了最初的設(shè)想。對電路的設(shè)計(jì)、布局要先有一個好的構(gòu)思,才顯得電路版圖 美觀、大方。程序編寫中,由于思路不清晰,開始時遇到了很多 的問題,經(jīng)過靜下心來思考,和同 學(xué) 的討論, 通過老師的
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1