This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

problem with msc1210 microcontroller

Simulation problem
joe man
Hi All,
When simulating an interupt from serial port RX0, I cannot succeed in affecting SBUF0 to a local variable, the watch window shows this variable to 0 even if SBUF0 is set.

Here is my code :

static void serial_port_0_isr (void) interrupt COM0_VECT
{ unsigned char data_received;
if (RI != 0)
{ RI = 0;
data_received = SBUF0;
...
} }

hi
i have the same problem like you i use the msc1210 microntroller.could you tell me how you did to solve your problem.think's

Parents
  • je suis pas trop a l'aise avec l'anglais.
    en fait mon probleme c'est que je parviens a envoyer des donnees dans SBUF mais quand j'essai de lire son contenu via une variable je trouve rien
    je te mets en bas de page mon bout de code
    merci d'avance

    /*******************************************************/ // TRANSMISSION // /*******************************************************/

    void transmission(char donnee_emise) { SBUF0=donnee_emise; //Serial Port 0 input TXD=donnee_emise while(TI==0)continue; //tant que TI=0 on reste la { donnee_emise=0; TI=0; //clear TI flag } } /*******************************************************/ // FIN TRANSMISSION // /*******************************************************/

    //-------------------------------------------------------

    /*******************************************************/ // RECEPTION // /*******************************************************/ char reception(void) { donnee_recue=SBUF0; //Serial Port 0 Output RXD=donne_recue while(RI==0)continue; //tant que RI=0 on reste la { RI=0; //clear RI flag } return (donnee_recue); }

Reply
  • je suis pas trop a l'aise avec l'anglais.
    en fait mon probleme c'est que je parviens a envoyer des donnees dans SBUF mais quand j'essai de lire son contenu via une variable je trouve rien
    je te mets en bas de page mon bout de code
    merci d'avance

    /*******************************************************/ // TRANSMISSION // /*******************************************************/

    void transmission(char donnee_emise) { SBUF0=donnee_emise; //Serial Port 0 input TXD=donnee_emise while(TI==0)continue; //tant que TI=0 on reste la { donnee_emise=0; TI=0; //clear TI flag } } /*******************************************************/ // FIN TRANSMISSION // /*******************************************************/

    //-------------------------------------------------------

    /*******************************************************/ // RECEPTION // /*******************************************************/ char reception(void) { donnee_recue=SBUF0; //Serial Port 0 Output RXD=donne_recue while(RI==0)continue; //tant que RI=0 on reste la { RI=0; //clear RI flag } return (donnee_recue); }

Children
  • je suis pas trop a l'aise avec l'anglais.
    en fait mon probleme c'est que je parviens a envoyer des donnees dans SBUF mais quand j'essai de lire son contenu via une variable je trouve rien
    je te mets en bas de page mon bout de code
    merci d'avance

    Que?

    je suis un rock star

  • en fait c'est moi qui suis pas a l'aise avec l'anglais.
    mon probleme est quand je charge SBUF0 par donnee_emise ca passe c-a-d a la fin de la transmission TI=1 ca c'est la transmission maintenant pour la reception quand j'essaie de mettre le contenu de SBUF0 dans donnee_recue j'y trouve rien en d'autre terme RI ne passe jamais a 1.

    void transmission(char donnee_emise)

    { SBUF0=donnee_emise;

    while(TI==0)continue;//tant que TI=0 on reste la

    {

    donnee_emise=0;

    TI=0;

    } }

    char reception(void)

    {

    donnee_recue=SBUF0;

    while(RI==0)continue;//tant que RI=0 on reste la

    {

    RI=0; //clear RI flag

    }

    return (donnee_recue);

    }