版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式软硬件开发课程内容课程目的:理解嵌入式软硬件开发的基本概念和原理掌握Arduino开发板的特点、功能和应用学习搭建Arduino开发环境并进行基础实验©NXROBO20232课程目录:嵌入式软硬件开发介绍Arduino开发板介绍Arduino开发环境搭建
Arduino开发程序架构Arduino基础实验嵌入式软硬件开发介绍ROS智能机器人的系统分成两个相对独立的部分(ROS决策运算层与底层驱动硬件层),他们之间采用串口通信的方式进行双向数据连接©NXROBO20233嵌入式软硬件开发介绍Arduino(或者STM32)作为底层驱动控制部分主要完成直流电机的速度闭环控制,ROS层作为上位机获取摄像头、雷达等传感器节点以及跑建图和导航算法,如果再加上平常PC的调试。整个的软件结构应该是下图的样子。©NXROBO20234Arduino开发板介绍©NXROBO20235ArduinoUNOArduinoMEGA2560ArduinoDUEArduino开发环境搭建ArduinoIDE是一款专门为Arduino平台设计的集成开发环境。它提供了简单易用的编程界面,让用户可以轻松地编写、上传和调试Arduino代码。ArduinoIDE基于Java开发,支持跨平台使用,可以在Windows、MacOS和Linux等操作系统上运行。ArduinoIDE的安装推荐使用官网版本,前往以下网址进行下载:https://www.arduino.cc/en/software©NXROBO20236Arduino开发环境搭建©NXROBO20237Arduino开发环境搭建©NXROBO20238根据使用的系统下载对应的版本,下载完成后进行安装即可。打开ArduinoIDE,可以看到如下界面:确定项目文件夹路径与编辑器语言©NXROBO20239在上边栏中点击“Flie”-“Preference”确定项目文件夹路径与编辑器语言©NXROBO202310在弹出来的界面中,其中Sketchbooklocation为项目文件夹路径,根据实际放置情况选择路径,在Language选项中可将语言切换为中文确定开发板与端口©NXROBO202311以本次实验所用的ArduinoMEGA2560开发板为例,使用数据线连接电脑与Arduino,在上边栏中点击“工具”-“开发板”,选择所使用的开发板型号(此处实验选择ArduinoMEGA2560)确定开发板与端口©NXROBO202312同时端口号选择连接使用的端口,会有提示连接的信息确定开发板与端口©NXROBO202313选择后,会显示连接的开发板信息,也可以在"工具"-"获得开发板信息"验证对应的信息。Arduino开发程序架构Arduino程序的最基本结构必要代码如下:©NXROBO202314可以把这程序看作是两个部分,初始化voidsetup()、循环体voidloop()。在Arduino运行时,会先运行一次初始化部分的代码,然后重复地运行循环体部分的代码。数字I/O操作函数数字I/O意为数字电平输入/输出、一般带序号的引脚可作为数字I/O引脚使用。©NXROBO202315引脚模式设置pinMode()引脚电平设置digitalWrite()©NXROBO202316引脚电平读取digitalRead()©NXROBO202317模拟I/O操作函数模拟I/O意为模拟电压信号输入/输出,Arduino可以通过DAC功能(Zero、Due、MKR系列开发板)或者使用PWM功能实现等效电压输出。Arduino开发板上模拟I/O引脚有:引脚序号、A开头的为模拟信号输入引脚、标有“~”符号的引脚为支持PWM输出引脚。©NXROBO202318模拟信号输出analogWrite()模拟信号读取analogRead()©NXROBO202319模拟信号基准电压analogReference()©NXROBO202320模拟信号读取分辨率设置analogReadResolution()©NXROBO202321模拟信号输出分辨率设置analogWriteResolution()©NXROBO202322时间函数©NXROBO202323Arduino通过时间函数可实现延时、暂停等操作,与时间有关的函数有以下4个。暂停程序(毫秒)delay()暂停程序(微秒)delayMicroseconds()©NXROBO202324运行计时(毫秒)millis()©NXROBO202325运行计时(微秒)micros()©NXROBO202326LED的控制-LED发光原理LED(light-emittingdiode)的发光原理基于半导体材料的特性。LED是一种PN结二极管,下图中P侧电极板与正极线(金丝)相连成正极,N侧电极板为负极。当电流通过LED时,电子从N区域(负极)跃迁到P区域(正极),在跃迁的过程中,电子会释放能量以光的形式,产生光子。这个过程称为辐射复合。©NXROBO202327使用数字输出引脚控制单个LED对于一般的常规LED,使用以下连接方式:-将LED的阳极(一般为长脚)连接到Arduino的数字输出引脚,如D2、D3、D4等。-将LED的阴极(一般为短脚)连接到Arduino的地(GND)引脚,或者通过一个适当的电阻连接到地引脚。编写arduino程序:©NXROBO202328使用数字输出引脚和电位器控制LED的亮度连接方式:-将LED的阳极(一般为长脚)连接到Arduino的数字输出引脚,如D3。-将LED的阴极(一般为短脚)连接到Arduino的地(GND)引脚。-连接一个电位器(可变电阻)的两个端口,其中一个连接到Arduino的3.3V或5V引脚,另一个连接到LED的阳极。编写arduino程序:©NXROBO202329舵机的控制-9g舵机介绍本次实验采用9g舵机,9g舵机是一种迷你型的舵机,得名于其重量约为9克,也称为微型舵机。它是一种小型、轻便且经济实惠的舵机,常用于机器人、无人机、模型、航模以及各种DIY电子项目中。©NXROBO2023309g舵机广泛应用于各种电子、机械和机器人项目中,例如:-模型航空器和车辆:用于控制飞机、车辆和船舶的舵、翼面、襟翼等。-机器人:用于机器人的关节和运动控制。-摄像云台:用于相机或传感器云台的稳定控制。-无人机:用于小型无人机的姿态稳定和控制。舵机的控制-9g舵机介绍采用9g舵机来驱动9g舵机是一个常见的Arduino项目,可以通过Arduino板上的数字引脚输出PWM(脉冲宽度调制)信号来控制舵机的角度。以下是常见型号的9g舵机的技术参数表格:©NXROBO202331连接9g舵机将9g舵机连接到Arduino板。9g舵机通常有三个引脚:信号(Signal)、电源(VCC)和地(GND)。连接方式如下:-将舵机的信号线连接到Arduino的一个数字输出引脚(例如D9)。-将舵机的电源线连接到Arduino的电源引脚(例如5V)。-将舵机的地线连接到Ar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024新教材高中历史 第六单元 世界殖民体系与亚非拉民族独立运动 第12课 资本主义世界殖民体系的形成教学实录 部编版必修中外历史纲要下
- 安全生产检查记录表(范本)
- 关于旅游类实习报告模板八篇
- 2025届高三英语一轮复习外刊语法填空-澳门回归25周年+电影《小小的我》上映+哈尔滨冰雪大世界开园
- 关于人力资源的实习报告
- 2024年海鲜供应商独家合作协议
- 关于个人民警述职报告3篇
- 自我鉴定大学生500字
- 学生军训心得体会合集15篇
- 心理学心得体会三篇
- 食材配送投标服务方案
- 医疗医学医生护士工作PPT模板
- 排污许可证守法承诺书(2篇)
- ppt模板:创意中国风古风水墨山水通用模板课件
- 矩形顶管施工方案28
- 液压转向器厂总平面布置课程设计
- 说明性语段的压缩(课堂PPT)
- 造纸化学品及其应用
- GB_T 13234-2018 用能单位节能量计算方法(高清正版)
- 装配式钢板筒仓安装技术经验规程
- 拔除智齿病历1页
评论
0/150
提交评论