历史上的今天
返回首页

历史上的今天

今天是:2024年12月03日(星期二)

正在发生

2019年12月03日 | 新手必看(STC89C52)单片机寻迹避障蓝牙四轮小车的简单实现

2019-12-03 来源:51hei

一、关于材料的选择           

1.L289驱动电机x2

2.1.5V电池(可以买充电电池,我用了几十个电池了!!!)我是用8节1.5v构成12v电池单独给4个电机供电,另外3节1.5v给单片机供电,4.5v与           5v差不多。

3.底板加4马达(电机)。

4.有条件可以用电钻(我是在各个店单独购买的,所以底板孔与器件孔不搭配,自己钻的)

5.若干杜邦线,公对公 母对母 公对母都买X3应该足够了,最短就好了不需要那么长,但是有钱可以买X1

6.淘宝上的板子STC89C52,有各种现成的接口,适合新手学习,学习过后可以自己焊板子。

7.4个红外避障模块,2个寻迹模块,一个蓝牙模块。

8.手机商城下个蓝牙串口来操作控制。


二、关于环境

1.我用的 keil4 (能够编译查看代码是否正确。)

2.下载stc-isp来烧程序(先断单片机电 然后烧 再开电,不然烧不起吧。)

3.烧的程序名后缀是.Hex。

4.usb-单片机线一根,我的是淘宝送的。


三、关于一些细节

1.我用的是H桥来控制电机,比较普遍。

2.因为我的小车电机是单独供电的,所以地线(12v的负极)要接在单片机的地线接口上!!

3.杜邦线与线接口要处理好确保通电。


四、部分代码

sbit IN2 = P0^1;

sbit IN3 = P0^2;

sbit IN4 = P0^3;

sbit IN5 = P0^4;

sbit IN6 = P0^5;

sbit IN7 = P0^6;

sbit IN8 = P0^7;

                   


sbit Left_bizhang = P3^0;

sbit Right_bizhang = P3^1;

sbit Left_led=P3^2;

sbit Right_led=P3^3;


unsigned char pwm_val =0;

unsigned char push_val =0;


void delay(unsigned int k)

{

      unsigned int x,y;

          for(x=0;x          {

             for(y=0;y<2000;y++);

           }

}


void run(void)

{

      push_val=3;

IN1=0; 

IN2=1;        

IN3=0; 

IN4=1; 

IN5=1;        

IN6=0;

IN7=1;

IN8=0;        

}


void backrun(void)

{

IN1=1;

IN2=0;

IN3=1;

IN4=0;

IN5=0;

IN6=1;

IN7=0;

IN8=1;

}


void leftrun(void)

{

      IN1=0;

IN2=0;

IN3=1;

IN4=0;

IN5=0;

IN6=1;

IN7=0;

IN8=0;

}

void rightrun(void)

{

     IN1=1;

IN2=0;

IN3=0;

IN4=0;

IN5=0;

IN6=0;

IN7=0;

IN8=1;

}

void stop(void)

{

IN1=0;

IN2=0;

IN3=0;

IN4=0;

IN5=0;

IN6=0;

IN7=0;

IN8=0;

}

void Che_init()

{

      P1=0x00;

          TMOD=0x01;

          TH0=0xFC;

          TH0=0x18;

          TR0=1;

          EA=1;

}

void UART_INIT()

{

        SM0 = 0;

        SM1 = 1;//串口工作方式1

        REN = 1;//允许串口接收

        EA = 1;//开总中断

        ES = 1;//开串口中断

        TMOD = 0x20;//8位自动重装模式

        TH1 = 0xfd;

        TL1 = 0xfd;//9600波特率

        TR1 = 1;//启动定时器1

}


void xunji(){


       while(1){

                        if(Left_led==1&&Right_led==1)

                {

                        ET0=1;

                        run();

                }

                else

                {

                        if(Left_led==0&&Right_led==1)

                        {

                                    IN1=0;

                                        

IN2=0;

IN3=0;

IN4=1;

IN5=1;

IN6=0;

IN7=0;

IN8=0;

                        }

                        if(Right_led==0&&Left_led==1)

                        {

                        

                                     IN1=0;

IN2=1;

IN3=0;

IN4=0;

IN5=0;

IN6=0;

IN7=1;

IN8=0;

                        }

                        

                }

                }

}

void bizhang(){


                  while(1)

        {

                run();

                

                 if(Left_bizhang==1&&Right_bizhang==1)

                 {

                         run();


                 }

                 else


                 {

                         if(Left_bizhang==1&&Right_bizhang==0)

                         {


                                 backrun();

                                 delay(50);

                                 leftrun();

                                delay(100);

                         }

                         if(Left_bizhang==0&&Right_bizhang==1)

                         {

                                 backrun();

                                 delay(50);

                                 rightrun();

                                delay(100);

                         }

                 }

        

        }

}


推荐阅读

史海拾趣

芯佰微(Corebai)公司的发展小趣事

随着技术的不断发展,芯佰微逐步拓展了自己的产品线,覆盖了放大器、接口电路、电源管理、时间数字转换器、DAC数模转换、ADC模数转换等多个领域。同时,公司积极开拓国内外市场,与众多知名企业建立了合作关系,将产品广泛应用于手持移动终端、消费类电子产品、个人电脑及周边设备、网络通信设备、医疗设备、办公设备等多个领域。这些努力使得芯佰微的产品在市场上获得了广泛认可。

Data Device Corporation公司的发展小趣事

在电子行业中,竞争日益激烈,DDC也面临着诸多挑战。然而,DDC始终保持着清醒的头脑和坚定的信念,积极应对挑战并寻找机遇。通过不断优化产品结构、提高生产效率、降低成本等措施,DDC不断提高自身的竞争力。同时,DDC还积极关注行业发展趋势和市场变化,及时调整战略方向,确保公司能够在激烈的竞争中立于不败之地。

请注意,这些故事是基于DDC公司的发展历程和事实进行的概述,具体的细节和情节可能需要根据实际情况进行补充和调整。

DEVCON公司的发展小趣事

在竞争激烈的电子行业中,提供优质的服务是赢得客户信任的关键。DEVCON公司深知这一点,因此不断创新服务模式,提升服务质量。公司建立了完善的售后服务体系,为客户提供及时、专业的技术支持和解决方案。同时,公司还积极开展培训活动,提升员工的技能水平和服务意识。这些创新举措赢得了客户的广泛赞誉和信赖,为DEVCON公司的稳定发展提供了有力保障。

FEMA Electronics Corporation公司的发展小趣事

FEMA始终将产品质量视为企业的生命线。为了确保产品质量的稳定可靠,公司建立了一套完善的质量管理体系,并引进了先进的生产设备和技术。同时,FEMA还注重员工的培训和素质提升,确保每一个生产环节都能达到最高的质量标准。正是凭借这种对品质的执着追求,FEMA的产品在市场上赢得了良好的口碑和声誉,逐渐成为了行业内的知名品牌。

蜂鸟无线公司的发展小趣事
PWM调速电路可以与微控制器等集成电路结合,实现电动机转速的自动化控制,提高系统的智能化水平。
FutureWafer公司的发展小趣事

Heyco非常重视与合作伙伴的关系建设。2021年,Heyco将年度全球最佳分销商称号授予了电子元器件分销商贸泽电子,以表彰其在过去一年中不懈的努力和出色的销售业绩。这一奖项的颁发不仅体现了Heyco对贸泽电子的高度认可,也展示了双方之间深入、愉快的合作关系。通过与贸泽电子等优秀分销商的紧密合作,Heyco能够更好地服务全球客户,满足其多样化的需求。

问答坊 | AI 解惑

请问谁有labview8.2的安装软件啊?

如题,请问谁有labview8.2的安装软件啊?我刚开始学,网上看到的下载网址都打不开,谁有的给我共享一下,谢谢。…

查看全部问答>

招募精英

本公司现招募以下职位,有意者请将个人简历发往 qianleicherry@hotmail.com 软件工程师 职位描述: 1、负责IPTV/DVB驱动软件开发 2、负责IPTV/DVB相关中间件集成 3、负责IPTV/DVB样机调试和测试 4、负责软件相关文档编写 职位要求: 1、本 ...…

查看全部问答>

求 Windows Driver Model 的源代码

Windows Driver Model 的源代码 站内有这个资源,但是我这边下不动,谁发一份到我的邮箱ch609@163.com,谢谢先 …

查看全部问答>

sd驱动问题求解~

我的系统和平台是wince5.0 + 2416 问题:在进入wince的设备里面后,插入sd卡,系统下很快就会显示出sd的盘符,sd的访问也很正常,可是在拔除sd卡的时候,sd卡的盘符要5~6秒才能消失,不知道这个是什么原因。 希望有经验的xdjm们赐教!…

查看全部问答>

空调语音解决方案

本帖最后由 jameswangsynnex 于 2015-3-3 19:58 编辑 空调语音解决方案 空调是我们每个人都不可缺少的生活用品,在竞争激烈的今天,怎样做出一款更适应市场的好空调,则是每个厂商苦恼的问题,更新和创新是一个企业发展和生存的源泉动力,市面 ...…

查看全部问答>

stm32f103+ucosII2.88运行一段时间后死机

最近在stm32f103VE上跑官方移植的ucosII2.88 ,刚开始运行的时候,系统一切正常,各个任务正常调度,大概可以持续5~7小时。但是>14小时连续运行之后,系统就不正常了,现象是:各个中断可以正常进入(通过观察led),但是有些任务已经不运行了 ...…

查看全部问答>

107USB OTG硬件问题

我的107 USB OTG自己开发的,请问各位硬件电路需要什么特别注意的地方吗?板子已经开回来了,USB的V_Bus供电没问题,但是D+,D-,还有ID上面的电压依次是3.7V,1.7V,1.7V,理论上正确的电压好像不是这样的,我打了其他正常的电压,D+,D-,ID上的电 ...…

查看全部问答>

《MSP430系列常用模块应用原理》 入门不难

买板送的资料,里面详细介绍寄存器的每位,类似于51,avr和stm32的资料,配合149的中文头文件看,入门不难。请看下面几行,有个印象再看配合看电子书和149的中文头文件。   int main(void) {       WDTCTL = WDT ...…

查看全部问答>

请教各位一个问题,关于放大电路的Q点

请看图片,我问的问题跟差分放大没什么关系了,我是看到这里才想到了这个问题。主要问题是关于戴维南定理等效出来的Vcc’和Rc’。1.红色箭头是我标注的电流方向。如果等效电阻是Rc和RL并联的话,那么电流只能这么流吧,可是这样不合理啊,RL上的电 ...…

查看全部问答>

常见三防漆固化后的去除方法

三防漆固化后的线路板还有可能会返修,这就需要把漆膜去除掉,然后才能更换元件。这里列举几种常见三防漆的去除方法。         一,加热法,不到万不得已不建议采用此方法。加热法的具体操作是,一般采用 ...…

查看全部问答>