資源簡(jiǎn)介
用于stm32的modbus庫,已經(jīng)移植好,親測(cè)可以用,方便大家參考學(xué)習(xí)
代碼片段和文件信息
/**
??******************************************************************************
??*?@文件????
??*?@作者?
??*?@版本
??*?@日期
??*?@概要
??******************************************************************************
??*?@注意事項(xiàng)
??*
??*
??*
??******************************************************************************
??*/??
/*?頭文件 --------------------------------------------------------------*/
#include?
#include?“stm32f10x.h“
#include?“mb.h“
/*?私有數(shù)據(jù)類型?--------------------------------------------------------------*/
/*?私有定義? --------------------------------------------------------------*/
/*?私有宏定義? --------------------------------------------------------------*/
#ifdef?__GNUC__
/*?With?GCC/RAISONANCE?small?printf?(option?LD?linker->Libraries->Small?printf
???set?to?‘Yes‘)?calls?__io_putchar()?*/
#define?PUTCHAR_PROTOTYPE?int?__io_putchar(int?ch)
#else
#define?PUTCHAR_PROTOTYPE?int?fputc(int?ch?FILE?*f)
#endif?/*?__GNUC__?*/
/*?私有變量? --------------------------------------------------------------*/
/*?私有函數(shù)聲明?--------------------------------------------------------------*/
void?LED_Config(void)
{
? GPIO_InitTypeDef?GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC?ENABLE);
GPIO_InitStructure.GPIO_Pin?? =?GPIO_Pin_0?|?GPIO_Pin_1?|?GPIO_Pin_2?|?GPIO_Pin_3?|?GPIO_Pin_4?|?GPIO_Pin_5;
GPIO_InitStructure.GPIO_Mode? =?GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed? =?GPIO_Speed_50MHz;
GPIO_Init(GPIOC&GPIO_InitStructure);
}
/**
??*?@brief??Configure?the?nested?vectored?interrupt?controller.
??*?@param??None
??*?@retval?:?None
??*/
void?NVIC_Configuration(void)
{
??NVIC_InitTypeDef?NVIC_InitStructure;
??/*?Enable?the?TIM2?gloabal?Interrupt?*/
??NVIC_InitStructure.NVIC_IRQChannel?=?TIM2_IRQn;
??NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority?=?0;
??NVIC_InitStructure.NVIC_IRQChannelSubPriority?=?1;
??NVIC_InitStructure.NVIC_IRQChannelCmd?=?ENABLE;
??NVIC_Init(&NVIC_InitStructure);
??/*?Enable?the?TIM2?gloabal?Interrupt?*/
??NVIC_InitStructure.NVIC_IRQChannel?=?USART1_IRQn;
??NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority?=?0;
??NVIC_InitStructure.NVIC_IRQChannelSubPriority?=?2;
??NVIC_InitStructure.NVIC_IRQChannelCmd?=?ENABLE;
??NVIC_Init(&NVIC_InitStructure);
}
/**
??*?@功能
??*?@參數(shù)
??*?@返回值
??*/
int?main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_Configuration();
LED_Config();
/*模式 ?從機(jī)地址?端口?波特率?校驗(yàn)位*/
eMBInit(?MB_RTU?0x01?0?9600?MB_PAR_NONE?);
/*?Enable?the?Modbus?Protocol?Stack.?*/
eMBEnable(??);
for(?;;?)
{
?(?void?)eMBPoll(??);
?/*?Here?we?simply?count?the?number?of?poll?cycles.?*/
?//usRegInputBuf[0]++;
}
}
/**
??*?@brief??Retargets?the?C?library?printf?function?to?the?USART.
??*?@param??None
??*?@retval?None
??*/
PUTCHAR_PROTOTYPE
{
??/*?Place?your?implementation?of?fputc?here?*/
??/*?Loop?until?the?end?of?transmission?*/
??while?(USART_GetFlagStatus(USART
評(píng)論
共有 條評(píng)論