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

51单片机----LED与数码管模块

1.单片机相关概念

裸机程序:所编写的代码直接操作硬件(即直接与HARD WARE 交互);

SOC:系统级芯片;

MCU: 微控制器:

MPU:媒体播放器;

GPU:图形处理器;

CPU:中央处理器;

外设寄存器:外设寄存器是计算机系统中,外设内部用于暂存数据、状态信息或控制指令的专用存储单元,是CPU与外设之间进行数据交互和命令通信的核心接口,其核心功能是实现CPU与外设之间的异步协调;

GPIO(通用输入输出):GPIO是微控制器或处理器上的一类通用引脚接口,可通过软件配置为输入或输出模式,用于与外部设备进行简单的数字信号交互;

补充在51单片机中int型只占2字节;

2.LED模块的使用

其低电平点亮;

eg:

#include <reg52.h>void delay(unsigned int n){while(n){n--;}}void led_all_on(void)
{P2 = 0;
}void led_all_off(void)
{P2 = 0xff;
}void led_on(unsigned char n)
{P2 = ~n;
}int main(void)
{led_all_off();//P2 &= ~((1 << 1) | (1 << 3) |(1 << 5));//P2 |= (1 << 0) | (1 << 2) |(1 << 4) | (1 << 6);while(1){	int i = 0;while(i < 8){led_on(1 << i);++i;delay(20000);}i = 7;while(--i){led_on(1 << i);delay(20000);}}
}

3.数码管模块的使用

高电平点亮

eg:

#include <reg52.h>void delay(unsigned int n){while(n){n--;}}void bit_select(int n)
{P1 &= ~((0x0F << 0));P1 |= (1 << n);
}void segment_select(int n)
{unsigned char t[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};P0 = t[n];delay(500);  //确保数码管导通P0 = 0;delay(100);  //消影
}void show_number(int n)
{int t = 0;if(n > 9999){return;}if(0 == n){bit_select(0);segment_select(0);}while(n){bit_select(t++);segment_select(n % 10);n /= 10;}
}int main(void)
{bit_select(0);while(1){show_number(1234);}
}

http://www.xdnf.cn/news/19738.html

相关文章:

  • 计算机网络:(十七)应用层(上)应用层基本概念
  • 如何创建交换空间
  • Elasticsearch(高性能分布式搜索引擎)01
  • Day20_【机器学习—逻辑回归 (2)—分类评估方法】
  • 硬件基础与c51基础
  • 深入剖析Spring Boot中Spring MVC的请求处理流程
  • Linux(2)|入门的开始:Linux基本指令(2)
  • FPGA实现流水式排序算法
  • 开源 C++ QT Widget 开发(十二)图表--环境监测表盘
  • CouponHub项目开发记录-基于责任链来进行创建优惠券模板的参数验证
  • Django get_or_create 方法详解
  • centos9 docker启动不起来,docker启动发生堵塞问题!
  • 少儿舞蹈小程序(6)打造您的“活”名片:动态展示机构实力
  • MySQL的utf8 、utf8mb3 和 utf8mb4 的区别和排序规则
  • Python 工具: Windows 带宽监控工具
  • JavaScript考核
  • Tomcat 全面指南:从目录结构到应用部署与高级配置
  • mit6.031 2023spring 软件构造 笔记 Specification
  • 【LeetCode 热题 100】1143. 最长公共子序列——(解法二)递推
  • 2025 大学生职业准备清单:从数据到财会,这些核心证书值得考
  • 【IO】多进程编程课后练习
  • 单多行文本溢出
  • Selenium核心技巧:元素定位与等待策略
  • ArkUI核心功能组件使用
  • 【线段树】3525. 求出数组的 X 值 II|2645
  • Spring 事务原理解析:AOP 的一次完美落地
  • 深度学习——基于卷积神经网络实现食物图像分类【4】(使用最优模型)
  • 广度优先搜索(BFS, Breadth-First Search)
  • 数字化转型的六大天问:你的项目为何失败
  • 数据开发工作了一年,准备跳槽,回顾一些面试常见问题,大数据面试题汇总与答案分享