📄 ioserialprocess.c
字号:
#ifndef _IO_SERIAL_PROCESS_C_
#define _IO_SERIAL_PROCESS_C_
#include "ioserial.h"
#include "serial.h"
SERIALSTRUCT idata gIoSerial;
void emulateStartReceive(void) using 1
{
DISABLE_INTERRUPT;
giocomm.status = EMULATE_RECEIVE;
giocomm.bitCount = 0;
giocomm.bitTemp = 0;
sendbit( HIGH );
EMULATE_STOP_BAUD;
EMULATE_START_EXT;
ENABLE_INTERRUPT;
}
void emulateTransmitIsr(void) using 1
{
if( gIoSerial.SendLength <= gIoSerial.SendCounter )
{
gIoSerial.SendLength = 0;
gIoSerial.SendCounter = 0;
emulateStartReceive();
}
else
{
setEmulateTransmitByte( gIoSerial.SendBuffer[gIoSerial.SendCounter] );
gIoSerial.SendCounter ++;
}
}
void initial_serial1( void )
{
SERIALSTRUCT *pUart = &gIoSerial;
pUart->ReceiceLength = 0;
pUart->SendLength = 0;
pUart->SendCounter = 0;
pUart->ReveiveOverTime = RECEIVE_TIME_OVER;
pUart->ReveiveStatus = RECEIVE_WAIT;
memset( pUart->ReceiceBuffer, 0, EMULATE_MAX_BUFFER_LENGTH );
memset( pUart->SendBuffer, 0, EMULATE_MAX_BUFFER_LENGTH );
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -