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 ---

ASM: Hello World simple 18F258

Bout de code posé là !

Modérateur : Jérémy

Avatar de l’utilisateur
F6FCO
Expert
Expert
Messages : 2846
Enregistré en : décembre 2017
Localisation : Banlieue sud de Klyntar
Contact :

ASM: Hello World simple 18F258

Messagepar F6FCO » mar. 14 mai 2024 19:34

Hello World sur B4.

Fichier init:

Code : Tout sélectionner

;************************************************************************************************
;
                       F6FCO 
;                  Hello World
;                       28 oct 2023    
;
;************************************************************************************************
                        

        Errorlevel
-302                 ; Supprime le message "Ensure that bank bits are correct" 
        list            p
=18f258        ; processeur utilisé 
        
#include        <p18f258.inc>        ; Définitions des constantes PIC

 
 CONFIG OSC 
= XT                             
 CONFIG OSCS
=OFF
 CONFIG PWRT 
= ON                              
 CONFIG BOR 
= OFF
 CONFIG BORV 
= 45                             
 CONFIG WDT 
= OFF                             
 CONFIG WDTPS 
= 1
 CONFIG STVR 
= OFF
 CONFIG LVP 
= OFF                             
 CONFIG DEBUG 
= ON                           
 CONFIG CP0 
= OFF                             
 CONFIG CP1 
= OFF                             
 CONFIG CP2 
= OFF                             
 CONFIG CPB 
= OFF                             
 CONFIG CPD 
= OFF                             
 CONFIG WRT0 
= OFF                            
 CONFIG WRT1 
= OFF                            
 CONFIG WRT2 
= OFF                            
 CONFIG WRTC 
= OFF                        
 CONFIG WRTB 
= OFF                        
 CONFIG WRTD 
= OFF                            
 CONFIG EBTR0 
= OFF                       
 CONFIG EBTR1 
= OFF                           
 CONFIG EBTR2 
= OFF                           
 CONFIG EBTR3 
= OFF                           
 CONFIG EBTRB 
= OFF                           

;#define bip        PORTA,1

     CBLOCK H'0' 
     
;--------------- variables 
    Reg_1            
:1        ; tempo
    Reg_2            
:1        ; tempo
    Reg_3            
:1        ; tempo
    conchita        
:2        ; variable bonne à tout faire
    LcdLigne        
:1        ; LCD
    LcdColonne        
:1        ; LCD
    ENDC

        ORG H
'0'
init
       movlw     b
'01110011'
        movwf     OSCCON                    ; oscillateur interne à 8 Mhz 
        
;
        movlw     0Fh
          movwf     ADCON1                    
; mode digital
    
;
    movlw    b'00000000'    
    movwf    TRISA
    clrf    PORTA
    
;
    movlw    b'00000000'    
    movwf    TRISB
    clrf    PORTB
    
;
    movlw    b'00000000'
    movwf    TRISC
    clrf    PORTC



Fichier main:

Code : Tout sélectionner

#include    <Init Hello World 258.asm>

main
    bcf    PORTB
,4
    nop
    call    tempo300ms
    bsf    PORTB
,4
    nop
    call    tempo300ms
    bra    main




tempo300ms
; Délai 600 000 Cycles de la machine
; Durée du délai 300 millisecond
; Fréquence de l'oscillateur 8 MHZ

            movlw       .51
            movwf       Reg_1,1
            movlw       .12
            movwf       Reg_2
            movlw       .4
            movwf       Reg_3
            decfsz      Reg_1,F,1
            bra         $-2
            decfsz      Reg_2
            bra         $-6
            decfsz      Reg_3
            bra         $-.10
            nop
            nop
            return

    END                      


Une porte nand prend 2 bits en entrée... :eek:

Retourner vers « Recueil de mini programmes »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité