![]() |
發(fā)布時間: 2019-2-18 11:19
正文摘要:STC15F104W是一種8引腳的單片機(jī),只需要兩個引腳用于電源輸入,其余均可做IO口使用,我們可以無限地利用有限的資源,在此贊一下設(shè)計者!但在使用過程中,總覺得利用內(nèi)置的時鐘,采用定時器作定時時,好像比正常的時 ... |
首先確定一下,你的時鐘模式。在一個是不是定時器的初始設(shè)置太小了。 |
任何廠家芯片內(nèi)的RC振蕩精度都不高,包括TI大廠的。這由它的本質(zhì)決定,所以有了晶振這東西,要想精度高只有用晶振。如要求更高,還得用溫補(bǔ)晶振。 STC11F04E(20腳)內(nèi)部RC標(biāo)稱5Mhz,實(shí)測4.6~4.8Mhz。 |
內(nèi)置時鐘的穩(wěn)定性很不好 像這種建議做精度不太高的執(zhí)行控制器,不建議用作高精度運(yùn)算部件 |
那個寶上有有LCD1602的IIC模塊 |
tigerzq 發(fā)表于 2019-2-19 22:59 這種構(gòu)思已使用過,用外部的時鐘電路也難免會有些小誤差,我就是用這種方法來進(jìn)行自動校正的。 |
設(shè)計一個帶自動校時的功能,每天自動校時 |
新新科技 發(fā)表于 2019-2-19 11:06 因為是使用了內(nèi)部的時鐘了,誤差大是正常的,如果你用的是C來寫,誤差可能還會再大一點(diǎn) 片上的時鐘能有5%的精度就不錯了,而你做時鐘的話,它是累加的,所以,想做時候,最好還是用有源時鐘IC好一點(diǎn) |
要求精度高可以外加個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元一個。用在電壓電流顯示上不知道行不行 |
內(nèi)部時鐘會有誤差,如果想要準(zhǔn)確計時,用外部時鐘比較好。 |
新新科技 發(fā)表于 2019-2-19 11:11 可以利用用外部RC充放電積分電路用軟件模擬AD,當(dāng)然精度比較差些,聊勝于無…… |
STC單片機(jī)的內(nèi)部RC震蕩頻率誤差是相當(dāng)大的,而且隨著運(yùn)行還要受溫度影響,估計跟它們的生產(chǎn)工藝和檢測機(jī)制有關(guān),我曾碰到有好幾片甚至因為波特率誤差太大而導(dǎo)致無法進(jìn)行正常的串口通訊,有精確定時和時鐘需求的還是建議采用外部晶振作時鐘源 |
精度取決于使用條件,實(shí)在需要加溫度補(bǔ)償吧。 |
劉鐵民 發(fā)表于 2019-2-18 21:19 加一片轉(zhuǎn)換板可以實(shí)現(xiàn)LCD1602的IIC通信,我還沒有遇到SPI接口的1602。104可以做成電壓電流表?它有AD腳? |
Y_G_G 發(fā)表于 2019-2-18 22:25 如果幾天下來快慢一分鐘,那可以接受。而這104按廠家燒錄工具提供的定時器設(shè)置例程編寫的程序,感覺一小時下來還要出現(xiàn)很大的時間差,如果用于日常時鐘根本不能用,如果用于相對嚴(yán)格的定時器也不行。 |
本帖最后由 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 | 收起 理由 |
---|---|---|
![]() | + 3 | 贊一個! |
內(nèi)部時鐘會有誤差的,要準(zhǔn)確計時需要補(bǔ)償,但也是不能解決根本問題。 要準(zhǔn)確計時,用外部時鐘吧。做好是恒溫的晶振,,,,,, |
用單片機(jī)的定時器來檢測或者波形輸出可以很準(zhǔn)確,但做時間卻不怎么好,要么快,要么慢,而且這個是慢慢累加起來的,所以,幾天慢個一分鐘也算是正常的,你稍微的調(diào)一下,它又快了. |
我不懂編程?墒俏抑肋@個都是可以設(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 | 收起 理由 |
---|---|---|
![]() | + 80 | 回帖助人的獎勵! |
Powered by 單片機(jī)教程網(wǎng)