航标灯控制(2)_第1页
航标灯控制(2)_第2页
航标灯控制(2)_第3页
航标灯控制(2)_第4页
航标灯控制(2)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、等级:湖南工程学院课 程 设 计课程名称 单片机原理与应用 课题名称 航标灯控制 专 业 电气工程及其自动化 班 级 学 号 姓 名 指导教师 2014 年 月 日湖南工程学院课 程 设 计 任 务 书课程名称 单片机原理与应用 课 题 航标灯控制 专业班级 学生姓名 学 号 指导老师 审 批 任务书下达日期 2014年 月 日任务完成日期 2014年 月 日设计内容与设计要求设计内容:利用单片机为核心设计一个航标灯控制系统,要求为在黑夜中航行的船只提供灯光指示。设计要求:1)确定系统设计方案; 2)进行系统的硬件设计;3)完成必要的参数计算与元器件选择;4)完成应用程序设计;*5)进行部分单

2、元电路及应用程序的调试;主 要 设 计 条 件本系统要求:1)航标灯在黑夜能定时闪闪发光,亮2s,熄灭2s周期循环。2)白天应停止航标灯工作。3)枯水季节应检测水位高度,低于通航水位时要发出警告信号。说 明 书 格 式1. 课程设计任务书2. 目录3. 系统总体方案选择与说明4. 系统结构框图与工作原理5. 各单元硬件设计说明及计算方法6. 软件设计与说明(包括流程图)7. 调试结果与必要的调试说明8. 使用说明9. 总结10、参考文献附录附录A 系统原理图附录B 程序清单进 度 安 排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍 下午:借阅有关资料,总体方案讨论星期二、确定

3、总体设计方案星期三、硬件模块方案设计星期四、软件模块方案设计星期五、各硬件模块设计第二周星期一、各硬件模块设计星期二、各软件模块设计星期三、各软件模块设计星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩参 考 文 献参考文献1、 教材单片微型计算机技术 刘国荣 编 机械工业出版社2、 单片微型计算机原理、应用及接口技术 张迎新 编 国防工业出版社3、 单片机实用系统设计技术 房小翠 编 国防工业出版社4、单片机应用系统设计 何立民 编 北航出版社5、单片机原理及接口技术 曹琳琳编 国防科技大学出版社目录第一章 绪 论11.1 航标灯的现状与发展1第二章 航标灯控制电路设计

4、22.1 系统总体方案选择22.2 设计方案框图2第三章 系统总体设计方案描述33.1 系统结构框图33.2 系统的工作原理3第四章 单元电路的设计与计算44.1 单片机晶振电路和复位电路的连接44.2 LM016L显示电路44.3 蜂鸣器电路和航标灯显示电路44.4 ADC转换电路54.5 光敏电阻的选择5第五章 调 试75.1 白天75.1.1 高水位时75.1.2 低水位时85.2 黑夜95.2.1 高水位95.2.1 低水位10蜂鸣器发出较快频率的声音,灯迅速闪烁。10总 结11参考文献12附 录13附录A 系统原理图13附录B 程序清单14电气信息学院课程设计评分表2122第一章 绪

5、 论1.1 航标灯的现状与发展 航标是保证船舶安全的必要装置,很早以前人们就已经在近海岸设立航标,以便航船识别目标和为船只导航。目前使用的航标种类包括陆上航标、水上航标和无线电航标3种,其中水上航标包括灯标和浮标。一般航标灯都有发光装置、音响装置有些航标灯还具有无线电装置。装有灯器的航标即为灯塔、灯船,统称为灯标。灯标在夜间所显示的特定光色、灯光节奏和周期作为标志的识别特征,以便航海人员区别。目前我国灯标使用的光色有白、红、绿、黄及橙色五种,灯光节奏有十余种。航标的音响装置是为了船只和航海人员在五中能判别航标所在的方向,这些音响装置通过发出的声响来引导船舶航行。在我国长达数千公里的河道和海岸沿

6、线,分布着数量众多的航标灯。为了能及时地了解各航标灯的工作状态和工作正常与否,以便有针对性地对出现故障的航标灯进行维护,我们需要一种新的航标灯能够对其进行遥控遥测的航标灯。 新型遥控遥测航标灯具有先进的设计技术,采用新型遥控遥测航标灯能够极大的提高航道维护的精确性,给船只提供了更安全更可靠的指引,同时节省了大量的维护费用。第二章 航标灯控制电路设计2.1 系统总体方案选择本系统要求区分白天与黑夜、检测水位信息、控制航标灯闪烁和蜂鸣器的鸣叫,同时需要显示并发送水位信息;综合要求,选择51单片机作为控制器,用光敏电阻检测白天与黑夜,因为只有一路水位信息,所以选择ADC0804作为模数转换器,并用L

7、ED作为航标灯指示器,LCD1602作为水位显示器件。2.2 设计方案框图单 片 机8051水位测量模块光敏电阻模块蜂鸣器模块航标灯模块水位显示模块图2-1 设计方案框图第三章 系统总体设计方案描述3.1 系统结构框图白天晚上水位指示灯亮2s熄灭2s闪烁高指示灯不亮,蜂鸣器不鸣响高低蜂鸣器快速鸣响指示灯快速闪动蜂鸣器快速鸣响图3-1 系统结构框图3.2 系统的工作原理本系统通过51单片机作为控制核心,并选择12MHz晶体,以达到控制航标灯的闪烁,蜂鸣器的报警指示;同时显示并往控制总台发送水位信息;在本系统中通过ADC0804将模拟变化的水位信号转换成单片机可以识别的数字信号,同时通过LCD16

8、02液晶显示器显示实时水位信息并将水位信息通过串口传送到控制台;系统中通过光敏电阻检测白天与黑夜,当水位正常时,如果是晚上,通过单片机的控制蜂鸣器发声,航标灯定时闪烁(亮2s,熄灭2s);如果是白天,则航标灯关闭,蜂鸣器继续工作。当水位超过警戒水位(水位过低,不适合航行)时,如果是晚上,则通过单片机控制蜂鸣器的加速鸣叫,并且航标灯闪烁加快;如果是白天则航标灯关闭,蜂鸣器继续工作。第四章 单元电路的设计与计算4.1 单片机晶振电路和复位电路的连接图4-1 单片机晶振电路和复位电路的连接图4-1中晶振选用12MHz晶振,电容选择22pF。图4-1中电阻选用1K电阻,可以实现上电复位和手动复位4.2

9、 LM016L显示电路图4-2 LM016L显示电路通过LM016L显示水位信息,并将LCD连接到P0和P1端口4.3 蜂鸣器电路和航标灯显示电路图4-3 蜂鸣器电路和航标灯显示电路图4-3中通过PNP管的驱动蜂鸣器发声,用LED当作航标灯,并接在P1.7口.4.4 ADC转换电路图4-4 ADC转换电路图4-4中电路为ADC0804接法,空出的第5号脚为转换结束信号引脚;此次设计并没有用到该引脚;当然也可以接到单片机引脚,通过该引脚检测转换是否结束。4.5 光敏电阻的选择本系统中光敏电阻利用单刀双掷开关代替。图4-5光敏电阻的选择第五章 调 试在设定水位的情况下(临界值120)5.1 白天5

10、.1.1 高水位时蜂鸣器不会鸣叫,灯不亮图5-1-1 白天高水位5.1.2 低水位时蜂鸣器鸣叫,频率较快,灯不亮5-1-2 白天低水位5.2 黑夜5.2.1 高水位灯每隔两秒亮一次,蜂鸣器不发声。图5-2-1 黑夜高水位5.2.1 低水位蜂鸣器发出较快频率的声音,灯迅速闪烁。综上所述:首先给系统设定一个初值,我所设定的临界值是120。当系统检测到水位变化时,通过LM016L显示水位,并用一个一个“!”表示水位过低,并发出警告信号(白天蜂鸣器以较快频率鸣叫,而晚上蜂鸣器不仅以快速的频率鸣叫,LED的闪烁频率也会加快),当水位正常时,发出提醒信号(白天蜂鸣器不鸣叫,晚上LED闪烁频率和蜂鸣器鸣叫频

11、率都正常);当水位变化时,通过串口将水位发送到控制总台,反应实时水位信息。总 结光阴似箭,日月如梭,两周的课程设计即将结束,在这两个星期的课程设计中让我感受良多,受益匪浅,同时也找到了自身不足之处。第一天老师下发了任务 ,那天过后我们就开始收索相关资料,因为是初学者,所以对于我们来说都是很难的,可以说根本无从下手,可能一条语句想弄懂都需要半天时间,但是我们并没有放弃,因为这是我们的任务。我们小组七人分工合作、在大家一起的努力之下最终完成了我们的课程设计。在课程设计的过程中,我们经历了各种酸甜苦辣。老师下发的任务表面上看起来不难,主要实现三个功能,但是如何才能实现呢?最担心的还是程序了,因为对这

12、方面的知识掌握的不牢固,而且这种仿真软件我也不太会用。这时候小组的力量就体现出来了,同学之间互相帮助,有什么不懂的大家在一起商量,而且我们还能够充分利用网络的去查阅相关资料,再者还可以询问老师。在整个设计过程中我懂得了许多东西,也培养了独立思考和设计的能力,也树立了对知识应用的信心。同时让我懂得团队合作在集体工作中的重要性,只有相互合作,互帮互助才能成功!通过课内所学的知识我们可以把它用在我们的实践上,我们借助了网络来学习一些课内没有学到的东西,在把这些知识应用到课程设计中去,这样才能更好的学习该们课程。实习不仅让我学到了知识同时它也段练了我个人的动手能力:不仅让我能够充分利用图书馆去查阅资料

13、,同时也让我增加了许多课本以外的知识。对我们当代大学生来说,只有理论与实际相结合才能让我们以后在更好的学习和工作。总之,课程设计虽然结束了,但是从此次课程设计中我学到了很多,感触也很深。我感受到了肖锋老师对学生的那种悔人不卷的精神和那种治学严谨的态度,有问必答,这让我们少走了很多弯路,最终顺利完成设计任务。也许只有当学生的时候才能享受到这种待遇吧,所以我们一定好好利用校园的资源,这样才能让我们在进入社会之后有足够的资本和他人竞争。参考文献1、 教材单片微型计算机技术 刘国荣 编 机械工业出版社2、 单片微型计算机原理、应用及接口技术 张迎新 编 国防工业出版社3、 单片机实用系统设计技术 房小

14、翠 编 国防工业出版社4、 单片机应用系统设计 何立民 编 北航出版社5、 单片机原理及接口技术 曹琳琳编 国防科技大学出版社附 录附录A 系统原理图附录B 程序清单1.主程序:#include <reg51.H>#include"def.h"#include"lib.h"#include"adc_dis.h"#include"lcd1602.h"sbit LED=P17;sbit BUZ=P16;sbit status=P32;INT16U num=0,flag=0,num1=0,num2=0;INT

15、8U stage,deep=0;void delay(INT16U z)INT16U x,y;for(x=0;x<z;x+)for(y=0;y<110;y+);/*定时器初始化函数*/void timer_init()TMOD=0X21;/设定定时器1工作在方式2,定时器0工作在方式1SCON=0X40;/串口方式1PCON=0;/SMOD位为0TL1=0XFD;/9600HzTH1=0XFD;TH0=0X3c;TL0=0Xb0;/设定定时器0初值为15536 TR1=1;/启动定时器1;IE=0X82;/打开总中断和定时器0溢出中断/*串口发送程序*/void usart_sen

16、d(INT8U date)/串口发送数据SBUF=date;while(!TI);/判断数据是否发送完成TI=0;/*串口发送字符串程序*/void usart_print(INT8U *temp)/发送字符while(*temp)!='0') usart_send(*temp+);/*定时器中断处理函数*/void timer0() interrupt 1TH0=0X3c;TL0=0Xb0;/设定定时器0初值为15536num+; /控制LEDnum1+;/控制蜂鸣器num2+;/控制水位数据的发送void led_buz(INT8U temp)INT16U i,j;if(s

17、tage=1)TR0=1;stage=0;if(temp<120)/警戒水位 if(status=1)/白天 LED=1;flag=1; else if(num>=10) LED=LED;num=0; if(num1>=10)num1=0;for(i=0;i<70;i+)for(j=0;j<100;j+);BUZ=BUZ;if(temp>120) /正常水位if(status=1)/白天LED=1;flag=1;else /晚上if(num>=40)LED=LED;num=0;/*水位显示函数*/void display(INT8U temp)INT8

18、U bai,shi,ge;bai=temp/100;shi=temp/10%10;ge=temp%10;write_com(0x80+2);/显示位置命令delay(1);lcd_prints("water level");write_com(0x80+0x40+6);delay(1);write_date(bai+0x30);write_date(shi+0x30);write_date(ge+0x30);if(temp<120)/警戒水位write_date(0x21);/超过警戒水位,在后面显示'!'elsewrite_date(0x20);/*

19、主函数*/void main()lcd_init();timer_init();LED=1;while(1)stage=1; /确保定时时间更加准确deep=start_ad();if(num2>=60)/每3s发送一次水位数据num2=0;usart_send(deep/100+0x30);usart_send(deep/10%10+0x30);usart_send(deep%10+0x30);usart_send('m');if(deep<120) usart_send('!');usart_print("r");/发送回车符

20、号,即换行display(deep);/LCD1602显示led_buz(deep);/蜂鸣器和LED控制函数2.液晶显示函数LCD1602.C#include <REGX51.H>#include"lib.h"#include"def.h"#include<intrins.h>sbit lcd_rs=P13;sbit lcd_rw=P14;sbit lcd_en=P15;/*1602写命令函数*/void write_com(INT8U com)lcd_rs=0;P0=com;delay(1);lcd_en=1;delay(1)

21、;lcd_en=0;/*1602写数据函数*/void write_date(INT8U date)lcd_rs=1;P0=date;delay(1);lcd_en=1;delay(1);lcd_en=0;/*1602写初始化函数*/void lcd_init()lcd_rw=0;/lcd_rs=1;/lcd_en=0;write_com(0x38); /设置显示方式为16*2显示write_com(0x0c); /显示开,关光标write_com(0x06); /移动光标write_com(0x01); /清屏指令/*1602显示字符串函数*/void lcd_prints(INT8U *l

22、cd_string)INT8U i=0;while(lcd_stringi!='0') write_date(lcd_stringi);i+;3.LCD1602.H头文件#ifndef _LCD1602_H_#define _LCD1602_H_#include"def.h"void write_com(INT8U com);void write_date(INT8U date);void lcd_init();void lcd_prints(INT8U *lcd_string);#endif4.AD转换函数ADC_DIS.C#include <REGX51.H>#include"def.h"#include"lib.h"sbit adc_cs=P10;sbit adc_rd=P11;sbit adc_wr=P12;/*ADC0804启动转换函数*/INT8U start_ad()INT8U temp;adc_cs=0;adc_wr=1;delay(1);adc_wr=0;delay(1);adc_wr=1;delay(1)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论