智能小车循迹程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
/*************************** 2012年4月19号左右完全匹配 2012年4月20日匹配成功 编辑环境:ICCAVR 功能:实现智能小车寻黑线走,此为五路循迹 *****************************/ #includeiom128v.h #includemacros.h #define uint unsigned int #define uchar unsigned char #define IN1_0 PORTA=~(1PA0) #define IN1_1 PORTA|=(1PA0) // have to know why #define IN2_0 PORTA=~(1PA1) #define IN2_1 PORTA|=(1PA1) #define IN3_0 PORTA=~(1PA2) #define IN3_1 PORTA|=(1PA2) #define IN4_0 PORTA=~(1PA3) #define IN4_1 PORTA|=(1PA3) #define PWM_Y(x) OCR1A=(x) #define PWM_Z(x) OCR1B=(x) //右边为1-2de qudong //PWM_Z(x) 代表左边的赋值Y代表右 /******************************* 系统延时函数 ********************************/ void delay(uint ms) { int i,j; for(i=0;ims;i++) { for(j=0;j1140;j++); } } /********************************* A端口使能端口1234 B端口输出PWM值 D端口循迹输入值 TCCR1A /TCCR1B定时计数器的设置 *********************************/ void car_qudong_init(void) { DDRA|=0X0F; PORTA|=0X0F; DDRB|=(1PB5)|(1PB6); PORTB=(1PB5)|(1PB6); DDRD=0X00;//循迹是输入的方向 PORTD=0XFF; TCCR1A=0XA1; TCCR1B=0X04; } /********************************* **********************************/ void car(signed short int Z,signed short int Y) { if(Y=0) { IN1_1; IN2_0; PWM_Y(Y); } else { IN1_0; IN2_1; PWM_Y(-Y); } if(Z=0) { IN3_1; IN4_0; PWM_Z(Z); } else { IN3_0; IN4_1; PWM_Z(-Z); } } void car_xunji(void) { switch(PIND0Xff) { case 0xe0:car(0,0);delay(1140);break; case 0xff:car(248,248);break; case 0xfb:car(248,248);break; case 0xfe:car(-200,200);delay(258);break; case 0xfd:car(-158,158);delay(158);break; case 0xf9:car(-168,168);delay(158);break; case 0xf3:car(168,-168);delay(158);break; case 0xf7:car(168,-168);delay(158);break; case 0xef:car(200,-200);delay(258);break; default:break; } } void main(void) { car_qudong_init(); while(1) { car_xunji(); } }

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档