回覆列表
  • 1 # jajgatkmkt

    例項說明: 假設時鐘週期為4MHZ,每隔50MS點亮LED,每隔50MS滅掉LED。這樣的程式要如何做到呢。 這50ms如何做到.

    1,得到指令週期 4MHz/4=1MHz 1/1MHz=0.0000001s=1us

    2,得到預分頻 定時器定時的最大時間要超過這50mS,所以預分頻器要選擇256 預分頻X256=最大的定時時間。256X256=65536us=65.536ms 大於50ms 3, 計算定時器初始值 (定時器最大值+1)- (定時時間/預分頻)=定時器的初始值。 50000/256=195.3125 256-195.3125=60.6875 四捨五入 定時器初始值為61.設定相關的暫存器。 OPTION_REG暫存器中我們一般需要設定三處。 PS設定用來設定預分頻預分頻範圍從2 ~256 PSA設定成0 講預分頻器分配給Timer0模組 TMR0CS設定成0 內部指令週期時鐘。例項程式:/*開發環境 MPLAB X IDE 型號PIC16LF1823*/

  • 中秋節和大豐收的關聯?
  • 治世之能臣,亂世之梟雄這句話是用來評價誰的?