数码管扫描显示-单片机通用模板

news2024/11/13 23:28:16

数码管扫描显示-单片机通用模板

  • 一、数码管扫描的原理
  • 二、display.c的实现
    • 1、void Display(void) 各模式界面定义数据
    • 2、void BackupRamToDisRam(void)从缓存区刷新显示映射Ram
    • 3、void FreshDisplay(void) 映射显示Ram到主控的IO口
    • 4、void LcdDisplay_8bit(void) 映射显示Ram到主控的IO口
  • 三、display.h的外部接口
  • 四、显示功能的使用、Note

一、数码管扫描的原理

  • ①人的眼睛中的画面在0.02S(50Hz)左右,光源的闪烁频率高于50-60赫兹时,人眼通常无法察觉到光的闪烁;
  • ②通过控制LED的亮灭透过模具贴纸从而控制数字和图案的亮灭;

在这里插入图片描述

二、display.c的实现

1、void Display(void) 各模式界面定义数据

u8 CxSegData[]={
   0,0,0,0};	//显示Ram缓存区
//=============================================================================
//函数名称:Display
//输	入:无
//输	出:无
//功	能:界面菜单显示
//=============================================================================
void	Display(void)
{
   	
	if(b_Display_Flag== 0) return;		//更新显示
	b_Display_Flag=0;					//显示标志清0
	
	switch(Mode)
	{
   
		case 0:					//全灭显示界面
			CxSegData[0]=0x00;
			CxSegData[1]=0x00;
			CxSegData[2]=0x00;
			CxSegData[3]=0x00;
			b_Fresh_Flag=1;		//刷新显示Ram
			break;
		case 1:					//全显显示界面
			CxSegData[0]=0xff;
			CxSegData[1]=0xff;
			CxSegData[2]=0xff;
			CxSegData[3]=0xff;	
			b_Fresh_Flag=1;		//刷新显示Ram
			break;
		case 2:					//自定义界面显示1
			CxSegData[3]=Unb_Red;
			CxSegData[3]=Unb_Inf;
			CxSegData[3]=Unb_Twi;	//不显示某一个点
			b_Fresh_Flag=1;		//刷新显示Ram
			break;

		case 3:				  //自定义界面显示2
			CxSegData[3]=b_Red;
			CxSegData[3]=b_Inf;
			CxSegData[3]=b_Twi;	//显示某一个点
			b_Fresh_Flag=1;		//刷新显示Ram
			break;
		
		case 4:				 //自定义界面显示2
			LcdDisplay_8bit(LzLcdNum1,LedNumCoding[

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1440904.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

供应链|Managemeng Science 论文解读:数据驱动下联合定价和库存控制的近似方法 (一)

编者按 本次解读的文章发表于 Management Science,原文信息:Hanzhang Qin, David Simchi-Levi, Li Wang (2022) Data-Driven Approximation Schemes for Joint Pricing and Inventory Control Models. https://doi.org/10.1287/mnsc.2021.4212 文章在数…

通过Demo学WPF—数据绑定(二)

准备 今天学习的Demo是Data Binding中的Linq: 创建一个空白解决方案,然后添加现有项目,选择Linq,解决方案如下所示: 查看这个Demo的效果: 开始学习这个Demo xaml部分 查看MainWindow.xaml: …

【RT-DETR进阶实战】利用RT-DETR进行过线统计(可用于人 、车过线统计)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 Hello,各位读者,最近会给大家发一些进阶实战的讲解,如何利用RT-DETR现有的一些功能进行一些实战, 让我们不仅会改进RT-DETR&#xf…

C++ lambda [],[=] ,[],[this] 的使用

在c11标准中引入了lambda表达式,一般用于定义匿名函数 [],[] ,[&],[this] 都是捕获列表 [] 的作用: 什么也不捕获 [] 的作用: 按值捕获所有变量 [&] 的作用: 引用捕获所有外部作用域内的变量 [this]的作用&#xf…

【Boost】:http_server模块(六)

http_server模块 一.安装cpp-httplib库二.基本使用服务器 一.安装cpp-httplib库 可以自己写一个http服务器,但比较麻烦,这里直接使用库。 在gitee上搜索cpp-httplib,任意找一个即可(建议使用0.7.15版本)。例如&#xf…

网络编程-Socket套接字

目录 1.网络编程 1.1定义与图解 1.2基本概念 (1)发送端和接收端 (2)请求和响应 (3)客户端和服务端 2.Socket套接字 2.1定义 2.2分类 (1)流套接字 (2&#xff…

实例分割论文阅读之:FCN:《Fully Convolutional Networks for Semantica Segmentation》

论文地址:https://openaccess.thecvf.com/content_cvpr_2015/papers/Long_Fully_Convolutional_Networks_2015_CVPR_paper.pdf 代码链接:https://github.com/pytorch/vision 摘要 卷积网络是强大的视觉模型,可以产生特征层次结构。我们证明&#xff0c…

第62讲商品搜索动态实现以及性能优化

商品搜索后端动态获取数据 后端动态获取数据&#xff1a; /*** 商品搜索* param q* return*/GetMapping("/search")public R search(String q){List<Product> productList productService.list(new QueryWrapper<Product>().like("name", q)…

机器学习系列——(十七)聚类

引言 在当今数据驱动的时代&#xff0c;机器学习已经成为了解锁数据潜能的关键技术之一。其中&#xff0c;聚类作为机器学习领域的一个重要分支&#xff0c;广泛应用于数据挖掘、模式识别、图像分析等多个领域。本文旨在深入探讨聚类技术的原理、类型及其应用&#xff0c;为读…

Maven私服部署与JAR文件本地安装

Nexus3 是一个仓库管理器&#xff0c;它极大地简化了本地内部仓库的维护和外部仓库的访问。 平常我们在获取 maven 仓库资源的时候&#xff0c;都是从 maven 的官方&#xff08;或者国内的镜像&#xff09;获取。团队的多人员同样的依赖都要从远程获取一遍&#xff0c;从网络方…

K8S之运用亲和性设置Pod的调度约束

亲和性 Node节点亲和性硬亲和实践软亲和性实践 Pod节点亲和性和反亲和性pod亲和性硬亲和实践 pod反亲和性 Pod 的yaml文件里 spec 字段中包含一个 affinity 字段&#xff0c;使用一组亲和性调度规则&#xff0c;指定pod的调度约束。 kubectl explain pods.spec.affinity 配置…

对称二叉树

给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true示例 2&#xff1a; 输入&#xff1a;root [1,2,2,null,3,null,3] 输出&#xff1a;false思路&#xff1a;1.确定递归函数的参数…

Token、Tokenization 和张量之间的关系

输入经过Tokenization、Embedding和Positional Encoding后&#xff0c;最终构建为张量&#xff0c;给后续的计算和处理带来很多优势。 1. tokenization和张量 在自然语言处理&#xff08;NLP&#xff09;领域中&#xff0c;tokenization 是文本预处理的重要步骤之一&#xff0…

91.网游逆向分析与插件开发-游戏窗口化助手-游戏窗口化助手的UI设计

内容参考于&#xff1a;易道云信息技术研究院VIP课 上一个内容&#xff1a;项目需求与需求拆解-CSDN博客 码云地址&#xff08;游戏窗口化助手 分支&#xff09;&#xff1a;https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号&#xff1a;e512d44da1b7e6a8726b1be0…

Rust 格式化输出

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、format! 宏二、fmt::Debug三、fmt::Display四、? 操作符 循环打印 前言 Rust学习系列-本文根据教程学习Rust的格式化输出&#xff0c;包括fmt::Debug&…

【C++】结构体变量的赋值细节

C中 结构体变量的赋值与数组在定义时的初始化(赋值)十分相似&#xff1a; ①它们定义在全局区时都会自动初始化为0 ②都是使用大括号的方式赋值 ③大括号中的值都是从前往后一一对应的进行赋值&#xff0c;如果大括号中的值的数量不够的话&#xff0c;后面那些没有被手动赋值的…

ubuntu20.04安装最新版nginx

前言 记录下ubuntu服务器安装nginx 步骤 安装最新版本的 Nginx 可以通过添加 Nginx 官方的软件仓库并更新软件包信息。以下是在 Ubuntu 20.04 上安装最新版本 Nginx 的步骤&#xff1a; 添加 Nginx 软件仓库&#xff1a; 打开终端并执行以下命令&#xff1a; sudo sh -c echo…

无人机动力系统高倍率锂聚合物电池介绍,无人机锂电池使用与保养,无人机飞行控制动力源详解

无人机电池使用及保养 电池是无人机飞行的动力来源,也是一个消耗品&#xff0c;对电池充分了解&#xff0c;采取正确的使用方法&#xff0c;妥善进行维护保养将有助于提高飞行的安全性、延长电池的使用寿命。以下将详细对电池的使用和管理进行讲解。 高倍率锂聚合物电池的含义…

HiveSQL——条件判断语句嵌套windows子句的应用

注&#xff1a;参考文章&#xff1a; SQL条件判断语句嵌套window子句的应用【易错点】--HiveSql面试题25_sql剁成嵌套判断-CSDN博客文章浏览阅读920次&#xff0c;点赞4次&#xff0c;收藏4次。0 需求分析需求&#xff1a;表如下user_idgood_namegoods_typerk1hadoop1011hive1…

Rebuild企业管理系统 SSRF漏洞复现(CVE-2024-1021)

0x01 产品简介 Rebuild是高度可配置化的企业管理系统!企业内部可免费使用!低代码/零代码快速搭建企业中台、CRM客户关系管理、WMS库存管理、TMS运输管理、SCM供应链管理,外贸管理,甚至是 ERP 企业资源计划! 0x02 漏洞概述 Rebuild 3.5.5 版本存在安全漏洞,该漏洞源于组…