C51单片机LED闪烁编程完整教程
创作时间:
作者:
@小白创作中心
C51单片机LED闪烁编程完整教程
引用
CSDN
1.
https://m.blog.csdn.net/GallyDowney/article/details/122301577
本教程将详细介绍如何使用C51单片机实现LED灯闪烁的编程过程。通过本教程,你将学习到如何编写延时函数、如何使用Keil5软件进行编译和仿真,以及如何通过CH340驱动将程序烧录到单片机开发板。
实验目标
使LED灯闪烁,需循环让 D1 指示灯先亮一会后熄灭,因此只需编写一个循环函数,专门在那循环运行即可实现延时功能。
编译软件
Keil5
实验过程
1. 书写延时函数
函数名:delay_10us
函数功能:延时函数,ten_us=1时,大约延时10us
输入:ten_us
输出:无
函数需要通过while循环实现,函数入口有一个形式参数ten_us,如果ten_us=1,则while循环执行一次,调用该函数延时时间大约 10us。
2. 书写main函数代码
LED1=0(低电平点亮);
LED1=1(高电平熄灭);
delay_10us(50000);仿真得知大约延时450ms
3. 编译程序,发现错误
函数形参 ten_us 是 u16 类型的,不是 C语言数据类型关键字
4. 重新定义数据类型
5. 重新编译,最终得到正确的完整编译代码及hex.文件
6. 通过CH340驱动烧录hex.文件到单片机开发板
7. 连接P20与D1端口观察实验现象
8. 其他:通过 KEIL 软件仿真查看延时时间
①点击仿真按钮,进入仿真界面
②点击 RST 按钮,重新复位系统参数,此时参数列表中 sec 则为 0,然后设置断点
③点击运行代码,可以看到黄色箭头直接定位到 18 行代码,也是设置的第一个断点位置,此时参数列表中 sec 时间是 0.00039s。
④再点击运行代码,此时黄色箭头指向第 19 行代码,此时 sec 为 0.450601s。
⑤将现在这个时间减去上一步的 sec 时间就可以得到 delay_10us(50000)运行 的实际时间了为0.450601- 0.00039=0.4502s≈450ms
热门推荐
如何做个团队的组织者
碳化钽(TaC)可用于制造碳化硅晶体 楚江新材为我国代表企业
《鹬蚌相争》寓言的深刻启示:珍惜关系与合作的重要性
春分时令话睡眠:科学应对情绪波动与睡眠困扰
春光明媚,警惕“情绪流感”
探究吕布的三位“义父”及其背后的历史真相
知识付费卖课资质2025年全攻略
写作框架之4个爆款模版
掌握差额法,轻松提升财务分析能力
利用下一代测序数据挖掘和开发SSR标记方法及软件简介
什么是BOLL指标?布林线指标详解
小孩有疳积该怎么办
100元人民币能换多少越南盾?实用兑换指南来了
元宇宙概念对教育领域有哪些潜在影响?
弘扬传统文化的意义 传统文化包含什么
传统意义国际法:历史、理论與實踐
牛肚的功效与作用、禁忌和食用方法
牛肚的营养价值与食用方法
人工智能与传统编程的主要区别是什么?
东北特产白桦树汁爆火,智商税还是养生水?
4种科学有效的舞蹈横叉练习方法
横叉一次多久
樱花:从文化符号到生态保护
花中为何“结出”叶片?认识樱花家族的奇特成员
皮蛋制作工艺详解:从选材到成品的完整指南
刘伯温:明朝开国智囊团核心
BIM技术在市政给排水管道设计中的创新应用
阑尾炎保守治疗效果如何判断?医生详解四大标准
探索嵌入式系统的奥秘:嵌入式培训机构的全面指南
没有领结婚证小孩子怎么上户口