Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

mémoire flash HE
LP_2
Amateur
Amateur
Messages : 145
Enregistré en : août 2022
Localisation : Haute-Loire

#1 Message par LP_2 » mer. 28 janv. 2026 11:43

Bonjour

Quelqu'un aurait-il lu/écrit dans cette mémoire ?
Des astuces, des précautions, etc

Par exemple :
la zone HE est située dans les octets L des mots en mémoire programme, mais faut-il appliquer la procédure aux octets L et H de chaque adresse ?

Je suis en train d'y bidouiller, mais un retour d'expérience peut faire gagner du temps (et des cheveux . . .) !
J'y arriverai . . .

mémoire flash HE
satinas
Expert
Expert
Messages : 1497
Enregistré en : novembre 2015

#2 Message par satinas » mer. 28 janv. 2026 17:08

La réponse à ta question est oui, PMADRH/L adresse les mots de la flash, et pour la partie HFE le mot est aussi de 14 bits mais seul l'octet bas est pris en compte. La partie HFE de la flash contient donc 128 octets de data utilisable et se lit/écrit de la même façon que le reste de la flash, sauf que PMDATH n'intervient pas.

Les mots de 14 bits (ou octets HFE) de la flash peuvent être lus un par un en spécifiant leur adresse dans PMADRH/L
Pour l'écriture on doit d'abord effacer un secteur de 32 mots en PMADRH/L, ensuite on remplit le latch de 32 mots , et on écrit.
On peut aussi écrire un ou plusieurs mots (ou octets HFE) dans des cases mémoire déjà effacées d'un secteur de la flash, je n'ai pas vu d'exemple dans le datasheet, c'est pourtant ce qui est intéressant pour la mémoire HFE. On ne charge dans le latch que les octets à modifier, le reste du latch est à 0xFF.

A côté de ça les 2 registres d'adressage indirect 16 bits FSR0 et FSR1 permettent d'accéder en R/W à la ram, et en lecture uniquement à la flash. De cette manière on ne lit que l'octet bas des mots de programme, et les octets de données HFE.
Adressage FSR 16F1719 : en 0x0000 32 banks ram, en 0x2000 ram linéaire 24*80 octets GPR, en 0x8000 octets bas flash et octets HFE. Il n'y a ainsi pas de limite à la taille des tableaux de données en ram/flash et des tableaux de variables en ram.

mémoire flash HE
LP_2
Amateur
Amateur
Messages : 145
Enregistré en : août 2022
Localisation : Haute-Loire

#3 Message par LP_2 » jeu. 29 janv. 2026 11:28

De cette manière on ne lit que l'octet bas des mots de programme,

C'est à ça que je pensais.
Il n'est donc pas nécessaire de lire PMDATH pour que le cycle lecture/effacement/écriture soit correct.

Je vais (essayer de . . .) débugger avec le pickit3, ce sera peut-être plus exact qu'avec le simulateur.
J'y arriverai . . .

mémoire flash HE
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3259
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#4 Message par paulfjujo » dim. 1 févr. 2026 10:31

bonjour

suite à un Test similaire ,mais en C sur un 16F

A noter qu'on peut stocker AUSSI un byte dans la partie haute du mot de 14bits
à condition que les datas (MSB) soient < 0x3F

exemple de test sur un 16F1619
stockage en HEF de :
abcdefghijkl0123456789ABCDEFGHIJ@KLMNOPQRSTUVWXYZ-abcdefgh

stockage possible aussi de datas entier 16bits tronqués en 14bits
soit 0 à 16383 ou +-8192
Aide toi, le ciel ou FantasPic t'aidera

mémoire flash HE
LP_2
Amateur
Amateur
Messages : 145
Enregistré en : août 2022
Localisation : Haute-Loire

#5 Message par LP_2 » dim. 1 févr. 2026 10:55

Oui mais en dehors de l'octet L on n'est plus en HE.

En ratissant large on trouve (un peu) d'info sur l'utilisation du PSECT.
Pour la programmation du 16f1719 le LLM n'explique rien de plus que le contenu de la datasheet mais avec des erreurs.
Mais comme elles sont flagrantes ce n'est pas (trop) gênant. Mais il sait faire des phrases . . .
J'y arriverai . . .


Retourner vers « Généralités sur les PICs »

Qui est en ligne

Utilisateurs parcourant ce forum : KOHAI et 6 invités