0 前言     本文使用freemodbus协议栈,在EasyARM i.mx287上实现了modbus tcp从机. 在该从机中定义了线圈寄存器.当中线圈寄存器地址较低的4位和EasyARM的P2.4至P2.5关联,通过modbus指令可控制GPIO的输出.本文改动自freemodbus 演示样例LINUXTCP.经过简单的改动也可用于其它Linux开发板.     [相关博文]     [EasyARM i.mx28学习笔记--文件IO方式操作GPIO]     [EasyARM i.mx…
0 前言     在windows中有非常多串口调试软件,比如putty. 而ubuntu中也有非常多串口调试软件,当中最简单有用的便是minicom了.     本文说明虚拟机中怎样使用minicom进行串口调试,详细内容包含虚拟机中加载USB设备,查看USB设备是否存在.minicomport号.波特率等配置.     为了在虚拟机更好的进行嵌入式Linux开发,建议安装Vmware Tool.这样便可方便的在虚拟机和主机中复制粘贴文件.     [Linux学习笔记--虚拟机中安装VMwa…
0 前言     本月初(2014年8月)购买了周立功的EasyARM开发板,主控为EasyARM i.mx287.出于下面几个理由购买了该开发板.     [1]主要原因,有人约我一起学习一起使用该开发板.     [2]该开发板性价比較高,到手300元以内,比2440/2410开发板稍廉价些.     [3]该开发板的CAN功能是一个特色.     [4]通过学习EasyARM i.mx287,比較和树莓派的开发的不同.     [建议]     假设亲爱的读者Linux的基础比較薄弱的话,…
0 前言     本文描写叙述假设通过文件IO sysfs方式控制树莓派 GPIO端口.通过sysfs方式控制GPIO,先訪问/sys/class/gpio文件夹,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包含direction和value等,direction控制GPIO方向,而value可控制GPIO输出或获得GPIO输入.     Linux学习可从应用出发,先不纠结Linux驱动编写,先把Linux给玩起来.     [同样与…
.NET MVC 学习笔记(七)— 控制input控件 画面中有时候需要输入数字,这时就需要控制input的输入.以下为保留两位有效数字. /* * 初始化数字输入 */ function initDigitInput(className) { /* * 1.先把非数字的都替换掉 * 2.由于IE浏览器对于change事件存在兼容问题,改用focus和blur事件代替. * */ $(className).on("keyup", formatMN); $(className).on({…
Session控制 1>     Session常用来作为全局变量使用,比如记录当前登录的用户,或者页面之间传递数据使用. 2>     Beego框架内置了 session 模块,目前 session 模块支持的后端引擎包括 memory.cookie.file.mysql.redis.couchbase.memcache.postgres,用户也可以根据相应的 interface 实现自己的引擎.若是使用标红的部分,需要再下载对应的session包. 3>     在main.go代…
[学习笔记]1.switch语句后的expression表达式的数据类型只能是byte.short.char.int四个整数类型.String(Java 7后才支持)和枚举类型. 2.数组的长度不可变,定义数组时候不能指定数组的长度.为数组分配空间的时候一定要进行初始化,数组初始化的方法有两种,第一种是静态初始化,在数组中直接为每个数组元素赋上初值,另一种是动态初始化,在初始化的时候指定数组的长度,由系统来为每个元素指定初值.注意的是两种初始化不能够同时使用,即既指定数组的长度,同时又为每个元素…
Torque or force mode When the joint motor is enabled and the control loop is disabled, then the joint will try to reach the desired target velocity given the maximum torque/force it is capable to deliver. When that maximum torque/force is very high,…
结构: socket是应用层和传输层的桥梁.(传输层之上的协议所涉及的数据都是在本机处理的,并没进入网络中) 涉及数据: socket所涉及的数据是报文,是明文. 作用: 建立长久链接,供网络上的两个进程通信. 下面是Tcp服务端的代码: var net = require('net');//模块引入 var listenPort = 8080;//监听端口 // 创建socket服务端,下面是对客户端的处理 var server = net.createServer(function(sock…
本文通过两个图来梳理TCP-IP协议相关知识.TCP通信过程包括三个步骤:建立TCP连接通道,传输数据,断开TCP连接通道.如图1所示,给出了TCP通信过程的示意图. 图1主要包括三部分:建立连接.传输数据.断开连接. 1)建立TCP连接很简单,通过三次握手便可建立连接. 2)建立好连接后,开始传输数据.TCP数据传输牵涉到的概念很多:超时重传.快速重传.流量控制.拥塞控制等等. 3)断开连接的过程也很简单,通过四次握手完成断开连接的过程. 三次握手建立连接: 第一次握手:客户端发送syn包(s…