找回密码
 立即注册

QQ登录

只需一步,快速开始

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

求大神指导,51初学者,想用一个按键控制一个数码管,按一下加一,可就是不行

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

sbit k1=P3^4;
sbit duan=P2^6;
sbit wei=P2^7;
uint m=0;

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

void smg()
{
        uint i;
        i=m%10;
        uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
        P0=tab[i];
        duan=1;
        duan=0;
        P0=0xfe;
        wei=1;
        wei=0;
        m++;
}

void main()
{
        while(1)
        {
        if(k1==0)
        {
                delay(10);
                if(k1==0)
                {
                         while(k1!=0);
                        smg();               
                }
        }
        }       
}
//错误代码   
//按键控制.C(21): error C141: syntax error near 'unsigned'
//按键控制.C(21): error C141: syntax error near '}'
//按键控制.C(22): error C202: 'tab': undefined identifier

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

使用道具 举报

沙发
ID:153645 发表于 2016-12-13 16:42 | 只看该作者
数码管是共阴的
回复

使用道具 举报

板凳
ID:154486 发表于 2016-12-13 18:32 | 只看该作者
define your 'uhar code tab[] ' at the beginning of your code
回复

使用道具 举报

地板
ID:154486 发表于 2016-12-13 18:34 | 只看该作者
or there are somthing wrong in your synatex.....
sorry,keyborad's broken,i can not type Chinese
回复

使用道具 举报

5#
ID:154489 发表于 2016-12-13 18:43 | 只看该作者
互相交流!
回复

使用道具 举报

6#
ID:153645 发表于 2016-12-13 19:29 | 只看该作者
anivan 发表于 2016-12-13 18:32
define your 'uhar code tab[] ' at the beginning of your code

为什么开头定义就可以了
回复

使用道具 举报

7#
ID:154526 发表于 2016-12-13 20:52 | 只看该作者
#include  <reg51.h>

unsigned char code dispcount[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char i;


void  main()
{EA=1;
IT0=1;
EX0=1;



while(1)
  {P1= dispcount[i] ;
  }
}

void  ex0() interrupt  0
{
    i++;
}
回复

使用道具 举报

8#
ID:94489 发表于 2016-12-13 21:12 | 只看该作者
uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
放在开头
回复

使用道具 举报

9#
ID:84299 发表于 2016-12-14 22:52 | 只看该作者
慢慢来,把基础学扎实点。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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