机器人程序设计(C语言)(第2版) 课件 【ch03】循环程序设计——让机器人动起来.pptx

机器人程序设计(C语言)(第2版) 课件 【ch03】循环程序设计——让机器人动起来.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章循环程序设计一让机器人动起来新工科建设之路·机器人技术与应用系列机器人程序设计(C语言)C51单片机的输入/输出接口控制机器人运动的伺服电机以不同速度运动是通过单片机的输入/输出(I/O)接口输出不同脉冲序列来实现的。C51系列单片机有4个8位的并行I/O接口:P0、P1、P2和P3。AT89S52引脚:AT89S52有44根引脚,其中32根是I/O端口引脚,如图3-1所示。其中有29根具备两种用途(用圆括号写出),既可作为I/O端口,也可作为控制信号或地址及数据线。01单灯闪烁控制单灯闪烁控制为了验证P1接口的输出电平是不是由你编写的程序控制,可以采用一个非常简单的办法,就是在想验证的接口引脚上接一个发光二极管。当输出高电平时,发光二极管灭;输出低电平时,发光二极管亮。单灯闪烁控制LED电路元器件(1)红色发光二极管,2个。(2)470Ω电阻,2个。单灯闪烁控制LED电路搭建在搭建电路前先认识面包板。教学板前端,那块白色的、有许多孔或插座的区域称为无焊料的面包板。面包板连同它三边黑色插孔称为原型区域,如图3-2所示。单灯闪烁控制LED电路搭建单灯闪烁控制LED电路搭建在面包板插孔插上元器件,如本任务用到的电阻、LED灯,就可以构成本书例程的电路。元器件靠面包板插孔彼此连接。单灯闪烁控制LED电路搭建面包板上共17列插孔,列与列之间互不相通。整个面包板通过中间槽分为两块,它们之间的插座互不相通。每一小列由5个插孔组成,这5个插孔在面包板上是电气相连的。单灯闪烁控制LED电路搭建现在按照图3-3所示电路,在教学板的面包板上搭建起实际电路。单灯闪烁控制LED电路搭建图3-3所示的电路原理图指引你如何连接电路元器件,使用唯一的符号来表示不同的元器件。这些器件符号用细线相连,表示它们是电气相连的。在电路原理图中,当两个器件符号用细线相连时,表示它们之间是电气连接的。细线还可以将元器件和电压端口连接。单灯闪烁控制LED电路搭建图3-4为元器件电路符号与实际元器件的对应图。元器件符号图的上方就是该元器件的零件图。单灯闪烁控制LED电路搭建根据图3-3实际搭建好的电路参考图3-5所示。单灯闪烁控制LED电路搭建实际搭建电路时应注意:确认发光二极管的短针脚(阴极)插入面包板,通过电阻与P10相连。确认发光二极管的长针脚(阳极)插入+5V插口,这里+5V就是电路图上的Vcc。单灯闪烁控制HighLowLed.c是如何工作的与第1章程序相比,本例程多使用了一个头文件BoeBot.h,其中定义了两个延时函数;void delay_nms(unsigned int i)和void delay_nus(unsigned int i)。单灯闪烁控制无符号整型数据unsigned int修饰符unsigned放到int前面,指定后面的变量为无符号数。如果加上修饰符signed,则指定是“有符号数”。如果既不指定signed,也不指定为unsigned,则隐含为有符号(signed)。实际上,signed是可以省略的。单灯闪烁控制时序图简介单片机端口引脚信号随时间的变化可以用时序图来描述,一个端口引脚的时序图反应的是其高、低电压信号与时间的变化关系图。02机器人伺服电机控制信号机器人伺服电机控制信号图3-8所示是高电平持续1.5ms,低电平持续20ms,然后不断重复地控制脉冲序列。该脉冲序列发给经过零点标定后的伺服电机,伺服电机不会旋转。如果此时电机旋转,那么表明电机需要标定。机器人伺服电机控制信号由图3-8、图3-9和图3-10可知,控制电机运转速度的是高电平持续的时间,当高电平持续时间为1.3ms时,电机顺时针全速旋转;当高电平持续时间1.7ms时,电机逆时针全速旋转。按照任务1中给单片机微控制器编程,使P1端口的两个引脚(P1_0和P1_1)控制两个LED灯闪烁,重新给单片机编程,就可以给这两个引脚发出伺服电机的控制信号。机器人伺服电机控制信号机器人伺服电机控制信号按照图3-12所示的伺服电机与教学板的连接原理图和实际接线图,将两个电机的连接线连接到教学板上。具体连接时,注意将P1_0引脚的控制输出用来控制右边的伺服电机,P1_1则用来控制左边的伺服电机。机器人伺服电机控制信号机器人伺服电机控制信号单片机编程发给伺服电机的高、低电平信号必须具备更精确的时间。机器人伺服电机控制信号用下面的程序片段代替例程HighLowLed.c中相应的程序片段,编译、连接、执行代码,观察连接到P1_0脚的机器人轮子是不是逆时针全速旋转。03计数并控制循环次数计数并控制循环次数for语句最方便的控制一段代码执行次数的方法是利用for循环,语法如下:for(表达式1;表达式2;表达式3)语句计数并控制循环次数for语句它的执行过程如下:(1)求解表达式1。(2)求解表

文档评论(0)

balala11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档