单片机智能蓝牙小车课程设计

合集下载

蓝牙控制智能小车课程设计

蓝牙控制智能小车课程设计

蓝牙控制智能小车课程设计一、课程目标知识目标:1. 让学生理解蓝牙技术在物联网中的应用,掌握智能小车的基本工作原理。

2. 学会使用编程软件对智能小车进行控制,了解蓝牙数据传输的过程。

3. 掌握智能小车组装过程中所涉及的基本电子元件和电路知识。

技能目标:1. 培养学生动手操作能力,能独立完成智能小车的组装和调试。

2. 培养学生编程思维,能运用所学知识编写简单的程序,实现对智能小车的控制。

3. 提高学生团队协作能力,能在小组合作中发挥个人优势,共同完成项目任务。

情感态度价值观目标:1. 培养学生对科技的兴趣和热爱,激发学习动力,提高创新意识。

2. 培养学生面对问题积极思考、解决问题的能力,增强自信心。

3. 培养学生遵守实验规程,养成良好的实验习惯,注重安全意识。

课程性质:本课程属于实践性较强的信息技术课程,注重理论联系实际,培养学生的动手能力和创新能力。

学生特点:五至六年级学生具备一定的信息技术基础,好奇心强,喜欢动手实践,但注意力集中时间较短。

教学要求:结合学生特点,采用项目式教学,注重引导学生主动探究,激发学习兴趣。

课程目标分解为具体学习成果,以便在教学过程中进行有效评估和调整。

二、教学内容1. 理论知识:- 蓝牙技术原理与应用- 智能小车的基本工作原理- 编程控制原理及编程软件使用- 常用电子元件及电路知识2. 实践操作:- 智能小车的组装与调试- 蓝牙模块的连接与配置- 编程软件的使用与程序编写- 智能小车控制程序的实际应用3. 教学大纲安排:- 第一课时:介绍蓝牙技术原理、智能小车基本工作原理,引导学生了解课程背景。

- 第二课时:学习常用电子元件及电路知识,进行智能小车组装实践。

- 第三课时:讲解编程控制原理,学习编程软件的使用,编写简单的控制程序。

- 第四课时:连接蓝牙模块,配置智能小车,实现无线控制。

- 第五课时:小组合作,完成智能小车控制程序的设计与优化,进行调试与展示。

4. 教材章节关联:- 《信息技术》第五章:物联网技术及应用- 《信息技术》第六章:编程控制技术- 《电子技术》第二章:常用电子元件及电路教学内容注重科学性和系统性,结合实践操作,让学生在动手实践中掌握知识,提高技能。

单片机智能小车课程设计

单片机智能小车课程设计

单片机智能小车课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其在智能小车控制中的应用。

2. 学习并掌握智能小车的基本电路连接和编程方法,能够实现小车的基本运动控制。

3. 了解传感器的工作原理,学会使用传感器对智能小车进行环境感知和路径规划。

技能目标:1. 培养学生动手操作能力,能够独立完成智能小车的组装和调试。

2. 培养学生编程思维,能够运用所学知识解决实际问题,实现智能小车的功能拓展。

3. 提高学生团队协作能力,学会在项目中进行沟通与分工合作。

情感态度价值观目标:1. 培养学生对单片机及智能硬件的兴趣,激发创新意识,提高学习积极性。

2. 培养学生勇于尝试、克服困难的精神,增强自信心。

3. 培养学生关注社会热点问题,了解智能技术在现实生活中的应用,提高社会责任感。

本课程针对初中年级学生,结合单片机及智能小车相关知识,注重实践操作和创新能力培养。

在教学过程中,教师需关注学生的个体差异,因材施教,确保课程目标的达成。

课程目标分解为具体学习成果,便于后续教学设计和评估,以提高课程的实用性和针对性。

二、教学内容1. 单片机原理:介绍单片机的组成、工作原理,重点讲解内部寄存器、I/O 口、定时器等基本功能。

相关教材章节:第三章单片机原理及其应用。

2. 智能小车电路连接:讲解智能小车的基本电路组成,包括电机驱动、电源管理、传感器接口等。

相关教材章节:第四章智能小车电路设计与实践。

3. 编程基础:学习单片机编程语言(如C语言),掌握基本编程语法和逻辑控制,实现小车运动控制。

相关教材章节:第五章单片机编程基础。

4. 传感器应用:介绍常用传感器(如红外、超声波、光电等)的工作原理,学会使用传感器进行环境感知和路径规划。

相关教材章节:第六章传感器及其应用。

5. 智能小车组装与调试:指导学生进行智能小车的组装,学会使用调试工具,如示波器、逻辑分析仪等。

相关教材章节:第七章智能小车组装与调试。

6. 创新实践:鼓励学生进行功能拓展,如增加避障、循迹、远程控制等功能。

单片机蓝牙控制小车

单片机蓝牙控制小车

课题:基于单片机的蓝牙控制小车专业:班级:学号:姓名:指导教师:设计日期:成绩:重庆大学城市科技学院电气信息学院目录1.设计目的作用 (2)2.设计要求 (2)3.设计的具体实现 (2)3.1设计原理 (2)3.2系统设计 (12)3.3系统实现 (13)4.总结 (19)参考文献 (20)附录 (21)附录1 (21)附录2 (22)C51蓝牙控制小车设计报告1设计目的与意义目的与意义:提高学生动手能力,培养学生的思维,巩固理论知识,让我们能对单片机更加深入的了解,加深同学们对单片机的认识,通过自己动手让小车跑起来还能让同学们更加有积极性,参与感,成就感。

让学生们亲自体验这门课程的神奇性。

因为无线技术的广泛使用,使蓝牙技术的发展成为了趋势之一,蓝牙可以发送和接受语音和数据,满足了大多数人的需求,它也融合了其他相关产品的特点,也是这样技术变得更多样性。

实现了无线控制小车,摆脱了有线控制的不方便,更加智能。

2设计要求SPP蓝牙串口调试助手 ----》聊天窗口--》1、在Bluetooth_Car项目中添加超声波躲避障碍功能(在小车前进的过程中,实时检测障碍物,一旦检测的距离,接近设定的值,触发蜂鸣器,报警系统工作,小车停止前进);2、在Bluetooth_Car项目中的串口中断服务函数中,添加小车前进的8个方向,前后左右,左前,右前,左后,右后;3、利用外部中断,强制停止小车运行(无论小车现在处于什么状态),蜂鸣器报警1s后,可再运行;4、用手机的蓝牙串口调试助手来远程操作小车。

3.设计的具体实现3.1设计原理芯片常识: STM8、C52 、STM32 、ARMC52:主要做末端的控制 11.0592MHZSTM32:主要做工业控制领域——智能设备 168MARM:主要做消费市场——手机==============单片机小车==========了解原理图和数据手册一、软件建立工程建立工程时芯片选择--》Atmel-->AT89C52设置芯片频率,选择生成16进制可执行文件。

C51蓝牙小车课程设计

C51蓝牙小车课程设计

C51蓝牙小车课程设计一、教学目标本课程的教学目标是使学生掌握C51蓝牙小车的基本原理和制作方法,培养学生的电子技术应用能力和创新思维。

具体分为以下三个部分:1.知识目标:学生需要了解C51蓝牙小车的硬件组成、工作原理以及相关的电子技术知识。

2.技能目标:学生能够熟练使用相关工具和设备,独立完成C51蓝牙小车的组装和编程。

3.情感态度价值观目标:通过课程的学习,学生能够培养对科技创新的热爱,增强团队合作意识,提高解决问题的能力。

二、教学内容教学内容主要包括以下几个部分:1.C51蓝牙小车的硬件组成和工作原理。

2.蓝牙模块的原理和使用方法。

3.控制系统的编程和调试。

4.实验操作和项目实践。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式:1.讲授法:用于讲解基本原理和知识点。

2.实验法:通过动手实践,使学生更好地理解理论知识。

3.案例分析法:分析实际案例,培养学生的应用能力和创新思维。

4.讨论法:鼓励学生积极参与讨论,提高团队合作和沟通能力。

四、教学资源为了支持教学,我们将准备以下教学资源:1.教材:提供详细的学习指导和实践操作步骤。

2.参考书:为学生提供更多的学习资料和扩展知识。

3.多媒体资料:通过视频、图片等形式,丰富学生的学习体验。

4.实验设备:提供足够的实验设备和工具,确保学生能够顺利进行实践操作。

五、教学评估本课程的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。

评估主要包括以下几个方面:1.平时表现:通过课堂参与、提问、小组讨论等环节,评估学生的学习态度和参与度。

2.作业:布置相关的编程练习和实验报告,评估学生的理解和应用能力。

3.考试:期末进行一次理论知识考试,评估学生对课程知识的掌握程度。

4.项目实践:评估学生在实践项目中的表现,包括蓝牙小车的组装、编程和调试能力。

六、教学安排本课程的教学安排将根据学生的实际情况和教学需求进行调整。

教学进度将合理安排,确保在有限的时间内完成教学任务。

蓝牙智能小车设计

蓝牙智能小车设计

2、HC—05主从一体蓝牙模块
蓝牙模块的详细说明请参考模块说明,这里仅将此次项目设计所需要了解 的内容进行说明。
小车的硬件主要包括蓝牙模块部分和小车部分。蓝牙模块目前市面上出售 的有主机模块、从机模块,也有主从一体模块,此次选用的HC-05蓝牙模块是 主从一体的,因为此次设计的智能小车,手机端自身带有蓝牙功能,相当于主 机发送模块,所以只需使用HC-05蓝牙模块的从机接收功能。
ENA
IN1
IN2
直流电机状态
0
X
X
停止
1
0
0
制动
1
0
1
正转
1
1
0
反转
1
1
1
制动
L298N电机驱动模块
1.驱动芯片:L298N 双H 桥直流电机驱动芯片 2.驱动部分端子供电范围Vs:+5V~+12V ; 如需要板内取电,则供电范 围Vs:+6V~+12V 3.驱动部分峰值电流Io:2A 4.逻辑部分端子供电范围Vss:+5V~+7V(可板内取电+5V) 5.逻辑部分工作电流范围:0~36mA 6.控制信号输入电压范围(IN1 IN2 IN3 IN4):
4.发指令: AT命令格式为:波特率38400, 8个数据位,1个停止位,无校验。每条指 令输入完成后,必须按一下回车键再发送! 例如:输入AT,按一下回车键发送,蓝牙模块会返回OK ①如何修改蓝牙模块为主机模式: 输入AT+ROLE=1之后按一下回车键发送,蓝牙返回OK,表示修改成功! 断电之后再上电,蓝牙模块为主机模式,自动搜索周围从机,输入 AT+ROLE=0,则修改为从机模式。(注:默认为从机模式,无需修改) ②如何修改蓝牙模块名称: 输入AT+NAME=Beijin之后按一下回车键发送,蓝牙返回OK,表示蓝牙名 字修改为Beijin

(完整版)智能小车课程设计报告书

(完整版)智能小车课程设计报告书

课程设计报告书课题名称智能小车蓝牙操控和循迹的实现 姓 名 学 号 学 院 专 业 指导教师2019年2月15日※※※※※※※※※※※ ※※ ※※ ※※※※※※※※※2015级学生课程设计材料1设计目的通过设计进一步掌握51单片机的应用,特别是在嵌入式系统中的应用。

进一步学习51单片机在系统中的控制功能,能够合理设计单片机的外围电路,并使之与单片机构成整个系统。

2功能要求智能小车作为现代的新发明,是以后的发展方向,他可以按照预先设定的模式在一个环境里自动运作,不需要人为的管理,可应用于科学勘探等等用途;并且能实现显示时间、速度、里程,具有自动寻迹、寻光、避障等功能,可程控行驶速度、准确定位停车,远程传输图像、按键控制加速,减速,刹停,左转和右转、实时显示运行状态等功能。

3 总体设计方案在现有玩具电动车的基础上,加了四个按键,实现对电动车的运行轨迹的启动,并将按键的状态传送至单片机进行处理,然后由单片机根据所检测的各种按键状态实现对电动车的智能控制。

这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。

本设计采用AT89C51单片机。

以AT89C51为控制核心,利用按键的动作,控制电动小汽车的状态。

加装光电、红外线、超声波传感器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动小车的智能控制,如图1所示。

简易智能电动车采用AT89C51单片机进行智能控制。

开始由手动启动小车,并复位初始化,当到达规定的起始黑线,由小车底部的红外光电传感器检测到第一条黑线后,通过单片机控制小车开始记数、显示、调速[2]。

在白纸所做轨迹道路中,小车通过超声波传感器正前方检测和光电传感器左右侧检测,由单片机控制实现系统的自动避障功能。

在电动车进驶过程中,采用双极式H型PWM脉宽调制技术,以控制小车调速;并采用动态共阴显示行驶时间和里程。

蓝牙小车

蓝牙小车课程设计报告一、实验目的通过设计进一步掌握51单片机的应用,特别是在嵌入式系统中的应用。

进一步学习51单片机在系统中的控制功能,能够合理设计单片机的外围电路,并使之与单片机构成整个系统。

二、设计方案该智能车采用蓝牙模块对单片机进行控制,单片机根据采集到的信号的不同状态判断小车当前状态,通过电机驱动芯片L298N发出控制命令,控制电机的工作状态以实现对小车姿态的控制。

本次设计的蓝牙小车可实现5种状态:前进、后退、左转、右转、停止。

三、设备选型1、STC89C54单片机1个2、L298N驱动模块1个3、HC06蓝牙模块1个4、18RP 稳压芯片1个5、104电容2个6、带自锁开关1个7、发光二极管(工作指示灯)1个8、尼龙柱4根9、车模1个10、排针、杜邦线若干11、四个装电池盒1个四、硬件电路设计1、最小系统本次小车实验采用的是STC89C54单片机模块,已自带时钟电路和复位电路,无需再接。

STC89系列芯片是51芯片的加强版。

STC89C54RD+单片机具有提高MCU的运行速度,运行稳定,价格便宜,良好的性价比等特点,其支持的最高时钟为80M,这样能最大限度地提高MCU的运行速度;具有双倍速功能,支持6时钟周期模式运行;具有ISP在线系统编程功能,大大缩短开发复杂度,同时可节省购买编程器的额外投入;STC89C54RD+单片机内部包括16KB的Flash程序存储器ROM、1KB 的数据存储器RAM,与普通的8051单片机完全兼容,而51单片机的开发环境也很成熟:如KeilC语言广泛地应用于新产品的开发,这对于缩短系统开发周期有着很重要的意义,管脚图如下所示。

2、电源装置小车通过蓝牙接收控制信号传递给单片机,由单片机给出指令控制其前进转向等动作,各部分都需要由电路支持,电源管理尤为重要。

在本设计中,采用4节干电池供电,额定电压为7.2V,考虑到L298N 驱动模块与单片机、蓝牙模块所需的电压不同,蓝牙与单片机直接通过电池供电,L298N驱动模块需通过稳压电路稳压后供电。

单片机课程设计-蓝牙小车

单片机课程设计-蓝牙小车一、课程目标知识目标:1. 让学生理解单片机的基本原理,掌握其编程方法;2. 使学生了解蓝牙技术的原理及其在单片机控制中的应用;3. 帮助学生掌握蓝牙小车的设计原理,能分析其电路组成及功能。

技能目标:1. 培养学生动手实践能力,能独立完成单片机程序的编写和调试;2. 提高学生的问题解决能力,能够针对蓝牙小车出现的问题进行分析和修复;3. 培养学生的团队协作能力,通过小组合作完成蓝牙小车的组装和调试。

情感态度价值观目标:1. 培养学生对单片机及电子制作的兴趣,激发其创新意识;2. 培养学生积极的学习态度,使其具备自主学习、探究问题的精神;3. 增强学生的环保意识,使其关注可持续发展,并在设计过程中注重节能环保。

分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立编写单片机程序,实现对蓝牙小车的控制;2. 学生能够分析并解决蓝牙小车在运行过程中出现的问题;3. 学生能够通过团队协作,完成蓝牙小车的组装、调试和优化;4. 学生能够关注单片机及蓝牙技术在生活中的应用,具备初步的创新设计能力。

二、教学内容本课程教学内容主要包括以下几部分:1. 单片机基础理论:介绍单片机的组成、工作原理及编程方法,涉及教材第1章至第3章内容。

2. 蓝牙技术原理:讲解蓝牙技术的原理、特点以及在单片机控制中的应用,涉及教材第4章内容。

3. 蓝牙小车设计原理:分析蓝牙小车的电路组成、功能及工作原理,涉及教材第5章内容。

4. 单片机编程与调试:教授如何编写和调试单片机程序,实现对蓝牙小车的控制,涉及教材第6章内容。

5. 蓝牙小车组装与调试:指导学生进行蓝牙小车的组装、调试及优化,涉及教材第7章内容。

6. 实践与创新:培养学生动手实践能力,激发创新意识,结合教材内容进行拓展实践。

教学进度安排如下:1. 第1-2周:学习单片机基础理论,完成教材第1章至第3章的学习;2. 第3周:学习蓝牙技术原理,完成教材第4章的学习;3. 第4周:学习蓝牙小车设计原理,完成教材第5章的学习;4. 第5-6周:进行单片机编程与调试,完成教材第6章的学习;5. 第7-8周:进行蓝牙小车组装与调试,完成教材第7章的学习;6. 第9-10周:进行实践与创新,结合所学内容进行拓展实践。

蓝牙小车课程设计结论

蓝牙小车课程设计结论一、教学目标本课程旨在通过学习蓝牙小车的设计与制作,使学生掌握蓝牙技术的基本原理,培养学生的动手实践能力和创新能力。

具体的教学目标包括:知识目标:使学生了解蓝牙技术的工作原理、基本协议和应用场景;掌握蓝牙模块的选型和接入方法;了解电子电路的基本知识。

技能目标:培养学生使用编程语言进行蓝牙通讯编程的能力;培养学生进行电子电路设计与制作的能力;培养学生解决实际问题的能力。

情感态度价值观目标:培养学生对科技创新的热爱,提高学生的问题解决能力,培养学生的团队合作精神。

二、教学内容本课程的教学内容主要包括蓝牙技术的基本原理、蓝牙模块的接入与编程、电子电路设计与制作等。

具体的教学内容安排如下:第一章:蓝牙技术概述介绍蓝牙技术的发展历程、工作原理和应用场景。

第二章:蓝牙模块的接入与编程讲解如何选择合适的蓝牙模块,并通过编程实现蓝牙通讯。

第三章:电子电路设计与制作介绍电子电路的基本知识,并通过实例讲解如何设计并制作电子电路。

第四章:蓝牙小车的设计与制作综合运用前面所学的知识,设计并制作一个蓝牙小车。

三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括:讲授法:用于讲解蓝牙技术的基本原理和电子电路的基本知识;实验法:用于培养学生的动手实践能力,通过实际操作来加深对知识的理解;小组讨论法:用于培养学生的团队合作精神,通过小组合作完成蓝牙小车的设计与制作。

四、教学资源为了支持教学,我们将提供以下教学资源:教材:《蓝牙技术手册》参考书:《蓝牙编程与应用》多媒体资料:相关的教学视频和PPT实验设备:蓝牙模块、电路元件、实验板等。

五、教学评估为了全面、客观地评估学生在蓝牙小车课程中的学习成果,我们将采取以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答情况以及团队合作表现来评估学生的学习态度和积极性。

2.作业:布置与课程内容相关的作业,评估学生对知识的理解和应用能力。

3.实验报告:通过评估学生在实验过程中的设计思路、实验结果和问题解决能力来衡量其动手实践能力。

C51蓝牙小车课程设计

C51蓝牙小车课程设计一、课程目标知识目标:1. 掌握C51单片机的原理及应用,理解蓝牙通信技术的基本概念;2. 学习并掌握蓝牙模块的配置与使用,了解蓝牙小车的基本结构及功能;3. 了解电路原理图及编程方法,能运用所学知识分析并解决实际问题。

技能目标:1. 能够独立完成蓝牙小车的组装和调试,提高动手实践能力;2. 学会使用C语言编程,实现对蓝牙小车的控制,提高编程技能;3. 能够通过团队协作,共同完成蓝牙小车的制作,提高沟通与协作能力。

情感态度价值观目标:1. 培养学生对电子制作和编程的兴趣,激发创新精神;2. 培养学生面对问题积极思考、勇于探索的良好品质;3. 增强学生的团队合作意识,培养集体荣誉感。

分析课程性质、学生特点和教学要求,本课程旨在通过实践操作,使学生在掌握C51单片机和蓝牙通信技术的基础上,培养实际动手能力、编程技能和团队协作能力。

课程目标分解为具体学习成果,以便于后续教学设计和评估。

通过本课程的学习,学生将能够具备运用所学知识解决实际问题的能力,同时培养良好的情感态度价值观。

二、教学内容1. C51单片机原理及编程基础:介绍C51单片机的结构、工作原理,学习C语言编程基础,掌握中断、定时器等基本功能的使用。

相关教材章节:第1章 单片机概述,第2章 C语言基础,第3章 中断与定时器。

2. 蓝牙通信技术:学习蓝牙技术的基本概念、原理和应用,了解蓝牙模块的配置与使用方法。

相关教材章节:第4章 通信技术基础,第5章 蓝牙技术及其应用。

3. 蓝牙小车硬件结构与组装:分析蓝牙小车的硬件结构,学习各部分的连接方法和调试技巧。

相关教材章节:第6章 硬件系统设计,第7章 系统调试与优化。

4. 蓝牙小车程序设计:结合C51单片机编程,设计蓝牙小车的控制程序,实现对小车的运动控制。

相关教材章节:第8章 单片机程序设计,第9章 蓝牙小车控制程序设计。

5. 实践操作与团队协作:分组进行蓝牙小车的组装、调试和程序设计,培养实际动手能力,提高团队协作能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计系别:电子信息工程班级:信10050 6 学号:信10050601 姓名:徐彬彬引言制作一个基于51单片机的控制的无线控制小车。

一、系统设计由51单片机控制直流电机的正反转来控制小车的运动。

无线部分用来接收上位机(电脑或者手机)发出的信号,通过信号控制单片机调用函数程序来控制小车的运行状态。

无线部分:用蓝牙从机的TTL接口接收信号反馈给单片机,还可以通过电脑的无线局域网网卡来控制路由器的TTL串口来控制单片机的状态。

由于蓝牙模块容易得到且接口方便,电压可以用+5V控制,携带方便,便于在小车上安装。

电机驱动:电机驱动需要大电流,较高的电压,考虑到单片机的负载能力,用L298N驱动模块来驱动电机,单片机输出逻辑信号控制L298N模块输出正反向电压,由此控制电机的正反转。

小车的运动状态:小车为四轮驱动,一侧的两个电机分为一组。

二、软件设计单片机电路:由p1口输出逻辑电平驱动L298N电路L298N驱动电机电路,供给+5V和+12V电压三、系统的仿真与调试用简单程序仿真测试电路连接情况汇编程序代码:org 0000hajmp mainorg 0080hmain:mov a,#0ffhmov p1,a ;不转call delay ;延时loop: mov a,#00ah ;正转mov p1,acall delaymov a,#0ffh;停止mov p1,acall delaymov a,#005h;反转mov p1,acall delaymov a,#0ffh;停止mov p1,acall delayjmp loopdelay: mov r5,#50 ;延时。

d1: mov r6,#40d2: mov r7,#248djnz r7,$djnz r6,d2djnz r5,d1retend仿真结果:电机正反转均正常小车程序:用单片机控制小车的四个状态,前进,后退,左转,右转。

由四个函数实现,执行条件为中断。

当蓝牙从机接收到数据传输到单片机时,单片机内部选择指令,调动while函数,判断指令数据,从而控制小车状态。

四、程序设计循环函数,控制小车的状态while(1){switch(Buffer[0]){case 0: Moto_Stop(); break;case 1: Moto_Forward(); break;case 2: Moto_Backward(); break;case 3: Moto_TurnLeft(); break; case 4: Moto_TurnRight(); break; default:break;}}五、总结(心得体会)是否完成六、程序清单#include<reg52.h>#include<math.h>#define uchar unsigned char#define uint unsigned intuchar Buffer[4] = {0}; //从串口接收的数据uint i,j;sbit Left_Positive=P1^0;sbit Left_Negative=P1^1;sbit Right_Positive=P1^2;sbit Right_Negative=P1^3;sbit LeftLight=P2^1;sbit RightLight=P2^2;/******************************************************************** * 名称: Delay_1ms()* 功能: 延时子程序,延时时间为1ms * x* 输入: x (延时一毫秒的个数)* 输出: 无********************************************************************* **/void Delay_1ms(uint i)//1ms延时{uchar x,j;for(j=0;j<i;j++)for(x=0;x<=148;x++);}/******************************************************************** * 名称: Com_Int()* 功能: 串口中断子函数* 输入: 无* 输出: 无********************************************************************* **/void Com_Int(void) interrupt 4{EA = 0;if(RI == 1) //当硬件接收到一个数据时,RI会置位{Buffer[0] = SBUF - 48; //这里减去48是因为从电脑中发送过来的数据是ASCII码。

RI = 0;}EA = 1;}/******************************************************************** * 名称: Com_Init()* 功能: 串口初始化,晶振11.0592,波特率9600,使串口中断* 输入: 无* 输出: 无********************************************************************* **/void Com_Init(void){TMOD = 0x20;PCON = 0x00;SCON = 0x50;TH1 = 0xFd; //设置波特率9600TL1 = 0xFd;TR1 = 1; //启动定时器1ES = 1; //开串口中断EA = 1; //开总中断}/******************************************************************** * 名称:Moto_Forward()* 功能: 电机1、2启动,都是前进,整车表现为前进。

* 输入: 无* 输出: 无问题********************************************************************* **/void Moto_Forward(){Right_Negative=0;Left_Positive=0;Left_Negative=1;Right_Positive=1;Delay_1ms(100);}/******************************************************************** * 名称:Moto_Backward()* 功能: 电机1、2启动,都是后退,整车表现为后退。

* 输入: 无* 输出: 无********************************************************************* **/void Moto_Backward(){Left_Positive=0;Right_Positive=0;Right_Negative=1;Left_Negative=1;Delay_1ms(100);}/******************************************************************** * 名称:Moto_TurnLeft()* 功能: 电机1后退,电机2前进,整车表现为左转。

* 输入: 无* 输出: 无********************************************************************* **/void Moto_TurnLeft(){Left_Negative=0;Right_Positive=0;Right_Negative=1;Left_Positive=1;Delay_1ms(100);}/******************************************************************** * 名称:Moto_TurnRight()* 功能: 电机1前进,电机2后退,整车表现为右转。

* 输入: 无* 输出: 无********************************************************************* **/void Moto_TurnRight(){Right_Negative=0;Left_Negative=0;Left_Positive=1;Right_Positive=1;Delay_1ms(100);}/******************************************************************** * 名称:Moto_Stop()* 功能: 电机1停止,电机2停止,整车表现为停止。

* 输入: 无* 输出: 无********************************************************************* **/void Moto_Stop(){Right_Negative=0;Left_Negative=0;Left_Positive=0;Right_Positive=0;Delay_1ms(100);}void main(){Delay_1ms(100);Com_Init();//串口初始化while(1)//循环结构,选择函数控制小车的状态{switch(Buffer[0]){case 0: Moto_Stop(); break;case 1: Moto_Forward(); break;case 2: Moto_Backward(); break;case 3: Moto_TurnLeft(); break;case 4: Moto_TurnRight(); break;default:break;}}}七、参考文献【】作者.书名(版本)【M】:出版社,年份不少于三篇附录:【下载本文档,可以自由复制内容或自由编辑修改内容,更多精彩文章,期待你的好评和关注,我将一如既往为您服务】。

相关文档
最新文档