- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Arduino进阶实验:遥控自走车(51单片机通信)剖析
制作一只非常~听话的苦力怕
苦力怕,是本组依照单机游戏“Minecraft”中“爬行者”角色的外形制作的Dino 928
此次实验重点在于通讯与交互过程
初试篇:使用简单数字讯号调教苦力怕
首先如何才能发送一个数字信号
制作的初期,发现蓝牙是一个可能很普遍存在于大众的模组,如不出所料,各位看到这句的时候已经应验了……
于是我们果断放弃了蓝牙,转而决定用红外线机制,传输一个键码值给MCU,再让MCU控制不同位于Arduino的PIN口进行后续判断
硬体组成
接收红外
转发数字信号(非串口)
数字信号接收端
架构解析
红外遥控器
MCU转发
Arduino接收
导通电机马达
NEC
Digital
UART
外部供电
外部供电
液晶显示板
NEC协议
NEC数据格式:引导码、用户码、用户码(或者用户码反码)、按键键码和键码反码,最后一个停止位。
51单片机程式码
void main()
{
EA = 1; ENLED = 0; //LED enable
ADDR3 = 1;
InitInfrared(); //初始化
(略)
if (irflag) //接收到红外数据时刷新显示
{
irflag = 0;
switch(ircode[2])
{
case 0X0C: LedBuff[0] = LedChar[1];left=1;break;
case 0X18: {LedBuff[0] = LedChar[2];go=0;back=1;stop=1;}break;
case 0X5E: LedBuff[0] =
LedChar[3];right=1;break;
Arduino程式码
void loop()
{
int go =digitalRead(2); //取A2的数字信号值。
int stop1 =digitalRead(3); //取得A3的模拟信号值。
int back =digitalRead(4);
if ( go == 1) {
// 前進
Serial.println(前進);
digitalWrite(M1_in1, HIGH);
digitalWrite(M1_in2, LOW);
digitalWrite(M2_in3, HIGH);
digitalWrite(M2_in4, LOW);
实物连接
单片机P2.1 == PIN2
单片机P2.2 == PIN3
进阶篇:使用串口通讯操纵苦力怕
制作动机么…
在第一次实验遥控苦力怕的过程中,我们遥控系统普遍存在一些问题
“假设我们的Arduino程式已经不被允许修改了~”
不考虑操作者具备特异功能,人手的速度和准度是有限的,有什么办法可以使之做到:
前进100ms
后退100ms 反复3次?
架构解析
PC(串口助手)
MCU转发
Arduino接收
控制电机马达
UART
Digital
UART
外部供电
外部供电
实物连接
P3.0口,连接Arduino的Tx脚
P3.1口,连接Arduino的Rx脚
51单片机程式码
void main()
{
(略)
while(1)
{
while(RI == 0);
RI = 0;
c = SBUF; // 从缓冲区中把接收的字 符放入c中
SBUF = c; // 要发送的字符放入缓冲 区
while(TI == 0);
TI = 0;
}
Arduino程式码
参考 Lab 16 _1 控制马达程序,一字不变
串口的发送中断和接收中断:用TI/RI来控制中断使能
TI表示发送中断,如果使能,当数据串口发送出去之后,会产生发送中断,
实验流程
1.打开 stc-isp-15xx-v6.85I.exe程式
2.MCU重新上电启动
3.选择“串口助手”
6.发送指令
4.打开COM port
5.设定间隔时长
最终章:使用苦力怕操纵苦力怕
通讯方式:RS485
1、采用差分信号。
2、RS485通信速率快,最大传输速率可以达到10Mb/s以上。
3、RS485内部采用平衡驱动器和差分接收器的组合,抗干扰能力大大增加。
4、传输距离最远可以达到1200米左右。
5、可
您可能关注的文档
- ArcGISforServer新特性、部署架构及性能优化v1.0-程杰剖析.pptx
- 砖混结构(学习意境5—屋面工程施工)课件.ppt
- 硅表说明书课件.doc
- 硅无机非金属材料课件鲁科版必修课件.ppt
- 硅酸盐水泥课件.doc
- 砼施工规范讲义课件.pptx
- 硅酸根分析仪课件课件.ppt
- 砼物理力学性能课件.ppt
- ArcGIS地形分析TIN及DEM的生成及应用实验报告剖析.docx
- 硫化机内部验收标准(机械)课件.docx
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)