專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命
提供開發(fā)工具、應(yīng)用測試 完善的開發(fā)代碼案例庫分享
從全面的產(chǎn)品導(dǎo)入到強大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無限潛能!
提供新的芯片及解決方案,提升客戶產(chǎn)品競爭力
提供最新的單片機資訊,行業(yè)消息以及公司新聞動態(tài)
在許多對精度和安全生產(chǎn)有重要要求應(yīng)用中,控制直流電動機的運轉(zhuǎn)速度非常重要。比如無人機等,有什么基于單片機控制電機轉(zhuǎn)速又比較節(jié)電的方法?在本文中,英銳恩單片機開發(fā)工程師們將使用一種稱為PWM(脈沖寬度調(diào)制)的技術(shù)來控制直流電動機的速度。
該方案使用8051單片機作為開發(fā)用MCU,如果你曾經(jīng)使用過8051單片機,那么你可能會記得8051單片機并沒有專用的PWM電路來啟用PWM模式。因此,為了生成PWM信號,我們得額外使用定時器,并使用定時器將I/O引腳切換為ON和OFF。
一、如何在8051單片機中生成PWM?
大多數(shù)目前市場上的單片機,例如AVR(例如Arduino)、ARM、PIC等,都有專用的PWM硬件和引腳來立即激活PWM模式。但是,8051單片機并沒有。那么,如何在8051單片機中產(chǎn)生PWM?
為此,必須使用8051單片機中的定時器和中斷。8051的Timer0在模式0中配置。通過仔細調(diào)整高電平和低電平,我們可以保持恒定的信號周期。
二、所需的電路元件
(1)一顆8051單片機;
(2)一顆11.0592MHz晶振;
(3)電容器33pFx2、10uF;
(4)電阻1KΩx4,10KΩx2;
(5)12V直流電動機;
(6)L298N電機驅(qū)動器;
(7)按鈕x5;
(8)1KΩx8上拉電阻器套件;
(9)串口線若干;
(10)12V電池或適配器;
(11)連接線若干。
三、基于單片機開發(fā)的控制電動機運轉(zhuǎn)速度的方法
該電路包括一顆8051單片機(及其與振蕩器和復(fù)位有關(guān)的支持電路),L298N電動機驅(qū)動器模塊,一個直流電動機和一些按鈕。
L298N電動機驅(qū)動器模塊的OUT1和OUT2引腳連接了12V直流電動機。電機驅(qū)動器的IN1和IN2引腳連接到+5V(VCC)和GND。電機驅(qū)動器的EN1引腳連接到Port0引腳P0.0。
如上圖,四個按鈕連接到Port0引腳P0.4,P0.5,P0.6和P0.7。
通常,我們可以通過兩種配置將開關(guān)連接到單片機:一種是上拉配置,另一種是下拉配置。
(1)上拉配置:在上拉配置中,單片機引腳被拉高至LOGIC1,且按鈕連接至GND。按下按鈕時,單片機引腳接收邏輯0
(2)下拉配置:在下拉配置中,單片機引腳下拉至LOGIC0,按鈕連接至VCC。當按下按鈕時,單片機引腳接收到邏輯1。
在該電路中,我們使用上拉配置。因此,我們需要檢查邏輯0才能知道按鈕是否被按下。
四、如何操作電路?
1.將12V電池或適配器連接到開發(fā)板上。
2.接通電源。
3.將十六進制文件燒錄到8051單片機。
4.按照電路圖進行必要的連接。
5.打開電源,然后按開關(guān)1。你可以觀察到啟動器旋轉(zhuǎn),但容量只有40%。
6.如果按開關(guān)2,則電動機的運行速度略大于速度的一半(占空比為60%)。
7.按下開關(guān)3將使電動機全速旋轉(zhuǎn)(占空比為100%)。
8.要停止電動機,請按開關(guān)4。
以上就是英銳恩單片機開發(fā)工程師分享的基于單片機開發(fā)的控制電動機運轉(zhuǎn)速度的方法。