实验三 数码管显示实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十九数码管显示实验

一、实验目的

1、了解数码管的显示原理;

2、掌握数码管显示的编程方法。

二、实验内容

1、编写数码管显示程序,循环显示0-F字符

三、实验设备

1、硬件:

JX44B0实验板;

PC机;

JTAG仿真器;

2、软件:

PC机操作系统(WINDOWS 2000);

ARM Developer Suite v1.2;

Multi-ICE V2.2.5(Build1319);

四、基础知识

1、掌握在ADS集成开发环境中编写和调试程序的基本过程。

2、了解ARM 应用程序的框架结构;

3、了解数码管的显示原理;

五、实验说明

1、LED显示原理

发光二极管数码显示器简称LED显示器。LED显示器具有耗电低、成本低、配置简单灵活、安装方便、耐震动、寿命长等优点,目前广泛应用于各类电子设备之中。

7段LED由7个发光二极管按“日”字排列。所有发光二极管的阳极连接在一起称共阳极接法,阴极连接在一起称为共阴极接法。一般共阴极可以不需要外接电阻。

其中各二极管的排列如上图在共阳极接法中,如果显示数字“5”,需要在a、c、d、f、g端加上高电压,其它加低电压。这样如果按照dp、g、fe、d、c、b、a的顺序排列的话对应的码段是:6DH。其它的字符同理可以得到。

2、数码管显示驱动

数码管的显示一般有动态显示和静态显示两大类,另外按照驱动方式又分串行驱动和并行驱动两种方式。串行驱动主要是提供串-并转换,减少控制线数量;并行驱动对每一个段提供单独的驱动,电路相对简单。这方面参看数字电路相关内容。

下面主要介绍静态显示和动态显示:

1)静态显示:

LED数码管采用静态接口时,共阴极或共阳极节点连接在一起地或者接高电平。每个显示位的段选线与一个8位并行口线相连,只要在显示位上的段选位保持段码电平不变,则该位就能保持相应的显示字符。这里的8位并行口可以直接采用并行I/O口,也可以采用串行驱动。相应的电路如下:

很明显采用静态显示方式要求有较多的控制端(并行)或较复杂的电路(串行)。但是在设计中对器件的要求低。

2)动态显示

在多位LED显示时,为了简化电路、节省端口(在很多系统中I/O端口资源非常宝贵),

将所有的段选线冰凉在仪器由一个8位I/O口控制。而共阴极(或共阳极)分别由相应的I/O 口控制,实现各位的分时选通。由于各个数码管共用一个段码输出口,分时轮流通电,从而大大简化了硬件线路。降低了成本。

但是这种方式的数码管接口电路中数码管不宜太多,一般应控制在8个以内。否则会因为每个数码管发光时间太短而导致亮度低。若LED位数较多,应采用增加驱动能力的方式提高显示亮度。

典型电路如下:

JX44B0采用的是动态接口办法,数码管采用共阳方式,向该地址写一个数据就可以控制LED的显示,其原理图如下图所示。

JX44B0采用两片74HC273,一片实现片选功能,输出连在六块数码管的共阳极,另一片控制数码管的亮灭。控制寄存器分别为:(均为低电平有效)

数码管扫描控制地址为0x02000006,8位访问

Bit0 –控制数码管0 –低电平有效

Bit1 –控制数码管1 –低电平有效

Bit2 –控制数码管2 –低电平有效

Bit3 –控制数码管3 –低电平有效

Bit4 –控制数码管4 –低电平有效

Bit5 –控制数码管5 –低电平有效

地址0x02000004为数码管的数据寄存器,控制数码管的段码输出。

3、程序解析

制作LED字符与码段对应表

unsigned char seg7table[16] = {

/* 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 };

扫描控制

*((U8*) 0x02000006) = 0x3E; /* 使能第一个数码管*/ 段码输出

*((U8*) 0x02000004) = seg7table[0]; /* 输出数据0 */

六、实验步骤

1、仔细阅读实验说明部分,熟悉LED的原理及驱动机制;

2、直接用ADS打开已有的工程文件,或者按照实验一中的方法重新建立工程(当函数无法通过右键跳转的时候,就必须重新建立工程,把所需文件放在一个文件夹下)

3、在DebugRel目录下编译源文件。(详见实验一),分析并熟悉程序。

4、将PC机、仿真器和实验板连接并打开“Multi-ICE Server”和“AXD Debugger”对CPU进行初始化,导入“example\leddemo\leddemo_Data\DebugRel”中“leddemo.axf”文件。

5、调试运行程序观察程序运行。自行修改程序观察各变量、寄存器等的作用。

相关文档
最新文档