最近耗时多天,成功的将RT3070驱动.并解决了socket的网络编程,成功的在BA9G10上面实现了USB wif.连上家里的无线路由器,通过ubuntu下面建立的服务端程序,将BA9G10中的数据成功读取到PC机上面了.其过程的艰辛和曲折说起来是满眼血泪史啊.下面将记录其中解决问题的大致过程.     最开始设计方案时,为了整体的方便.我借用了外面开发板的文件系统.本来是为了偷懒的,不知道最后我为这件事情付出了沉重的代价.开始在编译RT3070驱动时,我直接将别人的文件系统加载到BA9G10…
记初次接触socket编程,在devC++使用Winsock进行socket编程的一个过程,通过在devC++创建2个项目分别是server.client程序项目,感受通过socket使client与server的一次通讯. 1.新建项目与往常不同,不单单是需要创建一个C文件,更是要在连接库中添加 libws2_32 在项目管理中的属性配置连接库,然后在项目中新建server.c 面向连接的C/S程序工作流程(TCP) 使用WSAStartup()函数检查系统协议栈安装情况 使用socket()…
2018-11-16 10:46 2018-11-19 21:35 前言 本篇文章记录的是本人在使用Java程序连接另一台电脑(同一局域网)上的Mysql数据库的过程中遇到的各种问题及解决方案.希望能给遇到同样问题的人提供一些帮助.当初本人遇到这些问题的时候,也是在各位大神的博客中找到的答案,本篇博客在某种程度上也算是这几个问题的答案集合吧. 软件环境 客户端: Windows10  +  Java    [ IP: 192.168.76.10 ] 数据库服务端: Ubuntu 16.04  +…
以下都是我在使用Devc++的过程中出现过的错误,通过查找资料解决问题,今天小小地记录.整理一下. 1.[Error] invalid conversion from 'const char*' to 'char' [-fpermissive] 出现该错误的原因是:使用字符串操作函数 strcmp,strcpy时传入的必须是指针 例如  :strcmp(a[i],"f"),这是错的,因为a[i]是值,不是指针,应该改为strcmp(&a[i],"f") 2.…
1.QLineEdit显示内容的格式函数: QLineEdit *lineEditPassword = new QLineEdit: lineEditPassword -> setEchoMode(QLineEdit::Password); 注: QLineEdit::Normal0            Display characters as they are entered. This is the default. QLineEdit::NoEcho1 Do not display a…
使用代码 目的:开发一个客户端用于发送string消息到服务端,服务端将相同的信息反转后返回给客户端. PHP服务器 第1步:设置变量,如“主机”和“端口” $host = "127.0.0.1"; $port = 5353; // No Timeout set_time_limit(0); 端口号可以是1024 -65535之间的任何正整数. 第2步:创建socket $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die(&q…
说明:我在Editplus中编写了一个简单的JDBC程序,用来测试是否和数据库连接正确.读者如有其它疑问,可以留言交流. [1]程序如下: import java.sql.*; public class ConnMySql { public static void main(String[] args) throws Exception { // 1.加载驱动,使用反射的知识,现在记住这么写. Class.forName("com.mysql.jdbc.Driver"); try( /…
1.postgresql.conf主配置文件中要配置postgresql绑定的IP,如果不设置,可能只绑定本地闭环地址:127.0.0.1,可以设定为0.0.0.0:就包括了一切IPv4地址 2.pg_hba.conf中的设置,这个里面设置,主要是添加连接客户端所在的机器IP,并且在IP后面要加个/32,/32是Ipv4的,ipv6就是/128.方法直接写成password.设置方法参考:http://wiki.postgresql.org/wiki/9.1%E7%AC%AC%E5%8D%81%…
Win7电脑开启局域网连接和共享 http://bbs.ithome.com/thread-334567-1-1.html http://jingyan.baidu.com/article/6dad5075103e07a123e36ec1.html 重点来了,如果以上方法都不行的话,下面这个绝对有效,本人屡试不爽.1 打开受访者的guest权限2 开始--运行--gpedit.msc3 windows设置---安全设置--本地策略--用户权利指派--在右边找到''拒绝从网络访问这台计算机''双击…
{一}PHP中this,self,parent的区别之一this篇 面向对象编程(OOP,Object Oriented Programming)现已经成为编程人员的一项基本技能.利用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划web开发构架都是很有意义的. PHP5经过重写后,对OOP的支持额有了很大的飞跃,成为了具备了大部分面向对象语言的特性的语言,比PHP4有了很多的面向对象的特性.这里我主要谈的是 this,self,parent 三个关键字之间的区别.从字面上来理解,…
C/C++中的指针让程序员有了更多的灵活性,但它同时也是一把双刃剑,如果用的不好,则会让你的程序出现各种各样的问题,有人说,C/C++程序员有一半的工作量是花在处理由指针引起的bug上,可想而知,指针中包含的陷阱是多么可怕.既然如此,我们在编写代码的时候就应该把好关. 要想在编写代码的时候尽可能避免指针带来的问题,就需要知道不恰当的使用指针到底会引发哪些问题, 又该如何去避免它?下面一起来总结在使用指针时容易遇到的问题.   1.避免内存泄露 程序在运行的时候需要内存,同时我们也知道内存是有限的…
最近看别人写的代码,注意到很多规范的代码的注释写的都特别好.只是不太明白TODO.FIXME这些事什么意思.查阅资料,看到一篇博客,遂转载而来,以供今后查阅. (转载地址http://www.cnblogs.com/pengyingh/articles/2445826.html) TODO:说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明. FIXME:说明标识处代码需要修正,甚至代码是错误的,不能工作,需要修复,如何修正会在说明中简略说明. XXX:说明标识处代码虽然实现了功能,但…
1. Reducer 类中 reduce函数外定义的变量是在Reducer机器上属于全局变量的,因此,一台机器上reduce函数均可以对该变量的值做出贡献.如代码:(sum和count数据Reducer机器上的全局变量)' public static class AvgCalReducer extends Reducer<EntityEntityWritable,FloatWritable,EntityEntityWritable,FloatWritable> { FloatWritable…
import rigLib reload(rigLib.base.control)spine = rigLib.base.control.Control( prefix = 'spine1') help(rigLib.base) help返回结果 help(rigLib.base)Help on package rigLib.base in rigLib: 表示所查询的rigLib.base在rigLib模块之下 NAME rigLib.base 查询模块的名称为rigLib.base FILE…
写了一个函数,删除数组里面的元素,声明如: int student_delete(int *len, struct student stu[]): 在其内部调用了另一个函数 int student_del_by_number(int num, int *len, struct student stu[]): 我是这样调用的: student_delete(&length, stu):在student_delete内部调用:student_del_by_number(num, &len, s…
系列文章传送门: 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - 从物理层到 MAC 层 网络协议 4 - 交换机与 VLAN:办公室太复杂,我要回学校 网络协议 5 - ICMP 与 ping:投石问路的侦察兵 网络协议 6 - 路由协议:敢问路在何方? 网络协议 7 - UDP 协议:性善碰到城会玩 网络协议 8 - TCP 协议(上):性恶就要套路深 网络协议 9 - TCP协议(下):聪明反被聪明误     前面一直在说各种协议,偏理论方面的知…
在開始学习网络之前先复习下计算机网络基础吧. 鲁迅说,天下文章一大抄.看你会炒不会炒,基础知识就抄抄书吧. 一 分层模型 1 为什么分层 为了简化网络设计的复杂性.通讯协议採用分层结构.各层协议之间既相互独立又相互高效的协调工作. 对于复杂的通信协议.其结构应该是採用层次的.分层的协议能够带来非常多便利: 分层的优点有: a> 灵活性好:当不论什么一层发生变化时,仅仅要层间接口关系保持不变,则在这层以上或下面各层均不受影响. 此外,对某一层提供的服务还可进行改动.当某层提供的服务不再须要时,甚至…
一.socket编程 网络功能是Uinux/Linux的一个重要特点,有着悠久的历史,因此有一个非常固定的编程套路. 基于TCP的网络编程: 基于连接, 在交互过程中, 服务器和客户端要保持连接, 不能断开.重发一切出错数据.数据验证, 保证数据的正确性.完整性和顺序性, 缺点是消耗的资源比较大. 基于UDP的网络编程: 无连接协议, 在网络交互过程中不保持连接, 只需要在发送数据时连接一下, 不重发.验证数据.优点是资源消耗少, 数据的可靠性完整性 顺序性得不到保证. 二.编程步骤: 服务器:…
前面一直在说各种协议,偏理论方面的知识,这次咱们就来认识下基于 TCP 和 UDP 协议这些理论知识的 Socket 编程.     说 TCP 和 UDP 的时候,我们是分成客户端和服务端来认识的,那在写 Socket 的时候,我们也这样分.     Socket 这个名字很有意思,可以作插口或者插槽讲.我们写程序时,就可以将 Socket 想象为,一头插在客户端,一头插在服务端,然后进行通信.     在建立 Socket 的时候,应该设置什么参数呢?Socket 编程进行的是端到端的通信,…
最基础的Python的socket编程入门教程 本文介绍使用Python进行Socket网络编程,假设读者已经具备了基本的网络编程知识和Python的基本语法知识,本文中的代码如果没有说明则都是运行在Python 3.4下. Python的socket功能封装在socket库中,要使用socket,记得先import socket,socket库的详细介绍参见官方文档. 创建Socket 首先创建一个socket,使用socket库中得socket函数创建.     import socket …
Socket通常也称作"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求. 本文介绍的是Qt中采用多线程Socket编程,由于工作的需要,开始接触Qt的socket编程.Qt里的example是个不错的教程,但是当我把代码移植到多线程的环境时就出问题了: QObject: Cannot create children for a parent that is in a different thread. 由于想要在线程中保留一个socket,以便维…
socketserver(在Python2.*中的是SocketServer模块)是标准库中一个高级别的模块.用于简化网络客户与服务器的实现(在前面使用socket的过程中,我们先设置了socket的类型,然后依次调用bind(),listen(),accept(),最后使用while循环来让服务器不断的接受请求.而这些步骤可以通过SocketServer包来简化.).模块中,已经实现了一些可供使用的类. 我们将再次实现之前的那个基本TCP的例子.你会注意到新实现与之前有很多相似之处,但你也要注…
在认真的看UNP之前,一直被socket编程说的云里雾里,今天我要让大家从整天上认识socket编程,让我们知道socket编程的整个流程和各个函数的用法.这样:我们在写一些简单的socket编程时就不用被那么多函数和调用顺序所迷惑了.下面看UNP书上给的图片描述的建立连接的过程,看了之后一目了然! 1.建立连接的概括图 2.各个函数的用法: (1).socket() 包含文件:#inlcude<sys/socket.h> 函数原型:int socket(int family, int typ…
设备控制软件编程涉及到的基本通信方式主要有TCP/IP与串口,用到的数据通信协议有Fins与ModBus. 更高级别的通信如.net中的Remoting与WCF在进行C/S架构软件开发时会采用. 本篇文章结合Fins/ModBus协议的指令帧结构与数据编码与解码过程,自定义了一套TcpChatter数据数据通信协议,编写了一个聊天程序,说明TCP/IP的在一个项目中应用. 本文涉及到的源代码工程项目为 - TcpChatter 后面附件提供源代码下载 ( OpenSource Code   软件…
55.1 TCP 连接和关闭过程 55.1.1 介绍 建立连接的过程就是三次握手的过程:客户端发送 SYN 报文给服务器,服务器回复 SYN+ACK 报文,客户机再发送 ACK 报文. 关闭连接的过程:客户机先发送 FIN 报文,服务器回复 ACK 报文,服务器再发送 FIN 报文,客户机再发送响应报文 ACK. 55.1.2  自定义协议编程例子 msg.h #ifndef __MSG_H__ #define __MSG_H__ #include <sys/types.h> typedef…
Socket编程依赖于:WS2_32.dll --- 服务端 --- .导入我们需要的函数 #incldue <windows.h> //#include<WinSock2.h> #pragma comment(lib,"ws2_32.lib") .初始化(指定要使用的socket版本) WSADATA ws = {}; /*WSAStartup 微软MSDN:https://docs.microsoft.com/en-us/previous-versions/…
安卓Socket连接实现连接实现发送接收数据,openwrt wifi转串口连接单片机实现控制 socket 连接采用流的方式进行发送接收数据,采用thread线程的方式. 什么是线程?  详细代码介绍: 博文来源:http://blog.csdn.net/zhaocundang 如果你对代码有些疑问,请在下面留言来探讨,或者加我的QQ463431476一起学习进步! //线程mRunnable启动 private Runnable mRunnable = new Runnable() { pu…
C#编程使用Managed Wifi API连接无线SSIDhttp://www.2cto.com/kf/201307/227623.html Managed Wifi API - Homehttp://managedwifi.codeplex.com/ Native Wifi API Sample (Windows)http://msdn.microsoft.com/en-us/library/aa816369(v=vs.85).aspx…
4. TCP的连接和关闭过程 4.1 TCP连接的三次握手和四次挥手 (1)三次握手 ①第1次握手:建立连接.客户端发送连接请求报文段(SYN=1,sequence Number=x):然后客户端进入SYN_SEND状态,等待服务器确认. ②第2次握手:服务器收到SYN报文段,然后对SYN报文段进行确认,并设置(Acknowlegement Number为x+1).同时,自己还要发送SYN请求信息.上述信息放到一个报文段(SYN+ACK)中,一并发送给客户端,此时服务器进入SYN_RECV状态.…
WiFi无线连接过程中有哪几个主要步骤?[1]在使用WIFI功能时,经常性的操作是打开手机上的WiFi设备,搜索到心目中的热点,输入密码,联网成功,成功上网.这个看似简单的过程,背后却是隐藏着大量的无线通信技术.用几个专业术语来表示这个过程,分别是:扫描(Scanning).认证(Authentication).关联(Association). [2]扫描(Scanning):专业术语中的扫描可以简单粗暴的理解为搜索周边的WiFi热点.我们要加入一个无线网络,就需要找到它的网络名称,即SSID.…