|
void Tx_Long(float data)
{
unsigned char *a, Temp;
a = (unsigned char*)&data;
Temp = *(a+3);
USART_Tx(Temp);
Temp = *(a+2);
USART_Tx(Temp);
Temp = *(a+1);
USART_Tx(Temp);
Temp = *(a+0);
USART_Tx(Temp);
}
float Rx_Long(char NumUART)
{
unsigned char *a, Temp;
float data;
a = (unsigned char*)&data;
switch (NumUART)
{
case 0:
Temp = USART_Rx_0();
*(a+3) = Temp;
Temp = USART_Rx_0();
*(a+2) = Temp;
Temp = USART_Rx_0();
*(a+1) = Temp;
Temp = USART_Rx_0();
*(a+0) = Temp;
break;
case 1:
Temp = USART_Rx_1();
*(a+3) = Temp;
Temp = USART_Rx_1();
*(a+2) = Temp;
Temp = USART_Rx_1();
*(a+1) = Temp;
Temp = USART_Rx_1();
*(a+0) = Temp;
break;
}
return data;
}
E-mail: info@telesys.ru