一乐电子

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

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 2385|回复: 7

跪求单色LED点阵屏翻页钟农历74hc154+595 c程序

[复制链接]
发表于 2014-11-22 10:12 | 显示全部楼层 |阅读模式
本帖最后由 oysdswz 于 2014-11-22 10:16 编辑

求单色LED点阵屏翻页钟农历74hc154+595 c程序或怎样能把三色的改成单色的呢??跪求。。。。。。。。QQ:110052008 还有个为题,就是现在这个屏驱动起来字反的  显示的字是黑色的屏是红色  。。。求教
160658o9anoktv9lkvblor.jpg
发表于 2014-11-22 10:40 | 显示全部楼层
别跪,男儿膝下有黄金。
回复

使用道具 举报

发表于 2014-11-22 10:51 | 显示全部楼层
好落后的设计啊 楼主继续跪
回复

使用道具 举报

发表于 2014-11-22 10:58 | 显示全部楼层
字反的  显示的字是黑色的屏是红色  好像是字模得取反!
回复

使用道具 举报

发表于 2014-11-22 11:03 | 显示全部楼层
https://www.yleee.com.cn/forum.php?mod=viewthread&tid=5979
再抄翻页钟(无键红外调整、音乐闹铃、整点提示、误差自动修正等)

“三色的程序直接用在单色的屏上”
找到程序,改下发送到595的那段就行了。

“显示的字是反的”
找到程序,改下发送到595的那段就行了。
回复

使用道具 举报

 楼主| 发表于 2014-11-22 11:05 | 显示全部楼层
楼上意思是阳字 取成阴字了??????????

回复

使用道具 举报

发表于 2014-11-22 11:44 | 显示全部楼层
一个“~”的事,至于吗?
在发送行数据时候加个~取反就行了。
回复

使用道具 举报

 楼主| 发表于 2014-11-22 13:04 | 显示全部楼层
/*************************************************/
#include<reg51.h>
/*************************************************/
#define uchar unsigned char
sbit hc595_ds=P2^7;
sbit hc595_shcp=P1^5;
sbit hc595_stcp=P1^6;
sbit hc595_oe=P3^0;
/*************************************************/
uchar code table1[]={0x00,0x00,0x80,0x00,0xC0,0x00,0xC0,0x02,0x40,0x02,0x58,0x02,0x58,0x12,0x58,0x1A,
                         0x70,0x1A,0x60,0x0A,0x40,0x0A,0x7C,0x02,0xFE,0x7F,0xFE,0x7F,0x00,0x00,0x00,0x00}; //业
uchar code table2[]={0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x03,0xF0,0x0F,0x80,0x0F,0x80,0x00,0x80,0x00,
                         0x80,0x00,0x80,0x01,0x0C,0x01,0xFE,0x7F,0xFE,0x7F,0x00,0x78,0x00,0x00,0x00,0x00}; //工
uchar code table3[]={0x00,0x00,0x70,0x00,0xF0,0x0F,0xE0,0x0F,0xD0,0x0D,0xF8,0x0B,0xF8,0x0B,0xF8,0x0A,
                         0xF0,0x1A,0xF0,0x1B,0xD0,0x36,0x5C,0x36,0x4C,0x66,0xCC,0x45,0xC0,0x05,0x00,0x00}; //原
uchar code table4[]={0x00,0x00,0x00,0x03,0x00,0x03,0x00,0x01,0x00,0x01,0xF0,0x01,0xF0,0x1F,0xC0,0x1F,
                         0x80,0x03,0x80,0x03,0xC0,0x06,0x60,0x0E,0x78,0x1F,0x3E,0x79,0x1E,0x61,0x00,0x00}; //太    “太原工业”为楷体
uchar code table5[]={0x80,0x10,0x80,0x10,0x04,0x51,0xFE,0x51,0x00,0x52,0x80,0x54,0x60,0x58,0x24,0x50,
             0xfe,0x57,0x44,0x54,0x44,0x54,0x44,0x54,0x44,0x54,0x44,0x14,0xfc,0x17,0x04,0x14}; //临
uchar code table6[]={0x00,0x01,0x08,0x21,0x0C,0x11,0x10,0x09,0x20,0x09,0x04,0x01,0xFE,0xFF,0x40,0x04,
                         0x40,0x04,0x40,0x04,0x40,0x04,0x40,0x08,0x42,0x08,0x42,0x10,0x3E,0x20,0x00,0x40}; //光
uchar code table7[]={0x00,0x00,0x84,0x41,0x7E,0x26,0x44,0x14,0x44,0x04,0x44,0x04,0x44,0xF4,0xC4,0x14,
                         0x44,0x15,0x54,0x16,0x48,0x14,0x40,0x10,0x40,0x10,0x46,0x28,0xFC,0x47,0x00,0x00}; //迎
uchar code table8[]={0x80,0x00,0x80,0x00,0x80,0xFC,0xFC,0x04,0x04,0x45,0x48,0x46,0x40,0x28,0x40,0x28,
                         0x40,0x10,0x40,0x28,0xA0,0x24,0xA0,0x44,0x10,0x81,0x08,0x01,0x0E,0x02,0x04,0x0C}; //欢   
/*前八个字为横向显示 后面的竖向显示*/
uchar code table9[]={0x00,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0xFC,0x3F,
                         0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x06,0x20,0x04,0x30,0x00,0x20,0x00,0x00}; //工
uchar code table10[]={0x00,0x40,0x10,0x40,0x60,0x40,0x80,0x47,0x00,0x40,0xFF,0x7F,0x00,0x40,0x00,0x40,
                         0x00,0x40,0xFF,0x7F,0x00,0x44,0x00,0x43,0xC0,0x40,0x30,0x60,0x00,0x40,0x00,0x00}; //业
uchar code table11[]={0x40,0x04,0x30,0x04,0x11,0x04,0x96,0x04,0x90,0x04,0x90,0x44,0x91,0x84,0x96,0x7E,
                         0x90,0x06,0x90,0x05,0x98,0x04,0x14,0x04,0x13,0x04,0x50,0x06,0x30,0x04,0x00,0x00}; //学
uchar code table12[]={0x00,0x00,0xFE,0xFF,0x22,0x04,0x5A,0x08,0x96,0x87,0x0C,0x81,0x24,0x41,0x24,0x31,
                         0x25,0x0F,0x26,0x01,0x24,0x3F,0x34,0x41,0xA4,0x41,0x14,0x41,0x0C,0x70,0x00,0x00}; //院  

/*************************************************/
void hc595_write_data(uchar data_ds);         //数据移位到595移位寄存器
void hc595_display();                         //数据锁存到595存储寄存器,并送到8位并口输出
void delay(int n);                         //延时
/*************************************************/
void main()
{         
        uchar i;
        int x,y;;
        hc595_oe=0;
          for(y=0;y<=40;y++)
        {
                for(i=0;i<16;i++)
                {                              
                          hc595_write_data(table5[2*i]);            //写数据到595移位寄存器,一共8个595
                          hc595_write_data(table5[2*i+1]);       
                         hc595_write_data(table6[2*i]);       
                         hc595_write_data(table6[2*i+1]);
                        hc595_write_data(table7[2*i]);        
                        hc595_write_data(table7[2*i+1]);       
                          hc595_write_data(table8[2*i]);       
                          hc595_write_data(table8[2*i+1]);
                        //hc595_oe=1;                           //关显示
                        P1=i;//P3=i;                           //选择要扫描的行
                        hc595_display();                      //数据锁存到595存储寄存器,并送到8位并口输出
                        //hc595_oe=0;                           //输出允许,开显示
                     delay(100);
                        }                       
        }
        for(x=0;x<=40;x++)
        {       
                for(i=0;i<16;i++)
                {                              
                          hc595_write_data(table1[2*i]);            //写数据到595移位寄存器,一共8个595
                          hc595_write_data(table1[2*i+1]);       
                         hc595_write_data(table2[2*i]);       
                         hc595_write_data(table2[2*i+1]);
                        hc595_write_data(table3[2*i]);        
                        hc595_write_data(table3[2*i+1]);       
                          hc595_write_data(table4[2*i]);       
                          hc595_write_data(table4[2*i+1]);
                        //hc595_oe=1;                           //关显示
                        P1=i;//P3=i;
                //        P2>>1        ;                   //选择要扫描的行
                        hc595_display();                      //数据锁存到595存储寄存器,并送到8位并口输出
                        //hc595_oe=0;                           //输出允许,开显示
                     delay(100);
                }
        }
         
  for(y=0;y<=40;y++)
        {
                for(i=0;i<16;i++)
                {                              
                          hc595_write_data(table9[2*i]);            //写数据到595移位寄存器,一共8个595
                          hc595_write_data(table9[2*i+1]);       
                         hc595_write_data(table10[2*i]);       
                         hc595_write_data(table10[2*i+1]);
                        hc595_write_data(table11[2*i]);        
                        hc595_write_data(table11[2*i+1]);       
                          hc595_write_data(table12[2*i]);       
                          hc595_write_data(table12[2*i+1]);
                        //hc595_oe=1;                           //关显示
                        P1=i;//P3=i;                           //选择要扫描的行
                        hc595_display();                      //数据锁存到595存储寄存器,并送到8位并口输出
                        //hc595_oe=0;                           //输出允许,开显示
                     delay(100);
                        }                       
        }         
}
/*************************************************/
void hc595_write_data(uchar data_ds)
{
        uchar n_bit;
        for(n_bit=0;n_bit<8;n_bit++)
        {
                         hc595_shcp=0;
             hc595_ds=data_ds&(1<<n_bit);
                         data_ds<<1;
             hc595_shcp=1;

        }
}
/*************************************************/
void hc595_display()
{
    hc595_stcp=0;
        delay(1);
           hc595_stcp=1;
}
/*************************************************/
void delay(n)
{
while(n--);
}
/*************************************************/
回复

使用道具 举报

本版积分规则

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

GMT+8, 2026-1-12 10:12 , Processed in 0.033674 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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