注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
行书万里的个人空间 https://home.eeworld.com.cn/space-uid-392956.html [收藏] [复制] [分享] [RSS]
日志

16*16点阵程序问题

已有 830 次阅读2012-4-17 15:26

pic16f877a芯片用两个74hc595和一个74hc154芯片设计16*16点阵。请问怎样显示汉字啊。

我用74hc154行扫描,显示的汉字乱作一团,不该亮的点都亮了,请问我应该怎样做啊?!

程序如下:#include<pic.h>
#define uint unsigned int
#define uchar unsigned char
__CONFIG(0XFF31);
void delay(uint z);
void out595();
void write595(uint dat);
void display();
void displays(uint timer);
uchar temp[32]; //缓存区
const t0[16]={0xf0,0x70,0xb0,0x30,0xd0,0x50,0x90,0x10,0xe0,0x60,0xa0,0x20,0xc0,0x40,0x80,0x00}; //行扫描

 

const t1[32]={0x00,0x00,0x00,0x08,0x7F,0xFC,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0xFF,0xFE,0x00,0x00,0x00,0x00};  //汉字“工”

 

const t2[32]={0x00,0x00,0x7F,0xF8,0x00,0x10,0x00,0x20,0x00,0x40,0x01,0x80,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00}; //汉字“了”


void main()
{  uint m=0,j=0;
  TRISD=0;
    for(j=0;j<32;j++)
       temp[j]=t1[j];
        displays(2);
   
  
   
 for(j=0;j<32;j++)
  temp[j]=t2[j];
  displays(2);
}
 

void write595(uint dat)
{       uint i;
  TRISB=0;
   for(i=0;i<8;i++)
 {   RB5=0;
      if((dat&0x01)==0x01)
        RB6=1;
        else
       RB6=0;
  dat>>=1; 
         RB5=1;
 
}
       
  
     
}
void out595()
{
   TRISB=0;
     RB7=0;
     RB7=1;

}
void  delay(uint z)
{
 uint i,j;
   for(i=0;i<z;i++)
     for(j=100;j>0;j--);

}

 

void display()
{
    int i,j,k;
            TRISD=0;
         
    for(i=0;i<16;i++)
                    
     {           
        for(j=2;j>0;)
          {  
        PORTD=t0[i];
       j--;
          write595(temp[i*2+j]);
          out595();
                            delay(2);
          
       }
     }
       
        k=100;
     while(k--);
     
                          

}
void displays(uint timer)
{
 unsigned char i; 
 while(timer--)
   {  
  i=110;  
  while(i--)
   display();
 }
}

本文含有来自论坛的附件或图片:[OA19ZXL2Y$]_`_]DJD9_D_G.jpg],[M@0(3]M(D0@$`546J@{2HSX.jpg],点击查看原帖附件。

全部作者的其他最新日志
评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章