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 ---
Forum général sur le langage C !

Modérateur : Jérémy

SPI Hardware sur PIC18F27K42
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3303
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#81 Message par paulfjujo » lun. 16 mars 2026 18:36

Temps-x a écrit :
en Fin de compte l'écran fonctionne bien à grande vitesse, c'est la vitesse SPI qui n'arrive pas à suivre par rapport au données Usart



... débrider la sortie SPI
voir registre
SLRCONC.SLRC5 = 0; // No slew rate limiting si RC5 SPI Out

SLRCONC=0;
SPI1CLK = 0; // CLKREF =0 ->FOSC=64MHz
// SPI1BAUD = 3; // SPI Speed 64MHz / (2x(3+1)) = 64/8 = 8MHz ..OK!!
SPI1BAUD = 0; // SPI Speed 64MHz / (2x(0+1)) = 64/2 = 32MHz OK

[/quote]


paulfjujo a écrit :Source du message ouvrir un post specifique sur ce sujet ?
Le post tu veux l'ouvrir en C ou ASM ou en terain neutre :-D


:sifflotte: en terrain neutre, on pourra mixer les solutions ASM et C

quoique se taper des calculs de sinus ou cosinus en flottant et en asm ....
mais on peut toujours utiliser 360 couples de valeurs sin cos précalculés en dur stockés en tableau RAM
( 360 * 4 * 2= 2880 bytes ..jouable avec le 18F27K42) ou en Flash
Aide toi, le ciel ou FantasPic t'aidera

SPI Hardware sur PIC18F27K42
venom
Avatar de l’utilisateur
Expert
Expert
Messages : 1685
Âge : 40
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#82 Message par venom » lun. 16 mars 2026 21:54

]un petit coucou vite fait... semaine encore bien charger de mon coté :oops:
Bravo ça rend bien sur vos écrans rond 8-) j'adore le résultat.

:-D Bon celui-là tu sais qui sait.... :lol:

Gérard.jpg


==> A+


J'ai pas eu le temps de répondre Gerard a etait plus vite que moi :langue:

Le branchement reste identique que l’écran rectangle ?






@++
Mon site web
Mon discord : venom#4888

SPI Hardware sur PIC18F27K42
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2970
Enregistré en : juillet 2016
Localisation : Terre

#83 Message par Temps-x » mer. 18 mars 2026 02:17

Bonsoir paulfjujo, venom, et tout le forum,

Je réponds que maintenant, car je n'avais pas la force d'allumer mon ordinateur hier, trop fatigué.

paulfjujo a écrit :Source du message débrider la sortie SPI
voir registre
SLRCONC.SLRC5 = 0; // No slew rate limiting si RC5 SPI Out


SLRCONC = 0 ça change rien, toujours aussi lent, SPI1CLK, SPI1BAUD, n'existe pas dans ce Pic 18F26k22

:roll: Ce qui est bizarre, c'est qu'un fichier BMP 24 bits arrive à passer à 500 000 bauds, alors qu'un fichier hexadécimal, ou fichier BMP RGB565 ne passe pas à cette vitesse, si je diminue la vitesse à 250 000 bauds, tous les formats passent.

La lecture d'un fichier BMP 24 bits nécessite 3 octets pour 1 pixel, tandis qu'un fichier RGB565, ou hexadécimal nécessite 2 octets pour 1 pixel.

Mais dans un fichier BMP 24 bits, on traite que 2 octets à envoyer, temps d'attente plus court, car le 3ème octet n'est pas envoyé, mais il est utils pour assembler le format RGB565.

Petite question, peut-on lire les pixels sur cet écran :?:

venom a écrit :Source du message Le branchement reste identique que l’écran rectangle ?


VCC = identique
GND = identique
CS = identique
RESET = identique
AO = identique
SDA = identique
SCK = identique
LED = identique

Oui les branchements sont identiques, et de plus tu peux tout alimenter en 3.3 volts, surtout ne pas alimenter en 5 volts

Par contre la configuration est différent, mais on peu très bien prévoir dans le programme un bouton à pouser pour passer d'un écran à l'autre.

Avant que les prix flambent dû à la taxe qui va être mise en place en juin, je vais en commander 2 autres avec la carte SD.

Si tu en commandes, assure-toi que les broches ont les mêmes emplacements que ton petit écran SPI, si tu n'es pas sûr, fais-nous voir le lien.

venom a écrit :Source du message J'ai pas eu le temps de répondre Gerard a etait plus vite que moi :langue:


:roll: Que veux-tu ... Il est rentré de vacances, maintenant il peut nous surveiller, faudra attendre ses prochaines vacances.


==> A+
Modifié en dernier par Temps-x le mer. 18 mars 2026 22:09, modifié 2 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

SPI Hardware sur PIC18F27K42
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3303
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#84 Message par paulfjujo » mer. 18 mars 2026 11:19

bonjour,

Temps-x a écrit :...Oui les branchements sont identiques, et de plus tu peux tout alimenter en 3.3 volts, surtout ne pas alimenter en 5 volts
...



j'ai par erreur, alimenté mon montage PIC + OLED GCA9A01 en 5V ( 4.98V exactement)
et là, l'OLED n'affichait RIEN !
en baissant l'alim <3.9V ,l'affichage etait à nouveau OK
=> alim <3.9V sur mon modele ..

On ne peut pas lire l'etat de du buffer RAM OLED
....
c'est rapé pour avoir de jolies aiguilles ..mais peut etre jouable avec des aiguilles = simple vecteur lineaire
il faut simplement avoir un buffer ( 3 aiguilles) pour stocker le fond d'image sous les aiguilles
mais risque de prendre pas mal de temps X?

si aiguille troteuse de 110 pixel de long (en laissant les graduations sur le pourtour)
aiguille troteuse 110 x 2=220 bytes 220 multiplications de flottants (360 sin et 360 cos precalculés= >720x4 =2880 bytes (en RAM ou Flash ?))
aiguille heure 100x2=200 bytes
aiguille minute 105x2=210 bytes

à voir :
precalculer les premiers 90 vecteurs de position finale de la troteuse,
les autres en utilisant les symetries !
Heure et min etant des sous multiples
table resultante de 90 entier = 90x2 = 180 bytes (x1,y1)
le point de depart etant toujour le centre x0=109, y0=109
on a besoin que de l'arrivée et demander à Brensham de tirer le trait.avec la coordonnées calculé x1,y1


alors ,partant pour ouvrir un post sur ce sujet
montre analogique GC9A01 avec PIC 18F27K42 ou 47K42 ou ..avec beaucoup de flash et Ram
Aide toi, le ciel ou FantasPic t'aidera

SPI Hardware sur PIC18F27K42
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2970
Enregistré en : juillet 2016
Localisation : Terre

#85 Message par Temps-x » mer. 18 mars 2026 22:08

Bonsoir paulfjujo, et tout le forum,

paulfjujo a écrit :Source du message j'ai par erreur, alimenté mon montage PIC + OLED GCA9A01 en 5V ( 4.98V exactement)

Le mieux c'est de ne pas tenter le diable.

Un fichier hexadécimal (RGB565 - 16 bits (Taille de 115 266 octets)) peut loger dans un Pic18F27K42 car ce Pic a 131072 octets de mémoire programme, ce qui nous laisse 15806 octets pour écrire le programme, plus que faisable en ASM, reste à voir avec le C :langue:

Créer un tableau, pratiquement obligé pour gagner du temps et de la vitesse, une fois ce tableau créé, il servira pour toute sorte d'écran
sans dépasser la limite d'une aiguille énormément grosse

paulfjujo a écrit :Source du message alors ,partant pour ouvrir un post sur ce sujet
montre analogique GC9A01 avec PIC 18F27K42 ou 47K42 ou ..avec beaucoup de flash et Ram


C'est pas l'envi qui me manque, et ont peut toujours commencer à le faire, après c'est surtout le temps qui va me manquer, je vais travailler seulement 2 à 4 heures par semaine dessus, sans compter qu'il va falloir réfléchir avant d'agir.

En premier lieu, il faut voir à quelle vitesse est redessiné un bout d'écran où les aiguilles se trouvent, c'est primordial si on veut que ça fasse joli

J'ouvre le post avant fin de semaine

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:


Retourner vers « Langage C »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités