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 l'Assembleur !

Modérateur : mazertoc

Led RGB 5050 WS2812B
cyril13110
Confirmé
Confirmé
Messages : 630
Âge : 37
Enregistré en : avril 2016
Localisation : 13

#21 Message par cyril13110 » dim. 17 mai 2020 14:56

Temps-x a écrit :Ok paulfjujo, mais je crois que cyril13110 veux mettre tout le code, là... je pense pas que ça soit possible, mes variables son déclaré en bank 0


Je confirme je me casse la tete pour integrer ton code dans un fichier basic pour completer les sequences et je suis bloqué.

Led RGB 5050 WS2812B
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 1638
Enregistré en : juillet 2016
Localisation : Terre

#22 Message par Temps-x » dim. 17 mai 2020 16:28

Re

cyril13110 a écrit :Source du message Et de ce qui est de la séquence bein en faite je ne compte pas éclairer plus de 24 leds en meme temps répartie sur les 6 banches. ce qui va me porter a moins de 2A


Au pire tu peux faire du multiplexage, ça sera invisible à l’œil, et consommera très peu.

Bon voila, je viens de finir un allumage pour 255 leds (celles qui sont connectés), avec une fonction aléatoire qui n'a pas été activé dans ce code.

J'ai testé avec mes 5 leds, ça à l'air de fonctionner, de plus j'ai retiré tout ce qui sert pas

Je te joins le fichier code+fichier compilé : WS2812B-Cy.zip

Voici un exemple de la macro

Code : Tout sélectionner



      rgb 255
,0,0,led,led,1               ; macro : valeur du rouge, valeur du vert, valeur du bleu, début LED, fin LED, chiffre(0) ou varible(1) 
                                          
; rouge
      tempo 10                            
; macro : temps, chiffre(0) ou varible(1)
                                          ; 100 ms temps de visionnage
      rcall control_led



cyril13110 a écrit :Source du message Je confirme je me casse la tête pour intégrer ton code dans un fichier basic pour compléter les séquences et je suis bloqué.


Je me répète, le plus simple c'est passer par ASM :sifflotte: il faudrait voir avec Gérard pour ASM vers Basic dehors!!

==> A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par Temps-x le dim. 17 mai 2020 18:24, modifié 1 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Led RGB 5050 WS2812B
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 1677
Âge : 69
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#23 Message par paulfjujo » dim. 17 mai 2020 18:14

j'ai regardé avec MikroBasic version d'essai ..
et l'ASM s'integre bien
les timing etant généré en ASM, les durées des simili bits ONES et ZEROS sont respectées
en fait c'est idem qu'en MikroC ( et c'est normal !!)

le projet pour 18F26K22 et 60 leds ( voir const NB_LEDS)
allume en mode ruban les 60 leds avec changement de couleur à chaque pas et 4 couleurs
(au mini de luminosité 1/16)
avec Fosc interne 16MHz x PLL => 64MHz
MOSI Dout sur RC5 ( en mode Bit bang , SPI Hardware non utilisé) --> DIN du ruban leds
sortie sur UART1 Hardware TX=RC7

Test_ASM_for_WS2812.zip


Test_ASM_cde_Led_RGB_avec_MikroBasic.jpg


à Temps_X , je vais aussi tester ton programme 100% ASM
.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aides toi, le ciel ou Fantastpic t'aideras

Led RGB 5050 WS2812B
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 1638
Enregistré en : juillet 2016
Localisation : Terre

#24 Message par Temps-x » dim. 17 mai 2020 22:15

Bonsoir paulfjujo, cyril13110, et tout le forum,

8-) Je viens de terminer le programme ou on peut choisir le nombre de led quand veut activer avec un temps d'éclairage programmable avec télécommande ou bouton poussoir :sifflotte: (la télécommande n'est pas implanté ni les boutons poussoir (sur demande seulement) )

Les couleurs sont aléatoire, pour chaque led, le programme ne dépasse pas 1431 octets


Code : Tout sélectionner

;***********************************************************************************************
;***********************************
 "LED RGB 5050 WS2812B" ************************************
;****************
 "Avec ce code vous pouvez commander 255 LED RGB 5050 WS2812B" ****************
;***********************************************************************************************

    Errorlevel-302                        ; Supprime le message "Ensure that bank bits are correct" 
    radix dec                             
; par defaut en mode décimal
    list p
=18f26K22                       ; processeur utilisé                  
    
#include <p18f26K22.inc>              ; Définitions des constantes

;***********************************************************************************************

;
 CONFIG11H
     CONFIG FOSC 
= INTIO67 
     CONFIG FCMEN 
= OFF 
     CONFIG IESO 
= OFF
; CONFIG2L
     CONFIG PWRTEN 
= OFF 
     CONFIG BOREN 
= OFF 
     CONFIG BORV 
= 190
; CONFIG2H
     CONFIG WDTEN 
= OFF 
     CONFIG  WDTPS 
= 1
; CONFIG3H
     CONFIG CCP2MX 
= PORTC1 
     CONFIG PBADEN 
= OFF
     CONFIG CCP3MX 
= PORTC6
     CONFIG HFOFST 
= OFF
     CONFIG T3CMX 
= PORTC0
     CONFIG P2BMX 
= PORTC0
     CONFIG MCLRE 
= INTMCLR
; CONFIG4L
     CONFIG STVREN 
= OFF 
     CONFIG LVP 
= OFF 
     CONFIG XINST 
= OFF 
     CONFIG DEBUG 
= OFF
; CONFIG5L
     CONFIG CP0 
= OFF 
     CONFIG CP1 
= OFF 
     CONFIG CP2 
= OFF 
     CONFIG CP3 
= OFF
; CONFIG5H
     CONFIG CPB 
= OFF 
     CONFIG CPD 
= OFF
; CONFIG6L
     CONFIG EBTR0 
= OFF
; CONFIG6H
     CONFIG EBTR1 
= OFF
; CONFIG7L
     CONFIG EBTR2 
= OFF
; CONFIG7H
     CONFIG EBTR3 
= OFF

;*************************************** assignations ***************************************** 
         
#DEFINE din_2  LATA,7                 ; RA7 ==> entrée des données de la Led RGB 5050 WS2812B
                
#DEFINE led1   LATC,7                 ; RC7 ==> led verte, témoin de mise en fonction de l'appareil

;****************************** déclaration des variables *************************************


     CBLOCK H'20'                          ; bank0
  
      loop1        
:1
      loop2        
:1
      loop3        
:1

      lot1         
:
      lot2         
:1
      lot3         
:1

      couleur      
:1

      rouge        
:1
      vert         
:1
      bleu         
:1

      led_nombre   
:
      led_debut    
:1
      led_fin      
:1
      led          
:1
 
      bits         
:1
     
      temps        
:1
      durée        
:
    
    ENDC

;************************* "Macro pour se positionner dans un tableau" ************************* 
tableau MACRO adresse

      movlw UPPER
(adresse)                ; 
      movwf TBLPTRU                       
;

      movlw HIGH(adresse)                 ;
      movwf TBLPTRH                       ; 

      movlw LOW
(adresse)                  ;
      movwf TBLPTRL                 
     
    ENDM


;************** "Macro pour charger une nouvelle valeur sur une, ou des LED RGB" *************** 
rgb MACRO valeur1
,valeur2,valeur3,valeur4,valeur5,valeur6
        
      local nombre10
,good_bye10
                                           
      movlw valeur6
  
      btfss WREG
,0                        ; valeur6 = 0 que pour les nombres 
      bra nombre10                        
; valeur6 = 1 que pour les variables

;      movlw valeur1                       ; 
      movf valeur1
,W
      movwf rouge
                          
;      movlw valeur2                       ; 
      movf valeur2
,W
      movwf vert

;      movlw valeur3                       ; 
      movf valeur3
,W  
      movwf bleu

      movf valeur4
,W                    ; led début 
      movwf led_debut
   
      movf valeur5
,W                      ; led fin de la deuxième led 
      movwf led_fin

      bra good_bye10


nombre10
      movlw valeur1   
      movwf rouge

      movlw valeur2     
      movwf vert

      movlw valeur3   
      movwf bleu
  
      movlw valeur4
      movwf led_debut

      movlw valeur5 
      movwf led_fin

good_bye10

      rcall led_charge 

      rcall led_rgb

    ENDM


;** "Macro pour faire une durée de temps, qui peut aller de 10 ms minimum  à 2550 ms maximum "** 
tempo MACRO valeur1
,valeur2

      local nombre11
,good_bye11

      movlw valeur2
  
      btfss WREG
,0                        ; valeur2 = 0 que pour les nombres 
      bra nombre11                        
; valeur2 = 1 que pour les variables

      movf valeur1
,W                      ; 
      movwf durée                         
; durée du temps défini par la valeur1 

      bra good_bye11

nombre11
      movlw valeur1                       
; 
      movwf durée                         
; durée du temps défini par la valeur1 

good_bye11
      call _10ms

    ENDM

;************************** "Macro pour éteindre toutes les LED RGB" *************************** 
led_cls MACRO
 
      rcall vide_bank

      rcall led_rgb
   
    ENDM

;****************************** adresse de depart après reset **********************************

    ORG H'0'
      bra debut      

;********************************* interruption haute priorité *********************************

    ORG    H'8'
      retfie 

;********************************* interruption basse priorité *********************************

    ORG     H'18'                                  
      retfie 

debut

;***********************************************************************************************

      movlb 0x0F                          ;  BSR pointe sur la banque 15  

;******************** "configuration de l'oscillateur du microcontrôleur" ********************** 

      movlw B
'01110100'                   ; oscillateur à 16 Mhz, fréquence stable si PLL (16 * 4)= 64 Mhz
    
;  movlw B'01100100'                  ; oscillateur à 8 Mhz, fréquence stable si PLL (* 4) = 32 Mhz
    
;  movlw B'01010010'                  ; oscillateur à 4 Mhz, fréquence stable  
    
;  movlw B'01000010'                  ; oscillateur à 2 Mhz, fréquence stable  
    
;  movlw B'00110010'                  ; oscillateur à 1 Mhz, fréquence stable  

      movwf OSCCON
      
;**************************** configuration du registre OSCTUNE ********************************

      movlw B'01000000'                   ; bit 6 à 1 : PLL * 4
      movwf OSCTUNE                       
; bit 6 à 0 : PLL désactivé
                                         
;*************************** configuration du registre ANSELA ********************************** 

      movlw B
'00000000'                   ; en mode numérique : 
      movwf ANSELA                        
; en mode E/S       : 2(RA0), 3(RA1), 4(RA2), 5(RA3), 7(RA5)

;****************************
 configuration du registre ANSELB ********************************* 

      movlw B
'00000000'                   ; en mode numérique : 
      movwf ANSELB                        
; en mode E/S       : 21(RB0), 22(RB1) 23(RB2), 24(RB3), 25(RB4), 26(RB5)  
             
;**************************** configuration du registre ANSELC ********************************* 

      movlw B
'00000000'                   ; en mode numérique :
      movwf ANSELC                        ; en mode E/S       : 13(RC2),  14(RC3), 15(RC4), 16(RC5), 17(RC6), 18(RC7)  

;*************************** configuration du registre ADCON0 ********************************** 

      movlw B
'00000000'                   ; b0 = ADON mise en service le convertiseur 0 = arrêt : 1 = marche   
      movwf ADCON0                        
; b1 = GO/DONE indique la fin de la conversion analogique, et permet de lancer la conversion
                                          
; b2 à b6 = réglage de la sélection du canal

;*************************** configuration du registre ADCON1 ********************************** 

      movlw B
'00000000'                   ; b2 à b3 = 00 : sélection de la tension de reférence, Vref+ = Vss   
      movwf ADCON1                        
; b0 à b1 = 00 : sélection de la tension de reférence, Vref- = Vdd 
                                          
;*************************** configuration du registre ADCON2 ********************************** 

      movlw B
'00110110'                   ; b0 à b2 = FOSC/64
      movwf ADCON2                        
; b3 à b5 = 16 TAG 
                                          
; 
                                          
; b7 = détermine si le résultat de la conversion
                                          
; sera justifié à droite = 1 ou à gauche = 0  

;***********************************************************************************************

      movlw B'00000000'                   ; comparateur 1 off
      movwf CM1CON0 

      movlw B
'00000000'                   ; comparateur 2 off
      movwf CM2CON0

;***************** configuration des registres TRISA & TRISB & TRISC & TRISE ******************* 

      movlw B
'00000000'                   ; RA0(2), RA1(3), RA2(4), RA3(5), RA4(6), RA5(7), RA6(10), RA7(9)  
      movwf TRISA                         
; 

      movlw B
'11111111'                   ; RB0(21), RB1(22), RB2(23), RB3(24), RB4(25), RB5(26), RB6(27), RB7(28)
      movwf TRISB                         ; 

      movlw B
'00000000'                   ; RC0(11), RC1(12), RC2(13), RC3(14), RC4(15), RC5(16), RC6(17), RC7(18)     
      movwf TRISC                         
; 

      movlw B
'00001000'                   ; RE3(1) 
      movwf TRISE                         
;

                                          ; VSS(8), VSS(19), VDD(20) 

;**************************** configuration du registre INTCON2 ******************************** 

     movlw B
'00000000'                    ; B7 = 0 résistances en service
     movwf INTCON2                        
;

;****************************
 configuration du registre WPUB *********************************** 
                                        
     movlw B
'11111111'                    ; tirage de résistance sur        : RB0(21), RB1(22), RB2(23), RB3(24), RB4(25), RB5(26), RB6(27), RB7(28)  
     movwf WPUB                           
; pas de tirage de résistance sur :


;*******************************
 configuration du registre T1CON *******************************    

      movlw B
'00000001'                   ; mise en fonction du timer1
      movwf T1CON                         
; 

;**************************** configuration du registre INTCON *********************************      

    movlw B
'00000000'                     ; 
    movwf INTCON                          
; interruption hors service 

;************************************ départ du programme **************************************

      movlb 0x00                          ;  BSR pointe sur la banque 0  

;***********************************************************************************************

      clrf PORTA
      clrf PORTB
      clrf PORTC
   
      clrf LATA
      clrf LATB 
      clrf LATC

;*********************************************************************************************** 

      movlw D
'24'
      movwf led_nombre                    ; nombre de led à traiter 

      movlw D
'10'                         ; temps d'éclairement d'une led
      movwf temps 

;*********************************************************************************************** 

      rcall limite    

;*********************************************************************************************** 
boucle

      rcall hasard                        

      rgb lot1
,lot2,lot3,led,led,1        ; macro : valeur du rouge, valeur du vert, valeur du bleu, début LED, fin LED, chiffre(0) ou varible(1)    

      tempo temps
,1                       ; macro : temps, chiffre(0) ou varible(1)
                                          ; 100 ms temps de visionnage
    
;-----------------------------------------------------------------------------------------------        
control_led

      movf led
,W
      xorwf led_nombre
,W                  
     
      btfsc STATUS
,
      bra limite                          

      incf led
,F
      bra boucle

limite
      movlw D
'1'
      movwf led

      led_cls                             
; macro : pour éteindre toutes les LED RGB
      
;**************************** " témoin visuel de mise en fonction" ***************************** 
clignote

      movlw D
'1'                          ; pour 1 clignotements
      movwf loop3

re_clignote
      bsf led1   
      tempo 10
,0                          ; macro : temps, chiffre(0) ou varible(1)
                                          ; 100 ms temps de visionnage
      bcf led1   
      tempo 10
,0                          ; macro : temps, chiffre(0) ou varible(1)
                                          ; 100 ms temps de visionnage
      decfsz loop3
,F
      bra re_clignote

      return

;********************* "envoies les données sur les LED RGB 5050 WS2812B" ********************** 
led_rgb
      
      lfsr FSR0
,H'100'                    ; FSR0 pointe sur le début de la bank1    

      movff POSTINC0
,couleur              ; charger la première valeur de la bank1
      
      clrf bits                           
;

      bcf din_2                           ;
      
direction
      btfss couleur
,7                     
      bra negatif       
      nop
positif                                   
; envoie 1 = 800 ns + 450 ns
      bsf din_2                           
; 802,5 ns = (13x62,5)  
      incf bits
,F
      rlncf couleur
,F
      btfsc bits
,
      movff POSTINC0
,couleur              ; 875  = (14x62,5)
      btfsc bits,3  
      clrf bits
      nop
      nop
      nop
      nop
      btfsc FSR0H
,2                       ; contrôl si fin de bank3 atteint
      return  
      bcf din_2                           
; 437,5ns = (7x62,5) 
      nop
      bra direction

;-----------------------------------------------------------------------------------------------

negatif                                   ; envoie 0 = 400 ns + 850 ns
      bsf din_2                           
; 375ns = (6x62,5)  
      nop
      nop
      nop
      incf bits
,F
      rlncf couleur
,F
      bcf din_2                           
; 875  = (14x62,5)
      btfsc bits,3  
      movff POSTINC0
,couleur              ; 937,= (15x62,5)
      btfsc bits,3  
      clrf bits
      nop
      nop
      btfsc FSR0H
,2                       ; contrôl si fin de bank3 atteint
      return
      bra direction
                                       
;************************ "mettre toute la bank1, bank2, bank3 à zéro" *************************  
vide_bank
      lfsr FSR0
,H'100'                     ; FSR0 pointe sur le début de la bank1      

ch_bank
      clrf POSTINC0                       
; efface l'octet et pointer sur suivants 
      btfss FSR0H,2                       ; tester si terminé (FSR0 pointe sur H'
400')  
      bra ch_bank                         ; non pas fini 

      clrf INDF0                          ; sortir à H'
400' en effaçant le dernier octet  

      return            

;********************* "mise en mémoire des couleus des LED RGB désignés" ********************** 
led_charge 
      movf led_debut,W  
      xorlw D'
0'
      btfsc STATUS,Z
      return

      movf led_fin,W  
      xorlw D'
0'
      btfsc STATUS,Z
      return
       
      movf led_debut,W
      subwf led_fin,F    
      btfsc STATUS,Z
      bra arranger                        ; égalité des variables 1 seule LED RGB de soliciter 
      btfss STATUS,C
      return                              ; résultat négatif, aucune LED RGB de soliciter  
               
arranger
      incf led_fin,F

      lfsr FSR0,H'
100'                    ; FSR0 pointe sur le début de la bank1 

      movf led_debut,W
      mullw D'
3'                          ; multiplier W par 3(3x8 = 24 bits), résultat dans PRODH PRODL

      movlw D'
3'
      subwf PRODL,F                       ;(led * 3)-3)

      movf PRODH,W                        ;
      addwf FSR0H,F                       ;  

      movf PRODL,W                        ; se placer au début de la led demandé 
      addwf FSR0L,F                       ;         

charge_bank
      movff vert,POSTINC0
      movff rouge,POSTINC0
      movff bleu,POSTINC0

      decfsz led_fin,F  
      bra charge_bank

      return

;*********************************************************************************************** 
hasard
      
      movf TMR1L,W 
      movwf lot1
 
      movf TMR1H,W 
      movwf lot2
       
      movf lot2,W
      addwf lot1,W                         

      movwf lot3

      return

;********************** "pause de 10 millisecondes pour horloge de 64 Mhz" **********************
_10ms
      movlw D'
201'
      movwf loop1
      movlw D'
208'
      movwf loop2

      decfsz loop1,F
      bra $-D'
2'
      decfsz loop2,F
      bra $-D'
6'

      decfsz durée,F
      bra _10ms    

      return

    End


Fichier code+compilation : WS2812B-Cy.zip

paulfjujo a écrit :Source du message à Temps_X , je vais aussi tester ton programme 100% ASM

Merci ! Prends cette version, elle est réglable sur le nombre de led et les temps, de plus j'ai activé les couleurs aléatoires.


A modifier si besoin, je t'explique pas, tu sais comment fonctionne ASM :wink:

Code : Tout sélectionner

;*********************************************************************************************** 

      movlw D
'24'
      movwf led_nombre                    ; nombre de led à traiter 24

      movlw D
'10'                         ; temps d'éclairement d'une led 100 ms
      movwf temps 

;*********************************************************************************************** 


==> A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Led RGB 5050 WS2812B
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 1677
Âge : 69
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#25 Message par paulfjujo » lun. 18 mai 2020 09:52

bonjoour Temps-X et à tous,


Merci ! Merçi de partager ton code , qui est bien documenté !

que je viens de tester ( la version precedente) ,
car je n'ai plus de ruban leds dispo sous la main,
ils ont été implantés dans mes 2 horloges Anneau 60 leds

mais j'ai testé ton programme (recompilé avec MPLABX ASM) avec
PIC sur une breadboard ,
RB7,RB6 pour l' ICSP
1 R de rappel MCLR (et VPP) , une led temoin RA4 qui toogle à chaque tour de boucle ,
une sortie RA5 pour synchro capture SQA50
et la sortie equivalente à MOSI sur RC5 connecté sur mon analyser SQA50 .
je n'ai donc pas l'aspect visuel , mais au moins le timming est là.

ce qui donne

Test_WS2812B_Temps_X.asm.jpg
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aides toi, le ciel ou Fantastpic t'aideras

Led RGB 5050 WS2812B
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 1638
Enregistré en : juillet 2016
Localisation : Terre

#26 Message par Temps-x » lun. 18 mai 2020 19:04

Bonsoir paulfjujo, et tout le forum,

Merci ! pour le test,

J'en ai commandé 100 pour 7,50 euros, pour les mettre dans ma lampe loupe, et sur différente autre lampe, 1 seule télécommande, pour toutes les lampes, avec 8 touches mémorisable sur les couleurs pour chaque lampe,

Mais j'en reparlerais le moment voulu.......

paulfjujo a écrit :Source du message je n'ai donc pas l'aspect visuel , mais au moins le timming est là.


Comme on a une tolérance de plus ou moins de 150ns, ça doit passer, :roll: mais ... je me demande sur une grande longueur si les temps vont convenir. .

J'ai fait une version sous simulateur pour Proteus 8 avec 255 leds, j'ai pas pu la tester car il me dise manque de mémoire :cry: à les simulateurs ça vaut pas la réalité.

Par contre je vais mettre dans la soirée le schéma avec le fichier de simulation des 5 leds qui lui fonctionne bien sous Proteus 8 en post #1

:roll: c'est vrai qu'avec un schéma ça va tout de suite mieux.

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

Led RGB 5050 WS2812B
cyril13110
Confirmé
Confirmé
Messages : 630
Âge : 37
Enregistré en : avril 2016
Localisation : 13

#27 Message par cyril13110 » mar. 19 mai 2020 08:27

Bonjour à tous,

Merci à Temps-x et à Paulfjujo pour vaut code qui m'éclaire un peut plus sur ce que je dois faire.
J'ai testé les 2, bien évidemment ça fonctionne.
Tous faireun ASM il faudrait que j'installe MPLAB pour voir si je ne me trompe pas il y a une version gratuite mais ça fait bien longtemps que je ne l'ai pas utilisé.

Led RGB 5050 WS2812B
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 1638
Enregistré en : juillet 2016
Localisation : Terre

#28 Message par Temps-x » mar. 19 mai 2020 20:04

Bonsoir paulfjujo, cyril13110, et tout le forum,

cyril13110 a écrit :Source du message Tous faireun ASM il faudrait que j'installe MPLAB pour voir si je ne me trompe pas il y a une version gratuite mais ça fait bien longtemps que je ne l'ai pas utilisé.


ASM est entièrement gratuit, tu n'as pas un centime à déboursé, tu peux utiliser MPLAB 8.92 c'est celui que j'utilise pour trouver mes erreurs.

Maintenant si tu le veux on peux le faire ensemble, et bien sur, tout ceux du forum pourrons y participé, même.. Gérard ...

La première chose à faire c'est de savoir exactement ce que tu veux faire, après on s’attaquera à la configuration des registres.


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

Led RGB 5050 WS2812B
cyril13110
Confirmé
Confirmé
Messages : 630
Âge : 37
Enregistré en : avril 2016
Localisation : 13

#29 Message par cyril13110 » mar. 19 mai 2020 21:33

Temps-x a écrit :
Maintenant si tu le veux on peux le faire ensemble, et bien sur, tout ceux du forum pourrons y participé, même.. Gérard ...

La première chose à faire c'est de savoir exactement ce que tu veux faire, après on s’attaquera à la configuration des registres.


A+


Bonsoir à tous,

Je vais récupérer tous ca et l'installer.
Après ce qui m'a éloigné l'ASM ce n'est pas la conf des registre mais plutôt la prise de tête avec l'utilisation des registre de calcul comme W.
De mémoire j'avais l'impression de piétiner et de ne pas avancer si tu vois ce que je veux dire.....
L’histoire des bancs de données aussi.....grosse prise de temps.....
Mais bon aprés j'etais plus jeune donc a voir....

Mais pourquoi pas , ca pourrai etre sympa de faire un truc en groupe .....aprés il faut que du monde soit intéressé par s’embêter à fabriquer des décorations de noël lumineuse au milieux du printemps .....
Modifié en dernier par cyril13110 le mar. 19 mai 2020 22:38, modifié 1 fois.

Led RGB 5050 WS2812B
cyril13110
Confirmé
Confirmé
Messages : 630
Âge : 37
Enregistré en : avril 2016
Localisation : 13

#30 Message par cyril13110 » mar. 19 mai 2020 22:06

Je suis sur MPLAB et j'ai bien l'impression que pour compiler il faut un programmateur MICROCHIP.
Enfin en tous cas j'ai pas de BP compilation, ou alors il y a quelque chose qui m'echape.


Retourner vers « Langage ASM »

Qui est en ligne

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