树莓派_字母板的使用
2013-06-23 14:48
183 查看
一、实验目的
熟悉字母板
二、实验内容
用LED矩阵实现一个字母板,由RPi程序显示不同的字母和符号。PS:又采购了一批小字母板,每个人可以有一个,找 你们的TA去拿
三、主要仪器设备
1. RPI
2. 移动电源
3. Win7 PC机一台
4. 面包板
5. 面包线、杜邦线
6. 字母板
四、操作方法和实验步骤
1.安装wiringPi库
使用git工具下载wiringPi
查询当前目录下的wiringPi,并进入该目录,使用build命令安装
验证,已安装!
2.电路设计
实际上电路是按顺序接的:
电路接线
电路接线
3.实验代码
输出设计为:
程序中各写操作对应:
列的0值表示亮,1值表示暗。
行的0值表示暗,1值表示亮。
欲控制某行某列点亮,必须该行值为1和该列值为0。
以下是全暗的例子:
digitalWrite(0, 0); 行8
digitalWrite(1, 1); 列5
digitalWrite(2, 1); 列3
digitalWrite(3, 0); 行5
digitalWrite(4, 1); 列8
digitalWrite(5, 0); 行7
digitalWrite(6, 1); 列2
digitalWrite(7, 1); 列1
digitalWrite(8, 0); 行6
digitalWrite(9, 0); 行3
digitalWrite(10, 1); 列4
digitalWrite(11, 0); 行1
digitalWrite(12, 1); 列6
digitalWrite(13, 1); C7
digitalWrite(14, 0); 行2
digitalWrite(15, 0); 行4
4.实验结果
复制代码至树莓派,ls查看
编译代码
运行后效果如下
实际上屏幕一直在M和J来回跳动,MJ即满绩。。。。
具体效果请看下面一段视频:
http://v.youku.com/v_show/id_XNTc0MzYyOTE2.html
熟悉字母板
二、实验内容
用LED矩阵实现一个字母板,由RPi程序显示不同的字母和符号。PS:又采购了一批小字母板,每个人可以有一个,找 你们的TA去拿
三、主要仪器设备
1. RPI
2. 移动电源
3. Win7 PC机一台
4. 面包板
5. 面包线、杜邦线
6. 字母板
四、操作方法和实验步骤
1.安装wiringPi库
使用git工具下载wiringPi
查询当前目录下的wiringPi,并进入该目录,使用build命令安装
验证,已安装!
2.电路设计
实际上电路是按顺序接的:
电路接线
电路接线
3.实验代码
输出设计为:
程序中各写操作对应:
列的0值表示亮,1值表示暗。
行的0值表示暗,1值表示亮。
欲控制某行某列点亮,必须该行值为1和该列值为0。
以下是全暗的例子:
digitalWrite(0, 0); 行8
digitalWrite(1, 1); 列5
digitalWrite(2, 1); 列3
digitalWrite(3, 0); 行5
digitalWrite(4, 1); 列8
digitalWrite(5, 0); 行7
digitalWrite(6, 1); 列2
digitalWrite(7, 1); 列1
digitalWrite(8, 0); 行6
digitalWrite(9, 0); 行3
digitalWrite(10, 1); 列4
digitalWrite(11, 0); 行1
digitalWrite(12, 1); 列6
digitalWrite(13, 1); C7
digitalWrite(14, 0); 行2
digitalWrite(15, 0); 行4
#include <stdio.h> #include <wiringPi.h> #include <stdlib.h> int main(int argc,char * argv[]){ struct timeval t_start,t_end; int pin, flag, i; long percent, time, cost_time; wiringPiSetup ();//³õʼ»¯Ð´¿Ú for (pin = 0 ; pin < 16; ++pin) { pinMode (pin, OUTPUT) ; } while(1)//Ñ»·Êä³ö { i=0; while(i < 250) //Ñ»·Êä³öM { if(i % 5 == 0) //Êä³öµÚÒ»ÁÐ { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 1); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 0); digitalWrite(7, 1); digitalWrite(8, 1); digitalWrite(9, 1); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 1); } if(i % 5 == 1) //Êä³öµÚ¶þÁÐ { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 0); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 0); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } if(i % 5 == 2) { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 1); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 1); digitalWrite(9, 1); digitalWrite(10, 0); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 1); } if(i % 5 == 3) { digitalWrite(0, 0); digitalWrite(1, 0); digitalWrite(2, 1); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 0); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } if(i % 5 == 4) { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 1); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 1); digitalWrite(9, 1); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 0); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 1); } i++; delay(3); } //È«°µ£¬Çø·ÖÁ½¸ö×Öĸ digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 0); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 0); digitalWrite(15, 0); delay(100); i = 0; while(i < 250){ if(i % 5 == 0) //Êä³öµÚÒ»ÁÐ { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 0); digitalWrite(7, 1); digitalWrite(8, 1); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } if(i % 5 == 1) //Êä³öµÚ¶þÁÐ { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 0); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } if(i % 5 == 2) { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 1); digitalWrite(4, 1); digitalWrite(5, 1); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 1); digitalWrite(9, 1); digitalWrite(10, 0); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 1); } if(i % 5 == 3) { digitalWrite(0, 0); digitalWrite(1, 0); digitalWrite(2, 1); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 0); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 1); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } if(i % 5 == 4) { digitalWrite(0, 0); digitalWrite(1, 1); digitalWrite(2, 1); digitalWrite(3, 0); digitalWrite(4, 1); digitalWrite(5, 0); digitalWrite(6, 1); digitalWrite(7, 1); digitalWrite(8, 0); digitalWrite(9, 0); digitalWrite(10, 1); digitalWrite(11, 0); digitalWrite(12, 0); digitalWrite(13, 1); digitalWrite(14, 1); digitalWrite(15, 0); } i++; delay(3); } } return 0; } |
复制代码至树莓派,ls查看
编译代码
运行后效果如下
实际上屏幕一直在M和J来回跳动,MJ即满绩。。。。
具体效果请看下面一段视频:
http://v.youku.com/v_show/id_XNTc0MzYyOTE2.html
相关文章推荐
- 使用循环把26个大写英文字母按照字…
- 在没有显示器和IP未知的情况下如何使用树莓派
- 在Ubuntu环境下用QT5开发树莓派的GPIO程序(使用wiringPi库)之一 搭建环境
- 树莓派第一次使用
- 树莓派第一次使用(笔记本+网线)
- 使用树莓派控制4路继电器
- latex中使用bm包加粗公式中的字母
- pinyin4j 使用 获取第一个汉子的首字母,获取汉子拼音
- 树莓派:开机使用
- 树莓派学习笔记——UART使用
- 只能使用字母、数字、-连字符、_下划线,不超过150个字符
- 树莓派开发系列教程2——树莓派上手使用
- 使用PHP把下划线分隔命名的字符串 转换成驼峰式命名方式 , 把下划线后面的第一个字母变成大写
- 使用树莓派GPU
- 字符串训练02—给一个字符串,有大小写字母,要求写一个函数把小写字母放在前面 大写字母放在后面,尽量使用最小空间,时间复杂度。(即用指针做)。 如:aAbBcCdD ---àabcdABCD
- 树莓派UBUNTU sever使用mjpg-streamer传输图像调试
- 树莓派使用uart串口与串口设备通信
- 树莓派使用USB摄像头和motion实现监控
- MySQL中文汉字转拼音的自定义函数和使用实例(首字的首字母)
- [Windows/MacOSX]_初级_[在英文环境下不使用软键盘输入希腊字母]