1.控制点阵红绿交替显示,分别从上到下,从左到右循环闪烁三次

接线:

P0接J12、P1接J20、P2接J19

/**

1.控制点阵红绿交替显示,分别从上到下,从左到右循环闪烁三次

**/

#include <REG51.H>

unsignedchar code table_LeftRight[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

unsignedchar code table_TopBottom[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

enum DisplayDirecte{

Left2Right,

Right2Left,

Top2Bottom,

Bottom2Top

};

void delay(void)

{

unsignedchar i,j,k;

;k--)

;i--)

;j--);

}

/***********************************************************

显示的规则

***********************************************************/

void DisplayRule(enum DisplayDirecte displayDirecte,unsignedchar index){

switch(displayDirecte){

case Left2Right:

P2=table_LeftRight[index];

P0=0xff;

P1=0xff;

break;

case Right2Left:

P1-index];

P0=0xff;

P2=0xff;

break;

case Top2Bottom:

P2=0x00;

P1=0xff;

P0-index];

break;

case Bottom2Top:

P1=0x00;

P2=0xff;

P0=table_TopBottom[index];

break;

}

}

/***********************************************************

***********************************************************/

void Display3Time(enum DisplayDirecte displayDirecte){

unsignedchar i,RepeatTime;

;RepeatTime++)//控制重复的次数

{

;i++)

{

DisplayRule(displayDirecte,i);

delay();

}

}

}

void main(void)

{

)

{

Display3Time(Left2Right);

Display3Time(Right2Left);

Display3Time(Top2Bottom);

Display3Time(Bottom2Top);

}

}

2.自行编码,控制LCD显示0~F或一些简单汉字(红绿交替显示)

3./*****************************************************************************************

4.2.自行编码,控制LCD显示0~F或一些简单汉字(红绿交替显示)

5.******************************************************************************************/

#include<reg51.h>

#define Lenth 19

unsignedchar code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//列选通

]={

{0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00},//0

{0x00,0x00,0x00,0x00,0x21,0x7f,0x01,0x00},//1

{0x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00},//2

{0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00},//3

{0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00},//4

{0x00,0x00,0x72,0x51,0x51,0x51,0x4e,0x00},//5

{0x00,0x00,0x3e,0x49,0x49,0x49,0x26,0x00},//6

{0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00},//7

{0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00},//8

{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00},//9

{0x00,0x00,0x7F,0x48,0x48,0x30,0x00,0x00},//P

{0x00,0x00,0x7F,0x48,0x4C,0x73,0x00,0x00},//R

{0x00,0x00,0x7F,0x49,0x49,0x49,0x00,0x00},//E

{0x00,0x00,0x3E,0x41,0x41,0x62,0x00,0x00},//C

{0x00,0x00,0x7F,0x08,0x08,0x7F,0x00,0x00},//H

{0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00},//I

{0x00,0x7F,0x10,0x08,0x04,0x7F,0x00,0x00},//N

{0x7C,0x48,0x48,0xFF,0x48,0x48,0x7C,0x00},  //中

{0x18,0x24,0x42,0x21,0x42,0x24,0x18,0x00}  //心形

};

unsignedint timecount1 , timecount2;

unsignedchar cntx , cnty ;

void main(void)

{

cnty;

)

{

if(cnty<Lenth)//红色

{

P1=0xFF;

P2=tab[cntx];  // 列线

P0=digittab[cnty][cntx];   // 行线

}

else//绿色

{

P2=0xFF;

P1=tab[cntx];   // 列线

P0=digittab[cnty-Lenth][cntx];  // 行线

}

//用于控制动态扫描的速度

)

{

timecount1;

;

}

//用于控制动字符间的切换速度

)

{

timecount2;

;

}

}

}

实验8 LCD8*8点阵的更多相关文章

  1. matlab 整局-部视知觉实验(读取excel点阵设计图替换数据)

    -------给我那编程盲的女盆友,我怎么感觉是我选了一门课???做了这么多次作业,还是整理出来吧,要知道双鸭山大学心理系单身妹子还是很多啊. 整体-局部范式是心理学的经典实验之一.请尝试利用 MAT ...

  2. 单片机与控制实验(2)——LED点阵显示屏

    一.实验目的和要求 了解LED点阵显示的基本原理和实现方法.掌握点阵汉字库的编码和从标准字库中提取汉字编码的方法. 二.实验设备 单片机测控实验系统 LED点阵显示器实验模块 Keil开发环境 STC ...

  3. 玩转u8g2 OLED库 MAX7219_32X8点阵模块

    u8g2 OLED库 + MAX7219_32X8点阵模块 理论基础 玩转u8g2 OLED库,一篇就够 玩转u8g2 OLED库,一篇就够(字数太多 要分篇) 实验内容 Full screen bu ...

  4. [Micropython]TPYBoard v10x拼插编程实验 点亮心形点阵

    一.什么是TPYBoard开发板 TPYBoard是以遵照MIT许可的MicroPython为基础,由TurnipSmart公司制作的一款MicroPython开发板,它基于STM32F405单片机, ...

  5. 单片机与控制实验(5)——重量测量并在LCD12864显示

    一.实验目的和要求 掌握点阵式液晶显示屏的原理和控制方法,掌握点阵字符的显示方法.掌握模拟/数字(A/D)转换方式,进一步掌握使用C51语言编写程序的方法,使用C51语言编写实现重量测量的功能. 二. ...

  6. 基于Proteus仿真的Arduino学习(2)——LED点阵探究A(LED点阵基础)

    一.前言: 随着LED的普及,以LED点阵为基础的显示设置层出不穷.例如,公交车的线路提示牌.高速公路的信息提示牌,安装在大楼上的广告屏幕等.下面,我们将由简单到复杂地探索各种LED点阵的使用方法,同 ...

  7. 10-8位7段数码管驱动实验——小梅哥FPGA设计思想与验证方法视频教程配套文档

    芯航线--普利斯队长精心奉献   实验目的: 1.实现FPGA驱动数码管动态显示: 2.使用In system sources and probes editor工具,输入需要显示在数码管上的的数据, ...

  8. Verilog HDL那些事_建模篇笔记(实验九:VGA驱动)

    1.了解VGA协议 VGA协议有5个输入信号,列同步信号(HSYNC Signal),行同步信号(VSYNC Signal),红-绿-蓝,颜色信号(RGB Signal). 一帧屏幕的显示是由行从上至 ...

  9. 如何为编程爱好者设计一款好玩的智能硬件(七)——LCD1602点阵字符型液晶显示模块驱动封装(上)

    当前进展: 一.我的构想:如何为编程爱好者设计一款好玩的智能硬件(一)——即插即用.积木化.功能重组的智能硬件模块构想 二.别人家的孩子:如何为编程爱好者设计一款好玩的智能硬件(二)——别人是如何设计 ...

随机推荐

  1. Metasploit学习

    阶段一:初步渗透 GO! msfconsole 相关漏洞 msf > search platform: windows xp sp3 查看某个漏洞后,查看漏洞详细信息 msf > info ...

  2. CentOS 7安装配置Samba服务器

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  3. EasyUITree设置节点选中

    function callback1(){ reloadMind(); LoadTree0($("); setTimeout(function(){ var node = $('#tt1') ...

  4. 《C#从现象到本质》读书笔记(二)第2章 C#类型基础(上)

    <C#从现象到本质>读书笔记第二篇 第2章 C#类型基础(上) 类型指的是集合{类,结构,接口,枚举,委托}中的任意一个成员.任何拥有某类型的值(value)称为某类型的一个实例(inst ...

  5. log4j日志整合输出(slf4j+commonslog+log4j+jdklogger)

    log4j日志整合输出(slf4j+commonslog+log4j+jdklogger) 博客分类: 日志   J2EE项目中,经常会用到很多第三方的开源组件和软件,这些组件都使用各自的日志组件,比 ...

  6. 【Web】Nginx Rewrite规则

    Rewrite介绍 Rewrite主要的功能就是实现URL的重写,Nginx的Rewrite规则采用Pcre,perl兼容正则表达式的语法规则匹配,如果需要Nginx的Rewrite功能,在编译Ngi ...

  7. PHP递归函数

    递归函数(Recursive Function)是指直接或间接调用函数本身的函数 在每次调用自己时,必须是(在某种意义上)更接近 于解 必须有一个终止处理或计算的准则 function recursi ...

  8. 63.delegate回调 和block回调

    效果:viewController里面放置一个按钮和Lab,点击按钮进入oneViewController(delegate回调)或者BlockViewController(block回调),两者控制 ...

  9. Idea中如何将web项目打包成war包并放到tomcat中启动

    第一步:在idea中选中Artifacts.右侧勾选Build on make生成war包,如下图 第二步:将target文件夹里面的war包拷贝到tomcat文件下的webapp目录下 第三步:修改 ...

  10. 系统当前时间system.currenttimemillis与new Date().getTime() 区别

    system.currenttimemillis //取到毫秒数,并且执行效率高 new Date().getTime()没他精确