ImageVerifierCode 换一换
格式:DOC , 页数:22 ,大小:330.54KB ,
资源ID:2625646      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2625646.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(语音控制智能小车-方向电机控制电路设计毕业综合实践报告.doc)为本站上传会员【w****g】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

语音控制智能小车-方向电机控制电路设计毕业综合实践报告.doc

1、个人收集整理 勿做商业用途 语音控制小车 系 别: 专 业: 姓 名: 学 号: 目录

2、 1 关于语音控制小车 2 语音控制小车简介 2.1功能介绍 … … … … 2。2设计要求… … … … 2.3参数说明… … … … 3 硬件 介绍 3.1硬件框图 … … … … 3.2 SPCE061A精简开发板… …… … … 3.3 控制板框图 … … … … 4 小车的功能实现原理 4.1直走的实现过程… … … … 4。2 转弯的实现… … … … 4.3 PWM调速的原理… … … … 4。4 语音识别原理简介… … … … 5 软件系统设计 5。1软件流

3、程 … … … … 红外接收模块 5。2红外解码程序设计… … … … 5.3控制器控制程序… … … … 6 常见问题 1 关于语音控制小车 语音控制小车是 凌阳 大学 计划推出的基于SPCE061A的代表性应用作品,它配合61板推出,综合应用了SPCE061A的众多资源,小车控制系统使用单片机芯片控制直流电机的调速、正转、反转。配合语音识别功能使小车更具趣味性,提高学习

4、的积极性,更使我们对学习的科学实践部分得到完整的验证。 2 语音控制小车简介 2.1 功能介绍: 1. 小车运动控制: 通过SPCE061A的I/O端口,驱动控制板的H桥电路,进而控制前轮电机和后轮电机. 2. 声控功能: 利用特定人语音识别实现小车的名称和动作训练,并根据相应的语音指令输入执行前进、后退、左转、右转、停车等动作. 3。 定时控制功能: 利用时基定时器设定运行时间,小车运行同时启动定时器,时间到小车停止运行。 2.2 设

5、计要求: 利用SPCE061A单片机和智能小车控制电路板,实现下述功能: 1. 可以通过简单的I/O操作实现小车的前进、后退、左转、右转功能; 2. 配合SPCE061A的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能; 3. 可以在行走过程中声控改变小车运动状态; 4. 在超出语音控制范围时能够自动停车。 5. 可以自行安装各类传感器,配合程序实现小车的循迹、避障等功能。 2.3 参数说明: 车体:双电机四轮驱动 供电:电池(四节AA电池:1.2V*4 或 1。5V*4) 工作电压:DC 4V~6V 工作电流:运动时约

6、 200mA 3 硬件 介绍 3.1 硬件框图 系统组成主要包括以下两部分:SPCE061A精简开发板、语音小车控制电路板。 图中的语音输入部分MIC_ IN、按键输入KEY、声音输出部分的功率放大环节等已经做到了精简开发板—-61板上,为我们使用提供了很大的方便。在电机的驱动方面,采用全桥驱动技术,利用四个I/O端口分为两组分别实现两个电机的正传、反转和停三态运行,如下图所示。 3.2 SPCE061A精简开发板 “61板"是SPCE061A EMU BOARD的简称,是以凌阳16位单片机SPCE061A为核心的精简开发-仿真-实验板,大小相当于

7、一张扑克牌。 “61板”除了具备单片机最小系统电路外,还包括有电源电路、复位电路、ICE电路、音频电路(含MIC输入部分和DAC音频输出部分)等,“61板”可以采用电池供电。图 3-1所示为该精简开发板的实物图。 3.3 控制板框图 控制板的结构框图如图所示,它包括接口模块,两路电机控制模块,预留传感器接口,以及电源模块四大部分。 1 电源模块 由于小车采用 4 节AA电池供电,电压最高可以达到 6 V,考虑到 61板的安全加入了电源模块。电源模块的电路原理图如图所示,电源模块的作用是将电池组提供的电压稳定在5V以内为61板供电.电源模块

8、采用集成稳压芯片 7805,在输出端(控制板的JP11)并接一个 470μF滤波电容和一个 0.1μF的去藕电容,增强系统电压的稳定性和抗干扰性能. 2 传感器扩展接口 为了小车后期开发的方便,在小车的控制板上预留了很多的传感器接口和模组接口。如果在设计中需要添加传感器或者相关的模组,只要参照电路原理图以及相关说明连接电路就可以了,十分的方便. 图 2。13是一个开关型传感器的接口电路,其中1、2为传感器信号输入,3、4为电源,5、6为地.考虑到很多的开关型传感器的信号输出为集电极开路的OC门结构,所以在电源端和信号端之间加入一个4.7KΩ的上拉电阻。应用时,只需

9、要将电源线、地线、信号线按照图中标注连接好,然后再将信号端(图中的1端或2端)接到SPCE061A的相应I/O端口,在程序中把对应的端口设置为输入即可。 3 方向电机控制电路 方向控制由前轮驱动实现,包括左转和右转,前轮驱动电路也是一个全桥驱动电路,如图 5-12所示:Q7、Q8、Q9、Q10四个三极管组成四个桥臂,Q7和Q10组成一组,Q8和Q9组成一组,Q11控制Q8、Q9的导通与关断,Q12控制Q7和Q10的导通与关断,而Q11、Q12由IOB10和IOB11控制,这样就可以通过IOB10和IOB11控制前轮电机的正转和反转,进而控制小车的左转和右转. 4

10、 动力电机驱动电路 动力驱动由后轮驱动实现,负责小车的直线方向运动,包括前进和后退,后轮驱动电路是一个全桥驱动电路,如图 5—12所示:Q1、Q2、Q3、Q4四个三极管组成四个桥臂,Q1和Q4组成一组,Q2和Q3组成一组,Q5控制Q2、Q3的导通与关断,Q6控制Q1和Q4的导通与关断,而Q5、Q6由IOB9和IOB8控制,这样就可以通过IOB8和IOB9控制四个桥臂的导通与关断控制后轮电机的运行状态,使之正转反转或者停转,进而控制小车的前进和后退. 4 小车的功能实现原理 4.1 直走的实现过程 只要让小车的左右两侧的轮子同时朝前旋转,小车就会受到向前的作用力

11、而朝前运动,这样就实现了小车的前进功能。由于小车每一侧的轮子由同侧的电机控制,所以要实现两侧的四个轮子同时朝前转,只需要左右两个电机正转即可。由表 2.2可知两个电机都正转的控制组合为IOB13~ IOB10=1010,也就是说只要把IOB13~ IOB10设置为“1010”就实现了小车的前进功能。 同理,只要让两个电机同时反转,就实现了小车的倒退功能。此时的IOB13~ IOB10端口数据为“0101”. 4.2 转弯的实现过程 在某些场合,小车还需要转弯,那么小车又是怎样实现转弯的呢?其实只要让一侧的轮子停转,让另一侧的旋转,这样小车就会朝着一个方向偏转.比如让右侧的轮子停转,

12、左侧的轮子前转,对应的端口输出状态为IOB13~ IOB10=0010,此时小车就会向右前方旋转,最终实现右前转。另外还有左前转,右后转,左后转等动作,详细的端口输出状态见表 2.2. 但是这种转弯的实现方案在实际的测试中并不理想,小车转弯所走的弧线半径比较大,有时近似在走直线.造成这种现象的原因是:小车转弯是通过一侧的轮子停转,另一侧的轮子正转或者反转实现的。但是虽然一侧的电机停转了,另一侧旋转的轮子会带着停转的轮子一起运动,这样小车偏转的趋势就不明显,小车转弯的半径就会比较大,不能达到理想的目的。 我们应用了一种近似插补的实现方案,如图 3.1所示.将所要走的弧线切割成若干个小段,

13、在段与段的连接处,作一定角度的原地旋转,然后再直走到下一个连接点.如图 3。1示,从A点出发,让小车在原地做一定角度的旋转(即一侧的轮子正转,另一侧的轮子反转),然后让小车直行,到B点处再重复执行原地旋转动作,然后再直行到达C点。如此一直到弧线的终点H,这样就完成了一定弧度的转弯。图示为左拐的过程,右拐的原理是一样的,只是原地旋转的方向不同而已。 在实际的操作中需要注意的有两点:一是顺时针旋转还是逆时针旋转一定要清楚,可以参看表;第二是时间的分配,也就是在每个点上旋转所占时间和直走所占时间分别为多长,二者要合理搭配,如果旋转的时间过短,每次旋转角度很小,整体的旋转趋势就不明显,转弯的弧度太

14、小;如果旋转时间过长,小车可能就不会正常的走弧线。 图 3。1:采用近似插补方案实现小车的转弯过程 4。3 PWM调速的原理 如果需要调速,可以直接调用SPCE061A的PWM资源,通过调节PWM的占空比来实现速度的调节。由第2.4。3节调速电路分析可知:调速部分直接连接到了61板的PWM输出,只要在程序中对PWM相关端口进行合理的设置,在MOTSP端就有PWM信号产生,加在小车电机两端的电压就是一PWM电压信号,对应的电机电压波形如图示: PWM调速原理图 此时加在电机两端的平均电压Uo=Th/(Th+Tl)*VCC。 可以通过调整PWM的占空比,来改变Th和T

15、l的比值,从而改变Uo的大小.这样就通过PWM资源调节加在电机两端的平均电压,从而改变电机的转速,最终实现调节小车速度的目的。 另外也可以利用其他的方式让端口输出如图 3.2所示的波形,即软件模拟的PWM,在这里就不对这种方案做过多的说明。 4。4 语音识别原理简介 语音识别主要分为“训练”和“识别”两个阶段。在训练阶段,单片机对采集到的语音样本进行分析处理,从中提取出语音特征信息,建立一个特征模型;在识别阶段,单片机对采集到的语音样本也进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。

16、 语音识别的具体流程如图所示: 5 软件系统设计 5。1 软件流程 主程序流程图 流程说明:语音识别小车的程序流程如上图所示,分为四大部分来说明:初始化部分、训练部分、识别部分、重训操作。 初始化部分:初始化操作将IOB13~IOB10设置为输出端,用以控制电机,将IOA的低8位设置为下拉的输入端,用来连接按键。 训练部分:训练部分完成的工作就是建立语音模型.程序一开始就会去判断小车是否被训练过,如果没有训练过则会要求对其进行训练,并且会在训练成功之后将训练的模型存储到Flash当中,在以后使用时就不需要重新训练了;如果已经训练过会把存储在Flash中的

17、模型调出来装载到辨识器中。 识别部分:在识别环节当中,如果辨识结果是名字,直接置待命标志,然后等待动作命令。只有检测到待命标志,小车才会根据相应的辨识结果执行动作,如果没有待命标志即使识别到动作命令也不会执行动作。小车在执行完对应的命令之后,将清除待命标志,结束待命状态。 重训操作:考虑到有重新训练的需求,所以在这里设置了重新训练的按键,程序运行时循环扫描该按键,什么时间检测到此键按下,则将擦除语音模型存储区首单元(0xe000)所在的页,等待复位到来。复位后,程序重新从头开始执行,当检测到语音模型存储区首地址为0xffff(擦除后的值)时会要求重新对其进行训练。 红外接收模块

18、 5。2红外解码程序设计 红外解码程序主要工作为等待红外线信号出现,并跳过引导信号,开始收集连续32位的表面数据,存入内存的连续空间。位信号解码的原则是:以判断各个位的波宽信号来决定高低信号。位解码原理如下: l 解码为0:低电平的宽度0。56ms+高电平的宽度0.56ms。 l 解码为1:低电平的宽度1.68ms+高电平的宽度0。56ms。 程序中必须设计一精确的0。1ms延时时间作为基础时间,以计数实际的波形宽度,若读值为5表示波形宽度为0.5ms,若读值为16表示波形宽度为1.6ms,以此类推。高电平的宽度1。12ms为固定,因此可以直接判断低电平的宽度的计数值5或时16,来确

19、定编码为0或是1.程序中可以减法指令SUBB来完成判断,指令“SUBB A,R2”中若R2为计数值,A寄存器设为8,就可如下: l 当“8-R2”有产生借位,借位标志C=1,表示编码为1。 l 当“8-R2"无产生借位,借位标志C=0,表示编码为0。 将借位标志C经过右移指令“RRC A”转入A寄存器中,再经由R0寄存器间接寻址存入内存中. 5.3 控制器控制程序 ; 红外遥控机器人ASM程序 ;————-—--———---—-——---—----—-—————-—-—-————---------———--——————-—--——-——--—-—--——-—---————

20、—————---—---———-—----————-—----—--———-—-—--———— HOME EQU 14 ;伺服马达回到中点时间常数 BACK EQU 3 ;伺服马达反转时间常数 FOR EQU 25 ;伺服马达正转时间常数 ; --—-—-——---—---—---—-—--—-—--——---——--—-—-———-—----————-—-——-—-——-—--————--—--—---————----——-——-—--——--——--———-———-—————-----—

21、——--——-—-- ;遥控器按键1~6比较码 CODE_K1 EQU 19H ;机器人前进比较码 CODE_K2 EQU 18H ;机器人后退比较码 CODE_K3 EQU 0AH ;机器人左转比较码 CODE_K4 EQU 09H ;机器人右转比较码 CODE_K5 EQU 0BH ;机器人回到中点比较码 CODE_K6 EQU 14H ;机器人行走启动进比较码 ; —-——-—--—--—-——--——-—-—-—-—

22、—----—-————--——-——-——----—-—-—--—-—-—------——————-——-——-——-----—-—-—--———-——-——-———--——----—-—————-—————----— IRCOM EQU 30H ;红外线信号解码数据放置变量起始地址 COM EQU 32H ;比较第3字节变量 ; —-—--———---———-—---—--—————-—--—---———————---—-—-———----—-——--——--——-——-————--———---—-———--—-—

23、—--————--——-——-—---—-—--———------—-——----- IRIN EQU P3.2 ;红外线IR信号输入位引脚定义 WLED EQU P3.7 ;发光二极管引脚定义 SPK EQU P3。4 ;压电喇叭引脚定义 DJL EQU P1。0 ;左侧伺服马达引脚定义 DJR EQU P1。1 ;右侧伺服马达引脚定义 ; --—-—--—---—-—-—----——-—-—

24、—-—-—————----—--—-—--———----———---————-—-————---———-———-—-----—————--—-———-———---————--———-——-———--——---——--—— ORG 0H ;程序代码由地址0开始执行 JMP BEGIN ;进入主程序 ; -—--————-----——-——--——-————--—————-—---—-——--—--——---—-—-—----———---—--——-—-————--———-—-——————--—-—————

25、——-—————---—————————---——-—-—-—-— BEGIN:  CLR DJL ;关闭左侧伺服马达 CLR DJR ;关闭右侧伺服马达 CLR SPK ;关闭压电喇叭 CALL LED_BL ;发光二极管闪烁,表示程序开始执行 CALL BZ ;压电喇叭发出嘀的一声 CALL GO_HOME ;全部

26、伺服马达回到中点 CALL LED_BL ;发光二极管闪烁,表示机器人准备完毕 CALL BZ ;压电喇叭发出嘀的一声 CALL QD ;运行行走启动子程序,摆好行走姿态 SETB IRIN ;红外线信号IR输入位设为高电平,准备接收红外信号 LOOP: MOV R0,#IRCOM ;设置IR解码起始地址 CALL IR_IN ;进行IR解码

27、CALL OP ;进行解码比较,并控制机器人动作 JMP LOOP ;继续循环执行 ; —-——-—--————---—-—-—-—-—-—---——-—-—-———--—------—-——-——-——————-—-—--——----———--—-——-———---——--—----—-——-———-—--—---—-—--—-—----—---————— DELAY:MOV R6,#50 ;10ms延时子程序 D1:  MOV R7,#99 D

28、JNZ R7,$ DJNZ R6,D1 DJNZ R5,DELAY RET ; ----——-—-—————--——--——--————————-—-----—-—--——----——-———--——-——————----——-——---———-———---—----————-—-——-——-———-———-—-————-—----——-—————— LED_BL: MOV R1,#4 ;发光二极管闪烁子程序 LE1: CPL WLED ;发光二极管反向

29、 MOV R5,#10 CALL DELAY ;进行100ms延时 DJNZ R1,LE1 RET ; —-———-—----—-———————-———-----—------—-—---——--—-----——-—-—---——-————-——————------—--—----—————-———-————--——---—-----—-——--————---—-————- BZ: MOV R6,#0 ;压电喇叭发声子程序 B1: SE

30、TB SPK ;压电喇叭得电,开始发声 DJNZ R6,B1 MOV R5,#5 CALL DELAY ;进行50ms延时 CLR SPK ;关闭压电喇叭 RET ; -—-----———--————---------—---—--———-—--—---—--—-——-——-——-——----——---—-———----—-----———-———-————--------—————-—-———--

31、—---—————---——--—--— DEL: ;0。1ms延时子程序 MOV R5,#1 DELAY1: MOV R6,#2 E1: MOV R7,#22 E2: DJNZ R7,E2 DJNZ R6,E1 DJNZ R5,DELAY1 RET ; —-—-——--——-—-———---———--—-----—-—---———-——--—--—-—-————---———--——-——-—----—--—————--——--—-

32、———-——--——-—-—-—-———-——--—-—-——————-———-- IR_IN: ;红外解码子程序 I1: JNB IRIN,I2 ;等待红外IR信号出现 JMP I1 I2: MOV R4,#20 ;发现红外IR信号,延时一下 I20: CALL DEL DJNZ R4,I20 JB IRIN,I1 ;确认红外IR信号出现 I21: JB I

33、RIN,I3 ;等待IR变为高电平 CALL DEL JMP I21 I3: MOV R3,#0 ;8位数清0 LL: JNB IRIN,I4 ;等待IR变为低电平 CALL DEL JMP LL I4: JB IRIN,I5 ;等待IR变为高电平 CALL DEL JMP I4 I5: MOV R2,#0 ;0.1ms 计

34、数 L1: CALL DEL JB IRIN,N1 ;等待IR变为高电平 MOV A,#8 ;设置减数为8 CLR C ;清除借位标志C SUBB A,R2 ;判断高低位 MOV A,@R0 ;取出内存中原先数据 RRC A ;右移指令,将借位标志C右移进入A寄存器中 M

35、OV @R0, A ;将数据写入内存中 INC R3 ;处理完成一位,R3+1(R3计数) CJNE R3,#8, LL ;循环处理8位 MOV R3,#0 ;R3清0 INC R0 ;处理完成1个字节,R0+1(R0计数) CJNE R0,#34H, LL ;循环收集到4个字节 JMP OK

36、 ;至完成返回 N1: INC R2 ;R2+1(R2计数) CJNE R2,#30, L1 ;0.1ms 计数过长,时间到自动离开 OK: RET ;完成返回 ; -——--—-——-—————----—---—---—-—----—-————-———————---——--—--——---——-—---—---———--————-—-————-—---—-—--—-————---—-———-—----——

37、————-—-— OP: 执行解码动作子程序 MOV A,COM CJNE A,#CODE_K5, A1 ;对解码进行比较,看是否是回到中点指令,否就转至下一项比较 CALL LED_BL ;发光二极管闪烁 CALL BZ ;压电喇叭发出嘀的一声 CALL GO_HOME ;执行回到中点 CALL LED_BL ;发光二极管闪烁 CALL

38、 BZ ;压电喇叭发出嘀的一声 RET A1: MOV A,COM CJNE A,#CODE_K1, A2 ;对解码进行比较,看是否是前进指令,否就转至下一项比较 CALL BZ ;压电喇叭发出嘀的一声 CALL GO_FOR ;执行前进 RET A2: MOV A,COM CJNE A,#CODE_K2, A3 ;对解码进行比较,看是否是后退指令,否就转至下一项比较 CAL

39、L BZ ;压电喇叭发出嘀的一声 CALL GO_BACK ;执行后退 RET A3: ;L MOV A,COM CJNE A,#CODE_K3, A4 ;对解码进行比较,看是否是左转指令,否就转至下一项比较 CALL BZ ;压电喇叭发出嘀的一声 CALL GO_L ;执行左转 RET A4: ;R

40、MOV A,COM CJNE A,#CODE_K4, A5 ;对解码进行比较,看是否是右转指令,否就转至下一项比较 CALL BZ ;压电喇叭发出嘀的一声 CALL GO_R ;执行右转 RET A5: MOV A,COM CJNE A,#CODE_K6, A6 ;对解码进行比较,看是否是行走启动指令,否就转至下一项 CALL LED_BL ;发光二极管闪烁 CALL B

41、Z ;压电喇叭发出嘀的一声 CALL QD ;执行行走启动 CALL LED_BL ;发光二极管闪烁 CALL BZ ;压电喇叭发出嘀的一声 RET A6: RET ;返回 ; ----——----—---—-—-——-——-—--—-—--——————-—----—--—-----—-—---—--———-——-

42、—---——--—-————--------——-——-—---—----—-—--——--———-—-—-----—-———---- HOME1: SETB DJZ ;各伺服电机回中点控制子程序 SETB DJL SETB DJR MOV R4,#HOME G1: CALL DEL DJNZ R4,G1 CLR DJZ CLR DJL CLR DJR MOV R4,#(200-HOME) G2: CALL DEL DJNZ R4,G2 RET ; —-——--——-—--—--——

43、—-—--——-—--—-——-----————-—-—--———-———----—--——--—-—-——--—-——-———--—-——-——------——-------——-———--———-——--—-——--—-—-————- GO_HOME: MOV R3,#15 ;机器人回中点子程序 H1: CALL HOME1 DJNZ R3,H1 RET ; --————-——--—-———-——-——--——--——-——--——--——-——---—-—-—-------—-——--—-—-—-—-—-------—-

44、——--——--—-———-—----—-———--—————------—---—-—-— DJL_FOR: SETB DJL ;左侧电机正转子程序 MOV R4,#FOR FL1: CALL DEL DJNZ R4,FL1 CLR DJL MOV R4,#(200-FOR) FL2: CALL DEL DJNZ R4,FL2 RET ; ——--—-—--——---—-——————--—--—-—-———-————--

45、——-—-—-------—-—----——————--—-—--—-————-—-——---—-———-------——-------——---—-—-——--——-—-—————-—- DJR_FOR: SETB DJR ;右侧电机正转子程序 MOV R4,#FOR FR1: CALL DEL DJNZ R4,FR1 CLR DJR MOV R4,#(200—FOR) FR2: CALL DEL DJNZ R4,FR2 RET ;

46、 ---—--—--——---------—----————--————---——--—-——-----——-——---—-———---———-—————-—-—---——----—-———-—————-——--—-—--—---------————---—----——-— DJL_BACK: SETB DJL ;左侧电机反转子程序 MOV R4,#BACK DJLBA1: CALL DEL DJNZ R4,DJLBA1 CLR DJL MOV

47、R4,#(200-BACK) DJLB2: CALL DEL DJNZ R4,DJLB2 RET ; -——---——---——-——-—----———-——-——------—————--———-—----——-—-——-—--—---———-----——-———-----——--—-—------—----—-—--——-—-—--—--———-—--—----—-- DJR_BACK: SETB DJR ;右侧电机反转子程序 MOV R4,#BACK DJRBA1:

48、 CALL DEL DJNZ R4,DJRBA1 CLR DJR MOV R4,#(200—BACK) DJRB2: CALL DEL DJNZ R4,DJRB2 RET ; —----——-—-------—-—-—--——--—-—————————-——-—-—-———--——--—--———-—-——--—-——-——-—-—-———---———-—--—----—---————-——-—---—-——--—————-———-—--—-— G

49、O_FOR: MOV R3,#5 ;机器人向前行走子程序 F1: CALL DJZ_FOR DJNZ R3,F1 MOV R3,#10 F2: CALL DJR_BACK DJNZ R3,F2 MOV R3,#10 F3: CALL DJL_BACK DJNZ R3,F3 MOV R3,#5 F4: CALL DJZ_BACK

50、DJNZ R3,F4 MOV R3,#10 F5: CALL DJL_FOR DJNZ R3,F5 MOV R3,#10 F6: CALL DJR_FOR DJNZ R3,F6 RET ; ---———-—-----—-——-—---—--—-——-——-—-——-———-—-—-—-————---——-—-—----——---——-—-——--—————-—---—-—-—----—-—-----——————-—-——-————-----—--

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服