电子技术论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

搜索
下载方法|用单线程|避免多扣帖子规范|求助必读|发帖建议积分策略|勋章介绍|新人必读获取金币|推广论坛|出售帖子基本礼节|致会员信|版规总则
禁涉政治|反对低俗|举报专帖征集相片|留下足迹|推荐精华上传附件|制作分卷|使用网盘禁发qq群|恶意灌水|纯表情帖加入团队|监督机制|安全上网
查看: 2081|回复: 0

STC90C52RC驱动P10LED屏的程序

[复制链接]
发表于 2020-6-29 20:40:10 | 显示全部楼层 |阅读模式

注册家电维修技术论坛,与同行畅聊维修技术,享更多技术论坛功能。

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
STC单片机通过串口,在系统控制P10,16*32的单色LED。


//STC单片?/动P10LED屏的程序
///p10半户外1/4扫描


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

#define uchar unsigned char
#define uint  unsigned int
#define NOP     _nop_()

//1=OE     2 =A
//3        4 =B
//5        6
//7        8 =CLK
//9        10=STB
//11       12=DR
//13       14
//15       16

//-------------------------------------------------------------
sbit OE     = P2^0;

sbit AA     = P2^1;
sbit BB     = P2^2;

sbit CLK =P2^3;    //11脚CLK    移位时钟
sbit STB =P2^4;    //12脚STB    锁存时钟

sbit DR=P2^5;           //数据输入


//----------------谢谢-------------0=亮 1=灭----------------------------------------------
uchar code table[10][32]=
{

//第1单元--------------左边16*16=256字阵                                          
{
//第1列,第2列
0xfe,0xfd,//第1行数据-
     0xfb,0xf7,//第2行数据--
          0xef,0xdf,//第3行数据---
               0xbf,0x7f,//第4行数据----

0xe0,0xF0,//第1行数据-
     0xc0,0xf8,//第2行数据--
          0x80,0xfc,//第3行数据---
               0x00,0xfe,//第4行数据----
  
0x00,0x00,//第1行数据-
     0x00,0x00,//第2行数据--
          0x00,0x00,//第3行数据---
               0x00,0x00,//第4行数据----

0x00,0x00,//第1行数据-
     0x00,0x00,//第2行数据--
          0x00,0x00,//第3行数据---
               0x00,0x00 //第4行数据----
},

//第2单元-------------右边16*16=256字阵
//第3列,第4列
{
0xFE,0xF7,//第1行数据-
     0xBD,0xF7,//第2行数据--
          0xC8,0x77,//第3行数据---
               0xDB,0x77,//第4行数据----

0xF8,0x01,//第1行数据-
     0xFB,0x77,//第2行数据--
          0x18,0x37,//第3行数据---
               0xDB,0x57,//第4行数据----

0xD0,0x57,//第1行数据-
     0xDE,0x77,//第2行数据--
          0xDD,0x77,//第3行数据---
               0xD5,0x77,//第4行数据----

0xCB,0x77,//第1行数据-
     0xD7,0x77,//第2行数据--
          0xED,0x57,//第3行数据---
               0xFE,0xEF //第4行数据----
}
};

/*******************************************************************************************/
void Delay_ms(uint tt)
{unsigned int i,j;for(i=0;i<tt;i++)for(j=0;j<100;j++);;} //


/*******************************************************************************************/
//数据串行输入
void serial_input(uchar dat)   
{
        uint m;
OE=1;//输出使能
AA=0;//行选择,只选择第一行,全屏有4个第一行
BB=0;
              
//一字节数据分成BIT数据 一位位输出。
for(m=0;m<8;m++)
                {
                    if(dat & 0x80)DR=1;else DR=0;
                        
                    CLK=0;        
                    CLK=1; NOP;NOP;//=1高电平
                    CLK=0; NOP;NOP;//=0低电平
                    
//--------------------------------------------------
STB=1; NOP; NOP;//上升沿,锁存器转移数据
STB=0;  // 低电平时锁存数据     
//----------------------------
Delay_ms(50);//延时
dat=dat<<1;//数据左移一位,输出2BIT
                }

}




/*******************************************************************************************/
/*******************************************************************************************/
void main()
{
unsigned int i;
serial_input(0x7f);
for(i=0;i<16;i++)
{
serial_input(0xff);
}  
while(1)
       {
serial_input(0x7f);
for(i=0;i<16;i++)
{
serial_input(0xff);
}  
      // serial_input(0xef);           
       }

}

//*********一个LED 逐次在第一行扫描一遍**********************************************
//unsigned int i;
//serial_input(0x7f);
//for(i=0;i<16;i++)
//{
//serial_input(0xff);
//}  
//while(1)
      // {

      // serial_input(0xef);           
      // }

//}


您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|家电维修技术论坛 ( 鄂ICP备09003585号-2 )

GMT+8, 2024-11-21 20:05 , Processed in 0.043141 second(s), 4 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

CopyRight © 电子技术论坛
电子邮箱:8794149@qq.com | 联系 QQ:3081868839 | 官方网址:www.dzdu.com

Qiji. All Rights Reserved


服务条款 | 站长声明

Wuhan Qiji Technology Co., Ltd.武汉奇迹科技有限公司版权所有


鄂ICP备09003585号-2鄂公网安备42010602000420号

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