数码管的 8 个段,我们直接当成 8 个 LED 小灯来控制,那就是 a、b、c、d、e、f、g、dp 一共 8 个 LED 小灯。我们通过图 5-3 可以看出,如果点亮 b 和 c 这两个 LED 小灯,也就是数码管的 b 段和 c 段,其他的所有的段都熄灭的话,就可以让数码管显示出一个数字 1,那么这个时候实际上 P0 的值就是 0b11111001,十六进制就是 0xF9。那么我们写一个程序进去,来看一看数码管显示的效果。
#include
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
void main(){
ENLED = 0; //使能 U3,选择数码管 DS1
ADDR3 = 1;
ADDR2 = 0;
ADDR1 = 0;
ADDR0 = 0;
P0 = 0xF9; //点亮数码管段 b 和 c
while (1);
}
大家把这个程序编译一下,并下载到单片机中,就可以看到程序运行的结果是在最右侧的数码管上显示了一个数字 1。
用同样的方法,我们可以把其他的数字字符都在数码管上显示出来,而数码管显示的数字字符对应给 P0 的赋值,我们叫做数码管的真值表。我们来列一下我们这个电路图的数码管真值表,注意,这个真值表里显示的数字都不带小数点的,如表 5-7。
表 5-7 数码管真值表字符 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|
数值 | 0xC0 | 0xF9 | 0xA4 | 0xB0 | 0x99 | 0x92 | 0x82 | 0xF8 |
---|
字符 | 8 | 9 | A | B | C | D | E | F |
---|
数值 | 0x80 | 0x90 | 0x88 | 0x83 | 0xC6 | 0xA1 | 0x86 | 0x8E |
---|
大家可以把上边那个用数码管显示数字 1 程序中的 P0 的赋值随便修改成表 5-7 真值表中的数值,看看显示的数字的效果。
关键字:单片机 数码管 真值表
引用地址:
单片机数码管的真值表
推荐阅读最新更新时间:2024-03-16 15:26
LED数码管检测装置
LED数码管是一种显示数字和符号的半导体发光器件,在数字化仪表仪器和电气设备中已广泛使用。 LED是由发光二极管的段码构成的,最常用的是七段LED,其内部有8个发光二极管,由7个发光二极管构成一个 8 字,各段的代号分别为a,b、c、d、e、f,g,另一个发光二极管在数字右下方为小数点.代号是dp。LED能显示0-9中的任一数字和小数点,外形见图1。这种数码管内部结构有共阴极和共阳极两种接法。 图2为共阴极接法,当某个发光管的阳极为高电平时将其点亮。图3为共阳极接法.当某个发光管的阴极为低电平时将其点亮。引脚③和⑧(在内部已连通)是电源脚,共阴极接法时需接电源 端,共阳极接法时需接电源 十 端。 可用一个检测装置(电路见图4),对
[测试测量]
TFT-LCD驱动芯片测试平台的设计和实现
1 引言 近年来,随着手机和MP4等视频播放器等产品数量迅猛增长,据估计,今年手机的产量就达到10亿台,竞争趋于白热化。对于屏幕显示效果,消费者也提出了更高的要求。显示效果很大的部分取决于 驱动IC 的质量。 显示屏 的 驱动IC 成了很多厂家争夺的焦点。目前国内就有超过二十家的设计公司从事小屏幕 显示屏 的 驱动IC 的设计。在每一款的IC量产之前,必须经过反复的调试,以保证各项设置符合设计的要求,并且达到较好的显示效果。设计高速度,调试方便,并且美观的测试平台可以方便的调试出较好的效果,减少调试时间,而且可以给客户耳目一新的感觉,提高产品竞争力度。本论文是针对Focaltech-systems公司开发的 TFT_LCD
[安防电子]
基于MC9S12DG128单片机的智能车控制系统设计
在智能车竞赛中,参赛队伍应在车模平台基础上,制作一个能够自主识别路线的智能车,然后在专门设计的赛道上自动识别道路并行驶。本文所设计的智能车,采用16位MC9S12DG128单片机作为数字控制器,由安装在车前部的黑白CMOS摄像头负责采集赛道信息,在单片机对信号进行判断处理后,由PWM发生模块发出PWM波对转向舵机进行控制,从而完成智能车的转向。智能车后轮上装有旋转编码器,可用来采集车轮速度的脉冲信号,然后由单片机使用PID控制算法处理后的控制量去改变电机驱动模块的PWM波占空比,从而控制智能车的行驶速度。 1 系统硬件电路组成 设计有效的智能车控制系统必须首先掌握控制对象的特性。根据对智能车特点的分析,可以认为,智能车转向控制
[单片机]
盘点那些常见的单片机编程框架!
随着科技的不断发展,单片机已经广泛应用于各种各样的领域。而随着单片机编程的需求越来越大,编程框架也变得越来越重要。本文将为大家盘点常见的单片机编程框架。 1. Arduino Arduino是目前最常用的单片机编程框架之一。它使用C++编程语言和开源硬件平台,能够快速上手。Arduino还有一个丰富的库和example,可以方便的实现各种功能和项目。 2. STM32Cube STM32Cube是ST公司发布的一款免费的单片机编程框架。它基于HAL(Hardware Abstraction Layer)和LL(Low-Layer)驱动库,并集成了代码生成器、配置工具和性能分析器等工具。STM32Cube支持多种编程
[单片机]
交通信号灯系统51单片机设计
要求 (1)利用51单片机设计一个交通灯控制系统,来实现行人与车流的分流的目的。该系统主要应用在十字路口,纵向为主干道,横向为支干道; (2)主、支干道交替通行,两个干道上的交通灯工作方式同时进行,主干道每次绿灯放行15秒,支干道每次放行10秒,放行时间可通过按键更改; (3)每次绿灯变红之前,黄灯先闪烁3秒,此时,另一干道上仍保持红灯; (4)通过按键实现对十字路口交通管制功能; (5)给出整个系统的结构图、软硬件流程图; 概述 东西主干道和南北支干道各由一组三色交通灯来控制,分别是主干道方向的红、黄、绿以及支干道方向的红、黄、绿。 逻辑分析可知,当主干道为绿灯通行时,支干道必须为红灯禁行;绿灯结束后,主干道进入黄灯闪烁等
[单片机]
51单片机在无线数据传输中的应用
一般的数字采集系统,是通过传感器将捕捉的现场信号转换为电信号,经模/数转换器ADC采样、量化、编码后,为成数字信号,存入数据存储器,或送给微处理器,或通过无线方式将数据发送给接收端进行处理。无线数据传输系统就是 样一套利用无线手段,将采集的数据由测量站发送到主控站的设备。
1 系统组成
系统组成如图1、图2所示。
系统由测量站和主控站两部分组成。测量站主要完成对现场信号的采集、存储,接收遥控指令并发送数据。主控站的主要工作是发送遥控指令、接收数据信息、进行数据处理和数据管理、随机显示打印等。
2 AT89C51与数字电台的串行通信
Atmel公司的AT89C51单片机,是一种低功耗、高性能的、片内含有
[单片机]
单片机裸机下写一个自己的shell调试器
该文章是针对于串口通讯过程中快速定义命令而写的,算是我自己的一个通用化的平台,专门用来进行串口调试用,莫要取笑 要处理串口数据首先是要对单片机的串口中断进行处理,我的方法是正确的命令必须要在命令的结尾处同时带有回车和换行,处理过程如下 //串口接收缓冲区 u8 serial_Buffer = {0}; //串口接收数据长度 u16 serial_Buffer_Length = 0; static void SerialRecv(u8 ch) { if((serial_Buffer_Length&0x8000) == 0x8000)//已经接收完成,系统还没处理 { serial_Buffer_L
[单片机]
51单片机系统抗干扰应用实例
近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。 1 MAX813L芯片及其工作原理 1.1 芯片特点 · 加电、掉电以及供电电压下降情况下的复位输出,复位脉冲宽度典型值为200 ms。 · 独立的看门狗输出,如果看门狗输入在1.6 s内未被触发,其输出将变为高电平。 · 1.25 V门限值检测器,用于电源故障报警、电池低电压检测或+5 V以外的电源
[单片机]