查看SKU:RB-05L009 8*8點陣模塊的源代碼
←
SKU:RB-05L009 8*8點陣模塊
跳轉(zhuǎn)至:
導航
、
搜索
因為以下原因,你沒有權限編輯本頁:
您剛才請求的操作只有這個用戶組中的用戶才能使用:
用戶
您可以查看并復制此頁面的源代碼:
<br/> [[文件:ewg1.jpg|500px|有框|右]] ==產(chǎn)品概述 == 還在為驅(qū)動點陣連接復雜的接線煩惱嗎?還在為 Arduino 控制器屈指可數(shù)的 I/O 資源犯愁嗎?2013 最新推出的 8X8 LED Matrix Module v1.0 點陣模塊是哈爾濱奧松機器人科技有限公司研發(fā)的一款易安裝、易連接、可拓展的 8X8 點陣模塊。此模塊采用高速的 74HC595 串并轉(zhuǎn)換芯片。SPI 接口,僅需要 3 根信號線即可驅(qū)動多塊 8x8 點陣屏,最大限度的節(jié)省您寶貴的 Arduino 控制器 I/O 資源。行列信號全部傳輸完畢后再更新顯示,顯示亮麗,可靠性高。適合于 Arduino 控制器、STC 單片機、AVR 單片機等。 ==規(guī)格參數(shù)== # 產(chǎn)品名稱:8*8點陣模塊 # 產(chǎn)品貨號:RB - 05L009 # 工作電壓:DC 5V # 接口類型:SPI # 產(chǎn)品類型:顯示輸出 # 制作工藝:FR4雙面噴錫 # 固定孔尺寸:3.2 mm # 對角固定孔間距:22.67 mm # 固定孔距板邊緣:7.93 mm # 人性化設計:可級聯(lián)應用顯示 # 工作溫度:10℃-30℃ # 工作濕度:10%~90% 無凝結 # 重量:12g # 產(chǎn)品尺寸:32mm x 32mm x 23mm ==使用方法== ===工作原理=== 通過 74HC595 移位寄存器連接 8*8 點陣液晶模塊,模塊與單片機之間使用 SPI 進行通信,只需要占用三個IO接口,兩片 74HC595 模塊使用級聯(lián)的方式連接,實現(xiàn)串行輸入并行輸出,來控制點陣液晶。 ===編程原理=== 本例子程序中需要使用一個擴展程序語句,介紹如下:<br/> * shiftOut()語句 描述:將一個數(shù)據(jù)的一個字節(jié)一位一位的移出。從最高有效位(最左邊)或最低有效位(最右邊)開始。依次向數(shù)據(jù)腳寫入每一位,之后時鐘腳被拉高或拉低,指示剛才的數(shù)據(jù)有效。<br/> 語法:<br/> shiftOut(dataPin, clockPin, bitOrder, value)<br/> 參數(shù):<br/> * dataPin:輸出每一位數(shù)據(jù)的引腳(int) * clockPin:時鐘腳,當dataPin有值時此引腳電平變化(int) * bitOrder:輸出位的順序,最高位優(yōu)先或最低位優(yōu)先 * value: 要移位輸出的數(shù)據(jù)(byte) 注意:<br/> dataPin和clockPin要用pinMode()配置為輸出。 shiftOut目前只能輸出1個字節(jié)(8位),所以如果輸出值大于255需要分兩步。<br/> <pre style='color:blue'> //最高有效位優(yōu)先串行輸出 int 數(shù)據(jù)= 500; //移位輸出高字節(jié) shiftOut(dataPin, clock, MSBFIRST, (data >> 8)); //移位輸出低字節(jié) shiftOut(data, clock, MSBFIRST, data); //最低有效位優(yōu)先串行輸出 data = 500; //移位輸出低字節(jié) shiftOut(dataPin, clock, LSBFIRST, data); //移位輸出高字節(jié) shiftOut(dataPin, clock, LSBFIRST, (data >> 8)); </pre> ===實驗例程=== ====使用硬件==== * [http://gharee.com/goods-546.html Carduino UNO R3 控制器] * 1個 * [http://gharee.com/goods-147.html Carduino UNO 傳感器擴展板 v5.0] * 1個 * [http://gharee.com/goods-107.html 8 * 8 LED Matrix Module v1.0] * 1個 * [http://gharee.com/goods-107.html 3P 通用連接線] * 1條 * 2P 電源線 * 1組 * [http://gharee.com/goods-90.html USB 數(shù)據(jù)通信線] * 1條 ====接線方法==== 通過 SPI 通信方式中的 DIN、CLK、LTH 對 LED 點陣進行控制。DIN 為數(shù)據(jù),CLK為時鐘,LTH 為鎖存。 將 8 * 8 點陣模塊的 DIN、CLK、LTH 分別連接到 Arduino 傳感器擴展板的數(shù)字 4、5、6 引腳,VCC、GND 分別連接到傳感器擴展板的任意一個 V、G 端口。最后連接Arduino 控制器至計算機。 如下圖所示: 整體連接圖: [[文件:02L00901.png|500px|有框|居中]] 接線細節(jié)圖: [[文件:02L00902.png|700px|有框|居中]] ====例子程序1==== <pre style='color:blue'> //Pin connected to ST_CP of 74HC595 int latchPin = 6;//定義LTH引腳為D6 //Pin connected to SH_CP of 74HC595 int clockPin = 5;//定義CLK引腳為D5 //Pin connected to DS of 74HC595 int dataPin = 4;//定義DIN引腳為D4 int tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; void setup() { //set pins to output because they are addressed in the main loop pinMode(latchPin, OUTPUT); pinMode(clockPin, OUTPUT); pinMode(dataPin, OUTPUT); } void loop() { for(int i = 0; i < 8; i++){ for(int j = 0; j < 8; j++){ digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, tab[i]);//掃描顯示每一列 shiftOut(dataPin, clockPin, LSBFIRST, 0xff); //將行顯示設置為低電平 digitalWrite(latchPin, HIGH); delay(50); } } for(int i = 0; i < 8; i++){ for(int j = 0; j < 8; j++){ digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, 0x00);//將列顯示設置為高電平 shiftOut(dataPin, clockPin, LSBFIRST, tab[i]); //掃描顯示每一行 digitalWrite(latchPin, HIGH); delay(50); } } } </pre> ====程序1效果==== 點陣液晶分別以行掃描和列掃描顯示 ====例子程序2==== <pre style='color:blue'> const int DINPin = 4; //數(shù)據(jù)引腳 連接到數(shù)字P4口 const int CLKPin = 5; //時鐘引腳 連接到數(shù)字P5口 const int LTHPin = 6; //鎖存引腳 連接到數(shù)字P6口 byte LieScan[16] = { //列掃描,點陣只點亮一列 0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F }; byte HanZi_1[] = { 0x1c,0x7c,0x7e,0x3f,0x3f,0x7e,0x7c,0x1c //顯示心形圖案 }; void setup() { pinMode(DINPin,OUTPUT); //設置數(shù)據(jù)引腳為輸出 pinMode(CLKPin,OUTPUT); //設置鎖存引腳為輸出 pinMode(LTHPin,OUTPUT); //設置時鐘引腳為輸出 } void loop() { for(unsigned char times_1 = 0;times_1 <250;times_1++) { //持續(xù)刷新250次 for(char x = 0;x <8;x++) { shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]); //先選擇列 shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]); //再送行數(shù)據(jù) digitalWrite(LTHPin, LOW); //刷新顯示 digitalWrite(LTHPin, HIGH); } } } </pre> ====程序2效果==== 點陣液晶屏顯示為心形圖案 ====例子程序3==== <pre style='color:blue'> const int DINPin = 4; //數(shù)據(jù)引腳 連接到數(shù)字P4口 const int CLKPin = 5; //時鐘引腳 連接到數(shù)字P5口 const int LTHPin = 6; //鎖存引腳 連接到數(shù)字P6口 byte LieScan[16] = { //列掃描,點陣只點亮一行 0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F }; byte HanZi_1[] = { 0x04,0xFA,0x89,0xBA,0xC0,0x1C,0x40,0xFF //創(chuàng) }; byte HanZi_2[] = { 0x4A,0xAE,0xFB,0x2E,0x4A,0xFC,0x0A,0xF9 //新 }; byte HanZi_3[] = { 0x04,0x02,0x24,0x40,0x40,0x24,0x02,0x04 //^_^ }; void setup() { pinMode(DINPin,OUTPUT); //設置數(shù)據(jù)引腳為輸出 pinMode(CLKPin,OUTPUT); //設置鎖存引腳為輸出 pinMode(LTHPin,OUTPUT); //設置時鐘引腳為輸出 } void loop() { for(unsigned char times_1 = 0;times_1 <250;times_1++) { //持續(xù)刷新250次 for(char x = 0;x <8;x++) { shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]); //先選擇列 shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]); //再送行數(shù)據(jù) digitalWrite(LTHPin, LOW); //刷新顯示 digitalWrite(LTHPin, HIGH); } } for(unsigned char times_2 = 0;times_2 <250;times_2++) { //持續(xù)刷新250次 for(char x = 0;x <8;x++) { shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]); //先選擇列 shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_2[x]); //再送行數(shù)據(jù) digitalWrite(LTHPin, LOW); //刷新顯示 digitalWrite(LTHPin, HIGH); } } for(unsigned char times_3 = 0;times_3 <250;times_3++) { //持續(xù)刷新250次 for(char x = 0;x <8;x++) { shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]); //先選擇列 shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_3[x]); //再送行數(shù)據(jù) digitalWrite(LTHPin, LOW); //刷新顯示 digitalWrite(LTHPin, HIGH); } } } </pre> ====程序3效果==== 在 8 * 8 LED Martix Module模塊上輪流顯示“創(chuàng) 新 ^_^” ==產(chǎn)品相關推薦== [[文件:erweima.png|230px|無框|右]] ===購買地址=== [http://gharee.com/goods-107.html 8*8點陣模塊] ===周邊產(chǎn)品推薦=== [http://gharee.com/goods-128.html Arduino LCD12864 點陣液晶擴展板 12864液晶屏] <br/> [http://gharee.com/goods-127.html Arduino 12864點陣液晶 51單片機] ===相關問題解答=== [http://www.makerspace.cn/forum.php?mod=viewthread&tid=3052&highlight=%E7%82%B9%E9%98%B5 8*8點陣模塊桃心呼吸燈效果 求助]<br/> [http://www.makerspace.cn/forum.php?mod=viewthread&tid=2762&highlight=%E7%82%B9%E9%98%B5 8x8點陣程序燒進去,顯示的圖案沒有規(guī)律] ===相關學習資料=== [http://pan.baidu.com/s/13jrx3 用戶手冊]<br/> [http://www.makerspace.cn/portal.php 奧松機器人技術論壇]
返回
SKU:RB-05L009 8*8點陣模塊
。
來自“
http://gharee.com/wiki/index.php/SKU:RB-05L009_8*8點陣模塊
”
導航菜單
個人工具
登錄
名字空間
頁面
討論
變換
查看
閱讀
查看源代碼
查看歷史
操作
搜索
導航
首頁
社區(qū)專頁
新聞動態(tài)
最近更改
隨機頁面
工具箱
鏈入頁面
相關更改
特殊頁面
頁面信息
隱私政策
關于ALSROBOT WiKi
免責聲明