news 2026/4/23 20:25:02

基于单片机教室灯控制(光照,手动自动,LCD1602)系统Proteus仿真(含全部资料)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于单片机教室灯控制(光照,手动自动,LCD1602)系统Proteus仿真(含全部资料)

全套资料包含:Proteus仿真源文件+keil C语言源程序+AD原理图+流程图+元器件清单+说明书等

资料下载:

通过网盘分享的文件:资料分享
链接:百度网盘 请输入提取码提取码: tgnu


目录

资料下载:

Proteus仿真功能

项目文件资料:

一、Proteus仿真源文件

二、AD原理图文件

二、报告说明书

三、系统流程图

四、Keil c语言程序源代码


项目功能:

教室光控
1、系统分为自动模式和手动模式
2、自动模式:根据光照强度调节亮灯的数量
3、手动模式:按键控制灯的亮灭
4、LCD1602显示系统状态


项目文件:

一、Proteus仿真源文件

二、AD原理图文件

二、报告说明书

三、系统流程图

四、器件清单

元件型号数量
单片机AT89C511
电容10uf1
电容30pf2
晶振12MHZ1
电阻10k4
按钮7
温度传感器DS18B201
模数芯片ADC08321
电位器1k2
LED绿色4
电阻100欧6
显示器LCD16021
排阻10k1
LED黄色2
实时时钟DS13021
晶振32.768KHZ1
集成运放LM3241
光敏电阻10k1

五、Keil c语言程序源代码(部分)

#include "reg51.h" #include"ds1302.h" #include "lcd1602.h" #define uchar unsigned char #define uint unsigned int sbit led1=P3^4;//灯 sbit led2=P3^5; sbit led3=P3^6; sbit led4=P3^7; sbit led5=P1^6; sbit led6=P1^7; sbit k1=P3^0;//按钮 sbit k2=P3^1; sbit k3=P3^2; sbit k4=P3^3; sbit k5=P1^3; sbit k6=P1^4; sbit in=P1^5;//光照 uchar time=0,mode=0; uchar disp1[]="0 0 0 0"; uchar disp2[]="00:00:00"; //主函数 void main() { Ds1302ReadTime(); Ds1302Init(); init_1602(); TMOD|=0X01; TH0=0X3C; TL0=0XB0; ET0=1;//打开定时器0中断允许 EA=1;//打开总中断 TR0=1;//打开定时器 while(1) { //自动控制 if(mode==0) { if(in) { led1=0; led2=0; led3=0; led4=0; } else { led1=1; led2=1; led3=1; led4=1; } } //手动控制 if(mode==1) { if(!k1) { led1=!led1; while(!k1); } if(!k2) { led2=!led2; while(!k2); } if(!k3) { led3=!led3; while(!k3); } if(!k4) { led4=!led4; while(!k4); } } //按键检测 if(!k5)//全亮 { if(mode!=2) mode=2; else { if(led1 && led2 && led3 && led4) { led1=0; led2=0; led3=0; led4=0; } else { led1=1; led2=1; led3=1; led4=1; } } while(!k5); } if(!k6)//模式切换 { mode=!mode; while(!k6); } } } //定时器中断 void Timer0() interrupt 1 { if(time<10) time++; else { time=0; Ds1302ReadTime();//读取时间 //显示 if(led1) disp1[0]='0'; else disp1[0]='1'; if(led2) disp1[2]='0'; else disp1[2]='1'; if(led3) disp1[4]='0'; else disp1[4]='1'; if(led4) disp1[6]='0'; else disp1[6]='1'; disp2[0]=ds1302_time[2]/10+0x30; disp2[6]=ds1302_time[0]/10+0x30; disp2[7]=ds1302_time[0]%10+0x30; write_string(1,0,disp1); if(in) write_string(1,9,"dark "); else write_string(1,9,"light"); if(mode==0)//自动 { write_string(2,0,"auto"); led5=0; } else led5=1; if(mode==1)//手动 { write_string(2,0,"hand"); led6=0; } else led6=1; write_string(2,8,disp2); } TH0=0X3C; TL0=0XB0; }

六、全套资料包含

七:项目资源获取

需要完整的资料可以点击下面的名片关注,回复“资料”!

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 17:06:27

AMD显卡驱动精简优化终极指南:三步告别臃肿体验

AMD显卡驱动精简优化终极指南&#xff1a;三步告别臃肿体验 【免费下载链接】RadeonSoftwareSlimmer Radeon Software Slimmer is a utility to trim down the bloat with Radeon Software for AMD GPUs on Microsoft Windows. 项目地址: https://gitcode.com/gh_mirrors/ra/…

作者头像 李华
网站建设 2026/4/23 16:48:57

LOOT终极指南:5步搞定天际特别版模组加载优化

LOOT终极指南&#xff1a;5步搞定天际特别版模组加载优化 【免费下载链接】skyrimse The TES V: Skyrim Special Edition masterlist. 项目地址: https://gitcode.com/gh_mirrors/sk/skyrimse 你是否曾经因为天际特别版的模组冲突而烦恼&#xff1f;面对数百个模组&…

作者头像 李华
网站建设 2026/4/23 16:57:42

LigandMPNN完全指南:从零掌握AI驱动的分子对接技术

LigandMPNN完全指南&#xff1a;从零掌握AI驱动的分子对接技术 【免费下载链接】LigandMPNN 项目地址: https://gitcode.com/gh_mirrors/li/LigandMPNN LigandMPNN是一款革命性的AI分子设计工具&#xff0c;专门针对蛋白质-配体相互作用优化。它基于先进的消息传递神经…

作者头像 李华
网站建设 2026/4/23 9:45:52

PyTorch-CUDA-v2.9镜像支持气候模拟科学计算

PyTorch-CUDA-v2.9镜像支持气候模拟科学计算 在现代气候科学研究中&#xff0c;传统数值模型虽然精度高&#xff0c;但计算成本高昂、迭代周期长。随着深度学习与高性能计算的深度融合&#xff0c;研究人员开始探索用AI替代或增强部分物理方程求解过程——这一趋势催生了对高效…

作者头像 李华
网站建设 2026/4/23 9:47:04

使用vivado在ego1开发板实现按键消抖电路深度剖析

按键抖动怎么破&#xff1f;用FPGA在Ego1开发板上手把手打造硬件消抖电路你有没有遇到过这种情况&#xff1a;按下开发板上的按键&#xff0c;明明只按了一次&#xff0c;LED却闪了三四下&#xff1f;或者状态机莫名其妙跳了好几个状态&#xff1f;别急&#xff0c;这大概率不是…

作者头像 李华
网站建设 2026/4/23 9:47:13

音频转换终极指南:从零开始掌握专业音频处理

音频转换终极指南&#xff1a;从零开始掌握专业音频处理 【免费下载链接】freac The fre:ac audio converter project 项目地址: https://gitcode.com/gh_mirrors/fr/freac 在数字音乐时代&#xff0c;音频格式转换已成为音乐爱好者和专业人士的必备技能。fre:ac作为一款…

作者头像 李华