標(biāo)題: 基于單片機(jī)+L298智能小車設(shè)計(jì),含Proteus仿真和源程序 [打印本頁]

作者: sxx1    時間: 2018-11-16 22:04
標(biāo)題: 基于單片機(jī)+L298智能小車設(shè)計(jì),含Proteus仿真和源程序
說明  小車運(yùn)動通過獨(dú)立按鍵控制,通過按鍵調(diào)節(jié)不同車輪的速度,從而實(shí)現(xiàn)左轉(zhuǎn)或右轉(zhuǎn),L298驅(qū)動電機(jī)

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


#include <reg51.h>
#define uchar unsigned char
sbit IN1        =        P2^0;
sbit IN2        =        P2^1;
sbit IN3        =        P2^2;
sbit IN4        =        P2^3;
sbit ENA        =        P2^4;
sbit ENB        =        P2^5;
sbit LeftUp                 = P1^0;
sbit LeftDown  = P1^1;
sbit RightUp   = P1^2;
sbit RightDown = P1^3;
//**×óóòÂÖ×óËù¶èμ÷½ú±äá¿
uchar numL,numR;
//***********************
void init_time()
{
        TMOD=0X01;
        TH0=(65536-500)/256;
        TL0=(65536-500)%256;
        EA=1;
        ET0=1;
        TR0=1;
}
void time0() interrupt 1 using 1
{
        static uchar num;
        num++;
        if(num==numR) ENB=~ENB;
        if(num==numL)        ENA=~ENA;        
        if(num==100){ENA=~ENA;ENB=~ENB;num=0;}
        TH0=(65536-500)/256;
        TL0=(65536-500)%256;        
}
void main()
{
        numL=70;numR=20;
        ENA=ENB=1;
        IN1=IN3=1;IN2=IN4=0;
  init_time();
  while(1)
        {
                if(!LeftUp)                {        while(!LeftUp);                numL+=5;        
                                                                                if(numL>100)numL=0;}
                if(!LeftDown)        {        while(!LeftDown);        numL-=5;        
                                                                                if(numL>100)numL=0;}
                if(!RightUp)        {        while(!RightUp);        numR+=5;        
                                                                                if(numR>100)numR=0;}
                if(!RightDown){        while(!RightDown);numR-=5;        
                                                                                if(numR>100)numR=0;}
        }
}

全部資料51hei下載地址:
控制小車的運(yùn)動.zip (124.18 KB, 下載次數(shù): 218)



作者: 51hei_lion    時間: 2020-11-5 11:04
這個資源非常好,準(zhǔn)備下載認(rèn)真學(xué)習(xí)一下
作者: 54cyt    時間: 2021-6-30 23:53
樓主能解釋下這段嗎void main() {         numL=70;numR=20;         ENA=ENB=1;         IN1=IN3=1;IN2=IN4=0;
作者: 54cyt    時間: 2021-6-30 23:53
樓主能解釋下這段嗎void main()
{
        numL=70;numR=20;
        ENA=ENB=1;
        IN1=IN3=1;IN2=IN4=0;
作者: ycs89554171    時間: 2021-10-14 14:20
準(zhǔn)備下載認(rèn)真學(xué)習(xí)一下
作者: 陌上花開啊    時間: 2022-3-26 15:52
請問樓主能解釋一下程序各個含義嗎?初學(xué)者不太懂




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1