找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索

單片機(jī)匯編語言模擬時(shí)鐘程序(LCD12864顯示)精校時(shí)間(開源)

查看數(shù): 4993 | 評(píng)論數(shù): 26 | 收藏 11
關(guān)燈 | 提示:支持鍵盤翻頁(yè)<-左 右->
    組圖打開中,請(qǐng)稍候......
發(fā)布時(shí)間: 2022-5-5 16:41

正文摘要:

本帖最后由 xiaoyuxinke 于 2022-5-8 14:11 編輯 本程序無需DS1302,無需定時(shí)器,另本程序使用匯編語言編寫,只要按所使用的晶振修改延時(shí)部分,可以做到一年誤差5秒以內(nèi). 視頻已上傳至優(yōu)酷,需要的可以看一下.https:/ ...

回復(fù)

ID:61140 發(fā)表于 2023-2-12 12:36
songxia8013 發(fā)表于 2023-2-10 15:49
請(qǐng)教一下,這個(gè)DJNZ R6,[        DISCUZ_CODE_1        ]nbsp; 是什么意思?

DJNZ R6,[        DISCUZ_CODE_1        ]nbsp;
這個(gè)原來是DJNZ R6,$
壇子里發(fā)不了$,所以自動(dòng)轉(zhuǎn)成那樣了
ID:61140 發(fā)表于 2023-10-22 22:57
鵜鶘 發(fā)表于 2023-10-22 10:58
剛試了下,可以編譯,結(jié)果是-2,這樣就省了個(gè)標(biāo)號(hào),這在Keil中行得通,在其他的匯編環(huán)境中不知怎樣,這不是 ...

匯編的移植性本來就不太友好,這是公認(rèn)的缺點(diǎn),所以這個(gè)我只能呵呵了
ID:61140 發(fā)表于 2023-10-22 22:56
宏達(dá)工控 發(fā)表于 2023-10-22 10:00
樓主既然對(duì)匯編熟系,對(duì)OD跟蹤 WINhex這些一定也不陌生吧,能不能出個(gè)教程,工業(yè)控制上經(jīng)常用

我還要工作,沒太多時(shí)間來這里,只是偶然過來看看,所以實(shí)在報(bào)歉
ID:61140 發(fā)表于 2023-10-22 22:54
songxia8013 發(fā)表于 2023-2-10 15:49
請(qǐng)教一下,這個(gè)DJNZ R6,[        DISCUZ_CODE_1        ]nbsp; 是什么意思?

原程序中是:
DJNZ R6,$
但是壇子里不讓發(fā)$這個(gè)符號(hào),所以變成這樣了
ID:61140 發(fā)表于 2023-10-22 22:51
鵜鶘 發(fā)表于 2023-10-22 09:42
是啊,就是這個(gè)DJNZ R6,$是什么意思呢?
遍觀整個(gè)程序中并沒有這個(gè)標(biāo)號(hào),跳到哪里去呢?

R6中的數(shù)減一,如果不為0原地執(zhí)行,
就是說R6中的數(shù)不為0就重復(fù)執(zhí)行這句,
直到R6等于0,才跳到下一句。
ID:397054 發(fā)表于 2023-10-22 10:58
剛試了下,可以編譯,結(jié)果是-2,這樣就省了個(gè)標(biāo)號(hào),這在Keil中行得通,在其他的匯編環(huán)境中不知怎樣,這不是個(gè)標(biāo)準(zhǔn)用法,第一次看到。
ID:611626 發(fā)表于 2023-10-22 10:00
xiaoyuxinke 發(fā)表于 2022-5-8 14:05
本人不會(huì)C,所以只好匯編充大頭了,各位見笑/

樓主既然對(duì)匯編熟系,對(duì)OD跟蹤 WINhex這些一定也不陌生吧,能不能出個(gè)教程,工業(yè)控制上經(jīng)常用
ID:397054 發(fā)表于 2023-10-22 09:42
xiaoyuxinke 發(fā)表于 2023-2-12 12:37
看我前面發(fā)的圖片上面就知道了

是啊,就是這個(gè)DJNZ R6,$是什么意思呢?
遍觀整個(gè)程序中并沒有這個(gè)標(biāo)號(hào),跳到哪里去呢?
ID:78901 發(fā)表于 2023-10-21 22:49
如果環(huán)境溫度不變更的情況下,時(shí)鐘可以做得很準(zhǔn)(不管是匯編還是C)
ID:61140 發(fā)表于 2023-10-21 20:24
Dream匯編男孩 發(fā)表于 2023-4-25 16:55
您好,我想問你點(diǎn)關(guān)于單片機(jī)匯編的問題可以嗎?我是個(gè)新手小白,在做設(shè)計(jì)遇到了一些問題不知道咋解決想找您 ...

什么問題,工只是業(yè)余來一下這里,平時(shí)工作較忙。
ID:1072680 發(fā)表于 2023-4-25 16:55
您好,我想問你點(diǎn)關(guān)于單片機(jī)匯編的問題可以嗎?我是個(gè)新手小白,在做設(shè)計(jì)遇到了一些問題不知道咋解決想找您幫個(gè)忙。如果不方便的話就算了,叨嘮您了,不好意思啊
ID:61140 發(fā)表于 2023-2-12 12:37
songxia8013 發(fā)表于 2023-2-10 15:49
請(qǐng)教一下,這個(gè)DJNZ R6,[        DISCUZ_CODE_1        ]nbsp; 是什么意思?

看我前面發(fā)的圖片上面就知道了
ID:102963 發(fā)表于 2023-2-10 15:49
請(qǐng)教一下,這個(gè)DJNZ R6,[        DISCUZ_CODE_1        ]nbsp; 是什么意思?
ID:61140 發(fā)表于 2022-5-30 18:04
fsj5098 發(fā)表于 2022-5-26 17:40
不管是c還是匯編,中斷操作肯定影響計(jì)時(shí)

整個(gè)程序沒用到中斷,為什么要用中斷呢
ID:78901 發(fā)表于 2022-5-26 17:40
不管是c還是匯編,中斷操作肯定影響計(jì)時(shí)
ID:829973 發(fā)表于 2022-5-26 14:58
不錯(cuò),我也是喜歡匯編。!
ID:61140 發(fā)表于 2022-5-25 22:38
風(fēng)云101 發(fā)表于 2022-5-9 23:53
就喜歡匯編的可操作性,就好比開車一樣,我自己握方向盤總比使喚別人握方向盤爽的多,當(dāng)然使喚別人握方向盤 ...

喜歡就好,喜歡的才是適合自己的.
ID:61140 發(fā)表于 2022-5-25 22:37
madell 發(fā)表于 2022-5-6 18:53
厲害,匯編做的延時(shí)是很精確的,直擊底層,是C無法比擬的。

說的對(duì),這是匯編的優(yōu)點(diǎn),C和匯編各有優(yōu)缺點(diǎn).
ID:61140 發(fā)表于 2022-5-25 22:37
axiongzhang 發(fā)表于 2022-5-6 20:03
看不懂匯編程序,失敗

匯編并不是很難的,有人教就可以
ID:864787 發(fā)表于 2022-5-9 23:53
就喜歡匯編的可操作性,就好比開車一樣,我自己握方向盤總比使喚別人握方向盤爽的多,當(dāng)然使喚別人握方向盤肯定輕松多(類似C語言),但缺少那份激情,我喜歡匯編也是這原因,別跟我算法,我就編個(gè)時(shí)鐘或者一個(gè)手電筒控制程序,你跟我談算法
ID:61140 發(fā)表于 2022-5-8 14:05
本人不會(huì)C,所以只好匯編充大頭了,各位見笑/
ID:744744 發(fā)表于 2022-5-6 20:03
看不懂匯編程序,失敗
ID:99987 發(fā)表于 2022-5-6 18:53
厲害,匯編做的延時(shí)是很精確的,直擊底層,是C無法比擬的。
ID:61140 發(fā)表于 2022-5-6 16:26
如果加上年累積誤差校正,一年走時(shí)誤差控制在1秒以內(nèi)是做的到的(這里只計(jì)論走時(shí)誤差,晶振的熱穩(wěn)定誤差不討論,那個(gè)是元件性能決定的)
ID:61140 發(fā)表于 2022-5-6 16:21
heicad 發(fā)表于 2022-5-6 16:13
一般來說 是不可能達(dá)到一年幾秒誤差的精度的,樓主測(cè)試過嗎?

去理解一下C和匯編的差別,你會(huì)懂,一個(gè)匯編NOP指令,最多2-3微秒的時(shí)間,一個(gè)24M的晶振,幾微秒,一年誤差不會(huì)超過5秒種.
在C語言中,延時(shí)只是個(gè)模糊概念,不管你寫延時(shí)多少都不一定,要看編譯器怎么去做,但匯編語言你寫延時(shí)多少就是多少,可以做到很精準(zhǔn).
ID:262 發(fā)表于 2022-5-6 16:13
一般來說 是不可能達(dá)到一年幾秒誤差的精度的,樓主測(cè)試過嗎?

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表