打印

单片机程序不会修改了

[复制链接]
3672|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
252170704|  楼主 | 2013-1-29 12:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define unchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
sbit led1=P1^0;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delayms(uint);
void display(uchar,uchar);
uchar num,num1,num2,shi,ge;
void main()
{
TMOD=0x11;
TH0=(65536-45872)/256;
TH0=(65536-45872)%256;
TH1=(65536-45872)/256;
TH1=(65536-45872)%256;
EA=1;
ET0=1;
ET1=1;
TR0=1;
TR1=1;
while(1)
        {
                display(shi,ge);
        }
}

void display(uchar shi,uchar ge)
{
        dula=1;
        P0=table[shi];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0xfe;
        wela=0;
        delayms(5);

        dula=1;
        P0=table[ge];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0xfd;
        wela=0;
        delayms(5);
}

void delayms(uint xms)
{
        uint i,j;
        for(i=xms;i>0;i--)
                for(j=110;j>0;j--);
}

void T0_time() interrupt 1
{
        TH0=(65536-35872)/256;
        TL0=(65536-35872)%256;
        num1++;
        if(num1==4)
        {
                num1=0;led1=~led1;
        }
}

void T1_time() interrupt 3
{
        TH1=(65536-45872)/256;
        TL1=(65536-45872)%256;
        num2++;
        if(num2==20)
        (
        num2=0;
        num++;
        if(num==60)
                num==0;
                shi=num/10;
                ge=num%10;
        )


#include<reg52.h>
#define unchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
sbit led1=P1^0;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delayms(uint);
void display(uchar,uchar);
uchar num,num1,num2,shi,ge;
void main()
{
TMOD=0x11;
TH0=(65536-45872)/256;
TH0=(65536-45872)%256;
TH1=(65536-45872)/256;
TH1=(65536-45872)%256;
EA=1;
ET0=1;
ET1=1;
TR0=1;
TR1=1;
while(1)
        {
                display(shi,ge);
        }
}

void display(uchar shi,uchar ge)
{
        dula=1;
        P0=table[shi];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0xfe;
        wela=0;
        delayms(5);

        dula=1;
        P0=table[ge];
        dula=0;
        P0=0xff;
        wela=1;
        P0=0xfd;
        wela=0;
        delayms(5);
}

void delayms(uint xms)
{
        uint i,j;
        for(i=xms;i>0;i--)
                for(j=110;j>0;j--);
}

void T0_time() interrupt 1
{
        TH0=(65536-35872)/256;
        TL0=(65536-35872)%256;
        num1++;
        if(num1==4)
        {
                num1=0;led1=~led1;
        }
}

void T1_time() interrupt 3
{
        TH1=(65536-45872)/256;
        TL1=(65536-45872)%256;
        num2++;
        if(num2==20)
        (
        num2=0;
        num++;
        if(num==60)
                num==0;
                shi=num/10;
                ge=num%10;
        )
找不到错误,找到后帮帮改改,谢谢哦!!

相关帖子

沙发
NE5532| | 2013-1-29 20:02 | 只看该作者
一个没有一行注释,不说明功能的程序,楼主可能自己都不愿意改吧,其他网友估计更不愿意了。

使用特权

评论回复
板凳
SLEET1986| | 2013-1-30 08:40 | 只看该作者
LZ我看不懂,所以

使用特权

评论回复
地板
zf_015820| | 2013-1-31 15:13 | 只看该作者
别的先不说:void delayms(uint);
void display(uchar,uchar);
这两行,函数调用,就是错误的格式,没有给参数,建议:先看看C语言书,打好基础;重点看看:函数的那一章内容;

使用特权

评论回复
5
refee| | 2013-2-9 11:25 | 只看该作者
这个代码看着好累……:L

使用特权

评论回复
6
sedatefire| | 2013-2-9 12:21 | 只看该作者
然后呢,出现什么问题了

使用特权

评论回复
7
wyg0216| | 2013-2-9 17:48 | 只看该作者
要有注释的。

使用特权

评论回复
8
jy02326166| | 2013-2-11 10:15 | 只看该作者
LZ在看郭天祥的视频吧。。
数码管+LED

使用特权

评论回复
9
雨后晴天| | 2013-2-11 17:58 | 只看该作者
加上注释再重新传下,这样的程序没人愿意看的

使用特权

评论回复
10
444745317| | 2013-3-1 22:12 | 只看该作者
zf_015820 发表于 2013-1-31 15:13
别的先不说:void delayms(uint);
void display(uchar,uchar);
这两行,函数调用,就是错误的格式,没有给 ...

这样可以的,下面给了!这是郭天祥的单片机C语言教程里的

使用特权

评论回复
11
444745317| | 2013-3-1 22:14 | 只看该作者
LZ到底要实习什么样的功能说清楚!

使用特权

评论回复
12
444745317| | 2013-3-1 22:16 | 只看该作者
jy02326166 发表于 2013-2-11 10:15
LZ在看郭天祥的视频吧。。
数码管+LED

就是郭天祥的C语言教程!十天学会单片机,我也买过 ,挺不错的!帮助很大,着重编程的,不过单片机内部结构还是要看其他的书的!

使用特权

评论回复
13
zf_015820| | 2013-3-6 10:53 | 只看该作者
这个,就要LZ在线仿真调用下,就知道问题了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝