• 静态数码管工作原理及代码实现


    单片机系统常用的显示器有:发光二极管LED显示器、液晶LCD显示器、TFT液晶显示器等等。LED显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(5x8、8x8点阵等)。

    LED数码管根据LED的不同接法可以分为2类:共阴和共阳

    使用LED显示器时,要注意区分这两种不同的接法。为了显示数字或字符,必须对数字或字符进行编码。七段数码管加上一个小数点,共计8段。因此为LED显示器提供的编码正好是一个字节。我们实验板用共阴LED

    显示器根据电路连接图显示16进制数的编码如下图:

    静态显示原理:LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于检测可控制。缺点是硬件电路比较复杂,成本较高。

    其中321是控制74HC573锁存功能。

    静态数码管显示数字0的代码如下:

    #include "reg52.h"
    typedef unsigned char u8;
    typedef unsigned int u16;
    
    sbit LSA P2^2;
    sbit LSB P2^3;
    sbit LSC P2^4;
    
    u8 code smgduan[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 
                 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};
    
    void main()
    {
        LSA=0;
        LSB=0;
        LSC=0;
        P0=smgduan[0];
        while(1);
    }

    code的作用:code的作用是告诉单片机,我定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改。程序可以简单的分为code(程序)区,和data (数据)区,code区在运行的时候是不可以更改的,data区放全局变量和临时变量,是要不断的改变的。code区也可以放在rom里面,也可以放在ram里面,data只能放在ram中。

  • 相关阅读:
    springboot+fegin实现负载均衡
    springcloud实现微服务服务注册、负载均衡
    spring boot服务状态监控+shell远程连接服务
    微服务基础概念及相关技术组件
    集群分布式基础概念及了解
    http第一章-telnet测试
    spring整合netty

    springMVC+spring+JPA配置文件
    CAN信号值解析
  • 原文地址:https://www.cnblogs.com/czz0508/p/10470613.html
Copyright © 2020-2023  润新知