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

正文內(nèi)容

基于單片機(jī)at89s52的電子實(shí)時(shí)時(shí)鐘萬(wàn)年歷系統(tǒng)-資料下載頁(yè)

2025-10-13 13:30本頁(yè)面

【導(dǎo)讀】顯示準(zhǔn)確的北京時(shí)間,可用24小時(shí)制式;隨時(shí)可以調(diào)校時(shí)間。增加公歷日期顯示功能,年號(hào)只顯示最后兩位;隨時(shí)可以調(diào)校年、月、日;允許通過(guò)轉(zhuǎn)換功能鍵轉(zhuǎn)換顯示時(shí)間或日期。所有按鍵需要通過(guò)串口自發(fā)自收來(lái)調(diào)校各種功能。本系統(tǒng)是基于單片機(jī)AT89S52制作的數(shù)字電子鐘。根據(jù)實(shí)驗(yàn)要求,在完成。實(shí)驗(yàn)所要求的基本功能外,擴(kuò)展了幾個(gè)功能??烧{(diào)整日期或時(shí)間以及鬧鐘時(shí)間;程序采用匯編語(yǔ)言編寫(xiě),使自己更加理解硬件語(yǔ)言以及其工作原理。、采用6位LED數(shù)碼管顯示日期或者時(shí)間。CD4511);也可采用“動(dòng)態(tài)掃描驅(qū)動(dòng)”,但后者比前者所需驅(qū)動(dòng)電流要大。、鍵盤(pán)的按鍵數(shù)目較多時(shí)則采用行列式矩陣結(jié)構(gòu)為好。思和設(shè)計(jì)能大為減少按鍵的數(shù)目。的整除數(shù),且長(zhǎng)短適宜。最長(zhǎng)不能超過(guò)16位定時(shí)器的最長(zhǎng)定時(shí)時(shí)間;最短不。能少于中斷服務(wù)程序的執(zhí)行時(shí)間。能力和LED數(shù)碼管極限功耗的制約。會(huì)造成顯示字符的模糊,新內(nèi)容寫(xiě)入顯示器之前須將所有的LED數(shù)碼管熄滅。進(jìn)入服務(wù)子程序采用的是查詢的模式。

  

【正文】 。************************************************** 。函數(shù)名: add1 。功能: 加一函數(shù) 。傳入?yún)?shù): r1 存的是地址指針 。r2存的是返回的處理數(shù)據(jù) 。************************************************** add1: mov a,0。對(duì) a 進(jìn)行清零 dec r1。指向高四位數(shù)據(jù)地址 mov a,@r1。將高四位移入 a inc r1。指向低四位 swap a。a 中高四位與低四位互換 orl a,@r1。將低四位顯示數(shù)據(jù)放入 a 中 add a,01h。 da a。對(duì) a 中數(shù)據(jù)進(jìn)行加 1,并作十進(jìn)制調(diào)整 mov r2,a。將處理后的數(shù)據(jù)移入 r2 中,注意 r2 中存的是十進(jìn)制對(duì)應(yīng)的bcd 碼 mov r3,a。下面是將 a 中然數(shù)據(jù)恢復(fù)為高位與低位 anl a,0f0h。取高四位 swap a dec r1。 mov @r1,a。將高四位移入低位地址中 mov a,r3。將暫存數(shù)據(jù)移回 anl a,0fh。取其低四位 inc r1。指針指向高四位地址 mov @r1,a。將低四位移到高位地址中 ret 。子程序返回 。************************************************** 。函數(shù)名: display 。功能: 顯示處理程序函數(shù) 。傳入?yún)?shù): 無(wú) 。傳出參數(shù): 。************************************************** display:mov a,50h。 cjne a,00H,dat。00h 是時(shí)間顯示不等則轉(zhuǎn)到年份顯示 timdis: mov r0,secL。 sjmp aa dat: cjne a,01h,ala。若為 01h 則顯示年份,否則顯示鬧鐘 mov r0,dayL。 sjmp aa。 ala: cjne a,02h,mbiao mov r0,als_l。 sjmp aa。 mbiao: mov r0,mao_sfw。 nop。 aa: mov p2,0ffh。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,01h,aa01。 mov a,r4。 rrc a。 jnc aa02。 aa01: mov p2,0feh。 aa02: lcall dl5ms。 lcall dl5ms。 mov p2,0FFh。 inc r0。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,01h,bb01。 mov a,r4。 rrc a。 jnc bb02。 bb01: mov p2,0fdh。 bb02: lcall dl5ms。 lcall dl5ms。 mov p2,0ffh。 inc r0。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,02h,cc01。 mov a,r4 rrc a。 jnc cc02 cc01: mov p2,0fbh。 cc02: lcall dl5ms。 lcall dl5ms。 mov p2,0ffh。 inc r0。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,02h,dd01。 mov a,r4 rrc a。 jnc dd02 dd01: mov p2,0f7h。 dd02: lcall dl5ms。 lcall dl5ms。 mov p2,0ffh。 inc r0。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,03h,ee01。 mov a,r4 rrc a。 jnc ee02 ee01: mov p2,0efh。 ee02: lcall dl5ms。 lcall dl5ms。 mov p2,0ffh。 inc r0。 mov a,@r0 mov dptr,TAB movc a,@a+dptr。 mov p1,a。 mov a,51h。 cjne a,03h,ff01。 mov a,r4 rrc a。 jnc ff02 ff01: mov p2,0dfh。 ff02: lcall dl5ms。 lcall dl5ms。 ret。 。。 。延時(shí)程序 。 。1ms延時(shí) 。 。。 delay1ms: mov R6,14H dl1:mov R7,19H dl2:djnz R7,dl2 djnz R6,dl1 ret dl5ms: mov 55h,03h。 d2: mov 56h,0fh。 d1: djnz 56h,d1。 djnz 55h,d2。 ret。 dl30ms: lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 ret。 dl20ms: lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 lcall dl5ms。 ret。 TAB:DB 0C0H,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h。 end 鬧鐘: 實(shí)現(xiàn)鬧鐘功能主要有兩個(gè)步驟,首先是能在按鍵中把鬧鐘數(shù)值寫(xiě)進(jìn)寄存器,實(shí)現(xiàn)存儲(chǔ)功能。其 次是根據(jù)在查詢按鍵服務(wù)程序中作判別,檢查當(dāng)前時(shí)間是否與鬧鈴時(shí)間相等,如果相等,則使在相應(yīng)時(shí)間時(shí)對(duì)蜂鳴器提供驅(qū)動(dòng)電流即可。就實(shí)現(xiàn)了鬧鐘設(shè)置的功能。 整點(diǎn)報(bào)時(shí) : 整點(diǎn)報(bào)時(shí)是在查詢按鍵程序中調(diào)用到 zhengdi 子程序,檢查當(dāng)前的時(shí)間是否整點(diǎn),如果是,則點(diǎn)亮整點(diǎn)指示燈,并響蜂鳴器,停留約2 秒鐘,自行熄滅與關(guān)閉。 按鍵消抖: 按鍵消抖可以采用硬件消抖跟軟件消抖。我們初定了兩種方案: 1 是利用數(shù)字電路的反相器或斯密特觸發(fā)器進(jìn)行整形,如圖: 2 是采用軟件消抖技術(shù) 應(yīng)該說(shuō)用硬件消抖可以達(dá)到更好的效果,不過(guò)由于提供的材料跟自身手上的材料沒(méi)有以上元件,故采用軟件消抖。軟件的消抖主要是調(diào)整出一個(gè)切到好處的延遲檢測(cè)時(shí)間,一般為 530ms。經(jīng)過(guò)我們的多次調(diào)試,我們最終得到不錯(cuò)的去抖動(dòng)效果。在程序中為 DMS 子程序?qū)崿F(xiàn)。 軟件延時(shí)是用的最多的消抖方法,但是耗時(shí)間。在 CPU 耗不起時(shí)間的情況下,硬件消抖會(huì)更好 在本程序中設(shè)置了 30ms 的按鍵消抖。 感想體會(huì) : 本實(shí)驗(yàn)花了我們四天的時(shí)間,由于該大作業(yè)是 用匯編語(yǔ)言寫(xiě)的,很多語(yǔ)句掌握都不是很牢固 ,但是經(jīng)過(guò)這么長(zhǎng)時(shí)間的實(shí)驗(yàn),我基本掌握了部分匯編語(yǔ)言的用法,特別是實(shí)驗(yàn)中經(jīng)常用到的按鍵查詢,跳轉(zhuǎn)語(yǔ)句,以及匯編的方法。 剛開(kāi)始的時(shí)候,我什麼都不懂,根本不知怎樣入門(mén),后來(lái)查找了一些系統(tǒng)資料,漸漸有了些了解,才開(kāi)始寫(xiě)自己的程序。雖然如此,中間還是遇到過(guò)不少困難,不如些按鍵查詢的時(shí)候,仿真不出來(lái),不知道哪里出錯(cuò)了,也不知道是不是程序有問(wèn)題,后來(lái)在小組成員的幫助下,終于找到問(wèn)題所在,通過(guò)不斷的琢磨,后來(lái) 不僅實(shí)現(xiàn)了老師的要求的基本功能,更加了秒表,鬧鈴還有整點(diǎn)報(bào)時(shí)。本來(lái)還想加上紀(jì)念日和音樂(lè)鬧鈴,當(dāng)一方面時(shí)間有限,另一方面 嘗試后失敗了就暫時(shí)擱下。 調(diào)試的時(shí)候,剛上去的時(shí)候,板子工作很不穩(wěn)定,雖然有時(shí)候能夠顯示到正確的東西,當(dāng)大多數(shù)時(shí)間都是顯示的雜亂無(wú)章,鑒于有時(shí)候能夠正確顯示,我們是板子焊的不好,于是重新焊過(guò),第二個(gè)版子剛上電的時(shí)候,還是不能很正確的工作,后來(lái),一步一步的調(diào)試,先用簡(jiǎn)單的程序檢查板子,發(fā)現(xiàn)板子是沒(méi)有問(wèn)題的,于是就確定是程序的問(wèn)題,我把程序分為好幾塊,一塊一塊的調(diào)試,一段好了之后,在 加上一段。最后發(fā)現(xiàn)是在一個(gè)子程序里邊用了一個(gè)錯(cuò)誤的 ljmp。 改正了之后就完全正確了。 經(jīng)過(guò)這次試驗(yàn),確實(shí)學(xué)到我好多好多的東西。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1