智能小车单片机课程设计报告

合集下载

单片机小汽车课程设计

单片机小汽车课程设计

单片机小汽车课程设计一、课程目标知识目标:1. 让学生了解单片机的基本原理,掌握其编程方法;2. 使学生掌握单片机控制小汽车的基本电路连接和功能实现;3. 帮助学生理解传感器在小汽车控制中的应用。

技能目标:1. 培养学生运用单片机进行创新设计的能力;2. 提高学生动手实践能力,能够独立完成小汽车控制电路的搭建和程序编写;3. 培养学生团队协作解决问题的能力。

情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养其探究精神;2. 培养学生面对问题时的耐心、细心和毅力,增强克服困难的信心;3. 引导学生关注科技发展,认识单片机在现实生活中的应用,提高社会责任感。

课程性质:本课程为实践性较强的课程,结合单片机原理和电子制作技术,以项目式教学引导学生动手实践。

学生特点:学生具备一定的电子基础知识,对单片机有一定了解,喜欢动手实践,对创新设计具有较高兴趣。

教学要求:教师需结合学生特点,采用启发式教学,引导学生主动探索,注重培养学生的动手实践能力和团队协作精神。

在教学过程中,关注学生个体差异,给予个性化指导,确保每位学生都能达到课程目标。

通过课程学习,使学生能够将所学知识应用于实际项目中,提高其综合素养。

二、教学内容1. 单片机原理及编程基础:复习单片机的基本结构、工作原理,学习编程语言及编程技巧,对应教材第1章至第3章内容。

- 单片机的基本结构及功能;- 编程语言(C语言)基础;- 单片机程序编写及调试方法。

2. 小汽车控制电路设计:学习传感器、驱动电路及电源管理等部分的设计与实现,对应教材第4章内容。

- 常用传感器原理及应用;- 驱动电路设计;- 电源管理及保护电路设计。

3. 实践操作:动手搭建小汽车控制电路,编写程序实现小汽车的基本功能,如前进、后退、转向等,对应教材第5章内容。

- 电路搭建及调试;- 程序编写及优化;- 小汽车功能实现。

4. 项目拓展:引导学生进行创新设计,对小汽车功能进行拓展,如添加避障、循迹等功能,提高学生综合运用知识的能力。

智能小车控制实验报告

智能小车控制实验报告

一、实验目的本次实验旨在通过设计和搭建一个智能小车系统,学习并掌握智能小车的基本控制原理、硬件选型、编程方法以及调试技巧。

通过实验,加深对单片机、传感器、电机驱动等模块的理解,并提升实践操作能力。

二、实验原理智能小车控制系统主要由以下几个部分组成:1. 单片机控制单元:作为系统的核心,负责接收传感器信息、处理数据、控制电机运动等。

2. 传感器模块:用于感知周围环境,如红外传感器、超声波传感器、光电传感器等。

3. 电机驱动模块:将单片机的控制信号转换为电机驱动信号,控制电机运动。

4. 电源模块:为系统提供稳定的电源。

实验中,我们选用STM32微控制器作为控制单元,使用红外传感器作为障碍物检测传感器,电机驱动模块采用L298N芯片,电机选用直流电机。

三、实验器材1. STM32F103C8T6最小系统板2. 红外传感器3. L298N电机驱动模块4. 直流电机5. 电源模块6. 连接线、电阻、电容等7. 编程器、调试器四、实验步骤1. 硬件搭建:- 将红外传感器连接到STM32的GPIO引脚上。

- 将L298N电机驱动模块连接到STM32的PWM引脚上。

- 将直流电机连接到L298N的电机输出端。

- 连接电源模块,为系统供电。

2. 编程:- 使用Keil MDK软件编写STM32控制程序。

- 编写红外传感器读取程序,检测障碍物。

- 编写电机驱动程序,控制电机运动。

- 编写主程序,实现小车避障、巡线等功能。

3. 调试:- 使用调试器下载程序到STM32。

- 观察程序运行情况,检查传感器数据、电机运动等。

- 调整参数,优化程序性能。

五、实验结果与分析1. 避障功能:实验中,红外传感器能够准确检测到障碍物,系统根据检测到的障碍物距离和方向,控制小车进行避障。

2. 巡线功能:实验中,小车能够沿着设定的轨迹进行巡线,红外传感器检测到黑线时,小车保持匀速前进;检测到白线时,小车进行减速或停止。

3. 控制性能:实验中,小车在避障和巡线过程中,表现出良好的控制性能,能够稳定地行驶。

遥控智能小车课程设计报告书

遥控智能小车课程设计报告书

摘要介绍了语音遥控的电动小车的机械结构与控制部分.在机械结构上,对普通的玩具小车做了改进,使小车的转向更加灵活,并且在设计围可以实现任意角度转弯和任意速度移动;而在控制系统部分,则采用语音控制方式,使小车可以"听懂"人的命令,娱乐性和互动性更强.该小车各部分采用模块化设计,各个模块之间独立性强。

控制部分采用可编程微处理哭器,可以在不增加系统硬件的情况下方便地对系统进行二次开发。

本文对一辆小车进行了实验,实验结果表明,语音识别系统在低噪声环境中识别率很高,在噪声水平较高的场合,识别率有所下降。

小车反应灵敏。

关键词:语音识别单片机智能小车电机驱动目录绪论31总体方案41.1方案论证41.2总体方案图41.3系统工作原理42硬件设计52.1 语音识别模块52.2 电机驱动模块102.3 红外检测模块112.4 键盘电路122.5 主控芯片8051模块132.5.1单片机的电源设计132.5.2单片机复位电路143.软件设计143.1主程序143.2监控程序153.3 延时程序19结论20参考文献21绪论在电气时代的今天,电动机一直在现代化的生产和生活中起着十分重要的作用。

无论是在工农业生产、交通运输、医疗卫生、办公,还是在日常生活中,都大量的使用着各种电动机。

而微处理器取代模式电路作为电动机控制的技术也日渐成熟。

单片机介于工业控制计算机和可编程控制器之间,他有较强的控制能力、低价的成本。

人们在选择电动机控制器时,常常是在先满足功能需要的同时,优先选择成本低的控制器。

语音遥控的电动小车的机械结构与控制部分有了新的改进。

在机械结构上,对普通的玩具小车做了改进,使小车的转向更加灵活,并且在设计围可以实现任意角度墨迹和任意速度移动;而在控制系统部分,则采用语音控制方式,使小车可以“听懂”人的命令,娱乐性和互动性更强。

1总体方案1.1方案论证本系统采用芯片TSG110进行语音识别过程,通过语音的识别完成对小车的控制,通过对红外的检测完成对小车的避障,该设计可以达到系统要求的各项指标,设计方案是可行的。

单片机智能小车课程设计

单片机智能小车课程设计

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

实现智能小车的设计报告

实现智能小车的设计报告

实现智能小车的设计报告
一、项目背景
智能小车是一款结合了机械、机电、计算机等多种技术的智能机器人,能够获取环境信息、自主探索并完成各种任务。

智能小车在工业自动化、智能家居、物流配送等领域有着广泛地应用,在科研和商业领域都有着重要的地位和作用。

二、项目目的
本项目旨在通过设计制作智能小车,探索机器人控制、机械设计及电路控制等多方面知识,并应用到实际中,提高学生工程设计能力和动手能力。

三、设计方案
本智能小车采用树莓派单片机控制,配合多种传感器实现环境感知、路径规划和控制等功能。

车身采用3D打印技术制作,机身外型为椭圆形,具有一定的稳定性和降低空气阻力的特点。

底盘采用两轮驱动设计,其中一轮为万向轮,以提高小车的灵活性和控制性能。

四、技术方案
1.单片机控制
树莓派作为本项目的主控制器,采用GPIO输出信号控制各种功能模块,包括机械模块、传感器模块和电路模块等。

2.传感器模块
小车的传感器模块包括超声波传感器、巡线传感器、红外避障传感器等,这些传感器用于获取小车周围环境信息,提高小车的自主探索和避障能力。

3.路径规划
小车的路径规划采用A*算法,根据当前位置、目标位置以及环境地形等因素制定最优路径,并实时更新路径信息。

4.电路控制
小车的电路控制采用PWM技术,控制小车速度和方向,配合电池电量检测和保护电路等技术,保证小车的安全和稳定性。

五、结论
通过本项目的实践设计,掌握了机器人控制、机械设计和电路控制等技术,加深了对工程设计的理解,提高了动手操作能力。

同时,本项目的可拓展性和适用范围广泛,具有较高的应用价值和发展前景。

智能车单片机实践报告

智能车单片机实践报告

以自动循迹智能车为载体的“单片机应用系统设计实践”1、设计目标小车能自己识别道路,自主导航跑过指定道路。

2、总体方案设计整体控制流程图:单片机控制器识别磁场信号,比赛中用的是通过信号发生器产生的变化磁场。

我们需要通过电感采集到信号,再通过运算放大电路将信号放大,继而形成识别道路的信号,最后将信号通过单片机的ADC采集管脚输入到单片机。

在单片机中处理后(在此过程中运用不同算法整理信号数据,减少误差)向舵机和电机发出指令,使小车的转角和速度做出相应改变,小车的前进方向和前进速度就会做出相应变化。

系统全部包括:汽车动态分析车速控制模块方向控制模块赛道检测模块电子控制模块策略规划模块行为决策模块路况记忆模块数据传输模块3、硬件电路设计小车硬件设计结构图人机接口模块:电感传感器原理根据电磁学相关知识,我们知道在导线中通人变化的电流(如按止弦规律变化的电流).则导线周围会产生变化的磁场,且磁场与电流的变化规律具有一致性,如果在此磁场中置一个电感,则该电感上会产生感应电动势,且该感应电动势的大小和通过线圈回路的磁通量的变化率成正比。

由于在导线周围不同位置,磁感应强度的大小和方向不同,所以不同位置上的电感产生的感应电动势也应该不同。

据此,则可以确定电感的大致位置。

采用ADC采集管收集信号:一般会采集一个周期采集多次求取平均值的方法来稳定信号。

在放大器输出端加上检波的电路,把交流信号变成直流。

信号波动很小,噪声可以忽略。

每次采集5次,求个平均。

对偏差数据的处理,这里用的是差比和,目的是为了在把偏差放在自己想要的范围之类,在不同环境下也可以得到有效偏差。

相关识别类代码有:void ADC_init(){adc_init(ADC_IN8_B0);adc_init(ADC_IN9_B1);// adc_init(ADC_IN4_A4);// adc_init(ADC_IN6_A6);}void ADC_GET(){left_ad = adc_convert(ADC_IN8_B0 ,ADC_8BIT);right_ad = adc_convert(ADC_IN9_B1 ,ADC_8BIT);}void ADC_Error(){int16 ad_difference=0;int16 ad_sum=0;ad_difference=left_ad-right_ad;ad_sum=left_ad+right_ad;ad_error=(ad_difference*30)/ad_sum;}磁传感器信号处理电路确定使用电感作为检测导线的传感器,但是其感应信号较微弱,且混有杂波,所以要进行信号处理。

基于51单片机的智能小车设计报告

基于51单片机的智能小车设计报告

本人保证自写文档,文档不足之处请谅解目录一、设计的目的------------------1二、设计的模块------------------1三、程序的流程------------------6四、元器件清单------------------8五、成品的制作------------------8六、注意事项--------------------9七、设计的总结------------------9设计的目的智能遥控车地目的主要突出在智能与遥控上,遥控意思明显就是通过某种控制手段使得小车能够实现由控制者控制前进后退等操作;智能可以体现为功能上的智能化。

本作的目的是实现控制小车移动时对前方所存在的威胁进行报警提醒。

设计的模块此次设计的硬件电路模块大致为五大类,分别是51单片机最小系统模块、电源模块、电机工作驱动模块、超声波报警系统模块、无线控制发射接收模块。

下图为硬件电路框图:1、单片机最小系统此模块式是本设计的控制核心模块,单片机最小系统由三部分组成:STC89C52芯片部分、复位部分(由按键开关、极性电容、10K电阻组成)、晶振部分(由12M石英晶振、两个30PF的瓷片电容组成)。

主要起程序的输入与控制、程序的复位、时间频率控制的作用。

2、无线控制模块本设计的无线控制模块是由编码芯片PT2262和解码芯片PT2272组成的电路模块组成,工作方式是编码芯片PT2262 发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272 接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。

3、电机驱动模块本设计是采用了L298N电机驱动模块来驱动减速电机工作;L298N是ST公司生产的一种高电压、大电流电机驱动芯片。

该芯片采用15脚封装。

主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功率25W。

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

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

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

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

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

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

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

本设计采用AT89C51单片机。

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

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

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

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

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

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

单片机智能小车实训报告

单片机智能小车实训报告
单片机智能小车实训报告
学生姓名:李巧生,鄢汉葵,秦飞宇 组 长;秦飞宇
指导老师:曹铁军
实训任务
• 实现手机APP对智能小车的遥控。 • 实现小车自动寻迹,避障等功能。
设计思路
基于单片机控制的简易通过手机APP蓝牙控制小车系统,包 括小车系统构成硬件设计方法。小车以ST89C52单片机为控制 核心,手机通过蓝牙发送数据到蓝牙模块,蓝牙模块会自动转 发到与之相连的单片机处。以此,单片机通过对获取到的信息 给予分析判断,及时控制驱动电机来调整小车的移动方向。
基于单片机控制的简易自动寻迹小车系统,包括小车系统构成硬件设 计方法。小车以ST89C52单片机为控制核心, 用单片机产生PWM波,控 制小车速度。利用寻迹模块对路面黑色轨迹进行检测,并将路面检测信号 反馈给单片机。单片机对采集到的信号予以分析判断,及时控制驱动电机 以调整小车转向,从而使小车能够沿着黑色轨迹自动行驶,实现小车自动寻 迹的目的。 基于单片机控制的简易自动避障小车系统,避障模块对前方,左前, 右前的障碍进行分析判断,控制电机调整小车转向。
项目硬件方案
智能小车
手机APP
蓝牙模块
ST89C52 开发板
驱动模块
电机
电源模块
寻迹模块
避障模块
模块分析
一、驱动模块 1)直流电机: 电机转速与电压成正比。 改变电源极性可以改变电机转向。
施加一个PWM(脉宽调制)方波,其占空比对应于所需速度。
2)直流电机的驱动: 此实训使用专用芯片进行驱动。
二、蓝牙模块 本项目使用的蓝牙模块为HC-05主从机 一体蓝牙模块,能够实现串口透明传输 功能。 所谓透明传输功能即单片机通过串口 发送数据到蓝牙模块,蓝牙模块自动把 接收到的数据转发到与之连接的手机蓝 牙上,而无需关心蓝牙模块如何实现中 间的传输过程,同理,手机通过蓝牙发 送数据到蓝牙模块,蓝牙模块会自动转 发到与之相连的单片机处。

单片机智能小车课程设计

单片机智能小车课程设计

单片机智能小车课程设计
一、课程的目的
本课程的目的是让学生学习如何使用单片机来构建智能小车,了解单片机的工作原理,掌握编程语言,完成智能小车的设计与制作,并将它应用到实际的解决方案当中。

二、课程的内容
本课程分为三个部分。

# 1. 单片机基础
本部分为学生提供单片机的相关理论知识,其中包括单片机工作原理、构建电路板等基础内容。

学生需要学习器件的原理、作用、施加电压的方式等。

# 2. 编程
本部分教学内容主要包括单片机的编程,需要学生掌握C语言和汇编语言的编程技巧,了解单片机的外部接口及它们的工作原理,学会使用汇编语言及相关软件操作系统等。

# 3. 实践
本部分主要让学生结合前两部分的内容,进行实践,将编程、接口等知识点应用到实际的智能小车中,实现从计划到实施的全部流程。

三、讲师及教材
本课程的讲授和教学由外聘的专业老师主讲,教材来源于国内外的单片机设计书籍及软件资料。

四、实验室设备
1. 智能小车实验室:配备了智能小车的电子元器件、电路板、外壳及测试仪器等,可以让学生进行智能小车设计与装配实验;
2. 编程实验室:配备了单片机软件开发工具、编程器及外部接口,用于学生的编程实验;
3. 课堂实验:课堂上展示完成的智能小车模型,并在学生观察的情况下,用编程语言完成小车的控制。

51单片机小车课程设计

51单片机小车课程设计

51单片机小车课程设计一、教学目标本课程旨在让学生了解和掌握51单片机小车的基础知识,包括单片机的结构、原理、编程和应用。

通过本课程的学习,使学生能够熟练使用51单片机小车进行简单的编程和实验,培养学生的动手能力、创新意识和科技兴趣。

具体目标如下:1.知识目标:了解51单片机的内部结构、工作原理和编程方法;掌握C语言的基本语法和编程技巧;了解如何使用51单片机小车进行传感器数据采集和控制。

2.技能目标:能够使用Keil、MPLAB等集成开发环境进行程序编写;能够独立完成51单片机小车的硬件连接和调试;具备分析和解决问题的能力。

3.情感态度价值观目标:培养学生对科技的热爱,提高学生的创新意识,培养学生的团队协作能力和沟通能力。

二、教学内容教学内容主要包括以下几个部分:1.51单片机基础知识:单片机的结构、原理、编程语言及开发环境。

2.C语言编程:基本语法、数据类型、运算符、控制结构、函数等。

3.51单片机小车硬件系统:电源、电机、传感器、通信模块等硬件设备及原理。

4.51单片机小车软件系统:程序设计、调试与优化。

5.应用实践:通过项目案例,使学生掌握51单片机小车的应用技巧,提高学生的实际操作能力。

三、教学方法本课程采用多种教学方法相结合,以激发学生的学习兴趣和主动性:1.讲授法:讲解51单片机基础知识、C语言编程和硬件系统原理。

2.案例分析法:分析实际项目案例,使学生了解51单片机小车的应用场景。

3.实验法:让学生动手搭建和调试51单片机小车,提高学生的实践操作能力。

4.讨论法:学生进行小组讨论,培养学生的团队协作能力和沟通能力。

四、教学资源教学资源包括:1.教材:《51单片机原理与应用》、《C语言程序设计》等。

2.参考书:相关论文、技术文档、在线教程等。

3.多媒体资料:PPT、视频教程、实验演示等。

4.实验设备:51单片机小车、编程器、实验板、传感器等。

五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。

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

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

单片机课程设计系别:电子信息工程班级:信10050 6 学号:信******** :徐彬彬引言制作一个基于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仿真结果:电机正反转均正常小车程序:用单片机控制小车的四个状态,前进,后退,左转,右转。

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

智能小车课程设计报告(全文)

智能小车课程设计报告(全文)

引言概述
智能小车课程设计报告是对于一种智能小车的设计和开发过程的详细记录和总结。

本报告旨在介绍智能小车的设计背景、目标与需求,并详细阐述了设计过程中的各个环节以及所面临的挑战和解决方案。

通过本报告的阅读,读者可以了解到关于智能小车设计的关键技术以及相关的研究成果和应用。

正文内容
一、智能小车设计的背景与目标
1.1设计背景
1.2设计目标与需求
二、智能小车设计的硬件与软件平台
2.1硬件平台的选择与配置
2.2软件平台的选择与配置
三、智能小车的传感与感知系统
3.1传感与感知系统的设计需求
3.2传感与感知系统的设计方案
3.3传感与感知系统的实现与测试
四、智能小车的控制与决策系统
4.1控制与决策系统的设计需求
4.2控制与决策系统的设计方案
4.3控制与决策系统的实现与测试
五、智能小车的应用与展望
5.1智能小车的应用场景与效果分析
5.2智能小车设计的拓展与改进点
总结
本报告详细介绍了智能小车课程设计的全过程,包括了设计背景与目标、硬件与软件平台的选择与配置、传感与感知系统的设计与实现、控制与决策系统的设计与实现以及智能小车的应用与展望。

通过本次设计的实践,我们深入了解了智能小车设计的关键技术和相关研究成果,并获得了实际应用中所需要的技能和经验。

随着智能小车技术的不断发展,我们相信智能小车将在诸多领域中发挥重要作用,如自动驾驶、物流运输等。

因此,在未来的研究中,我们将继续探索智能小车设计的新思路和新方法,以实现更高的性能和更广泛的应用。

单片机课程设计报告 智能小车

单片机课程设计报告 智能小车
2.1 驱动模块 ........................................................ 2 2.2 路面探测模块 .................................................... 2 2.3 避障模块 ........................................................ 3 2.4 本设计采用方案及原理 ............................................ 3
方案二:采用红外传感器。此方案可以降低可见光的干扰,灵敏度高,同时其尺寸
2
大连民族学院 2012 级通信工程专业单片机系统课程设计报告
小。质量轻。价格也低廉。外围电路简单,安装起来方便,电源要求不高,用它作为近 距离传感器是最理想的。
方案三:利用激光。此方案虽然抗干扰性强、可靠性高,但其缺点在于体积大、功 耗大、价格高。一般用在要求非常高的场合,本系统采用方案二已经能够胜任,无须采 用此方案。
图 2.1 小车的基本模块方框图
为了使各个模块具有较好的性能,分别提出以下不同设计方案:
2.1 驱动模块
方案一:采用数控电位器 X9313 集合 NE555 多谐振荡器输出 PWM 信号。通过单片机 控制数控电位器来调整 NE555 多谐振荡器的输出方波的占空比,达到对电机速度的控制。 这个方案的优点是控制比较方便、软件资源消耗少。
2.4 本设计采用方案及原理
驱动模块提出的方案中,两方案相比较,软件控制量相当,但方案一的硬件电路较 为复杂,驱动能力不如方案二。综合考虑两种方案的优缺点,我们选择方案二来实现本 系统。
路面检测模块确定方案二的红外传感器作为循迹模块。由于它的价格和效果都可达 到我们想要的目的,并且安装方便,对其他硬件软件的要求都不高。

编程智能小车实验报告

编程智能小车实验报告

一、实验目的1. 了解智能小车的基本组成和原理。

2. 掌握编程智能小车的基本方法。

3. 培养动手能力和创新思维。

二、实验原理智能小车是一种能够通过编程实现自主移动、避障、寻找目标等功能的微型车辆。

它主要由以下几部分组成:1. 控制模块:负责整个系统的运行,如Arduino、Raspberry Pi等。

2. 传感器模块:用于检测周围环境,如红外传感器、超声波传感器等。

3. 驱动模块:负责控制小车前进、后退、转向等动作,如电机驱动器。

4. 电源模块:为整个系统提供电源。

本实验采用Arduino作为控制模块,通过编写程序实现小车的智能控制。

三、实验器材1. Arduino UNO控制板2. L298N电机驱动器3. 2个直流电机4. 2个车轮5. 1个红外传感器6. 1个超声波传感器7. 连接线若干8. 移动平台(如小车底盘)四、实验步骤1. 准备工作(1)搭建硬件电路:将电机驱动器、传感器、车轮等模块按照电路图连接到Arduino控制板上。

(2)编写程序:使用Arduino IDE编写控制小车运动的程序。

2. 编写程序(1)初始化传感器:设置红外传感器和超声波传感器的引脚,并初始化它们。

(2)编写主循环:在主循环中,读取传感器的数据,根据数据控制小车的运动。

(3)编写避障程序:当红外传感器检测到障碍物时,小车需要减速或停止,超声波传感器用于测量障碍物距离。

(4)编写寻找目标程序:当小车遇到目标时,根据目标位置调整小车方向,实现跟踪。

3. 调试与优化(1)调试程序:将编写好的程序上传到Arduino控制板,观察小车运行情况,根据实际情况调整程序。

(2)优化程序:根据实验需求,对程序进行优化,提高小车运行效率。

五、实验结果与分析1. 实验结果通过编程实现的小车能够完成以下功能:(1)自主移动:小车能够按照设定的路径前进、后退、转向。

(2)避障:当遇到障碍物时,小车能够减速或停止,避免碰撞。

(3)寻找目标:当遇到目标时,小车能够根据目标位置调整方向,实现跟踪。

51智能小车课程设计

51智能小车课程设计

51智能小车课程设计一、课程目标知识目标:1. 让学生了解智能小车的基本结构和工作原理,掌握相关的电子元件功能及其在智能小车中的应用。

2. 使学生掌握编程语言,能够运用所学知识对智能小车进行程序设计,实现基本的运动控制。

3. 帮助学生理解传感器在智能小车中的作用,能够运用传感器进行障碍物检测和路径规划。

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

2. 提高学生编程能力,使其能够针对不同场景编写相应的程序,实现智能小车的功能。

3. 培养学生团队协作能力,能够在小组合作中发挥个人特长,共同完成项目任务。

情感态度价值观目标:1. 激发学生对智能科技的兴趣,培养其探索精神和创新意识。

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

3. 引导学生关注智能科技在现实生活中的应用,认识到科技对社会的积极影响,培养社会责任感和使命感。

课程性质:本课程为实践性较强的课程,结合理论知识与动手实践,注重培养学生的动手能力、编程能力和创新能力。

学生特点:本课程针对初中或高中年级学生,学生具备一定的物理、数学和信息技术基础,好奇心强,喜欢动手实践。

教学要求:教师需采用项目式教学,引导学生主动参与,注重理论与实践相结合,关注个体差异,鼓励学生发挥潜能。

在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. 智能小车基础知识:介绍智能小车的结构组成、工作原理以及电子元件(如电机、电池、传感器等)的基本功能。

- 教材章节:第一章 智能小车概述- 内容列举:智能小车发展历程、基本结构、电子元件功能。

2. 编程语言学习:学习适用于智能小车编程的编程语言(如Python、C语言等),掌握基本语法和编程技巧。

- 教材章节:第二章 编程语言基础- 内容列举:编程语言简介、基本语法、程序结构、常用编程技巧。

3. 智能小车程序设计:学习如何编写程序控制智能小车的运动,包括前进、后退、转向等。

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

单片机课程设计题目: 智能小车设计专业: 计算机科学与技术班级: 14级2班姓名学号组长成员成员成员成员2016 年 12 月 23 日打开命令行终端的快捷方式:ctr+al+t:默认的路径在家目录ctr+shift+n:默认的路径为上一次终端所处在的路径.linux@ubuntu:~$linux:当前登录用户名.ubuntu:主机名:和$之间:当前用户所处在的工作路径.windows下的工作路径如C:\Intel\Logslinux下的工作路径是:/.../..../~:代表的是/home/linux这个路径.(家目录).ls(list):列出当前路径下的文件名和目录名.ls -a(all):列出当前路径下的所有文件和目录名,包括了隐藏文件. .:当前路径..:上一级路径ls -l:以横排的方式列出文件的详细信息total 269464(当前这个路径总计所占空间的大小,单位是K)drwxr-xr-x 3 linux linux 4096 Dec 4 19:16 Desktop第一个位置:代表的是文件的类型.linux系统下的文件类型有以下几种.b:块设备文件c:字符设备文件d:directory,目录-:普通文件.l:连接文件.s:套接字文件.p:管道文件.rwxr-xr-x:权限r:读权限 -:没有相对应的权限w:写权限x:可执行权限修改权限:chmod u-或者+r/w/x 文件名chmod g-或者+r/w/x 文件名chmod o-或者+r/w/x 文件名第一组:用户权限第二组:用户组的权限第三组:其他用户的权限.chmod 三个数(权限) 文件名首先根据你想要的权限生成二进制数,再根据二进制数转换成十进制的三位数rwxr-x-wx1111010117 5 3chmod 753 文件名rwx--xr-x第二个位置上的数字:对应目录下的子文件个数,如果是非目录,则数字是1 第三个位置:用户名(文件创造者).第四个位置:用户组的名字(前边的用户所处在的用户组的名字).第五个位置:对应文件所占的空间大小(单位为b)第六~八个位置:Dec 4 19:16时间戳(最后一次修改文件的时间)最后一个位置:文件名操作文件:1.创建一个普通文件:touch 文件名2.删除一个文件:rm(remove) 文件名3.新建一个目录:mkdir(make directory) 目录名递归创建目录:mkdir -p 目录1/目录2/目录34.删除一个目录:rmdir 目录名.//仅删除一个空目录rm -rf 目录名//删除一个非空目录5.切换目录(change directory):cd 路径linux下的路径分两种相对路径:以.(当前路径)为起点.绝对路径:以/(根目录)为起点,用相对路径的方式进入Music:cd ./Music用绝对路径的方式进入Desktop:cd /home/linux/Desktop返回上一级:cd ..返回加家目录的三种方式(1).cd(2).cd ~(3).cd /home/linux进入到1目录里并创建一个2普通文件,再退回上一级,并且删除1目录6.拷贝文件.cp(copy) 路径1/源文件路径2:把路径1下的文件拷贝到路径2下cp 路径1/源文件路径2/目标文件:把路径1下的文件拷贝到路径2下并且重命名位目标文件.cp(copy) -r 路径1/目录名路径2:把路径1下的目录拷贝到路径2下7.剪切文件mv(move) 路径1/源文件路径2:把路径1下的文件剪切到路径2下mv 路径1/源文件路径2/目标文件:把路径1下的文件剪切到路径2下并且重命名位目标文件mv 源文件目标文件:重命名文件mv 路径1/目录名路径2:把路径1下的目录剪切到路径2下8.clear:清屏9.exit 退出终端vi编辑器.vi 文件名:如果文件不存在则创建并打开如果文件已存在,则直接打开VI编辑器的三种模式1.命令行模式:刚进入编辑器的时候,默认处在这种模式下2.编辑模式(插入模式):输入a/i/o即可进入,按下esc键退回命令行模式,再输入冒号,即可进入底行模式.3.底行模式下:w(保存),q(退出),wq(保存并退出),q!(强制退出不保存)按下退格键,删除冒号,即可进入命令行模式.终极保存法;w! sudo tee %d回车再回车即可命令行模式下的快捷操作:1.整行复制:光标移动想要复制的那一行,输入yy即可,再把光标移动到你想要粘贴位置的上一行,输入p即可2.多行复制:光标移动想要复制的那几行的第一行,输入数字yy即可,再把光标移动到想要粘贴的那几行的第一行,输入p即可,3.整行删除:光标移动想要删除的那一行,输入dd即可,4.多行删除:光标移动想要删除的那几行的第一行,输入数字dd即可,5.整行剪切:光标移动想要剪切的那一行,输入cc即可,这个时候进入到了编辑模式,按下esc键退回到命令行模式,再把光标移动到想要粘贴位置的上一行,输入p即可,6.多行剪切:光标移动想要剪切的那几行的第一行,输入数字cc即可,这个时候进入到了编辑模式,按下esc键退回到命令行模式,再把光标移动到想要粘贴位置的上一行,输入p即可.7.撤销上一步:u底行模式下的快捷操作1,对第a行到第b行进行复制:航标a,行标by,enter回车,再把光标移动到你想要粘贴位置的上一行,输入p即可2,对第a行到第b行进行删除:航标a,行标bd,enter回车3.对第a行到第b行进行剪切:航标a,行标bd,enter回车,再把光标移动到你想要粘贴位置的上一行,输入p即可编辑一个最简单的hello world程序,保存并退出gcc编译器.gcc 文件名:编译成功的话,会在当前目录生成一个a.out可执行程序执行程序: ./a.out当然也可以指定可执行程序的名字,命令如下:gcc 文件名 -o 可执行程序名编译步骤:1.预处理:gcc -i test.c -o test.i(宏定义的替换,头文件包含)2.汇编:gcc -s test.i -o test.s(c代码转换成汇编代码)3.编译:gcc -c test.s -o test.o(把汇编转换成二进制的目标程序)5.连接:gcc test.o -o test(连接库函数)linux系统的库文件:静态库:.a结尾动态库:.so结尾自己制作一个动态库.首先写一个简单的c功能函数编译成动态库:gcc -fPIC -shared 文件名 -o lib库文件名.so在linux系统下.程序运行时默认搜素库的路径是/lib把库拷贝到/lib下:cp lib库文件名.so /lib 错误提示":permission denied(权限不足)方法:sudo cp lib库文件名.so /lib 提示让你输入密码1:sudo暂时将普通用户的权限提高到root用户权限再编译一个c应用程序,在程序中来调用库里实现的函数gcc 应用程序名 -l库名(注意是去掉lib和.so的库名)文件IOlinux系统下一切设备皆文件操作文件:open():打开一个文件read()://从文件里边读出数据write()//向文件里写入数据close()//关闭文件man手册:man 2 函数名open:头文件#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>1.int open(const char *pathname, int flags);//仅限于打开一个已存在文件参数1:文件的路径参数2:打开方式的标志O_RDONLY,//只读方式打开O_WRONLY,//只写方式打开O_RDWR.//可读可写方式打开返回值:打开成功:返回一个正数(文件描述符)打开失败:-12.int open(const char *pathname, int flags, mode_t mode);//可以打开一个不存在的文件参数1:文件的路径参数2:打开方式的标志O_RDONLY,//只读方式打开O_WRONLY,//只写方式打开O_RDWR.//可读可写方式打开如果文件不存在必须|O_CRAET,创建该文件参数3:权限数比如:0666返回值:打开成功:返回一个正数(文件描述符)打开失败:-1write:头文件: #include <unistd.h>typedef int ssize_tssize_t write(int fd, const void *buf, size_t count); 参数1:就是open函数的返回值,文件描述符参数2:你想要写入的数据参数3:你想要写入的数据的字节大小返回值:写入成功:返回的是写入的字节大小写入失败:-1strlen:实际长度sizeof:数组的大小arduinoviod setup(){端口的配置;}void loop(){任务的执行;}arduino之呼吸灯实验:int led=13;void setup(){pinMode(led,OUTPUT);}void loop(){digitalWrite(led,HIGH);delay(1000);digitalWrite(led,LOW);delay(1000);}渐变灯:暗->亮->暗PWM波:可调脉冲宽度波.3,5,6,9,10,11这几个端口可以输出pwm波analogWrite(pin, value)//输出pwm波pin:管脚号:3,5,6,9,10,11中的任意一个value:0~255中的任何一个数:0:占空比为0%255:占空比位100%远程视频监控步骤:1.将jpegsrc.v8b.tar.gz(图片库)和mjpg-streamer-code-182.tar.gz(视频查看软件)拷贝到ubuntu的家目录2.解压缩tar xvf jpegsrc.v8b.tar.gz3. cd jpeg-8b4. ./configure //创建Makefile文件5. make6. sudo make install //安装程序运行时,默认寻找的头文件的路径在/usr/include,库文件的路径/libcd /usr/local/includesudo cp * /usr/includecd /usr/local/libsudo cp libjpeg* /lib7.切换到家目录:cd移植查看视频的软件:tar xvf mjpg-streamer-code-182.tar.gzcd mjpg-streamer-code-182cd mjpg-streamermake clean //清除已经编译过的程序make运行查看视频的软件:sudo ./start.sh打开火狐浏览器在地址栏输入127.0.0.1:8080若发现视频绿屏先强制结束程序运行:ctl+c.解决方法:修改start.sh将第30行的 -y 删除看看是否虚拟机识别到摄像头:ls /dev/video0地址栏输入:127.0.0.1:8080/?action=stream 查看视频信息 127.0.0.1:8080/?action=snapshot 截屏图片,点击save image as可以保存图片A8开发板:cpu:三星s5pc100内存:256Mflash:256Mwindows运行之前会有一个系统的引导代码叫BIOS与windows类似,linux启动之前也有这样的一段代码叫做bootloader bootloader有很多种,我们选用其中的一种叫做uboot.linux系统的启动步骤1.运行uboot(初始化硬件,引导系统内核的加载)2.内核的运行(zImage,linux的内核).3.识别文件系统(类似于C盘,D盘,E盘).是rootfs.tgz系统=内核+文件系统.挂载系统.要对uboot环境信息进行设置首先把拨码开关拨到0000位置.选择uboot的启动方式.uboot从外存启动.1.找到自己的COM端口号;打开putty2.选中Serial,把波特率改为115200,端口号改为自己的端口号,Flow contrlo选择none3.开启电源,会出现一个倒计时,在倒计时完成之前,随便敲一个键盘.4.输入命令print可以显示uboot的打印信息确保:ipaddr=192.168.1.100//代表开发板的ip地址serverip=192.168.1.200//代表ubuntu的IP地址bootargs=root=nfs nfsroot=192.168.1.200:/source/rootfs ip=192.168.1.100 init=/linuxrc console=ttySAC0,115200//打开虚拟机:1.进入到/tftpboot目录下.把zImage拖到虚拟机,前加cp ,后加 ./使用ls查看一下是否出现zImage2.cd /source把rootfs这个压缩包拖到虚拟机,前加cp ,后加 ./使用ls查看一下是否出现rootfs.tgz3.解压命令:sudo tar -xvf rootfs.tgz要让你输入密码;输入1回车即可,密码是不可见的.再用ls查看是否多了一个蓝色的文件rootfs.4.修改ubuntu的ip地址.找到wiffi图标,点击选中edit connection->IPV4 seting->manual->add ip netmask gateway192.168.1.200 255.255.255.0 192.168.1.1点击保存.关闭窗口.再打开图标选中wired connection1 再看ip是否改回来了.5.网线连接开发板和电脑在putty界面输入:ping 192.168.1.200如果host 192.168.1.200 is alive,这是挂载系统很好的征兆.not alive的话需要关闭电脑的无线网输入boot或者重启开发板不要再按下任何键了,如果出现##################很快就要挂载成功了如果出现TTTTTTTTTTTTTT在ubuntu输入命令:sudo service tftpd-hpa restart其中sudo的作用是暂时将用户的权限提升到超级用户(root)的权限.如果出现Please press Enter to activate this console.代表系统挂载成功.通过gcc编译生成的程序不能在开发板上运行.通过命令file a.out看到文件的格式为intel 30386,说明这是X86格式的程序,只能PC上运行而不能在arm板上运行,解决措施,使用交叉编译器来编译.交叉编译器的配置:将arm-cortex_a8-linux-gnueabi.tar.bz2拖到ubuntu的家目录解压命令tar -xvf arm-cor+tab键自动补齐,用ls查看是否生成arm-cortex_a8个目录.配置交叉编译器:sudo vi /etc/bash.bashrc文件在最后一行添加export PATH=$PATH:/home/linux/arm-cortex_a8/bin保存并退出文件保存完成后重启文件:source /etc/bash.bashrc重启成功后输入arm-cor+tab键会自动补齐成arm-cortex_a8-linux-gnueabi-代表交叉编译器配置成功.利用交叉编译器编译程序:arm-cortex_a8-linux-gnueabi-gcc 文件名,并将生成的可执行程序拷贝到/source/rootfs下然后再到putty上执行./a.out就可以在开发板上运行程序了.相关代码Che.c#include "cgic.h"#include <termios.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>void zigbee_serial_init(int fd){struct termios options;tcgetattr(fd, &options);options.c_cflag |= (CLOCAL | CREAD);options.c_cflag &= ~CSIZE;options.c_cflag &= ~CRTSCTS;options.c_cflag |= CS8;options.c_cflag &= ~CSTOPB;options.c_iflag |= IGNPAR;options.c_iflag &= ~(BRKINT | INPCK | ISTRIP | ICRNL | IXON);//options.c_cc[VTIME] = 2;options.c_cc[VMIN] = 12;options.c_oflag = 0;options.c_lflag = 0;cfsetispeed(&options, B115200);cfsetospeed(&options, B115200);tcsetattr(fd,TCSANOW,&options);int cgiMain(){int fd;char a='1';cgiHeaderContentType("text/html\n\n");fprintf(cgiOut,"<html>\n");fprintf(cgiOut,"<head>\n");fprintf(cgiOut,"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n");fprintf(cgiOut,"<title>\n");fprintf(cgiOut,"SMART CAR\n");fprintf(cgiOut,"</title>\n");fprintf(cgiOut,"<meta http-equiv=\"refresh\" content=\"0;url=../index.html\">");fprintf(cgiOut,"</head>\n");fprintf(cgiOut,"<body>\n");fprintf(cgiOut,"<div align=\"center\">\n");fprintf(cgiOut,"<br /><br /><br /><br />\n");fprintf(cgiOut,"<form action=\"./cgi-bin/keyi.cgi\" method=\"post\" >\n");fprintf(cgiOut,"<input type=\"submit\" name=\"up\" value=\"前进\" /><br /><br />\n");fprintf(cgiOut,"<input type=\"submit\" name=\"left\" value=\"左转\" />\n");fprintf(cgiOut,"&nbsp;&nbsp;&nbsp;&nbsp;\n");fprintf(cgiOut,"<input type=\"submit\" name=\"stop\" value=\"停止\" />");fprintf(cgiOut,"&nbsp;&nbsp;&nbsp;&nbsp;\n");fprintf(cgiOut,"<input type=\"submit\" name=\"right\" value=\"右转\" /><br /><br />\n");fprintf(cgiOut,"<input type=\"submit\" name=\"down\" value=\"后退\" />\n");fprintf(cgiOut,"</form>\n");fd=open("/dev/ttyUSB0",O_RDWR);if(-1==fd)zigbee_serial_init(fd);if(cgiFormSuccess==cgiFormSubmitClicked("up")){a='2';write(fd,&a,1);}if(cgiFormSuccess==cgiFormSubmitClicked("down")) {a='1';write(fd,&a,1);}if(cgiFormSuccess==cgiFormSubmitClicked("right")) {a='4';write(fd,&a,1);}if(cgiFormSuccess==cgiFormSubmitClicked("left")) {a='3';write(fd,&a,1);}if(cgiFormSuccess==cgiFormSubmitClicked("stop")) {a='0';write(fd,&a,1);}fprintf(cgiOut,"</body>\n");fprintf(cgiOut,"</html>\n");close(fd);return 0;}Test.c#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>int main(int argc, const char *argv[]) {int fd;char buff[20]={0};fd=open("/dev/ttyUSB0",O_RDWR);if(-1==fd){printf("open failed\n");return -1;}while(1){read(fd,buff,sizeof(buff));}return 0;}单片机代码void setup(){pinMode(2,OUTPUT);pinMode(4,OUTPUT);pinMode(6,OUTPUT);pinMode(8,OUTPUT);Serial.begin(115200);}void loop()char c;c=Serial.read();if(c=='1'){digitalWrite(2,LOW);digitalWrite(4,HIGH);digitalWrite(6,LOW );digitalWrite(8,HIGH); Serial.println("qianjin"); }if(c=='2'){digitalWrite(2,HIGH);digitalWrite(4,LOW);digitalWrite(6,HIGH);digitalWrite(8,LOW); Serial.println("daotui"); }if(c=='3'){digitalWrite(2,LOW);digitalWrite(4,HIGH);digitalWrite(6,LOW);digitalWrite(8,LOW); Serial.println("youzuan"); }if(c=='4'){digitalWrite(2,LOW);digitalWrite(4,LOW);digitalWrite(6,LOW);digitalWrite(8,HIGH); Serial.println("zuozuan"); }if(c=='0'){digitalWrite(2,LOW); digitalWrite(4,LOW); digitalWrite(6,LOW); digitalWrite(8,LOW); Serial.println("0"); }}。

相关文档
最新文档