爱发电- 2021-04-20 13:34 采纳率: 0%
浏览 90

求问大佬为什么我的代码无法让8*8的led点阵点亮  用的是普中的板子?

#include<reg52.h>
#include<intrins.h>

typedef unsigned char u8;

typedef unsigned int u16;

sbit CLK=P3^6;
sbit SRCLK=P3^5;
sbit SER=P3^4;

void sum(u16 i) //延时函数
{
	while(i--);
}
//定义一个二维数组显示 每 行 是一个显示
u8 code display[40]={
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	0x00,0x82,0x82,0xFE,0x82,0x82,0x00,0x00,
	0x18,0x24,0x12,0x12,0x12,0x24,0x18,0x00,
	0x00,0x7C,0x02,0x02,0x02,0x7C,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
//定义一个数组来使 P0口 到 P7口 挨个导通
u8 code P0_P7_Conduction[]={
	0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe
};

u8 code P1_P7_Conduction[]={
	0x7e,0xbd,0xdb,0xe7,0xe7,0xe7,0xdb,0xbd,0x7e
};

//74HC595芯片函数
void lattice(u8 bta)
{
	u8 i;
	SRCLK=0;
	CLK=0;
	for(i=0;i<8;i++)
	{
		SER=bta>>7;
		bta<<=1;
		CLK=1;
		_nop_();
		_nop_();
		CLK=0;
	}
	SRCLK=1;
	_nop_();
	_nop_();
	SRCLK=0;
}

void main()
{
	
	TMOD=0x01;//定时器1
	TR0=1;
	TH0=0xfc;
	TL0=0x66;
	ET0=1;			   //使用定时器0为中断口
	EA=1;			   //中断开关
    while(1);
}

void weist() interrupt 1 //中断 中断向量地址为1
{
   	static u8 index=0; //作用:使点阵在一个循环后显示上一个循环的第二列
	static u8 tmer=0;  //作用:计时
	static u8 j=0;	//流水灯显示
	u8 i=0; // 作用:使P0口挨个导通
	TH0=0xfc;
	TL0=0x66;
	lattice(0x00); //消隐
	switch(i) //让点阵动态显示
	{
		case 0 : P0=P0_P7_Conduction[0]; i++; lattice(display[index+0]);  break;

		case 1 : P0=P0_P7_Conduction[1]; i++; lattice(display[index+1]);  break;
		
		case 2 : P0=P0_P7_Conduction[2]; i++; lattice(display[index+2]);  break;
		
	 	case 3 : P0=P0_P7_Conduction[3]; i++; lattice(display[index+3]);  break;
		
	    case 4 : P0=P0_P7_Conduction[4]; i++; lattice(display[index+4]);  break;
		
		case 5 : P0=P0_P7_Conduction[5]; i++; lattice(display[index+5]);  break;
		
		case 6 : P0=P0_P7_Conduction[6]; i++; lattice(display[index+6]);  break;

		case 7 : P0=P0_P7_Conduction[7]; i=0; lattice(display[index+7]);  break;
		default : break;
	}
	tmer++;

	if(tmer>=250)
	{
		tmer=0;
		index++; 
		if(index>=32)
		{
			index=0;
		}
	}	
}	

求问大佬为什么我的代码无法让8*8的led点阵点亮 

用的是普中的板子

  • 写回答

2条回答 默认 最新

  • 有问必答小助手 2021-04-21 18:14
    关注

    非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

    速戳参与调研>>>https://t.csdnimg.cn/Kf0y

    评论

报告相同问题?

悬赏问题

  • ¥20 西南科技大学数字信号处理
  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥15 pyqt信号槽连接写法
  • ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。