Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

CentOS5.4 LinuxÏÂModbus TCP IPЭÒéC++µÄÒ»¸öСÀý×Ó

///////////////////////////////////////////////////////////////////////////
/*
ReadCoilsº¯Êý£º
¶Á¼ÌµçÆ÷µÄ״̬ £¬ ³É¹¦·µ»Øture¡£
send Êý¾Ý³¤¶È=12
recv Êý¾Ý³¤¶È=10
unsigned short int addr ¶Á¼ÌµçÆ÷µÄÆðʼµØÖ·(¼ÌµçÆ÷±àºÅ-1) ¡£
×¢Ò⣺1~8¸ö¼ÌµçÆ÷£¬ÆðʼµØÖ·´Ó0¿ªÊ¼
unsigned short int len ¶ÁÈ¡¼ÌµçÆ÷µÄ¸öÊý£¬×î´ó8.
debug_state Èç¹ûΪ1 ´òÓ¡³öµ÷ʽÐÅÏ¢
ubool *paraDO ¶Á³öµÄ¼ÌµçÆ÷״̬
SOCKET s_bnc,fd_set fds,timeval tv ÊǸ¨ÖúµÄÍøÂç½Ó¿Ú²ÎÊý
*/
///////////////////////////////////////////////////////////////////////////
inline bool ReadCoils(unsigned short int addr, byte & coilstate, SOCKET_INT s_bnc)
{
cmd_len = 12;
byte cmd_code = 1; //ÃüÁî´úÂ룺01£¬¶Á¼ÌµçÆ÷
byte *cmd_string ;
byte *echo_string ;
cmd_string = new byte[cmd_len] ;
echo_string = new byte[cmd_len] ;
cmd_string[ 0] = 0 ; // modbus ЭÒ鹿¶¨±êʾ
cmd_string[ 1] = 0 ;
cmd_string[ 2] = 0 ;
cmd_string[ 3] = 0 ;
cmd_string[ 4] = 0 ; // length ¸ßλ²¿·Ö ÃüÁîµÄºóÐø×Ö½ÚÊýÁ¿
cmd_string[ 5] = 6 ; // length µÍλ²¿·Ö ÃüÁîµÄºóÐø×Ö½ÚÊýÁ¿
cmd_string[ 6] = 0 ; // Unit Identifier :identification of a remote slave connected on a serial line or on other buses.
cmd_string[ 7] = cmd_code ;
cmd_string[ 8] = (unsigned char) (addr >> 8);
cmd_string[ 9] = (unsigned char) addr;
cmd_string[10] = 0; //(unsigned char) (len >> 8);
cmd_string[11] = 8; //(unsigned char) len ;
int iret;
fd_set fds;
struct timeval tv;
tv.tv_sec = SLEEP ; //³¬Ê±µÈ´ýʱ
tv.tv_usec = 0;
FD_ZERO(&fds);
FD_SET(s_bnc, &fds);
/* wait for permission to send(µÈ´ýÊÇ·ñ¿Éдwrite)*/
iret = select(s_bnc +1, NULL, &fds, NULL, &tv); /*write*/
if (iret=0)
{
if(debug_state) printf("Timer over!n");
close(s_bnc);
return false ;
}
else if (iret<0)
{
if(debug_state) printf("select is err! n");
close(s_bnc);
return false ;
}
/*send дÈëÊý¾Ý */
iret = send(s_bnc, (char *)cmd_string, cmd_len , 0);
if


Ïà¹ØÎĵµ£º

linux ÍøÂç±à³Ì ·þÎñÆ÷Ä£ÐÍ

 Ñ§Ï°¹ý¡¶Èí¼þ¹¤³Ì¡·°É.Èí¼þ¹¤³Ì¿ÉÊÇÿһ¸ö³ÌÐòÔ±"±ØÐÞ"µÄ¿Î³Ì°¡.Èç¹ûÄãûÓÐѧϰ¹ý, ½¨ÒéÄãÈ¥¿´Ò»¿´. ÔÚÕâÒ»ÕÂÀïÃæ,ÎÒÃÇÒ»ÆðÀ´´ÓÈí¼þ¹¤³ÌµÄ½Ç¶ÈÑ§Ï°ÍøÂç±à³ÌµÄ˼Ïë.ÔÚÎÒÃÇд³ÌÐò֮ǰ, ÎÒÃǶ¼Ó¦¸Ã´ÓÈí¼þ¹¤³ÌµÄ½Ç¶È¹æ»®ºÃÎÒÃǵÄÈí¼þ,ÕâÑùÎÒÃÇ¿ª·¢Èí¼þµÄЧÂʲŻá¸ß. ÔÚÍøÂç³ÌÐòÀïÃæ,Ò»°ãµÄÀ´Ëµ¶¼ÊÇÐí ......

ÓëÒ»ÏßLinuxǶÈëʽ¿ª·¢¹¤³ÌʦµÄ¶Ô»°

¿ª·¢ÕßÔÚÏß Builder.com.cn ¸üÐÂʱ¼ä:2008-05-23×÷Õߣºlupaworld¡¡ À´Ô´:
±¾ÎĹؼü´Ê£º ǶÈëʽ GUI ǶÈëʽLinux ǶÈëʽ¿ª·¢ ǶÈëʽϵͳ
¡¡¡¡³Â¹¤³Ìʦһֱ×öLinuxµÄǶÈëʽ¿ª·¢£¬×÷ΪÔÚ¿ª·¢Ò»ÏߵŤ³Ìʦ£¬Ëû¶ÔºÜ¶àÎÊÌâµÄ¿´·¨¿ÉÄܸüÇкÏʵ¼ÊÐèÇó£¬ÓÚÊÇ£¬Í¨¹ýÓʼþ£¬¾ÍǶÈëʽ¿ª·¢·½ÃæµÄÎÊÌ⣬ÇëËû̸ÁËÒ»ÏÂ×Ô¼ºµÄ¿´·¨£º
¡¡¡¡Î ......

ѧϰǶÈëʽLinuxϵͳµÄ±Ê¼ÇºÍÌå»á

¸öµäÐ͵Ä×ÀÃæLinuxϵͳ°üÀ¨3¸öÖ÷ÒªµÄÈí¼þ²ã---linuxÄںˡ¢C¿âºÍÓ¦ÓóÌÐò´úÂë¡£
¡¡¡¡ÄÚºËÊÇΨһ¿ÉÒÔÍêÈ«¿ØÖÆÓ²¼þµÄ²ã£¬ÄÚºËÇý¶¯³ÌÐò´ú±íÓ¦ÓóÌÐòÓëÓ²¼þÖ®¼ä½øÐлỰ¡£ÄÚºËÖ®ÉÏÊÇC¿â£¬¸ºÔð°ÑPOSIX APIת»»ÎªÄں˿ÉÒÔʶ±ðµÄÐÎʽ£¬È»ºóµ÷ÓÃÄںˣ¬´ÓÓ¦ÓóÌÐòÏòÄں˴«µÝ²ÎÊý¡£Ó¦ÓóÌÐòÒÀ¿¿Çý¶¯ÄÚºËÀ´Íê³ÉÌØ¶¨µÄÈÎÎñ¡£
¡¡¡¡ÔÚÉ ......

linuxÏÂdbstartºÍdbshutÆô¶¯ºÍ¹Ø±ÕÊý¾Ý¿âÎÊÌâ


°æ±¾10.2
ÔÚ9iÏÂdbstart´æÔÚÒ»bug£ºdbstartÆô¶¯Ê±ÔÚ$ORACLE_HOME/dbsÏÂѰÕÒinitSID.ora£¬ÊÂʵÉÏÔÚ¸ÃĿ¼Ï²»´æÔÚÕâ¸öpfile£¬ÔÚ9i ÒѾ­Ê¹ÓÃÁËspfile£¬ËùÒÔÒªÏëÕý³£Í¨¹ýdbstartÆô¶¯db£¬ÐèÒªÔÚĿ¼$ORACLE_HOME/dbsÏ´´½¨Ò»¸öinitSID.ORAÎļþ£¬10gÖÐÎÒ·¢ÏÖÐÞÕýÁËÕâÒ»ÎÊÌâ¡£²»¹ý10gÖÐdbstartÔÚ×Ô¶¯Æô¶¯listenerʱ´æÔÚÒ»ÎÊÌ⣠......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ