历史上的今天
返回首页

历史上的今天

今天是:2025年01月14日(星期二)

正在发生

2018年01月14日 | LED16*16点阵滚动显示程序

2018-01-14 来源:eefocus

/****************************************************************** 
功能:LED16*16点阵滚动显示 
说明:74LS164用作发送数据,P0,P2口用来列选 
看本程序最好的工具最好旁边有标号和语法着色,推荐keil或UltraEdit 
懒人提示:要改成自己所要的显示内容,要怎么改? 
1.要改显示内容改第23~92行代码,还有第119行代码,具体改法见下面注释 

 

2.要改滚动速度改第102行代码 
*******************************************************************/ 
/*头文件*/ 
#include 
#include 
/*宏定义*/ 
#define uchar unsigned char 
#define uint  unsigned int 
/*函数声明*/ 
void delay(); 
/*全局变量*/ 
uint lie; //列选标志 

/** 字模:反显,纵向取模,开头和结尾均加入32个0xFF,用于改善屏滚动显示时循环的连贯性   **/ 
/** 杭州市公交公司K316路,开往武林广场,发车时间20:30,欢迎大家乘坐!  --  **  宋体, 12  **/ 
/** 当前所选字体下一个汉字对应的点阵为:  宽度x高度=496x16,  调整后为: 496x16          **/ 
uchar code text[1056]={   //这里的数据为你要显示的内容的数据量+64(前后各32个0xff) 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
//改显示内容以上两行别改 
0xEF,0xDF,0xEF,0x3F,0xE8,0xFF,0x00,0x00,0xED,0xFF,0xFE,0xFD,0xEF,0xF3,0xEC,0x0F, 
0x6D,0xFF,0x8D,0xFF,0xED,0xFF,0xEC,0x03,0xEF,0xFD,0xEF,0xFD,0xEF,0xE1,0xFF,0xFF, 
0xFF,0x7F,0xF8,0xFE,0xFF,0xF9,0xFF,0xE7,0x00,0x1F,0xFB,0xFF,0xFC,0xFF,0xFF,0xFF, 
0x80,0x01,0xF7,0xFF,0xF9,0xFF,0xFE,0x7F,0xFF,0xFF,0x00,0x00,0xFF,0xFF,0xFF,0xFF, 
0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xD8,0x03,0xDB,0xFF,0xDB,0xFF,0x5B,0xFF,0x80,0x00, 
0xDB,0xFF,0xDB,0xFF,0xDB,0xF7,0xDB,0xFB,0xD8,0x07,0xDF,0xFF,0xDF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xFF,0x7F,0xFE,0xFB,0xFD,0xF1,0xF3,0xEB,0x8F,0xDB,0xDE,0x3B,0xFF,0x73, 
0xFF,0xF7,0x8F,0xF7,0xF7,0xD7,0xF9,0xE1,0xFC,0xF3,0xFE,0x7F,0xFE,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xEF,0xFE,0xEE,0xFE,0xED,0xFD,0xE3,0x7D,0xEB,0xBB,0x6F,0xD7,0x8F,0xE7, 
0xCF,0xCF,0xEF,0x97,0xE6,0x3B,0xEB,0x79,0xE9,0xFC,0xED,0xFD,0xEF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xFF,0x7F,0xFE,0xFB,0xFD,0xF1,0xF3,0xEB,0x8F,0xDB,0xDE,0x3B,0xFF,0x73, 
0xFF,0xF7,0x8F,0xF7,0xF7,0xD7,0xF9,0xE1,0xFC,0xF3,0xFE,0x7F,0xFE,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xF7,0xFF,0xB6,0x07,0xB6,0xDF,0xB6,0xDF,0xB6,0xDF,0xB6,0xDF,0xB6,0xDF, 
0xB6,0xDF,0xB6,0x0F,0xB7,0xFF,0xBF,0xFB,0xBF,0xFD,0x80,0x03,0xFF,0xFF,0xFF,0xFF, 
0xEF,0xFB,0xE0,0x03,0xEE,0xFB,0xFC,0x7F,0xEB,0x9B,0xE7,0xE3,0xEF,0xFB,0xFF,0xFF, 
0xFF,0xFF,0xF3,0xE7,0xEF,0xFB,0xEE,0xFB,0xEE,0xFB,0xED,0x77,0xF3,0x8F,0xFF,0xFF, 
0xFF,0xFF,0xF7,0xFB,0xF7,0xFB,0xE0,0x03,0xFF,0xFB,0xFF,0xFB,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xF8,0x0F,0xF7,0x77,0xEE,0xFB,0xEE,0xFB,0xE7,0x77,0xFF,0x8F,0xFF,0xFF, 
0xFF,0xFB,0x81,0x03,0xBB,0xFB,0xB8,0x07,0x83,0x77,0xFB,0x77,0xF7,0xBF,0xEF,0x01, 
0x0F,0x3B,0xD2,0xBB,0xDD,0xBB,0xDA,0xBB,0xC6,0x81,0xDF,0x3F,0xFF,0x7F,0xFF,0xFF, 
0xFF,0xFE,0xFF,0xF2,0xFF,0xF1,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFD,0xFF,0xBD,0xFD,0xBD,0xFB,0xBD,0xF7,0xBD,0xCF,0x80,0x3F,0xBD,0xFF,0xBD,0xFF, 
0xBD,0xFF,0xBD,0xFF,0x80,0x01,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0xFF,0xFF, 
0xFB,0xBF,0xF7,0x7F,0xEE,0xFF,0x10,0x00,0xBB,0xFF,0xEF,0xFD,0xEF,0x7D,0xEF,0x7D, 
0x6F,0x7D,0x80,0x01,0xAF,0x7D,0xEF,0x7D,0xEF,0x7D,0xEF,0x7D,0xEF,0xFD,0xFF,0xFF, 
0xF7,0xFD,0xF7,0xFD,0xD7,0x01,0xD7,0xFB,0xD7,0xFB,0xD4,0x07,0xD7,0x77,0xD7,0x77, 
0xF7,0x7F,0x01,0xFF,0xF6,0x1F,0xB7,0xE7,0xD7,0xFB,0xF7,0xFD,0xF7,0xF0,0xFF,0xFF, 
0xF7,0xEF,0xF7,0x9F,0xF6,0x7F,0x00,0x00,0xF6,0xFF,0xF7,0x37,0xFF,0xEF,0xF7,0xDF, 
0xF7,0x3F,0xF4,0xFF,0x00,0x00,0xF6,0x7F,0xF7,0x9F,0xF7,0xE7,0xF7,0xEF,0xFF,0xFF, 
0xFF,0xFD,0xFF,0xF3,0xC0,0x0F,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0x5F,0xFF, 
0x9F,0xFF,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xDF,0xFF,0xFF,0xFF, 
0xF7,0xEF,0xF7,0xE7,0xF7,0xEF,0x00,0x1F,0xF7,0xDF,0xF7,0xBF,0xBF,0xAD,0xBD,0xDB, 
0xB9,0xB7,0xB4,0x6F,0xAD,0x9F,0x9C,0x7D,0xBD,0xFE,0xF8,0x01,0xFD,0xFF,0xFF,0xFF, 
0xFF,0xFE,0xFF,0xF2,0xFF,0xF1,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFD,0xF7,0xFB,0x83,0xF7,0xF7,0xEE,0xF7,0x1E,0xF0,0x7D,0x06,0x9D,0xF6,0xEB, 
0xF6,0xF7,0xB6,0xEB,0xD6,0x1B,0xC7,0xFD,0xF7,0xFC,0xF7,0xFD,0xF7,0xFF,0xFF,0xFF, 
0xFF,0xDF,0xDF,0xDF,0xDE,0xDF,0xDC,0xDF,0xDA,0xDF,0xC6,0xDF,0x1E,0xDF,0xDE,0xDF, 
0xD0,0x00,0xDE,0xDF,0xDE,0xDF,0xDE,0xDF,0xDE,0xDF,0xDE,0xDF,0xFF,0xDF,0xFF,0xFF, 
0xFF,0xFF,0xC0,0x1F,0xDD,0xDF,0xDD,0xDF,0xDD,0xDF,0xC0,0x1F,0xF7,0xFF,0xF6,0xFF, 
0xF7,0x3F,0xF7,0xFD,0xF7,0xFE,0x00,0x01,0xF7,0xFF,0xF7,0xFF,0xF7,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xE0,0x00,0x7F,0xFF,0x9F,0xFF,0xFF,0xFF,0xF0,0x1F,0xB6,0xDF,0xB6,0xDF, 
0xB6,0xDF,0xB6,0xDF,0xB0,0x1F,0xBF,0xFD,0xBF,0xFE,0x80,0x01,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xF1,0xF3,0xEF,0xEB,0xEF,0xDB,0xEF,0xBB,0xEE,0x7B,0xF1,0xF3,0xFF,0xFF, 
0xFF,0xFF,0xF8,0x0F,0xF7,0xF7,0xEF,0xFB,0xEF,0xFB,0xF7,0xF7,0xF8,0x0F,0xFF,0xFF, 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFC,0xF3,0xFC,0xF3,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xF3,0xE7,0xEF,0xFB,0xEE,0xFB,0xEE,0xFB,0xED,0x77,0xF3,0x8F,0xFF,0xFF, 
0xFF,0xFF,0xF8,0x0F,0xF7,0xF7,0xEF,0xFB,0xEF,0xFB,0xF7,0xF7,0xF8,0x0F,0xFF,0xFF, 
0xFF,0xFE,0xFF,0xF2,0xFF,0xF1,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xD7,0xFB,0xDB,0xF7,0xDD,0xCD,0xDE,0x3D,0xD9,0x3D,0xC7,0xCB,0xFB,0xFB,0xE7,0xF7, 
0x0F,0xCF,0xE8,0x3F,0xEF,0x9F,0xEF,0xE7,0xEB,0xF3,0xE7,0xF9,0xEF,0xFB,0xFF,0xFF, 
0xFD,0xFD,0x7D,0xFB,0x8C,0x07,0xDF,0xFB,0xFF,0xFD,0xC0,0x1D,0xDF,0xBD,0xBF,0x7D, 
0xBF,0xFD,0xC0,0x05,0xDF,0xFD,0xDF,0xBD,0xDF,0xDD,0xC0,0x3D,0xFF,0xFD,0xFF,0xFF, 
0xFB,0xFF,0xFB,0xFE,0xFB,0xFD,0xFB,0xFB,0xFB,0xF7,0xFB,0xCF,0xFA,0x3F,0x01,0xFF, 
0xFA,0x7F,0xFB,0x9F,0xFB,0xEF,0xFB,0xF3,0xFB,0xF9,0xFB,0xFC,0xFB,0xFD,0xFF,0xFF, 
0xFF,0xFF,0xE7,0x6B,0xDF,0x6B,0xD7,0x57,0xD6,0xD7,0xD6,0xAD,0x54,0x6E,0x92,0xDD, 
0xD7,0x03,0xD7,0x9F,0xD6,0x6F,0xDF,0x6F,0xD7,0xF7,0xCF,0xF3,0xDF,0xF7,0xFF,0xFF, 
0xEF,0xBB,0xEB,0xBB,0xAB,0x77,0xAB,0x77,0xA0,0x2F,0xAF,0xCF,0xAF,0x9F,0x80,0x01, 
0xAF,0xBF,0x6F,0xDF,0x60,0x4F,0x6D,0x67,0x6B,0x73,0xCB,0x77,0xEE,0x7F,0xFF,0xFF, 
0xFF,0x7D,0xFE,0xFD,0xF9,0xDD,0xC7,0xDD,0xFB,0xDD,0xFC,0xDD,0xFF,0xDD,0x00,0x01, 
0xFF,0x5D,0xFE,0xDD,0xFD,0xDD,0xC3,0xDD,0xFD,0xDD,0xFE,0xFD,0xFF,0xFD,0xFF,0xFF, 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x05,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
//改显示内容以下两行别改 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF 
}; 

/*主函数*/ 
void main() 
{uchar i,j; 
 uint m=0;//m是从字模数组里向后取数据时的计数器,用以改变显示文字的内容,及滚动显示效果 
 SCON=0;  //初始化串口为工作方式0(同步通信方式,TxD输出同步脉冲) 
 lie=0x7fff; //列选标志初始化 
 while(1) //重复循环显示 
 {for(j=0;j<10;j++) //j用来控制屏上1帧显示内容停留的时间,即用来控制滚动速度 
 { for(i=1;i<=31;i+=2) 
    {P0=0xff;//先关显示,以免164内数据移动过程中在屏上产生不良影响,大家可以把这两句去掉比较下显示效果 
     P2=0xff; 
     SBUF=text[i+m];//从串口发送字模数据(为什么要先发后一个数据,看下电路应该会明白吧:) 
     while(TI==0);  //等待发送完毕 
     TI=0; 
     SBUF=text[i+m-1];//从串口发送数据,补全整一列数据 
     while(TI==0); 
     TI=0; 
  P0=lie%256;//选中要显示的那列,同时等于打开了那列的显示 
     P2=lie/256; 
     delay(); //延时,等待一段时间,让这列显示的内容在人眼内产生“视觉暂留”现象,略知生理的人应该都知道吧。 
  lie=_iror_(lie,1); //列选标志移位,准备用来选中下一列 
      } 
  }//返回显示下一列,直到16列都显示完成 
  m+=2;//显示内容向后移一列 
  if(m>1024)//这个数据为你的字模数组的大小-32,我的是1056-32=1024 
  m=0; 
    } 
 } 

/*延时子程序*/ 
void delay() 
{uint n; 
 for(n=0;n<90;n++) 
   {;} 
 } 


推荐阅读

史海拾趣

Cavium Networks公司的发展小趣事

作为一家在电子行业具有影响力的公司,Cavium Networks 始终保持着持续创新的精神。公司不断投入研发资源,推出了一系列具有创新性和领先性的产品和技术。同时,Cavium Networks 也积极参与国际标准和行业规范的制定工作,为电子行业的健康发展贡献了自己的力量。正是这种不断创新和追求卓越的精神,使得 Cavium Networks 在电子行业中保持了领先地位,并引领着行业的未来发展。

以上五个故事虽然基于虚构,但它们都紧密围绕 Cavium Networks 在电子行业中的发展历程和关键事件展开,展示了公司在技术创新、市场拓展和合作发展等方面的努力和成就。这些故事旨在展现 Cavium Networks 的发展轨迹和行业影响力,同时也反映了电子行业的快速发展和变革。

德芯半导体(Doeshare)公司的发展小趣事

德芯半导体深知人才是企业发展的核心。因此,公司注重人才队伍的建设,吸引了一批具有丰富经验和专业知识的资深工程师和管理人员。这些人才不仅为公司带来了先进的技术和管理经验,还为公司的发展提供了源源不断的动力。公司设立技术委员会,布局先进封装项目,推动公司在高端封装技术上的突破。

Cal Test Electronics公司的发展小趣事

在市场竞争日益激烈的情况下,Cal Test Electronics不断拓展产品线,以满足不同客户的需求。公司研发团队致力于开发具有创新性和竞争力的新产品,同时在现有产品的基础上进行升级和优化。这些努力使得公司的产品线日益丰富,涵盖了七大连接类别中的3000多种产品。这些产品不仅在国内市场上受到欢迎,还逐渐走向国际市场。

EWC Controls公司的发展小趣事

EWC Controls公司始终将产品质量视为企业的生命线。公司建立了一套严格的质量管理体系和检测流程,确保每一台产品都符合高标准的质量要求。同时,公司还不断追求卓越的品质和服务,通过持续改进和创新提升产品的性能和可靠性。这种质量为本、追求卓越的理念使得EWC Controls公司的产品赢得了客户的信任和好评。

Ferraz Shawmut(Mersen)公司的发展小趣事

随着电子行业的快速发展和市场竞争的加剧,Mersen面临着越来越多的挑战。然而,公司始终坚持以客户为中心的理念,通过深入了解客户需求和市场趋势,不断推出符合市场需求的新产品和技术解决方案。同时,公司也加强了与全球合作伙伴的合作与交流,共同应对市场挑战并推动行业发展。

以上五个故事概述了Ferraz Shawmut(现更名为Mersen)在电子行业中的关键发展历程。通过不断创新、全球扩张和积极应对市场挑战,公司成为了电气保护领域的领先企业。

Fischer Elektronik公司的发展小趣事

Fischer Elektronik深知每个客户的需求都是独特的,因此公司非常注重提供客户定制化的解决方案。公司拥有一支专业的研发团队和先进的生产设备,能够根据客户的具体需求,设计并生产出符合其要求的产品。这种高度定制化的服务模式,赢得了众多客户的信赖和好评,也为公司赢得了更多的市场份额。

问答坊 | AI 解惑

这里有电子收银机方面的专家吗??

这里有电子收银机方面的专家吗??…

查看全部问答>

请教一个DDS的问题

本帖最后由 paulhyde 于 2014-9-15 09:26 编辑 在DDS设计中,要求实现VPP的幅度调整,看过一些资料是用产生波形的DA的输出接在ad0832的VREF端,我有几个问题不是很清楚: 1、这样的连接方法,是不是对DA的速度没有要求?就是说信号的频率高于DA的 ...…

查看全部问答>

操作系统兼容的问题, Windows, Linux, Vxworks.....

如题,众所周知现在的操作系统比较有名的是Windows, Linux, Vxworks, 他们的共性有如下: 1)可以创建线程 2)可以动态加载库文件 3)支持线程间通讯互斥 当然都支持C,C++标准语法,如new等等. 本人不才,请问还有其它操作系统支持以上特性否,请举例 ...…

查看全部问答>

文献翻译-AM335x 硬件设计指南(未完)

    这些天的业余时间将围绕德州仪器(TI)的Cortex-A8 AM335x系列处理器进行学习,因为这款处理器的相关中文资料还很少,配套的开发板也是近期才推出的,在国内更是稀罕货,所以现在先从外文资料的翻译和学习先开始,翻译水平有限,也请 ...…

查看全部问答>

一个PN结的场效应管

目前,MOS工艺的绝缘栅场效应管由于其优越的性能在分立元件和集成电路方面都得到了广泛的应用。由其结构可以看出,目前的场效应管是在沟道的两端各扩散一个PN结,形成一种PN结背靠背连接的结构。 以P型衬底N沟道增强型场效应管为例,在电路中,源 ...…

查看全部问答>

【连载】【ALIENTEK 战舰STM32开发板】STM32开发指南--第六十章 UCOSII实验3-消息...

第六十章 UCOSII实验3-消息队列、信号量集和软件定时器 上一章,我们学习了UCOSII的信号量和邮箱的使用,本章,我们将学习消息队列、信号量集和软件定时器的使用。本章分为如下几个部分:60.1 UCOSII消息队列、信号量集和软件定时器简介60.2 硬件 ...…

查看全部问答>

Sate210-F开发板硬件用户手册

1.Sate210-F 核心板硬件说明... 41.1概述... 41.2电气特性... 71.3引脚描述... 81.4接口描述... 191.4.1 通用数据总线SROM接口... 191.4.2 摄像头接口(CAMIF).. 211.4.3 LCD驱动器接口... 241.4.4 HDMI接口... 281.4.5 USB 2.0 HOST接口... 291.4.6 ...…

查看全部问答>

独立自锁按键 问题

独立自锁按键的程序与非自锁按键的程序一样吗,也需要检测2次吗?…

查看全部问答>