51单片机系列知识16--HD7279(2)
来源:互联网 发布:黑帽seo免杀jsp大马 编辑:程序博客网 时间:2024/06/05 08:09
控制指令
HD7279的控制指令分为二大类——纯指令和带有数据的指令。
·纯指令
1、复位(清除)指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
0
0
1
0
0
当HD7279收到该指令后,将所有的显示清除,所有设置的字符消隐、闪烁等属性也被一起清除。执行该指令后,芯片所处的状态与系统上电后所处的状态一样。
2、测试指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
1
1
1
1
1
该指令使所有的LED全部点亮,并处于闪烁状态,主要用于测试。
3、左移指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
0
0
0
0
1
使所有的显示自右向左(从第1位向第8位)移动一位(包括处于消隐状态的显示位),但对各位所设置的消隐及闪烁属性不变。移动后,最右边一位为空(无显示)。例如,原显示为
4
2
5
2
L
P
3
9
其中第2位‘3’和第4位‘L’为闪烁显示,执行了左移指令后,显示变为
2
5
2
L
P
3
9
第二位‘9’和第四位‘P’为闪烁显示。
4、右移指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
0
0
0
0
0
与左移指令类似,但所做移动为自左向右(从第8位向第1位)移动,移动后,最左边一位为空。
5、循环左移指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
0
0
0
1
1
与左移指令类似,不同之处在于移动后原最左边一位(第8位)的内容显示于最右位(第1位)。在上例中,执行完循环左移指令后的显示为
2
5
2
L
P
3
9
4
第二位‘9’和第四位‘P’为闪烁显示。
6、循环右移指令
D7
D6
D5
D4
D3
D2
D1
D0
1
0
1
0
0
0
1
0
与循环左移指令类似,但移动方向相反。
·带有数据的指令
1、下载数据且按方式0译码
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
0
0
a2
a1
a0
DP
X
X
X
d3
d2
d1
d0
X=无影响
命令由二个字节组成,前半部分为指令,其中a2 ,a1,a0为位地址,具体分配如下:
a2
a1
a0
显示位
0
0
0
1
0
0
1
2
0
1
0
3
0
1
1
4
1
0
0
5
1
0
1
6
1
1
0
7
1
1
1
8
d0—d3为数据,收到此指令时,HD7279(A)按以下规则(译码方式0)进行译码,如下表:
十六进制
d3
d2
d1
d0
7段显示
00H
0
0
0
0
0
01H
0
0
0
1
1
02H
0
0
1
0
2
03H
0
0
1
1
3
04H
0
1
0
0
4
05H
0
1
0
1
5
06H
0
1
1
0
6
07H
0
1
1
1
7
08H
1
0
0
0
8
09H
1
0
0
1
9
0AH
1
0
1
0
-
0BH
1
0
1
1
E
0CH
1
1
0
0
H
0DH
1
1
0
1
L
0EH
1
1
1
0
P
0FH
1
1
1
1
空(无显示)
小数点的显示由DP位控制,DP=1时,小数点显示,DP=0时,小数点不显示。
2、下载数据且按方式1译码(仅对HD7279A有效)
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
1
0
0
1
a2
a1
a0
DP
X
X
X
d3
d2
d1
d0
X=无影响
此指令与上一条指令基本相同,所不同的是译码方式,且只有HD7279A才具有此指令。该指令的译码按下表进行:
十六进制
d3
d2
d1
d0
7段显示
00H
0
0
0
0
0
01H
0
0
0
1
1
02H
0
0
1
0
2
03H
0
0
1
1
3
04H
0
1
0
0
4
05H
0
1
0
1
5
06H
0
1
1
0
6
07H
0
1
1
1
7
08H
1
0
0
0
8
09H
1
0
0
1
9
0AH
1
0
1
0
A
0BH
1
0
1
1
b
0CH
1
1
0
0
C
0DH
1
1
0
1
d
0EH
1
1
1
0
E
0FH
1
1
1
1
F
3、下载数据但不译码
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
1
0
a2
a1
a0
DP
A
B
C
D
E
F
G
其中,a2 ,a1,a0为位地址(参见‘下载数据且译码’指令),A-G和DP为显示数据,分别对应7段LED数码管的各段。
4、闪烁控制
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
0
1
0
0
0
d8
d7
d6
d5
d4
d3
d2
d1
此命令控制各个数码管的闪烁属性。d1- d8分别对应数码管1-8,0=闪烁,1=不闪烁。开机后,缺省的状态为各位均不闪烁。
5、消隐控制
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
1
1
0
0
0
d8
d7
d6
d5
d4
d3
d2
d1
此命令控制各个数码管的消隐属性。d1- d8分别对应数码管1-8,1=显示,0=消隐。当某一位被赋予了消隐属性后,HD7279在扫描时将跳过该位,因此在这种情况下无论对该位写入何值,均不会被显示,但写入的值将被保留,在将该位重新设为显示状态后,最后一次写入的数据将被显示出来。当无需用到全部8个数码管显示的时候,将不用的位设为消隐属性,可以提高显示的亮度。
注意:至少应有一位保持显示状态,如果消隐控制指令中d1- d8全部为0,该指令将不被接受,HD7279保持原来的消隐状态不变。
6、段点亮指令
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
1
1
0
0
0
0
0
X
X
d5
d4
d3
d2
d1
d0
此为段寻址指令,作用为点亮数码管中某一指定的段,或LED矩阵中某一指定的LED。
指令中,X=无影响;d0- d5为段地址,范围从00H—3FH,具体分配为:
第1个数码管的G段地址为00H,F段为01H,……A段为06H,小数点DP为07H,第2个数码管的G段为08H,F段为09H,……,依此类推直至第8个数码管的小数点DP地址为3FH。
7、段关闭指令
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
1
1
0
0
0
0
0
0
X
X
d5
d4
d3
d2
d1
d0
段寻址命令,作用为关闭(熄灭)数码管中的某一段,指令结构与‘段点亮指令’相同,请参阅上文。
8、读键盘数据指令
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
1
0
1
0
1
d7
d6
d5
d4
d3
d2
d1
d0
该指令从HD7279读出当前的按键代码。与其它指令不同,此命令的前一个字节00010101B为微控制器传送到HD7279的指令,而后一个字节d0- d7则为HD7279返回的按键代码,其范围是0-3FH(无键按下时为0xFF)。
此指令的前半段,HD7279的DATA引脚处于高阻输入状态,以接受来自微处理器的指令;在指令的后半段,DATA引脚从输入状态转为输出状态,输出键盘代码的值。故微处理器连接到DATA引脚的I/O口应有一从输出态到输入态的转换过程,详情请参阅本文‘串行接口’一节的内容。
当HD7279检测到有效的按键时,KEY引脚从高电平变为低电平,并一直保持到按键结束。在此期间,如果HD7279接收到‘读键盘数据指令’,则输出当前按键的键盘代码;如果在收到‘读键盘指令’时没有有效按键,HD7279将输出FFH (11111111B)。
By:霜月孤鸟
2016.3.7
- 51单片机系列知识16--HD7279(2)
- 51单片机系列知识15--HD7279(1)
- 51单片机系列知识17--HD7279(3)
- 51单片机系列知识5--并口(2)
- 51单片机系列知识2--存储器(1)
- 51单片机系列知识3--存储器(2)
- 51单片机系列知识7--中断系统(2)
- 51单片机系列知识9--定时器、计数器(2)
- 51单片机系列知识11--串行通信(2)
- 51单片机系列知识14--1206LCD(2)
- 51单片机系列知识4--并口(1)
- 51单片机系列知识1--单片机的内外结构
- 51单片机系列知识6--中断系统(1)
- 51单片机系列知识8--定时器、计数器(1)
- 51单片机系列知识10--串行通信(1)
- 51单片机系列知识12--串行通信(3)
- 51单片机系列知识13--1206LCD(1)
- 单片机小知识系列-2-stc单片机不能下载程序问题原因总结
- 在MAC下配置React-Native开发环境
- 单例模式,工厂模式和抽象工厂模式
- SSH框架功能介绍
- tracking_KCF
- Python wsgiref 模块源码浅析
- 51单片机系列知识16--HD7279(2)
- my.cnf配置详解
- ZOJ3329
- iOS开发之使用lipo命令制作模拟器与真机通用静态库
- Mybatis入门(二):以接口的方式编程
- 4. PSR-4 --- 自动加载
- OutputStreamWriter, PrintWriter, BufferedWriter, FileWrite, PrintStream
- oracle exp imp 高低版本问题
- HBase源码分析之compact请求发起时机、判断条件等详情(一)