智能小車的PWM鍵盤控制電機程序

2020-11-25 電子產品世界

這個是從一個製作成功的智能小車裡面提取出來的

本文引用地址:http://www.eepw.com.cn/article/201612/325018.htm

全部的製作資料下載:http://www.51hei.com/bbs/dpj-19526-1.html

下面是程序預覽:
#include
sbit P00=P0^0; //循跡口
sbit P01=P0^1;
sbit P02=P0^2;

sbit P04=P0^4; //電機1左輪
sbit P05=P0^5;

sbit P06=P0^6; //電機2
sbit P07=P0^7;
unsigned int i=0,j=0;
void main()
{
while(1)
{
P04=1;P05=1;P06=1; P07=1;
TMOD=0X01;
EA=1;
ET0=1;

if(P00==0&&P01==1&&P02==0) // 小車直走 定時0.002ms
{
TH0=0XFF; //定時0.01ms
TL0=0xFe;
TR0=1;
}
if(P00==0&&P01==0&&P02==1) //小車右轉定時0.005ms
{
TH0=0XFF;
TL0=0Xfb;
TR0=1;
}
if(P00==1&&P01==0&&P02==0) //小車左轉定時0.005ms
{
TH0=0XFF;
TL0=0XFb;
TR0=1;
}
if(P00==1&&P01==1&&P02==1) //全部檢測到黑線時 車停
{
TH0=0XFF;
TL0=0Xfb;
TR0=1; }
}
}

xiong() interrupt 1
{
if(P00==0&&P01==1&&P02==0) //小車直線快走 定時0.002ms
{
TH0=0XFF;
TL0=0xFe;

P04=0;//電機1左輪
P05=1;
P06=1; //電機2 右轉
P07=0;
}

if(P00==0&&P01==0&&P02==1) //小車右轉定時0.005ms
{

TH0=0XFF;
TL0=0Xfb;

P04=1;//電機1 左輪
P05=1;
P06=1; //電機2
P07=0;
i=1;
}
if(P00==0&&P01==0&&P02==0&&i==1) // 特別
{TH0=0XFF;
TL0=0Xfb;
P04=1;
P05=1;
P06=1;
P07=0;
j=0;
}

if(P00==1&&P01==0&&P02==0) //小車左轉定時0.005ms
{
TH0=0XFF;
TL0=0XFb;
P04=0;//電機1
P05=1;

P06=1; //電機2
P07=1;
j=1;
}
if(P00==0&&P01==0&&P02==0&&j==1) // 特別
{ TH0=0XFF;
TL0=0Xfb;
P04=0;
P05=1;
P06=1;
P07=1;
i=0;
}
if(P00==1&&P01==1&&P02==1)
{ //全部檢測到黑線時 車停
TH0=0XFF;
TL0=0Xfb;
P04=1;
P05=1;
P06=1;
P07=1;}
}


相關焦點

  • 單片機控制的步進電機PWM控制程序
    8051單片機控制步進電機的C51語言編寫的PWM控制程序#include #include >#include #include "UPSD3200.H"#include "upsd_pwm.h"#define uint unsigned int#define uchar unsigned charPSD_REGS PSD8xx_reg _at_ csiop;#define KEYIO (~(PSD8xx_reg.DATAIN_A
  • 51單片機循跡小車電機驅動程序PWM
    這個是從一個製作成功的循跡小車裡面提取出來的本文引用地址:http://www.eepw.com.cn/article/201612/325006.htm原理圖及其原始碼壓縮包的下載地址:http://www.51hei.com/bbs/dpj-19526-1.html下面是主要的程序文件預覽:#include//快速 跑的sbit P00=P0^0
  • PWM控制MOSFET搭建的H橋電路驅動直流電機仿真與單片機源碼
    PIC單片機 proteus H橋驅動直流電機PWM控制MOSFET搭建的H橋電路驅動直流電機運行仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)H橋電路(MOSFET)驅動直流電機運行//-----------------------------------------------------------------//  說明: 本例使用PIC16F690的增強型PWM模塊(P1A,P1B,P1C,P1D)實現對直流//        電機運行控制,包括運行/停止/正反轉及速度調節.
  • 直流電機的PWM速度控制程序
    * =======直流電機的PWM速度控制程序======== */ /*晶振採用11.0592M,產生的PWM的頻率約為91Hz */ #include #include #define uchar unsigned char #define uint unsigned int
  • 步進電機控制程序(c語言+51單片機)
    uint delay_time) { uint i; for (i=0; i delay_time ; i++) ; }void run ();void fx_run();uint round_num = 0; /* 記錄已轉的 齒輪數 , 中斷1次 加 1*/uint set_round_num = 0; /* 播碼盤設置 圈數 */uint set_pwm_width
  • 通過51單片機來控制直流電機
    還是那句話 程序別光是複製粘貼 要一句句看懂 看出核心的那一段代碼是怎麼利用單片機加上一個晶片來控制電機的為以後自己寫其他驅動程序打基礎 );----------------------------------------------;名稱:51單片機來控制直流電機 ;主頻 6M晶震 51系列單片機;編譯環境:keil c51
  • 51單片機PWM控制電機
    電機種類眾多,就屬控制直流電機最簡單,只要對調正負極就能改變電機的轉向。另外,直流電機負載能力強,適合做越野車的驅動電機。為了做可調速的越野車,就有了這篇文章。 電源電壓輸出是固定的,電機的轉速也因此是固定的,為了調節電機的轉速,就得改變電源電壓的輸出(為嘛要改變電機轉速?舉個簡單的列子,雙電機驅動小車-一邊一個電機-如何實現轉向?
  • 基於Atmega128的智能教學無人車控制系統設計
    摘要:針對市場上大多數教學無人車設計採用單片機單一控制導致其功能擴展性弱、靈活度低等問題,設計了一種基於Atmega128單片機和無線通信的智能教學無人車控制系統,該系統包括PC機控制部分和無人車控制部分,通過PC控制端軟體可以經無線通信模塊實現對無人車的準確運動控制。
  • 十個中文例程教會你輕鬆上手製作Arduino智能小車
    小車採用大電流MOSFET做的電機驅動驅動電機,用Atmega328單片機作為主控,讀取航模遙控器(天六A 2.4G)的PWM信號,然後電機驅動板,轉向舵機直接接到航模遙控器的橫滾通道控制轉向,用天六的第5通道(開關通道)選擇前進還是後退4、基於Arduino的盒子遙控機器人
  • 智慧機器人迷宮車控制系統設計方案
    然而,功能較完備的路徑跟蹤控制方法普遍具有計算複雜,不易實現等特點。主要針對移動機器人即智能小車的行走系統進行設計,以MCS-51單片機為控制核心的智能小車利用單光束反射取樣紅外傳感器,探測正前方及左右兩側障礙物,利用控制算法尋找行進路線,在無人控制的情況下自主地走出迷宮。
  • 基於ARM和Linux的路徑記憶循跡小車
    摘要:針對智能小車在實際應用中的需要,設計了一種基於ARM和Linux的具有路徑記憶循跡功能的智能小車。利用ARM和Linux作業系統,實現了對智能小車的超聲波避障模塊、電機等的控制。
  • 用單片機控制直流電機
    本設計以AT89C51單片機為核心,以4*4矩陣鍵盤做為輸入達到控制直流電機的啟停、速度和方向在設計中,採用了PWM技術對電機進行控制,通過對佔空比的計算達到精確調速的目的。
  • 單片機控制步進電機的正反轉
    呵呵,這次弄這個程序用了我兩年的時間,終於把我們正反轉程序寫成功並調試成功了,新年收到很多朋友給我的賀卡和祝福,不過,我覺得今天這個程序也是送給自己最好的禮物吧,學單片機真的有時候會很痛苦,一個程序當你怎麼編也編不出來的時候,有時候真的讓你夠難受的,失敗的那種感覺,也許只有學單片機的朋友才能夠體會得了,但是當一個程序編了好久,
  • 無刷直流風扇電機180度正弦波控制
    與鼠籠型感應電動機相比,其結構的簡單程度和運行的可靠性大體相當,但由於沒有勵磁鐵耗和銅耗,功率在300W以下時,其效率比同規格的交流電機高 10%~20%。  無刷直流電機一般採用方波驅動,採用霍爾傳感器採樣轉子位置,以此為基準信號控制繞組強制換相。這種方案控制方法簡單,成本低,在目前電動車方案中應用廣泛。
  • 實用的 28BYJ-48 步進電機控制程序
    上面我們雖然完成了用中斷控制電機轉動的程序,但實際上這個程序還是沒多少實用價值的,我們不能每次想讓它轉動的時候都上下電啊,是吧。還有就是它不但能正轉還得能反轉啊,也就是說不但能轉過去,還得能轉回來呀。
  • 脈衝寬度調製(PWM)器件的測試(圖)
    隨著半導體技術的發展,開關電源控制所需的集成開關穩壓器控制晶片應運而生,這就是脈衝寬度調製(pwm)器件,而且功能不斷完善,性能不斷提高,而外接元件卻越來越少,這使得開關電源的設計大大簡化,同時性能逐步提高,促進了開關電源的發展。用pwm器件設計的開關電源以其體積小、重量輕、效率高、可靠性好等顯著優勢在民用和軍用電子產品中發揮著日益重要的作用。
  • 無線智能小車控制系統
    概要:本系統由上位機控制軟體,無線串口收發模塊,子機控制主板,子機機械執行部分等構成。通過MSComm控制項來發送和接收串口數據,通過對子機發來數據的處理或由人控制作出決策,然後再通過串口發送出去。例程:手動控制小車運動的簡易程序:DimxAsIntegerDimsAsStringPrivateSubForm_Keydown(KeyCodeAsInteger,ShiftAsInteger)Ifs>Chr(KeyCode)ThenMSComm1。
  • 智能車速度控制pid(電機閉環控制算法)
    智能車電機閉環控制算法對於智能車的電機閉環控制算法,我之所以標題沒有寫上「智能車電機PID閉環控制算法」是因為PID 算法根本就不是特別好的適用於智能車這種變化很快的系統,對於智能車,電機的調速可以說是時時刻刻再進行調速控制的,我
  • 步進電機控制晶片UDN2916LB原理及應用
    udn2916lb是sanken公司推出的一款兩相步進電機雙極驅動集成電路,能夠驅動雙繞組雙極步進電機,特別適用於目前國內稅控市場雙步進微型印表機電機的控制。
  • 單極性PWM技術在雷達天線控制中的應用
    雷達天線控制系統一般採用脈衝寬度調製(PWM)技術實現電機調速,由功率電晶體組成的H橋功率轉換電路常用於拖動伺服電機。根據在一個開關周期內,電樞兩端所作用的電壓極性的不同分為雙極性和單極性模式PWM。 雙極性PWM功率轉換器中,同側的上、下橋臂控制信號是相反的PWM信號;而不同側之間上、下橋臂的控制信號相同。