📄 uart0.c
字号:
#include "at91sam7a3.h"
unsigned char UART0_RData[522] ;
unsigned char UART1_RHR ;
unsigned char UART0_TData[1050] ;
unsigned int UART0_R_Count ;
unsigned int UART1_R_Count ;
unsigned int USART0_NO;
unsigned long UART0_TS_Flag ;
unsigned int UART0_T_Count ;
unsigned long UART0_TE_Flag ;
unsigned long UART0_RE_Flag ;
unsigned long UART1_RE_Flag ;
int UART0_Reciev(void) ;
int UART1_Reciev(void) ;
int UART0_Transmit(void) ;
unsigned long US1_flag;
unsigned char ClerRXRDY;
//extern unsigned int InData_Count ;
int UART0_Reciev(void)
{
AT91S_USART *pUS0;
pUS0 = AT91C_BASE_US0; //0xFFFC0000;
if(pUS0->US_RHR == 0x00000053)
{
UART0_R_Count=0; //char_S
}
UART0_RData[UART0_R_Count] = pUS0->US_RHR;
UART0_R_Count++;
if(pUS0->US_RHR == 0x00000051) //char_Q
{
USART0_NO = UART0_R_Count;
UART0_R_Count=0;
UART0_RE_Flag = 0x55555555;
}
return 1;
}
int UART0_Transmit(void)
{
AT91S_USART *pUS0;
UART0_T_Count++;
pUS0->US_THR = UART0_TData[UART0_T_Count];
if (UART0_TData[UART0_T_Count]==0x51)
{
UART0_TS_Flag = 0xaaaaaaaa ;
UART0_T_Count=0x00000000;
}
return 1;
}
int UART1_Reciev(void)
{
AT91S_USART *pUS1,*pUS0;
unsigned char a,b,i;
pUS0 = AT91C_BASE_US0;
pUS1 = AT91C_BASE_US1;
if ((pUS1->US_CSR & 0x0000002) == 0x0000002)
{
UART1_RHR = pUS1->US_RHR;
a = UART1_RHR;
b = UART1_RHR;
a = a & 0x0F;
b = b >> 4;
b = b & 0x0F;
pUS0->US_THR = b; //Z_Data[j];
for (i=0;i<200;i++) ;
pUS0->US_THR = a; //Z_Data[j];
for (i=0;i<200;i++) ;
}
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -