Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Afficheur Lcd Graphique



  1. #1
    phill38

    Afficheur Lcd Graphique


    ------

    Bonjours a tous
    je cherche a connecter un LCD 240*64 sur un pic et je calle
    j'ai essayé plusieurs choses mais rien ne fonctionne pas d'affichage
    besoin d'aide merci
    email supprimé, lire la CHARTE svp

    -----
    Dernière modification par monnoliv ; 22/08/2005 à 08h03.

  2. #2
    annece

    Re : Afficheur Lcd Graphique

    coucou
    j'ai travaillé avec un LCD et un PIC. c'était un LCD 240*128. J'avais une datasheet d'écran avec pas grand chose dessus par contre la datasheet du contrôleur de cet écran m'a beaucoup aidée.

  3. #3
    phill38

    probleme sur un soft electronique magazine

    bonjuors
    je veux mettre en place le montage du n°59 de electronique magazine le systeme de charge solaire
    je prog mon pic avec picbasic plus 1.24
    et je vois des tas d'erreurs que j'ai corrigé en partie mais je calle sur des trucs qui sont en rouge voila le prog

    '[SIZE="1
    '***************************** **********************
    '* EF513-2
    '* Afficheur pour régulateur de charge
    '* Basé sur un PIC16F877
    '* Dernière mise à jour 02/01/2004
    '***************************** **********************
    Device 16F877
    XTAL = 20

    'configuration LCD
    Declare LCD_DTPIN PORTD.0
    Declare LCD_RSPIN PORTB.6
    Declare LCD_ENPIN PORTB.7
    Declare LCD_LINES 2
    Declare LCD_INTERFACE 8


    'configuration usart 9600
    DEFINE HSER_RCSTA 90h
    DEFINE HSER_TXSTA 24h
    DEFINE HSER_BAUD 9600
    DEFINE HSER_CLROERR 1


    'configuration AD
    DEFINE ADC_BITS 10 ' RESOLUTION 10 BIT
    DEFINE ADC_CLOCK 3 ' SOURCE CLOCK
    DEFINE ADC_SAMPLEUS 5000 ' ECHANTILLONNAGE
    ' EN MICROSECONDES

    'définition' des ports
    SYMBOL P1=PORTa.4 'POUSSOIR
    SYMBOL POWER=PORTD.2 'POWER

    HIGH POWER

    LCDOut $FE,1 'EFFACE LE DISPLAY

    'définition' des variables
    V0 VAR WORD[12]
    V1 VAR WORD[12]
    VB VAR WORD[12]
    VM VAR WORD[12]
    IM VAR WORD[12]
    IBC VAR WORD[12]
    IBS VAR WORD[12]
    DONNEE VAR WORD
    TMP VAR BYTE
    TMPOLD VAR BYTE
    'delayms VAR WORD
    PRESSION VAR BYTE
    CONTINU VAR BYTE
    COMPTE VAR BYTE
    TIMER VAR WORD

    'DESHABILITE LES CONVERTISSEURS A/N
    ADCON0=0
    ADCON1=7
    ADCON1.7=1 'ALIGNEMENT A DROITE 0000001111111111
    OPTION_REG.7=1 'DESHABILITE RÉSISTANCES DE PULL-UP

    EEPROM 1,[0]

    delayms 500
    LCDOut $FE,$01," Charge batterie "
    LCDOut $FE,$C0," Solaire "
    delayms 1000

    CLEAR
    TMP=1
    delayms 500
    PRESSION=0
    TMPOLD=1
    TIMER=0

    READ 1,CONTINU 'LIS DANS LA MÉMOIRE LA DERNIÈRE MODALITE DE FONCTIONNEMENT

    IF CONTINU=0 THEN
    delayms 2000
    ELSE
    delayms 20
    ENDIF

    FOR COMPTE=0 TO 10 'CHARGE LES VARIABLES

    GOSUB LECTUREAD

    delayms 10
    NEXT COMPTE

    COMPTE=0

    Main:

    IF CONTINU=1 THEN
    TIMER=TIMER+2000
    ELSE
    TIMER=TIMER+100
    ENDIF

    IF TIMER>=60000 THEN 'APRÈS 1 MINUTE ETEINS TOUT
    TIMER=0
    delayms 500
    LOW POWER
    delayms 1000
    ENDIF

    IF TMPOLD <> TMP AND CONTINU=0 THEN
    delayms 500
    TMPOLD=TMP
    ENDIF

    IF P1=0 THEN
    TIMER=0
    IF TMP<8 THEN
    TMP=TMP+1
    ELSE
    TMP=1
    ENDIF
    CONTINU=0
    PRESSION=0
    WHILE P1=0
    PRESSION=PRESSION+1
    delayms 10
    IF PRESSION>=200 THEN
    CONTINU=1
    TMP=1
    LCDOut $FE,$01," SELECTIONNE "
    LCDOut $FE,$C0," MODE CONTINU "
    delayms 2000
    ENDIF
    WEND
    ENDIF

    IF CONTINU=1 THEN
    'WRITE 1,1 IF TMP<4 THEN
    TMP=TMP+1
    ELSE
    TMP=1
    ENDIF
    delayms 1000
    FOR COMPTE=0 TO 10
    GOSUB LECTUREAD
    delayms 100
    NEXT COMPTE

    ELSE
    delayms 100
    'WRITE 1,0 GOSUB LECTUREAD
    ENDIF





    IF compte>=10 THEN
    compte=0
    ELSE
    compte=compte +1
    ENDIF

    'EFFECTUE LA MOYENNE DES 10 LECTURES

    VM[11]=(VM[1]+VM[2]+VM[3]+VM[4]+VM[5]+VM[6]+VM[7]+VM[8]+VM[9]+VM[0])/10
    VB[11]=(VB[1]+VB[2]+VB[3]+VB[4]+VB[5]+VB[6]+VB[7]+VB[8]+VB[9]+VB[0])/10
    IM[11]=(IM[1]+IM[2]+IM[3]+IM[4]+IM[5]+IM[6]+IM[7]+IM[8]+IM[9]+IM[0])/10
    IBS[11]=(IBS[1]+IBS[2]+IBS[3]+IBS[4]+IBS[5]+IBS[6]+IBS[7]+IBS[8]+IBS[9]+IBS[0])/10
    IBC[11]=(IBC[1]+IBC[2]+IBC[3]+IBC[4]+IBC[5]+IBC[6]+IBC[7]+IBC[8]+IBC[9]+IBC[0])/10
    V0[11]=(V0[1]+V0[2]+V0[3]+V0[4]+V0[5]+V0[6]+V0[7]+V0[8]+V0[9]+V0[0])/10
    V1[11]=(V1[1]+V1[2]+V1[3]+V1[4]+V1[5]+V1[6]+V1[7]+V1[8]+V1[9]+V1[0])/10

    SELECT CASE TMP
    CASE 1
    VM[11]=((VM[11]*48)/10)*11
    LCDOut $FE,$01,"Tension Module"
    LCDOut $FE,$C0," ",#VM[11]," mV"
    delayms 1
    CASE 2
    VB[11]=((VB[11]*48)/10)*11
    LCDOut $FE,$01,"Tension Batt. "
    LCDOut $FE,$C0," ",#VB[11]," mV"
    delayms 1
    CASE 3
    IF IM[11]>5 THEN
    IM[11]=(((IM[11]-5)*500)/11)+500
    LCDOut $FE,$01,"Courant Module"
    LCDOut $FE,$C0," ",#IM[11]," mA"
    ELSE
    LCDOut $FE,$01,"Courant Module"
    LCDOut $FE,$C0," < 500 mA "
    ENDIF
    delayms 1
    CASE 4
    if IBS[11]>IBC[11] THEN
    IF IBS[11]>5 THEN
    IBS[11]=(((IBS[11]-5)*500)/11)+500
    LCDOut $FE,$01,"Courant Batt."
    LCDOut $FE,$C0,"Décharge ",#IBS[11]," mA"
    ELSE
    LCDOut $FE,$01,"Courant Batt."
    LCDOut $FE,$C0,"Décharge < 500 mA"
    ENDIF
    ELSE
    IF IBC[11]>5 THEN
    IBC[11]=(((IBC[11]-5)*500)/11)+500
    LCDOut $FE,$01,"Courant Batt."
    LCDOut $FE,$C0,"Charge ",#IBC[11]," mA"
    ELSE
    LCDOut $FE,$01,"Courant Batt."
    LCDOut $FE,$C0,"Charge < 500 mA"
    ENDIF
    ENDIF
    delayms 1
    CASE 5
    V0[11]=(V0[11]*48)
    LCDOut $FE,$01," Tension V0 "
    LCDOut $FE,$C0," ",#V0[11]," mV"
    delayms 1
    CASE 6
    V1[11]=(V1[11]*48)/10
    LCDOut $FE,$01," Tension V1 "
    LCDOut $FE,$C0," ",#V1[11]," mV"
    delayms 1
    CASE 7
    V0[11]=(V0[11]*48)/10
    VM[11]=((VM[11]*48)/10)*11
    LCDOut $FE,$01," VM ",#VM[11]," mV"
    LCDOut $FE,$C0," V0 ",#V0[11]," mV"
    delayms 1
    CASE 8
    V1[11]=(V1[11]*48)/10
    VB[11]=((VB[11]*48)/10)*11
    LCDOut $FE,$01," VB ",#VB[11]," mV"
    LCDOut $FE,$C0," V1 ",#V1[11]," mV"
    delayms 1
    END SELECT


    GOTO MAIN

    LECTUREAD:


    Adcin 5,DONNEE
    VM[COMPTE]=DONNEE
    Adcin 6,DONNEE
    VB[COMPTE]=DONNEE
    Adcin 4,DONNEE
    IM[COMPTE]=DONNEE
    Adcin 3,DONNEE
    IBS[COMPTE]=DONNEE
    Adcin 2,DONNEE
    IBC[COMPTE]=DONNEE
    Adcin 0,DONNEE
    V0[COMPTE]=DONNEE
    Adcin 1,DONNEE
    V1[COMPTE]=DONNEE

    RETURN


    le picbasic plus me jette sur les code qui sont en rouge sur ce listing et je ne trouve pas
    merci de votre aide
    ###########
    Tu ferais bien de lire les remarques que te font les modérateurs!!!

    Ce n'est pas la peine non plus de poster le même sujet à plusieurs endroits. Je rappelle que c'est également interdit par la charte. Tu devrais prendre cinq minutes pour la lire attentivement.

    De plus, il serait préférable de mettre ton programme en fichier joint, pour éviter d'encombrer des pages et des pages
    Dernière modification par Jack ; 07/10/2006 à 08h29.

Discussions similaires

  1. Images noir et blanc pour afficheur LCD graphique piloter par uc?
    Par mastronic dans le forum Électronique
    Réponses: 10
    Dernier message: 04/09/2013, 19h58
  2. [LCD] info sur LCD graphique LM6300 ?
    Par c_est_den dans le forum Électronique
    Réponses: 2
    Dernier message: 02/12/2010, 22h01
  3. afficheur lcd en afficheur 7 segment
    Par tictic01 dans le forum Électronique
    Réponses: 3
    Dernier message: 04/02/2008, 09h43
  4. Afficheur graphique et 68HC11
    Par thomasalbert1993 dans le forum Électronique
    Réponses: 5
    Dernier message: 12/06/2007, 11h56
  5. afficheur lcd
    Par salva dans le forum Électronique
    Réponses: 0
    Dernier message: 26/01/2005, 16h53
Découvrez nos comparatifs produits sur l'informatique et les technologies.