www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]摘要:介紹一種新型PWM輸出的方式。它是用89C51作為主控部分,用8254-2可編程定時(shí)器/計(jì)數(shù)器來(lái)實(shí)現(xiàn)1Hz~3kHz步進(jìn)式PWM的輸出;具有分辨率高、反應(yīng)速度快及占用CPU時(shí)間少的優(yōu)點(diǎn)。

    摘要:介紹一種新型PWM輸出的方式。它是用89C51作為主控部分,用8254-2可編程定時(shí)器/計(jì)數(shù)器來(lái)實(shí)現(xiàn)1Hz~3kHz步進(jìn)式PWM的輸出;具有分辨率高、反應(yīng)速度快及占用CPU時(shí)間少的優(yōu)點(diǎn)。

    關(guān)鍵詞:8254-2 89C51 脈寬調(diào)制(PWM) 分辨率

引言

脈寬調(diào)制(PWM)技術(shù)最初是在無(wú)線電技術(shù)中用于信號(hào)的調(diào)制,后來(lái)在電機(jī)調(diào)速中得到了很好的應(yīng)用。本設(shè)計(jì)中要求輸出PWM從1Hz~3kHz步進(jìn)式遞增,單步為1Hz。由于89C51的時(shí)鐘最大能取24MHz,單指令周期為0.5μs,計(jì)數(shù)頻率為×10 6Hz。當(dāng)輸出2999Hz和3000Hz時(shí),若采用89C51內(nèi)部計(jì)數(shù)器來(lái)計(jì)數(shù),根本無(wú)法區(qū)別。因?yàn)橛?jì)數(shù)頻率為2MHz,單指令周期0.5μs,而要輸出2999Hz時(shí),計(jì)數(shù)應(yīng)為666.889;輸出3000Hz時(shí),計(jì)數(shù)誚為666.887。因此在本設(shè)計(jì)中,采用外部定時(shí)器/計(jì)數(shù)器8254-2。因?yàn)?254-2最高計(jì)數(shù)頻率可達(dá)10MHz,能滿足以上設(shè)計(jì)的要求,另外采用8254-2的工作方式3可輸出方波。當(dāng)定時(shí)器/計(jì)數(shù)器8254-2以方式3工作時(shí),在計(jì)數(shù)的過(guò)程中輸出有一半時(shí)間為高,另一半時(shí)間為低。所以,若計(jì)數(shù)值為N,則其輸出在前N/2時(shí)可輸出高電平,后N/2時(shí)可輸出低電平,不需要用軟件來(lái)控制高低電平的轉(zhuǎn)換,但8254-2計(jì)數(shù)范圍有一定的限制,在采用二進(jìn)制計(jì)數(shù)時(shí),范圍為0000~9999,最大計(jì)數(shù)為10 000。此外,為了使分辨率達(dá)到要求,還需要考慮程序指令所占用的時(shí)間,尤其是在輸出高頻時(shí),分辨率尤為重要。

1 硬件設(shè)計(jì)

1.1 8254可編程定時(shí)器/計(jì)數(shù)器[1]簡(jiǎn)介

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

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

本設(shè)計(jì)選擇8254-2的方式3工作。方式3是一種方波速率發(fā)生器。在這種方式中,當(dāng)CPU設(shè)置控制字后,輸出將為高,在寫(xiě)完計(jì)數(shù)值后就自動(dòng)開(kāi)始計(jì)數(shù),輸出保持為高;當(dāng)計(jì)數(shù)到一半計(jì)數(shù)值時(shí),輸出變?yōu)榈?,直至?jì)數(shù)到0,輸出又變高,重新開(kāi)始計(jì)數(shù)。若在計(jì)數(shù)期間寫(xiě)入個(gè)新的計(jì)數(shù)值,并不影響現(xiàn)行的計(jì)數(shù)過(guò)程。但是若在方波半周期結(jié)束前和新計(jì)數(shù)值寫(xiě)入后收到GATE脈沖,計(jì)數(shù)器將在下一個(gè)CLK脈沖時(shí)裝入新的計(jì)數(shù)值并以這個(gè)計(jì)數(shù)值開(kāi)始計(jì)數(shù)。否則,新的計(jì)數(shù)值將在現(xiàn)行半周期結(jié)束時(shí)裝入計(jì)數(shù)器。

    1.2 PWM輸出的硬件設(shè)計(jì)

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

為了防止程序進(jìn)入死循環(huán),增加了外部的硬件看門(mén)狗定時(shí)器IMP813L[3],其內(nèi)部的看門(mén)狗定時(shí)器監(jiān)控UP/UC的工作。如果在1.6s內(nèi)未檢測(cè)到其工作,內(nèi)部的定時(shí)器將使看門(mén)狗輸出WDO處于低電平狀態(tài),WDO將保持低電平直到在WDI檢測(cè)到UP/UC的工作。將WR和WDO連接可使看門(mén)狗超時(shí)產(chǎn)生復(fù)位。

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

2 軟件設(shè)計(jì)

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

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

表1 地址分配

30H~31H 顯示頻率的高、低8位
32H~34H 計(jì)數(shù)時(shí)鐘頻率的高、中、低8位
35H~36H 8254-2所需計(jì)數(shù)值的高、低8位
37H~38H 緩存顯示頻率的高、低8位(十六進(jìn)制)
40H~43H 顯示緩存區(qū)地址(BCD數(shù))

(1)中斷處理過(guò)程

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

(2)設(shè)置軟件陷阱

當(dāng)程序進(jìn)入到非程序區(qū),只要在非程序區(qū)設(shè)置攔截措施,使程序進(jìn)入陷阱,然后強(qiáng)迫程序回到初始狀態(tài)。如對(duì)CPU的RST指令對(duì)應(yīng)的字節(jié)碼為0FFH,如果不用的程序存儲(chǔ)區(qū)預(yù)先寫(xiě)入0FFH,則當(dāng)程序因干擾而“飛”到該區(qū)域執(zhí)行代碼時(shí),就相當(dāng)于執(zhí)行1條RST指令,從而達(dá)到系統(tǒng)復(fù)位的目的。

結(jié)束語(yǔ)

采用89C51控制PWM分段,8254-2步進(jìn)式輸出1Hz~3kHz的PWM,可以通過(guò)軟件編程的方法提高分辨率。在有些特殊場(chǎng)合只靠單片機(jī)內(nèi)部的定時(shí)器或模擬電路無(wú)法精確輸出1Hz~3kHz,單步為1Hz的PWM波形時(shí),此設(shè)計(jì)就顯出其明顯的優(yōu)越性,而且它占用的CPU時(shí)間短。此設(shè)計(jì)的結(jié)構(gòu)簡(jiǎn)單、成本低、可靠性好、抗干擾能力強(qiáng),可在控制和測(cè)量中得到應(yīng)用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

柏林2025年9月9日 /美通社/ -- 2025年9月5日,納斯達(dá)克上市公司優(yōu)克聯(lián)集團(tuán)(NASDAQ: UCL)旗下全球互聯(lián)品牌GlocalMe,正式亮相柏林國(guó)際消費(fèi)電子展(IFA 2025),重磅推出融合企...

關(guān)鍵字: LOCAL LM BSP 移動(dòng)網(wǎng)絡(luò)

深圳2025年9月9日 /美通社/ -- PART 01活動(dòng)背景 當(dāng)技術(shù)的鋒芒刺穿行業(yè)壁壘,萬(wàn)物互聯(lián)的生態(tài)正重塑產(chǎn)業(yè)疆域。2025年,物聯(lián)網(wǎng)產(chǎn)業(yè)邁入?"破界創(chuàng)造"與"共生進(jìn)化"?的裂變時(shí)代——AI大模型消融感知邊界,...

關(guān)鍵字: BSP 模型 微信 AIOT

"出海無(wú)界 商機(jī)無(wú)限"助力企業(yè)構(gòu)建全球競(jìng)爭(zhēng)力 深圳2025年9月9日 /美通社/ -- 2025年8月28日, 由領(lǐng)先商業(yè)管理媒體世界經(jīng)理人攜手環(huán)球資源聯(lián)合主辦、深圳?前海出海e站通協(xié)辦的...

關(guān)鍵字: 解碼 供應(yīng)鏈 AI BSP

柏林2025年9月9日 /美通社/ -- 柏林當(dāng)?shù)貢r(shí)間9月6日,在2025德國(guó)柏林國(guó)際電子消費(fèi)品展覽會(huì)(International Funkausstellung...

關(guān)鍵字: 掃地機(jī)器人 耳機(jī) PEN BSP

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠(yuǎn)通信宣布,其自研藍(lán)牙協(xié)議棧DynaBlue率先通過(guò)藍(lán)牙技術(shù)聯(lián)盟(SIG)BQB 6.1標(biāo)準(zhǔn)認(rèn)證。作為移遠(yuǎn)深耕短距離通信...

關(guān)鍵字: 藍(lán)牙協(xié)議棧 移遠(yuǎn)通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實(shí)黨中央、國(guó)務(wù)院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務(wù)業(yè)的決策部署,更好發(fā)揮人力資源服務(wù)業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來(lái)&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達(dá)成合作,為其自主研發(fā)的"旗馭車管"車輛運(yùn)營(yíng)管理平臺(tái)提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺(tái)對(duì)百余家企業(yè)客戶的運(yùn)營(yíng)管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟(jì)和信息化委員會(huì)、上海市發(fā)展和改革委員會(huì)、上海市商務(wù)委員會(huì)、上海市教育委員會(huì)、上海市科學(xué)技術(shù)委員會(huì)指導(dǎo),東浩蘭生(集團(tuán))有限公司主辦,東浩蘭生會(huì)展集團(tuán)上海工業(yè)商務(wù)展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動(dòng)駕駛
關(guān)閉