📄 fesc_5554_esci.c
字号:
/*================================================*/
/* ESCI */
/*================================================*/
/**************************************************************************/
void init_ESCI()
{
//ESCI_A.CR1.R = 0x01A1000C; //19200@128MHz
//ESCI_A.CR1.R = 0x0341000C; //9600@128MHz
//ESCI_A.CR1.R = 0x0187000C; //19200@120MHz
//ESCI_A.CR1.R = 0x030D000C; //9600@120MHz
ESCI_A.CR1.R = 0x0041000C; //115200@120MHz
pad_func_config(PIN_TXD_A_GPIO89,PRIMARY_FUNCTION); //SCI
pad_func_config(PIN_RXD_A_GPIO90,PRIMARY_FUNCTION); //SCI
//ESCI_B.CR1.B.SBR = 781; //
//ESCI_B.CR1.B.TE = 1;
//ESCI_B.CR1.B.RE = 1;
ESCI_B.CR1.R = 0x0187000C;
pad_func_config(PIN_TXD_B_GPIO91,PRIMARY_FUNCTION); //SCI
pad_func_config(PIN_RXD_B_GPIO92,PRIMARY_FUNCTION); //SCI
}
void send_c_ESCIA(uint8_t schar)
{
while(ESCI_A.SR.B.TDRE ==0) {}
ESCI_A.SR.R = 0x80000000;
ESCI_A.DR.B.D = schar;
}
uint8_t get_c_ESCI_A(void)
{ uint8_t RecData;
while(ESCI_A.SR.B.RDRF == 0 ) {}
RecData = ESCI_A.DR.B.D;
ESCI_A.SR.R = 0x20000000;
return(RecData);
}
void send_c_ESCIB(uint8_t schar)
{
while(ESCI_B.SR.B.TDRE == 1){}
ESCI_B.SR.R = 0x80000000;
ESCI_B.DR.B.D = schar;
}
uint8_t get_c_ESCI_B(void)
{ uint8_t RecData;
while(ESCI_B.SR.B.RDRF == 0 ) {}
RecData = ESCI_B.DR.B.D;
ESCI_B.SR.R = 0x20000000;
return(RecData);
}
//end of file
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -