硬件:
数码管10个引脚,8个控制二极管亮、灭,2个引脚为负极。1k欧电阻链接负极,接gnd。
将8个二极管引脚依次链接0-7号引脚。
|
|
|
软件:
/*共阳极单数码管显示:0~9,间隔1s依次显示*/
/*
8位数码管轮播显示:0-F
by:zhiheng
created:2022-02-02
接线方法:
5161BS vcc 接 1k欧姆电阻 与 Arduino Uno 5V串联
5161BS A# 接 Arduino Uno 0#
5161BS B# 接 Arduino Uno 1#
5161BS C# 接 Arduino Uno 2#
5161BS D# 接 Arduino Uno 3#
5161BS E# 接 Arduino Uno 4#
5161BS F# 接 Arduino Uno 5#
5161BS G# 接 Arduino Uno 6#
5161BS DP# 接 Arduino Uno 7#
程序设计:
使用二维数组,装入引脚高电平输出。
使用嵌套循环,循环digitalWrite引脚与高电平参数
*/
//定义显示内容,1为显示,0为熄灭。
int zu[16][8] = {
{0, 0, 0, 0, 0, 0, 1, 1}, // 0
{1, 0, 0, 1, 1, 1, 1, 1}, // 1
{0, 0, 1, 0, 0, 1, 0, 1}, // 2
{0, 0, 0, 0, 1, 1, 0, 1}, // 3
{1, 0, 0, 1, 1, 0, 0, 1}, // 4
{0, 1, 0, 0, 1, 0, 0, 1}, // 5
{0, 1, 0, 0, 0, 0, 0, 1}, // 6
{0, 0, 0, 1, 1, 1, 1, 1}, // 7
{0, 0, 0, 0, 0, 0, 0, 1}, // 8
{0, 0, 0, 0, 1, 0, 0, 1}, // 9
/*{0, 0, 0, 1, 0, 0, 0, 1}, //A
{0, 0, 0, 0, 0, 0, 0, 0}, //B
{0, 1, 1, 0, 0, 0, 1, 1}, //C
{0, 0, 0, 0, 0, 0, 1, 0}, //D
{0, 1, 1, 0, 0, 0, 0, 1}, //E
{0, 1, 1, 1, 0, 0, 0, 1}, //F
*/
};
void setup()
{
// put your setup code here, to run once:
//使用循环声明8个引脚均为输出
for (int i = 0; i <= 7; i++)
{
pinMode(i, OUTPUT); //使用循环设定引脚为输出;
}
}
//循环数组内容
void loop()
{
// put your main code here, to run repeatedly:
for (int arr = 0; arr <= 10; arr++)
{
for (int i = 0; i <= 7; i++)
{
digitalWrite(i, zu[arr][i]);
}
delay(1000);
}
}
版权声明:本文为CSDN博主「悠闲的日子」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/idleAsaPig/article/details/122813138
暂无评论