Microcontroleur RS232
Répondre à la discussion
Affichage des résultats 1 à 17 sur 17

Microcontroleur RS232



  1. #1
    inviteef052b11

    Microcontroleur RS232


    ------

    Bonjour à tous , s'il vous plait est qu'il y a quelqu'un qui connait le protocole RS232 car j'ai un exo la dessus et merci d'avance <3

    -----

  2. #2
    invite855cd7fb

    Re : Microcontroleur RS232


  3. #3
    inviteef052b11

    Re : Microcontroleur RS232

    mon exerice c'est de réaliser le jeux "devinette" en utilisant ce protocole PLZZZ aidez moi , file moi votre mail ou quelqchose comme ça plzzzzzzzz <3

  4. #4
    invitee05a3fcc

    Re : Microcontroleur RS232

    Citation Envoyé par boy_free Voir le message
    le jeux "devinette"
    C'est quoi ?
    en utilisant ce protocole PLZZZ
    C'est quoi ?

  5. A voir en vidéo sur Futura
  6. #5
    invite5d44ee6f

    Re : Microcontroleur RS232

    Bonjour,

    C'est vrai, essais d'être plus explicite sinon pour t'aider ça va être dur !

    Tu devrais éviter les phrases du genre "file moi votre mail ou quelqchose comme ça plzzzzzzzz"

    C'est juste un conseil

    Bon courage

  7. #6
    inviteef052b11

    Re : Microcontroleur RS232

    BONJOUR, DAUDET78 : l'énoncé est le suivant :
    le microcontroleur choisi un nbre entre 0 et 255 et nous devons le deviner en un tps défini (1 min par exple) le temps qui reste est représenté sur 4 led (1 led correspond à 25 secondes ) si on trouve le nomb re voulu avant une minute , le microc nous donne le tps qu'on a mis en secondes, si non il nous informe qu'on a perdu et il nous donne la vraie réponse puis on recommence notre jeu (bien sur si on fait une tentation fausse et on a encore du tps il nous informe si le nbre est plus grand ou plus petit ) ; Ce jeu est tres connu dans la programmation en C , sachant qu'on doit écrire un programme en C en utilisant la communication Série RS232 entre le PC et le microc et merci d'avance .... (j'ai écri un bout de codes mais j'arrive pas à gerer qqlq fonction plzzzzzzzzz aidez moi <3 <3 <3

  8. #7
    inviteef052b11

    Re : Microcontroleur RS232

    je m'excuse Patrick , je suis encore débutant dans le forum et pas su les régles , merci quand meme pour les conseils <3

  9. #8
    invite855cd7fb

    Re : Microcontroleur RS232

    6 messages avant d'en arriver enfin a la vrai question.
    Je sens qu'on va avancer vite.


    Garde tes petits coeurs, t'est pas du tout mon genre.

  10. #9
    inviteef052b11

    Re : Microcontroleur RS232

    je m"excuse MiGaNuTs

  11. #10
    invite5d44ee6f

    Re : Microcontroleur RS232

    En faite ce que tu veux faire s'appelle de la "Dichotomie"

    Mais il y a encore beaucoup d'inconnues :
    - tu programmes le micro ou le PC ?
    - une fois la réponse trouvée il faut savoir ou aller chercher le temps restant !? ou ? le micro l'affiche ? la renvoi par le UART ?

  12. #11
    invitefaaca50b

    Re : Microcontroleur RS232

    message 50236: on aura progressé.

    Putain les mecs, donnez toutes les infos en une fois, on est pas la pour jouer aux devins.
    Yen a marre de devoir reflechir sur des bases foireuses.

  13. #12
    inviteef052b11

    Re : Microcontroleur RS232

    marci patrick pour la réponse ; moi je programme le microc , Le pc ne sert que pour l'affichage des message et le faite d'entrer un nombre voila les indications et les fonctions à developper , moi j'ai pu developper que les fonctions de base (communication rs23 ) voila ce quil faut faire comme démarche :
    Écrire et tester les fonctions de communications (RS232) suivantes :
    com_init qui initialise les registres de l'EUSART.
    com_recieve qui attend l'arrivée d'un octet et le renvoie.
    com_transmit qui permet d'envoyer un octet vers le PC.
    com_string_transmit qui envoie une chaîne de caractères (tableau d'octets) au PC.
    com_string_receive qui permet de recevoir une chaîne de caractère envoyée par le PC, cette
    fonction reçoit en paramètre l'adresse du tableau (chaîne) où l'on veut stocker la chaîne reçue.
    (La fin de la saisie dans l'hyperterminal peut être signalée par l'appui sur la touche Entrée)

    Fonction de génération « aléatoire » du nombre :
    Cette fonction doit renvoyer le nombre mystère. Pour cela elle incrémente un entier n codé
    sur 8 octets (de type unsigned char) tant qu'aucune donnée n'est reçue sur la liaison série. Quand
    n = 255, si on ajoute 1 on a n = 256 qui se code sur 9 bits mais comme n est sur 8 bits, on aura n
    = 0. Écrire cette fonction.
    Fonctions de gestion du temps
    Le temps maximal pour trouver la solution est définit dans le programme principal (main). Le
    temps restant est une variable globale (commune à toutes les fonctions). On mesure le temps avec le
    TIMER 0.
    Écrire les fonctions :
    timer_init qui initialise les registres du timer, des interruptions,
    timer_go qui lance le décompte et les interruptions,
    timer_stop qui arrête le décompte et les interruptions,
    timer_interrupt qui décrémente le temps et met à jour les LED (une LED correspond à 25
    secondes restantes).
    Programme complet
    Lorsque le programme démarre, le μC envoie un message au joueur en lui demandant
    d'appuyer sur une touche pour commencer, ce qui permet de générer le nombre mystère. Dès l'appui
    le chrono est lancé, lorsque une proposition est faire, le μC informe le joueur du fait que le nombre
    mystère est supérieur ou inférieur à sa proposition. Si le joueur trouve, il est informé de son temps
    sinon le nombre mystère lui est donné. A la fin d'une partie le programme se relance.
    Écrire et tester le programme « devine », la conversion d'une chaîne de caractère en entier
    peut se faire avec la fonction atoi de la bibliothèque stdlib.h, il y a également la fonction inverse
    itoa.
    Le temps peut se terminer lorsque le μC est en attente d'une saisie du joueur. Le jeu se joue avec le
    pavé numérique du clavier, tout appui sur une autre touche peut faire bugger le programme. Si
    vous avez le temps, vous pouvez détecter les erreurs de saisie et demander une nouvelle saisie.

  14. #13
    invite0e5af214

    Re : Microcontroleur RS232

    je m'excuse Patrick , je suis encore débutant dans le forum et pas su les régles
    Ok, mais t'es pas débutant dans les relations entre les gens quand même ?

    sachant qu'on doit écrire un programme en C en utilisant la communication Série RS232 entre le PC et le microc
    C'est pas clair.
    OK un PC et un microcontroleur vont discuter, mais pour s'échanger quoi ?
    Tu as 2 programmes à écrire qui vont à eux deux :
    - choisir un nombre au hasard
    - prendre le nombre choisi par le joueur
    - le comparer au nombre à trouver
    - décider si c'est gagné ou perdu
    - Connaitres les règles du jeu
    - Afficher des trucs

    Commence par définir ca et tiens nous au courant.
    Si c'est déjà défini, il aurait fallu commencer par nous l'expliquer.
    Dans l'état, on ne peut répondre à ta question qu'en t'envoyant sur wikipedia

    Edit : Ok tu as répondu à temps

  15. #14
    inviteef052b11

    Re : Microcontroleur RS232

    Merci bc cherwam07 ; j'ai connu la démarche à faire comme indiquée ci dessus et comme vous venez d'annoncer, je sais comment faire le programme en C indépandament du microc mon probleme c'est qu ej'arrive pas à faire le lien avec le RS232 c'est mon premier programme en utilisant ce protocole RS232

  16. #15
    invite0f6db3cd

    Re : Microcontroleur RS232

    RS232 c'est juste le type de liaison rien de spéciale faudra juste envoyer ton programme par liaison série je suppose que tu as un logiciel pour donc ça devrai aller

  17. #16
    invite855cd7fb

    Re : Microcontroleur RS232

    Si ton microcontroleur est équipé d'un UART qui va bien, tu n'as pas a te reprendre la tête pour la gestion du RS232, il va s'en débrouiller tout seul (ou du moins en grande partie)

    Si tu te lance dans la réalisation de quelque chose du genre sur un uC qui n'a pas d'UART, c'est que tu n'est plus un débutant. Ou que tu est un peu maso et que tu ne craint pas les échecs.

    Selon l'avis de ma boule de cristal, coté PC il n'y a rien a programmer, utiliser l'hyperterminal de windows ou un de ses nombreux équivalents devrais faire l'affaire.
    On se contente de saisir une valeur, de l'envoyer au uC, puis on regarde ce qu'il nous a répondu.

    Coté uC ca ne me semble pas très compliqué, mais ça peut varier selon le uC utilisé (15 messages dans ce topic, et on ne sait toujours pas a quoi on a affaire)

    Tu initialise les périphériques dont tu as besoin (au moins l'UART, un timer et 4 sorties pour les leds. je suis fort en déductions malgré le peu d'infos que tu nous donne)
    Ensuite tu initialise les variables dont tu as besoin (a priori tu a un moins 1 variable pour le nombre a deviner, 1 variable pour le temps écoulé et un buffer pour les trucs reçus par l'uart. Il en faut probablement quelques autres pour les boucles et la p'tite cuisine interne de ton programme)

    Dans ton programme tu va avoir une boucle principale qui surveille le temps
    dans cette boucle (ou via une interruption) tu lit l'uart pour mettre des trucs dans le buffer
    tu compare le buffer au truc a deviner, et selon le résultat tu utilise a nouveau l'uart pour répondre au messages reçu
    en fonction du temps tu joue avec tes leds

    une fois le temps écoulé tu utilise l'uart pour annoncer le timeout.
    Ensuite tu tire un nouveau nombre au hasard et tu recommence.

    C'est pas très compliqué comme façon de faire, il faut juste un peu de méthode, et surtout lire la doc du uC pour voire comment on exploite ses timers et son UART.

    Eventuellement on peut aussi utiliser les interruption, soit pour gérer le timer, soit pour gérer le buffer de l'UART, soit les deux.
    Mais ca dépends vachement du uC.


    Au fait, on sait toujours pas ce que c'est comme uC (vu que tu utilise micro C je suppose que c'est un PIC, mais ca ne nous avance pas beaucoup comme déduction)

  18. #17
    invite5d44ee6f

    Re : Microcontroleur RS232

    Je ne vois rien a ajouter à MiGaNuTs ...

    A part peut être la gestion du temps en seconde, d'un point de vu personnel je préfère utiliser une horloge temps réel car sinon le temps peut varier en fonction de la vitesse d'instruction.

    1) incrémentation du TIMER0, initialisation à 0 débordement à 256 ce qui provoque la mise à 1 du flag TMR0IF (interruption pour le timeout) puisqu'on mesure le temps avec TMR0
    2) interruption sur RX (je trouve ça mieux), analyse du caractère reçu, si non numérique (voir table des caractère en hexa) renvoi d'un message "mauvaise saisie"
    et création de tableau pour envoyer un string en RS232

    C'est largement faisable (cas ou il s'agit d'un PIC)

    Bon courage, décrits l'algorithme et tu verras ce sera assez claire

Discussions similaires

  1. Cable RS232 avec un microcontroleur
    Par invite0e6776ea dans le forum Électronique
    Réponses: 4
    Dernier message: 11/02/2010, 17h29
  2. Relation RS232 - microcontrôleur
    Par invite227f3bcd dans le forum Électronique
    Réponses: 6
    Dernier message: 06/07/2009, 10h03
  3. Cherche microcontroleur à 2 RS232
    Par Jonat_95 dans le forum Électronique
    Réponses: 7
    Dernier message: 25/08/2008, 00h04
  4. Microcontroleur, utiliser une donnée RS232
    Par Tony78 dans le forum Électronique
    Réponses: 1
    Dernier message: 28/07/2008, 16h26
  5. Projet RS232&PIC avec un microcontroleur.
    Par invite7d156dae dans le forum Électronique
    Réponses: 8
    Dernier message: 17/05/2008, 22h35
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...