21.点阵实验
来源:互联网 发布:linux 目录下文件个数 编辑:程序博客网 时间:2024/05/11 03:50
实验现象:
利用8*8点阵显示出心跳动画。
理论学习:
本套件配备点阵为共阳点阵(行控制为LED阳极)。代码仅适用于共阳点阵。
共阳共阴的区分就是看第一个引脚的极性。
有字的那一面,左边第一个就是引脚1
共阳点阵的引脚图。
程序代码:
#define H1 2 //1088BX 行是阳极#define H2 7#define H3 A5#define H4 5#define H5 13#define H6 A4#define H7 12#define H8 A2 #define L1 6#define L2 11#define L3 10#define L4 3#define L5 A3#define L6 4#define L7 8#define L8 9 unsigned char table1[8][8] = //大“心型”的数据{ 0,0,0,0,0,0,0,0, 0,1,1,0,0,1,1,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 0,1,1,1,1,1,1,0, 0,0,1,1,1,1,0,0, 0,0,0,1,1,0,0,0,}; unsigned char table2[8][8] = //小“心型”的数据{ 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,1,0,0,1,0,0, 0,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,0, 0,0,1,1,1,1,0,0, 0,0,0,1,1,0,0,0, 0,0,0,0,0,0,0,0,}; void setup(){ pinMode(H1,OUTPUT); //1088BX 行是阳极 pinMode(H2,OUTPUT); pinMode(H3,OUTPUT); pinMode(H4,OUTPUT); pinMode(H5,OUTPUT); pinMode(H6,OUTPUT); pinMode(H7,OUTPUT); pinMode(H8,OUTPUT); pinMode(L1,OUTPUT); pinMode(L2,OUTPUT); pinMode(L3,OUTPUT); pinMode(L4,OUTPUT); pinMode(L5,OUTPUT); pinMode(L6,OUTPUT); pinMode(L7,OUTPUT); pinMode(L8,OUTPUT);} void loop(){ for(int i = 0 ; i < 100 ; i++) //循环显示100次 { Display(table1); //显示大”心形“ } for(int i = 0 ; i < 50 ; i++) //循环显示50次 { Display(table2); //显示小“心形” }} void Display(unsigned char dat[8][8]) //显示函数{ digitalWrite(L1,LOW); //选通第一列 digitalWrite(H1,dat[0][0]); digitalWrite(H2,dat[1][0]); digitalWrite(H3,dat[2][0]); digitalWrite(H4,dat[3][0]); digitalWrite(H5,dat[4][0]); digitalWrite(H6,dat[5][0]); digitalWrite(H7,dat[6][0]); digitalWrite(H8,dat[7][0]); delay(1); //延时一小段时间,等待LED被点亮 Clear(); //清空显示去除余晖 digitalWrite(L2,LOW); //选通第二列 digitalWrite(H1,dat[0][1]); digitalWrite(H2,dat[1][1]); digitalWrite(H3,dat[2][1]); digitalWrite(H4,dat[3][1]); digitalWrite(H5,dat[4][1]); digitalWrite(H6,dat[5][1]); digitalWrite(H7,dat[6][1]); digitalWrite(H8,dat[7][1]); delay(1); Clear(); digitalWrite(L3,LOW); //选通第三列 digitalWrite(H1,dat[0][2]); digitalWrite(H2,dat[1][2]); digitalWrite(H3,dat[2][2]); digitalWrite(H4,dat[3][2]); digitalWrite(H5,dat[4][2]); digitalWrite(H6,dat[5][2]); digitalWrite(H7,dat[6][2]); digitalWrite(H8,dat[7][2]); delay(1); Clear(); digitalWrite(L4,LOW); //选通第四列 digitalWrite(H1,dat[0][3]); digitalWrite(H2,dat[1][3]); digitalWrite(H3,dat[2][3]); digitalWrite(H4,dat[3][3]); digitalWrite(H5,dat[4][3]); digitalWrite(H6,dat[5][3]); digitalWrite(H7,dat[6][3]); digitalWrite(H8,dat[7][3]); delay(1); Clear(); digitalWrite(L5,LOW); //选通第五列 digitalWrite(H1,dat[0][4]); digitalWrite(H2,dat[1][4]); digitalWrite(H3,dat[2][4]); digitalWrite(H4,dat[3][4]); digitalWrite(H5,dat[4][4]); digitalWrite(H6,dat[5][4]); digitalWrite(H7,dat[6][4]); digitalWrite(H8,dat[7][4]); delay(1); Clear(); digitalWrite(L6,LOW); //选通第六列 digitalWrite(H1,dat[0][5]); digitalWrite(H2,dat[1][5]); digitalWrite(H3,dat[2][5]); digitalWrite(H4,dat[3][5]); digitalWrite(H5,dat[4][5]); digitalWrite(H6,dat[5][5]); digitalWrite(H7,dat[6][5]); digitalWrite(H8,dat[7][5]); delay(1); Clear(); digitalWrite(L7,LOW); //选通第七列 digitalWrite(H1,dat[0][6]); digitalWrite(H2,dat[1][6]); digitalWrite(H3,dat[2][6]); digitalWrite(H4,dat[3][6]); digitalWrite(H5,dat[4][6]); digitalWrite(H6,dat[5][6]); digitalWrite(H7,dat[6][6]); digitalWrite(H8,dat[7][6]); delay(1); Clear(); digitalWrite(L8,LOW); //选通第八列 digitalWrite(H1,dat[0][7]); digitalWrite(H2,dat[1][7]); digitalWrite(H3,dat[2][7]); digitalWrite(H4,dat[3][7]); digitalWrite(H5,dat[4][7]); digitalWrite(H6,dat[5][7]); digitalWrite(H7,dat[6][7]); digitalWrite(H8,dat[7][7]); delay(1); Clear();} void Clear() //清空显示{ digitalWrite(H1,LOW); digitalWrite(H2,LOW); digitalWrite(H3,LOW); digitalWrite(H4,LOW); digitalWrite(H5,LOW); digitalWrite(H6,LOW); digitalWrite(H7,LOW); digitalWrite(H8,LOW); digitalWrite(L1,HIGH); digitalWrite(L2,HIGH); digitalWrite(L3,HIGH); digitalWrite(L4,HIGH); digitalWrite(L5,HIGH); digitalWrite(L6,HIGH); digitalWrite(L7,HIGH); digitalWrite(L8,HIGH);}
0 0
- 21.点阵实验
- 点阵
- 单片机实验——8X8LED点阵显示技术
- Arduino系列教程-019 8x8点阵实验
- 3.1.第九个实验--LED点阵数据手册和原理图分析
- 西电数电实验考试--8x8点阵显示汉…
- 单片机实验——8X8LED点阵显示技术(二)
- 点阵字库
- LED点阵
- RGB 点阵
- 点阵字库
- 移动点阵
- 点阵字库
- STM32点阵
- LED点阵
- LED点阵
- 点阵屏
- 四极管 点阵屏控制 AVR 静态点阵
- 使用excel日期函数生成指定格式日期
- mysql不支持远程连接的解决办法(#1130 - Host 'localhost' is not allowed to connect to this MySQL server)
- jdk环境变量配置问题
- -128___1000 0000
- c++参数管理
- 21.点阵实验
- ZOJ 1924 Frogger
- 一个女程序员的故事
- Hibernate 事件监听
- S5PV210(TQ210)学习笔记——内核移植与文件系统构建--如果我早看到这篇文章就好了,会省很多事
- 在SSH中的DAO包里的内容大家都是怎么写的??
- ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务
- JDBC事务管理
- 关于fragment切换重新加载的解决分享给大家