4位數碼管模塊
從 YFRobotwiki
創建縮圖錯誤: 檔案似乎遺失:
產品簡介
4位數碼管模塊是採用TM1650專用數碼管驅動芯片驅動4位0.56英寸數碼管。模塊提供小數點、時鐘兩種模式可選擇,採用PH2.0-4P接口/XH2.54-4P排針接口,配合專用傳感器線使用方便接線;且有M3安裝柱可選配,方便固定。
TM1650 是專用的數碼管驅動芯片,多可以驅動4個8段數碼管,2線控制接口,節省單片機端口資源。通過芯片內部的寄存器可以設置顯示的位數和顯示的亮度,8級亮度可調。
將4位數碼管模塊加入項目中,可用來顯示數值、時鐘等信息。
規格參數
- 數碼管:0.56 英寸,4 位
- 驅動IC:TM1650
- 工作電壓 3V~5V
- 工作溫度:-40℃~80℃
- 亮度等級:8 級亮度可設置
- 模塊尺寸:50.5mm * 19.5mm
- 安裝孔:3mm
- 安裝孔中心距:42mm * 12mm
- 模塊重量:3.8g
引腳說明
- 1. GND 黑線 -- Gnd(地)
- 2. VCC 紅線 -- Vcc(電源+5V)
- 3. CLK 藍線 -- 信號
- 3. DIO 白線 -- 信號
應用示例
電路連接
4位數碼管顯示模塊 | Arduino UNO |
VCC | +5V |
GND | GND |
CLK | D10 |
DIO | D11 |
電路連接示意圖
提示:以下程序需使用到 TM1650庫文件。下載後將其解壓至arduinoIDE安裝目錄/libraries文件夾中,例如: "D:\Program Files\Arduino\arduino-1.6.4-windows\arduino-1.6.4\libraries"。
示例代碼
示例一:4位數碼管顯示測試
/* 8-segment display driver of YFRobot 4-bit digital tube module based on TM1650 chip Created by yfrobot,Released into the public domain. */ #include <YFTM1650.h> YFTM1650 YF_4BitDis(10, 11); void setup() { Serial.begin(38400); //Start serial communication at 9600 for debug statements Serial.println("YFRobot TM1650 Example Code"); YF_4BitDis.init(); } void loop() { YF_4BitDis.setBrightness(1); YF_4BitDis.displayString(String("____")); delay(1000); char line[] = "1234"; YF_4BitDis.displayString(line); YF_4BitDis.setBrightness(7); for (int i = 1; i <= 8; i++) { YF_4BitDis.setBrightness(i); delay(200); } for (int i = 1; i <= 8; i++) { YF_4BitDis.setBrightness(8 - i); delay(200); } YF_4BitDis.displayString(-1.235); delay(1000); YF_4BitDis.displayString(12.10); delay(1000); YF_4BitDis.displayString(String("abcd")); delay(2000); YF_4BitDis.displayString(2020); delay(2000); if (YF_4BitDis.displayRunning(String("1234567890abcdefghijklmnop"))) { delay(500); while (YF_4BitDis.displayRunningShift()) { delay(500); } } delay(2000); for (int i = 0; i < 20; i++) { YF_4BitDis.displayOff(); delay(200); YF_4BitDis.displayOn(); delay(200); } for (int i = 0; i < 20; i++) { YF_4BitDis.setBrightness(1); delay(200); YF_4BitDis.setBrightness(8); delay(200); } for (int i = 0; i < 20; i++) { for (int j = 0; j < 4; j++) { YF_4BitDis.setDot(j, true); delay(200); } for (int j = 0; j < 4; j++) { YF_4BitDis.setDot(j, false); delay(200); } } }
程序下載地址:TM1650
程序運行結果:根據顯示效果看程序,更方便理解
參考資料
更多建議和問題歡迎反饋至 YFRobot論壇
購買方式:YFRobot 電子工作室