看不懂51的計時器計數暫存器的怎樣去控制時間,求教

2023-01-12 23:00:14 字數 542 閱讀 9874

1樓:cindere鞡

你好:首先你要明白51微控制器的晶振與機器週期的關係,就是12/晶振(hz) 秒,因為你的是12mhz,所以一個機器週期就是1微秒;然後微控制器的定時器每一個機器週期就會自己加1計數,定時器的工作方式0是13位的暫存器,方式1是16的暫存器,方式2和3都是8位的暫存器,你這使用的是方式1,所以定時器計數65535次為最大值,再計數一次則產生中斷申請;這些都是基礎,你問如何用這兩個共16位的暫存器來控制時間,那麼很簡單:

thx=<65536-time>/256;

tlx=<65536-time>%256;

這兩個語句的意思就是往thx和tlx中寫入初值,time為時間,比如我50000微秒中斷一次,那麼time等於50000就可以了,因為tlx計數溢位時才向thx進位一次,而tlx要計數50000次,thx才會溢位申請中斷。

希望我的回答能幫助到你。

2樓:匿名使用者

51微控制器的時鐘週期是12個**週期,因此要除以12*200,乘12000000表示1秒,10000h就是65535

求超精準的計時器,求一個超精準的計時器

假如現在有人問你,的時間顯示是最準確的?也許有人會說 電視臺,廣播臺播出的時間是最準的。為什麼呢?難道我們現在的手錶,時鐘,電腦,手機顯示的時間就都是不準的嗎?也許是吧。現代手錶,時鐘,都是有一個機芯在裡面轉動的,會因振動,鬆懈而導致誤點誤時 電腦上,手機上的時間更是相對而行。對於世上的時間,我們沒...

設暫存器的內容為11111111若它等於 127則為A原碼B補碼C反碼D移碼

11111111,如果是原碼 它就是 127 如果是補碼 它就是 1 如果是反碼 它就是 0 如果是移碼 它就是 127。按照規則,依次都求一遍,就知道這些了。35 設暫存器內容為80h,若它對應的真值是 127,則該機器數是 a 原碼 b 補碼 c 反碼 d 移碼 是反碼。80h 10000000...

程式控制暫存器是什麼解釋的詳細一下,謝謝

cpu目標暫存器和結果暫存器都已有資料,需要第三個資料輸入 程式設計時某一邏輯訊號經常多次使用,中間結果需要暫時記憶 輸出介面單後設資料無閂鎖,需要暫存支援 例如轉移或跳轉指令 雙位元組及以上指令 移位或溢位,特殊定址等都有可能使用。這道組合語言程式設計的程式的每一步是什麼意思啊,拜託詳細解釋一下,...