找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

總是覺得STC15F104W單片機(jī)內(nèi)置的時鐘偏慢

查看數(shù): 6831 | 評論數(shù): 19 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2019-2-18 11:19

正文摘要:

STC15F104W是一種8引腳的單片機(jī),只需要兩個引腳用于電源輸入,其余均可做IO口使用,我們可以無限地利用有限的資源,在此贊一下設(shè)計者!但在使用過程中,總覺得利用內(nèi)置的時鐘,采用定時器作定時時,好像比正常的時 ...

回復(fù)

ID:130230 發(fā)表于 2020-1-8 11:43
首先確定一下,你的時鐘模式。在一個是不是定時器的初始設(shè)置太小了。
ID:282850 發(fā)表于 2020-1-7 09:58
任何廠家芯片內(nèi)的RC振蕩精度都不高,包括TI大廠的。這由它的本質(zhì)決定,所以有了晶振這東西,要想精度高只有用晶振。如要求更高,還得用溫補(bǔ)晶振。
STC11F04E(20腳)內(nèi)部RC標(biāo)稱5Mhz,實(shí)測4.6~4.8Mhz。
ID:398709 發(fā)表于 2020-1-5 20:56
內(nèi)置時鐘的穩(wěn)定性很不好 像這種建議做精度不太高的執(zhí)行控制器,不建議用作高精度運(yùn)算部件
ID:681297 發(fā)表于 2020-1-5 12:38
那個寶上有有LCD1602的IIC模塊
ID:71233 發(fā)表于 2019-2-20 08:26
tigerzq 發(fā)表于 2019-2-19 22:59
設(shè)計一個帶自動校時的功能,每天自動校時

這種構(gòu)思已使用過,用外部的時鐘電路也難免會有些小誤差,我就是用這種方法來進(jìn)行自動校正的。
ID:471632 發(fā)表于 2019-2-19 22:59
設(shè)計一個帶自動校時的功能,每天自動校時
ID:401564 發(fā)表于 2019-2-19 19:36
新新科技 發(fā)表于 2019-2-19 11:06
如果幾天下來快慢一分鐘,那可以接受。而這104按廠家燒錄工具提供的定時器設(shè)置例程編寫的程序,感覺一小 ...

因為是使用了內(nèi)部的時鐘了,誤差大是正常的,如果你用的是C來寫,誤差可能還會再大一點(diǎn)
片上的時鐘能有5%的精度就不錯了,而你做時鐘的話,它是累加的,所以,想做時候,最好還是用有源時鐘IC好一點(diǎn)
ID:443306 發(fā)表于 2019-2-19 17:38
要求精度高可以外加個4060產(chǎn)生1Hz秒信號呀。這樣不就解決了精度問題。104雖然沒有ad腳。但是外部電路可以加個ad轉(zhuǎn)換吧。8腳IC。!4個腳用于1602SPI顯示。剩下二個腳用于電壓電流數(shù)據(jù)輸入。不知道用TM7711怎么樣。我看他20-40MV精度好像是3%?上也粫幊。淘寶TM711電子秤ad轉(zhuǎn)換IC。雙路的0.7元一個。用在電壓電流顯示上不知道行不行
ID:382550 發(fā)表于 2019-2-19 16:37
內(nèi)部時鐘會有誤差,如果想要準(zhǔn)確計時,用外部時鐘比較好。
ID:474677 發(fā)表于 2019-2-19 11:58
新新科技 發(fā)表于 2019-2-19 11:11
加一片轉(zhuǎn)換板可以實(shí)現(xiàn)LCD1602的IIC通信,我還沒有遇到SPI接口的1602。104可以做成電壓電流表?它有AD腳?

可以利用用外部RC充放電積分電路用軟件模擬AD,當(dāng)然精度比較差些,聊勝于無……
ID:474677 發(fā)表于 2019-2-19 11:40
STC單片機(jī)的內(nèi)部RC震蕩頻率誤差是相當(dāng)大的,而且隨著運(yùn)行還要受溫度影響,估計跟它們的生產(chǎn)工藝和檢測機(jī)制有關(guān),我曾碰到有好幾片甚至因為波特率誤差太大而導(dǎo)致無法進(jìn)行正常的串口通訊,有精確定時和時鐘需求的還是建議采用外部晶振作時鐘源
ID:471560 發(fā)表于 2019-2-19 11:17
精度取決于使用條件,實(shí)在需要加溫度補(bǔ)償吧。
ID:71233 發(fā)表于 2019-2-19 11:11
劉鐵民 發(fā)表于 2019-2-18 21:19
我不懂編程?墒俏抑肋@個都是可以設(shè)置的,你是不是可以把時間設(shè)置的快一點(diǎn)呢。做一個出來你感覺慢還可以 ...

加一片轉(zhuǎn)換板可以實(shí)現(xiàn)LCD1602的IIC通信,我還沒有遇到SPI接口的1602。104可以做成電壓電流表?它有AD腳?
ID:71233 發(fā)表于 2019-2-19 11:06
Y_G_G 發(fā)表于 2019-2-18 22:25
用單片機(jī)的定時器來檢測或者波形輸出可以很準(zhǔn)確,但做時間卻不怎么好,要么快,要么慢,而且這個是慢慢累加起來 ...

如果幾天下來快慢一分鐘,那可以接受。而這104按廠家燒錄工具提供的定時器設(shè)置例程編寫的程序,感覺一小時下來還要出現(xiàn)很大的時間差,如果用于日常時鐘根本不能用,如果用于相對嚴(yán)格的定時器也不行。
ID:213173 發(fā)表于 2019-2-19 09:33
本帖最后由 wulin 于 2019-2-19 10:28 編輯

采用STC15F104W單片機(jī)做時鐘因其只能使用內(nèi)部RC振蕩精度有限,積累誤差很大。當(dāng)然不是沒有解決方案。
1.設(shè)置較高的振蕩頻率(24M)
2.設(shè)置定時器1T16位自動重載模式
3.根據(jù)±誤差加減重載值
4.再根據(jù)±誤差加減中斷計數(shù)值
5.再根據(jù)±誤差在23:59'59"加減最后1秒的中斷計數(shù)值
6.修正值變量可以保存在EEPROM中,可以隨時調(diào)用和修改以解決季節(jié)溫度補(bǔ)償
7.端口不夠用可以采用端口復(fù)用技術(shù)解決
通過上述措施使走時精度輕松控制在日誤差1秒內(nèi)。

評分

參與人數(shù) 1黑幣 +3 收起 理由
lmn2005 + 3 贊一個!

查看全部評分

ID:158375 發(fā)表于 2019-2-19 08:24
內(nèi)部時鐘會有誤差的,要準(zhǔn)確計時需要補(bǔ)償,但也是不能解決根本問題。
要準(zhǔn)確計時,用外部時鐘吧。做好是恒溫的晶振,,,,,,
ID:477932 發(fā)表于 2019-2-19 00:06
如果不行用一下外部時鐘

評分

參與人數(shù) 2黑幣 +22 收起 理由
Trump1438 + 14
春風(fēng)十里吹 + 8

查看全部評分

ID:401564 發(fā)表于 2019-2-18 22:25
用單片機(jī)的定時器來檢測或者波形輸出可以很準(zhǔn)確,但做時間卻不怎么好,要么快,要么慢,而且這個是慢慢累加起來的,所以,幾天慢個一分鐘也算是正常的,你稍微的調(diào)一下,它又快了.
ID:443306 發(fā)表于 2019-2-18 21:19
我不懂編程?墒俏抑肋@個都是可以設(shè)置的,你是不是可以把時間設(shè)置的快一點(diǎn)呢。做一個出來你感覺慢還可以改你定時器設(shè)置吧。104加個SPI的1602在加二個按鍵調(diào)整時間。我看104有二個定時器。應(yīng)該出個1Hz信號沒問題吧因為晶振原因有點(diǎn)誤差也正常。呵呵1加60就是分,在+60就是小時。可惜我不懂編程。就是想了。你做個出來給我源文件,我也照貓畫虎做個玩吧。如果按鍵就調(diào)整小時。就一個按鍵剩下一個腳還可以顯示溫度。就這8腳單片機(jī)不做時鐘做個電壓電流雙顯示表也好

評分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎勵!

查看全部評分

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

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

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