一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 5172|回复: 23
收起左侧

74LS156控制行扫描的16X64点阵屏

  [复制链接]
发表于 2012-12-2 11:09 | 显示全部楼层 |阅读模式
收了一个16X64绿色点阵屏,行扫描控制用的是两个74LS156,百度74LS156 datasheet得知是双2线--4线译码器,也可以作为3-8线译码器, 有了解156的可以帮我分析下是如何控制行扫描的,行驱动16个TIP127,列是8个74HC595,另外板子上还有两片74LS04和一片74LS00
用万用表测量了下 输入接口应该是这种排列 A B C D STR CLK R1 G1 OE  GND ,因为是绿色单色屏所以R1引脚没有与任何引脚连接。

上图


a4.jpg

a2.jpg

a3.jpg

b5.jpg

b7.jpg

找了个154控制的4字左移的程序测试了下  到我的板子变成右移了 而且字体都是镜像的...  换了几种字模取模方式也不行 求高手给分析下
b1.jpg

b2.jpg

b3.jpg

测试程序和74LS156 datasheet 74ls156.rar (117.22 KB, 下载次数: 365)
发表于 2012-12-2 12:58 | 显示全部楼层
回复 1# xiaosongj210


这个屏138 595的程序应该都能用,楼主可在论坛里找个138 595的程序测试一下。
发表于 2012-12-2 13:06 | 显示全部楼层
开心锅锅的
附上程序

#include <REG52.H>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

sbit HC138_A   = P1^4;   
sbit HC138_C   = P1^3;   
sbit HC595_STB = P1^2;
sbit HC595_GD  = P1^1;
sbit HC138_OE  = P1^0;   
      
sbit HC138_B   = P1^5;                       
sbit HC138_D   = P1^6;
sbit HC595_CLK = P1^7;
sbit HC595_RD  = P3^2;

unsigned char r_data[16], g_data[16];
unsigned char k, t;

unsigned char code hanzi[][8]={                 //二维数据
         
0x00,0x18,0x24,0x24,0x24,0x24,0x24,0x18,        //0

0x00,0x08,0x18,0x08,0x08,0x08,0x08,0x08,        //1

0x00,0x18,0x24,0x24,0x08,0x10,0x20,0x3C,        //2

0x00,0x18,0x24,0x04,0x18,0x04,0x24,0x18,        //3

0x00,0x04,0x0C,0x14,0x24,0x3E,0x04,0x04,        //4

0x00,0x3C,0x20,0x38,0x24,0x04,0x24,0x18,        //5

0x00,0x18,0x24,0x20,0x38,0x24,0x24,0x18,        //6

0x00,0x3C,0x04,0x08,0x10,0x10,0x10,0x10,        //7

0x00,0x18,0x24,0x24,0x18,0x24,0x24,0x18,        //8

0x00,0x18,0x24,0x24,0x1C,0x04,0x24,0x18,        //9

0x00,0x26,0x69,0x29,0x29,0x29,0x29,0x26,        //10

0x00,0x22,0x66,0x22,0x22,0x22,0x22,0x22,        //11

0x00,0x26,0x69,0x29,0x22,0x24,0x28,0x2F,        //12

0x00,0x26,0x69,0x21,0x26,0x21,0x29,0x26,        //13

0x00,0x22,0x66,0x2A,0x32,0x3F,0x22,0x22,        //14

0x00,0x2F,0x68,0x2E,0x29,0x21,0x29,0x26,        //15

};

//delay us
void Delay(uchar us)
{
        while(--us);  
}

void Write_HC595(unsigned char rdd, gdd)
{
        unsigned char i;

        for (i=0;i<8;i++)
        {
                HC595_RD=~rdd&0x80;    //只显示红色字
                rdd=rdd<<1;

                HC595_CLK=1;
                HC595_CLK=0;
        }
}


void main (void)
{
        while(1)
        {
                for(t=0;t<16;t++)   //16 行
                {
            HC138_OE = 0;

                                r_data[0] = hanzi[0][t];
                                r_data[1] = hanzi[2][t];
                                r_data[2] = hanzi[4][t];
                                r_data[3] = hanzi[6][t];
                                r_data[4] = hanzi[8][t];
                                r_data[5] = hanzi[10][t];
                                r_data[6] = hanzi[12][t];
                                r_data[7] = hanzi[14][t];

                        for (k=0;k<8;k++)
                                Write_HC595(r_data[k], g_data[k]);  

                        HC138_OE  = 1;      
                        HC595_STB = 1;
                        HC595_STB = 0;

                        HC138_A = t&0x01;
                        HC138_B = t&0x02;
                        HC138_C = t&0x04;
                        HC138_D = t&0x08;

                        Delay(400);
                }  
        }        //end while
}
 楼主| 发表于 2012-12-2 14:02 | 显示全部楼层
回复 3# donghuilin


    谢谢,我测试下看看效果...
发表于 2012-12-2 14:48 | 显示全部楼层
rhf b g看了一下,把字模反相看看效果如何?
发表于 2012-12-2 15:33 | 显示全部楼层
rhf b g看了一下,把字模反相看看效果如何?
dianzichina 发表于 2012-12-2 14:48 https://www.yleee.com.cn/images/common/back.gif



  字模取反估计不行,我最近找了一个程序,用在我的3280屏上,结果与楼主的情形一样,也是镜像的!期待高手指点。
 楼主| 发表于 2012-12-2 15:50 | 显示全部楼层
回复 6# xiaomage


    是的 字模取反解决不了问题
发表于 2012-12-2 16:08 | 显示全部楼层
固定的显示的话,在595的驱动部分改一下方向就行了。要是移动的,我估计得改字模的取模方向。
 楼主| 发表于 2012-12-2 16:24 | 显示全部楼层
本帖最后由 xiaosongj210 于 2012-12-2 16:26 编辑

回复 3# donghuilin


    测试了下,程序可以用,138+595组合方式的程序也适用此板,只是字模还是要取反一下才正常,看图片

把0和1的字模取反后显示正常 原程序阳码到了此板上就成了阴码了

把0和1的字模取反后显示正常 原程序阳码到了此板上就成了阴码了


把0和1的字模 取反后 显示正常
发表于 2012-12-2 16:29 | 显示全部楼层
回复 9# xiaosongj210


    恭喜,那你可以在论坛找你喜欢的程序玩了。

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-22 06:00 , Processed in 0.071878 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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