Arduino实验之两位数码管实验报告

第一种方案 从1-12引脚分别如图所示这样接

下面五个脚从左到右分别是1 2 3 4 5,上面六个脚从右到左分别是7 8 9 10 11 12,13是LED灯

实现方案一:将数码管从1变成99 两位数字相同时会使得LED灯亮

#define open(num) digitalWrite(num,LOW)
#define close(num) digitalWrite(num,HIGH)
int e=1;
int d=2;
int dp=3;
int c=4;
int g=5;
int b=7;
int BT3=8;
int BT2=9;
int f=10;
int a=11;
int BT1=12;
int LED=13;///LED变成高电平时会亮
void digital_1()
{
	open(b);
	open(c);
	delay(10);
}
void digital_2()
{
	open(a);
	open(b);
	open(g);
	open(e);
	open(d);
	delay(10);
}
void digital_3()
{
	open(a);
	open(b);
	open(g);
	open(c);
	open(d);
	delay(10);
}
void digital_4()
{
	open(b);
	open(f);
	open(g);
	open(c);
	delay(10);
}
void digital_5()
{
	open(a);
	open(f);
	open(g);
	open(c);
	open(d);
	delay(10);
}
void digital_6()
{
	open(a);
	open(f);
	open(g);
	open(e);
	open(c);
	open(d);
	delay(10);
}
void digital_7()
{
	open(a);
	open(b);
	open(c);
	delay(10);
}
void digital_8()
{
	open(a);
	open(f);
	open(g);
	open(e);
	open(c);
	open(d);
	open(b);
	delay(10);
}
void digital_9()
{
	open(a);
	open(f);
	open(g);
	open(c);
	open(d);
	open(b);
	delay(10);
}
void digital_0()
{
	open(a);
	open(f);
	open(e);
	open(c);
	open(d);
	open(b);
	delay(10);
}
void setup()
{
	unsigned char i;
	for(
Proteus是一款广泛用于电子设计的软件平台,它支持Arduino的模拟,包括硬件连接、程序调试以及实时仿真。如果你想通过Arduino的按键控制两个数码管显示数字的加减操作,可以按照以下步骤进行: 1. **硬件准备**: - 连接Arduino到 Proteus:将Arduino Uno或类似板子连接到 Proteus虚拟平台的模拟设备模块。 - 按键模块:连接至少两个按键到Arduino的数字输入端口,分别对应加法和减法操作。 - 数码管:使用共阴极或共阳极数码管,并将其数据线接到Arduino的IO口,公共端接地。 2. **编写Arduino代码**: - 使用C语言编写 Arduino Sketch,例如: ```cpp void setup() { pinMode(BUTTON_ADD, INPUT_PULLUP); // 对应加法按键,配置为上拉模式 pinMode(BUTTON_SUB, INPUT_PULLUP); // 对应减法按键 display.init(); // 初始化数码管函数 } void loop() { if (digitalRead(BUTTON_ADD) == LOW) { // 当加法按键按下 updateDisplay('+', 1); // 更新数码管显示加号并递增数值 } else if (digitalRead(BUTTON_SUB) == LOW) { // 减法按键按下 updateDisplay('-', 1); // 更新数码管显示减号并递减数值 } delay(100); // 适当延时防止频繁触发 } void updateDisplay(char sign, int amount) { display.display(sign, num++ * amount); // 显示字符和更新数值 } ``` 其中`display`是一个假设存在的类或函数,你需要自定义它来控制数码管显示。 3. **Proteus仿真**: - 在 Proteus环境中,你可以设置各个信号线的状态,模拟按钮被按下,并观察数码管如何响应加减操作。 - 确保在代码中适当地设置了初始值,并检查数码管显示是否正常变化。 4. **注意事项**: - 仿真之前,确保你的代码能在真实Arduino硬件上运行无误。 - 考虑处理错误情况和数码管显示范围的问题。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值