找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 823|回复: 1
打印 上一主题 下一主题
收起左侧

51单片机智能小车《各方位简单动作》

[复制链接]
跳转到指定楼层
楼主
ID:856261 发表于 2020-12-7 20:42 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//P1.0~P1.7分别对应小车1N1~1N8。
#include <REGX52.H>          //头文件
#define uint unsigned int  //宏定义
#define uchar unsigned char
#define left_moto_go   {P1_0=1,P1_1=0,P1_2=1,P1_3=0;}         //小车方位定义
#define left_moto_back {P1_0=0,P1_1=1,P1_2=0,P1_3=1;}
#define left_moto_stop {P1_0=0,P1_1=0,P1_2=0,P1_3=0;}
#define right_moto_go    {P1_4=1,P1_5=0,P1_6=1,P1_7=0;}
#define right_moto_back  {P1_4=0,P1_5=1,P1_6=0,P1_7=1;}
#define right_moto_stop  {P1_4=0,P1_5=0,P1_6=0,P1_7=0;}

//延时
void delay_ms(uint a)  //1ms
{
     uint x,y;
         for(x=0;x<a;x++)
         for(y=0;y<115;y++)
         ;
}
//小车前进
void  go(void)
{
        left_moto_go ;
        right_moto_go ;
}
//小车后退
void  back(void)
{
        left_moto_back ;
        right_moto_back ;
}
//小车停止
void  stop(void)
{
        left_moto_stop;
        right_moto_stop;
}
//小车左转
void  left(void)
{
        left_moto_stop;
        right_moto_go ;
}
//小车右转
void  right(void)
{
        left_moto_go ;
        right_moto_stop ;
}
//主函数
void  main()
{
while(1)

          go();
          delay_ms(500);
          right();
         delay_ms(500);
         stop();
          delay_ms(500);
          left();
         delay_ms(500);
         back();
   }
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:856261 发表于 2020-12-7 20:43 来自手机 | 只看该作者
萌新求带求指导
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表