*******************************************************************************

Zones mémoires en EEprom

*******************************************************************************

------------------------------------

Zone mémoire pour la gestion du menu

------------------------------------

Variables de 37 octets de longueur soit:

16 octets pour la Ligne1 LCD

16 octets pour la Ligne2 LCD

 1 octet pour la Position Curseur

 1 octet pour l'Action --> ( Molette sens horloger = 128)

 1 octet pour l'Action <-- ( Molette sens anti-horloger = 129)

 1 octet pour l'Action Return ( Bouton )

 1 octet pour l'Indice Variable,

ceci nous donne 37 octets X 59 fenêtres = 2183 octets



Fichier "MENU": 



   +----------------+----------------+------+------+------+------+------+

   |   16 octets    |   16 octets    | 1 oct| 1 oct| 1 oct| 1 oct| 1 oct|   

+--+----------------+----------------+------+------+------+------+------+  

|N°|    ligne1      |     Ligne2     |PosCur|Suite+|Suite-|Return|Indice|

+--+----------------+----------------+------+------+------+------+------+

| 1|<MENU..........>|PROGRAMME.DATE.H|  017 |  002 |  005 |  006 |  000 | 

| 2|<MENU..........>|DATE.HEURE.REGLA|  017 |  003 |  001 |  008 |  000 | 

| 3|<MENU..........>|HEURE.REGLAGES.S|  017 |  004 |  002 |  009 |  000 | 

| 4|<MENU..........>|REGLAGES.SORTIE.|  017 |  005 |  003 |  010 |  000 | 

| 5|<MENU..........>|SORTIE.PROGRAMME|  017 |  001 |  004 |  130 |  000 | 

| 6|<PROGRAMME.....>|CHOIX_CYCLE.SORT|  017 |  007 |  007 |  014 |  000 | 

| 7|<PROGRAMME.....>|SORTIE.CHOIX_CYC|  017 |  006 |  006 |  005 |  000 | 

| 8|DATE............|jj/mm/aaaa......|  026 |  128 |  129 |  018 |  006 | 

| 9|HEURE...........|HH:MM...........|  018 |  128 |  129 |  019 |  009 | 

|10|<REGLAGES......>|TEMPERATURE_ECS.|  017 |  011 |  013 |  020 |  000 | 

|11|<REGLAGES......>|HYSTERESIS.PARAM|  017 |  012 |  010 |  021 |  000 | 

|12|<REGLAGES......>|PARAMETRES.SORTI|  017 |  013 |  011 |  022 |  000 | 

|13|<REGLAGES......>|SORTIE.TEMPERATU|  017 |  010 |  012 |  005 |  000 | 

|14|<CHOIX_CYCLE...>|CYCLE1.CYCLE2.CY|  017 |  015 |  017 |  131 |  000 | 

|15|<CHOIX_CYCLE...>|CYCLE2.CYCLE3.CY|  017 |  016 |  014 |  132 |  000 | 

|16|<CHOIX_CYCLE...>|CYCLE3.CYCLE4.CY|  017 |  017 |  015 |  133 |  000 | 

|17|<CHOIX_CYCLE...>|CYCLE4.CYCLE1.CY|  017 |  014 |  016 |  134 |  000 | 

|18|DATE............|jj/mm/aaaa......|  021 |  128 |  129 |  026 |  007 | 

|19|HEURE...........|HH:MM...........|  021 |  128 |  129 |  005 |  010 | 

|20|TEMPERATURE_ECS.|65°C............|  018 |  128 |  129 |  011 |  011 | 

|21|HYSTERESIS_TEMP_|AMBIANTE = 0,2°C|  030 |  128 |  129 |  027 |  003 | 

|22|<PARAMETRES....>|T_MINI_EXTERIEUR|  017 |  023 |  025 |  028 |  000 | 

|23|<PARAMETRES....>|T_MAXI_CHAUDIERE|  017 |  024 |  022 |  029 |  000 | 

|24|<PARAMETRES....>|TYPE_REGULATION.|  017 |  025 |  023 |  030 |  000 | 

|25|<PARAMETRES....>|SORTIE.T_MINI_EX|  017 |  022 |  024 |  013 |  000 | 

|26|DATE............|jj/mm/aaaa......|  018 |  128 |  129 |  003 |  008 | 

|27|HYSTERESIS_TEMP_|RADIATEUR= 0,5°C|  030 |  128 |  129 |  040 |  004 | 

|28|TEMPERATURE_MINI|EXTERIEUR= -09°C|  030 |  128 |  129 |  023 |  014 | 

|29|TEMPERATURE_MAXI|CHAUDIERE = 80°C|  030 |  128 |  129 |  025 |  012 | 

|30|TYPE_REGULATION>|CHAUDIERE.VANNE_|  017 |  031 |  031 |  025 |  000 | 

|31|TYPE_REGULATION>|VANNE_3_VOIES.CH|  017 |  030 |  030 |  041 |  000 | 

|32|<AJOUT_PLAGE Cx>|LUNDI.MARDI.MERC|  017 |  033 |  039 |  135 |  002 | 

|33|<AJOUT_PLAGE Cx>|MARDI.MERCREDI.J|  017 |  034 |  032 |  136 |  002 | 

|34|<AJOUT_PLAGE Cx>|MERCREDI.JEUDI.V|  017 |  035 |  033 |  137 |  002 | 

|35|<AJOUT_PLAGE Cx>|JEUDI.VENDREDI.S|  017 |  036 |  034 |  138 |  002 | 

|36|<AJOUT_PLAGE Cx>|VENDREDI.SAMEDI.|  017 |  037 |  035 |  139 |  002 | 

|37|<AJOUT_PLAGE Cx>|SAMEDI.DIMANCHE.|  017 |  038 |  036 |  140 |  002 | 

|38|<AJOUT_PLAGE Cx>|DIMANCHE.SORTIE.|  017 |  039 |  037 |  141 |  002 |

+--+----------------+----------------+------+------+------+------+------+





Fichier "MENU" suite:



   +----------------+----------------+------+------+------+------+------+

   |    16 octets   |    16 octets   | 1 Oct| 1 Oct| 1 Oct| 1 Oct| 1 Oct|

+--+----------------+----------------+------+------+------+------+------+

|N°|     ligne 1    |     Ligne 2    |PosCur|Suite+|Suite-|Return|Indice|

+--+----------------+----------------+------+------+------+------+------+

|39|<AJOUT_PLAGE   >|SORTIE.LUNDI.MAR|  017 |  032 |  038 |  059 |  000 | 

|40|HYSTERESIS_TEMP_|ECS = 0,5°C.....|  025 |  128 |  129 |  012 |  005 | 

|41|<VANNE_3_VOIES.>|OUVRIR/FERMER.AN|  017 |  042 |  042 |  143 |  000 | 

|42|<VANNE_3_VOIES.>|ANALOGIQUE.OUVRI|  017 |  041 |  041 |  144 |  000 | 

|43|SUPPRIMER.PLAGE.|OUI..........NON|  017 |  044 |  044 |  142 |  000 | 

|44|SUPPRIMER.PLAGE.|NON..........OUI|  017 |  043 |  043 |  059 |  000 | 

|45|JJJ.............|DEBUT.A.hh:mm...|  029 |  128 |  129 |  046 |  017 | 

|46|JJJ........hh:mm|DE.hh:mm.A.hh:mm|  016 |  128 |  129 |  052 |  018 | 

|47|SELECTION.CYCLEx|OUI..........NON|  017 |  048 |  048 |  130 |  001 | 

|48|SELECTION.CYCLEx|NON..........OUI|  017 |  047 |  047 |  007 |  000 | 

|49|CYCLEx...PLAGExx|JJJ.HH:MM.hh:mm.|  016 |  128 |  129 |  044 |  013 | 

|50|CYCLEx.TEMP_JOUR|20,5°C..........|  020 |  128 |  129 |  059 |  015 | 

|51|CYCLEx.TEMP_NUIT|17,5°C..........|  020 |  128 |  129 |  059 |  016 | 

|52|CYCLEx..........|CONTINUER.SORTIE|  017 |  053 |  053 |  055 |  000 | 

|53|CYCLEx..........|SORTIE.CONTINUER|  017 |  052 |  052 |  039 |  000 | 

|54|<CYCLEx........>|SELECTION.AJOUT_|  017 |  055 |  059 |  047 |  000 | 

|55|<CYCLEx........>|AJOUT_PLAGE.EDIT|  017 |  056 |  054 |  032 |  000 | 

|56|<CYCLEx........>|EDITER_CYCLE.TEM|  017 |  057 |  055 |  049 |  000 | 

|57|<CYCLEx........>|TEMP_JOUR.TEMP_N|  017 |  058 |  056 |  050 |  000 | 

|58|<CYCLEx........>|TEMP_NUIT.SORTIE|  017 |  059 |  057 |  051 |  000 | 

|59|<CYCLEx........>|SORTIE.SELECTION|  017 |  054 |  058 |  007 |  000 | 

+--+----------------+----------------+------+------+------+------+------+



Notes : - Les charactères "|" ne sont pas à prendre en compte.

        - Les '.' sont à supprimer et remplacer par des espaces.

        - Les numéros de lignes sont seulement là à titre indicatif.



Codes " Action        "

------+---------------+

128    +

129    -

130    1 soit valeur de j = Sortie du Menu

131    1 soit Cycle1

132    2 soit Cycle2

133    3 soit Cycle3

134    4 soit Cycle4

135    1 soit lundi

136    2 soit mardi

137    3 soit mercredi

138    4 soit jeudi

139    5 soit vendredi

140    6 soit samedi

141    7 soit dimanche

142    Suppression de la plage sélectionnée

143    0 soit TypVanne = Digitale

144    1 soit TypVanne = Analogique



-------------------------------------------------------------------------------















Structure des plages horaires pour le thermostat

------------------------------------------------

Le principe de stockage en mémoire des différentes plages de chauffe,

se fait dans la mémoire eeprom. Chaque bit représente un quart d'heure,

s'il est à zéro, la température de consigne sera la température de nuit

et s'il est à un, la température de consigne sera la température de jour.

Le système reprend la mémoire de 4 cycles qui contiennent chacun

les 7 jours de la semaine et chaque jour est divisé en 1/4 d'heures.

Ce qui nous fait 24 * 4 bits pour une journée, soit 12 octets.

Un cycle comprend 7 jours, soit 7 * 12 = 84 octets.

Ce qui donne pour les 4 cycles; 84 * 4 = 336 octets en tout.

Remarque : Faire attention que dans chaque octet, les Msb et Lsb

           sont inversés par rapport à la logique "horaire".

           Dans chaque octet, le bit de poids fort, représente

           le premier quart d'heure de la première heure,

           et le bit de poids faible représente le quatrième

           quart d'heure de la deuxième heure de l'octet.



Le système permet la création de 4 plages par jour.

Une plage consiste en une zone de consigne de jour.

(Cette limitation sera ajoutée dans le mode d'emploi)



Représentation en mémoire

-------------------------



C-J |Heures et quart d'heure (Avant-midi).

Y-O +-------------------------------------

C-U |00000000 00000000 00000000 00000000 00000000 11111111

L-R |00001111 22223333 44445555 66667777 88889999 00001111

E-S |01230123 01230123 01230123 01230123 01230123 01230123

----+-----------------------------------------------------

1-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

----+-----------------------------------------------------

bits|76543210 76543210 76543210 76543210 76543210 76543210

Byte|    0        1        2        3        4        5   

C-J |Heures et quart d'heure (Après-midi).

Y-O +-------------------------------------

C-U |11111111 11111111 11111111 11111111 22222222 22222222

L-R |22223333 44445555 66667777 88889999 00001111 22223333

E-S |01230123 01230123 01230123 01230123 01230123 01230123

----+-----------------------------------------------------

1-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

1-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

2-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

3-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Lu|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Ma|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Me|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Je|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Ve|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Sa|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

4-Di|xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

----+-----------------------------------------------------

bits|76543210 76543210 76543210 76543210 76543210 76543210

Byte|    6        7        8        9       10       11   



















































Exemple de programmation pour un cycle.

---------------------------------------

Définition des plages "Température Jour".

-----------------------------------------

Lundi    : [06h30 à 09h45] & [16h30 à 22h15]

Mardi    : [06h30 à 09h45] & [16h30 à 22h15]

Mercredi : [06h30 à 22h15]

Jeudi    : [06h30 à 09h45] & [16h30 à 22h15]

Vendredi : [06h30 à 09h45] & [16h30 à 23h30]

Samedi   : [08h00 à 23h30]

Dimanche : [07h30 à 22h45]



Contenu de l'EEprom

-------------------

C-J |Heures et quart d'heure (Avant-midi).

Y-O +-----------------------------------------------------

C-U |00000000 00000000 00000000 00000000 00000000 11111111

L-R |00001111 22223333 44445555 66667777 88889999 00001111

E-S |01230123 01230123 01230123 01230123 01230123 01230123

----+-----------------------------------------------------

1-Lu|00000000 00000000 00000000 00111111 11111110 00000000

1-Ma|00000000 00000000 00000000 00111111 11111110 00000000

1-Me|00000000 00000000 00000000 00111111 11111111 11111111

1-Je|00000000 00000000 00000000 00111111 11111110 00000000

1-Ve|00000000 00000000 00000000 00111111 11111110 00000000

1-Sa|00000000 00000000 00000000 00000000 11111111 11111111

1-Di|00000000 00000000 00000000 00000011 11111111 11111111

----+-----------------------------------------------------

bits|76543210 76543210 76543210 76543210 76543210 76543210

Byte|    0        1        2        3        4        5   

----+-----------------------------------------------------



C-J | Heures et quart d'heure (Après-midi).

Y-O +------------------------------------------------------+

C-U | 11111111 11111111 11111111 11111111 22222222 22222222|

L-R | 22223333 44445555 66667777 88889999 00001111 22223333|

E-S | 01230123 01230123 01230123 01230123 01230123 01230123|

----+------------------------------------------------------+

1-Lu| 00000000 00000000 00111111 11111111 11111111 10000000|

1-Ma| 00000000 00000000 00111111 11111111 11111111 10000000|

1-Me| 11111111 11111111 11111111 11111111 11111111 10000000|

1-Je| 00000000 00000000 00111111 11111111 11111111 10000000|

1-Ve| 00000000 00000000 00111111 11111111 11111111 11111100|

1-Sa| 11111111 11111111 11111111 11111111 11111111 11111100|

1-Di| 11111111 11111111 11111111 11111111 11111111 11100000|

----+------------------------------------------------------+

bits|76543210 76543210 76543210 76543210 76543210 76543210 |

Byte|    6        7        8        9       10       11    |

----+------------------------------------------------------+



*******************************************************************************