- 博客(158)
- 资源 (2)
- 收藏
- 关注
原创 记录linux环境下搭建本地MQTT服务器实现mqtt的ssl加密通讯
2、使用mqtts/tls加密通信时,server地址需加"ssl://", 例如"ssl://127.0.0.1:8883";使用github中的一个脚本,可以让hostname为localhost、本机ip或127.0.0.1,脚本从。修改mosiquitto.conf,添加证书的路径,加密端口8883(配置端口监听端口默认是1883)4、需要移植openssl库,mqtt源码编译需要链接到openssl中的include和lib。该脚本创建CA文件,生成服务器证书,并使用CA来签名证书。
2024-09-24 18:55:02 1274
原创 STM32F103 ADC采样不准解决方法
问题:使用ADC采样换算的电压与实际测量的电压值有较大偏差。分析:使用STM32CubeMX生成的工程,ADC配置没有对做ADC校准,导致采样值与实际值有较大误差;在HAL_ADC_Start接口之前增加ADC校准接口HAL_ADCEx_Calibration_Start,另外采样周期设长ADC_SAMPLETIME_239CYCLES_5;...
2021-09-13 14:32:10 7226 2
转载 如何区分1位和4位数码管引脚图
在做单片机实验时,经常要用到数码管,包括1位数码管和4位数码管。数码管根据公共引脚性质的不同,又分为共阴极和共阳极数码管。只有了解了数码管的结构和内部接线图,看懂数码管的引脚图,才能正确的连接线路,得出正确的实验结果。那么1位和4位数码管引脚图如何区别呢? 1位数码管 先来看一下1位数码管的原型图。它是用7个LED条排列成一个8字,外加1个LED作为小数点。从外面...
2019-04-04 10:55:13 18789
转载 中国部署LoRaWAN最佳频段
中国部署LoRaWAN最佳频段LoRaWAN以其明显的优势:大容量、全球统一的标准、免费频段、低成本和灵活性,和WiFi一样,成为“私有物联网”的首要选择(NB-IoT,和GPRS一样...
2019-03-13 09:59:47 6061 1
原创 NFS作为根文件系统启动的几个关键点
第一 在uboot中修改bootargs的内容 1、bootargs的参数是传入内核的,例如:bootargs=noinitrd console=ttyS0,115200 init=/linuxrc mem=64M root=/dev/nfs nfsroot=192.168.0.107:/home/yangzheng/nfs/rootfs ip=192.168.0.103:192.168.0.10
2017-10-22 10:41:19 879 1
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2017-10-22 10:35:34 346
原创 linux 下websocket server demo例程
websocket的协议,原理参考文档:http://www.2cto.com/kf/201210/161006.html。主要步骤:1、创建socket套接字进行监听客户端; 2、握手,当与客户端建立tcp连接后,客户端会发送websocket请求,此时,服务器端需要提取客户端在websocket请求中包含一个握手的唯一Key,服务端在拿到这个Key后,需要加入一个GUID,然
2017-08-22 17:28:50 8150 1
原创 解决“vim中文显示乱码”的问题
编辑~/.vimrc文件,加上如下几行: set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 set termencoding=utf-8 set encoding=utf-8
2017-03-31 16:04:06 945
原创 ubuntu下ls目录文件不显示颜色解决方法
sudo echo 'alias ls="ls --color=auto" ' >> /etc/bash.bashrc
2017-03-29 12:02:22 7111 1
原创 解决ubuntu 启动ssh服务
现象:esp8266@esp8266-VirtualBox:~$ sudo service ssh restartssh: unrecognized service解决方法:step1:sudo apt-get updatestep2:sudo apt-get install openssh-serverstep3:sudo service ssh
2017-03-28 11:16:48 8884
原创 Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
在移植Linux系统到arm上时遇到“Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004”的问题,这个问题网上有各种解决办法,但是,都不能够解决我的问题。我的解决办法是:把根目录里面的lib全部删除,重新再重编译链下面拷贝相应库文件。解决过程:1、删除rootfs下的lib;2、
2017-03-23 14:18:53 11664 1
转载 IT职场人生系列
专家与杂家专家与杂家之争由来已久。挺专家者说:只有专一,才能学透学精;那些泛泛之辈,只能学到些皮毛,终究不能有所成就。挺杂家者说:只有广泛,才能目光开阔;某些人天天钻牛角尖,最后学成榆木疙瘩。招聘的时候也是。有人号称精通七八种语言,参与过76个项目(在一个真实简历中看到的,不过不是来我们这应聘的;按当时的速度估计,他现在应该写参与150~200多个项目左右了
2016-12-25 15:54:00 581
原创 如何在uboot中添加驱动程序
Author:杨正date:2016.9.21目的在u-boot中添加驱动程序。 详细举例介绍在uboot中操作寄存器,实现对gpio及外围设备的控制有两种方法,一种是直接在arch/arm/lib/board.c中添加对寄存器的操作代码,如:#define muxctrl_reg5 0x200f0014#define GPIO6_DIR 0x201a0400
2016-10-14 17:36:57 9720
原创 hi3516d打开ttyAMA2 ttyAMA3的方法
修改/arch/arm/match-hi3516a/core.c,添加如下代码:131 HIL_AMBA_DEVICE(uart0, "uart:0", UART0, NULL);132 HIL_AMBA_DEVICE(uart1, "uart:1", UART1, NULL);133 HIL_AMBA_DEVICE(uart2, "uart:2", UART2,
2016-10-14 16:32:22 4827
转载 函数参数的传递问题(指针的指针)
程序1:void myMalloc(char *s) //我想在函数中分配内存,再返回{ s=(char *) malloc(100);}void main(){ char *p=NULL; myMalloc(p); //这里的p实际还是NULL,p的值没有改变,为什么? if(p) free(p);}
2016-09-09 14:57:26 1456
转载 无线路由单天线与多天线的区别
• 对于最高支持11g协议的老式无线路由器,一根天线最高支持54Mbps; • 对于最高支持11n协议的半老不新无线路由器,一根天线最高支持150Mbps; • 对于最高支持11ac协议的新式无线路由器,一根天线最高支持433Mbps;如果听到一个路由器“号称”能达到多高的速率,就可以很快的知道它大致有几根天线。目前市场上的无线路由器主要有以下几种:• “号称”54Mbps、15
2016-07-21 16:10:07 11325 2
原创 在linux中用C语言实现ping命令
运用C语言编写模拟常用网络命令ping命令实现一个基于linux原始套接字和ICMP协议的ping程序。该程序能用于检测主机或路由器工作是否正常。程序中主要的函数void alarm_handler(int); /*SIGALRM处理程序*/void int_handler(int); /*SIGINT处理程序*/void set_sighandler(); /*设
2016-01-27 13:57:17 10205 8
原创 在ARM Linux下使用GPIO模拟SPI时序详解
Author:杨正 Data:2016.1.1 Mail:yz2012ww@gmail.com一、 概述SPI是英文SerialPeripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI是一种高速、全双工、同步通信总线,标准的SPI有4个引脚,常用于单片机和EEPROM、FLASH、实时时钟、数字信号处理等器件的通信。SPI通信原理要比I2
2016-01-06 18:44:08 19232 1
转载 fork产生子进程利用pipe管道通信
转载链接:http://hi.baidu.com/hj11yc/item/9a2ea30cca773077bfe97efc注:加了一点内容进程间通信 fork pipe pie_t 等用法(管道机制 通信)每个进程各自有不同的用户地址空间,任 何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲 区,进程1把数据从用户空间拷到
2015-12-16 10:29:20 2493
转载 linux中fork()函数详解
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来
2015-12-16 09:32:18 1061
翻译 xxx.tar.xz文件如何解压
XZ压缩最新压缩率之王xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具。之前xz使用一直很少,所以几乎没有什么提起。我是在下载phpmyadmin的时候看到这种压缩格式的,phpmyadmin压缩包xz格式的居然比7z还要小,这引起我的兴趣。最新一段时间会经常听到xz被采用的声音,像是最新的archlinux某些东西就使用xz压
2015-11-13 10:56:45 1788
转载 STRTOK函数和STRTOK_R函数
注:本文转载自博客园,感谢作者整理!1.一个应用实例网络上一个比较经典的例子是将字符串切分,存入结构体中。如,现有结构体typedef struct person{ char name[25]; char sex[10]; char age[4]; }Person;需从字符串 char buffer[INFO_MAX_SZ]="Fred ma
2015-10-28 09:59:58 566
原创 在Linux下调试信息输出自定义颜色字体
Date:2015.5.15 Author:杨正 QQ:1209758756yz2012ww@gmail.com 在Linux环境下进行软件开发时,调试是经常做的事情,为了让调试信息更加清晰方便,这里讲解如何输出带有自定义的颜色字体,比如可以自定义输出颜色为红,绿,蓝等,与其他打印信息区分开来。 首先讲解在shell脚本中的应用:在she
2015-05-18 13:58:04 2395
原创 nRF51822使用Timer制作4路PWM波详解
Date:2015.5.8 Author:杨正 QQ:1209758756 一、 pwm简介PWM英文名叫Pulse Width Modulation,中文名叫脉宽调制。那它到底是什么呢?其是它是由定时器产生的,比普通的定时器多了一个比较寄存器。PWM里面有一个词叫占空比,即一个周期内,高电平持续时间与周期的比值。如下图:占空比(dutycycl
2015-05-08 17:03:09 6715
原创 如何向busybox添加自己的命令
在做嵌入式开的时候,busybox无疑是非常好用的命令集,所以很多时候都喜欢把busybox移植到我们的系统里面,移植过程网上也有很多相关的文档,今天这篇文档主要介绍如何在busybox中添加我们自己的命令,过程如下:添加一个很简单的命令——hello_busybox,输出“Hello Husybox!”。busybox解压出来有很多目录,每个目录几乎是一类命令,比如网络,shell等等。我就
2015-04-14 19:20:56 4594
原创 蓝牙设备端只能与指定APP连接
设备端与特定APP相连,即设备只能与自己研发的APP相连,设备与其它被人所开发的APP不能相连。那么,这样的功能有什么意义,它又是如何实现的呢? 原理:在应用层做一个连接密码,这个密码可以是数字或者是字母或者是两者结合,比如:1234等。在蓝牙连接上时开启一个定时器,如果在定时器超时之前,收到APP发来约定好的连接密码,那么终止定时器,继续保持连接状态,如果定时器超时时还没有收到APP发来
2015-03-02 20:17:02 11769 2
转载 uboot移植之命令烧写uboot,zImage.img,root .
/**************uboot下用命令下载uboot,内核和文件系统********************/ /* 先将内核zImage用mkimage转换成uImage(叫zIMage.img) mkimage 工具是uboot提供,在uboot源码的tools/ 在内核源码的arch/arm/boot/下执行如下命令 */ mkimage -n 'tekkaman' -A
2014-11-20 17:03:19 3298
转载 Linux内核zImage\Image\uImage之区别及uImage的制作
一、Image、zImage和uImage的区别内核编译(make)之后会生成两个文件,一个是Image,一个是zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M。uImage是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的“头”,说明这个内核的版本、加载位置、生成时间、大小等信息;其0
2014-11-20 11:05:55 2221
转载 uboot bootargs bootcmd bootm
u-boot的环境参数中有两个和内核启动相关的,它们是bootcmd和bootargs1.u-boot中和环境参数有关的命令 printenv:打印当前环境参数 setenv param_name "value":设置环境参数 saveenv:保存环境参数到FLASH2.bootcmd:这个参数包含了一些命令,
2014-11-18 09:35:03 1110
原创 在uboot里面添加环境变量使用run来执行
在uboot里面添加环境变量使用run来执行Author:杨正 Date:2014.11.11 Email:yz2012ww@gmail.com QQ:1209758756 在移植uboot的时候,可以在uboot里面添加定义一些自己的环境变量,这些环境变量可以大大提高以后的工作效率,比如我在uboot里面添加如下环境变量:bbl=sf probe 0;
2014-11-12 08:42:14 5693
原创 Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
$# 是传给脚本的参数个数$0 是脚本本身的名字$1 是传递给该shell脚本的第一个参数$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个$$ 是脚本运行的当前进程ID号$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误
2014-11-10 09:07:38 1001
原创 UIP协议栈移植到u-boot详解
UIP协议栈移植到u-boot详解 Author: 杨正 date:2014.11.5 Email:y2012ww@gmail.com QQ: 12097587561、uip简介 Uip网络是一个简单好用的嵌入式协议栈,易于移植且消耗的内存空间较少,应用于很多嵌入式产品。uIP 协议栈去掉了完整的TCP/IP系统中不常用的功能,简化了通讯流程,只保留
2014-11-06 16:04:25 8377 2
转载 Linux下patch的制作和应用
转自:http://blog.chinaunix.net/u3/100239/showart_1984963.html首先介绍一下diff和patch。在这里不会把man在线文档上所有的选项都介绍一下,那样也没有必要。在99%的时间里,我们只会用到几个选项。所以必须学会这几个选项。1、diff -------------------- NAME
2014-11-03 15:29:23 668
原创 致逝去的大学时光
不知不觉已经走出学校的大门也有两个多月了,时间过得可真快,似乎昨天还在学校和那几个家伙一起打球,而如今已经在公司上了两个月多的班。这两个月每一天都有很多工作要做,好不容易今天抽出一点时间来写这篇日志,文采不好,让读者见笑了。 记得在高中的时候老师常常跟我们说你们现在要好好努力,将来考上大学就可以好好玩了。当时半信半疑的开始努力了,虽然高考成绩不理想,但是还是来到了大武汉这个城市
2014-09-22 19:12:37 933
转载 很全面的.vimrc配置
"=========================================================================" DesCRiption: 适合自己使用的vimrc文件,for Linux/Windows, GUI/Console " " Last Change: 2010年08月02日 15时13分 " " Version: 1.80
2014-09-12 15:01:51 3174
原创 解决linux重启之后eth0变成eth1,eth2……的问题
解决办法:将/etc/udev/rules.d/70-persistent-net.rules文件删除,重启后,会自动生成70-persistent-net.rules文件,这个时候ifconfig -
2014-09-12 14:45:28 4125 1
转载 I2C总线协议解析
1、基本概念 主机 初始化发送,产生时钟信号和终止发送的器件 从机 被主机寻址的器件 发送器 发送数据到总线的器件 接收器 从总线接收数据的器件 多主机 同时有多于一个主机尝试控制总线 但不破坏报文 仲裁
2014-09-07 11:05:27 1173
转载 I2C总线协议学习笔记
一. I2C协议技术性能: 工作速率有100K和400K两种; 支持多机通讯; 支持多主控模块,但同一时刻只允许有一个主控; 由数据线SDA和时钟SCL构成的串行总线; 每个电路和模块都有唯一的地址; 每个器件可以使用独立电源二. I2C协议基本工作原理: 以启动信号ST
2014-09-07 09:29:30 851
转载 linux下如何解压RAR文件
在WINDOWS平台下压缩成的RAR文件,如何在LINUX平台下进行解压,linux平台默认是不支持RAR文件的解压,需要安装linux版本的RAR压缩软件,下载地址为:http://www.rarlab.com/download.htm 目前最新版本是 4.1.1 ,下载之后进行解压之后,进入rar目录,运行make指令进行安装,安装过程如下:[root@hbserver rar]# mak
2014-08-28 17:16:33 2692
转载 颜色空间之YCbCr
YCbCr是DVD、摄像机、数字电视等消费类视频产品中,常用的色彩编码方案。YCbCr不是一种绝对色彩空间,是YUV压缩和偏移的版本。YCbCr其中Y是指亮度分量,Cb指蓝色色度分量,而Cr指红色色度分量。人的肉眼对视频的Y分量更敏感,因此在通过对色度分量进行子采样来减少色度分量后,肉眼将察觉不到的图像质量的变化。 主要的子采样格式有YCbCr 4:2:0、YCbCr 4:2:2 和
2014-08-23 17:28:13 2769 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人