当前位置:首页 » 编程语言 » c语言小车

c语言小车

发布时间: 2024-10-24 22:37:45

A. c语言程序实现小车走正方形

程序需要结合硬件,不同硬件程序也不一样,就算硬件一样,连线方法不同程序也不一样。程序所实现的功能也不同,所以就算有程序,移植性也比较差。下面是我的小车黑白循迹的程序,包含前行转弯等,希望能帮到你
#include <reg52.h>
sbit z0 = P1^0;
sbit z1 = P1^1;
sbit y0 = P1^2;
sbit y1 = P1^3;
sbit x = P1^4;
sbit m = P3^2;
sbit zm0 = P2^0;
sbit zm1 = P2^1;
sbit ym0 = P2^2;
sbit ym1 = P2^3;
unsigned int line=0,j=0;
void turnright()
{
ym0=1;
ym1=1;
zm0=1;
zm1=0;
}
void turnleft()
{
ym0=0;
ym1=1;
zm0=1;
zm1=1;
}
void zuozq()
{
ym0=0;
ym1=1;
zm0=0;
zm1=1;
}
void youzq()
{
ym0=1;
ym1=0;
zm0=1;
zm1=0;
}
void qianxing()
{
ym0=0;
ym1=1;
zm0=1;
zm1=0;
}
void stop()
{
ym0=1;
ym1=1;
zm0=1;
zm1=1;
}
void xunji()
{

if(z1==1&& y0==1) //检测到黑线为低电位
qianxing();
if(z1==0&& y0==0)
qianxing();
if(z1==0&& y0==1)
turnleft();
if( y0==0&&z1==1)
turnright();
// if(z0==0&& y1==1)
// turnleft();
// if( y0==0&&z0==1)
// turnright();
}
void yanshi(unsigned int i)
{
unsigned int j;
while(--i)
for(j=0;j<12000;j++);
}
void wzhongan()
{
IT0=1;
EA=1;
EX0=1;
}
void youzhuan90()
{
youzq();
yanshi(3);
while(1)
{
youzq();
if(x==0)
break;
}
}

void case2()
{
youzq();
yanshi(5);
while(1)
{
if(m==0)
{
stop();
yanshi(10);
//
break;
}
}
zuozq();
yanshi(5);
while(1)
{
if(x==0)
{
qianxing();
yanshi(5);
break;
}
}
}
void zhuanshen()
{
EA=0;
while(1)
{
youzq();
yanshi(2);
if(m==0)
{
yanshi(2);
j++;
}
if(j>=4)
if(x==0)
{
xunji();
yanshi(3);
break;
}

}
EA=1;

}
void main()
{
wzhongan();
while(1)
{
switch(line)
{
case 2:EA=0; case2();EA=1;break;
case 4:EA=0; case2();EA=1;break;
case 7: EA=0;youzhuan90();youzhuan90();youzhuan90();youzhuan90();EA=1;break;
case 10:EA=0; case2();EA=1;break;
case 12:EA=0; case2();EA=1;break;
case 15: EA=0;youzhuan90();youzhuan90();youzhuan90();youzhuan90();EA=1;break;
default :xunji();
}

}
}
void w0 () interrupt 0
{
line++;
}

B. 想做一辆由单片机控制的智能小车,我需要学习哪些方面的知识

1,楼主,你首先要学习C语言基础,就相当于80%会单片机了,因为现在所有8/16/32位(51系列,MSP430系列,ARM系列)都是使用C语言。
2,先看内核8051的单片机:台湾宏晶的STC89C51-DIP40/或其它如新茂,到网上买一个开发板,价格不会超过200元。
3,看一下单片机功能:包换内部FLASH、RAM、TIMER、INT、ADC、USB、ISP/IAR等。
4,编译环境、编程软件KEIL。
5,打开开发板的例子程序,在KEIL编译,下载到板,看结果和说明是不是相符,达到这样效果时,你心里肯定很激动,这时你真正学会了单片机,你成功了!!!!!。
6,单片机C语言举例:
sbit SPEAK = P1^5; //IO口定义为蜂鸣器控制
如果蜂鸣器正极接电源,SPEAK =0;蜂鸣器就会响,你看就是这么简单。
unsiggne char temp;//定义TEMP为单字节变量。
sfr PORTA P1;//将P1口定义为PORTA
7,结合上面讲的,你就可以搭电路和编代码进行小车控制。。
总结,当然,做起来可能不那么顺利,坚持才是硬道理。

热点内容
官服光遇账号和密码在哪里看 发布:2025-09-19 08:57:15 浏览:644
传奇切割机脚本 发布:2025-09-19 08:35:46 浏览:69
博科存储交换机配置 发布:2025-09-19 08:34:31 浏览:133
xp共享win7没有访问权限 发布:2025-09-19 08:29:15 浏览:285
cmd运行python程序 发布:2025-09-19 08:16:07 浏览:294
如何给你的安卓手机正确充电 发布:2025-09-19 08:15:18 浏览:848
vs2010怎么写c语言 发布:2025-09-19 07:31:05 浏览:878
除了证券外还有哪些投资配置 发布:2025-09-19 07:01:48 浏览:87
android把函数 发布:2025-09-19 07:01:04 浏览:292
垃圾站源码 发布:2025-09-19 06:42:30 浏览:165