前言

我是直接把以前写的 51 数码管程序复制过来的,当时看的郭天祥的视频,先送段选,消隐后送位选,最后来个 1ms 的延时。

代码在 Proteus 中数码管静态是可以的,动态显示出了问题——显示不全,我在网上搜的说是 Proteus 的 Bug,需要先送位选再送段选,我试了试也不行。

最后在我多次实验下,终于让我解决了,可以完全显示,而且显示的非常平稳。

这里记录一下:

解决方法

Proteus 中不需要任何设置,只需要将消隐的顺序换一下,把消隐放在送完位选之后,然会延时即可。

for(i = 0;i < 8;i++)
{
// 送段选
NIXIE_TUBE_D = 1;
P0 = d_table[i];
NIXIE_TUBE_D = 0;
// 送位选
NIXIE_TUBE_W = 1;
P0 = w_table[i];
NIXIE_TUBE_W = 0;
// 消隐
P0 = 0xff;
// 延时
bsp_DelayMS(1);
}

下面是 51 单片机在晶振为 11.0592MHz 时毫秒级的延时函数,STM32 单片机可以使用 HAL 库自带的HAL_Delay进行延时。

void bsp_DelayMS(uint32_t n)    //@11.0592MHz
{
uint8_t data i, j; if (n == 0)
{
return;
} while(n--)
{
_nop_();
i = 2;
j = 199;
do
{
while (--j);
} while (--i);
}
}

后记

对你有所帮助的话,可以点赞支持一下。

Proteus中数码管动态扫描显示不全(已解决)的更多相关文章

  1. HTML中的select下拉框内容显示不全的解决办法

    HTML中的select下拉框内容显示不全的解决办法 今天,我遇到这样一个问题:查询栏中的下拉框中的内容过长,导致部分被覆盖了. 查询了一些资料,有的说用函数控制,有的说用事件控制,有的看不懂,有的实 ...

  2. nexys4ddr数码管动态扫描Verilog例程

    题目:实现数码管动态扫描功能,将十六个开关的值以十六进制的方式在4个数码管上同时显示出来. `timescale 1ns / 1ps module top( clk, sw, seg, an ); / ...

  3. JavaScript解决select下拉框中的内容太长显示不全的问题

    JavaScript解决select下拉框中的内容太长显示不全的问题 1.说明 有些情况下,select下拉框的内容过长,导致部分看不见: 现在通过鼠标事件,让下拉框中的内容显示完全 2.实现源码 & ...

  4. SSRS (SQL Server Report Service) 在IE9, IE10下显示不全的解决办法

    原文:SSRS (SQL Server Report Service) 在IE9, IE10下显示不全的解决办法 在做项目的过程中遇到SSRS与IE9, IE10不兼容的情况,具体表现为报表页面在IE ...

  5. photoshop菜单显示不全的解决方法

    photoshop菜单显示不全? 解决方法,选择菜单 编辑->菜单,下拉菜单选择photoshop默认值

  6. myeclipse中svn图标状态不显示问题的解决办法

    myeclipse中svn图标状态不显示问题的解决办法 博客分类: svn SVNMyeclipse工作WindowsC  myeclipse中使用 svn 插件,原本正常,未作任何更改,突然有一天, ...

  7. Windows平台下在Emacs中使用plantuml中文乱码问题(已解决)

    Windows平台下在Emacs中使用plantuml中文乱码问题(已解决) */--> code {color: #FF0000} pre.src {background-color: #00 ...

  8. spirng中的asm与jdk不兼容<已解决>

    转载自:spirng中的asm与jdk不兼容<已解决> 前言 不知道前面对eclipse做了什么,使用maven来创建项目,然后转成web,启动的时候一直报错.我弄了好久,还是无法解决,先 ...

  9. Vue系列:在vux的popup组件中使用百度地图遇到显示不全的问题

    问题描述: 将百度地图封装成一个独立的组件BMapComponent,具体见 Vue系列:如何将百度地图包装成Vue的组件(http://www.cnblogs.com/strinkbug/p/576 ...

  10. eclipse中xml下Namespaces显示不全的解决办法

    1.问题描述: 如图,有时候编写spring相关的xml文件时,使用namepace中显示不全或者完全不显示 2.解决方法: Window —— Spring ——     Beans Support ...

随机推荐

  1. MessageConsumer

    @Slf4j @Component public class MessageConsumer { @Autowired private PpcRequestMessageListener ppcReq ...

  2. Qt编写安防视频监控系统24-自定义悬浮条

    一.前言 自定义悬浮条功能集成在通用视频控件中,就是提供一个顶部的悬浮条,放一排功能按钮,有抓拍.录像.云台控制.关闭等,相当于可以直接单击对应的按钮针对该通道的视频进行操作,悬浮条的含义就是鼠标移入 ...

  3. VS2008新建MFC程序时提示:当前页面的脚本发送错误 不是有效的Win32应用程序的解决办法

    错误现象: 解决方案: 1.根据错误信息中的url,找到对应文件夹下的htm文件 2.使用notepad++打开default.htm文件,找到错误提示地方,注释掉其中两句语句,如433和434行所示 ...

  4. [云研发]腾讯云cloudstudio使用教程-记录1

    cloudstudio 在vscode中新建终端,使用nvidia-smi查看显卡与gpu情况,可知当前使用的显卡是T4的,显存有15G

  5. AI应用平台搭建之旅(上) - 框架篇(附:AICon大会阿里国际Agent应用平台分享)

    前言 LangEngine内源项目发起于阿里巴巴集团内部组织,LangEngine是类似LLM应用开发框架LangChain的纯Java版本.该框架现已正式对外开源:https://github.co ...

  6. JS端实现图片、视频时直接下载而不是打开预览

    项目中的附件列表,通常情况都需要提供下载.删除的功能,功能本身没有什么要说的,都是基本功能,使用浏览器的的下载功能,也都是用window.open(url),或者window.location.hre ...

  7. 《C++并发编程实战》读书笔记(4):原子变量

    1.标准原子类型 标准原子类型的定义位于头文件<atomic>内.原子操作的关键用途是取代需要互斥的同步方式,但假设原子操作本身也在内部使用了互斥,就很可能无法达到期望的性能提升.有三种方 ...

  8. SpringCloud(四) - 微信获取用户信息

    1.项目介绍 2.微信公众平台 和 微信开放文档 2.1 微信公众平台 2.1.1 网址链接 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?ac ...

  9. Netty3 核心代码-copy

    Netty Hello Word-copy   概述https://github.com/csy512889371/learndemo/netty/NettyHellonetty版本大致版本分为 ne ...

  10. Map 实现类之:TreeMap(SortedMap的实现类) 和 Properties(Hashtable的实现类)

    TreeMap存储 Key-Value 对时,需要根据 key-value 对进行排序.TreeMap 可以保证所有的 Key-Value 对处于 有序状态.TreeSet底层使用 红黑树结构存储 ...