求高手写一个C程序,要求用单片机控制小车前进,后退,左转弯,右转弯。用的是C51系列单片机。

控制小车其实也就是控制小车的电机,一般来说,是通过PWM信号来控制。比如说,要让小车前进,则输出正转的PWM信号,后退则输出反转的PWM信号等。而调节PWM信号的占空比则可以改变电机的转速,从而改变小车的速度。此外,拐弯则需要借助于传感器提供的信号了。编程时,先了解小车的电机资料,再有就是捕获传感器的信号了。

没有电路怎么写啊

霍·阿卡蒂奥根本没看这个不幸的人。当观众向“蛇人”询问他那悲惨的故事细节时,年轻的霍·阿卡蒂奥就挤到第一排吉卜赛姑娘那儿去,站在她的背后,然后紧贴着她。她想挪开一些,可他把她贴得更紧。于是,她感觉到了他。她愣着没动,惊恐得发颤,不相信自己的感觉,终于回头胆怯地一笑,瞄了霍·阿卡蒂奥一眼,这时,两个吉卜赛人把“蛇人”装进了笼子,搬进帐篷。指挥表演的吉卜赛人宣布:
  

想编写一个小车转弯,前进后退的小程序 用单片机实现。。不要求有别的功能 。。 给我程序就可以了 谢谢大家~

两个电机分别两根线接入的,称其为A和B,A为1,B为0的时候电机正转,A为0,B为1的时候电机反转,AB相等的时候不转。这样可以通过左右电机的状态控制转弯与前进后退。
左右电机都正转则前进,左右电机都反转则后退,左电机正转右电机不转则右转弯,左电机不转右电机正转则左转弯。
基本思路给你了,程序很容易编了,希望能帮到你。

需要完整的硬件电路图,以及小车使用的动力部分的说明(如使用的是直流电机还是异步电机等)。最主要的是你小车是否已经能够动起来,可能硬件驱动或者电机本来就不对,那么程序写对了也没用。

#17743074733# 用C语言编写单片机程序 - ******
#艾烁# #include sbit csb_SAT= P1^0; //定义超声波发生脚 void delay(void) //延时25微秒,12T芯片用12M误差 0us { unsigned char a; for(a=11;a>0;a--); } void csb_fs(int dat) {while(dat--){csb_SAT=1;delay();csb_SAT=0;delay();}} //发射 void main() { ...

#17743074733# 51单片机c语言程序,求高手解答,程序很简单 ******
#艾烁# 程序没问题,但是编译可能通不过.uart_inint() 声明没有说明数据类型,C语言一般没有数据类型默认是整型. P2=0x00;//没扫描到全部亮P0=0x00;//将p0口全部置为低电平这个赋值语句应该在MAIN函数里,此外,你的UART没有响应函数.

#17743074733# 求单片机c语言大神帮我写一段程序,单片机产生指定个数脉冲的程序,可能还有后续的问题 - ******
#艾烁# #include #define uint unsigned int#define uchar unsigned char#define NUM 100 //指定脉冲个数 void delay(uint x); //延时函数 sbit LA=P0^0; //设定引脚为P0.0 void main() { uchar i; for(i=0;i { LA=~LA; delay(1);} while(1); //程序在这里停止 } void delay(uint x) //这里设晶振频率为11.0592MHz x为1时延时1ms { uint y; for(;x>0;x--) for(y=114;y>0;y--); }

#17743074733# 单片机C语言编程 - ******
#艾烁# /*该程序流水灯有两种模式,顺序左移和顺序右移,独立开关控制*/#include#include#define uchar unsigned char#define uint unsigned int uchar tmp,flag; sbit key1=P3^4; sbit key2=P3^5; void delay(uint z); void led(); void keyscan(); void main() { ...

#17743074733# 跪求大神帮忙写一C程序,实现用51单片机生成>=10KHZ的正弦波 - ******
#艾烁# 要生成正玄波必须要采样了,需要提前将正弦波型图数据放置于数组中调用,但是我这里没有,只有生成正弦波是10Khz的.

#17743074733# 求单片机c语言的好程序 - ******
#艾烁# 6. 报警产生器 1. 实验任务 用P1.0输出1KHz和500Hz的音频信号驱动扬声器,作报警信号,要求1KHz信号响100ms,500Hz信号响200ms,交替进行,P1.7接一开关进行控制,当开关合上响报警信号,当开关断开告警信号停止,编出程序. 2. 电...

#17743074733# 求一个C语言程序 要求:52单片机控制机一直流电机, 电机转速采用PWM控制 PID算法 LED显示 ******
#艾烁# C语言程序 要求:52单片机控制机一直流电机, 电机转速采用PWM控制 PID算法 LED显示

#17743074733# 求单片机C语言的一项设计作品 - ******
#艾烁# 频率计功能描述: 1. 要求能测量正弦波、三角波、锯齿波、方波等波形. 2. 频率范围为0~1kHz. 3. 对输入的信号进行频率计数,计数频率结果通过动态数码管显示出来. 4. 如果超出频率范围,则频率计进行报警.汇编源程序代码ORG ...

#17743074733# 请求:单片机控制步进电机C语言编程 - ******
#艾烁# 你描述的要求不是很明了,应该分步描述,每一步的要求分步写出来,大家容易看懂.明白你的意思了!只有两个口控制步进电机的话,需要外加步进电机驱动器. p1.0控制方向,p1.0是1(0)电机向前,p1.0是0(1)步进电机向后p1.1控制步数和速度,用一个PWM就可以了,直接用定时器来控制.pwm频率越高速度越快,但要用在定时器中断里面计算步进的步数来确定走了多远.至于你说的中断信号,可以用循环扫描的方法,在程序中扫描输入中断信号,当检测到信号后改变P1.5的电平,即可点亮LED

#17743074733# 求教高人指点单片机多机通信的C语言程序 - ******
#艾烁# 要是实物需要在连接AB的两个线的两端个并上120欧的电阻,AB两个线互相残绕在一起,在来跟公共的接地线线缠绕在已经缠好的AB线上可以减低误差按你的图仿真的,调试通过从机按键...

  • 求一个51单片机C语言程序编程
  • 答:单片机甲、乙进行双机串行通信,甲机通过串口控制乙机LED闪烁(如下图所示,要求利用芯片MAX232),双方的晶振频率均为11.0592MHz(波特率为9600kb/s)要求:甲机按开关K1一次,发送字符“A”给乙机,点亮灯D1与D2;按开关K1两次,发送字符“B”给乙机,点亮灯D3与D4;按开关K1三次,发送字符“C...

  • 用c51单片机控制一个闪光灯循环闪光5次以后熄灭不再闪光,用C语言编程...
  • 答:用C语言编程,求程序的方法:#include//包含单片机寄存器的头文件 /***函数功能:延迟一段时间 ***/ Voiddelay(Void)//Void表示没有返回值,也没有传递参数。{ Unsignedint我;定义一个最大值为65535的无符号整数。For (I = 0;我< 20000;i++) //执行20000个空循环。;//什么...

  • 请高手用单片机C语言编写c51时钟程序,含有6个数显管,3个按键,要自己写...
  • 答:sbit led_4=P2^3;sbit led_5=P2^4;sbit dp=P1^7;sbit an_mod=P2^5;sbit an_movright=P2^6;sbit an_up=P2^7;unsigned char code tab[]={0x90,0xd7,0xa2,0x86,0xc5,0x8c,0x88,0xd6,0x80,0x84};unsigned char num=0,hour=0,minute=0,secon=0,week=1;//20个num是一秒 ...

  • 求一51系列单片机C程序,最好是简单易懂,有注释。 程序目的:通过串口...
  • 答:if(!cont)//如果cont为0 (表示第一次接收数据){ if(temp<4)//收到的数据小于4(单片机只有P0-P3所以大于3的不做处理){ cont=1;//首先cont赋1 cont=cont<<temp;//进行移位 收到的数据=0代表cont=0x01;收到的数据=1代表cont=0x03;避开0表示收到第一次数据 } else//如果大于4 { ...

  • 求 单片机简单的C语言程序例子(越多越好)
  • 答:1. 实验任务 如图4.1.1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。2. 电路原理图 图4.1.1 3. 系统板上硬件连线 把“单片机系统”区域中的P1.0端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。4. 程序设计内容 ...

  • 求大神在keil上帮写51单片机C语言程序
  • 答://第一个实验://假设8个LED阴极指向单片机,D11连接P0.1,D12连接P0.2 ... D18连接P0.7//假设K1按键在P2.3引脚#include<reg51.h>#include<intrins.h>sbit k1=P2^3;//假设K1按键在P2.3引脚void main(){P0=0xfe;while(1){if(k1==0){while(k1==0);P0=_crol_(P0,1);}}}...

  • 用c语言写一个单片机控制小车走直线的程序,小车一共3个轮子,一个万向轮...
  • 答:sbit Lin_1=P2^3;sbit L_EN=P1^0; //左侧电机使能 sbit L_1=P1^1; //左侧电机控制 1 sbit L_2=P1^2; //左侧电机控制 2 sbit R_1=P1^3; //右侧电机控制 1 sbit R_2=P1^4; //右侧电机控制 2 sbit R_EN=P1^5; //右侧电机使能 void delay(uint z) //延时程序1 { uint...

  • 求,光敏电阻和adc0832用单片机控制的c语言程序
  • 答://***// unsigned char ADconv(void) {unsigned char i;unsigned int data_f=0,data_c=0; Di=1; CS=1; _nop_(); CS=0;Di=1; //芯片使能之前的初始化。第一个下降沿 CLK=1; _nop_(); _nop_();/***/ CLK=0; // 确定通道模式、第2个下降沿 _nop_(); _nop_(); CL...

  • 单片机c51求大神写一个C语言程序!挺急的
  • 答:include<reg51.h>#include<intrins.h>void delay(int a){unsigned char i;while(a--)for(i=0;i<120;i++);}void ext0() interrupt 0{P1=0xff;delay(5000);}main(){unsigned char led=0xfe;EX0=1;IT0=1;EA=1;while(1) { P1=led; led=_crol_(led,1); delay(...

  • 求一个c51的单片机c语言小程序,有酬谢。
  • 答:include"REG52.h"//包含52头文件 define ASCII_Mode 0 define HEX_Mode 1 define TRUE 1//定义布尔量'1':真 define FALSE 0//定义布尔量'0':假 define uchar unsigned char//定义 无符号字符型数据 简称 define uint unsigned int//定义 无符号整型数据 简称 define th1 0xfa//6.51us at ...

    为传递更多家电数码信息,若有事情请联系
    数码大全网