begin process at 2010 02 09 22:46:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Les PIC

 > 

texte en memoire dans pic


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

texte en memoire dans pic

jeudi 9 mars 2006 à 01:17:57 | texte en memoire dans pic

yalein

    Bonjour a tous, je suis débutant dans la programmation en assembleur et la je coince sur un probleme. J'utilise un pic 16f877 avec un afficheur et je voudrais pouvoir stocker en memoire des message pré defini que je pourrais appeler puis afficher. mon idée était de rentrer dans une variable l'adresse de départ où se situerais le début du message 1 par exemple puis afficher caractere par caractere le message sur le LCD. Seul probleme, je ne sais pas comment et où placer mes messages.
Pour l'instant je n'ai réussi a afficher des caracteres quand ne faisant des lignes du types:

banksel    PORTA
    movlw    0x40
    movwf    EEADR1

    movlw    "B"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "O"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "N"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "J"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "O"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "U"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "R"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM
    incf    EEADR1
    movlw    "#"
    movwf    EEDATA1
    CALL    ECRITURE_EEPROM


    return

Ici le message BONJOUR est afficher.
Pouvez vous m'aider pour faire evoluer mon programme ???????????????

merci d'avance à tous.
mardi 14 mars 2006 à 20:57:17 | Re : texte en memoire dans pic

paulF

bonsoir,

Si tes messages sont pré-définis , tu peux donc les programmer directement dans la zone Eeprom du PIC
exemple pour Pic16F628 , affiche le N0 du message défini en EEPROM PIC


....
 call LCD_Clear1
  movlw 1
  movwf Pointer_Msg
  Call AffNumMsgEeprom
.....


puis avec un bout de programme aller lire ces message pour les afficher

;==============================
; affiche Nø Msg en eeprom
;==============================
AffNumMsgEeprom
  movf Pointer_Msg,w
  movwf Cpt2
  bcf STATUS,C
  rlf Cpt2,f
  rlf Cpt2,f
  rlf Cpt2,f
  rlf Cpt2,f ; pointeur = NøMsg * 16
  clrf Cpt3
affMsg_
  movf Cpt3,w
  addwf  Cpt2,w
  bank1
  MOVWF EEADR
  BSF  EECON1,RD ;  bit 0
  MOVF  EEDATA,W
  bank0
  call   LCD_Putchar
   incf Cpt3,f
  btfss Cpt3,4  ; 16em car ? 
  goto  affMsg_
  return



   ORG 0x2100
;message modulo 16  (si LCD de 16 car par ligne !)
;       "1234567890123456"       
EE0  dt "Bonjour        ",0
EE1  dt "message       1",0
EE2  dt "message       2",0



jeudi 16 mars 2006 à 01:28:33 | Re : texte en memoire dans pic

yalein

    Bonjour, tout dabord un grand merci pour ta réponse car je vois que tu as compris exactement se que j'essaie de faire.
Sinon quelques petites questions: j'ai essayer cette méthode mais j'ai quelques erreur quand je compile. J'obtiens ceci:
 Symbol not previously defined (Pointer_Msg)
 Symbol not previously defined (Cpt2)
  Symbol not previously defined (Cpt3)

J'ai donc l'impression qu'il ne reconnait pas ces variables. Est ce que se sont des variables que tu as déclaré quelque par ou bien se sont des variables propres au pic.

Et sinon, pour afficher les autres messages est ce qu'il suffit de remplacer le " movlw 1 " par " movlw 2 " ou bien " movlw 3 "

merci d'avance
mercredi 22 mars 2006 à 16:21:28 | Re : texte en memoire dans pic

phenojeff

Allo
déclare tes variable au début 
CBLOCK 0x20
 Pointer_Msg :1
 Cpt2:1
 Cpt3:1
ENDC
pas besion de faire movlw 2 car dans
affMsg_
  movf Cpt3,w
  addwf  Cpt2,w  ; Cpt3 + Cpt2 = Cpt2
;si tu regarde a la fin il y a

btfss Cpt3,4  ; 16em car ? Boucle jusqua 3
  goto  affMsg_
a++
mercredi 22 mars 2006 à 16:24:25 | Re : texte en memoire dans pic

phenojeff

petite corection  sest la quil fait +1

call   LCD_Putchar
   incf Cpt3,f  ; <-- +1 save dans Cpt3
  btfss Cpt3,4  ; 16em car ? 
  goto  affMsg_

a+
mercredi 22 mars 2006 à 21:56:33 | Re : texte en memoire dans pic

yalein

Bonsoir, Merci le complement d'information. En faite j'ai réussi a afficher les messages en allant directement lire à l'adresse du debut de message stocher dans l'eeprom. merci encore de ton aide


Cette discussion est classée dans : call, movlw, movwf, eeadr1, eedata1


Répondre à ce message

Sujets en rapport avec ce message

petit probleme [ par wessleyclark ] bonjour tous le monde, voila j`ai un petit soucis avec mon code.[^^mad5] ce que je voulais faire , c`est de lire les donnee d`une telecomande transme comment utiliser un call à l'aide d'un préfixe [ par jeddaye ] bonjour, j'utilise actuellement mplab pour programmer mon 16f88et je me demandais si il etait possible de faire un call avec un préfixe, ceci afin de Problème avec mon programme en source assembleur pour mon projet de BTS [ par UltimateXion ] Bonjours à tous, je réalise actuellement mon projet de BTS Système électronique et j'ai comme qui dirai un souci au niveau de mon programme en source Problème de programation d'un PIC16F877a avec un LCD 2*16 en mode 8 Bits [ par UltimateXion ] Bonjours à tous, je réalise actuellement mon projet de BTS Système électronique et j'ai comme qui dirai un souci au niveau de mon programme en source Problème de timing [ par Haox85 ] Bonjour tout le monde,Depuis mon dernier post où je demandais de l'aide pour afficher sur des 7 segments j'ai un peu avancé tant bien que mal...Si mon PB PIC18F2525 [ par Haox85 ] Bonsoir tout le monde... Comme vous pouvez le constater, je n'ai toujours pas réussi a faire ma programmation de PIC... Bon mon programme fonctionne PIC 16F84 & LCD piti probleme :) [ par diwee ] bonjour, j'ai essayé de programmer un pic 16f84 en mode 4-bit pour qu'il affiche un message s sur l'ecran mais en vain. Quand je branche il y a une li Liaison RS232 Pic 18F2620 vers PC [ par fun_olivier ] Bonjour je dois faire un programme qui permet de relier un Pic 128F2620 avec un Pc via une liaison USART . Le Pic envoi un caractere, puis reçoit une 16F84 asm aide pour modifier une routine de RB7 à RB3 [ par pasrico ] bonjour     pic 16F84A + 24C16    voila j'ai cette routine qui marche tres bien mais je veux la modifier pour passer sur le portb,03  (RB3) mais comme Problème avec un code [ par showbiz_hurricanes ] Bonjour Pour un projet universitaire, je dois concevoir un programme de tri en assembleur mais celui ci ne fonctionne pas comme je le voudrai. Le


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales