• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

为什么延时程序不好使 数码管全都是八啊

#include

#define uint unsigned int

#define uchar unsigned char

sbit du=P2^6;

sbit we=P2^7;

uchar number ;

uchar code table[]={

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71};

void delay(uint);

void main()

{

we=0;

P0=0x00;

we=1;

while(1)

{

for(number=0;number<16;number++)

{

du=0;

P0=table[number];

delay(500);

du=1;

}

}

}

void delay(uint x)

{

uint i,j;

for(i=x;i<0;i--)

for(j=110;j<0;j--);

}

全部回复(23)
正序查看
倒序查看
daylight
LV.4
2
2014-02-26 22:21
请问你用的什么模拟软件
0
回复
candyman
LV.2
3
2014-02-26 22:22
@daylight
请问你用的什么模拟软件
仿真 知道 哪错了吗 编译啥的都没错
0
回复
candyman
LV.2
4
2014-02-26 22:22
@daylight
请问你用的什么模拟软件
proteus 7
0
回复
金鱼1
LV.3
5
2014-02-26 22:24
@candyman
proteus7
你的程序都没有位选扫描吗
0
回复
candyman
LV.2
6
2014-02-26 22:26
@金鱼1
你的程序都没有位选扫描吗
求解 什么意思
0
回复
stony_s
LV.3
7
2014-02-26 22:27
@candyman
求解什么意思

for(number=0;number<16;number++)

{

du=1;

P0=table[number];

delay(500);

du=0;

}

0
回复
candyman
LV.2
8
2014-02-26 22:28
@stony_s
for(number=0;number
试过了 不好使
0
回复
stony_s
LV.3
9
2014-02-26 22:28
@candyman
试过了不好使
一直显示8吗,前面位选没关 we=1; P0=0x00; we=0;
0
回复
candyman
LV.2
10
2014-02-26 22:29
@stony_s
一直显示8吗,前面位选没关we=1;P0=0x00;we=0;
显示的是乱码8
0
回复
matou
LV.3
11
2014-02-26 22:29
扫描太快了吧
0
回复
daylight
LV.4
12
2014-02-26 22:33
@matou
扫描太快了吧
程序没问题,好像是郭天祥单片机的例程吧?仿真看不清,有可能是你的2.6接口不是段选
0
回复
01夏至
LV.2
13
2014-02-26 22:35
@daylight
程序没问题,好像是郭天祥单片机的例程吧?仿真看不清,有可能是你的2.6接口不是段选
有没有消影?
0
回复
matou
LV.3
14
2014-02-26 22:36
@01夏至
有没有消影?
楼主的DSN文件能共享下不
0
回复
candyman
LV.2
15
2014-02-26 22:37
@matou
楼主的DSN文件能共享下不
都是网上下的
0
回复
matou
LV.3
16
2014-02-26 22:38
@candyman
都是网上下的
有链接吗?
0
回复
candyman
LV.2
17
2014-02-26 22:40
原因已找到
0
回复
for_real
LV.3
18
2014-02-26 22:42
@candyman
原因已找到
公布下改好的程序吧
0
回复
candyman
LV.2
19
2014-02-26 22:43
@for_real
公布下改好的程序吧
把<改成大于
0
回复
for_real
LV.3
20
2014-02-26 22:43
@candyman
哈哈一语惊醒梦中人
0
回复
soap泡泡
LV.4
21
2014-02-26 22:45
@for_real
哈哈一语惊醒梦中人
for(i=x;i<0;i--)
0
回复
daylight
LV.4
22
2014-02-26 22:45
@soap泡泡
for(i=x;i
for(i=x;i<0;i--)这句话写错了for(i=x;i>0;i--)不然的话x你给一个正数永远不执行

 

0
回复
candyman
LV.2
23
2014-02-26 22:46
@daylight
for(i=x;i0;i--)不然的话x你给一个正数永远不执行 
0
回复
candyman
LV.2
24
2014-02-26 22:46
@candyman
显示的是乱码8
有办法解决不?
0
回复