按照你刚才提出的修改意见,对我的代码进行修改,并写给我看
时间: 2024-04-11 21:28:03 浏览: 27
根据您之前提到的修改意见,我对您的代码进行了一些调整,以下是修改后的代码:
```c
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit XIANSHI=P1^0;
sbit WEIZHI=P2^0;
sbit KEYSCAN=P3^0;
uchar code table[] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar code weizhi[] ={0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
int shuzhi = 76543210;
void DelayMS(uint x) {
uchar i;
while(x--) {
for(i = 100; i > 0; i--);
}
}
void display() {
int i;
int digits[8];
int temp = shuzhi;
// 分离每一位数字
for(i = 7; i >= 0; i--) {
digits[i] = temp % 10;
temp /= 10;
}
for(i = 1; i < 9; i++) {
P1 = table[digits[i-1]];
P2 = weizhi[i];
DelayMS(2);
P1 = 0xFF;
DelayMS(2);
}
}
void keyscan() {
if(P3 ^ 2 == 0) {
DelayMS(10);
if(P3 ^ 2 == 1) {
shuzhi = shuzhi + 1;
}
}
if(P3 ^ 3 == 0) {
DelayMS(10);
if(P3 ^ 3 == 1) {
shuzhi = shuzhi - 1;
}
}
}
void main() {
while(1) {
display();
//keyscan();
}
}
```
以上代码中,我在 `display()` 函数中添加了一个数组 `digits` 来存储每一位的数字,并通过取模和除法操作将输入的整数分离为每一位数字。然后,使用 `digits` 数组来选择对应的数码管显示内容。请注意,我注释掉了 `keyscan()` 函数的调用,如果您需要使用按键扫描功能,请取消注释。
希望这次的修改能解决您的问题。如果还有其他问题,请随时提问。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)