arm与Linux串口通信程序只能发送不能接收 [问题点数:20分]

Bbs1
本版专家分:0
结帖率 0%
Bbs1
本版专家分:11
Bbs1
本版专家分:0
Bbs2
本版专家分:258
Bbs1
本版专家分:0
Bbs1
本版专家分:55
Bbs1
本版专家分:80
Bbs1
本版专家分:0
51串口通信发送接收
//<em>发送</em>数据波特率为9600 //1、如果在电脑上<em>发送</em>以$开始的字符串,则将整个字符串原样返回(字符串长度不是固定的)。 //2、如果<em>接收</em>到1,则将P10置高电平,<em>接收</em>到0,P10置低电平。(用来控制一个LED) #include "STC/STC15F2K60S2.H" sbit LED = P0^1; sbit ledle = P2^5; sbit bell = P4^5; un
串口通信程序! 为何只能接收数字,不能接受字符??
我在tc 下写的<em>程序</em>如下:rn rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rnrn#define BUFFLEN 10800rn#define BUFFMAX 900rnrnvoid Init(void);rnvoid check(unsigned char states); /*unsigned char */rnvoid enableports(void);rnvoid disableports(void);rnvoid interrupt far asyncint(void);rnvoid interrupt(* asyncvect)(void);rnvoid putb( char ch);/*unsigned char */rnrnunsigned char inchar ,flag=0;rnunsigned char Buffer[BUFFLEN]; /*unsigned char */rnint buffin=0;rnint buffout=0;rnint i=0,ii=0;rnunsigned char temp_buffer[BUFFMAX];rnunsigned char ch;rnrnrnrnvoid enableports(void)rnrn unsigned char B; /*unsigned char */rn asyncvect=getvect(0x0c);rn disable();rn inportb(0x3f8);rn inportb(0x3fe);rn inportb(0x3fb);rn inportb(0x3fa);rnrn outportb(0x3fc,0x08|0x0b);rn outportb(0x3f9,0x01);/*enable receive interrupt*/rn B=inportb(0x21)&0xef;/*open IRQ4 interrupt*/rnrn outportb(0x21,B);rn setvect(0x0c,asyncint);rnrn enable();rnrnrnvoid interrupt far asyncint(void)rnrn long char ch; /*unsigned char */rn ch=inport(0x3f8); /*read date*/rn flag=1;rn putb(ch);rn outportb(0x20,0x20);rnrnrnvoid disableports(void)rnrn disable();rn outportb(0x39,0x00);/*write interrupt enalbe reg*/rn outportb(0x3fc,0x00);rn outportb(0x21,inportb(0x21)&0x10);rn enable();rn setvect(0x0c,asyncvect);rnrnrnrnvoid Init()rnrn outportb(0x3fb,0x80);rn outportb(0x3f8,0x0c);rn outportb(0x3f9,0x00);/*baud rate is 9600*/rn outportb(0x3fb,0x19); /*6 bit one stop even */rn outportb(0x3fc,0x08|0x0b);rn outportb(0x3fb,0x01);rnrnrnvoid check(unsigned char states) /* unsigned char */rnrnrn while((inportb(0x3fd)&states)==0);rnrnrn/*deal with receive data*/rnvoid putb(long char ch) /*unsigned char */rnrn if(++buffin==BUFFLEN)rn buffin=0; /* loop back*/rn if(buffin!=buffout)rn Buffer[buffin]=ch;rn elsern printf(" the input array was error!\n ");rnrnrnrnrnrnlong char getb(void) /*unsigned char */rnrnrn if(buffout!=buffin)rn rn if(++buffout==BUFFLEN)rn buffout=0;rn return(Buffer[buffout]);rn rn elsern return (0xff);rnrnrnmain()rn int temp;rn clrscr();rn window(3,2,41,10);rn textcolor(0);rn textbackground(3);rn clrscr();rn gotoxy(3,2);rn cprintf(" Receive from com1 :\n");rn gotoxy(3,4);rn cprintf(" 9600 baud ,8 bit , one stop,even \n");rn printf("the Buffer is %s\n",Buffer);rn gotoxy(3,6);rn textcolor(223);rn cprintf("press any key to continue !\n");rn getch();rn window(45,2,79,22);rn textbackground(1);rn textcolor(14);rn clrscr();rnrn Init();/*set baud enable interrupt*/rn enableports();rn clrscr();rn for(;;)rn rn if(flag==1)rn rn ch=getb();rn printf("%c",ch);rn flag=0;rn rn if(kbhit()!=0)rn rn for( temp=0;temp,Buffer[temp]);rn disableports();rn exit(1);rn rn rnrnrnrn我用串口助手调试,<em>接收</em>数字可以,但是<em>接收</em>字符时为<em>发送</em>的asiic 码值减64rn不知道是何问题?? 9600baud 6bit 1 stop 偶校验rnrnrnZ
mdaemon只能接收邮件不能发送为什么?
已经设置了MX记录。从一些sina、sohu等免费邮箱<em>发送</em>过来邮件能够正常<em>接收</em>。但是<em>发送</em>却屡屡不成功。我用的是foxmail4.2客户端,Mdaemon6.8.4中文版rnrn具体现象如下:rnrn一、<em>发送</em>不成功时,Mdaemon的退信记录内容如下(邮件主题:永久递送失败):rnrn附加的邮件已“永久”递送失败!rnrn经历了多次的递送失败之后,邮件中的附件,已从服务器中移除。rn试图递送邮件的频率和次数,rn都根据本地端的配置参数所决定。rnrn你的邮件无法递送!rnrnFailed address: ego2008@sina.comrnrn--- Session Transcript ---rn Parsing Message rn From: ego2008@mydomainname.comrn To: ego2008@sina.comrn Subject: =?GB2312?Q?=C3=BB=B0=EC=B7=A8?=rn Message-ID:rn [sina.com]的 MX-record 解析已在进行(DNS 服务: 202.96.199.133)...rn P=020 D=sina.com TTL=(0) MX=[sinamx.sina.com.cn] 202.106.182.230rn Attempting MX: P=020 D=sina.com TTL=(0) MX=[sinamx.sina.com.cn] 202.106.182.230rn 正在试图 SMTP 连接到 [202.106.182.230 : 25]rn 等候 socket 连接...rn Socket 连接建立(218.242.*.* : 3017 -> 202.106.182.230 : 25)rn 等候协议初始化...rn EHLO mydomainname.comrn 邮件来自:rn <-- 502 未实现 - unimplemented (#5.5.1)rn--- End Transcript ---rn: 邮件包含[1]个附件rnrn二、系统日志窗口始终显示类似如下信息:rnrnWed 2003-07-30 10:17:14: [初始化] CFENGINE.EXE <em>不能</em>运行。已重新启动。rnrn我试过很多方式但是不知道如何让CFEnging.exe启动。rnrn请大家帮我诊断一下,为什么我<em>不能</em>发信。
菜鸟求助!!!为什么只能发送不能接收- -#
我正在学习android的系统开发,想写一个<em>linux</em><em>程序</em>实现串口和其他设备通信,但搞了几个星期都不知道串口2<em>只能</em><em>发送</em><em>不能</em><em>接收</em>的原因?各位大虾,请帮小弟一把。我用的芯片是imx515。rn我测试过,硬件上没有问题,我在RXD引脚上可以看到信号,至于串口驱动应该是没有问题的。所以我一直怀疑是我的设置有问题。请帮我看一下问题出在哪。rnrnrn#include rn#include rn#include rn#include rn#include rn#include rn#include rnrnint main(int argc, char **argv)rnrn int fd;rn char *dev ="/dev/ttymxc1";rn struct termios termios;rn char rbuf[256] = "";rn char wbuf[256] = "";rn int nread, nwrite;rn int i;rn rn printf("==== START ====\n");rn fd = open(dev, O_RDWR | O_NOCTTY);rnrn if(fd < 0)rn rn printf("open %s fail!\n", dev);rn return 0;rn rn rn printf("open %s success!\n", dev);rnrn tcgetattr(fd, &termios);rn bzero(&termios, sizeof(termios));rnrn termios.c_cflag = B115200|CS8|CLOCAL|CREAD;rn termios.c_iflag = IGNPAR | IXON | IXOFF | IXANY;rn termios.c_oflag = 0;rn termios.c_lflag = 0;rn termios.c_cc[VTIME] = 0;rn termios.c_cc[VMIN] = 0;rnrn tcflush(fd, TCIOFLUSH);rn tcsetattr(fd, TCSANOW, &termios);rnrnrn printf("====MISSION START====\n");rn nwrite = write(fd, "====MISSION START====", 21);rnrn printf("==== READ TEST ====\n");rn while(1)rn rn nread = read(fd, rbuf, 10);rn if(nread > 0)rn rn printf("====MISSION COMPLETE!====\n");rn break;rn rn rnrn printf("==== THE END ====\n");rn close(fd);rn return 0;rn
windows2003 邮件服务器只能发送不能接收,什么原因?
我新配置了一台windows2003的邮件服务器,使用windows自带的smtp,pop3,配置成功以后,测试<em>发送</em>与<em>接收</em>,<em>发送</em>成功,但是<em>接收</em><em>只能</em><em>接收</em>本域的邮件,<em>不能</em><em>接收</em>其他域的邮件,例如:可以向163邮箱<em>发送</em>成功,但是<em>不能</em><em>接收</em>163邮箱<em>发送</em>来的邮件,请问这是什么原因?rn 我的邮件域名解析已经成功,查看MX邮件解析成功,这是什么原因呢?请赐教
foxmail邮件只能接收不能发送
如题。。。。。。。
Qt windows下只能发送不能接收
使用vs2008建立qt工程,编写一个简单的串口<em>程序</em>,但是运行后<em>只能</em><em>发送</em>数据,无法接受。rnrn主要代码如下:rn rn//初始化设置rnTestSerial::TestSerial(QWidget *parent, Qt::WFlags flags)rn : QMainWindow(parent, flags)rnrn ui.setupUi(this);rnrn m_SerialPort=NULL;rn ui.portcbx->addItems(PortName);rn ui.baudcbx->addItems(BaudRate);rn ui.datacbx->addItems(DataBits);rn ui.paritycbx->addItems(Parity);rn ui.stopcbx->addItems(StopBits);rn ui.datacbx->setCurrentIndex(3);rnrn readcount=0;rn writecount=0;rn ui.sendlet->setText(QString::number(writecount));rn ui.receivelet->setText(QString::number(readcount));rnrn connect(m_SerialPort,SIGNAL(readyRead()),this,SLOT(readSerialPort()));rnrnrn//<em>发送</em>函数rnvoid TestSerial::on_sendbtn_clicked()rnrn if(m_SerialPort==NULL || !m_SerialPort->isOpen())rn rn QMessageBox::information(this,"Error","Port Closed!");rn return;rn rn int count=ui.sendText->toPlainText().length();rn writecount+=count;rn ui.sendlet->setText(QString::number(writecount));rn m_SerialPort->write(ui.sendText->toPlainText().toAscii());rnrnrnrn//<em>接收</em>函数rnvoid TestSerial::readSerialPort()rnrn QMessageBox::information(this,"serial","serial test!");rnrn QByteArray temp=m_SerialPort->readAll();rn int count=m_SerialPort->bytesAvailable();rn ui.receiveText->insertPlainText(QString(temp));rn readcount+=count;rn ui.receivelet->setText(QString::number(readcount));rnrnrn通过实验发现readSerialPort()槽函数根本没有响应,但是可以<em>发送</em>数据!
VS2010的串口通信程序(支持接收发送
基础代码,支持二次开发,已经实现了串口的<em>发送</em>和<em>接收</em>功能,代码可以多多交流
MFC串口通信设置及发送、中断接收程序
前一段做了个<em>串口通信</em>小软件,就是现实利用上位机软件通过<em>串口通信</em>对下位机(单片机)通信,校时LED点阵万年历,省去按键调节的麻烦,
api串口通信程序 VC6.0 字符发送接收
API函数实现VC6.0的通信,可以实现串口的收发,同时进行,<em>程序</em>不是很好看,不过实用
LabviewCOMM串口通信-发送-中断接收
labview采用MSCOMM控件完成<em>串口通信</em>,<em>发送</em>,中断<em>接收</em>。 自己正使用的这种方法,确实是有效的,自己再添加协议什么的,丰富内容。-LabVIEW uses the MSCOMM control to complete serial communication, send, receive interrupt.
qt串口通信,实现发送接收
Qt使用自带类实现<em>串口通信</em>,包括串口的<em>发送</em>数据和串口的<em>接收</em>数据
串口通信发送接收的数据类型问题
我要做的事情很简单,就是<em>发送</em>4个十六进制的数,然后<em>接收</em>一个十六进制的数,看了一些例子,都是教<em>接收</em>字符串的,<em>接收</em>十六进制应该比它更简单吧?可是我还是不会...只好请教各位朋友了...rn这个是<em>发送</em>: rn CByteArray m_Array;rn m_Array.SetSize(4);rn m_Array.SetAt(0,0xAA);rn m_Array.SetAt(1,0x00);rn m_Array.SetAt(2,0x01);rn m_Array.SetAt(3,0x03);rn m_Comm.SetOutput(COleVariant(m_Array));rnrn<em>接收</em>就不会了,<em>发送</em>也不知道有没有错,麻烦大家看一看,比较急
安卓串口通信接收以及发送
安卓<em>串口通信</em>—<em>接收</em>以及<em>发送</em>,安卓平台下的<em>串口通信</em>Demo,兼顾<em>发送</em>以及<em>接收</em>功能,经测试都已经成功完美完成上述功能要求。
汇编语言串口通信接收发送程序
汇编语言<em>串口通信</em><em>接收</em><em>发送</em>的<em>程序</em>题 利用定时/计数器T0的方式1,产生10ms的定时,并使P1.0引脚上输出周期为20ms的方波,采用中断方式,设系统时钟频率为12 MHz。
串口通信怎样发送接收汉字!!!!!!!!!!!!
如题
FPGA-串口通信接收模块(发送接收模块)
<em>接收</em>模块和<em>发送</em>模块类似:        在<em>接收</em>的过程中为了保证<em>接收</em>数据的准确性对单个时钟波特率进行分频,单个时钟信号下分频16次,进行数据采集保证了数据的准确性,这里的代码思想借鉴了小梅哥的代码的编写思想。 <em>发送</em><em>接收</em>模块的验证:       这里<em>发送</em><em>接收</em>的验证是通过PC端进行<em>发送</em>,由开发板先<em>接收</em>到数据,然后进行<em>发送</em>,这里如果要是验证些字符串或者是一些特殊的指令,用状态机或者类似状态机的思想进...
基于ARM的串口通信程序
在嵌入式开发中用于上位机与下位机<em>串口通信</em>的c语言<em>程序</em>,其中,pc机采用<em>linux</em>系统,ARM采用嵌入式<em>linux</em>操作系统
ARM与PC串口通信程序
基于<em>linux</em>的串口与pc机通信<em>程序</em>,对串口的读写,文件的保存!
linux 串口通信发送文件
<em>linux</em> <em>串口通信</em><em>发送</em>文件
邮件只能发送,或者只能接收?!
公司内一台电脑邮箱<em>只能</em><em>发送</em>邮件,却<em>不能</em><em>接收</em>邮件,而且<em>发送</em>邮件的时候没有提示说<em>发送</em>错误。弄得头也大了也弄不懂出了什么问题,求助啊
串口通信的一个接收程序
一个<em>串口通信</em>的<em>接收</em>小<em>程序</em>,用的是COM2。欢迎大家评论一下,代码在文件里。
51单片机串口通信发送程序
<em>程序</em>用于51单片机的<em>串口通信</em><em>发送</em><em>程序</em>,波特率为9600,
api串口通信发送程序
用API写的串口<em>程序</em><em>发送</em><em>程序</em>,此<em>程序</em>是基于win32API编写的<em>发送</em><em>程序</em>代码,基于对话框的mfc应用<em>程序</em>
串口通信Usart发送程序
使用Verilog代码编写的USART<em>发送</em><em>程序</em>: 数据位8位,停止位1位,校验位没有,流控没有 波特率由波特率模块生成 串口时序大致如下图所示: module uart_trans(GClk,clk_bps,reset,tx_en,datain,Txd,tx_ok); input GClk,clk_bps,reset,tx_en;//全局时钟,波特率时钟,全局复位,<em>发送</em>启动信号
Linux 下ARM 和单片机的串口通信设计
Linux 下ARM 和单片机的<em>串口通信</em>设计
linux组播接收发送
客户端<em>接收</em>到后如何<em>发送</em>一个应答给服务器?
求教:串口通信发送接收16进制数据为何不能正常显示?
MSComm1.InputMode = 1 ' <em>接收</em>二进制数据rn MSComm1.InputLen = 0 ' 一次读取缓冲区内所有数据rn'<em>发送</em>数据rn Dim sendData() As Byte rn sendData() = TextSend.Text '比如输入0077rn rn MsgBox sendData '测试数据正确性,显示0077rn MsgBox UBound(sendData) '查看数据占多少字节,这里就不对了,显示为7,不理解,16进制的0077不应该占2个字节吗?rn MsgBox sendData(0) '查看第1字节数据,本来希望显示00,可实际显示为48rn MsgBox sendData(1) '查看第2字节数据,本来希望显示77,可实际显示为0rn rn MSComm1.Output = sendData '送到串口<em>发送</em>rn'<em>接收</em>数据rn Dim receiveData() As Byte rn Dim HCrn receiveData() = MSComm1.Inputrn MsgBox receiveData '测试数据正确性,显示0077rn MsgBox UBound(receiveData) '仍然显示为7rn MsgBox receiveData(0) '仍然显示为48rn MsgBox receiveData(1) '仍然显示为0rn HC = receiveData(0) * 256 + receiveData(1) '先转换为10进制整数,0077的10进制本应是119,可实际显示为12288,很离谱rn TextReceive.Text = Hex(HC) '再把这个整数转换成16进制字符显示,希望显示0077,可实际显示为3000,完全不对rnrn我的本意是输入一个16进制字符串,然后串口以16进制<em>发送</em>,另一台机器以16进制<em>接收</em>,然后显示出来的仍是16进制的字符串,应该跟输入的一模一样。不知道我有没有讲明白,还请高手赐教!多谢了rnrn
发送程序: 与接收程序合作实现两台计算机的串口通信,但只能正确
<em>发送</em><em>程序</em>: 与<em>接收</em><em>程序</em>合作实现两台计算机的<em>串口通信</em>,但<em>只能</em>正确接受英文字母和数字,界面为VC标准视图(38KB)
arp广播发送接收linux程序
arp 广播<em>发送</em>的<em>linux</em><em>发送</em>和<em>接收</em><em>程序</em>,可以通过抓包工具抓包,<em>发送</em>的广播数据。
邮件服务器不能发送邮件,只能接收
邮件服务器<em>不能</em><em>发送</em>邮件,<em>只能</em><em>接收</em>!rn最初是用的是MDaemon7.0邮件服务器,<em>发送</em><em>接收</em>邮件都正常,后来不知道什么原因,也许是瑞星升级2006或者是WIN2000补丁的缘故。请问如何解决?现在用的是winmail 4.1邮件服务器
串口接收发送程序
串口<em>接收</em><em>发送</em><em>程序</em>实例,有设置窗体背景为指定图片的实例。
UART接收发送程序
关于51单片机UART串行通信的C语言<em>程序</em>
串口接收发送程序
基于串口232的<em>接收</em>和<em>发送</em><em>程序</em>,同时可以讲<em>接收</em>到的字符显示在液晶上
DMX512接收发送程序
C51的DMX512开发笔记
发送接收程序 电子邮件
本<em>程序</em>需安装IIS 并且对SMTP进行设置,否则<em>程序</em>无法正常运行。
232接收发送程序
基于RS32<em>接收</em>与<em>发送</em><em>程序</em>,用于单片机,使用串口调试助手(Baud 4800、数据位8、停止位1、效验位无)做为上位机来做收发试验
STM32F103C8T6+E32-TTL-1W发送接收程序
E32-TTL-1W是一款无线收发设备,附件为单片机控制的收发<em>程序</em>,使用UART与E32-TTL-1W完成信息传输
无线接收发送程序
无线<em>接收</em>与<em>发送</em>的代码,使用C语言编程,51单片机
24L01发送接收程序
本<em>程序</em>是用51控制NRF24L01,是调试通过的,请下载
NRF24L01发送接收程序
基于MSP430单片机和NRF24L01通信的<em>发送</em>和<em>接收</em><em>程序</em>
51-stc-tc35发送接收程序
利用51单片机,通过STC下载<em>程序</em>,连接TC5模块接受和<em>发送</em>信息。
NRF24L01发送接收程序
NRF24L01 <em>发送</em>和<em>接收</em><em>程序</em> 已经试验通过
CC2500的接收发送程序
CC2500 是CC1100的升级无线IC,对于代码来说网络上比较少。所以特别就CC2500的<em>接收</em>和<em>发送</em>做了一对调试<em>程序</em>。方便工程师战友们能在CC2500上快速上手。
DMX512发送接收程序
DMX512<em>发送</em><em>接收</em><em>程序</em>:一个是中断<em>接收</em>,一个是<em>发送</em>,设置好波特率后就能工作,很好用.
SP3485发送接收程序
请问哪位大神有485通信的实用工程,可以<em>发送</em>和接受的。谢谢
nrf905发送接收程序
nrf905<em>发送</em><em>接收</em>c<em>程序</em>,只需稍加修改即可!!!!
红外发送接收程序
红外<em>发送</em>和<em>接收</em>的驱动<em>程序</em>,里面的代码有详细的注释,希望能够帮到需要的同行。
UDP发送接收程序
利用这几天所学的知识做了一个UDP<em>发送</em><em>接收</em>工具,也是我做的第一个界面的<em>程序</em>把,其中利用了多线程,套接字,界面布局,事件处理等知识,通过做这个<em>程序</em>对面向对象的概念更近一步了解,包括构造函数,继承,接口等概念有了更深的认识,对于多线程也有了了解,也为接下来的课程设计(CS模式简单聊天室)做了铺垫。唯一不足的是异常处理这块做的还不够完善,包括弹窗什么的,接下来在课程设计中来注重这一点。 先上一张图来
邮件接收发送程序
请教C#下邮件<em>接收</em>、<em>发送</em><em>程序</em>的源码,谢谢!
kylix for c++的SOCKET只能发送不能接收么?
试了IdTcpServer 以及TcpServer等,测试结果都<em>只能</em><em>发送</em><em>不能</em><em>接收</em>rn而在WINDOWS上则没有此问题。rn求助各位在KYLIX C++中如何<em>接收</em>数据?
SELECT与多线程结合但只能发送不能接收
各位大侠,小弟用C语言编了一个C/S模式的聊天工具,服务器端采用了SELECT穷举SOCKET的读写,并创建两个线程用来<em>接收</em>与<em>发送</em>,但结果<em>只能</em><em>发送</em><em>不能</em><em>接收</em>,我在两线程中已经用事件对象实现互赤了。rnrn而且把SOCKET的阻塞模式切换成非阻塞模式了啊。请大侠分析一下可能的原因。
wavecom 串口连接问题 串口只能发送不能接收
rn 现象: rn 1、使用超级终端能和gsm modem正常通讯,实现短消息的手发。 rn 2、使用网友丁丁开发的串口调试软件,能<em>发送</em>信息给gsm modem,但<em>不能</em><em>接收</em>到gsm modem返回的信息。(但在第一次使用时<em>接收</em>到过) rn 3、我在<em>程序</em>里用串口和在<em>程序</em>通讯,结果也是<em>只能</em>发,<em>不能</em>收到在<em>程序</em>返回的任何信息。 rnrn我<em>程序</em>中用了系统API和VS2005自带的serialPort都试了,不行...rn还有谁有没有个具体的实例啊,有的话就发份给我(zjf-2004@163.com)多谢了
Foxmail为什么只能接收不能发送呢?????很急、很急
-
ubuntu 下建立一个socket客户端程序只能接收不能发送
如题已知服务器端没有问题因为已经和PC端通信。只是在<em>linux</em>上的客户端<em>程序</em>不好使rn下面是代码:rn#includern#includern#includern#includern#includern#includern#includern#includern#include rn#include rn#include rn#include rnrn#define HELLO_WORLD_SERVER_PORT 6666rn#define BUFFER_SIZE 1024rn#define FILE_NAME_MAX_SIZE 512rnchar host[]="10.10.2.211";rnvoid main(int argc, char ** argv)rnrnint k;rnunsigned char buff[6];rn buff[0] = 0x68;rn buff[1] = 4;rn buff[2] = 0x07;rn buff[3] = buff[4] = buff[5] = 0;rn//设置一个socket地址结构client_addr,代表客户机internet地址, 端口rnrn struct sockaddr_in client_addr;rn bzero(&client_addr,sizeof(client_addr)); //把一段内存区的内容全部设置为0rn client_addr.sin_family = AF_INET; //internet协议族rn client_addr.sin_addr.s_addr = htons(INADDR_ANY);//INADDR_ANY表示自动获取本机地址rn client_addr.sin_port = htons(2404); //0表示让系统自动分配一个空闲端口rnrn //创建用于internet的流协议(TCP)socket,用client_socket代表客户机socketrnrn int client_socket = socket(AF_INET,SOCK_STREAM,0);rn if( client_socket < 0)rn rn printf("Create Socket Failed!\n");rn exit(1);rn rn //把客户机的socket和客户机的socket地址结构联系起来rn if( bind(client_socket,(struct sockaddr*)&client_addr,sizeof(client_addr)))rn rn printf("Client Bind Port Failed!\n");rn exit(1);rnrn rn //设置一个socket地址结构server_addr,代表服务器的internet地址, 端口rn struct sockaddr_in server_addr;rn bzero(&server_addr,sizeof(server_addr));rn server_addr.sin_family = AF_INET;rn if(inet_aton(host,&server_addr.sin_addr) == 0) //服务器的IP地址来自<em>程序</em>的参数rn rn printf("Server IP Address Error!\n");rn exit(1);rn rn server_addr.sin_port = htons(HELLO_WORLD_SERVER_PORT);rn socklen_t server_addr_length = sizeof(server_addr);rn //向服务器发起连接,连接成功后client_socket代表了客户机和服务器的一个socket连接rn if(connect(client_socket,(struct sockaddr*)&server_addr, server_addr_length) < 0)rn rn printf("Can Not Connect To %s!\n",argv[1]);rn exit(1);rn rnrn char buffer[BUFFER_SIZE];rn bzero(buffer,BUFFER_SIZE);rn //向服务器<em>发送</em>buffer中的数据rn int temp = send(client_socket,buff,6,0);rn if(temp< 0 )rnrn //从服务器<em>接收</em>数据到buffer中rn bzero(buffer,BUFFER_SIZE);rn int length = 0;rn while( length = recv(client_socket,buffer,BUFFER_SIZE,0))rn rn if(length < 0)rn rn printf("Recieve Data From Server %s Failed!\n", host);rn break;rn rn printf("rev:");rn int k;rn for(k=0;k);rn bzero(buffer,BUFFER_SIZE); rn send(client_socket,buff,6,0);rn rnrnrn //关闭socketrn close(client_socket);rn return 0;rnrn这是我的代码,建立起连接之后直接send()<em>发送</em>数据发不出去,但是后面的recv()能<em>接收</em>到数据。rn是不是我的<em>linux</em>版本有问题。客户端和服务器都是嵌入式<em>linux</em> 。rnrn求大神指教
请问linux下socket编程服务器数据只能发送不能接收吗?
我看send函数是服务器<em>发送</em>给客户端数据的,那请问它要<em>接收</em>来自客户端的数据怎么办?recv好像只是客户端的<em>接收</em>函数,而不是服务器端的。同样,客户端要发生数据怎么办?rnrn另外问一下,一个服务端<em>程序</em>编写的时候需要指明<em>程序</em>端口号,那请问如果多个客户端同时向这个服务器<em>发送</em>链接时,该怎么办?大家都是链接同一个端口啊,这也行吗?
奇怪的只能发送不能接收问题,请各位高手指点
我是通过局域网上网的,使用winxp系统。tp-link8139网卡。网关:192.168.16.1,静态ip地址:192.168.16.158,rnping 127.0.0.1,正常,ping 网关<em>只能</em><em>发送</em>数据,<em>接收</em>数据为0,ping自己设置的ip地址: 192.168.16.158,正常。网卡灯亮,且数据灯有闪烁,系统有提示网络接通且为100M,我把网卡换了各个pci插槽也没有用,更换网卡也无效。我同事和我在一个网内,但是找不到他,他可以正常ping通网关和上互联网,请问大家为什么啊?
S3C2410使用uart2串口只能接收不能发送
我使用S3C2410的uart2rn在驱动的配置引脚过程如下:[code=c] rn s3c2410_gpio_cfgpin(S3C2410_GPH6,S3C2410_GPH6_TXD2 ); rn s3c2410_gpio_pullup(S3C2410_GPH6, 1); rn s3c2410_gpio_cfgpin(S3C2410_GPH7,S3C2410_GPH7_RXD2 ); rn s3c2410_gpio_pullup(S3C2410_GPH7, 1); rnrn //writel(readl(base_addr) & (~S3C2410_LCON_IRM),base_addr); 配置为红外线模式已注释rnrn writel(readl(base_addr) | 0x03u),base_addr);rn[/code]rn rnrn在应用<em>程序</em>中rn[code=c]rnioctl(fd485, _485_IOCTRL_RE2DE, _485_RE ); //set 485 mode: rev rn printf("####s3c2410 485 device receiving ####\n");rn rn do rn read(fdcom2,&c,1); /* com port */rn printf("%c", c);rn fflush(stdout);rn while (c != '\0');rn[/code]rnrnrnrn这段代码是读串口数据,我是在window上的串口软件上<em>发送</em>字符,开发板能够<em>接收</em>到并显示!!!rnrn而这段rnrn[code=c]#if 1rn rn int i;rn for(i='0'; i<);rn[/code]
我们设置的邮件只能接收不能发送是怎么回事?
我们设置的邮件<em>只能</em><em>接收</em><em>不能</em><em>发送</em>是怎么回事?
exchange服务器只能发送不能接收邮件??(怎么办)
我的邮件服务器<em>只能</em><em>发送</em>外部邮件,,,但<em>不能</em><em>接收</em>外部邮件,,(能<em>接收</em>局域网邮件)rnrn下面用OUTLOOK发邮件时,,提示的错误啊~~~rnrn由于服务器拒绝收件人之一,无法<em>发送</em>邮件。被拒绝的电子邮件地址是“computer@szforman.com”。 主题 '', 帐户: 'pop-ent.21cn.com', 服务器: 'smtp-ent.21cn.com', 协议: SMTP, 服务器响应: '550 , No such user.', 端口: 25, 安全(SSL): 否, 服务器错误: 550, 错误号: 0x800CCC79rnrn各位高手,,指点下迷津啊~~
Extmail 邮件服务器不能接收邮件,只能发送的解决办法
执行以下命令:#service syslog restart
关于Rs485通信只能接收不能发送的问题
在485传输方向正确的前提下 //MAX3485数据传输方向 void MAX3485_DIRECTION(u8 direction) {    if(direction == MAX3485_Send) {    //高电平<em>发送</em> GPIO_WriteBit(MAX3485_DIRC_GPIO, MAX3485_DIRECTION_OUT, Bit_SET); delay_ms(
红外接收发送程序 红外接收发送程序
红外<em>接收</em><em>发送</em><em>程序</em>红外<em>接收</em><em>发送</em><em>程序</em>红外<em>接收</em><em>发送</em><em>程序</em>红外<em>接收</em><em>发送</em><em>程序</em>
单片机串口通信接收发送数据程序
51系列单片机 单片机<em>串口通信</em><em>接收</em><em>发送</em>数据<em>程序</em>
51单片机串口通信(字符串接收发送).zip
51单片机<em>串口通信</em>(字符串<em>接收</em>和<em>发送</em>),非常详细,是实际做项目的好帮手
MFC实现串口通信16进制发送接收
利用MFC实现<em>串口通信</em>,用到MSCOMM32控件,能控制<em>发送</em>的时间,最短1ms,同时支持16进制和字符型的<em>接收</em>和<em>发送</em>,功能很强大,基于VS2010编写,研究MFC<em>串口通信</em>的同学值得拥有!
红外发送程序接收程序
用汇编语言<em>程序</em>设计写的关于红外<em>发送</em>,<em>接收</em>的<em>程序</em>,具体接线的方式是采用现成的方式,具体的含义,读者自己领悟
VC++串口通信,gps的,接收发送保存
自己编的自己编的<em>程序</em>。源代码有<em>程序</em>。源代码有自己编的自己编的<em>程序</em>。源代码有<em>程序</em>。源代码有
unity3D和串口通信接收下位机数据和发送指令
public class SerialCommunication : MonoBehaviour {     public GUIText gui;     public string portName = "COM2";     public int baudRate = 9600;     public Parity parity = Parity.None;     public
单片机开发串口通信发送字符1-9接收出问题
问题是,我希望使用串口调试助手,<em>发送</em>0-9的数字,控制灯的亮度。但是<em>发送</em>过去,<em>程序</em>无法读出数据。 部分代码如下: #include&amp;lt;reg52.h&amp;gt; #define uint unsigned int #define uchar unsigned char sbit LED=P2^0; sbit l1=P2^1; sbit l2=P2^2; sbit l3=P2^3; uint ...
串口通信接收不到数据却可以发送
<em>串口通信</em>的<em>程序</em>,用串口调试助手通信,可以向调试助手发数据,调试助手也可以<em>接收</em>,但是,用调试助手<em>发送</em>数据,这边却<em>接收</em>不到,我想是不是OnComm函数<em>程序</em>的问题,但是对照书上的,也没错的地方,或者是其他方面的?[img=https://img-bbs.csdn.net/upload/201411/15/1416065218_608472.png][/img]
串口通信程序文件接收的 问题
现在用VB做一个串口<em>发送</em>文件的<em>程序</em>!rn在把文件打开的时候用的是BYTE类型的!rn放到数组里面的!在本地写入新的文件没有问题1rn通过串口<em>发送</em>的时候<em>接收</em>端写入文件的时候出错!rn写入一些 的乱码!不知道那位做过着方面的<em>程序</em>!rn帮忙!rn谢谢!
串口通信和CRC计算+MODBUS发送接收
一个实现<em>串口通信</em>,可以任意设定通信端口和波特率。和CRC计算+MODBUS<em>发送</em><em>接收</em>
串口通信接收发送怎样在一台电脑上
我是<em>发送</em>和接受各一个<em>程序</em>的,不知道在一个<em>程序</em>中行吗?
serialport 发送不能接收
背景知识:rnrn(1)问题源头:近日用串口<em>程序</em>操纵wavecom的一个gprs猫。rnrn(2)该gprs猫有一个最基本的反应就是:<em>发送</em>给猫“AT回车”,猫返回“回车OK回车”。并且该猫没有问题。rnrn(3)<em>程序</em>写作语言:C#;vs2005;.NetFramework2;rnrn(4)<em>程序</em>功能:<em>发送</em>给猫“AT回车”,等待猫返回“回车OK回车”并显示在窗口里。rnrn rnrn<em>程序</em>完成之后测试结果:rnrn(1)电脑A是主机,电脑B模拟gprs模块。在A上运行我的<em>程序</em>并在B上用串口工具监听,发现A可以成功发过来“AT回车”。然后,用在B上的串口工具向A返回“回车ok回车”,A上我的<em>程序</em>可以正常显示“回车OK回车”。rnrn(2)将A连接至GPRS猫,点击<em>发送</em>后,<em>程序</em>没有显示“回车OK回车”。此时关掉我的<em>程序</em>,立即打开A上的串口工具,发现可以接受到“回车OK回车”。rnrn这是怎么一回事????rn
完整串口通信程序(发送接收)VC++源代码.rar
完整<em>串口通信</em><em>程序</em>(<em>发送</em>和<em>接收</em>)VC++源代码.rar VC6下成功运行。
基于unity3D串口通信程序,可以实现发送接收。C#编写。
unity3D<em>串口通信</em><em>程序</em>,可以实现<em>发送</em><em>接收</em>。脚本语言是C#编写。基本满足通信要求。
串口通信发送中断程序简介
这样做,串口<em>发送</em>中断<em>程序</em>里必须判断是否<em>发送</em>完一串数据,如已<em>发送</em>完则不处理,未完继续<em>发送</em>。 现在置位TI,使单片机进入串口<em>发送</em>中断,而且未<em>发送</em>完,当然<em>程序</em>就会继续<em>发送</em>,其实是开始<em>发送</em>。 至于判断条件,主<em>程序</em>中未给出,但必定有,应该参照串口中断<em>程序</em>看。
发送命令的控制台串口通信程序
可以接受命令的控制台串口<em>程序</em>,<em>发送</em>命令后可以读取相应的数据。
linux嵌入式串口通信程序
<em>串口通信</em><em>程序</em>实例 <em>串口通信</em><em>程序</em>实例 <em>串口通信</em><em>程序</em>实例 C语言 <em>linux</em>嵌入式<em>串口通信</em><em>程序</em>
linux串口通信程序的编写
各位师兄:你们好!在下有礼了。我现在需要c语言编写的<em>串口通信</em><em>程序</em>代码,以来提高自己编程能力,望诸位帮忙!急需,在此表示感谢!
Linux串口通信Linux串口通信
Linux<em>串口通信</em>Linux<em>串口通信</em>Linux<em>串口通信</em>Linux<em>串口通信</em>Linux<em>串口通信</em>
用EVB做的串口通信程序为什么不能发送AT命令?
在本<em>程序</em>中,我用的是Comm控件,RThreshold设为1。我是在模拟环境下做的试验,用的Modem是GSM模块,rn为什么我在输入文本框中输入“AT”,然后按<em>发送</em>按钮后,<em>程序</em>就没有响应了。rn如果是代码的问题,那各位大侠帮我看看下面这些<em>程序</em>吧:rnrnOption ExplicitrnDim strTemp As StringrnrnPrivate Sub cmdClose_Click()rnIf Comm1.PortOpen = True Thenrn Comm1.PortOpen = FalsernEnd IfrnEnd SubrnrnPrivate Sub cmdCommand_Click()rnComm1.Output = txtCommand.Text + Chr(13)rnEnd SubrnrnPrivate Sub Comm1_OnComm()rnSelect Case Comm1.CommEventrn Case comEvReceivern strTemp = strTemp + Trim(Comm1.Input)rnEnd Selectrn txtStatus.Text = txtStatus.Text + strTemprnEnd SubrnrnPrivate Sub Form_Load()rnComm1.CommPort = 1rnComm1.Settings = "9600,N,8,1"rnComm1.PortOpen = TruernEnd SubrnrnPrivate Sub Form_OKClick()rnIf Comm1.PortOpen = True Thenrn Comm1.PortOpen = FalsernEnd Ifrn App.EndrnEnd Sub
UDP组播的发送接收程序
采用C#语言,通过UDP协议实现组播数据的上传和下载,组播地址为224.100.100.4.
lpc1768的can程序接收发送
在lpc1768上实现了can的<em>接收</em><em>发送</em>
VC++串口接收发送程序
使用VC++分别编写串口<em>接收</em>和<em>发送</em><em>程序</em>,能够实现不同计算机间的通讯。已经过调试。
NRF24L01无线模块接收发送程序
这是我参加比赛所使用的源<em>程序</em>,我相信一定会给使用者带来很大的帮助,谢谢。
串口发送接收程序-FPGA
串口<em>发送</em><em>接收</em><em>程序</em>演示<em>程序</em>,verilog代码,很好用,我用过
基于凌阳61的温湿度测量智能仪设计的程序下载
适时准确地测量周围环境的温湿度在许多领域中具有广泛的应用,如何使这种繁琐的测量以及相关数据处理实现自动化,成为人们急需解决的重要课题。我们使用凌阳科技公司的高性能SPCE061A单片机作为主控制器,配合一线制数字温度传感器DS18B20作为温度传感器和电容式湿度传感器HS1101测量湿度,以实现目标温湿度的手动及自动控制测量、液晶1602显示、语音播放、定时存储与PC机传输数据等功能,温湿度的测量和温湿度值的播放及存储利用按键控制。 该资源是基于凌阳的智能仪设计的程序。 相关下载链接:[url=//download.csdn.net/download/youlianyiran/2152954?utm_source=bbsseo]//download.csdn.net/download/youlianyiran/2152954?utm_source=bbsseo[/url]
ACESS数据库查看器 C++下载
一个自己写的查看ACESS数据库文件中数据信息的小程序,用到了ADO连接数据库的技术,感兴趣的朋友可以看下。 相关下载链接:[url=//download.csdn.net/download/kingqizhou/3323535?utm_source=bbsseo]//download.csdn.net/download/kingqizhou/3323535?utm_source=bbsseo[/url]
Alternativa3D实现红蓝立体代码下载
Alternativa3D实现红蓝立体代码 相关下载链接:[url=//download.csdn.net/download/kyome262/3942809?utm_source=bbsseo]//download.csdn.net/download/kyome262/3942809?utm_source=bbsseo[/url]
我们是很有底线的