IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

[PIC] Envoyer un message sur un LCD via une textbox


Sujet :

C

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut [PIC] Envoyer un message sur un LCD via une textbox
    Bonjour


    Je cherche a entrer depuis une textbox de page web un message qui sera envoyé sur un afficheur LCD.

    Je pense y être presque parvenu, cependant il doit y avoir un problème dans mon code ci-dessous car lorsque je tape 'test' dans la texbox puis clique sur le bouton envoyer, j'ai plein de caractères insignifiants qui s'affichent sur l'afficheur.

    il doit y avoir un pb de conversion entre l'argv[2] ( contenu de la textbox ) et ce qui est envoyé dans buffer du LCD. (LCDBuffer)

    Pourriez vous m'aider svp ?

    Voici ce que j'ai écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    ////////////////////////////////////////////////////////////////////////////////////
    // Affichage TEXT to LCD 
    ////////////////////////////////////////////////////////////////////////////////////
     
    case CGI_CMD_LCDOUT:	// ACTION=5
     
     
    		if(argc > 2)	// Text provided in argv[2]
    		{
    			// Write 32 received characters or less to LCDText
    			if(strlen(argv[2]) < 32)
    			{
    				memset(LCDText, ' ', 32);
    				strcpy(LCDText, argv[2]);			// Copy argv[2] contents into LCDText
     
    				LCDClearBuffer();
    				strcpypgm2ram((char *)&LCDBuffer[0][0],(LCDText));   // Affichage sur ligne 0, position 0
    			}
    			else
    			{
    				memcpy(LCDText, (void*)argv[2], 32);
    			}
     
    			// Write LCDText to the LCD
    			LCDRefresh();
    		}
    		else			// No text provided
    		{
    			LCDClearBuffer();
    		}
    		memcpypgm2ram((void*)argv[0], (ROM void*)COMMANDS_OK_PAGE, COMMANDS_OK_PAGE_LEN);
            break;
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 413
    Points : 1 993
    Points
    1 993
    Par défaut
    Bonjour,

    La plupart d'entre nous n'ont pas de boule de cristal à la maison et je le répète encore : "On ne peut pas t'aider sans un code complet..."

    On n'a pas la déclaration des variables, etc...

    Donc il nous faut le code:
    • programme principal (fonction main)
    • tes fonctions utilisés par ton programme
    • les entêtes des fonctions non standards (dans ce cas, les fonctions pilotant le LCD)
    Bien le bonjour chez vous
    Jowo

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    Merci Jowo

    Je poste ci-joint la globalité de mon projet :

    projet.zip


    Le fichier principal est main.c :

    La partie de code qui me pose pb commence en ligne 1311


    les déclarations sont faites à partir de la ligne 186
    la boucle infinie débute en ligne 2428

    une partie de la config logicielle se trouve dans config.h
    et la config matériel dans eip10.h

    l'afficheur LCD est piloté par cmlcddriver.c et h et aussi hd44780.h



    Si vous pourriez m'aider je vous en serai très reconnaissant,

Discussions similaires

  1. Envoyer des message sur via le port 465 (smtp/ssl)
    Par yuriyan dans le forum Framework .NET
    Réponses: 0
    Dernier message: 02/08/2013, 16h27
  2. [AC-2010] Envoyer un message sur Access via Outlook
    Par FishAndChips dans le forum VBA Access
    Réponses: 1
    Dernier message: 06/09/2012, 10h57
  3. Réponses: 1
    Dernier message: 27/10/2008, 17h00
  4. Réponses: 6
    Dernier message: 13/07/2007, 11h50
  5. [PHP-JS] PHP Envoyer un message sur des news-groupe
    Par FoxLeRenard dans le forum Langage
    Réponses: 2
    Dernier message: 03/10/2006, 01h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo