ymodem源码

基于类串口通信的文件传输协议,ymodem应用非常广泛,比如在MCU IAP中,常用的就是这种协议。ymodem是xmodem的改进版协议,具有传输快速稳定的优点。它可以一次传输1024字节的信息块,同时还支持传输多个文件。

本文ymodem源码基于C语言,采用回调机制,设计为独立的C库,包含了发送端和接收端的实现。

阅读全文 »

 

工作总结

jsoncpp是一个优秀的开源C++ json库,被广泛应用。在寻找C/C++ JSON库时,没有选择CJSON,而是选择了jsoncpp,主要考虑我应用程序是C++编写,如果使用CJSON的话,可能需要重新封装一层。

就我的应用而言,jsoncpp和CJSON都有一个共同问题:官方代码不支持指定小数位数。jsoncpp还有另一个问题:它默认按字母排序输出json。

阅读全文 »

 

mqtt 客户端 arm linux

上一篇描述了paho.mqtt.embedded-c移植到嵌入式linux平台的过程。本文描述移植paho.mqtt.c到嵌入式linux平台的过程。

与paho.mqtt.embedded-c一样,paho.mqtt.c是Eclipse paho项目MQTT Client开源库,为C版本。与前者相比,paho.mqtt.c支持全部特性,包括MQTT 5.0、WebSocket等。paho.mqtt.embedded-c更适用于使用MCU的嵌入式产品。

阅读全文 »

 

mqtt 客户端 arm linux

上一篇描述了移植了MQTT服务程序mosquitto到ARM linux的过程。本篇主要说明移植MQTT客户端程序paho.mqtt.embedded-c到ARM linux的过程。

eclipse paho是eclipse技术项目组针物联网应用开发的一个MQTT客户端开源项目,它包含多个语言版本,如java、C、C++、.Net、JavaScript等,paho.mqtt.embedded-c是针嵌入式产品特点而提供的开源库。

阅读全文 »

 

移植mosquitto到嵌入式linux平台

从上年接触MQTT开始,就有看到mosquitto,但未仔细了解过,初步认为是运行在服务器上的MQTT代理服务软件。这两天突然有个想法,想在ARM板上运行MQTT服务程序,用于各模块间的消息通信。

根据资料,发现mosquitto居然是个轻量级的MQTT服务程序,由MQTT协议创始人之一的Andy Stanford-Clark开发。许多人把它移植到了树莓派、ARM板上。

阅读全文 »

 


调试嵌入式linux应用程序时,出现下述错误:

terminate called after throwing an instance of ‘std::length_error’
what():  basic_string::_S_create

采用在gdb中运行,错误如下: 阅读全文 »

 


使用4.9.2版本的交叉编译器编译新写的应用程序时,出现了很多之前没遇到过的编译错误,比如今晚出现的编译错误:error: ‘__locale_t’ has not been declared。这个错误主要是头文件“<xlocale.h>”包含的问题。

这个错误源于自己编写的一个头文件中包含了<string>头文件引起的。编译错误提示内容具体如下:

阅读全文 »

 


SQLite是一款针对嵌入式产品应用的轻量型开源数据库,它占用资源非常的低。在嵌入式应用中,该数据库只需要几百K的内存就够了,而且性能非常不错。除此外,它也支持Windows/Linux/Unix等主流的操作系统。

实际上,早就对SQLite垂暮已久了,奈何一直用不上。最近项目里,打算对小范围的数据(如黑名单数据)上SQLite进行管理。

阅读全文 »

 


共享内存是linux进程间通信的一种方式,实现多进程共享变量。应用共享内存时,主要涉及shmget、shmat、shmdt、shmctl四个函数。

此外,可通过ipcs -m来查看linux共享内存使用情况。

下面展示一个本人编写的一应用实例。

阅读全文 »

 


前段时间,由于项目需要,产品中需要多增加一路CAN总线接口。CAN总线方案是ATMEL ARM9 + MCP2515。

此前已经有两路CAN总线接口了。以我对linux MCP2515驱动的熟悉,增加一路CAN总线接口的驱动不是难事。另人意外的是,在应用层的使用上,居然碰到了点意外。主要是关于bit-timing not yet defined错误。记录如下。

阅读全文 »

© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha

无觅相关文章插件,快速提升流量