⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d-com.h

📁 一个嵌入式系统通过GPRS进行数据传输的程序,协议芯片为5112,程序中描述了通过单片机上网及通过UDP数据传输的过程
💻 H
字号:
//head file for td-com
//2002-10-31
sbit	X_CS	=	P1^0;
sbit	X_SCK	=	P1^4;
sbit	X_SI	=	P1^5;
sbit	X_SO	=	P1^1;
sbit	DSP_STAT=	P3^3;
sbit	DSP_LINK=	P1^7;
sbit	DSP_CALL=	P1^6;
sbit	DSP_SEND=	P3^5;
sbit	DSP_RCV=	P3^2;
sbit	RST_5112=	P3^4;

//5045 address
#define x_mark 0x00;
#define x_server_addr 0x01;
#define x_server_port 0x05;
#define x_my_addr 0x07;
#define x_to_addr 0x0b;
#define x_baud 0x0f;
#define x_isp_num 0x10;
#define x_isp_name 0x20;
#define x_isp_password 0x30;
#define x_my_port 0x40; 
//////////////////////////////
//define system parameter
#define	SEND_BUF_MAX 576
#define	RCV_BUF_MAX	300//132
#define SEND_MAX_CNT 480
//////////////////////////////
//bit     modem_ok=0;
bit     request_ppp=0;
//bit     request_socket = 0;
bit     run=0;
//bit     request_send_com0=0;
//bit     send_enable=0;
bit     ack=0;
bit     send_data0=0;
//bit     recall=0;
bit     ppp_ok=0;
bit     ppp_err =0;
//bit     reconnect=0;
//bit     socket_ok =0;
//bit     socket_err =0;
//bit		socket_time_out=0;
bit		send_com0_finish=0;
bit		rcv_data0=0;
bit		com0tocom1=0;
bit		com1_send_finish=1;
bit		rcv_init=0;
bit		timer0=0;
bit		timer1=0;
bit		timer2=0;
bit		timer3=0;
bit		timer4=0;
bit		timer5=0;
bit		timer6=0;
bit		timer7=0;
bit		timer8=0;
bit		timer9=0;
bit		timer10=0;
bit		timer11=0;
bit		timer12=0;
bit		timer13=0;

bit		waitinit=0;
bit		stat_ok=0;
bit		rcv_7d=0;
bit		send_disable=0;
bit		request_connect=0;////
bit		request_send_data_to_server=0;////
bit		request_send_chk_to_server=0;////
bit		request_send_ack_to_server=0;
bit		rcv_command=0;
bit		rcv_56=0;
bit		issend_to_server=0;
bit		receive_5112=0;
bit		rcv_set=0;
bit		phy_err=0;
bit		sm=0;
//bit		sm_ok=0;
//bit		sm_err=0;
bit		request_reset=0;




unsigned int data	com0_send_len=0;
unsigned int data	send_7d_cnt=0;
unsigned char xdata	send_ctr_com0_buf[30];
unsigned int data	send_ctr_com0_len=0;
unsigned char 	rcv_buf0[30];
unsigned int data	rcv_cnt0=0;
unsigned char xdata	send_buf1[RCV_BUF_MAX];//receive from server buffer
unsigned char xdata	send_buf0[SEND_BUF_MAX];//send to server buffer
unsigned char  xbuf[16];
unsigned int data	rcv_to_send_com1_addr=0;
unsigned int data	send_to_com1_addr=0;
unsigned int data	com1_rcv_addr_hand=0;
unsigned int data	com1_rcv_len=0;
unsigned int data	com0_send_addr=0;
unsigned int data	rcv_7d_cnt=0;
unsigned char 	sockset[6]; //sockset[0-1]:server port sockset[2-5]:server ip


unsigned int data	send_com0_cnt=0;
unsigned char data	timer0_reg=0;//for status flash
unsigned char data	timer1_reg=0;//200mS for receive init data 
unsigned char data	timer2_reg=0;
unsigned int data	timer3_reg=0;
unsigned char data	timer4_reg=0;
unsigned char data	timer5_reg=0;
unsigned int 	timer6_reg=0;
unsigned int 	timer7_reg=0;
unsigned int	timer8_reg=0;//5S for wait 5112 2nd 0x7e
unsigned char data	timer9_reg=0;
unsigned int 	timer10_reg=0;//10S for link test from equ to server
unsigned char data	timer11_reg=0;//250mS for link test flash
unsigned  int	timer12_reg=0;
unsigned  int	timer13_reg=0;

unsigned int data	eid=0;
unsigned int data	chk_add=0;
unsigned int data	rcv_data_len=0;
unsigned char data rcv_chk[4];
unsigned char data rcv_chk_cnt=0;
unsigned int data	rcv_equ_chk=0;
unsigned int  data sendid=0;
unsigned char data reconnect_cnt=0;

unsigned char smsindex=0;

unsigned char code set_timer0=50;	//1S for status flash
unsigned char code set_timer1=10;	//200mS for receive init data
unsigned char code set_timer2=25;	//500mS for calling 
unsigned int code set_timer3=1100;	//22S for DELAY link test
unsigned char code set_timer4=100;	//2S for wait receive data from equ to send to server  
unsigned char code set_timer5=12;	//240mS for send data to server flash
unsigned int code set_timer6=500;	//10S for receive data from server flash
unsigned int code set_timer7=9000;	//3min for delay reset system
unsigned int code set_timer8=1000;	//20S for wait 5112 2nd 0x7e
unsigned char code set_timer9=15;	//300mS for wait 5112 ack
unsigned int code set_timer10=500;	//10S for delay link test from equ to server
unsigned char code set_timer11=50;	//1S for send link test flash
unsigned int code set_timer12=1000;	//20S for wait ppp error after send hang up command
unsigned int code set_timer13=60000;	//20min don't receive link test from server to reset system 





void clear_ram(void);
void init_cpu(void);
//FOR 5045
void x_outbyte(unsigned char ch) ;
unsigned char x_inbyte( void ) ;
void init_watchdog( unsigned char ch );
void x_wren_cmd (void);
unsigned char  * x_read( unsigned char address ,unsigned char  amount) ;
void x_write ( unsigned char x_address,unsigned char *psavedata,unsigned char amount) ;
void wait(unsigned int time);
void watchdog(void);
void init_sys ( void );
//FOR 5112
void init_5112(void);
void reinit_5112(void);
//FOR TIMER
void settimer( unsigned char ch);
void killtimer(unsigned char ch);
void timer0_prog(void);
void timer1_prog(void);
void timer2_prog(void);
void timer3_prog(void);
void timer4_prog(void);
void timer5_prog(void);
void timer6_prog(void);
void timer7_prog(void);
void timer8_prog(void);
void timer9_prog(void);
void timer10_prog(void);
void timer11_prog(void);
void timer12_prog(void);
void timer13_prog(void);
//FOR PPP TCP/IP SOCKET
bit call(void);
void hangup(void);
void resetconnect(void);
void sendchk(void);
void sendack(void);
void send_data(void);
void sendsetack(void);
bit set5112(unsigned char type);
unsigned char * conver(unsigned int dt);
unsigned int conver_chk(unsigned char *p) ;
void sm_prog(void);
void reset_5112(void);
void gsm_poweroff(void);






⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -