找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1726|回复: 4
打印 上一主题 下一主题
收起左侧

新手。。。。写了一个程序不知道哪错了,查了好久,求大神

[复制链接]
跳转到指定楼层
楼主
ID:154562 发表于 2016-12-13 22:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int

sbit dula=P2^6;
sbit wela=P2^7;

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

void yinshi_ms(uint xms)
{
   uint i,j;
   for(i=xms;i>0;i++)
     for(j=125;j>0;j++);
}

void main()
{
   uint k=0;
   while(1)
   {  
     if(k==10)
           k=0;                               

     dula=1;
     P0=table[k++];
     dula=0;
     P0=0xff;
         wela=1;
     P0=0xfe;
     wela=0;
     yinshi_ms(500);
         
   }
}


第一个数码管只会显示0;k不能+1,循环不了??????



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:86926 发表于 2016-12-13 23:22 | 只看该作者
你仔细看你延时里的for()这两句

评分

参与人数 1黑币 +5 收起 理由
用户2111144 + 5

查看全部评分

回复

使用道具 举报

板凳
ID:154562 发表于 2016-12-14 10:31 | 只看该作者
蓝魄 发表于 2016-12-13 23:22
你仔细看你延时里的for()这两句

多谢
回复

使用道具 举报

地板
ID:59980 发表于 2016-12-14 23:00 | 只看该作者
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int

sbit dula=P2^6;
sbit wela=P2^7;

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

void yinshi_ms(uint xms)
{
   uint i,j;
   for(i=xms;i>0;i++)
     for(j=125;j>0;j++);
}

void main()
{
   uint k=0;
   while(1)
   {  
      k++;
     if(k==10)
     {  k=0;    }                              

     dula=1;
     P0=table[k];
     dula=0;
     P0=0xff;
         wela=1;
     P0=0xfe;
     wela=0;
     yinshi_ms(500);
         
   }
}


第一个数码管只会显示0;k不能+1,循环不了??????
k++,换个位置就可以了,有空你试一下,按照理论来说是没有问题的了。
回复

使用道具 举报

5#
ID:59980 发表于 2016-12-14 23:02 | 只看该作者
{for(i=xms;i>0;i--)      for(j=125;j>0;j--); }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表