- STM32 消息队列处理串口发送的报文
S安东尼
stm32嵌入式硬件单片机
文章目录概要整体流程具体实现小结概要本文写自正在做的项目,需要使用串口2处理EasyModBus传输的报文,原本采用中断处理的方式,在屏幕,按键,感应器同时传输下,产生了丢包现象,偶发性的死机问题,所以改用消息队列进行缓存,逐条处理。整体流程创建队列串口中断接收报文,简易判别添加入队列解包任务,从队列中取出报文解包做相应处理具体实现创建队列结构体#defineQUEUE_LENGTH20struc
- 在linux操作系统ubuntu上安装libmodbus库
黑暗森林里的葱
linuxubuntu服务器
sudoapt-getinstalllibmodbus5libmodbus-devlibmodbus静态库生成在源代码目录下,执行配置脚本以准备编译环境./configure--enable-static--prefix=/path/to/installmakemakeinstall安装完成后,您可以在安装目录下的lib文件夹中找到生成的静态库文件。静态库文件通常以.a为后缀。
- 上位机的入门
落叶@Henry
嵌入式硬件
上位机的入门开发上位机前,我们应该准备好三个软件modbuspoll,modbusSalve,ConfigureVirtualSerialPortDriver,叫上位机,下位机和虚拟串口,有的人也叫主站,从站,虚拟串口,其实就是一个东西,安装完是如下图的。这三个软件文末我阿里云盘提供给大家打开虚拟串口进行添加一对com再打开ModbusSlave进行配置,配置完之后进行连接虚拟串口显示以下,说明连
- libmodbus 开源库(第一部分)
零K沁雪
Modbus专题modbus
下载地址libmodbus开源库地址:https://github.com/stephane/libmodbus编译方式安装必要的软件 sudoapt-getinstall pkg-config autoconfautomakemakelibtool编译libmodbus ./autogen.sh&& ./configure--prefix=/usr&&&&make&&sudomakeinst
- modbus(RTU) CRC-16计算过程
unfair269
c语言mcu驱动开发
文章目录前言一、modbus(RTU)CRC-16计算二、使用步骤1.代码演示2.计算结果前言CRC即循环冗余校验码(CyclicRedundancyCheck):是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整
- C语言实现CRC-16 MODBUS校验码的生成,浅谈CRC-16检验码
Kong Deheng
C语言c语言keilmdk
关于CRC校验码CRC又称循环冗余校验,是用来检测或校验数据传输或者保存是否出现错误的一种方法。我也看了很多关于CRC校验码的文章,如果有没看懂的请看CRC码计算及校验原理的最通俗诠释这一篇文章,文章向我们介绍了CRC校验码是通过什么方法计算出来的,文章挺通俗易懂的。校验码的长度可以根据自己的意愿来定,也可以根据国际上的标准来定,根据自己的实际情况来定,校验码越长,出错的概率肯定就越小。校验码的唯
- 两种CRC-16算法的实现以及验证
zmbnj
chipc算法
关于CRC-16算法的介绍,请自行查阅相关文章,这里介绍两种常用的CRC-16算法的实现,以及验证其正确性,这两种CRC-16的算法,分别是CRC-16/Modbus和CRC-16/XModem。一、实现1.CRC-16/Modbus名称宽度多项式初始值结果异或值输入翻转输出翻转CRC-16/Modbus168005FFFF0000是是/***@brief计算ModbusCRC16*@paramp
- 铱塔 (iita) 开源 IoT 物联网开发平台,基于 SpringBoot + TDEngine +Vue3
AIoT科技物语
开源物联网springboottdengine后端
01铱塔(iita)物联网平台铱塔智联(open-iita)基于Java语言的开源物联网基础开发平台,提供了物联网及相关业务开发的常见基础功能,能帮助你快速搭建自己的物联网相关业务平台。铱塔智联平台包含了品类、物模型、消息转换、通讯组件(mqtt/EMQX通讯组件、小度音箱接入组件、onenetStudio接入组件)、modbus透传接入、云端低代码设备开发、设备管理、设备分组、规则引擎、第三方平
- Modbus转PROFINET网关TS-180快速实现软启动器和马达保护器与西门子PLC的通信
上海泗博自动化
PROFINETModbus工业以太网MODBUS转PROFINETPROFINET网关MODBUS网关MODBUSRTU
背景:在钢铁厂的生产过程中,电机作为驱动各种生产机械和辅助设备的关键设备,其正常运行对于生产效率和质量至关重要。为了确保电机的正常运行和使用寿命,通常会使用软启动器和马达保护器等设备,因此监控软启和马达保护器的工作参数成为重点。福建某钢铁厂,中控室使用S7-1515PLC,实时监控现场软启和马达保护器的工作参数确保电机的正常稳定运行。该系统中,S7-1515PLC支持PROFINET以太网协议,软
- 上海泗博HART转ModbusTCP网关HME-635应用案例之组态王和超声波液位计通信
上海泗博自动化
网络HART转ModbusTCPHART协议ModbusTCP
如今工业现场的应用也逐渐把现场的不同应用协议转换成以太网,以此来提升现场的通信速度和质量。ModbusTCP是工业以太网协议的一种,也是现场应用中最常使用的。本应用案例是基于ModbusTCP的组态王和基于HART的超声波液位计之间数据通讯的具体应用。应用图如下:上海泗博HART转ModbusTCP网关HME-635实现ModbusTCP主站同时与三个HART回路上的仪表进行互联通讯,3个相互独立
- Modbus Poll和Modbus Slave使用方法
腊鸡爱学习
ModbusPoll是Modbus主站设备仿真器,可用于测试和调试Modbus从站设备。便于观察Modbus通讯过程中的各种报文数据。该软件支持ModbusRTU、ASCII、TCP/IP等协议模式。ModbusPoll主要功能如下:读/写多达125个寄存器读/写多达2000个输入/线圈提供TestCenter菜单打印和打印预览监视串行数据流量通信数据可导出到TXT或Excel文档提供多种数据格式
- NModbus的NuGet包使用样例
站起来蹬
通讯信息与通信c#
首先仿真软件ModbusSlave简单配置3条数据:连接配置:VS中安装NuGet包:NModbus4简单获取湿度SerialPortserialPort=newSerialPort("COM1",9600,Parity.None,8,StopBits.One);serialPort.Open();Modbus.Device.ModbusSerialMastermaster=Modbus.Devi
- vb.net进行CRC-16/MODBUS校验(调用C#dll),对16进制输入进行CRC校验输出
机构师
VB.net实例应用C#实例应用.netc#开发语言
如果使用vb.net进行串口通讯测试,就需要发送串口指令,一般是16进制数据,并且,大部分串口设备会对指令码进行crc校验。通常来说,串口通讯的crc校验模型都是crc-16/modbus。一、原理解释crc-16/modbus模型,其原理解释如下:预置1个16位的寄存器为十六进制FFFF(即全为1),称此寄存器为CRC寄存器。把第一个8位二进制数据(通信信息帧的第一个字节)与16位的CRC寄存器
- Modbus通信无法正确接收应答的问题处理
nuomigege
网络嵌入式stm32
问题现象:现场反馈,modbus网关无法正确读取就地设备的温度信息。使用PC连接就地设备可以正常读取。问题调查:拿到末端设备后,故障现象可重复,不过使用PC的USB转485适配器也无法正常读取数据。如下图:通过示波器查看AB线上面的通讯波形,可以看到发送和应答波形。不过发送和应答数据之间的间隔非常短,展开后只有大约100us,因为使用的波特率是9600bps,1bit的传输时间大约100us。初步
- 基恩士 KV-8000 PLC通讯简单测试
PascalMing
IoT基恩士PLC上位链路协议KEYENCEKV-8000
1、KV-8000通讯协议基恩士KV-8000PLC支持多种通讯方式,包括:OPCUA、Modbus、上位链路命令等。其中OPCUA需要对服务器和全局变量进行设置,Modbus需要调用功能块。默认支持的是上位链路命令,实际是一条条以回车换行结束的ASCII命令串。TCP、UDP通讯规格如下:2、上位链路命令概览常见错误码3、数据类型和地址范围指定数据格式4、报文格式实际测试,报文有0x0D结尾也行
- 工业智能网关BL110应用之四十五: 数据上传云平台Modbus TCP Server配置
钡铼技术网关
工业智能网关bl110tcp/ip网络协议物联网智慧城市智慧水利
BL110网关无论采集什么协议的数据,把数据传送到各个平台的配置都是一样的。故本说明书单独一章以介绍采集PLC协议的数据传送到各个平台的配置为例。数据上传到各个平台配置本示例以COM1口采集三菱的FX3U,LAN口采集西门子的S7-200SMART为例。BL110网关WAN口接入R40路由器LAN口,R40路由器给BL110网关提供网络。BL110网关设备连接设备接线示意图如下:工业智能网关BL1
- CG-26 土壤热通量传感器采用的工作原理
焦瑞敏
物联网
技术参数供电电压:12VDC测量范围:-500~500W/m2测量精度:<5%分辨率:0.1W/m2信号输出:(标记“”为您所购买使用的型号)电流型:4-20mA电压型:0-2VRS485型:MODBUS-RTU响应时间:1min(均匀土壤)防护等级:IP68⊙尺寸、重量外型尺寸:L120W14H4(mm)整机重量:200(g)⊙土壤热流传感器的使用方法(1)土壤中测量方法应该使板面与热流量方向相
- 物联网领域常见通信协议
清澈的爱52
物联网网络
文章目录一、前言二、Modbus通信协议三、TCP通信协议四、UDP通信协议五、HTTP通信协议六、MQTT通信协议七、COAP通信协议一、前言通信协议是指通信双方通过数据线路(有线或无线)进行数据交换时,按照事先约定好或行业标准等,就通信方法、通信时间、通信内容等所做的约定,从而保证通信双方能够做到相互配合、共同遵守。通信协议各类繁多,在OSI模型中常见的通信协议包括:TCP、UDP、SMTP、
- 西门子S71200系列PLC通过PROFINET连接多功能电表
无锡亿客森
PROFINET协议网关电能表数据采集西门子PLC通讯西门子Modbus通讯多功能电表连接西门子PLCprofinet网关
西门子S71200连接多功能电表1、需求描述:通过西门子S7-1200系列PLC,连接多功能电表,通过Modbus协议读写电表的数据。2、方案描述:桥接器的网口连接西门子S7-1200系列PLC的网口,串口连接到电表的485通讯口,桥接器内部直接将电表的数据映射到西门子PLC中,PLC不需要编程通讯程序也不要硬件组态。拓扑图:3、桥接器参数配置及数据映射:4、多功能电表数据地址:5、PLC配置及数
- 西门子PLC通过PROFINET协议与多功能电表通讯
无锡亿客森
PROFINET协议网关西门子modbus通讯西门子profinetPLC读仪表数据S71200的modbus通讯西门子PLC通讯配置
西门子PLC通过PROFINET协议与多功能电表通讯项目要求西门子S71200PLC需要通过PROFINET协议和多功能电表通讯,读取线电压、相电压、线电流、相电流、有功功率、无功功率等参数。项目实施采用网关NET90-PN-MBT(以下简称“网关”),它是一款将ModbusTCP/RTU协议转换成PROFINET协议的网关产品,实现了将支持ModbusTCP/RTU协议的仪表、变频器、传感器等设
- 三菱FX系列PLC的无线通讯方案
无锡亿客森
工业通讯桥接器三菱PLC通讯FX连接DCS三菱PLC无线编程三菱PLC的WIFI通讯三菱PLC的MQTT通讯
产品型号:NET30-FX-W4使用范围:用于三菱FX3U/3G/3S/2N/1N/1S等系列PLC通讯扩展1、产品介绍工业通讯桥接器(NET30-FX-W4)用于三菱FX系列PLC(FX3U/3G/3S/2N/1N/1S)以及汇川、禾川等PLC的通讯扩展,通过MD8(RS422)通讯口与PLC连接。桥接器同时支持串口、以太网、WIFI和4G多种通讯,同时支持三菱MCTCP、ModbusTCP、M
- ModBus通信协议详解(基于RS-485)
小殷学长
常见通信协议RS-485CRC校验ModBus
文章目录前言一、什么是Modbus?二、ModBus的分类三、ModBus通信过程3.1硬件层半双工通讯方式的实现3.2软件层(数据帧格式)四、CRC校验4.1CRC定义4.2CRC校验原理可参考循环冗余检验(CRC)算法原理总结前言本文将详细介绍Modbus这种通信协议,以及Modbus的特点和应用场景。一、什么是Modbus?Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电
- 【工业】工业无线组网场景下的典型拓扑及设备解决方案
小云君网络
网络5G
工业以太网简介工业以太网是指在工业环境的自动化控制及过程控制中应用以太网的相关组件及技术。工业以太网会采用TCP/IP协议,和IEEE802.3标准兼容,但在应用层会加入各自特有的协议。常见工业协议简介:lProfinet:西门子公司和PROFIBUS用户协会开发的实时通信协议,通信报文为二层和三层报文,延时要求高,常见于西门子设备上使用;lModbusTCP:施耐德公司推出嵌入TCP帧的工业协议
- 三轴 MEMS 加速度传感器
zr526855447
网络服务器嵌入式硬件人工智能物联网
一、功能概述1.1设备简介本模块为了对电机、风机、水泵等旋转设备进行预测性运维而开发,只需一个模块,就可以采集电机的3路振动加速度信号(XYZ轴)和一路温度信号,防护等级IP67,能够适应恶劣的工业环境。传感器自动计算振动信号时域统计量,加速度峰值、峰峰值、有效值、峭度、频率、速度有效值、以及设备的温度等,这些值写入到模组的modbus寄存器,用户用PLC/服务器、DCS系统读取modbusrtu
- Hart转 Modbus 转换器
zr526855447
网络单片机嵌入式硬件物联网运维
第一节功能说明HART转Modbus模块实现将HART信号中的数字信号转换为符合ModbusRTU/ASCII标准的RS485信号和RS232信号,实现仪表的数据读取功能。第二节主要技术指标技术参数描述供电及功耗7-24V电压供电,功耗小于1500mW输入信号HART总线信号处理器32位ARM处理器输出接口1路RS485(RS485-A2,RS495-B2)1路RS232(RS232-T,RS23
- EtherCAT转ModbusTCP网关
zr526855447
阿里云机器学习机器人物联网
一、功能概述1.1设备简介本产品是EtherCAT和ModbusTCP网关,使用数据映射方式工作。本产品在EtherCAT侧作为EtherCAT从站,接TwinCAT、CodeSYS、PLC等;在ModbusTCP侧做为ModbusTCP主站(Client)或从站(Server),接ModbusTCP从站如变频器、流量计、温度采集模块等,或者接ModbusTCP主站如PLC、上位机等。使用场景1:
- modbuse.lib写入字符串
进击的大海贼
qt
如果你想使用modbus协议向寄存器地址中写入字符串,通常情况下是不直接支持这种操作的。modbus协议主要用于读写数字数据,即16位或32位的整数,而不是字符串。但是,如果你需要在modbus寄存器中存储字符串,通常会将字符串转换为一系列数字,并将这些数字写入多个连续的寄存器。或者,你可以将字符串编码为ASCII码,并将ASCII码写入多个寄存器中以表示字符串。下面是一个将字符串转换为ASCII
- Modbus协议学习第七篇之libmodbus库API介绍(modbus_write_bits等)
CodemanNotColdman
Modbus学习ModbusPLC仿真c语言
写在前面在第六篇中我们介绍了基于libmodbus库的演示代码,那本篇博客就详细介绍一下第六篇的代码中使用的基于该库的API函数。另各位读者,Modbus相关知识受众较少,如果觉得我的专栏文章有帮助,请一定点个赞,在此跪谢,这是我能持续更下去的动力!API介绍modbus_new_rtu()完整函数签名为:modbus_t*modbus_new_rtu(constchar*device,intba
- STM32 Modbus通信学习笔记—— 代码及示例
小向是个Der
STM32c语言stm32单片机modbus维控屏
文章目录前言从机帧格式举个栗子:STM32Modbus_RTU与维控屏通信STM32代码1.定时器2串口收发3.数据包处理维控屏代码总结合集前言前面已经介绍了Modbus的通信流程以及主机的数据帧,此篇主要结合STM32的代码来进一步介绍从机端的帧格式以及整个通信过程。从机帧格式从机格式与上一篇的主机格式类似,从机会根据主机的命令和功能码返回对应信息,这里从机返回的地址、功能码是和主机发送的数据一
- Modbus协议学习第四篇之线圈的概念
CodemanNotColdman
Modbus学习
前言在学习Modbus协议时,如果没有相关的基础知识,每次看到线圈相关的概念时,可能会特别困惑,线圈到底是个啥东西,这段文字表达的是啥意思?那么本篇博客,就带大家一起浅浅的了解一下线圈相关的知识。定义第一次在Modbus接触线圈的概念,应该是在介绍功能码的时候,因为其中有一个功能码是“读线圈状态”。我们可以把“线圈状态”理解为一种寄存器,类似于计算机中的寄存器概念,所以读线圈状态就是读某个寄存器,
- jQuery 键盘事件keydown ,keypress ,keyup介绍
107x
jsjquerykeydownkeypresskeyup
本文章总结了下些关于jQuery 键盘事件keydown ,keypress ,keyup介绍,有需要了解的朋友可参考。
一、首先需要知道的是: 1、keydown() keydown事件会在键盘按下时触发. 2、keyup() 代码如下 复制代码
$('input').keyup(funciton(){  
- AngularJS中的Promise
bijian1013
JavaScriptAngularJSPromise
一.Promise
Promise是一个接口,它用来处理的对象具有这样的特点:在未来某一时刻(主要是异步调用)会从服务端返回或者被填充属性。其核心是,promise是一个带有then()函数的对象。
为了展示它的优点,下面来看一个例子,其中需要获取用户当前的配置文件:
var cu
- c++ 用数组实现栈类
CrazyMizzz
数据结构C++
#include<iostream>
#include<cassert>
using namespace std;
template<class T, int SIZE = 50>
class Stack{
private:
T list[SIZE];//数组存放栈的元素
int top;//栈顶位置
public:
Stack(
- java和c语言的雷同
麦田的设计者
java递归scaner
软件启动时的初始化代码,加载用户信息2015年5月27号
从头学java二
1、语言的三种基本结构:顺序、选择、循环。废话不多说,需要指出一下几点:
a、return语句的功能除了作为函数返回值以外,还起到结束本函数的功能,return后的语句
不会再继续执行。
b、for循环相比于whi
- LINUX环境并发服务器的三种实现模型
被触发
linux
服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。
1 循环服务器与并发服务器模型
在网络程序里面,一般来说都是许多客户对应一个服务器,为了处理客户的请求,对服务端的程序就提出了特殊的要求。
目前最常用的服务器模型有:
·循环服务器:服务器在同一时刻只能响应一个客户端的请求
·并发服务器:服
- Oracle数据库查询指令
肆无忌惮_
oracle数据库
20140920
单表查询
-- 查询************************************************************************************************************
-- 使用scott用户登录
-- 查看emp表
desc emp
- ext右下角浮动窗口
知了ing
JavaScriptext
第一种
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/
- 浅谈REDIS数据库的键值设计
矮蛋蛋
redis
http://www.cnblogs.com/aidandan/
原文地址:http://www.hoterran.info/redis_kv_design
丰富的数据结构使得redis的设计非常的有趣。不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与。redis的DBA需要熟悉数据结构,并能了解使用场景。
- maven编译可执行jar包
alleni123
maven
http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven
<build>
<plugins>
<plugin>
<artifactId>maven-asse
- 人力资源在现代企业中的作用
百合不是茶
HR 企业管理
//人力资源在在企业中的作用人力资源为什么会存在,人力资源究竟是干什么的 人力资源管理是对管理模式一次大的创新,人力资源兴起的原因有以下点: 工业时代的国际化竞争,现代市场的风险管控等等。所以人力资源 在现代经济竞争中的优势明显的存在,人力资源在集团类公司中存在着 明显的优势(鸿海集团),有一次笔者亲自去体验过红海集团的招聘,只 知道人力资源是管理企业招聘的 当时我被招聘上了,当时给我们培训 的人
- Linux自启动设置详解
bijian1013
linux
linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。
阅读之前建议先看一下附图。
本文中假设inittab中设置的init tree为:
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
/etc
- Spring Aop Schema实现
bijian1013
javaspringAOP
本例使用的是Spring2.5
1.Aop配置文件spring-aop.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmln
- 【Gson七】Gson预定义类型适配器
bit1129
gson
Gson提供了丰富的预定义类型适配器,在对象和JSON串之间进行序列化和反序列化时,指定对象和字符串之间的转换方式,
DateTypeAdapter
public final class DateTypeAdapter extends TypeAdapter<Date> {
public static final TypeAdapterFacto
- 【Spark八十八】Spark Streaming累加器操作(updateStateByKey)
bit1129
update
在实时计算的实际应用中,有时除了需要关心一个时间间隔内的数据,有时还可能会对整个实时计算的所有时间间隔内产生的相关数据进行统计。
比如: 对Nginx的access.log实时监控请求404时,有时除了需要统计某个时间间隔内出现的次数,有时还需要统计一整天出现了多少次404,也就是说404监控横跨多个时间间隔。
Spark Streaming的解决方案是累加器,工作原理是,定义
- linux系统下通过shell脚本快速找到哪个进程在写文件
ronin47
一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到
这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。
linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么透过vfs.write我们就可以知道谁在不停的写入特定的设备上的inode。
幸运的是systemtap的安装包里带了inodewatch.stp,位
- java-两种方法求第一个最长的可重复子串
bylijinnan
java算法
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class MaxPrefix {
public static void main(String[] args) {
String str="abbdabcdabcx";
- Netty源码学习-ServerBootstrap启动及事件处理过程
bylijinnan
javanetty
Netty是采用了Reactor模式的多线程版本,建议先看下面这篇文章了解一下Reactor模式:
http://bylijinnan.iteye.com/blog/1992325
Netty的启动及事件处理的流程,基本上是按照上面这篇文章来走的
文章里面提到的操作,每一步都能在Netty里面找到对应的代码
其中Reactor里面的Acceptor就对应Netty的ServerBo
- servelt filter listener 的生命周期
cngolon
filterlistenerservelt生命周期
1. servlet 当第一次请求一个servlet资源时,servlet容器创建这个servlet实例,并调用他的 init(ServletConfig config)做一些初始化的工作,然后调用它的service方法处理请求。当第二次请求这个servlet资源时,servlet容器就不在创建实例,而是直接调用它的service方法处理请求,也就是说
- jmpopups获取input元素值
ctrain
JavaScript
jmpopups 获取弹出层form表单
首先,我有一个div,里面包含了一个表单,默认是隐藏的,使用jmpopups时,会弹出这个隐藏的div,其实jmpopups是将我们的代码生成一份拷贝。
当我直接获取这个form表单中的文本框时,使用方法:$('#form input[name=test1]').val();这样是获取不到的。
我们必须到jmpopups生成的代码中去查找这个值,$(
- vi查找替换命令详解
daizj
linux正则表达式替换查找vim
一、查找
查找命令
/pattern<Enter> :向下查找pattern匹配字符串
?pattern<Enter>:向上查找pattern匹配字符串
使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找
字符串匹配
pattern是需要匹配的字符串,例如:
1: /abc<En
- 对网站中的js,css文件进行打包
dcj3sjt126com
PHP打包
一,为什么要用smarty进行打包
apache中也有给js,css这样的静态文件进行打包压缩的模块,但是本文所说的不是以这种方式进行的打包,而是和smarty结合的方式来把网站中的js,css文件进行打包。
为什么要进行打包呢,主要目的是为了合理的管理自己的代码 。现在有好多网站,你查看一下网站的源码的话,你会发现网站的头部有大量的JS文件和CSS文件,网站的尾部也有可能有大量的J
- php Yii: 出现undefined offset 或者 undefined index解决方案
dcj3sjt126com
undefined
在开发Yii 时,在程序中定义了如下方式:
if($this->menuoption[2] === 'test'),那么在运行程序时会报:undefined offset:2,这样的错误主要是由于php.ini 里的错误等级太高了,在windows下错误等级
- linux 文件格式(1) sed工具
eksliang
linuxlinux sed工具sed工具linux sed详解
转载请出自出处:
http://eksliang.iteye.com/blog/2106082
简介
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾
- Android应用程序获取系统权限
gqdy365
android
引用
如何使Android应用程序获取系统权限
第一个方法简单点,不过需要在Android系统源码的环境下用make来编译:
1. 在应用程序的AndroidManifest.xml中的manifest节点
- HoverTree开发日志之验证码
hvt
.netC#asp.nethovertreewebform
HoverTree是一个ASP.NET的开源CMS,目前包含文章系统,图库和留言板功能。代码完全开放,文章内容页生成了静态的HTM页面,留言板提供留言审核功能,文章可以发布HTML源代码,图片上传同时生成高品质缩略图。推出之后得到许多网友的支持,再此表示感谢!留言板不断收到许多有益留言,但同时也有不少广告,因此决定在提交留言页面增加验证码功能。ASP.NET验证码在网上找,如果不是很多,就是特别多
- JSON API:用 JSON 构建 API 的标准指南中文版
justjavac
json
译文地址:https://github.com/justjavac/json-api-zh_CN
如果你和你的团队曾经争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 anti-bikeshedding 武器。
通过遵循共同的约定,可以提高开发效率,利用更普遍的工具,可以是你更加专注于开发重点:你的程序。
基于 JSON API 的客户端还能够充分利用缓存,
- 数据结构随记_2
lx.asymmetric
数据结构笔记
第三章 栈与队列
一.简答题
1. 在一个循环队列中,队首指针指向队首元素的 前一个 位置。
2.在具有n个单元的循环队列中,队满时共有 n-1 个元素。
3. 向栈中压入元素的操作是先 移动栈顶指针&n
- Linux下的监控工具dstat
网络接口
linux
1) 工具说明dstat是一个用来替换 vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具. 与sysstat相比, dstat拥有一个彩色的界面, 在手动观察性能状况时, 数据比较显眼容易观察; 而且dstat支持即时刷新, 譬如输入dstat 3, 即每三秒收集一次, 但最新的数据都会每秒刷新显示. 和sysstat相同的是,
- C 语言初级入门--二维数组和指针
1140566087
二维数组c/c++指针
/*
二维数组的定义和二维数组元素的引用
二维数组的定义:
当数组中的每个元素带有两个下标时,称这样的数组为二维数组;
(逻辑上把数组看成一个具有行和列的表格或一个矩阵);
语法:
类型名 数组名[常量表达式1][常量表达式2]
二维数组的引用:
引用二维数组元素时必须带有两个下标,引用形式如下:
例如:
int a[3][4]; 引用:
- 10点睛Spring4.1-Application Event
wiselyman
application
10.1 Application Event
Spring使用Application Event给bean之间的消息通讯提供了手段
应按照如下部分实现bean之间的消息通讯
继承ApplicationEvent类实现自己的事件
实现继承ApplicationListener接口实现监听事件
使用ApplicationContext发布消息