标题: 烧录后点阵显示屏总是全亮而不像预想的显示字体 求哪位大神帮忙看下怎么回事 感激不尽 [打印本页]

作者: 瑁瑁446    时间: 2015-7-20 20:48
标题: 烧录后点阵显示屏总是全亮而不像预想的显示字体 求哪位大神帮忙看下怎么回事 感激不尽
求大神帮忙看下是怎么回事
程序没有错 也是单片机教材里面的 烧录后点阵显示屏总是全亮而不像预想的显示字体。显示效果如下图。
//注意使用EM3 V3 时把NE555的跳帽去掉
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char  
sbit SCK=P3^6;
sbit LCK=P3^5;
sbit SDI=P3^4;
//一共有16行,每次刷一行的代码
uchar code NUM_HANG[]={
0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x01,0x00,
0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x01,};
//数字1的字码
uchar code  NUM_ONE[]={
0,0,0,0,8,0,56,0,8,0,8,0,8,0,8,0,
8,0,8,0,8,0,8,0,62,0,0,0,0,0,0,0};
//汉字“普”的字码
uchar code  CH_CHAR_PU[]={
0,0,2,0,34,0,42,0,166,248,98,168,62,168,34,168,
62,168,98,168,166,248,42,0,34,0,2,0,0,0,0,0};
void HC595_Send(uchar dat1,uchar dat0,uchar dat2,uchar dat3);
void main()
{
uchar i,j;
while(1)
{
   for(j=255;j>0;j--)  //一个字显示的次数,刷256次然后刷第二个字。
  {
    for(i=0;i<32;i=i+2) //一共有16行,所以刷16次
   {
     HC595_Send(~NUM_ONE[ i],~NUM_ONE[i+1],NUM_HANG[ i],NUM_HANG[i+1]);
    }
   }
   HC595_Send(0xff,0xff,0x00,0x00);
   for(j=255;j>0;j--)
   {
    for(i=0;i<32;i=i+2)
    {
     HC595_Send(~CH_CHAR_PU [ i],~CH_CHAR_PU[i+1],NUM_HANG[ i],NUM_HANG[i+1]);
    }
   }
   HC595_Send(0xff,0xff,0x00,0x00);
}
}
void HC595_Send(uchar dat1,uchar dat0,uchar dat3,uchar dat2)
{
uchar i;
SCK=1;
LCK=1;
for(i=0;i<8;i++)
{
   SDI=dat0&0x01;  //从高位到低位
  dat0>>=1;
   SCK=0;
   _nop_();
   _nop_();
   SCK=1;
   _nop_();
   _nop_();
}
for(i=0;i<8;i++)
{
   SDI=dat1&0x01;  //从高位到低位
  dat1>>=1;
   SCK=0;
   _nop_();
   _nop_();
   SCK=1;
   _nop_();
   _nop_();
}
for(i=0;i<8;i++)
{
   SDI=dat2&0x01;  //从高位到低位
  dat2>>=1;
   SCK=0;
   _nop_();
   _nop_();
   SCK=1;
   _nop_();
   _nop_();
}
for(i=0;i<8;i++)
{
   SDI=dat3&0x01;  //从高位到低位
  dat3>>=1;
   SCK=0;
   _nop_();
   _nop_();
   SCK=1;
   _nop_();
   _nop_();
}
LCK=0; //下面是输出时钟
_nop_();
_nop_();
LCK=1;
_nop_();
_nop_();
}

Screenshot_2015-07-20-10-32-58.png (1.64 MB, 下载次数: 0)
下载附件  保存到相册
10 小时前 上传







作者: 876113577    时间: 2015-12-3 17:49
你的问题解决了么
作者: mslong    时间: 2017-3-6 22:51
我也是这个问题,字可以显示,就是全屏亮,感觉多了个背景,这样字就显示的分不清了
作者: imxuheng    时间: 2017-3-7 08:52
是不是没做好消影
作者: 兰舟催发    时间: 2018-3-18 11:44
那是受信号干扰的结果。把时钟模块及NE555模块的两个跳接冒拨掉即可




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1