单片机毕业设计样本.docx
- 文档编号:25010154
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:23
- 大小:804.08KB
单片机毕业设计样本.docx
《单片机毕业设计样本.docx》由会员分享,可在线阅读,更多相关《单片机毕业设计样本.docx(23页珍藏版)》请在冰豆网上搜索。
单片机毕业设计样本
石家庄邮电职业技术学院
毕业设计
基于Arduino急救车音效设计
届电信工程系
专业移动通信技术()
班级
学号
姓名
指引教师
完毕日期12月14日
石家庄邮电职业技术学院
毕业设计任务书
姓名
学号
专业
班级
毕业设计题目
基于Arduino急救车音效设计
指引教师姓名
职称
高档工程师工程师
工作单位
惠远公司
毕业设计内容、基本规定、重点研究问题、重要设计办法(或环节):
一、设计内容:
基于Arduino急救车音效
二、基本规定:
把Arduino实验板与蜂鸣器连接起来,通过向Arduino实验板中导入源代码,来使蜂鸣器发出急救车音效。
三、重点研究内容:
运用Arduino与蜂鸣器实现急救车音效
四、重要设计办法:
1、Arduino硬件、软件(开发环境)2、设备连接,调试
重要参照文献、资料:
[1]李学海,典型80C51单片机轻松入门与上手,清华大学出版社,
[2]班兹,爱上Arduino,人民邮电出版社,
[3]程晨,Arduino开发实战指南,机械工业出版社,
[4]网络资料收集
筹划进度:
1、10月08日——10月12日选论题
2、10月13日——10月25日资料收集,进行系统设计
3、10月26日——11月02日购买电路板元器件,焊接电路板
4、11月03日——11月20日撰写论文草稿
5、11月21日——12月14日修改,定稿打印
6、12月24日——12月26日答辩
指引教师签字:
年月日
石家庄邮电职业技术学院
毕业设计评估书
姓名
学号
专业
班级
毕业设计题目
基于Arduino急救车音效设计
指引教师评语:
指引教师建议成绩(60%)
指引教师签字:
年月日
答辩小组建议成绩(40%)
组长签字:
年月日
答辩委员会最后审定成绩
主任签字:
年月日
备注
摘要
急救车,专指接载病员由伤病现场往医院,或用作载接病情严重者作转院服务陆上紧急交通工具。
急救车常规配备涉及担架、轮椅、呼吸辅助器、氧气筒、药物、警号灯等。
而对于警号灯随着着“嘀嘟嘀嘟”声音最为咱们熟悉,那么这种“嘀嘟嘀嘟”声音是如何制作出来呢?
当前单片机渗入到咱们生活各个领域,人类生活中所用几乎每件电子和机械产品中都会集成有单片机。
本文设计以ATMEGA328P-PU单片机为核心,以Arduino为平台。
把设立好源代码传到Arduino控制板上,然后把蜂鸣器连接在控制板上,以此发出“嘀嘟嘀嘟”音效。
1前言
Arduino是一种开源电子原型平台,它基于易于使用硬件和软件而设计。
适合于艺术家,设计师和业余兴趣者创立交互性对象和环境。
Arduino通过接受来自各种传感器输入来感知环境变化,通过控制灯光,马达和其他驱动器来体现行为。
主板微控制器编程使用Arduino编程语言(基于Wiring)和Arduino开发环境(基于Processing)。
Arduino项目可以独立运营,也可以与计算机上运营软件通信(如Flash、Processing、MaxMSP)。
主板可以通过手工制作,或者购买商业成品,而软件是可以免费下载。
硬件参照设计(CAD文献)是开源允许,可以依照需求自由调节。
2单片机——Arduino核心器件
2.1单片机定义
单片机,全称单片微型计算机(英语:
Single-ChipMicrocomputer),又称微控制器(Microcontroller),是把中央解决器、存储器、定期/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上微型计算机。
2.2单片机与个人计算机异同
一台可以工作计算机要有这样几种部份构成:
中央解决单元CPU(进行运算、控制)、随机存储器RAM(数据存储)、只读存储器ROM(程序存储)、输入/输出设备I/O(串行口、并行输出口等)。
在个人计算机(PC)上这些部份被提成若干块芯片,安装在一种被称之为主板印刷线路板上。
而在单片机中,这些部份所有被做到一块集成电路芯片中了,因此就称为单片(单芯片)机,并且有某些单片机中除了上述部份外,还集成了其他部份如模仿量/数字量转换(A/D)和数字量/模仿量转换(D/A)等。
电脑应用于高品位,单片机应用于中低端,两者有着各自生存空间,至少短期内不会浮现一种取代另一种状况。
2.3单片机作用
实际工作中并不是任何需要计算机场合都规定计算机有很高性能,一种控制电冰箱温度计算机难道要用酷睿解决器吗?
应用核心是看与否够用,与否有较好性能价格比。
如果一台冰箱都需要用酷睿解决起来进行温度控制,那价格就是天价了。
单片机通惯用于工业生产控制、生活中与程序和控制关于(如:
电子琴、冰箱、智能空调等)场合。
2.4单片机视图
下图就是一种Atmega328P-PU单片机,基于AVR指令集8位解决器,频率20MHz,存储器空间32KB。
图2-1Atmega328P-PU单片机
3Arduino基本构成
3.1Arduino定义
Arduino,是一种开源单板机控制器,采用了基于开放源代码软硬件平台,构建于开放源代码simpleI/O介面版,并且具备使用类似Java,C语言Processing/Wiring开发环境。
3.2Arduino诞生
冬天,MassimoBanzi和DavidCuartielles讨论学生们抱怨找不到便宜好用微控制器问题,讨论使两人决定设计自己电路板,由Banzi学生DavidMellis为电路板设计编程语言。
两天后来,DavidMellis就写出了程式码。
又过了三天,电路板就竣工了。
这块电路板被命名为Arduino。
随后Banzi,Cuartielles,和Mellis把设计图放到了网上。
保持设计开放源码理念,由于版权法可以监管开源软件,却很难用在硬件上,她们决定采用共享创意允许。
在共享创意允许下,任何人都被容许生产电路板复制品,还能重新设计,甚至销售原设计复制品。
你不需要付版税,甚至不用获得Arduino团队允许。
唯一被保存只有Arduino这个名字。
它被注册成了商标。
3.3Arduino语言
Arduino语言是建立在C/C++基本上,其实也就是基本C语言。
3.3.1核心字
if
if...else
for
switchcase
while
do...while
break
continue
return
goto
3.3.2语法符号
;
{}
//
/**/
3.3.3运算符
=
+
-
*
/
%
==
<
>
<=
>=
&&
||
!
++
--
+=
-=
*=
/=
3.3.4数据类型
boolean布尔类型
char字符类型
byte字节类型
int整数类型
unsignedint无符号整型
long长整型
unsignedlong无符号长整型
float实数类型
double
string
array
void
3.3.5常量
HIGH|LOW表达数字IO口电平,HIGH表达高电平
(1),LOW表达低电平(0)。
INPUT|OUTPUT表达数字IO口方向,INPUT表达输入(高阻态),OUTPUT表达输出(AVR能提供5V电压40mA电流)。
true|falsetrue表达真
(1),false表达假(0)。
以上为基本C语言核心字和符号,人们可以理解,详细使用可以结合实验程序。
3.3.6结构
voidsetup()初始化发量,管脚模式,调用库函数等
voidloop()持续执行函数内语句
3.3.7功能
数字I/O
pinMode(pin,mode)数字IO口输入输出模式定义函数,pin表达为0~13,mode表达为INPUT或OUTPUT。
digitalWrite(pin,value)数字IO口辒出电平定义函数,pin表达为0~13,value表达为HIGH或LOW。
例如定义HIGH可以驱动LED。
intdigitalRead(pin)数字IO口读输入电平函数,pin表达为0~13,value表达为HIGH或LOW。
例如可以读数字传感器。
模仿I/O
intanalogRead(pin)模仿IO口读函数,pin表达为0~5(ArduinoDiecimila为0~5(Arduinonano为0~7)。
例如,可以读模仿传感器(10位AD,0~5V表达为0~1023)。
analogWrite(pin,value)-PWM数字IO口PWM输出函数,Arduino数字IO口标注了PWMIO口可使用该函数。
pin表达3,5,6,9,10,11,value表达为0~255。
例如,可用于电机PWM调速或音乐播放。
时间函数
delay(ms)延时函数(单位ms)。
delayMicroseconds(us)延时函数(单位us)。
数学函数
min(x,y)求最小值
max(x,y)求最大值
abs(x)计算绝对值
constrain(x,a,b)约束函数,下限a,上限b,x必要在ab之间才干返回。
map(value,fromLow,fromHigh,toLow,toHigh)约束函数,value必要在fromLow与toLow之间和fromHigh与toHigh之间。
pow(base,exponent)开方函数,baseexponent次方。
sq(x)平方
sqrt(x)开根号
4本次设计所需硬件与软件
表4-1实验器件
实验器件
个数
Arduinouno
1
蜂鸣器(无源)
1
导线
2
4.1ArduinoUNO
ArduinoUNO是ArduinoUSB接口系列最新版本,作为Arduino平台参照原则模板。
UNO解决器核心是ATmega328,同步具备14路数字输入/输出口(其中6路可作为PWM输出),6路模仿输入,一种16MHz晶体振荡器,一种USB口,一种电源插座,一种ICSPheader和一种复位按钮。
UNO已经发布到第三版,与前两版相比有如下新特点:
在AREF处增长了两个管脚SDA和SCL,支持I2C接口;增长IOREF和一种预留管脚,将来扩展板将能兼容5V和3.3V核心板。
这样改进了复位电路设计,USB接口芯片由ATmega16U2代替了ATmega8U2。
如图4-1为改进后ArduinoUNO。
图4-1ArduinoUNO
4.1.1Arduinouno基本概要
●解决器ATmega328
●工作电压5V
●输入电压(推荐)7-12V
●输入电压(范畴)6-20V
●数字IO脚14(其中6路作为PWM输出)
●模仿输入脚6
●IO脚直流电流40mA
●3.3V脚直流电流50mA
●FlashMemory32KB(ATmega328,其中0.5KB用于bootloader)
●SRAM2KB(ATmega328)
●EEPROM1KB(ATmega328)
●工作时钟16MHz
4.1.2通信接口
串口:
ATmega328内置UART可以通过数字口0(RX)和1(TX)与外部实现串口通信;ATmega16U2可以访问数字口实现USB上虚拟串口。
TWI(兼容I2C)接口。
SPI接口。
4.1.3下载程序
ArduinoUNO上ATmega328已经预置了bootloader程序,因而可以通过Arduino软件直接下载程序到UNO中。
也可以直接通过UNO上ICSPheader直接下载程序到ATmega328。
ATmega16U2Firmware(固件)也可以通过DFU工具升级。
4.1.4注意要点
ArduinoUNO上USB口附近有一种自恢复保险丝,对电路起到保护作用。
当电流超过500mA时会断开USB连接。
ArduinoUNO提供了自动复位设计,可以通过PC主机复位。
这样通过Arduino软件下在程序到UNO中,软件可以自动复位,不需要手动复位按钮。
在印制板上丝印“RESETEN”处可以使能和禁止该功能。
4.2蜂鸣器
蜂鸣器是一种一体化结极电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定期器等电子产品中作发声器件。
按其驱动方式不同,可分为:
有源蜂鸣器(内含驱动线路)和无源蜂鸣器(外部驱动)。
本设计使用无源蜂鸣器。
4.3开发环境
本次设计使用软件为Arduino开发环境Arduino-0022,如图4-2所示。
图4-2开发环境
5系统设计与调试
5.1准备好硬件开发平台
把Arduino控制板与其她器件连接好,再把Arduino与微机USB口连接好。
5.2实现原理
蜂鸣器发出声音时间间隔不同,频率就不同,因此发出声音就不同。
依照这一原理咱们通过变化蜂鸣器发出声音时间间隔,来发出不同种声音,来模仿各种声音。
本程序一方面让蜂鸣器间隔1ms发出一种频率声音,循环80次;接着让蜂鸣器间隔2ms发出另一种频率声音,循环100次。
5.3程序代码
intbuzzer=7;//设立控制蜂鸣器数字IO脚
voidsetup()
{
pinMode(buzzer,OUTPUT);//设立数字IO脚模式,OUTPUT为输出
}
voidloop()
{
unsignedchari,j;//定义发量
while
(1)
{
for(i=0;i<80;i++)//输出一种频率声音
{
digitalWrite(buzzer,HIGH);//发声音
delay
(1);//延时1ms
digitalWrite(buzzer,LOW);//不发声音
delay
(1);//延时1ms
}
for(i=0;i<100;i++)//输出另一种频率声音
{
digitalWrite(buzzer,HIGH);//发声音
delay
(2);//延时2ms
digitalWrite(buzzer,LOW);//不发声音
delay
(2);//延时2ms
}
}
}
5.4下载程序
5.4.1打开文献夹
打开arduino0022文献夹里面有一种标有arduino.exe图标,双击打开会浮现如图5-1界面。
图5-1工作界面
5.4.2编写源代码
File→new然后编写蜂鸣器实验源代码,如图5-2所示。
图5-2源代码
5.4.3编译程序
点击编译按钮,这时编译按钮会发成黄色,下面浮现英文compiling.....,这表达软件正在对你所写癿程序进行编译,如图5-3所示。
图5-3编译程序
等待一会,会看到编译按钮恢复本来状态,下面浮现Donecompiling,最下面一段文字阐明编写程序共有896字节数。
这表白,程序编译成功,并且没有语法上错误。
如图5-4所示。
图5-4编译成功
5.4.4下载程序
下载程序前先将板子型号和com口选好。
点击Tools->Board选取开发板型号,如图5-5所示。
图5-5选取板型
查看串口,然后选取对的串口,如图5-6所示。
图5-6选取串口
点击采后下载按钮发成橙色,软件下方浮现UploadingtoI/OBoard,同步板子上标有TX和RX灯会亮,如图5-7所示。
图5-7下载程序
程序下载完毕后,下载按钮恢复本来颜色,下面浮现DoneUploading,如图5-8所示。
图5-8下载成功
显示DoneUploading,表达程序下载成功了。
程序下载成功后及本设计完毕,完毕后实物图如图5-9所示。
图5-9实物图
6总结
现当今,单片机应用无处不在,运用单片机控制音乐播放也多不胜举,音乐芯片也相称之多,而运用单片机存储音乐,控制播放最为广泛。
本次设计以Arduino为平台,运用在Atmega328P-PU单片机中编写程序,通过变化程序内参数来使蜂鸣器发出急救车音效,来实现本次设计效果。
致谢
本次设计从开始选题到最后完稿都是在指引教师细心指引下完毕,特别是在设计元器件挑选与购买上,教师耐心在网络上给咱们挑选价格便宜但是性能高电路板,为咱们后来设计与写稿方面节约了宝贵时间,在电路板与蜂鸣器连接上,教师又予以了协助。
开始我用了一种小喇叭,通过导线直接连接到了电路板上,教师看到后给我解说了我设计错误所在,并给我画出了电路原理图,通过教师解说我明白了自己在设计中错误,我把小喇叭换成了无源蜂鸣器。
在编写论文过程中,李教师又予以了诸多协助,当我把论文草稿交给李教师审视时,李教师仔细查找文中局限性,并把局限性处一一指出,使我在修改时容易了某些,当我再一次提交论文时,教师没有批评由于我粗心导致错误,而是用其她颜色字体给我标出了错误。
在这个过程中我受益匪浅,李学海教师渊博专业知识,严谨教学态度,精益求精工作作风,诲人不倦崇高师德,严以律己,宽以待人崇高风范,朴实无华人格魅力对我有深远影响。
在此,对李教师致以深深敬意和由衷感谢。
参照文献
[1]李学海,典型80C51单片机轻松入门与上手,清华大学出版社,
[2]程晨,Arduino开发实战指南,机械工业出版社,
[3]班兹,爱上Arduino,人民邮电出版社,
[4]网络资料收集
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 毕业设计 样本