杂项
嵌入式
Stone_lu。
这个作者很懒,什么都没留下…
展开
-
使用libcurl以Post方式向HTTP服务器提交数据
一、上传数据如题:char name[] = "jgood";char address[] = "Hangzhou";上传这两个数据到http://localhost:2210/Default.aspx 该怎么办?直接上代码:int main(){ CURLcode code; code = curl_global_init(CUR原创 2017-04-12 10:56:47 · 4554 阅读 · 0 评论 -
libjpeg移植到arm
第一步:下载libjpeg地址:http://www.ijg.org/第二步:解压第三步:进入目录,生成makefile执行:./configure --prefix=/usr/local/lib CC=arm-Linux-gcc --host=arm-linux --enable-shared --enable-static--prefix=/usr/local/原创 2017-04-12 10:58:04 · 2021 阅读 · 0 评论 -
使用libjpeg进行JPEG图像解码
如题:如何对test.jpg进行解码?注:这里使用libjpeg库进行图像解码。也可以不使用libjpeg库,但是比较繁琐。直接上代码:#include "jpeglib.h"#include #include #include int main(){FILE *input_file;input_file=fopen(原创 2017-04-12 10:58:43 · 8302 阅读 · 0 评论 -
linux下iconv编码转换的用法
一共需要三步:1. iconv_t iconv_open(const char *tocode, const char *fromcode); //用这个函数获得句柄(iconv类型的返回值) 参数:tocode是转换后的编码类型,fromcode是转换前的编码类型编码类型有很多根据自己实际需要填参数,具体参考http://baike.baidu.com/link?url原创 2017-04-12 10:59:21 · 802 阅读 · 0 评论 -
NAT协议
静态NAT(Static NAT)静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。动态地址NAT(Pooled NAT)动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所原创 2017-04-12 11:04:21 · 4599 阅读 · 0 评论 -
动态选路协议
动态选路,就是动态更新路由表。每个路由器都有个路由守护程序,它运行选路协议,与相邻的路由器进行通信,根据从相邻路由器接收到的信息更新内核中的路由表。Internet是以一组自治系统的方式组织的,每个自治系统通常由单个管理。自治系统可以选择系统中各个路由器间的选路协议,这种协议我们称之为域内选路协议(IGP)。常用的IGP是选路信息协议RIP。最新的一种意在取代RIP的IGP原创 2017-04-12 11:08:13 · 521 阅读 · 0 评论 -
DALI调光的计算方式
在DALI的调光信息中,用8bit来表示调光的亮度水平。最亮和最暗之间包含256级灯光亮度。按照对数曲线分布,在高亮度下具有高增量值,低亮度下具有低增量值,这样整个调光曲线在人眼里看起来像线性变化。DALI标准灯光亮度水平为0.1%~100%,00000000表示灯没有点亮,00000001表示0.1%的亮度值,11111110表示100%的亮度值,11111111表示停止调光。原创 2017-04-12 11:22:17 · 6000 阅读 · 0 评论 -
ARM交叉编译工具arm-linux-gcc安装
以arm-Linux-gcc-4.5.1-v6-vfp为例: 1.首先交叉编译器一般是32位的。 如果你使用的是64位系统,必须要安装32位库来支持运行。 如果你使用的是32位的操作系统可以跳过这步。 sudo apt-get install lib32ncurses5 lib32z1 2.下载安装包(arm-linux-gcc-4.5.1-v...原创 2017-04-12 11:23:31 · 579 阅读 · 0 评论 -
vmware安装Ubuntu
第一步:安装vmware和下载ubuntu镜像第二步:创建虚拟机 1.文件 --> 新建虚拟机 2.自定义(高级) --> 下一步 3.硬件兼容性:根据情况选择合适的版本 --> 下一步 4.安装来源:稍后安装操作系统 --> 下一步 (这一步如果选择:安装程序光盘映像文件。vmware将对ubuntu进行精简安装) 5.原创 2017-04-12 11:24:12 · 668 阅读 · 0 评论 -
vim插件和配置
第一步:安装vim sudo apt-get install vim第二步:简单配置vim sudo vim /etc/vim/vimrc 在最后添加参数,如下: set nu " 显示行号 set autoindent " 自动缩进 set cindent原创 2017-04-12 11:24:56 · 501 阅读 · 0 评论 -
SecureCRT远程连接Ubuntu,SecureCRT开发环境配置
第一步:SecureCRT连接Ubuntu 1.Ubuntu安装ssh 打开Ubuntu终端 --> sudo apt-get install openssh-server(安装) --> sudo service ssh start(重启) 2.允许root用户登录 sudo passwd root --> 输入新密码原创 2017-04-12 11:25:55 · 1806 阅读 · 0 评论 -
私有通讯协议
数据包结构数据包头部:数据包头部是必须的,在粘包的时候可以作为的分隔符进行分包。数据包长度:数据包长度最好加上,可以判断数据包是否完整。版本号: 版本号有时也很重要,例如LORA网络中,不同项目之间的数据包可以通过版本号进行甄别。目的地址:目的地址根据硬件特性决定加不加。例如CAN总线通讯过程中已经有硬件地址,就可以不加。原创 2017-04-19 13:36:51 · 3255 阅读 · 0 评论 -
IAR集成开发环境的使用
1.创建工程 Project -> Create Ndew Project 选择Empty project 输入工程名(testp)2.创建文件 File -> New -> File 保存,并填写文件名(test.c)3.添加文件 右击工程 -> Add -> Add Files 选择文件(test.原创 2017-06-10 15:48:44 · 6106 阅读 · 0 评论 -
CC2530通用I/O
PxSEL寄存器用来设置端口为通用IO还是外设IO,0为通用IO、1为外设IO,默认为通用IO。PxDIR寄存器用来设置端口为输入还是输出,0为输入、1为输出,默认为输入。在输入模式下,PxINP寄存器用来设置端口为上拉/下拉或三态,0为上拉 /下拉、1为三态,默认为上拉/下拉。P2INP bit5-7表示端口组0-2上拉或下拉,0为上拉、1为下拉,默认为上拉。在输入模式下,可以用于产原创 2017-06-12 21:52:49 · 2014 阅读 · 0 评论 -
CC2530时钟
CC2530在正常运行的时候,需要一个高频时钟信号和一个低频时钟信号。 高频时钟信号,主要驱动CPU。 低频时钟信号,用于驱动看门狗、睡眠定时器等。高频时钟信号有两个来源,芯片内部的16MRC电路,外接的32M石英晶振。2个高频时钟源可以同时起振。在使用串口或无线通信的时候,必须要用32M。低频时钟信号有两个来源,芯片内部的32KRC电路,外接的原创 2017-06-13 11:50:41 · 3727 阅读 · 0 评论 -
CC2530串口
串口配置步骤: 1.选择备用位置。 2.将相应IO口配置为外设功能。 3.选择USART模式,UART或SPI。 4.使能UART接收器。 5.设置波特率,校验位,数据位,停止位 6.打开总中断 7.打开串口中断例:配置串口1,波特率115200、无检验、数据位原创 2017-06-13 16:21:02 · 756 阅读 · 0 评论 -
CC2530看门狗
看门狗配置步骤: 1.设置时间间隔 2.设置看门狗模式喂狗步骤: 1.向CLR中写入清除序列0x0A、0x05例:将看门狗配置为超时时间1s WDCTL = 0x00; //将超时时间设置为1s,在IDLE模式写CLR寄存器不会产生影响,因此直接赋值只会改变INT和MODE。 WDCTL |= 0x08; //将原创 2017-06-13 17:54:31 · 2166 阅读 · 0 评论 -
C++矩阵库 Eigen 快速入门
最近需要用 C++ 做一些数值计算,之前一直采用Matlab 混合编程的方式处理矩阵运算,非常麻烦,直到发现了 Eigen 库,简直相见恨晚,好用哭了。 Eigen 是一个基于C++模板的线性代数库,直接将库下载后放在项目目录下,然后包含头文件就能使用,非常方便。此外,Eigen的接口清晰,稳定高效。唯一的问题是之前一直用 Matlab,对 Eigen 的 API 接口不太熟悉,如果能有 Eige...转载 2018-06-07 20:05:18 · 1636 阅读 · 0 评论 -
iNand、eMMC、SD、MMC的关联
1.iNand/eMMC/SDCard/MMCCard的关联1、最早出现的是MMC卡,卡片式结构,按照MMC协议设计。(相较于NandFlash芯片来说,MMC卡有2个优势:第一是卡片化,便于拆装;第二是统一了协议接口,兼容性好。)2、后来出现SD卡,兼容MMC协议。SD卡较MMC有一些改进,譬如写保护、速率、容量等。3、SD卡遵守SD协议,有多个版本。多个版本之间向前兼容。4、iN...转载 2018-08-17 10:26:38 · 5774 阅读 · 0 评论 -
OneNand、Nand和Nor三种Flash的区别
NOR的特点是芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在Flash 闪存内运行,不必再把代码读到系统RAM中。 NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。 NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于Flash的管理和需要特殊的系统...原创 2018-08-17 16:00:15 · 5115 阅读 · 0 评论 -
使用TJpgDec进行JPEG图像解码
#include "tjpgd.h"#include <string.h> JDEC tjpeg_dev;unsigned char jpg_buffer[4096];unsigned char rgb_buffer[60000];uint16_t image_index;uint16_t image_size; unsigned int jpeg_in_...原创 2018-09-12 14:45:38 · 3580 阅读 · 1 评论 -
source insight使用
1.创建工程 Project->New Project,选择路径并输入工程名。点击OK2.添加文件 Close暂时先不添加3.添加文件类型 Options->Document Options,选择Document Type,并添加File filter(添加文件类型后缀) 4.重新添加文件 Project->Add and Remove Proje...原创 2018-09-25 10:12:47 · 367 阅读 · 0 评论 -
ST-Link刷成J-Link
1,SEGGER官方提供 将ST-Link固件升级到成J-link OB固件http://www.amobbs.com/thread-5649373-1-1.html ST官方发布了消息可以将其板载的ST-link固件升级为J-Link OB固件。 这个是转换升级的官方说明链接 特性: 1. 与Jlink-OB全兼容。 2. 多IDE支持。 3. ...原创 2018-10-11 10:10:17 · 7370 阅读 · 9 评论 -
Ubuntu搭建tftp服务器
1. 安装$ apt-get install tftp-hpa tftpd-hpa 2. 建立目录$ mkdir /tftpboot # 这是建立tftp传输目录。$ sudo chmod 0777 /tftpboot 3. 配置# vi /etc/default/tftpd-hpaTFTP_USERNAME="tftp"TFTP_DIRECTORY="/t...原创 2018-12-25 23:56:27 · 503 阅读 · 0 评论 -
Ubuntu搭建nfs服务器
1、安装nfs服务sudo apt install nfs-common2、修改配置文件sudo vim /etc/exports修改内容如下:/home/lsm/workspace/x210/rootfs/rootfs *(rw,sync,no_subtree_check,no_root_squash)3、重启nfs服务sudo /etc/init.d/nf...原创 2019-01-01 22:00:20 · 156 阅读 · 0 评论