Akiiiiilay 2023-03-13 08:32 采纳率: 100%
浏览 169
已结题

51循迹小车代码问题

51循迹小车,烧完没有反应,没有报错没有警告,麻烦帮忙看下代码


#include <REGX52.H>

sbit In1=P0^0;//L电机
sbit In2=P0^1;
sbit In3=P0^2;//R电机
sbit In4=P0^3;
sbit ENA1 = P1^3; //L使能
sbit ENB1 = P1^0; //R使能
sbit EL = P2^0;//L红外
sbit ER = P2 ^1;//R红外


unsigned char Jishu,Bijiao;

void Timer0Init()        //100微秒@11.0592MHz
{
    TMOD &= 0xF0;        //设置定时器模式
    TL0 = 0xA4;        //设置定时初值
    TH0 = 0xFF;        //设置定时初值
    TF0 = 0;        //清除TF0标志
    TR0 = 1;        //定时器0开始计时
    ET0 = 1;        //定时器0中断允许开关
    EA = 1;         //定时器总开关
    PT0 = 0;        //定时器0中断优先级
}
void  Timer0_T(unsigned char ABC) // 中断
{
    TMOD &= 0xF0;
    TMOD |= 0x01;
    Bijiao=ABC;
    Jishu++;
    if(Jishu>=100)
        Jishu = 0;
    if(Jishu<Bijiao)
    {
        ENA1=1;
        ENB1=1;
    }
    else
    {
        ENA1=0;
        ENB1=0;
    }
}
     

void car_go()
{
    In1=1;
    In2=0;
    In3=1;
    In4=0;
}
void car_L()
{
    In1=0;
    In2=1;
    In3=1;
    In4=0;
}
void car_R()
{
    In1=1;
    In2=0;
    In3=0;
    In4=1;
}

void Xunji()
{
    if(EL==1&&ER==1)
    {
        Timer0Init();
        Timer0_T(50);
        while(1)
        car_go();
    }
    else if(EL==0&&ER==0)
    {
        Timer0Init();
        Timer0_T(50);
        while(1)
        car_go();  
    }
    else if(EL==1&&ER==0)
    {
        Timer0Init();
        Timer0_T(20);
        while(1)
        car_R();
    }
    else if(EL==0&&ER==1)
    {
        Timer0Init();
        Timer0_T(20);
        while(1)
        car_L();   
    }
}
void main()
{
    while(1)
        Xunji();
}

  • 写回答

2条回答 默认 最新

  • 於黾 2023-03-13 08:38
    关注

    你这代码问题大了
    不管前面判断进哪个if,你后面都是死循环,再也不接受传感器信号了?
    主函数里有个死循环就行了,里面的死循环全删掉
    还有,使能信号你没有给,直接给电机,电机能动吗

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月21日
  • 已采纳回答 3月13日
  • 创建了问题 3月13日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装