資源簡介
modbus-tcp協議的單片機實現,硬件使用C8051F020單片機和CP2200以太網芯片。功能上實現網絡上的modbus通信。

代碼片段和文件信息
//------------------------------------------------------------------------------
//?main.c
//------------------------------------------------------------------------------
//?Copyright?(C)?2005?Silicon?Laboratories?Inc.
//
//?Date:?03/25/07?09:36:36
//?Target:?C8051F02x?
//
//?Description:
//????This?file?contains?the?main?routine?MCU?initialization?code?and
//????callback?functions?used?by?the?TCP/IP?Library.
//
//?Generated?by?TCP/IP?Configuration?Wizard?Version?3.2
//
#include?“mn_userconst.h“??????????????????????//?TCP/IP?Library?Constants
#include?“mn_stackconst.h“?????????????????????//?TCP/IP?Library?Constants
#include?“mn_errs.h“???????????????????????????//?Library?Error?Codes
#include?“mn_defs.h“???????????????????????????//?Library?Type?definitions
#include?“mn_funcs.h“
#include?“netfinder.h“??????????????????????????//?Library?Function?Prototypes
#include?“VFILE_DIR\index.h“
#include??????????????????????????//?Device-specific?SFR?Definitions
#include?“ml_init.h“
//-----------------------------------------------------------------------------
//?16-bit?SFR?Definitions?for?‘F02x
//-----------------------------------------------------------------------------
sfr16?RCAP2????=?0xca;?????????????????????????//?Timer2?reload?value
sfr16?TMR2?????=?0xcc;?????????????????????????//?Timer2?counter
sfr16?ADC0?????=?0xbe;?????????????????????????//?ADC0?data?register
?
//------------------------------------------------------------------------------
//?Global?Constants
//------------------------------------------------------------------------------
#define?SYSCLK??????????????????22118400L??????//?System?Clock?Frequency?in?Hz
#define?T2_OVERFLOW_RATE????????32L????????????//?Timer?2?Overflow?Rate?in?Hz?
//------------------------------------------------------------------------------
//?Function?Prototypes
//------------------------------------------------------------------------------
//?Initialization?Routines
void?PORT_Init?(void);
void?SYSCLK_Init?(void);
void?EMIF_Init(void);
int?establish_network_connection();
void?Timer2_Init(void);
sbit?LED1?=?P3^1; //?LED?=‘1‘?means?ON ???
sbit?LED2?=?P3^2; //?LED?=‘1‘?means?ON ???
sbit?LED3?=?P3^3; //?LED?=‘1‘?means?ON??
sbit?ALARM?=?P3^4; //?ALARM?=‘0‘???
//-----------------------------------------------------------------------------
//?Main?Routine
//-----------------------------------------------------------------------------
void?main(void)
{
???int?retval;???
???//?Disable?watchdog?timer
???WDTCN?=?0xde;??
???WDTCN?=?0xad;???
???//?Initialize?the?MCU?
???PORT_Init();??
???SYSCLK_Init();??
???EMIF_Init();
???Timer2_Init();?
???LED1?=?0;
???LED2?=?0;
???LED3?=?0;
???ALARM?=?0;
???//?Reset?the?Netfinder?Event?1?counter?after?a?Power-On?Reset?or?Pin?Reset
???//?The?event1?counter?counts?how?long?the?device?has?been?powered.
???if(RSTSRC?&?0x03){
??????netfinder_reset_event1();
???}
???while(1)
???{
??????//?Initialize?the?TCP/IP?stack.
??????if?(ml_init()?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????4992??2007-04-17?18:07??modbus_rtu_tcp_success2012-1-18\output\Delay.lst
?????文件???????2837??2007-04-17?18:07??modbus_rtu_tcp_success2012-1-18\output\Delay.obj
?????文件????????101??2007-04-17?18:07??modbus_rtu_tcp_success2012-1-18\output\Delay.__i
?????文件???????7958??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\index.lst
?????文件??????14211??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\index.obj
?????文件??????17927??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\main.lst
?????文件??????34720??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\main.obj
?????文件???????8900??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\ml_init.lst
?????文件??????29995??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\ml_init.obj
?????文件???????9961??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\mn_callback.lst
?????文件??????29508??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\mn_callback.obj
?????文件???????9307??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\mn_vars.lst
?????文件??????23072??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\mn_vars.obj
?????文件??????35182??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\netfinder.lst
?????文件??????35961??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\netfinder.obj
?????文件??????11762??2007-04-10?15:44??modbus_rtu_tcp_success2012-1-18\output\STARTUP.lst
?????文件???????1189??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\STARTUP.obj
?????文件?????271278??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\web
?????文件??????87463??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\web.hex
?????文件????????295??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\web.lnp
?????文件????????559??2007-04-25?16:06??modbus_rtu_tcp_success2012-1-18\output\web.m51
?????文件?????428543??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\web.map
?????文件??????12171??2012-02-13?19:36??modbus_rtu_tcp_success2012-1-18\output\web.plg
?????文件?????133020??2012-02-13?19:35??modbus_rtu_tcp_success2012-1-18\output\web.SBR
?????文件??????16622??2007-05-16?18:01??modbus_rtu_tcp_success2012-1-18\source\c8051F020.h
?????文件??????10532??2012-01-17?23:19??modbus_rtu_tcp_success2012-1-18\source\main.c
?????文件???????4580??2007-04-17?18:00??modbus_rtu_tcp_success2012-1-18\source\ml_init.c
?????文件???????1679??2007-04-17?17:12??modbus_rtu_tcp_success2012-1-18\source\ml_init.h
?????文件???????6102??2012-01-17?08:28??modbus_rtu_tcp_success2012-1-18\source\mn_callback.c
?????文件???????4032??2007-03-25?09:36??modbus_rtu_tcp_success2012-1-18\source\mn_defs.h
............此處省略29個文件信息
- 上一篇:基于VHDL控制的DS18B20溫度測量程序
- 下一篇:衛星通信導論 習題解答
評論
共有 條評論