root/branch/fall/sp4c12/uart0/uart0/uart0.c @ 729
| 718 | mafall7 | /***********************************************************************/
|
|
/* */
|
|||
/* FILE :uart0.c */
|
|||
/* DATE :Wed, Jun 02, 2021 */
|
|||
/* DESCRIPTION :main program file. */
|
|||
/* CPU GROUP :87B */
|
|||
/* */
|
|||
/* This file is generated by Renesas Project Generator (Ver.4.18). */
|
|||
/* NOTE:THIS IS A TYPICAL EXAMPLE. */
|
|||
/***********************************************************************/
|
|||
| 725 | mafall7 | #include "sfr32c87.h"
|
|
| 718 | mafall7 | ||
| 725 | mafall7 | void uart0_init() //initialisation du port s?rie
|
|
| 718 | mafall7 | {
|
|
| 725 | mafall7 | /**registre u0mr
|
|
smd0_u0mr = 1;
|
|||
smd1_u0mr = 0;
|
|||
smd2_u0mr = 1;
|
|||
ckdir_u0mr = 0;
|
|||
stps_u0mr = 0;
|
|||
prye_u0mr = 0;
|
|||
iopol_u0mr = 0;**/
|
|||
u0mr = 0x05;
|
|||
| 718 | mafall7 | ||
| 725 | mafall7 | u0brg = 64;
|
|
/**registre u0c0
|
|||
clk0_u0c0 = 1;
|
|||
clk1_u0c0 = 0;
|
|||
crs_u0c0 = 1;
|
|||
crd_u0c0 = 1;
|
|||
nch_u0c0 = 0;
|
|||
ckpol_u0c0 = 0;
|
|||
uform_u0c0 = 0;
|
|||
**/
|
|||
u0c0 = 0x00;
|
|||
/**registre u0c1
|
|||
te_u0c1 = 1;
|
|||
re_u0c1 = 1;
|
|||
u0rrm_u0c1 = 0;
|
|||
u0lch_u0c1 = 0;
|
|||
sclkstpb_u0c1 = 0;**/
|
|||
u0c1 = 0x05;
|
|||
pd6_3 = 1;
|
|||
pd6_2 = 0;
|
|||
ps0_3 = 1;
|
|||
ps0_2 = 0;
|
|||
| 718 | mafall7 | }
|
|
| 725 | mafall7 | ||
void uart0_tx(char c) //envoi d'un caractere liaison s?rie
|
|||
{
|
|||
while(!ti_u0c1); //attente liaison
|
|||
u0tb = c;
|
|||
}
|
|||
char uart0_rx() //reception d un caractere sur le port serie
|
|||
{
|
|||
while(ri_u0c1 != 1); //attente liaison
|
|||
return u0rb;
|
|||
}
|
|||
void fonction_alphabet(void)
|
|||
{
|
|||
int i;
|
|||
for(i=97 ; i<123 ; i++)
|
|||
uart0_tx(i);
|
|||
}
|
|||
int Rectrame(char *Buffer)
|
|||
{
|
|||
int nombre_element_tableau = 0;
|
|||
char caractere_recu;
|
|||
char checksum ='0';
|
|||
char ancienne_valeur_checksum ='0';
|
|||
char string[5] = {'g','p','g','g','a'};
|
|||
int i;
|
|||
/**lecture du caractere recu**/
|
|||
caractere_recu = uart0_rx();
|
|||
/**detection trame**/
|
|||
while( caractere_recu != '$')
|
|||
{
|
|||
caractere_recu = uart0_rx();
|
|||
}
|
|||
nombre_element_tableau=0;
|
|||
checksum = 0;
|
|||
/**memorisation de la trame recue**/
|
|||
while( caractere_recu != '*')
|
|||
{
|
|||
caractere_recu = uart0_rx();
|
|||
Buffer[nombre_element_tableau++] = caractere_recu;
|
|||
}
|
|||
for(i=0 ; i<5 ; i++)
|
|||
{
|
|||
if(Buffer[i] != string[i])
|
|||
return 0;
|
|||
}
|
|||
return nombre_element_tableau;
|
|||
}
|