led计数电路实验报告_LED点亮程序
无论什么时候我们都要以实际应用的角度去考虑程序的编写。
(2) 无论什么时候都不要让 CPU 白白浪费等待,尤其是延时(超过 1mS)这样的地方。
(3) 设计相应驱动电路时候,应该仔细阅读芯片的数据手册,了解每个引脚的驱动能力,以及整个芯片的驱动能力
(4) 最重要的是,如何去释放 CPU(参考本章的例子),这是写出合格程序的基础。
#include
sbit LED_SEG = P1^4; //数码管段选
sbit LED_DIG = P1^5; //数码管位选
sbit LED_CS11 = P1^6; //led 控制位
sbit ir=P1^7;
#define LED P0 //定义 LED 接口
bit g_bSystemTime1Ms = 0 ; // 1MS 系统时标
unsigned int g_u16LedTimeCount = 0 ; //LED 计数器
unsigned char g_u8LedState = 0 ; //LED 状态标志, 0 表示亮,1 表示熄灭
#define LED_ON() LED = 0x00 //所有 LED 亮
#define LED_OFF() LED = 0xff //所有 LED 熄灭
void Timer0Init(void)
{ TMOD &= 0xf0 ; TMOD |= 0x01 ; //定时器 0 工作方式 1
TH0 = 0xfc ; //定时器初始值
TL0 = 0x66 ;
TR0 = 1 ;
ET0 = 1 ;
}
void LedProcess(void)
{
if(0 == g_u8LedState)//如果 LED 的状态为亮,则点亮 LED
{
LED_ON() ;
}
else //否则熄灭LED
{
LED_OFF() ;
}
}
void LedStateChange(void)
{
if(g_bSystemTime1Ms) //系统 1mS 时标到
{
g_bSystemTime1Ms = 0 ;
g_u16LedTimeCount++; //LED 计数器加一 if(g_u16LedTimeCount >= 500) //计数达到 500,即 500mS 到了,改变 LED 的状态。
{
g_u16LedTimeCount = 0 ;
g_u8LedState = ! g_u8LedState ;
}
}
}
void main(void)
{
Timer0Init() ;
EA = 1 ;
LED_CS11 = 1 ; //74HC595 输出允许
LED_SEG = 0 ; //数码管段选和位选禁止(因为它们和 LED 共用 P0 口)
LED_DIG = 0 ;
while(1)
{
LedProcess() ;
LedStateChange() ;
}
}
void Time0Isr(void)
interrupt 1
{
TH0 = 0xfc ; //定时器重新赋初值
TL0 = 0x66 ;
g_bSystemTime1Ms = 1 ; //1MS 时标标志位置位}
led计数电路实验报告_LED点亮程序相关推荐
- led计数电路实验报告_「正点原子FPGA连载」第八章 按键控制LED灯实验
1)实验平台:正点原子开拓者FPGA开发板 2)本实例源码下载:请移步正点原子官网 第八章 按键控制LED灯实验 按键是常用的一种控制器件.生活中我们可以见到各种形式的按键,由于其结构简单,成本低廉等 ...
- led计数电路实验报告_至简设计系列_状态机实现LED交通灯2
--作者:肖肖肖 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计 1.1.1 概述 发光二极管简称为LED,是一种常用的发光器件,通过电子与空穴复合释放能量发光,可以高效的将电能转化为 ...
- arm嵌入式led灯闪烁实验报告_led闪烁实验报告.doc
led闪烁实验报告 篇一:单片机实验--LED灯闪烁实验 实 验 报 告 课程名称 实验项目 2016年 3 月 13 日 实验目的 1. 掌握51单片机开发板的使用步骤: 2. 掌握51单片机开发板 ...
- Proteus仿真数字钟表电路实验报告(可下载工程文件)
Proteus仿真数字钟表电路实验报告(可下载工程文件) 实验目的 实验器件 实验步骤 1. 选择合适的Proteus器件中的译码器和数值显示器件能够对4位二进制数进行正常的数值显示 2. 组成模值为 ...
- matlab三相半波整流实验报告,三相半波可控整流电路实验报告.docx
三相半波可控整流电路实验报告 实验一三相半波可控整流电路实验 一.实验目的 1.了解三相半波可控整流电路的工作原理,观察和记录不同导通角下的负载电压波形和电流波形. 2.理解触发电路的定相原理,掌握调 ...
- LED计数电路,5输入按键编码器,7段数码管显示驱动集成为LED计数测试电路
LED计数电路: 5输入按键编码器: 7段数码管显示驱动真值表: 集成:
- 大学计算机a实验实验报告数组,广州大学电路实验报告
广州大学电路实验报告Tag内容描述: 1.广州大学学生实验报告 开课学院及实验室 计机楼 617A 室2016 年 3 月 29 日 学院 数学与信息科学 年级 专业 班 信安 131 姓名 张贺威 ...
- 计算机辅助测控电路设计报告,测控电路实验报告(20210407082438)
<测控电路实验报告(20210407082438)>由会员分享,可在线阅读,更多相关<测控电路实验报告(20210407082438)(8页珍藏版)>请在人人文库网上搜索. 1 ...
- 一阶电路实验报告心得_《大学电路实验报告.doc
<大学电路实验报告 目 录 实验的意义.要求及注意事项 ---------------2 实验一.直流网络定理 ------------------4 实验二.RC一阶电路的响应测试 ----- ...
最新文章
- 从零开始学习jQuery (三) 管理jQuery包装集
- python获取docx文档的内容(文本)
- Scanner类的简单用法介绍!
- java工程师_Java开发工程师需要掌握哪些技能?
- MAC电脑8款常用设计工具推荐
- eclipse 中警告信息汇总
- Java8 改进的匿名内部类:
- 企业ERP上云解决方案(金蝶/用友/OA等)
- 9月30日skype事件
- 苹果c语言怎么用windows。h_苹果12怎么用蓝牙传照片?iphone12无线传相片的详细步骤...
- 转:YY淘宝商品数据库设计
- 逆向学习第二天如何手动脱UPX、Aspack壳
- [转载]MATLAB内存管理
- 前端纯CSS导入otf字体包
- 【List】个人 常用学习工作软件清单
- 【挨踢人物传】英雄不问出路,从化工员到微软企业护航专家(第16期)
- uni-app 上传图片到阿里云oss
- 关于我转行嵌入式的那些事
- 微信云托管-填坑之旅
- call()的具体使用方法
热门文章
- VIM Emacs 临时获得权限(:w !sudo tee %)
- [算法]复杂链表的复制
- 第 10 章 数组和指针
- Jmeter新手频犯错误之一(登录)
- 删除Windows 文本右键选项
- xcode调试打印QString
- java基础语法(二)--单列模式
- AX2009 的EP开发要点
- Flash/Flex学习笔记(26):AS3自定义右键菜单
- 大数据_Flink_Java版_数据处理_时间语义(1)_时间语义概念---Flink工作笔记0049