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 : mazertoc
Ecran OLED rond GC9A01
-
francois77
Passioné- Messages : 307
- Enregistré en : avril 2022
Bonjour Satinas et tout le forum
Un peu la galère mais bêtement, mais ca marche plutôt bien mais ...... Il faut attendre la fin de transfert pour voir le résultat a l'écran
Soit 6 cycles de plus
ton test de bit bouffe 3 cycles à la fois
Ce n'est pas grave, car entre chaque transfert SPI il faut attendre 8 cycles
phase INIT
movlw 0x0
movwf SSP1BUF ;
attends:
btfss SSP1STAT,BF ; transfére en cours ......
bra attends
BF = 1
Command_SPI
btfss SSP1STAT,BF ; Test si fin de transfert DATA fini
bra Command_SPI ;
bcf LCD_DC ;
movwf SSP1BUF ; Commande à envoyer sur SPI
return ; Attention fin de transfert + 6 cycles
Donner_SPI ;
btfss SSP1STAT,BF ; Test si fin de transfert DATA fini
bra Donner_SPI ;
bsf LCD_DC ;
movwf SSP1BUF ; donnée à envoyer sur SPI
return ; Attention fin de transfert + 6 cycles
Gain global sur toute les fonctions 30%
A+
Francois
Un peu la galère mais bêtement, mais ca marche plutôt bien mais ...... Il faut attendre la fin de transfert pour voir le résultat a l'écran
Soit 6 cycles de plus
ton test de bit bouffe 3 cycles à la fois
Ce n'est pas grave, car entre chaque transfert SPI il faut attendre 8 cycles
phase INIT
movlw 0x0
movwf SSP1BUF ;
attends:
btfss SSP1STAT,BF ; transfére en cours ......
bra attends
BF = 1
Command_SPI
btfss SSP1STAT,BF ; Test si fin de transfert DATA fini
bra Command_SPI ;
bcf LCD_DC ;
movwf SSP1BUF ; Commande à envoyer sur SPI
return ; Attention fin de transfert + 6 cycles
Donner_SPI ;
btfss SSP1STAT,BF ; Test si fin de transfert DATA fini
bra Donner_SPI ;
bsf LCD_DC ;
movwf SSP1BUF ; donnée à envoyer sur SPI
return ; Attention fin de transfert + 6 cycles
Gain global sur toute les fonctions 30%
A+
Francois
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 62 invités