请问使用MAX7219驱动数码管如何使中间加上“—”就是横杠,也就是让G段亮,我看说明它是使用BCD译码器。

2024-12-17 03:34:00
推荐回答(3个)
回答1:

1.不管是否是BCD译码,最高位就小数点,如果要显示 可以把显示的数据与上0X80,在送出(置高位1)
2.在BCD译码下 ,数据发送 0XXA就是 横杠(高四位不用管哈)。

回答2:

在BCD译码状态,两位16进制数对应字符如下:
00H 0
01H 1
02H 2
03H 3
04H 4
05H 5
06H 6
07H 7
08H 8
09H 9
0AH -
0BH E
0CH H
0DH L
0EH P
0FH 黑屏
至于你说的DP,在BCD译码态,如下显示:
X0H 0.
X1H 1.
X2H 2.
X3H 3.
X4H 4.
X5H 5.
X6H 6.
X7H 7.
X8H 8.
X9H 9.
XAH -.
XBH E.
XCH H.
XDH L.
XEH P.
XFH 黑屏.
X可为8,9,A,B,C,D,E,F等数
在非BCD译码态输入,高四位为8,9,A,B,C,D,E,F等数
显示“.”
低四位为正常数码管字型码。

回答3:

void Init7219()
{ send7219(0xfc,0x01);//关断模式寄存器
send7219(0xfb,0x06);//扫描限制寄存器
send7219(0xfa,0xfa);//亮度调节寄存器
send7219(0xf9,0xff);//译码模式寄存器

}//如果这样初始化的话,下面一条语句就可以显示‘-’,小数点那个我记忆模糊了,好像在译码模
//式那里修改。你试试。
send7219(0x83,0x0a);