51单片机篮球计分器共阴数码管
时间: 2023-08-31 15:09:08 浏览: 124
篮球计分器 51单片机
51单片机篮球计分器的共阴数码管可以使用以下代码进行控制:
```
#include <reg52.h>
unsigned char code LedChar[] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90}; //共阴数码管编码表
void main()
{
unsigned char score = 0; //得分变量,初始化为0
unsigned char display = 0; //数码管显示变量,初始化为0
while(1)
{
if(P1_0 == 0) //检测按键1是否按下
{
score++; //得分加1
display = LedChar[score % 10]; //对得分取模,获取个位数码管的编码
P2 = display; //将编码输出到数码管
while(P1_0 == 0); //等待按键1松开
}
if(P1_1 == 0) //检测按键2是否按下
{
score--; //得分减1
display = LedChar[score % 10]; //对得分取模,获取个位数码管的编码
P2 = display; //将编码输出到数码管
while(P1_1 == 0); //等待按键2松开
}
}
}
```
在上述代码中,我们使用了一个数组 `LedChar` 来存储共阴数码管的编码表,其中每一个元素对应一个数字的编码,例如 `0xC0` 对应数字0的编码。在主函数中,我们使用两个按键来分别对得分进行加减,每次修改得分后,我们使用取模运算获取得分的个位数,并从 `LedChar` 数组中获取对应的编码,最后将编码输出到数码管中显示。
阅读全文