51单片机点阵设计

发布者:明石轩最新更新时间:2015-07-07 来源: 51hei关键字:51单片机  点阵设计 手机看文章 扫描二维码
随时随地手机看文章
在做点阵之前先来了解下点阵的原理和点阵显示的过程。

点阵实际上就是64个单独的led灯排列为8行8列
ROW1-8、COL1-8分别控制行和列的1-8led。ROWx高电平、COLy低电平,对应的第x行、第y列led灯亮。

电路图

简化了实际应用电路硬件根据要求自己加
P3口驱动ROW
P2口驱动COL

如何让点阵显示字符?点阵显示字符都是动态的,和多位的数码管一样,并不是一次就显示行或列,而是一次只显示1行,在很短的时间内将8行分别显示出来。由于时间很短,我们的眼睛是看不出来是分开显示的。以字符'1'为例。

分别显示8行
ROW-0x01  COL-0xef
ROW-0x02  COL-0xe7
ROW-0x04  COL-0xef
ROW-0x08  COL-0xef
ROW-0x10 COL-0xef
ROW-0x20  COL-0xef
ROW-0x40  COL-0xef
ROW-0x80  COL-0xc7

源程序:
 

#include
unsigned char code NUM[8]={0xef,0xe7,0xef,0xef,0xef,0xef,0xef,0xc7};
#define ROW P3
#define COL P2
void main(void)
{
  unsigned char i,j,k;
  while(1)
  {
k=0x01;
     for(i=0;i<8;i++)
{
  COL=NUM[i];
  ROW=k<
  for(j=0;j<8;j++);
  ROW=0x00;
}
  }
}[page]

学会了8*8点阵的应用,就可以试着做16*16点阵了。16*16点阵就相当于4个8*8点阵拼起来。8*8点阵有8行8列,16*16点阵就是16行 16列,如果像上面一样就需要32个IO口驱动,虽说51单片机有32个IO口可是在实际应用中这32个IO口不能全部用来驱动点阵啊。这时候我们就需要用到另外两个芯片74HC595和74HC138
74HC595使用方法http://www.51hei.com/chip/1799.html
74HC138 是一个3到8的译码器,下表中列出了该器件的逻辑功能,从表中可以看出其输出为低电平有效,使能端G1为高电平有效,/G2,/G3为低电平有效,当其中一个为高电平,输出端全部为1!在中规模集成电路中译码器有几种型号,使用最广泛!

电路图

源程序
#include  
#include
unsigned char code NUM[8]={0x00,0x00,0xe00,0x82,0xff,0x80,0x00,0x00};
#define ROW P3
sbit SI=P2^0;
sbit RCK=P2^2;
sbit SCK=P2^1; 
void HC595SendData(unsigned char SendVal)
{  
  unsigned char i;
 
  for(i=0;i<8;i++) 
   {
if((SendVal<
else SI=0;
 
SCK=0;
_nop_();
_nop_();
SCK=1;
   }
void HC595ShowData()
{
  RCK=0;
  _nop_();
  _nop_();
  RCK=1; 
}
 
void main(void)
{
  unsigned char i;
  while(1)
  {
     for(i=0;i<8;i++)
{
  HC595SendData(NUM[i]);
  ROW=0x00;
  HC595ShowData();
  ROW=i|0x80;
}
  }
}

关键字:51单片机  点阵设计 引用地址:51单片机点阵设计

上一篇:51单片机UART通信程序
下一篇:51单片机智能风扇的制作,小小的总结一下

推荐阅读最新更新时间:2024-03-16 14:24

基于PIC16单片机对24X24 点阵屏驱动设计
花了几天时间,弄出个小东西,虽然有很多种实现方式在网上流传了,但我却从没有试过,乘有时间,也弄出了四种方式的显示,各位帮忙看看,哪里还有不好的地方,希不吝指教。 一。原理及仿真图 此种为从右往左显示。 此中为从左往右显示 此种为从下往上显示 此种为从上往下显示 原理图说明: 1. 本实例采用微芯 PIC16F877A 单片机,此单片机适合初学者 2. 点阵采用 24X24 点,左边为行线,采用 U1-U3 三个 74LS373 地址所存芯片,复用单片机 RB 端口。 右边为列线,采用 U4-U6 三个 74LS373 地址所存芯片,复用单片机 RD 端口。 3
[单片机]
基于PIC16单片机对24X24 <font color='red'>点阵</font>屏驱动<font color='red'>设计</font>
51单片机学习之陆 —— 1.2 第一个c51程序(点亮流水灯)
由于学校的板子跟我买的板子有些差异,为了大家的阅读,以后的所有程序编写烧录都以老师发的板子为主。 1 事先准备   a 驱动安装,注意群中已经发了,吧板子的驱动装好哦。   b 烧写软件(烧录器) stc - isp (这里说明下,板子上的芯片是stc的,你还能看到它的型号stc89c52RC,用stc的烧写软件就可以了)    提问:什么是烧写软件?     答:就是把你写好代码(C或者是汇编)专程的 机器语言 通过一定的方式下载到单片机中。称为烧写。(就先这样简单理解吧)   c 编写软件 keil uVision 4 (我仅用它编译生成hex 文件)         notpad++ (我用它写c51的代码,然
[单片机]
<font color='red'>51单片机</font>学习之陆 —— 1.2 第一个c51程序(点亮流水灯)
基于MCS51单片机的大屏幕LED显示屏高速控制方案
摘要:以MCS51系列单片机为例,介绍单片机对大屏幕LED显示屏的一种高速控制方案。单片机对LED显示屏的显示控制,一般是先从数据存储器读取数据,然后将数据写给LED点阵片。本方案的创新点是:用一条对外部数据存储器的读指令,同时完成对外部数据存储器读和对LED点阵片的写操作。本文详细介绍高速控制方案的电路设计,并简要提示软件编制的要点;最后介绍高速控制方案在大屏幕LED显示屏中的应用。 引言   LED显示屏的基本工作原理是动态扫描。显示控制的过程是先从数据存储器读得字模数据,再通过单片机的串行口或并行口将数据写给LED点阵片,然后再行扫描。   动态扫描方案和静态显示方案相比节省驱动元件,但要求刷新频率高于50 Hz,以避
[单片机]
基于MCS<font color='red'>51单片机</font>的大屏幕LED显示屏高速控制方案
C51单片机P4口使用
C51单片机(STC11L32/48XE)的P4可以像其他IO可以作为正常的IO来使用。 如图:
[单片机]
[51单片机学习笔记THREE]----继电器
继电器是一种电控制器件,它是当输入量(如电压,电流,温度等)达到规定值时,使得被控量发生阶跃性变化的一种电器。 比如说:我们只需要用一个12V,0.1A的参数量去控制一个继电器,然后让继电器去充当几百万伏特,几百万安培的设备的开关。 无论在什么地方,如果想让控制者处于安全的环境中,就可以用继电器。让我们去接触安全的一边,让继电器去接触危险的一边,我们只要控制继电器的动作,继电器就会帮助我们连接我们不想亲自去碰的一些线路。 继电器的分类千千万,这里就不多说了。 最近因为好像没什么地方要用到,这里先给出最基本的通过按键来控制继电器开关的程序源码,以后若有其他用处,到时候再说。 1 /**************
[单片机]
AT89C51单片机实现全自动洗衣机功能的设计方案
51单片机洗衣机控制板及C语言程序,该控制板单片机采用AT89C51单片机,所设计全自动洗衣机功能有:标准洗衣、经济洗衣、单独洗衣以及排水四种洗衣等四种方式,有强洗、弱洗及运行/暂停、显示及报警功能,程序利用利用Protues仿真软件观察洗衣机的运行状态和过程。整个设计能达到预想的设计效果。 #include ‘reg51.h’ #define uchar unsigned char #define uint unsigned int #define Enable(); EA=1; #define Disable(); EA=0; #define BIAOZHUN 0 #define JINGJI 1 #define DAND
[单片机]
AT89C<font color='red'>51单片机</font>实现全自动洗衣机功能的<font color='red'>设计</font>方案
基于C8051单片机和FPGA实现导纳测量仪的系统设计
虚拟仪器的广泛应用,使得用户可以根据需求,设计自己的仪器系统。无源网络导纳测量仪即是虚拟仪器设计思想的一种具体运用,旨在实现对端口网络的导纳进行自动测量。测量仪是以C8051单片机为控制和处理核心,采用可编程逻辑器件EPF10K10,根据DDS原理产生信号源,将信号源连接到待测的网络上,对网络两端的电压和电流进行差分放大,使其输出电压尽可能达到ADC的最大输入电压,然后进行A/D采样,采样时,频率随信号频率而改变,一个周期内固定采32个点,用单片机的P1、P2直接接收数据,边采样边接收。对采样所得的电流、电压数据进行快速傅立叶变换(FFT),并分别求出其模值和相位,则导纳的模值为电流模值与电压模值之比,相位为电流与电压的相位之差。
[单片机]
基于C80<font color='red'>51单片机</font>和FPGA实现导纳测量仪的系统<font color='red'>设计</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(2)
    天是星期天,刚好在家里休息。又是学习ARM的大好时机了。早上起得很早,因为都想着怎么样搞好这个ARM开发环境,总是心急的。搞得睡觉,也睡 ...
  • 学习ARM开发(4)
    已经把CPU大体架构学会了,当然我之前已经学习过80X86的结构,所以对于像RISC的计算机,也能想像到它是什么样的东西。如果没有学习过《微机 ...
  • 学习ARM开发(6)
    上一次,说到要学习ARM汇编,好,现在就开始。目前我的引导程序是在UBOOT1 1 2上修改过来的,大家可以下载UBOOT的源程序,也许你们会问在那 ...
  • 学习ARM开发(7)
    上一次,学习到第一段代码,这次接着学习第二段代码,而第二段代码主要作用于保存数据的。 ********************************************* ...
  • 学习ARM开发(8)
    上一次看了数据区,这次要看从引导那里跳到这里执行时,运行什么东西了。 ** 实际运行的复位代码。从一开始运行的代码,就跳到这里运行。* ...
  • 学习ARM开发(9)
  • 学习ARM开发(10)
  • 学习ARM开发(11)
  • 学习ARM开发(5)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved