format code

This commit is contained in:
Meco Man 2021-04-10 19:07:48 +08:00
parent 29ae0afb3b
commit 5279977f2e
42 changed files with 696 additions and 696 deletions

View File

@ -8,15 +8,15 @@ extern int Image$$RW_IRAM1$$ZI$$Limit;
extern int __bss_end;
#endif
uint8_t CpuUsageMajor, CpuUsageMinor; //CPUʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t CpuUsageMajor, CpuUsageMinor; //CPU使用率
USHORT usModbusUserData[MB_PDU_SIZE_MAX];
UCHAR ucModbusUserData[MB_PDU_SIZE_MAX];
//====================<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>==================================
//====================操作系统各线程优先级==================================
#define thread_SysMonitor_Prio 11
#define thread_ModbusSlavePoll_Prio 10
#define thread_ModbusMasterPoll_Prio 9
ALIGN(RT_ALIGN_SIZE)
//====================<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD>̶߳<EFBFBD>ջ====================================
//====================操作系统各线程堆栈====================================
static rt_uint8_t thread_SysMonitor_stack[256];
static rt_uint8_t thread_ModbusSlavePoll_stack[512];
static rt_uint8_t thread_ModbusMasterPoll_stack[512];
@ -25,11 +25,11 @@ struct rt_thread thread_SysMonitor;
struct rt_thread thread_ModbusSlavePoll;
struct rt_thread thread_ModbusMasterPoll;
//***************************ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD>***************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void thread_entry_SysRunLed(void* parameter)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2013-08-02 Company: BXXJS
//***************************系统监控线程***************************
//函数定义: void thread_entry_SysRunLed(void* parameter)
//入口参数:无
//出口参数:无
//备 注EditorArmink 2013-08-02 Company: BXXJS
//******************************************************************
void thread_entry_SysMonitor(void* parameter)
{
@ -60,18 +60,18 @@ void thread_entry_SysMonitor(void* parameter)
// errorCode = eMBMasterReqWriteMultipleHoldingRegister(1,3,2,usModbusUserData,RT_WAITING_FOREVER);
// errorCode = eMBMasterReqReadHoldingRegister(1,3,2,RT_WAITING_FOREVER);
// errorCode = eMBMasterReqReadWriteMultipleHoldingRegister(1,3,2,usModbusUserData,5,2,RT_WAITING_FOREVER);
//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//记录出错次数
if (errorCode != MB_MRE_NO_ERR) {
errorCount++;
}
}
}
//************************ Modbus<EFBFBD>ӻ<EFBFBD><EFBFBD><EFBFBD>ѵ<EFBFBD>߳<EFBFBD>***************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void thread_entry_ModbusSlavePoll(void* parameter)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2013-08-02 Company: BXXJS
//************************ Modbus从机轮训线程***************************
//函数定义: void thread_entry_ModbusSlavePoll(void* parameter)
//入口参数:无
//出口参数:无
//备 注EditorArmink 2013-08-02 Company: BXXJS
//******************************************************************
void thread_entry_ModbusSlavePoll(void* parameter)
{
@ -83,11 +83,11 @@ void thread_entry_ModbusSlavePoll(void* parameter)
}
}
//************************ Modbus<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѵ<EFBFBD>߳<EFBFBD>***************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void thread_entry_ModbusMasterPoll(void* parameter)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2013-08-28 Company: BXXJS
//************************ Modbus主机轮训线程***************************
//函数定义: void thread_entry_ModbusMasterPoll(void* parameter)
//入口参数:无
//出口参数:无
//备 注EditorArmink 2013-08-28 Company: BXXJS
//******************************************************************
void thread_entry_ModbusMasterPoll(void* parameter)
{
@ -99,11 +99,11 @@ void thread_entry_ModbusMasterPoll(void* parameter)
}
}
//**********************ϵͳ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>********************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: int rt_application_init(void)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Liuqiuhu 2013-1-31 Company: BXXJS
//**********************系统初始化函数********************************
//函数定义: int rt_application_init(void)
//入口参数:无
//出口参数:无
//备 注EditorLiuqiuhu 2013-1-31 Company: BXXJS
//********************************************************************
int rt_application_init(void)
{
@ -127,11 +127,11 @@ int rt_application_init(void)
return 0;
}
//**************************<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>RT-Thread<61><64><EFBFBD><EFBFBD>*************************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void rtthread_startup(void)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2011-04-04 Company: BXXJS
//**************************初始化RT-Thread函数*************************************
//函数定义: void rtthread_startup(void)
//入口参数:无
//出口参数:无
//备 注EditorArmink 2011-04-04 Company: BXXJS
//**********************************************************************************
void rtthread_startup(void)
{

View File

@ -78,7 +78,7 @@ void IWDG_Feed(void);
/***********************************************************************************************************/
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD><EFBFBD><EFBFBD>
//软、硬件版本号定义
#define VERSION_SOFTWARE_MAJOR 1
#define VERSION_SOFTWARE_MINOR 0
#define VERSION_HARDWARE_MAJOR 1

View File

@ -60,18 +60,18 @@ void rt_hw_board_init()
*******************************************************************************/
static void RCC_Configuration(void)
{
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǹ<EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>GPIO
//下面是给各模块开启时钟
//启动GPIO
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | \
RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | \
RCC_APB2Periph_GPIOE ,
ENABLE);
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>AFIO
//启动AFIO
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
//<2F><><EFBFBD><EFBFBD>ADCת<43><D7AA>ʱ<EFBFBD><CAB1>
//配置ADC转换时钟
RCC_ADCCLKConfig(RCC_PCLK2_Div8); //9M
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>DMAʱ<EFBFBD><EFBFBD>
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);//ʹ<EFBFBD><EFBFBD>DMAʱ<EFBFBD><EFBFBD>
//启动DMA时钟
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);//使能DMA时钟
/* Enable ADC1 and GPIOC clock */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 , ENABLE);
}
@ -106,17 +106,17 @@ static void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
/***************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F>ʼ<EFBFBD><CABC>*********************/
/***************数字输出IO初始化*********************/
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_11 | GPIO_Pin_12; //<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>1 LED1 LED2
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_11 | GPIO_Pin_12; //继电器1 LED1 LED2
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_14 | GPIO_Pin_15; //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>̵<EFBFBD><CCB5><EFBFBD>3 <20>̵<EFBFBD><CCB5><EFBFBD>2
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_14 | GPIO_Pin_15; //蜂鸣器 继电器3 继电器2
GPIO_Init(GPIOB, &GPIO_InitStructure);
/*************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F>ʼ<EFBFBD><CABC>*********************/
/*************数字输入IO初始化*********************/
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
@ -125,29 +125,29 @@ static void GPIO_Configuration(void)
}
//*******************<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ź<EFBFBD>*************************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void IWDG_Configuration(void)
//<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ź<EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>=4*2^prer.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵֻ<D6B5><D6BB><EFBFBD><EFBFBD>256!ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>):Tout=40K/((4*2^prer)*rlr)ֵ 2S<32><53>ʱ
//Editor<EFBFBD><EFBFBD>liuqh 2013-1-16 Company: BXXJS
//*******************初始化独立看门狗*************************************
//函数定义: void IWDG_Configuration(void)
//描 述:初始化独立看门狗
//入口参数:无
//出口参数:无
//备 注:分频因子=4*2^prer.但最大值只能是256!时间计算(大概):Tout=40K/((4*2^prer)*rlr)值 2S超时
//Editorliuqh 2013-1-16 Company: BXXJS
//*******************************************************************
static void IWDG_Configuration(void)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//ʹ<>ܶ<EFBFBD>IWDG->PR<50><52>IWDG->RLR<4C><52>д
IWDG_SetPrescaler(IWDG_Prescaler_64);//64<36><34>Ƶ
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能对IWDG->PR和IWDG->RLR的写
IWDG_SetPrescaler(IWDG_Prescaler_64);//64分频
IWDG_SetReload(1300);
IWDG_ReloadCounter();
IWDG_Enable();
}
//*******************ι<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ź<EFBFBD>*************************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void IWDG_Feed(void)
//<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ź<EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>prer:<3A><>Ƶ<EFBFBD><C6B5>:0~7(ֻ<>е<EFBFBD><33><CEBB>Ч!)<29><>rlr:<3A><>װ<EFBFBD>ؼĴ<D8BC><C4B4><EFBFBD>ֵ:<3A><>11λ<31><CEBB>Ч.
//<EFBFBD><EFBFBD> ע<><D7A2><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>=4*2^prer.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵֻ<D6B5><D6BB><EFBFBD><EFBFBD>256!ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>):Tout=40K/((4*2^prer)*rlr)ֵ
//Editor<EFBFBD><EFBFBD>liuqh 2013-1-16 Company: BXXJS
//*******************喂独立看门狗*************************************
//函数定义: void IWDG_Feed(void)
//描 述:初始化独立看门狗
//入口参数:无
//出口参数prer:分频数:0~7(只有低3位有效!)rlr:重装载寄存器值:低11位有效.
//备 注:分频因子=4*2^prer.但最大值只能是256!时间计算(大概):Tout=40K/((4*2^prer)*rlr)值
//Editorliuqh 2013-1-16 Company: BXXJS
//*******************************************************************
void IWDG_Feed(void)
@ -219,19 +219,19 @@ void BSP_Init (void)
NVIC_Configuration();
SysTick_Configuration();
GPIO_Configuration();
// TODO <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD>ʱע<CAB1>Ϳ<EFBFBD><CDBF>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
// TODO 方便调试,暂时注释看门狗,正式发布时需要打开
// IWDG_Configuration();
}
//****************************<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>********************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: uint8_t AvoidTimeout(uint32_t TimeOfTimeout,uint32_t Period,uint8_t (*DetectCondition)())
//<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TimeOfTimeoutʱ<74><CAB1><EFBFBD>ڣ<EFBFBD>ÿPeriodʱ<64><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>DetectCondition()<29><><EFBFBD>ص<EFBFBD>ֵ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TimeOfTimeout<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>systick<EFBFBD><EFBFBD>
// Period <EFBFBD><EFBFBD>ÿPeriodʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>systick<EFBFBD><EFBFBD>
// (*DetectCondition)()<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ConditionValue<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱPeriodʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// ConditionValue <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>TimeOfTimeoutʱ<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>TimeOfTimeoutʱ<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>û<EFBFBD>м<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2012-03-09 Company: BXXJS
//****************************防超时程序********************************
//函数定义: uint8_t AvoidTimeout(uint32_t TimeOfTimeout,uint32_t Period,uint8_t (*DetectCondition)())
//描 述在TimeOfTimeout时间内每Period时间检测一次DetectCondition()返回的值是否有效
//入口参数TimeOfTimeout防超时总时间单位systick
// Period 每Period时间检测一次即时间因子单位systick
// (*DetectCondition)()检测条件等于ConditionValue则条件满足检测结束否则延时Period时间继续检测
// ConditionValue ;条件成立的值
//出口参数0在TimeOfTimeout时间内检测到条件成立
// 1在TimeOfTimeout时间内没有检测到条件成立
//备 注EditorArmink 2012-03-09 Company: BXXJS
//**********************************************************************
uint8_t AvoidTimeout(uint32_t TimeOfTimeout,uint32_t Period,uint8_t (*DetectCondition)(),uint8_t ConditionValue)
{
@ -250,11 +250,11 @@ uint8_t AvoidTimeout(uint32_t TimeOfTimeout,uint32_t Period,uint8_t (*DetectCond
}
//************************************<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**************************************
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: void Delay(vu32 nCount)
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>nCount <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>
//<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<EFBFBD><EFBFBD> ע<><D7A2>Editor<6F><72>Armink 2011-03-18 Company: BXXJS
//************************************延时函数**************************************
//函数定义: void Delay(vu32 nCount)
//入口参数nCount :延时函数中,循环的次数
//出口参数:无
//备 注EditorArmink 2011-03-18 Company: BXXJS
//**********************************************************************************
void Delay(vu32 nCount)
{

View File

@ -1,7 +1,7 @@
/*
* File : usart.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006-2013, RT-Thread Development Team
* COPYRIGHT (C) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at

View File

@ -390,7 +390,7 @@ eMBMasterFuncReadDiscreteInputs( UCHAR * pucFrame, USHORT * usLen );
eMBException
eMBMasterFuncReadWriteMultipleHoldingRegister( UCHAR * pucFrame, USHORT * usLen );
/*<EFBFBD><EFBFBD> \ingroup modbus
/*! \ingroup modbus
*\brief These functions are interface for Modbus Master
*/
void vMBMasterGetPDUSndBuf( UCHAR ** pucFrame );