基于51单片机光照强度检测报告

课程设计报告

课程名称: 智能仪器课程设计

题 目: 基于51单片机的光照强度

摘要

光敏电阻测光强度系统,该系统可以自动检测光照强度的强弱并显示让人们知道此时光照强度的强弱。人们可以通过看此装置的显示了解现在的光照状态,做合理的光照调节。该设计可分为三部分:即光照检测部分、信号处理部分、光强显示部分。还可加上照明部分。对于光照检测部分可利用光敏电阻传感器作为检测元件,它可以完成从光强到电阻值的信号转换,再把电阻值转换为电信号就可以作为系统的输入信号。对输入信号处理后,就可以用来显示了。对于显示部分可利用数码管来显示,不同的光强对应于不同的数值,就能简单的显示出不同的光强了。本设计就是由单片机STC89C52RC芯片,AD采集模块,运算放大,和1602液晶为核心,辅以必要的电路,构成了一个单片机光照强度检测系统。该光照强度检测系统可以通过检测光照强度,使得光照在低于一定强度的时候让照明灯亮,是一种常用的测试仪器,它可以用在需要照明的各个地方,根据灯光的强弱,自动控制照明灯的开关,有力地节约了电力资源。

关键词:51单片机,,LM358,ADC0809,1602液晶,光敏电阻

目录

一、设计任务、要求3

1.1 设计任务:3

1.2 设计要求:3

二、方案总体设计4

2.1 方案一:4

2.2 方案二:4

2.3系统采用方案4

三、硬件设计6

3.1 单片机最小系统6

3.2 液晶显示模块6

3.3 系统电源7

3.4 整体电路8

四、软件设计10

4.1 keil软件介绍10

4.2程序流程图10

五、仿真与实现12

5.1 proteus软件介绍12

5.2 仿真过程12

5.3 实物制作与调试14

5.4 使用说明16

六、总结17

6.1设计总结:17

6.2经验总结:18

七、参考文献19

一、设计任务、要求

1.1 设计任务要求

由于光敏电阻的阻值范围比较大,并且要输出一个小信号,所以提供给光敏电阻和用于分压的电阻的电压。利用一条由一个稳压二极管和一个电阻组成的分压电路来提供一个小电压。利用一极运放对小信号进行放大,放大50倍。利用ADC0809进行8位数据的转换,单片机通过P2引脚将数据采集存储,再软件滤波,利用中位值滤波的方法滤波。再用液晶1602显示出来。用三个按键调节照明灯的控制状态照明灯,一个控制照明灯的总开关,按一下照明灯是否允许亮的状态就改变,一个控制设置的允许照明灯亮的最高亮度值进行单位加,另一个控制设置的允许照明灯亮的最高亮度值进行单位减。利用一个引脚接控制一个照明灯。

2.3系统采用方案

总体设计:

系统总体框架图如图所示 :

图1 系统总体框架

2)总体方案工作原理

在给光敏电阻提供一个用于分压的电源时,如果利用两个电阻分出电压的话,当光敏电阻的阻值变化时,分出来的电源电压就会变化。所以采用稳压二极管分一个电压,这样更稳定。采用运放的时候,如果用二级运放,由于运放存在零漂,这样会会使得零漂的现象更加严重,但如果只用一级放大并且放大的倍数达到几十倍的话,失真的现象又会变严重。至于到底失真多大,就不得而知,并且零漂的问题无从解决,就选择一级放大。如果选用ADC574的话,还要接正负15V电源供电,选择ADC0809直接用5V供电。所以选择ADC0809。因为既要显示允许照明灯亮的最高光照值,又要显示当前的光照强度值,为了更直观的显示,选择1602液晶。根据这些对比,最终选择选择方案二。

三、硬件设计

3.1 单片机最小系统

单片机要正常工作,首先要产生片内时钟信号。在单片机内部的振荡器的输入端XTAL1和输出端XTAL2之间接一个石英晶振就可以够成一个自激振荡器。再在两端之间串联接个电容并且在两个电容之间接地以便于稳定频率还对振荡频率有微调作用。电容通常选30uF左右,振荡脉冲频率范围为0~24MHZ。该电路中选用12MHZ晶振。时钟电路图如下:

图2 时钟电路图

单片机在启动时与其他微处理器一样,要让CPU及系统各部件处于确定的初始状态,并从初始开始工作。这就需要复位操作。复位电路有两种方式:上电自动复位和按键自动复位。上电自动复位只是在开始接通电源瞬间复位,接下来想要再次复位就需要断电重启,不方便。按键自动复位不仅可以在开始接通电源瞬间复位还可以通过按下按键复位随时复位。所以选择按键复位方式。复位电路如下:

图3 复位电路图

3.2 液晶显示模块

该系统需要显示两行。控制1602液晶亮度的是蓝白滑动变阻器。1602液晶有16个管脚。编号为1,2管脚为电源正负极管脚,15,16为背光源正负极管脚;7~14为dataI/O管脚与单片机的P0口相连,负责液晶与芯片

基于51单片机的光照强度检测c语言程序,基于51单片机光照强度检测报告.doc相关推荐

  1. 水质检测c语言程序,基于51单片机的水质监测系统的设计.doc

    基于51单片机的水质监测系统的设计 基于AT89C51单片机的水质监测系统的设计 摘要:现在水源污染已经成了社会密切关注的话题,所以对水质进行监测成了保护水资源的一项重要措施,基于此本文设计了一款能够 ...

  2. 单片机方波da转换c语言程序,基于51单片机的波形发生器DA转换(dac0832)

    代码如下: #include"reg51.h" #define uchar unsigned char sbit ksaw=P2^0; //锯齿波按键. sbit ktran=P2 ...

  3. 单片机控制灯光亮度c语言程序,基于51单片机控制LED灯光亮度并报警

    利用pwm控制led灯光亮度大小.可以显示许多亮度等级 到最低或者最高亮度等级会发出报警.设计思路: LED一般是恒流操作的,如何改变LED的亮度呢?答案就是PWM控制.在一定的频率的方波中,调整高电 ...

  4. 单片机独立式按键c语言程序,(原创)51单片机C语言程序设计--速学教程实例(入门篇)之独立按键(查询)...

    (原创)51单片机C语言程序设计--速学教程实例(入门篇)之独立按键(查询) /************************************************************ ...

  5. 51单片机蜂鸣器播放音乐C语言程序实例,51单片机蜂鸣器音乐之八月桂花播放源程序...

    /************************************************************************ [文件名]  C51音乐程序(八月桂花) [功能]  ...

  6. 单片机测周法c语言程序,基于单片机的数字频率计设计(附原理图及源程序).doc...

    四川理工学院毕业设计 四川理工学院毕业设计 PAGE \* MERGEFORMAT4 PAGE \* MERGEFORMAT5 四川理工学院毕业设计 基于单片机的数字频率计设计 (创新的自动选当功能) ...

  7. 51单片机控制步进电机的c语言程序,用AT89C51单片机控制步进电机的汇编源程序...

    描述 下面程序完成的主要功能:实现步进电机的正反转,加速.减速:显示电机转速(转速级别)和工作状态(正转.反转.不转). 源程序 SPEED EQU 10H ;SPEED为转速等级标志,共7级,即1~ ...

  8. 液位控制系统c语言程序,水槽液位控制系统课程设计报告.doc

    摘要 ? 本文根据液位系统过程机理,建立了单容水箱的数学模型.在设计中用到的PID算法提到得较多,PLC方面的知识较少.并根据算法的比较选择了增量式PID算法.建立了PID液位控制模拟界面和算法程序, ...

  9. 超声波c语言程序,51单片机超声波模块的C语言程序.doc

    51单片机超声波模块的C语言程序.doc 超声波模块程序 超声波模块程序 Trig P20 Echo P32 include define uchar unsigned char define uin ...

最新文章

  1. Docker常用命令(docker快捷键)海康docker命令 LY
  2. 上海教师中级职称英语计算机考试,计算机教师如果考过了软考中级对职称评定有用吗,学校会承认嘛,有人懂吗,求助...
  3. 谈谈如何利用 valgrind 排查内存错误
  4. mysql1033错误存储引擎_MySQL Innodb存储引擎因为缓存配置出现的错误
  5. php larvel https,laravel 解决强制跳转 https的问题
  6. Fence Repair(不会优先队列的看过来)
  7. LogBack sl4j 通过MDC实现日志记录区分用户Session[以Spring mvc为例]
  8. NumPy中文文档搬砖学习笔记(1)
  9. 高响应比优先调度算法 java_操作系统高响应比优先模拟算法
  10. 信号带宽和示波器带宽(模拟带宽)关系?信号带宽和信道带宽关系?示波器参数、品牌
  11. EAccessViolation
  12. stm32 iic 从机模式 时钟低电平问题
  13. webscraper多页爬取_Web Scraper 翻页——控制链接批量抓取数据(Web Scraper 高级用法)| 简易数据分析 05...
  14. vs2015 C# 控制台简单SpringDEMO
  15. 在R语言中进行局部多项式回归拟合(LOESS)
  16. python计算学分绩点的程序_模拟登录教务系统计算GPA的小程序
  17. 七夕,都是谁在购买“女朋友收到都哭了”?
  18. centos,php,apache,nginx,vim命令相关知识和命令记录
  19. 教育培训行业市场营销推广方案分享
  20. IOS UIView 01-View开始深入 绘制像素到屏幕上

热门文章

  1. EasyPusher手机直播编码推送之图像旋转90度后画面重复的问题
  2. Python爬虫入门教程 64-100 反爬教科书级别的网站-汽车之家,字体反爬之二
  3. Bilibili支持了AV1编码,关于AV1编码你知道吗?
  4. 黯然销魂者,惟别而已矣。
  5. go-micro框架
  6. 数据湖有新解!Apache Hudi 与 Apache Flink 集成
  7. 刻度标尺精确定位系统-更为人性化的位置检测系统
  8. 【剑指Offer】不用加减乘除做加法(异或:无进位的和 + 相与并左移1位:进位和)
  9. 数据恢复软件:FonePaw Data Recovery mac中文版
  10. Til the Cows Come Home(简单的最短路)