当前位置: 首页 > news >正文

51单片机LED灯渐明渐暗实验

51单片机LED灯渐明渐暗实验

1.概述

这篇文章介绍使用单片机控制两个LED彩灯亮度渐明渐暗效果,详细介绍了操作步骤以及完整的程序代码,动手就能制作的小实验。

2.操作步骤

2.1.硬件搭建

1.硬件准备
名称型号数量
单片机STC12C2052AD1
LED彩灯2
晶振12MHZ1
电容30pf2
电阻100欧姆2
面包板1
连接线5
2.硬件链接电路图

根据下面的电路图将与元器件与单片机连接好,注意LED灯只需要连接19和18两个引脚即可,其他不需要链接。
在这里插入图片描述

2.2.程序代码

/*************************************************************
* 程序名: 两个LED灯亮度渐亮渐暗
* 编写人: bruce
* 硬件支持:TC12C2052 外部12MHZ晶振
* 日  期: 2023-11-14
* 修改日志: 通过控制LED灯亮和灭的时间实现亮度渐变效果,可修改a变量值观察LED灯变化效果
/*************************************************************/#include<STC12C2052AD.H>sbit LED1 = P1 ^ 7;
sbit LED2 = P1 ^ 6;/*********************************************************************************************
函数名:毫秒级CPU延时函数
调  用:DELAY_MS (?);
参  数:1~65535(参数不可为0)
返回值:无
结  果:占用CPU方式延时与参数数值相同的毫秒时间
备  注:应用于1T单片机时i<600,应用于12T单片机时i<125
/*********************************************************************************************/
void DELAY_MS (unsigned int a){unsigned int i;while( --a != 0){for(i = 0; i < 600; i++);}
}void main(void){while(1){unsigned char a;for(a=1;a<20;a++){LED1 = 0;LED2 = 1;// 通过修改延迟值改变灯亮灭的时间,达到渐亮渐暗效果DELAY_MS(a);LED1 = 1;LED2 = 0;DELAY_MS(20-a);}for(a=19;a>0;a--){LED1 = 0;LED2 = 1;DELAY_MS(a);LED1 = 1;LED2 = 0;DELAY_MS(20-a);}}}

2.3.烧录程序

使用Keil工具编译程序,打开STC-ISP软件选择编译后的hex文件,设置外部晶振,下载程序。将程序烧录到单片机后,在给单片机冷启动(断掉5V电源在上电)使单片机切换为外部晶振,观察两个LED灯交替明暗变化。

相关文章:

51单片机LED灯渐明渐暗实验

51单片机LED灯渐明渐暗实验 1.概述 这篇文章介绍使用单片机控制两个LED彩灯亮度渐明渐暗效果&#xff0c;详细介绍了操作步骤以及完整的程序代码&#xff0c;动手就能制作的小实验。 2.操作步骤 2.1.硬件搭建 1.硬件准备 名称型号数量单片机STC12C2052AD1LED彩灯无2晶振1…...

美团面试:微服务如何拆分?原则是什么?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如美团、字节、如阿里、滴滴、极兔、有赞、希音、百度、网易的面试资格&#xff0c;遇到很多很重要的面试题&#xff1a; 微服务如何拆分&#xff1f; 微服务拆分的规范和原则…...

easyExcel注解详情

前言11个注解字段注解 类注解基础综合示例补充颜色总结 11个注解 ExcelProperty ColumnWith 列宽 ContentFontStyle 文本字体样式 ContentLoopMerge 文本合并 ContentRowHeight 文本行高度 ContentStyle 文本样式 HeadFontStyle 标题字体样式 HeadRowHeight 标题高度 HeadStyle…...

S7-1200PLC 作为MODBUSTCP服务器通信(多客户端访问)

S7-1200PLC作为MODBUSTCP服务器端通信编程应用,详细内容请查看下面文章链接: ModbusTcp通信(S7-1200PLC作为服务器端)-CSDN博客文章浏览阅读239次。S7-200Smart plc作为ModbusTcp服务器端的通信S7-200SMART PLC ModbusTCP通信(ModbusTcp服务器)_s7-200 modbustcp-CSDN博客文…...

泰勒多项式

泰勒展开 f ( x ) P n ( x ) R n ( x ) f(x)P_n(x)R_n(x) f(x)Pn​(x)Rn​(x) P n ( x ) ∑ 0 n f ( k ) ( x 0 ) k ! ( x − x 0 ) k P_n(x)\sum_0^n\frac{f^{(k)}(x_0)}{k!}(x-x_0)^k Pn​(x)∑0n​k!f(k)(x0​)​(x−x0​)k R n ( x ) f ( n 1 ) ( ξ x 0 ) ( n 1 ) !…...

【Hello Go】Go语言文本文件处理

文本文件处理 字符串处理字符串操作ContainsJoinindexrepeatReplaceSplitTrimFields 字符串转换AppendFormatParse 正则表达式Json处理编码Json通过结构体生产Json通过map生产json 解码Json解析到结构体解析到interface 文件操作相关api介绍建立和打开文件关闭文件写文件读文件…...

ppt录屏制作微课,轻松打造精品课程

微课作为一种新型的教学方式逐渐受到广大师生的欢迎。微课具有方便快捷、内容丰富、互动性强等特点&#xff0c;可以有效地帮助教师传达知识&#xff0c;提高学生的学习效果。其中&#xff0c;ppt录屏制作微课就是一种常见的方式。本文将介绍ppt录屏的使用方法&#xff0c;帮助…...

php伪随机数

利用工具 php_mt_seed <?php // php 7.2function white_list() {return mt_rand();}echo white_list(), "\n";echo white_list(), "\n";echo white_list(), "\n"; 输入命令&#xff1a; ./php_mt_seed 1035656029 <?phpmt_srand(181095…...

为什么录屏没声音?实用技巧大放送!

录屏已成为我们在数字时代记录和分享内容的重要方式之一。但有时&#xff0c;您可能会遇到录制视频却没有声音的问题。这个问题可能出现在不同的录屏软件中&#xff0c;导致许多人感到疑惑。在本文中&#xff0c;我们将探讨为什么录屏没声音&#xff0c;并提供两种解决方案&…...

分布式系统的认证授权

一.分布式系统的认证授权大致架构 以云音乐系统为例&#xff1a; 注&#xff1a;一般情况下&#xff0c;我们会把认证的部分的接口提取为一个单独的认证服务模块中。 二.单点登录&#xff08;Single Sign On&#xff09; 单点登录&#xff0c;Single Sign On&#xff0c;简称…...

TVS瞬态抑制二极管的工作原理和特点?|深圳比创达电子EMC

TVS二极管一般是用来防止端口瞬间的电压冲击造成后级电路的损坏。防止端口瞬间的电压冲击造成后级电路的损坏。有单向与双向之分&#xff0c;单向TVS一般应用于直流供电电路&#xff0c;双向TVS应用于交流供电电路。 TVS产品的额定瞬态功率应大于电路中可能出现的最大瞬态浪涌…...

csdn - mermaid

目录 方向节点样式形状箭头 子图流程图类图uml图甘特图 https://blog.csdn.net/sandalphon4869/article/details/89341443 https://blog.csdn.net/swinfans/article/details/89393853 https://zhuanlan.zhihu.com/p/614018391 https://blog.csdn.net/qq_42491125/article/detai…...

C题目11:数组a[m]排序

每日小语 双手&#xff0c;且放下一切劳作&#xff0c;前额&#xff0c;也忘掉忧思&#xff0c;此时此刻我所有的感觉就想沉入安睡。 自己敲写 这个问题老师上课讲了一种方法&#xff0c;叫做冒泡排序。基本思想是 1.找最小值&#xff0c;放到a[0] 2.从a[1]~a[3]找最小值&a…...

编译器安全

在供应链安全中&#xff0c;大家一直关注采用SCA工具分析开源组件中的安全漏洞以及许可证的合规性。但是对于底层软件开发使用的编译器、链接器等安全却容易被忽视&#xff0c;其中有没有安全漏洞、有没有运行时缺陷、有没有被植入漏洞、木马等&#xff0c;似乎并没有引起多少人…...

docker部署gitlab 12.10.6过程

docker部署gitlab 12.10.6过程 1.docker安装 docker指定版本安装【官方文档步骤】 官方文档地址&#xff1a;https://docs.docker.com/engine/install/centos/ # 1.安装yum工具及设置docker-ce镜像库 sudo yum install -y yum-utils# 国外的镜像下载太慢了改成阿里云镜像库 s…...

单例设计模式是什么?什么是 Singleton 单例设计模式?Python 单例(单件)设计模式示例代码

什么是 Singleton 单例设计模式&#xff1f; 单例模式是一种创建型设计模式&#xff0c;它确保一个类只有一个实例&#xff0c;并提供一个全局访问点来访问该实例。 主要思想&#xff1a; 单例模式确保某个类只有一个实例&#xff0c;并提供了一个访问该实例的全局访问点。它…...

Redis跳跃表

前言 跳跃表(skiplist)是一种有序数据结构&#xff0c;它通过在每一个节点中维持多个指向其他节点的指针&#xff0c;从而达到快速访问节点的目的。 跳跃表支持平均O(logN)&#xff0c;最坏O(N)&#xff0c;复杂度的节点查找&#xff0c;还可以通过顺序性来批量处理节点…...

C++基础从0到1入门编程(二)

系统学习C 方便自己日后复习&#xff0c;错误的地方希望积极指正 往期文章&#xff1a;C基础从0到1入门编程&#xff08;一&#xff09; 参考视频&#xff1a; 1.黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难 2.系统化学习C 1 函数指针和回调函数 如果把函数的地址…...

Uniapp扫码预览连接地址与手机不在同一网段

在开发Uniapp应用时&#xff0c;这里有一个扫码预览的功能&#xff0c;电脑与手机都是在一网络下&#xff0c;之前点开后预览地址一直是169.254.3.x的地址&#xff0c;通过WINR键输入cmd运行&#xff0c;然后ipconfig查看所有网络连接。发现有一个虚拟网络连接的地址是169.251.…...

万界星空科技SMT行业生产管理MES系统解决方案

一、SMT行业特点&#xff1a; SMT&#xff08;Surface Mounted Technology&#xff09;作为电子组装行业里首先的技术和工艺&#xff0c;选择合适的MES解决方案来保障SMT生产的成功至关重要。 电子行业涉及的范围非常广&#xff0c;包含了汽车、电脑、电视、手机等产品上&…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文&#xff5c;魏琳华 编&#xff5c;王一粟 一场大会&#xff0c;聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中&#xff0c;汇集了学界、创业公司和大厂等三方的热门选手&#xff0c;关于多模态的集中讨论达到了前所未有的热度。其中&#xff0c;…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap&#xff08;位图&#xff09;是Android应用内存占用的“头号杀手”。一张1080P&#xff08;1920x1080&#xff09;的图片以ARGB_8888格式加载时&#xff0c;内存占用高达8MB&#xff08;192010804字节&#xff09;。据统计&#xff0c;超过60%的应用OOM崩溃与Bitm…...

如何在网页里填写 PDF 表格?

有时候&#xff0c;你可能希望用户能在你的网站上填写 PDF 表单。然而&#xff0c;这件事并不简单&#xff0c;因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件&#xff0c;但原生并不支持编辑或填写它们。更糟的是&#xff0c;如果你想收集表单数据&#xff…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...

二维FDTD算法仿真

二维FDTD算法仿真&#xff0c;并带完全匹配层&#xff0c;输入波形为高斯波、平面波 FDTD_二维/FDTD.zip , 6075 FDTD_二维/FDTD_31.m , 1029 FDTD_二维/FDTD_32.m , 2806 FDTD_二维/FDTD_33.m , 3782 FDTD_二维/FDTD_34.m , 4182 FDTD_二维/FDTD_35.m , 4793...