单片机试验8X8 LED点阵显示技术

发布者:风清扬yx最新更新时间:2013-04-02 来源: 51hei关键字:单片机  LED点阵  显示技术 手机看文章 扫描二维码
随时随地手机看文章

1 实验任务

在8X8 LED点阵上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。

2 电路原理图

点击浏览下一页

图4.24.1

3 硬件电路连线

(1) 把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上;

(2) 把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上;

4 程序设计内容

(1) 8X8 点阵LED工作原理说明

8X8点阵LED结构如下图所示

点击浏览下一页

  

从图4.24.2中可以看出,8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:

一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。[page]

5 汇编源程序

                  ORG 00H

START:      NOP

                  MOV R3,#3

LOP2:        MOV R4,#8

                  MOV R2,#0

LOP1:        MOV P1,#0FFH

                  MOV DPTR,#TABA

                  MOV A,R2

                  MOVC A,@A+DPTR

                  MOV P3,A

                  INC R2

                  LCALL DELAY

                  DJNZ R4,LOP1

                  DJNZ R3,LOP2

                  MOV R3,#3

LOP4:        MOV R4,#8

                  MOV R2,#7

LOP3:        MOV P1,#0FFH

                  MOV DPTR,#TABA

                  MOV A,R2

                  MOVC A,@A+DPTR

                  MOV P3,A

                  DEC R2

                  LCALL DELAY

                  DJNZ R4,LOP3

                  DJNZ R3,LOP4

                  MOV R3,#3

LOP6:        MOV R4,#8

                  MOV R2,#0

LOP5:        MOV P3,#00H

                  MOV DPTR,#TABB

                  MOV A,R2

                  MOVC A,@A+DPTR

                   MOV P1,A

                  INC R2

                  LCALL DELAY

                  DJNZ R4,LOP5

                  DJNZ R3,LOP6

                  MOV R3,#3

LOP8:        MOV R4,#8

                  MOV R2,#7

LOP7:        MOV P3,#00H

                  MOV DPTR,#TABB

                  MOV A,R2

                  MOVC A,@A+DPTR

                  MOV P1,A

                  DEC R2

                  LCALL DELAY

                  DJNZ R4,LOP7

                  DJNZ R3,LOP8

                  LJMP START

DELAY:     MOV R5,#10

D2:            MOV R6,#20

D1:            MOV R7,#248

                  DJNZ R7,$

                  DJNZ R6,D1

                  DJNZ R5,D2

                  RET

TABA:       DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH

TABB:       DB 01H,02H,04H,08H,10H,20H,40H,80H

                  END [page]

6  C语言源程序

#include  

unsigned char code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

unsigned char code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

void delay(void)

{

  unsigned char i,j;

  for(i=10;i>0;i--)

  for(j=248;j>0;j--);

}

void delay1(void)

{

  unsigned char i,j,k;

  for(k=10;k>0;k--)

  for(i=20;i>0;i--)

  for(j=248;j>0;j--);

}

void main(void)

{

  unsigned char i,j;

  while(1)

    {

      for(j=0;j<3;j++)  //from left to right 3 time

        {

          for(i=0;i<8;i++)

            {

              P3=taba[i];

              P1=0xff;

              delay1();

            }

        }

      for(j=0;j<3;j++)  //from right to left 3 time

        {

          for(i=0;i<8;i++)

            {

              P3=taba[7-i];

              P1=0xff;

              delay1();

            }

        }

      for(j=0;j<3;j++)  //from top to bottom 3 time

        {

          for(i=0;i<8;i++)

            {

              P3=0x00;

              P1=tabb[7-i];

              delay1();

            }

        }

      for(j=0;j<3;j++)  //from bottom to top 3 time

        {

          for(i=0;i<8;i++)

            {

              P3=0x00;

              P1=tabb[i];

              delay1();

            }

        }

    }

}

关键字:单片机  LED点阵  显示技术 引用地址:单片机试验8X8 LED点阵显示技术

上一篇:单片机“叮咚”门铃设计
下一篇:51单片机的时钟及复位

推荐阅读最新更新时间:2024-03-16 13:21

TI推出最新款Stellaris微控制器机器人评估平台 EVALBOT
   德州仪器 (TI) 宣布推出其最新款 Stellaris 微控制器 (MCU) 机器人评估平台 (EVALBOT),从而使开发人员拥有了更多的软件和工具开发选项。这款隶属于 TI 嵌入式处理产品组合的新型迷你机器人平台为开发人员提供了从众多软件工具链进行选择的灵活性,这样他们就能够在其偏爱的开发环境中全面使用 Stellaris Cortex-M3 MCU 的功能。该升级版 Stellaris EVALBOT 还预先装入了 StellarisWare® 应用程序,而且该套件如今在源代码中包含了更多的工程实例,其中包括一块演示板,可使开发人员更加轻松地利用支持 TI 无线评估模块的该套件的扩展端口进行实验。借助 EVALBO
[工业控制]
单片机串口通信子程序
说明:晶振11.0592MHZ,由定时器1(T1)产生9600的波特率,串口中断工作方式1 #include math.h #define uchar unsigned char #define uint unsigned int uchar ge; sbit bin=P3^7; uchar flag; void init_com() { TMOD=0x20; //T1工作方式2 PCON=0x00; //波特率不倍增 SCON=0x50; // 串口工作方式1 TH1=0xfd; //给定时器1赋初值 TL1=0xfd; TR1=1; //启动
[单片机]
基于STC89C58单片机LED点阵书写显示屏的解决方案
0 引言 近年来,点阵LED显示屏利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,已成为众多显示媒体以及户外作业显示的电子工具,广泛地应用于车站、宾馆、金融、证券、邮电、体育等广告发布或交通运输等行业。目前LED显示屏的设计已经有多种方法可以实现,本设计是基于STC89C58单片机利用自制的光笔中红外光电三极管检测光笔触及位置处红色LED灯的点亮,计算出光笔位置的行列坐标,并根据按键设置的不同工作模式控制LED显示,从而实现点亮、划亮、反显、清屏、笔画拖动、轮流显示等功能。 1 系统设计方案 用双色LED点阵(红色和绿色)模块组合成32×3
[单片机]
基于STC89C58<font color='red'>单片机</font><font color='red'>LED点阵</font>书写显示屏的解决方案
89C51单片机定时/计数器、P1口编程举例
在89C51单片机的P1.0端口上接有一个发光二极管,P1.0输出低电平时发光二极管点亮,输出高电平时熄灭。P1.7接有一个开关,开关闭合时,P1.7为低电平,断开时为高电平。请设计一个控制程序,当开关闭合时,发光二极管每秒钟闪烁一次,当开关断开时,发光二极管每秒钟闪烁两次。已知系统使用12MHz的晶体。 LED BIT P1.0 ;发光二极管控制信号输出端口 KEY BIT P1.7 ;开关状态检测端口 CLOK EQU 20H ;时钟单元(单位:1/16秒) SEC BIT CLOK.3 ;秒闪烁控制位 DSEC BIT CLOK.2 ;半秒闪烁控制位 ORG 0000H LJMP MAIN ;至主程序 ORG
[单片机]
瑞萨电子将展示首颗基于Cortex M85内核的RA系列MCU
瑞萨电子日期宣布,它将与6月纽伦堡Embedded World 2022上现场演示基于Arm Cortex-M85内核的微控制器 (MCU)。 瑞萨电子于 2019 年 10 月推出了基于 Arm Cortex-M 的 RA(瑞萨高级)系列 MCU,凭借强大且功能丰富的基于闪存的 MCU 系列进入通用 Arm-Cortex-M 市场。在大约 30 个月的时间里,瑞萨电子迅速占据了领导地位,推出了 17 个 MCU 系列,超过 200 个产品。此外,瑞萨电子还开发了一个强大的合作伙伴生态系统,为客户提供物联网、人工智能/机器学习、工业自动化、医疗、楼宇自动化、家用电器和其他多种应用的综合解决方案。 “作为 Arm 的主要合作
[单片机]
基于AT89C51单片机的双向通信FSK系统设计与实现
采用抗干扰能力比较强的FSK技术构成感应通信系统,利用耦合线圈来实现钻杆之间的无线通信,钻杆内部采用同轴电缆传输信息,这样可以获得较高的数据比特率。本文以AT89C51单片机为控制系统,设计了一套可以实现双向通信的FSK系统,并测试了该系统的可靠性以及误码率。 石油、天然气是人类赖以生存的自然资源,在钻井开采过程中需要对井下高温、高压的环境进行实时的了解,所以对信号传输的实时性要求很高。但是井下的环境恶劣,通信系统里存在各种干扰,所以设计一套既能抗干扰、又能以较快的波特率传输信号的系统对这类作业来说至关重要。本文以AT89C51单片机为控制器,XR2206和XR22111分别为FSK调制解调芯片,在实验室搭建并模拟了整个通信过
[单片机]
基于AT89C51<font color='red'>单片机</font>的双向通信FSK系统设计与实现
单片机开发中多功能按键详细解析设计
引言:在很多项目开发过程中我们通常会涉及到按键的使用,为了使按键的功能更多远化我们通常会区别按键的单击、双击、长按等操作过程从而实现更多的功能。现在让我们来分析一下他们的实现原理和过程。 一、原理解析(注意i:这里我们的硬件设计为当按键按下为低电平,如硬件设计不一致反过来即可,原理是相同的) 首先我们来看一下单击、双击、长按电平时序图 从三种时序图我们可以看出三种操作方式的区别就在于当按键按下后低电平和高电平的时间,通过判断高低电平的变化时间就可以把这三种方式区别开。 单击、和长按的区别: 单击和双击时序图非常的相似,最大的区别就是按键按下后低电平的持续时间,这里我们对比单击和长按的时序图,可知长按的低电平时间
[单片机]
<font color='red'>单片机</font>开发中多功能按键详细解析设计
芯原业界领先的嵌入式GPU IP赋能先楫高性能的HPM6800系列RISC-V MCU
先楫新一代的仪表显示产品具有高画质、低功耗等特点 2024年3月4日,中国上海—— 芯原股份今日宣布先楫半导体(简称“先楫”)的HPM6800系列新一代数字仪表显示及人机界面系统应用平台采用了芯原的高性能2.5D图形处理器(GPU)IP。 HPM6800系列产品基于RISC-V CPU内核,具备高算力、低功耗、高集成度和出色的多媒体功能,适用于汽车仪表、人机交互界面(HMI),以及电子后视镜(CMS)等需要复杂图形处理、高分辨率显示和高性能多媒体用户界面的应用。 芯原支持OpenVG的2.5D GPU IP能够为MCU/MPU设备提供高能效的图形处理和优质的图像输出,同时显著降低CPU负载。 凭借成熟的可扩展性,该GP
[嵌入式]
芯原业界领先的嵌入式GPU IP赋能先楫高性能的HPM6800系列RISC-V <font color='red'>MCU</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

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

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