久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: STC 硬件仿真如何看運行時間? [打印本頁]

作者: ningsy    時間: 2022-12-18 11:53
標題: STC 硬件仿真如何看運行時間?
在做的項目里有倒計時的功能,用STC 8G1K08設置芯片仿真,自動設定的頻率總是有誤差,并且每次的設定頻率誤差還不一樣。比如:


  . 用戶設定頻率: 11.059MHz
  . 調節后的頻率: 11.040MHz (主時鐘分頻系數 = 2)
  . 頻率調節誤差: -0.174%

因為頻率有誤差,所以感覺每次倒計時的時間總是不準。想問下在硬件仿真時能看到具體的運行時間嗎?好像STC芯片仿真時看不了時間?

另外,要想得到比較精確的時間,需要并聯外部晶振和電容么?還是用它“用戶自定義內部IRC頻率”的范例程序代碼設置?



作者: 188610329    時間: 2022-12-18 12:49
直接看不了,只能間接看,比如利用某變量記錄兩個時間點之間的機器周期,又比如某個IO在兩個不同時間點輸出高低電平,第三方采集等。
作者: 188610329    時間: 2022-12-18 12:53
要想得到較準的頻率,應當讀取出廠的22.1184校驗值,用這個,再根據你的實際需要分頻,ISP下載設置的頻率是不準的,受限你的電腦,至少我用電腦設能誤差3%以上。
作者: ningsy    時間: 2022-12-18 13:51
188610329 發表于 2022-12-18 12:49
直接看不了,只能間接看,比如利用某變量記錄兩個時間點之間的機器周期,又比如某個IO在兩個不同時間點輸出 ...

我加了一個斷點,按F5數碼管就可以按數字倒計時了。但問題是左下角的時間一直是0啊,不顯示時間。我再試試用IO輸出個方波的方法。




作者: ningsy    時間: 2022-12-18 14:08
188610329 發表于 2022-12-18 12:53
要想得到較準的頻率,應當讀取出廠的22.1184校驗值,用這個,再根據你的實際需要分頻,ISP下載設置的頻率是 ...

您說的是不是這樣,下載時需要選擇22.1184Mhz嗎,還是根本就不用管這項了,直接在代碼里手動設置IRC頻率為22.1184Mhz然后2分頻?按您的經驗,手動設置IRC頻率準嗎?官方給出了3種代碼,有點簡單有的復雜,我應該用哪個呢?


作者: wulin    時間: 2022-12-18 14:40
實際運用中,一小時內這點誤差可以忽略不計。如果對時間精度有特別需求就要另外添置高精度時鐘芯片。
作者: Y_G_G    時間: 2022-12-18 16:50
一兩個小時的倒計時是不會有問題的,只要IRC時鐘選擇對了,再用定時器做延時,保證沒有問題
STC8G1K08A,我用來定時六個小時,在分上跟時鐘IC是沒有區別的,但有時會誤差三五分鐘
做項目是不可能讓你每個單片機去調節時鐘的,每個單片機的RC時鐘誤差都是差不多的
如果你要是想知道怎么測量,最好是下載后用IO進行測量,示波器或者邏輯分析儀都可以
作者: 188610329    時間: 2022-12-18 18:33
ningsy 發表于 2022-12-18 14:08
您說的是不是這樣,下載時需要選擇22.1184Mhz嗎,還是根本就不用管這項了,直接在代碼里手動設置IRC頻率 ...

下載時可以不需要設置22.1184, 但是,由于頻段的關系,要選同一頻段的,為了避免麻煩,你還是選22.1184吧,8g1k沒有chipID,所以,你只能ROM讀取,記得下載時勾選“末尾添加重要參數”選項,才能讀取成功。最后,這個數值,是出廠是stc測試時最接近22.1184頻率的值,如果這個頻率最終依然無法滿足你的需要,你只能考慮其他時鐘源了。就我的使用結果來看,比電腦自動調的要準太多了。
作者: 188610329    時間: 2022-12-18 18:36
ningsy 發表于 2022-12-18 13:51
我加了一個斷點,按F5數碼管就可以按數字倒計時了。但問題是左下角的時間一直是0啊,不顯示時間。我再試 ...

左下角是一直0的,所以我說沒有辦法直接得到,只能要么用變量記錄時鐘周期,比如開個定時器,每50000個周期,變量+1,然后結合定時器和變量,算出過了多少周期,要么某個IO輸出高低電平,讓第三方芯片來計算。
作者: ningsy    時間: 2022-12-18 19:28
網上查了一下,有人讓單片機產生1S(或100ms)的波形,配合邏輯分析儀,調整IRTRIM寄存器的值,即可調整STC單片機的頻率。但這個調整是一次性的,不同的單片機,就可能有所不同,不同的環境(特指溫度,也可能不同)。 這就很麻煩了。我還是先接受它自動調整的精度,實在不行了,就接個晶振上去爽快些。
作者: coody_sz    時間: 2022-12-18 23:21
用一個IO來指示時間。
作者: ningsy    時間: 2022-12-19 09:15
多謝以上各位指導!我會試試看,或許就能用到。
作者: Y_G_G    時間: 2023-2-5 19:35
ningsy 發表于 2022-12-19 09:15
多謝以上各位指導!我會試試看,或許就能用到。

對于精確的長時間,STC單片機都是用定時器的
不會用while這種代碼的
至于調節片上的時鐘,感覺沒必要
作者: 13423265909    時間: 2023-2-6 00:42
用DEBUG斷點調試
作者: zttttttttttt    時間: 2025-5-8 14:27
搞一個定時器中斷,舉個例子,里面不是有TL0和TH0,,查手冊找到它們的地址,然后用keil的debug,找里面的memory,然后你去搜你要找的l0和h0的地址,然后打斷點運行,看時間變化量就可以了。注意觀察是否重新開始加載值了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美黄色片 | 亚洲精品在线国产 | 亚洲一区二区三区 | 久在草| 国产成都精品91一区二区三 | 亚洲精品在线播放 | 免费在线观看一区二区三区 | 污片在线观看 | 黄色一级免费观看 | 午夜视频在线视频 | 亚洲高清视频一区二区 | 福利视频网址 | 在线黄色影院 | 国产色婷婷精品综合在线播放 | 嫩草视频在线 | 成人在线视频一区二区三区 | 91久久国产综合久久 | 日韩亚洲一区二区 | 亚洲福利在线视频 | 欧美天堂 | 精品日韩 | 久久久成 | 欧美日韩国产免费 | 成人精品系列 | 在线婷婷| 久久精品| 欧美日韩91 | 国产精品高潮呻吟久久久久 | 国产免费福利在线 | 日韩精品无码一区二区三区 | 欧美一区二区三区在线看 | 国产精品一区二区久久精品爱微奶 | 一区二区三区四区在线视频 | 中文字幕久久精品 | 在线观看深夜视频 | 三级国产三级在线 | 亚洲福利视频一区二区 | 日韩黄| 亚洲精彩视频在线观看 | 嫩草影院网址 | 亚洲国产一区在线 |