DK-TM4C129X_FreeModbus_Slave
移植Freemodbus V1.5.0基于TI DK-TM4C129X 开发板。开发环境Keil MDK5.10
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-06-26 15:45 TM4C129X
文件 27 2014-06-07 15:45 TM4C129Xclear.bat
目录 0 2014-06-26 15:45 TM4C129Xdebug
文件 127187 2014-06-21 16:04 TM4C129Xdebugadc.crf
文件 509 2014-06-21 16:04 TM4C129Xdebugadc.d
文件 126288 2014-06-21 16:04 TM4C129Xdebugadc.o
文件 68936 2014-06-21 16:04 TM4C129Xdebugaes.crf
文件 548 2014-06-21 16:04 TM4C129Xdebugaes.d
文件 75740 2014-06-21 16:04 TM4C129Xdebugaes.o
文件 132243 2014-06-21 16:04 TM4C129Xdebugcan.crf
文件 551 2014-06-21 16:04 TM4C129Xdebugcan.d
文件 128668 2014-06-21 16:04 TM4C129Xdebugcan.o
文件 29595 2014-06-21 16:04 TM4C129Xdebugcomp.crf
文件 478 2014-06-21 16:04 TM4C129Xdebugcomp.d
文件 41676 2014-06-21 16:04 TM4C129Xdebugcomp.o
文件 3699 2014-06-21 16:04 TM4C129Xdebugcpu.crf
文件 137 2014-06-21 16:04 TM4C129Xdebugcpu.d
文件 11856 2014-06-21 16:04 TM4C129Xdebugcpu.o
文件 10804 2014-06-21 16:04 TM4C129Xdebugcrc.crf
文件 373 2014-06-21 16:04 TM4C129Xdebugcrc.d
文件 22756 2014-06-21 16:04 TM4C129Xdebugcrc.o
文件 30510 2014-06-21 16:04 TM4C129Xdebugdes.crf
文件 465 2014-06-21 16:04 TM4C129Xdebugdes.d
文件 43364 2014-06-21 16:04 TM4C129Xdebugdes.o
文件 122063 2014-06-21 16:04 TM4C129Xdebugeeprom.crf
文件 649 2014-06-21 16:04 TM4C129Xdebugeeprom.d
文件 117892 2014-06-21 16:04 TM4C129Xdebugeeprom.o
文件 119555 2014-06-21 16:04 TM4C129Xdebugemac.crf
文件 574 2014-06-21 16:04 TM4C129Xdebugemac.d
文件 123100 2014-06-21 16:04 TM4C129Xdebugemac.o
文件 122083 2014-06-08 16:15 TM4C129Xdebugepi.crf
............此处省略315个文件信息
/* ----------------------- Modbus includes ----------------------------------*/
#include “mb.h“
#include “mbport.h“
#include “HAL_Interface.h“
#include “mbutils.h“
/* ----------------------- Defines ------------------------------------------*/
#define REG_INPUT_START 0
#define REG_INPUT_NREGS 4
/* ----------------------- Static variables ---------------------------------*/
static USHORT usRegInputStart = REG_INPUT_START;
static USHORT usRegInputBuf[REG_INPUT_NREGS] = {0x10x20x30x4};
//
#define REG_HOLDING_START 0
#define REG_HOLDING_NREGS 10
static USHORT usRegHoldingStart = REG_HOLDING_START;
static USHORT usRegHoldingBuf[REG_HOLDING_NREGS] = {0x90x80x70x60x50x40x30x20x10x0};
//Coils
#define REG_COILS_START 0
#define REG_COILS_SIZE 16
static unsigned char ucRegCoilsBuf[REG_COILS_SIZE / 8] = {0xA50x5A};
//Read Discrete Inputs
#define DISCRETE_INPUT_START 100
#define DISCRETE_INPUT_SIZE 24
static unsigned char ucDiscreteInputBuf[DISCRETE_INPUT_SIZE / 8] = {0xA50x5A0xAA};
/* ----------------------- Start implementation -----------------------------*/
int
main( void )
{
const UCHAR ucSlaveID[] = { 0xAA 0xBB 0xCC };
eMBErrorCode eStatus;
Drv_SysClock_Init();
eStatus = eMBInit( MB_RTU 0x0A 0 115200 MB_PAR_EVEN ); //0x0A is slave address
eStatus = eMBSetSlaveID( 0x34 TRUE ucSlaveID 3 );
/* Enable the Modbus Protocol Stack. */
eStatus = eMBEnable( );
for( ;; )
{
( void )eMBPoll( );
/* Here we simply count the number of poll cycles. */
//usRegInputBuf[0]++;
}
}
eMBErrorCode
eMBRegInputCB( UCHAR * pucRegBuffer USHORT usAddress USHORT usNRegs ) //usAddress has add 1.
{
eMBErrorCode eStatus = MB_ENOERR;
int iRegIndex;
usAddress = usAddress -1;
if( ( usAddress >= REG_INPUT_START )
&& ( usAddress + usNRegs <= REG_INPUT_START + REG_INPUT_NREGS ) )
{
iRegIndex = ( int )( usAddress - usRegInputStart );
while( usNRegs > 0 )
{
*pucRegBuffer++ =
( unsigned char )( usRegInputBuf[iRegIndex] >> 8 );
*pucRegBuffer++ =
( unsigned char )( usRegInputBuf[iRegIndex] & 0xFF );
iRegIndex++;
usNRegs--;
}
}
else
{
eStatus = MB_ENOREG;
}
return eStatus;
}
eMBErrorCode
eMBRegHoldingCB( UCHAR * pucRegBuffer USHORT usAddress USHORT usNRegs
eMBRegisterMode eMode )
{
eMBErrorCode eStatus = MB_ENOERR;
int iRegIndex;
usAddress = usAddress - 1;
if( ( usAddress >= REG_HOLDING_START ) &&
( usAddress + usNRegs <= REG_HOLDING_START + REG_HOLDING_NREGS ) )
{
iRegIndex = ( int )( usAddress - usRegHoldingStart );
switch ( eMode )
{
/* Pass current register values to the protoc
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-06-26 15:45 TM4C129X
文件 27 2014-06-07 15:45 TM4C129Xclear.bat
目录 0 2014-06-26 15:45 TM4C129Xdebug
文件 127187 2014-06-21 16:04 TM4C129Xdebugadc.crf
文件 509 2014-06-21 16:04 TM4C129Xdebugadc.d
文件 126288 2014-06-21 16:04 TM4C129Xdebugadc.o
文件 68936 2014-06-21 16:04 TM4C129Xdebugaes.crf
文件 548 2014-06-21 16:04 TM4C129Xdebugaes.d
文件 75740 2014-06-21 16:04 TM4C129Xdebugaes.o
文件 132243 2014-06-21 16:04 TM4C129Xdebugcan.crf
文件 551 2014-06-21 16:04 TM4C129Xdebugcan.d
文件 128668 2014-06-21 16:04 TM4C129Xdebugcan.o
文件 29595 2014-06-21 16:04 TM4C129Xdebugcomp.crf
文件 478 2014-06-21 16:04 TM4C129Xdebugcomp.d
文件 41676 2014-06-21 16:04 TM4C129Xdebugcomp.o
文件 3699 2014-06-21 16:04 TM4C129Xdebugcpu.crf
文件 137 2014-06-21 16:04 TM4C129Xdebugcpu.d
文件 11856 2014-06-21 16:04 TM4C129Xdebugcpu.o
文件 10804 2014-06-21 16:04 TM4C129Xdebugcrc.crf
文件 373 2014-06-21 16:04 TM4C129Xdebugcrc.d
文件 22756 2014-06-21 16:04 TM4C129Xdebugcrc.o
文件 30510 2014-06-21 16:04 TM4C129Xdebugdes.crf
文件 465 2014-06-21 16:04 TM4C129Xdebugdes.d
文件 43364 2014-06-21 16:04 TM4C129Xdebugdes.o
文件 122063 2014-06-21 16:04 TM4C129Xdebugeeprom.crf
文件 649 2014-06-21 16:04 TM4C129Xdebugeeprom.d
文件 117892 2014-06-21 16:04 TM4C129Xdebugeeprom.o
文件 119555 2014-06-21 16:04 TM4C129Xdebugemac.crf
文件 574 2014-06-21 16:04 TM4C129Xdebugemac.d
文件 123100 2014-06-21 16:04 TM4C129Xdebugemac.o
文件 122083 2014-06-08 16:15 TM4C129Xdebugepi.crf
............此处省略315个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)