普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 4795|回复: 5

求助:这是我按教程写的静太数码管,烧入后LED灯点阵也亮这是为什么

[复制链接]

3

主题

3

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2020-2-10 14:01:24 | 显示全部楼层 |阅读模式
1金钱

求助:这是我按教程写的静太数码管,烧入后LED灯点阵也亮这是为什么

//数码管 静态
#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit lsa=P2^2;
sbit lsb=P2^3;
sbit lsc=P2^4;
   u8 code ziduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
                     0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(u16 i){
        while(i--);
}
void main()
{
                         lsa=0;
                        lsb=0;
                        lsc=0;
         P0=ziduan[0];
         while (1);
                                     }       



我的程是按教程上编写的,没有改动
这是我点这第一个LED灯,烧入程序后出现的问题,数码管和别的灯也亮了,我问下是什么问题






我知道答案 本帖寻求最佳答案回答被采纳后将获得系统奖励10 金钱 , 目前已有5人回答

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

0

主题

3

帖子

28

积分

新手上路

Rank: 1

积分
28
发表于 2020-2-11 22:07:22 | 显示全部楼层
这个开发板有一些引脚复用了,看开发板原理图就能知道,所以led也会亮
回复

使用道具 举报

0

主题

1

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2020-2-22 11:11:46 | 显示全部楼层
本帖最后由 强强强强哥 于 2020-2-22 11:13 编辑
喔嗬 发表于 2020-2-11 22:07
这个开发板有一些引脚复用了,看开发板原理图就能知道,所以led也会亮

大神,为什么我的动态数码管不动,跟静态一样。
这是我的程序:
#include "reg52.h"
#include "intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;   
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
u8 code a[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(u16 i)                     
{
while(i--);
}
void Display()
{
int i;
for(i=0;i<8;i++)
{
  switch(i)
  {
   case 0:
   LSA=0;LSB=0;LSC=0;break;
   case 1:
   LSA=1;LSB=0;LSC=0;break;
   case 2:
   LSA=0;LSB=1;LSC=0;break;
   case 3:
   LSA=1;LSB=1;LSC=0;break;
   case 4:
   LSA=0;LSB=0;LSC=1;break;
   case 5:
   LSA=1;LSB=0;LSC=1;break;
   case 6:
   LSA=0;LSB=1;LSC=1;break;
   case 7:
   LSA=1;LSB=1;LSC=1;break;
  }
  P0=a;
  delay(10000);
  P0=0x00;
}
}
void main()
{
while(1)
{
  Display();
}
}

回复

使用道具 举报

0

主题

11

帖子

39

积分

新手上路

Rank: 1

积分
39
QQ
发表于 2020-2-23 21:35:25 | 显示全部楼层
强强强强哥 发表于 2020-2-22 11:11
大神,为什么我的动态数码管不动,跟静态一样。
这是我的程序:
#include "reg52.h"

P0=a;这一句好像不对吧,a的值没有变化,而且a是一个数组
回复

使用道具 举报

0

主题

11

帖子

39

积分

新手上路

Rank: 1

积分
39
QQ
发表于 2020-2-23 21:37:39 | 显示全部楼层
看一下板子上的跳线帽,拔下试试
回复

使用道具 举报

0

主题

3

帖子

28

积分

新手上路

Rank: 1

积分
28
发表于 2020-2-26 09:26:49 | 显示全部楼层
本帖最后由 喔嗬 于 2020-2-26 09:31 编辑
强强强强哥 发表于 2020-2-22 11:11
大神,为什么我的动态数码管不动,跟静态一样。
这是我的程序:
#include "reg52.h"

P0=a改为P0=a(i)试试,英文方括号;
回复

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-4-27 02:22 , Processed in 0.093785 second(s), 36 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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