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 tactile ILI9341
Bonjour Satinas
D'accord j'oublie les macro d'initialisations vu qu'elles sont courtes.
Mais j'ai compris le principe,
si c'est écrit une seule fois, je met le code directement dans le source,
si de nombreuses fois je fais une sous routine appellé avec un call,
si j'ai des nombreux paramètres a passer je fais une macro pour me faciliter la saisi
Bon de toute façon je passe maintenant au pcb car j'ai pleins d'œuf a cuire puis ensuite je me lance sur l'autre écran
satinas a écrit :Pas facile de se comprendre, sans en mettre des tartines ...
On reparlera des macro plus tard, quand il s'agira d'optimiser en vitesse. On oublie, fais des sous-programmes, tu seras plus à l'aise.
D'accord j'oublie les macro d'initialisations vu qu'elles sont courtes.
Mais j'ai compris le principe,
si c'est écrit une seule fois, je met le code directement dans le source,
si de nombreuses fois je fais une sous routine appellé avec un call,
si j'ai des nombreux paramètres a passer je fais une macro pour me faciliter la saisi
Bon de toute façon je passe maintenant au pcb car j'ai pleins d'œuf a cuire puis ensuite je me lance sur l'autre écran
Ecran tactile ILI9341
Bonjour tous le monde
je me regale, merci Satinas
et la macro pour mes essais
satinas a écrit : Les arguments de macro sont gérés en mode traitement de texte, tu peux donc entrer des valeurs 16 bits et les couper en 2 octets dans la macro :Code : Tout sélectionner
affiche macro m1, x1,y1, x2,y2
...
movlw (x1) / 0x100
movwf columnSC1
movlw (x1) % 0x100
movwf columnSC2
...
endm
je me regale, merci Satinas
Code : Tout sélectionner
essai .00320
et la macro pour mes essais
Code : Tout sélectionner
essai macro x1
movlw (x1) / 0x100
movwf travail1
movlw (x1) % 0x100
movwf travail2
endm
Ecran tactile ILI9341
Ecran tactile ILI9341
Ecran tactile ILI9341
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
Bonjour,
Une question à propos de la partie ecran tactile .
J'ai remarqué que la partie Tactile (xpt2046) ne s'initialise pas correctement apres
rechargement du programme..
j'ai mon ecran tactile alimenté par mon PickiT2 en 3,4V
mais lorsque je modife mon programme et le charge dans mon PIC 18F26K22
Le LCD est OK, mais le Tactile ne réponds pas ..meme avec un RESET sur Pickit2.
Seul un Power OFF / Power ON global ( LCD+ Tactile) fait que tout est OK apres coup.
Nota; j'utilise le mode interruption .. PEN IRQ sur RB0 IRQ .. qui va bien !
MAIS , de ce fait, je ne peux meme pas envoyer une commande SPI , dans le main programme,
avec le code 0xC0 pour activer la sortie Interupt PEN IRQ du module !
et je pense que le probleme vient de là..
MikroC donne une astuce ..qui ne marche pas !
#pragma ReentrancyCheck OFF
Avez vous déja remarqué ce probleme ? qui n'en est peut etre pas un, d'ailleurs !
Je pense qu'il me faut utiliser un SOFT_SPI 100% asm pour ne pas etre em... par mikroC
un avis ?
( à par me dire, fait tout en asm ..;)
Une question à propos de la partie ecran tactile .
J'ai remarqué que la partie Tactile (xpt2046) ne s'initialise pas correctement apres
rechargement du programme..
j'ai mon ecran tactile alimenté par mon PickiT2 en 3,4V
mais lorsque je modife mon programme et le charge dans mon PIC 18F26K22
Le LCD est OK, mais le Tactile ne réponds pas ..meme avec un RESET sur Pickit2.
Seul un Power OFF / Power ON global ( LCD+ Tactile) fait que tout est OK apres coup.
Nota; j'utilise le mode interruption .. PEN IRQ sur RB0 IRQ .. qui va bien !
MAIS , de ce fait, je ne peux meme pas envoyer une commande SPI , dans le main programme,
avec le code 0xC0 pour activer la sortie Interupt PEN IRQ du module !
et je pense que le probleme vient de là..
Code : Tout sélectionner
because error message..
22 365 Reentrancy is not allowed: function 'Soft_SPI_Write' called from two threads __Lib_SoftSPI.c
MikroC donne une astuce ..qui ne marche pas !
#pragma ReentrancyCheck OFF
Avez vous déja remarqué ce probleme ? qui n'en est peut etre pas un, d'ailleurs !
Je pense qu'il me faut utiliser un SOFT_SPI 100% asm pour ne pas etre em... par mikroC
un avis ?
( à par me dire, fait tout en asm ..;)
Ecran tactile ILI9341
Bonjour Paul,
je n''ai pas eu ce genre de souci de tactile sur Arduino et Esp. Je ne l'ai pas utilisé récemment avec un pickit. Microchip déconseille de dépasser 30mA en mode alimentation pour le Pickit3.
Pourquoi parles-tu de soft spi 100% asm, alors qu'une fonction C toute simple manipulant les registres spi suffit ?
Le fait d'utiliser MikroC ne devrait pas t'empêcher de la faire, ou alors j'ai pas tout compris.
Encore un fil asm pollué par du C, j'en connais qui vont pas être contents :)
je n''ai pas eu ce genre de souci de tactile sur Arduino et Esp. Je ne l'ai pas utilisé récemment avec un pickit. Microchip déconseille de dépasser 30mA en mode alimentation pour le Pickit3.
Pourquoi parles-tu de soft spi 100% asm, alors qu'une fonction C toute simple manipulant les registres spi suffit ?
Le fait d'utiliser MikroC ne devrait pas t'empêcher de la faire, ou alors j'ai pas tout compris.
Encore un fil asm pollué par du C, j'en connais qui vont pas être contents :)
Ecran tactile ILI9341
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
satinas a écrit :Microchip déconseille de dépasser 30mA en mode alimentation pour le Pickit3.
tu as bien fait de me le rappeler !
je consomme 35mA sous 3,4V (affiché sur le Pickit2 programmer) mais 3,2V reel sur le montage.
J'avais oublié que le retro eclairage etait gourmand !
Je vais donc l'alimenter en externe ..
.. 3,4V reel d' alim 65mA conso globale PIC+LCD
satinas a écrit :Pourquoi parles-tu de soft spi 100% asm, alors qu'une fonction C toute simple manipulant les registres spi suffit ?
Le fait d'utiliser MikroC ne devrait pas t'empêcher de la faire, ou alors j'ai pas tout compris.
parce que j'utilise un SPI Software mikroC, donc pas de registre SPI MCU ..
nota: mon 1er essai SPI bit bang n'etait pas concluant...
du coup, tu m'as donné l'idée d'essayer d'inverser :
SPI Hardware pour le touch (avec commande directe des registres en asm)
et SPI Software MikroC pour le LCD
d'ici que la zone ASM soit taxée comme les parkings en ville ... !
.. je continuerai donc ce post sur "Langage C" ! meme si je mets un peu d'ASM dedans !
Ecran tactile ILI9341
C'est ce que j'avais abordé plus haut, mais la fonction C présentée était pas la bonne, car c'était celle d'envoi lcd. Il faut effectivement utiliser la bibliothèque spi MikroC pour l'envoi lcd, et faire une fonction hors bibliothèque pour le tactile, en C ou asm. Elle permet de gérer proprement une interruption tactile se produisant pendant l'envoi spi d'un octet d'affichage.
Ecran tactile ILI9341
Bonjour a tous
Voila, je viens de rallumer l'ordi mais je n'ai pas encore fini ma formation, c'est juste que l'ASM me manque cruellement. je vais essayé de pratiquer par intermittence afin de ne pas perdre le peu que je sais
Satinas.....que dire.....je le met brut de décoffrage mais ce n'est qu'a la sauce de Jean-Marc comme disait un certain monsieur, j'y suis arrivé par des chemins détournés
J'ai mesuré les valeurs que je recevais lors d'un appuis sur l'écran qui ne sont pas les mêmes entre un appuis avec un stylet ou bien un appuis avec le doigt.
pour l’exemple suivant, s'est un appuis avec le doigt pour le Ili9341 car sa ne fonctionne pas pareil pour l'autre écran de Temps-x (il m'a laissé tombé sur ce coup la )
Voila, je viens de rallumer l'ordi mais je n'ai pas encore fini ma formation, c'est juste que l'ASM me manque cruellement. je vais essayé de pratiquer par intermittence afin de ne pas perdre le peu que je sais
satinas a écrit : Par contre je lâche pas le programme de lecture du touchscreen tant que JMarc n'a pas montré le sien, faut qu'il bosse un peu :)
Satinas.....que dire.....je le met brut de décoffrage mais ce n'est qu'a la sauce de Jean-Marc comme disait un certain monsieur, j'y suis arrivé par des chemins détournés
J'ai mesuré les valeurs que je recevais lors d'un appuis sur l'écran qui ne sont pas les mêmes entre un appuis avec un stylet ou bien un appuis avec le doigt.
pour l’exemple suivant, s'est un appuis avec le doigt pour le Ili9341 car sa ne fonctionne pas pareil pour l'autre écran de Temps-x (il m'a laissé tombé sur ce coup la )
Code : Tout sélectionner
bouton_angle
movlw .55
cpfsgt mesure_x1 ;saut si supperieur
bra bouton_angle_2
movlw .65
cpfslt mesure_x1 ; saut si inferieur
bra bouton_angle_2
movlw .170
cpfsgt mesure_x2 ;saut si supperieur
bra bouton_angle_2
movlw .190
cpfslt mesure_x2 ; saut si inferieur
bra bouton_angle_2
movlw .110
cpfsgt mesure_y1 ;saut si supperieur
bra bouton_angle_2
movlw .120
cpfslt mesure_y1 ; saut si inferieur
bra bouton_angle_2
movlw .120
cpfsgt mesure_y2 ;saut si supperieur
bra bouton_angle_2
movlw .150
cpfslt mesure_y2 ; saut si inferieur
bra bouton_angle_2
movlw .65 ; bas droit
call LCD_SEND_DECI
call affiche_valeur_retenu
uart_Allumage_stop
; MESSAGE "S","t","a","r","t"," ","O","k"," "," "
bra boucle
bouton_angle_2
movlw .20
cpfsgt mesure_x1 ;saut si supperieur
bra bouton_angle_3
movlw .30
cpfslt mesure_x1 ; saut si inferieur
bra bouton_angle_3
movlw .200
cpfsgt mesure_x2 ;saut si supperieur
bra bouton_angle_3
movlw .220
cpfslt mesure_x2 ; saut si inferieur
bra bouton_angle_3
movlw .30
cpfsgt mesure_y1 ;saut si supperieur
bra bouton_angle_3
movlw .60
cpfslt mesure_y1 ; saut si inferieur
bra bouton_angle_3
movlw .180
cpfsgt mesure_y2 ;saut si supperieur
bra bouton_angle_3
movlw .210
cpfslt mesure_y2 ; saut si inferieur
bra bouton_angle_3
movlw .165 ; haut gauche
call LCD_SEND_DECI
call affiche_valeur_retenu
MESSAGE "S","t","a","r","t"," ","O","k"," "," "
bra boucle
bouton_angle_3
movlw .18
cpfsgt mesure_x1 ;saut si supperieur
bra bouton_valid
movlw .27
cpfslt mesure_x1 ; saut si inferieur
bra bouton_valid
movlw .210
cpfsgt mesure_x2 ;saut si supperieur
bra bouton_valid
movlw .240
cpfslt mesure_x2 ; saut si inferieur
bra bouton_valid
movlw .100
cpfsgt mesure_y1 ;saut si supperieur
bra bouton_valid
movlw .180
cpfslt mesure_y1 ; saut si inferieur
bra bouton_valid
movlw .85
cpfsgt mesure_y2 ;saut si supperieur
bra bouton_valid
movlw .120
cpfslt mesure_y2 ; saut si inferieur
bra bouton_valid
movlw .120 ; haut droit
call LCD_SEND_DECI
call affiche_valeur_retenu
MESSAGE "B","u","z","e","r"," ","O","k"," "," "
call buzzer
Ecran tactile ILI9341
Bonjour,
Non, j'ai pas laissé tombé, l'écran est monté sur breadboard, avec le microcontrôleur Pic18F4524 ton préféré, mais pas le mien.
Car on ne peu pas configurer les convertisseurs analogique séparément, je trouve cela dommage.
Mais je vais m'y remettre, et je pense même qui il y aura pas mal de monde pour en discuté.
Mais pour l'instant comme le dit p_ _ _ _ _ _ _o du concret
A+
JMarc a écrit :Source du message car sa ne fonctionne pas pareil pour l'autre écran de Temps-x (il m'a laissé tombé sur ce coup la )
Non, j'ai pas laissé tombé, l'écran est monté sur breadboard, avec le microcontrôleur Pic18F4524 ton préféré, mais pas le mien.
Car on ne peu pas configurer les convertisseurs analogique séparément, je trouve cela dommage.
Mais je vais m'y remettre, et je pense même qui il y aura pas mal de monde pour en discuté.
Mais pour l'instant comme le dit p_ _ _ _ _ _ _o du concret
A+
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 88 invités