V.0. 18/12/2016
rev . 30/4/2022

Test en mode Défilement horizontal , pixel par Pixel ,
sur 1 seul bloc de 4 matrices H


Protoype
Software initial (MikroC )
Mise en boite plexiglass (2022)
Caracteres spéciaux
Software revisé 2022
Videos

Usage d'entiers long 32 bits pour registres à decalage
Rendons à César ,ce qui est à César :
Fortement inspiré de l'appli sur Arduino mini Pro , testée ICI

Prototype Hardware :

Test avec BASE 18F26K22 ,
Test avec alimentaion 3,4V ,
1 module de 4 matrices 8x8 MAX7219 (connectique Horizontale), avec Entrées Pins sur la Gauche
Intensité lumineuse minimale



Consommation : 17mA toutes leds eteintes, ~200mA toutes leds allumées, sinon en mode dynamique 35 à 38mA
.. mais les 2 piles AA ne tiennnent pas plus de 3 jours !



ATTENTION , testé avec CE MODULE !
car il existe plusieurs versions , copies, avec comportement différents !

images/t_Module_mini_horloge_4digit_2020.gif

Liaison SPI avec le module 4 Matrices
// SPI bit BANG
sbit SPI_CLOCK at LATC0_bit;
sbit SPI_CLOCK_Dir at TRISC0_bit;
sbit SPI_CS at LATC1_bit;
sbit SPI_CS_Dir at TRISC1_bit;
sbit SPI_DOUT at LATC2_bit;
sbit SPI_DOUT_Dir at TRISC2_bit;


Liaison OWS pour sonde de temperature DS18B20
#define OWS_Pin_Sensor_A &PORTA,0 // sensor A DS18B20 #1 OWS
capteur #FF640B1D1EC

Liaison UART 19200,8,N,1 <-> Terminal YAT
TX RC6
RX RC7


Affichage STATIQUE ou Dynamique DEFILANT

L'affichage Défilant se fait bien en entrant pixel par pixel , de la droite vers la gauche ... OK

Cdes possibles ( si un HC06 est connécté sur les pins de sortie UART de la carte !)

  RTC Update: U;14;05;18;15;36;01;#<CR>\r\n");
  exemple pour :14 Mai 2018 01(Lundi) 15H36\r\n");
  Plage Luminosité Minimale PLM=18:06<CR>\r\n");
  Speed=xx  vitesse de defilement xx de 02 à 99 <CR>\r\n");
  Msg=x...x de 0 à 63 caracteres , si >0 , Affiche le message x...x pendant x Rep <CR>\r\n");
  et affichage Time reduit, pas d'info temperatures pendant le Msg Affiché <CR>\r\n");
  Rep=xx de 04 à 99 :Repetition du Msg pendant xx Cycles  <CR>\r\n");
  Lum=xx de 00 à 15 :Reglage Luminosité en mode JOUR  <CR>\r\n");
  Temp.Exterieur : capteur DISTANT, géré par PIC12F1840, envoi via bluetooth Maitre RN41 \r\n")


SOFTWARE :
old version : 08/05/2020
Projet MikroC zippé:
Horloge_2020_Defil_4_Matrice8x8_H_96bits_DS3231_DS18B20_HC05_18F26K22_RN41_2020_0805.zip

Eeprom stockage



Mise en boitier Plexiglass
30/04/2022
Boite plexiglass 5 Five Selena avec couvercle bois( ~8€)
160x96x50mm e=3mm et couvercle bois e=5mm
J'utilise cette boite ..à l'envers .. le couvercle devient un socle
Fixation entre le couvercle en plexigall et le socle en bois via 2 tiges filetées de dia 3mm L=55mm
+ 4 tampons feutres ..sous le socle bois .

La platine de Base PIC 18F26K22 est vissée sur le socle en bois
La RTC DS3231 est maintenue aussi par 2 vis sur le socle en bois
Domino de raccord entre cable USB 5V et entrée module ASM117 , Vissé sur le socle
Le module ASM117 3,3V est collé ( Pistolet à colle)
Le module bloc de 4 ( MAX7219 + bloc leds 8x8) rentre de force ,et maintenu plaqué par un morceau de mousse.
Un morceau de plastique (classeur) semi-transparent marron , est placé devant les afficheurs pour augmenter la diffusion de lumiere.....moins agressive !

images/t_Mise_en_boite_Mini_Horloge_defilante_4xMAX7219_2022-04.gifimages/t_Mini_Horloge_defilante_4xMAX7219_run_en_Boite_Plexi_2022-04.gif



Reperage Cablage interne :

RTC MAX7219
Bleu 1Hz out Bleu Clock
Blanc SCL Violet Cs
Gris SDA Blanc Din
Rouge +Vcc Noir Gnd
Bleu Gnd Blanc Vcc

Nota : il faut bien unBloc d'alim. 230V/USB 5V de 2A minimum pour pouvoir démarrer correctement le programme..
.. car fort appel des afficheurs ..tous les leds sont éclairées..puis test 0123 ...puis test defilement ..puis affichage horloge


Rev Mai 2022 :

// suite ...mise en boitier plexi le 29-04-2022
// modifs :
// 1seule sonde temp DS18B20
// Speed uart 9600-> 115200
// reduction taille des text : jour, mois
// supprimé affichage année
// supprimé sonde B
// rajout caractere special t=
// modif valeur eeprom .............. pour avoir un rafraichissement plus rapide de la vision : Heure

Affichage sur terminal YAT (UART)






Caracteres speciaux
matrice Leds 8x8 (pour Max7219)

images/t_Chars_Speciaux_matrice_8x8.gif
T= dans un seul caractere °C dans un seul caractere Caracteres_speciaux_MAX7219.xls


utilisés dans :

void remplis_buffer_with_string(char *pp)
{
int ix,j,k,m;
unsigned char c1,cx;
unsigned char *Dp;
Dp=OFFSET;
j=0;
m=0;
for (j=0;j<12;j++)
{
c1=*(pp+j);
switch (c1)
{

case '°' : //
176
for (ix=0;ix<8;ix++)
{
cx=
Lettre_Degre_C[ix];
m= (j*8 )+ ix;
*(Dp+m)=cx;
}
break;
case
177 :
for (ix=0;ix<8;ix++)
{
cx=
Lettre_TemperEgal[ix];
m= (j*8 )+ ix;
*(Dp+m)=cx;
}
break;
default :
if (c1==';')c1=' ' ;
k=c1*8;
for (ix=0;ix<8;ix++)
{
cx=
fonte_8x8_H[k+ix];
m= (j*8 )+ ix;
*(Dp+m)=cx;
}
break;
} //switch

} // for j
}



Projet MikroC 7.60 pro complet :
_Horloge_mini_4_matrices_H_8x8_defilt_96bits_asm_18F26K22_2022-05.zip
Chargeur : Mini_Horloge_2022_Defil_4_Matrice8x8_DS3231_DS18B20_HC05_18F26K22_2022_05.hex
Biblio : Tiny_RTC_DS3231_for_AI2_2020_07.mcl
Source : Mini_Horloge_1bloc_4_Matrices_8x8_18F26K22_1xOWS_HC05_2022_0501.c
Eeprom : Mini_Horloge_2022_Defil_4_Matrice8x8_DS3231_DS18B20_HC05_18F26K22_2022_05.ihex



Videos :
18F26K22__test_Defil_4_Matrice_8x8H_2020_0606.webm
Simple_Horloge_Defl_4_Matrices_2020_08.webm
Mini_Horloge_en_boite_running_2022-0501.webm





Lien vers version Arduino (mini Pro. Simple)



paulfjujo@free.fr