国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

用89C51和8254-2實際步進式PWM輸出

發布時間:2010-11-3 12:50    發布者:eetech
關鍵詞: 8254 , 89C51 , PWM , 步進式 , 輸出
脈寬調制(PWM)技術最初是在無線電技術中用于信號的調制,后來在電機調速中得到了很好的應用。本設計中要求輸出PWM從1Hz~3kHz步進式遞增,單步為1Hz。由于89C51的時鐘最大能取24MHz,單指令周期為0.5μs,計數頻率為%26;#215;10 6Hz。當輸出2999Hz和3000Hz時,若采用89C51內部計數器來計數,根本無法區別。因為計數頻率為2MHz,單指令周期0.5μs,而要輸出2999Hz時,計數應為666.889;輸出3000Hz時,計數誚為666.887。因此在本設計中,采用外部定時器/計數器8254-2。因為8254-2最高計數頻率可達10MHz,能滿足以上設計的要求,另外采用8254-2的工作方式3可輸出方波。當定時器/計數器8254-2以方式3工作時,在計數的過程中輸出有一半時間為高,另一半時間為低。所以,若計數值為N,則其輸出在前N/2時可輸出高電平,后N/2時可輸出低電平,不需要用軟件來控制高低電平的轉換,但8254-2計數范圍有一定的限制,在采用二進制計數時,范圍為0000~9999,最大計數為10 000。此外,為了使分辨率達到要求,還需要考慮程序指令所占用的時間,尤其是在輸出高頻時,分辨率尤為重要。





1 硬件設計  

1.1 8254可編程定時器/計數器簡介  

Intel公司的8254是8253的改進型,操作方式及引腳與8253完全相同。它的改進主要反映在2方面:①8254的計數頻率更高,可由直流至6MHz;8254-2可高達10MHz。②8254多個1個讀回命令(寫至控制器的寄存器),其格式如圖1所示。  

這個命令可以令3個通道的計數器都鎖存(8253要3個通道的計數值都鎖存,需寫入3個命令)。另外,8254中的每個計數器都有1個狀態字可由讀回命令令其鎖存,然后由CPU讀取。狀態字的格式如圖2所示。其中D5~D0即為寫入此通道的控制字的相應部分。D7反映了該計數器的輸出引腳。輸出(OUT)為高電平,D7=1;輸出為低電平,D7=0。D6反映時間常數寄存器中的計數值是否已經寫入了計數單元中。當向通道寫入控制字以及計數值后,狀態字節中的D6=1;只有當計數值寫入計數單元后,D6=0。  

本設計選擇8254-2的方式3工作。方式3是一種方波速率發生器。在這種方式中,當CPU設置控制字后,輸出將為高,在寫完計數值后就自動開始計數,輸出保持為高;當計數到一半計數值時,輸出變為低,直至計數到0,輸出又變高,重新開始計數。若在計數期間寫入個新的計數值,并不影響現行的計數過程。但是若在方波半周期結束前和新計數值寫入后收到GATE脈沖,計數器將在下一個CLK脈沖時裝入新的計數值并以這個計數值開始計數。否則,新的計數值將在現行半周期結束時裝入計數器。





1.2 PWM輸出的硬件設計  

本設計選用可編程定時器/計數器8254-2,其最高計數頻率可達10MHz;充分利用8254-2的3個定時器/計數器,采取頻率的分頻輸出,并且不需要外部的信號源輸入,硬件電路簡化;通過軟件的處理可以實現連續(1Hz~3kHz)PWM波的輸出。本設計中將要輸出的PWM波分為3段,分別由8254-2中的3個定時/計數器輸出,門控由P2.2、P2.3、P2.4分別加以控制。在1~20Hz的輸出時,采用定時器0,計數頻率為10 4Hz,最大計數為10 4,最小計數為500符合要求,21~200Hz的輸出中,采用定時器1,計數頻率為10 5Hz,最大計數為4762,最小計數為500;在201Hz~3kHz 的輸出中,采有定時器2,計數頻率為10 7Hz,最大計數為49 751,滿足二進制計數的范圍,最小計數為3333。這些計數值可由單片機89C51送給8254-2的數據輸入端,通過除法運算來得到這些計數值,由除法運算得到商。所得到的商去程序指令占用的時間即為所需要的計數值。采用8254-2的3個定時器的輸出經過1個或門作為CD4046鎖相環的輸入,同時經過1個非門進入89C51的INT1口,申請下降沿中斷;CD4046鎖相環輸出所需的PWM。  

為了防止程序進入死循環,增加了外部的硬件看門狗定時器IMP813L,其內部的看門狗定時器監控UP/UC的工作。如果在1.6s內未檢測到其工作,內部的定時器將使看門狗輸出WDO處于低電平狀態,WDO將保持低電平直到在WDI檢測到UP/UC的工作。將WR和WDO連接可使看門狗超時產生復位。  

具體硬件電路如圖3所示。  

2 軟件設計  

軟件主要由3部分組成:主程序、鍵盤掃描程序、中斷處理程序。主程序流程如圖4所示。  

主要地址分配如表1所列。

表1 地址分配  

30H~31H
顯示頻率的高、低8位

32H~34H
計數時鐘頻率的高、中、低8位

35H~36H
8254-2所需計數值的高、低8位

37H~38H
緩存顯示頻率的高、低8位(十六進制)

40H~43H
顯示緩存區地址(BCD數)

(1)中斷處理過程  

當89C51檢測到有INT1中斷時,進入中斷處理程序中,首先檢測30H和31H中的內容是否大于20;若不大于20,則門控為P2.2,選中8254-2,選擇計數器0、方式3、16位二進計數, 送上次計算出來的這次所需要的計數值給8254-2,將10 4送入32H、33H中作為除法運算中的被除數,而30H、31H的內容作為除法運算中的除數,調用除法運算子程序將所得的商送入32H、33H,余數放在35H、36H中。比較余數是否大于除數的一半,若大于除數的一半則所得的商加1,否則商不變放在32H、33H中。假設程序指令所占用的時間為X/200(其中X為中斷程序中單指令周期的個數),將32H、33H中的內容減去X/200,即為下次所要送入8254-2的計數值,放在35H、36H中,返回中斷;若大于20,則門控為P2.3,選中8254-2,選擇計數器1、方式3,送上次計算出來的這次所需的計數值給8254-2,將10 5送入32H、33H、34H中作為除法運算中的被除數,而30H、31H中的內容作為除法運算中的除數,調用除法運算子程序,將所得的商送入32H、33H中,余數放在35H、36H中。比較余數是否大于除數的一半,若大于除的一半則所得的商加1,否則商不變。假設程序指令所占用的時間為X/20,將32H、33H中的內容減去X/20即為下次所要送入8254-2的計數值,放在35H、36H中,返回中斷,若大于200,則門控為P2.4,選中8254-2,選擇計數器2、方式3、二進制計數,送上次計算出來的這次所需的計數值給8254-2,將10 7送入32H、33H、34H中作為除法運算中的被除數,而30H、31H中的內容作為除法運算中的除數,調用除法運算子程序,將所得的商送入32H、33H中,余數放在35H、36H.比較余數是否大于除數的一半,若大于除數的一半則所得的商加1,否則商不變入在32H、33H中。假設程序指令令所占用的時間為X*5,將32H、33H中的內容減去5X,即為下次所要送入8254-2的計數值,放在35H、36H中,返回中斷。



(2)設置軟件陷阱  

當程序進入到非程序區,只要在非程序區設置攔截措施,使程序進入陷阱,然后強迫程序回到初始狀態。如對CPU的RST指令對應的字節碼為0FFH,如果不用的程序存儲區預先寫入0FFH,則當程序因干擾而“飛”到該區域執行代碼時,就相當于執行1條RST指令,從而達到系統復位的目的。  

結束語  

采用89C51控制PWM分段,8254-2步進式輸出1Hz~3kHz的PWM,可以通過軟件編程的方法提高分辨率。在有些特殊場合只靠單片機內部的定時器或模擬電路無法精確輸出1Hz~3kHz,單步為1Hz的PWM波形時,此設計就顯出其明顯的優越性,而且它占用的CPU時間短。此設計的結構簡單、成本低、可靠性好、抗干擾能力強,可在控制和測量中得到應用。
本文地址:http://m.qingdxww.cn/thread-35977-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 你仿真過嗎?使用免費的MPLAB Mindi模擬仿真器降低設計風險
  • 更佳設計的解決方案——Microchip模擬開發生態系統
  • 貿澤電子(Mouser)專區

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩福利影院 | 污视频网站免费在线观看 | 精品亚洲欧美中文字幕在线看 | 亚洲成人精品 | 国产精品成人观看视频网站 | 日韩欧美中文字幕一区二区三区 | 免费三级毛片 | 鬼片大全恐怖片免费 | 91免费精品视频 | 亚洲国产欧美目韩成人综合 | 欧美性色欧美a在线观看 | 正在播放亚洲一区 | 日韩岛国大片 | 国产精品手机视频 | 欧美一级久久久久久久久大 | 色婷婷欧美 | 久久国产乱子伦精品免费不卡 | 精品国产不卡一区二区三区 | 上海一级毛片 | 欧美成人精品在线 | 四虎影院永久在线 | 欧美日韩一区二区三区高清不卡 | 手机在线视频成人 | 亚洲日本一区二区三区在线 | 日本强不卡在线观看 | 亚洲欧美日韩一区二区在线观看 | www.99在线| 亚洲第一永久色 | 欧美精品一区二区三区观 | 国产成人综合在线观看网站 | 欧美黄视频 | 全面回忆在线观看免费完整版高清 | 21天理论泰剧在线观看全集高清 | 91户外露出| 天堂在线视频观看 | 久国产视频 | 国产国语一级毛片 | 好吊色青青青国产在线观看 | 一级毛片一级毛片免费毛片 | 午夜精品一区二区三区在线视 | 天堂动漫|