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 ---
- 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 ---
Modérateur : Jérémy
Montre analogique GC9A01
Bonjour tout le monde,
J'ouvre ce post dans un terrain neutre, car sur ce post il y aura du C, ASM, et peut-être du basic avec Gérard
qui ne manquera pas de nous remettre dans le droit chemin...
Le but de ce post est de faire tourner des aiguilles en mode graphique sur un écran GC9A01. quand je dis graphique, ça veut dire quand peut mettre un fond d'écran derrière les aiguilles, les aiguilles devront tourner proprement sans saccade.
Le gagnant récupère ce post pour son langage de son choix, Jérémy, et les modérateurs pourront décider du vainqueur, toute personne peut participer du moment qu'elle utilise un microcontrôleur Pic en 8 bits.
Présentation de l'écran, pour ceux qui ne savent pas ce que sait
Voici son datasheet ICI, prix chez Aliexpress (2.50 euros à 3.00 euros en commande groupée)
Caractéristique
Taille de l'écran : 1,28 pouces rond, diamétre 35mm
Résolution : 240×240 pixels
Puce pilote : GC9A01
Tension de fonctionnement : 2,8V à 3,3V
Ce qui avait été dit dans les précédents posts
Écrit par paulfjujo
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
A 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
Écrit par Temps-x
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
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
Bien sûr, tout le monde peut participer pour faire gagner son langage, ou s'allier avec d'autres personnes qui ont des idées, et les mettre ici.
Le concourt est ouvert, que le meilleur gagne.
A+
J'ouvre ce post dans un terrain neutre, car sur ce post il y aura du C, ASM, et peut-être du basic avec Gérard
Le but de ce post est de faire tourner des aiguilles en mode graphique sur un écran GC9A01. quand je dis graphique, ça veut dire quand peut mettre un fond d'écran derrière les aiguilles, les aiguilles devront tourner proprement sans saccade.
Le gagnant récupère ce post pour son langage de son choix, Jérémy, et les modérateurs pourront décider du vainqueur, toute personne peut participer du moment qu'elle utilise un microcontrôleur Pic en 8 bits.
Présentation de l'écran, pour ceux qui ne savent pas ce que sait
Voici son datasheet ICI, prix chez Aliexpress (2.50 euros à 3.00 euros en commande groupée)
Caractéristique
Taille de l'écran : 1,28 pouces rond, diamétre 35mm
Résolution : 240×240 pixels
Puce pilote : GC9A01
Tension de fonctionnement : 2,8V à 3,3V
Ce qui avait été dit dans les précédents posts
Écrit par paulfjujo
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
A 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
Écrit par Temps-x
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
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
Bien sûr, tout le monde peut participer pour faire gagner son langage, ou s'allier avec d'autres personnes qui ont des idées, et les mettre ici.
Le concourt est ouvert, que le meilleur gagne.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Montre analogique GC9A01
Bonjour tout le forum,
Hâte de gagner ce concours
je me rends compte que de mettre 115 200 octets est assez volumineux, hors il m'est venu une idée ...
Une image fait 240 x 240 pixels, hors l'écran n'utilse pas tout cette image, donc, il serait interessant de garder juste la partie ronde, si on fait un calcul
Image actuelle
(240 x 240 ) * 2 = 115200 octets
Image avec seulement un rond
Rayon
240 / 2 = 120
((120*120) *3.14) * 2 = 90432 octets
Ce qui nous donne 24768 octets de récupéré, pour y loger autre chose...
A+
Hâte de gagner ce concours
Une image fait 240 x 240 pixels, hors l'écran n'utilse pas tout cette image, donc, il serait interessant de garder juste la partie ronde, si on fait un calcul
Image actuelle
(240 x 240 ) * 2 = 115200 octets
Image avec seulement un rond
Rayon
240 / 2 = 120
((120*120) *3.14) * 2 = 90432 octets
Ce qui nous donne 24768 octets de récupéré, pour y loger autre chose...
Retourner vers « Généralités sur les PICs »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité

