Difference between revisions of "4-Digital Display"

From
Jump to: navigation, search
(Code Exemple->DigitalTube->ClockDisplay)
(Caractéristiques)
Line 3: Line 3:
 
=== Caractéristiques ===
 
=== Caractéristiques ===
 
Grove compatible interface (3.3V/5V)<br>
 
Grove compatible interface (3.3V/5V)<br>
 +
 +
connect to D2/D3<br>
 
4 digit red alpha-numeric display<br>
 
4 digit red alpha-numeric display<br>
 
8 adjustable luminance levels
 
8 adjustable luminance levels

Revision as of 21:20, 11 February 2018

Grove - 4-Digital Displays (Seeed-Studio)

Caractéristiques

Grove compatible interface (3.3V/5V)

connect to D2/D3
4 digit red alpha-numeric display
8 adjustable luminance levels

Support

4-Digital Display recto.jpg 4-Digital Display verso.jpg 4-digit display interface.jpg

Drivers

chip - TM1637

Librairies

TimerOne library
4-Digit Display library
Four-Digit Display Suli Library

Voltage

3.3V ~ 5.5V

Code Exemple->DigitalTube->ClockDisplay

Copier les deux librairies dans C:\Program Files (x86)\Arduino\libraries, exécuter Arduino IDE, chercher l'exemple, choisir Arduino UNO, et le port COM

	//  Author:Frankie.Chu
	//  Date:9 April,2012

	#include <TimerOne.h>
	#include "TM1637.h"
	#define ON 1
	#define OFF 0

	int8_t TimeDisp[] = {0x00,0x00,0x00,0x00};
	unsigned char ClockPoint = 1;
	unsigned char Update;
	unsigned char halfsecond = 0;
	unsigned char second;
	unsigned char minute = 0;
	unsigned char hour = 12;


	#define CLK 2//pins definitions for TM1637 and can be changed to other ports    
	#define DIO 3
	TM1637 tm1637(CLK,DIO);

	void setup()
	{
	  tm1637.set();
	  tm1637.init();
	  Timer1.initialize(500000);//timing for 500ms
	  Timer1.attachInterrupt(TimingISR);//declare the interrupt serve routine:TimingISR  
	}
	void loop()
	{
	  if(Update == ON)
	  {
		TimeUpdate();
		tm1637.display(TimeDisp);
	  }
	  
	}
	void TimingISR()
	{
	  halfsecond ++;
	  Update = ON;
	  if(halfsecond == 2){
		second ++;
		if(second == 60)
		{
		  minute ++;
		  if(minute == 60)
		  {
			hour ++;
			if(hour == 24)hour = 0;
			minute = 0;
		  }
		  second = 0;
		}
		halfsecond = 0;  
	  }
	 // Serial.println(second);
	  ClockPoint = (~ClockPoint) & 0x01;
	}
	void TimeUpdate(void)
	{
	  if(ClockPoint)tm1637.point(POINT_ON);
	  else tm1637.point(POINT_OFF); 
	  TimeDisp[0] = hour / 10;
	  TimeDisp[1] = hour % 10;
	  TimeDisp[2] = minute / 10;
	  TimeDisp[3] = minute % 10;
	  Update = OFF;
	}


il affiche 02:21 et ensuite il modifié le 1er digit à un intervalle regulier

Liens internes

index wiki arduino
OLED Display 0.96 inches
OLED Display 1.12 inches


Liens externes

wiki ou http://www.seeedstudio.com/wiki/Grove_-_4-Digit_Display