我們在利用51單片機時,往往需要利用到按時計數器。有時辰,因為一些出格的需求,需要對按時的時候進行設心猿意馬,這時辰可以經由過程外設例如按鍵進行設心猿意馬,這里以通俗的自力式按鍵為例,介紹用按鍵設心猿意馬按時時候的方式
 打開Keil μVision編譯器,新建一個工程,然后保留在硬盤上的位置,然后選擇Atmel-AT89C51單片機為模子,并添加STARTUP.A51文件,然后在當前目次下新建一個C文件,并將其添插手工作路徑,如圖所示
 起首要導入51單片機的頭文件,不然后續利用的端口城市呈現不決義的環境,然后用位變量sbit別離界說兩個按鍵的端口地址,這里為P1.0和P1.1兩個端口
 然后設心猿意馬按時計數器的工作模式,這里將TMOD設置為0x01,是按時器0工作體例1,為16位按時器/計數器,然后別離設心猿意馬高八位和低八位計時的時候長短,此中前者用除,后者用取模
 然后使得EA=1,即總間斷許可,打開間斷的總開關,再打開按時計數器0的分隔關,再啟動按時計數器0
 然后建立一個無限輪回,起首判定輪回次數,若是按下按鍵,則計數器增添,帶來的結果是判定輪回退出的次數增添,從而實現了經由過程按鍵來增添按時時候
 然后起頭編寫間斷辦事函數,要注重按時/計數器0的間斷號為1,在函數中從頭對初值進行賦值,然后使得計數器加一,最后編譯運行,生當作可燒錄的hex文件
 最后把生當作出的.hex燒入進51單片機進交運行或者裝載入Proteus仿真系統進行仿真,點擊運行按鈕后可以發現點擊按鍵次數分歧,led燈亮所需的時候也分歧
 0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!