当前位置:首页 > 编程技术 > 正文

单片机如何编写数码管程序vc

单片机如何编写数码管程序vc

单片机编程通常使用C语言,而数码管的编程涉及到单片机的I/O端口控制。以下是一个使用C语言编写数码管显示程序的示例,以8051单片机为例。你需要了解数码管的类型(共阴极...

单片机编程通常使用C语言,而数码管的编程涉及到单片机的I/O端口控制。以下是一个使用C语言编写数码管显示程序的示例,以8051单片机为例。

你需要了解数码管的类型(共阴极或共阳极),并确定你将使用哪些I/O端口来控制数码管的段(segment)和位(digit)。

1. 定义数码管段对应的I/O端口

```c

define SEG_A P1_0

define SEG_B P1_1

define SEG_C P1_2

define SEG_D P1_3

define SEG_E P1_4

define SEG_F P1_5

define SEG_G P1_6

define SEG_DP P1_7

define DIGIT0 P2_0

define DIGIT1 P2_1

define DIGIT2 P2_2

define DIGIT3 P2_3

```

2. 定义数码管编码

共阴极数码管的编码如下(假设0是最低位):

```

-a

f-g b

-e

-c

-d

-.

```

数字0到9的段编码:

```

0: 0b00111111

1: 0b00000110

2: 0b01011011

3: 0b01001111

4: 0b01100110

5: 0b01101101

6: 0b01111101

7: 0b00000111

8: 0b01111111

9: 0b01101111

```

共阳极数码管的编码则相反。

```c

unsigned char code digit_code[10] = {

0x3F, // 0

0x06, // 1

0x5B, // 2

0x4F, // 3

0x66, // 4

0x6D, // 5

0x7D, // 6

0x07, // 7

0x7F, // 8

0x6F // 9

最新文章