这是共阳极数码管的电路图,其中JP3接到P0口,JP3的8-1对应数码管的a-dp引脚。
共阳极数码管的编码表如下,注意a---最低位,dp---最高位:
【0---3】0xco,0xf9,0xa4,0xb0,
【4---7】0x99,0x92,0x82,0xf8,
【8---B】0x80,0x90,0x88,0x83,
【C---F】0xc6,0xa1,0x86,0x8e。
C51程序显示数字0-9:
#include
#define uchar unsigned char
void delay();
uchar smg[10] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
int k;
void main()
{
//不显示
P0 = 0xff;
while(1)
{
for(k = 0; k < 10; k++)
{
P0 = smg[k];
delay();
}
}
}
void delay()
{
int i,j;
for(i = 10000; i > 0; i--)
for(j = 10; j > 0; j--);
}
关键字:单片机 共阳极数码管
引用地址:
单片机第3课:共阳极数码管
推荐阅读最新更新时间:2024-03-16 15:35
msp430单片机:Timer_A捕获模式
Timer_A捕获模式(以msp430f149为例) 一、捕获模式的介绍 1、捕获模式是在应用中很常用的一种模式,可以进行脉冲计数,侧量脉宽,可以用作小球计数、频率计、超声波测距等应用中。 2、捕获模式可以捕捉上升沿,也可以捕捉下降沿。需要对寄存器进行具体设置。 3、捕获模式的实质就是在捕获上升沿或者下降沿的同时进入捕获中断,执行中断服务函数,同时把TAR计数的值赋给 TACCR0或TACCR1、TACCR2(要看具体用的是哪个引脚的捕获),从而捕获到当前TAR(计数器)的值。 4、捕获模式类似于51单片机的计数器,但是又与计数器工作原理有很大差别,功能也比计数器强大。它既可以脉冲计数也可以计算一个脉冲宽度(也就是高电平的
[单片机]
瑞萨推业界首款采用90 nm工艺MCU,速度可达200 MHz
业界第一个采用90 nm工艺带有片上闪存的微控制器,实现200 MHz业界最高运行速度 利用高性能SH-2A CPU内核,性能较以前产品提升约4倍,有助实现高精度、实时引擎和传输控制 日前,瑞萨科技(Renesas Technology Corp.)宣布开发出了业界第一个采用90 nm(纳米)工艺并带有片上闪存的,可用于汽车引擎、传输等控制程序开发的微控制器——32位SuperH(注1) 系列SH72546RFCC。据悉,该样品将从2007年10月开始在日本交付。 SH72546RFCC微控制器最大的突破是可在汽车应用所需的125℃高温工作环境下,实现200 MHz的业界最高运行速度。此外,它还采用了业界最大的片上闪存容量,可
[新品]
89C51单片机控制HT1621B驱动LCD(C程序)
//********WAVE-E6000/T*************** //*MCU: AT89C51 * //*MCU-crystal: 12M * //*********************************** #include reg51.h #include intrins.h #define uint unsigned int #define uchar unsigned char //**************************** sbit P1_0=P1^0; sbit P1_1=P1^1; sbit P1_2=P1^2; sbit P2_0=P2^0;
[单片机]
PIC单片机学习精华心得
1.前言 为了给前一段时间学习PIC16F616型单片机的一个总结和方便大家的交流,我写了这篇关于PIC单片机的学习心得,都是在看了手册和编程调试后用自己的语言组织的,其中有不足或者有疑问的地方希望大家能及时的给予纠正和批评,提出宝贵的意见. 2.PIC单片机的概述 PIC16F616是一款14引脚、8位的CMOS单片机.采用精简指令集,仅有35条指令,由于采用了数据总线和指令总线分离的哈佛总线结构,使得除少量指令不是单周期之外,大部分的指令都是单周期指令.这样有利于提高单片机的运行速度和执行效率. PIC16F616这款单片机供电电压可以在2V到5.5V之间,内部集成了一个RC振荡器,频率可以配置成8MHZ或者4MHZ,
[单片机]
VC++用ActiveX控件与单片机串行通信
在单片机应用系统中,经常需要通过RS-232串行口与微机进行通信。目前在各种操作系统中,Microsoft的Windows较为常见,而且大多为Windows95/98等32位平台。以往在Windows平台上的串行通信多使用其提供的API函数来实现,这种方法使用起来需要许多底层设置,因而较为繁琐,并且难以理解。Microsoft推出的ActiveX技术提供了另外一种实现串行通信的方法。这种方法不仅相对较为简单,而且非常实用。尤其是Visual C++这种可视化面向对象的编程环境中,可以真正把串口看作一个对象,编程时只需简单的设置,理解起来也很容易。下面详细讨论Microsoft提供的串行通信ActiveX控件的使用方法。该控件的相
[单片机]
单片机阻容复位电路的构成、特点和改进方法
各位小伙伴们大家好,复位电路在单片机小系统中很常见。今天我们就探讨下单片机阻容复位电路的构成、特点和改进方法。 本文内容选自龙顺宇老师的新书《深入浅出STC8增强型51单片机进阶攻略》。 我们现在讲的“复位”,其作用就是通过相关电路产生“复位信号”,让单片机能在上电后或者运行中恢复到默认的起始状态。 一般来说,单片机复位电路主要有四种类型: 微分型复位电路; 积分型复位电路; 比较器型复位电路; 看门狗型复位电路; 微分复位电路 常见的阻容式微分复位电路如图1(a)所示,电路中的“Reset”电气网络连接至单片机“RST”引脚。 图1(a) 该电路上电后的波形如图1(b),其波形在上电后先是高电平,经过100m
[单片机]
51单片机系列连载2—美丽的发光二极管
今天简单地介绍一下发光二极管,发光二极管看似简单,但是在市场中也有很多应用。比如说,在大家经常使用的充电器就有发光二极管的应用,如下图所示: 这就是简易充电器电路,其中LED也就是发光二极管既起到半波整流的作用又兼做指示灯。同样的原理,发光二极管还可以给灯具开关做指示灯、给工业设备配电箱做指示灯以及用共阴极双色LED对电源插座指示等等。 接下来,简单地说一下c语言程序。 大体而言,可以采用位操作与总线操作两种方式写程序,比如让第一个发光二极管亮: (1)、位操作 (2)总线操作 #inc
[单片机]
单片机---ESP8266中utf8转gbk中文标点问题解决
背景 今天在测试过程中发现了中文标点存在问题。 在oled中文显示中,我们用到了一个查表法进行utf-8转gbk的方式,经过实验,发现中文能够翻译出来,但是一些全角的标点,例如中文的逗号,句号,感叹号等,翻译的不正确。 这样会就导致在显示中文标点的时候,会死机或者乱码。 问题解决 首先,我们要明确HZK库中的点阵数据是全的,这是一个完整的字库,所以,现在原因就出在这个函数当中 int SwitchToGbk(const unsigned char* pszBufIn, int nBufInLen, unsigned char* pszBufOut, int* pnBufOutLen) { int i = 0;
[单片机]