自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 资源 (9)
  • 收藏
  • 关注

原创 linux4版本无法往前设置时间

linux4版本无法往前设置时间的修改。

2022-09-01 19:55:38 309 1

原创 window下简单的生产者和单一消费的程序

window下简单的生产者和单一消费的程序使用window下的事件和临界区实现,在Linux可以使用条件变量和互斥锁实现,简单的代码如下:#ifndef _MSGQUEUE_#define _MSGQUEUE_/////消息队列节点//#include <Windows.h>#define MY_X_LOCK(x) EnterCriticalSection(x)#define MY_X_UNLOCK(x) LeaveCriticalSection(x)#def

2020-12-27 20:17:23 176

原创 补充Live555推实时流

lvrs.h //接口头文件#ifndef _LVRS_H_#define _LVRS_H_#ifdef __cplusplus#define EXTERN extern "C"#define EXTERN_BEGIN extern "C" {#define EXTERN_END }#else#define EXTERN ...

2019-09-18 18:44:31 1616 1

原创 博客搬至博客园了

https://www.cnblogs.com/liqinghan/

2018-11-23 09:48:37 377

原创 虚拟鼠标设备驱动

虚拟鼠标设备驱动#include &lt;linux/device.h&gt; #include &lt;linux/module.h&gt;#include &lt;linux/input.h&gt;#include &lt;linux/err.h&gt;#include &lt;linux/cdev.h&gt;#include &lt;asm/uaccess.h&gt;#in...

2018-09-06 13:42:02 2127

原创 嵌入式Qt支持ttf字库,并显示中文

引言        最近在做QT项目发现中文没法显示,于是百度QT嵌入式显示中文,基本上提示的都是把ttf字库转换为QPF(QT专门支持二进制的),发现这个qpf本身制作就很麻烦,按照网上的做法实实在在来了一边,发现编译一个qvfb都好麻烦了,还有makeqpf程序。qvfb属于x86用于给QT提供程序提供fb环境的。makeqpf不能直接在系统上面跑,必须依赖于系统fb才能运行。发现编译qvfb...

2018-05-04 18:07:39 8606

原创 海思QT开发总结

1、QT移植 2、QT界面的透明度设置 发现设置空间透明度时候,QT显示的绿色的背景,没有透明!设置如下: 在程序起始的地方设置:hisi_init();QWSServer::setBackground(QColor(0,0,0,0));QWSServer::setCursorVisible(false);经过这样子设置,QT的透明度正常了!!3、对话框去掉最大化和最小化...

2018-03-01 21:00:00 2239 7

原创 QT移植到hi3536

QT版本:qt-embedded-linux-opensource-src-4.5.31、添加交叉编译(1)copy qt-embedded-linux-opensource-src-4.5.3/mkspecs/qws/linux-arm-g++ 到 qt-embedded-linux-opensource-src-4.5.3/mkspecs/qws/linux-hisiv400-g++

2018-01-15 20:20:47 1646

原创 C++的类大小

#pragma pack(push) #pragma pack(1)class task /*:public OSThread*/{//public: // void Entry();//private: // int a;// int b;};#pragma pack(pop)sizeof(task) =1 去掉一字节对齐,sizeof(task)=1 ,所以说即使是一个

2017-12-27 12:29:20 267

原创 FFmpeg 裁剪——音频解码

只留下某些音频的配置:./configure --enable-shared --disable-yasm --enable-memalign-hack --enable-gpl --enable-cross-compile --prefix=/home/liqinghan/workspace/ffmpeg-3.2.2/_install --arch=arm --target-os=linu...

2017-11-13 20:27:25 1763

原创 linux - windows远程鼠标

框图linux端;获取鼠标坐标,并通过socket传输给windowsmouse:linux下的鼠标设备,目录: /dev/input/mouseX , 每个mouseX对应有一个eventY,X和Y -> 0...n , X 和 Y并不一定对应。因为有些event是键盘的或者其他的输入设备。具体的设备对应关系应该由/proc/bus/input/devices文件

2017-10-15 21:31:09 598

翻译 5、 LwIP协议栈规范翻译——操作系统仿真层

5、操作系统仿真层      为了使lwIP可移植,操作系统特定的函数调用和数据结构不直接在协议的代码中使用。相反,当需要这样的函数调用和数据结构时,直接使用操作系统仿真层。 操作系统仿真层为操作系统服务提供统一的接口,如定时器,进程同步和消息传递机制。 原则上,当移植lwIP到其他操作系统时,只需要实现该操作系统的操作系统仿真层即可。操作系统仿真层提供TCP使用的定时器功

2017-07-24 22:43:24 429

翻译 4、 LwIP协议栈规范翻译——流程模型

4、流程模型       协议实现的流程模型描述了系统被划分为不同的流程的方式。用于实现通信协议的一个流程模型是让每个协议作为一个独立的进程运行。有了这个模型,严格的协议分层被强制执行,并且协议之间的通信点必须严格定义。虽然这种方法有它的优点,比如可以在运行时添加协议,理解代码和调试通常也比较容易,但也有一些缺点。正如前面所描述的,严格的分层并不是实现协议的最佳方式。此外,更重要的是,对于每一

2017-07-19 22:47:04 444

翻译 1、 LwIP协议栈规范翻译——简介

1、简介          在过去几年中,计算机和计算机支持设备接之间的互联到无线网络日趋增加。计算机已经越来越无缝的集成在了日常的设备且价格也在下降。同时,无线网络技术例如蓝牙[HNI+98]和IEEE802.11b WLAN [BIG+97]也在新起。这就可以运用到一些极具吸引力方案区域上例如健康管理,安防,运输,工业处理。小型的设备例如传感器可以连接到一个已经存在的网络基础设施上例如互联

2017-07-19 22:36:40 405

翻译 3、LwIP协议栈规范翻译——概述

3、概述       像许多其他TCP/IP实现一样,分层协议设计已经成为设计lwIP实现的指南。每个协议实现为自己的模块,其中几个功能充当每个协议的入口点。尽管协议层是单独实现的,一些层却不全是,正如前面所叙述的。这是为了提高处理速和内存使用率方面的性能而做的妥协。例如,当验证到来的TCP数据段的校验码和解复用一个数据段时,数据段源IP地址和目的IP地址必须被TCP模块所识别到。TCP模块不

2017-07-19 22:30:16 316

翻译 2、LwIP协议栈规范翻译——协议层

2、协议层          TCP/IP套件中的协议是以层次的方式设计的,其中每个协议层解决了通信问题的单独部分。这种分层可以用作设计协议实现的指南,因为每个协议可以与另一个分开实现。然而,以严格分层的方式实现协议可能导致协议层之间的通信降低总体性能的情况。为了克服这些问题,协议的某些内部方面可以被其他协议所了解。 必须注意,层次之间只共享重要的信息。大多数的TCP/IP协议的实现在应用层和

2017-07-19 22:28:13 383

翻译 【译】LwIP协议栈规范翻译——摘要目录

摘要LwIP是一种TCP/IP协议栈的实现。LwIP协议栈专注于减少内存的使用和代码的大小,使LwIP适用于嵌入式系统中在有限的资源下能够使用小型的客户机。为了减少处理和内存的需求,LwIP使用裁剪过的API,并不需要任何数据都拷贝。这个报告描述LwIP的设计与实现。算法和数据结构都用于协议的实现且描述了像内存和缓冲区管理系统的子系统。这个包括了LwIP参考API和使用LwIP的一些例子代

2017-07-19 22:23:33 427

转载 liunx系统负载量以及性能的分析

来自:http://heipark.iteye.com/blog/1340384一、什么是load average?linux系统中的Load对当前CPU工作量的度量 (WikiPedia: the system load is a measure of the amount of work that a computer system is doing)。也有简单的说是进程队列的长度。Load

2017-07-16 10:46:18 292

原创 海思编解码芯片添加64M nor flash

uboot和内核都必须修改。struct spi_info hisfc350_spi_info_table[] ;在结构体里面添加自己的flash节点,我这里用的是MX66LS51235E{ "MX66L(S512)35(E/F)", //chip name {0xC2,0x20, 0x1A}, ///chip id nor flash has itself ID 3

2017-07-08 12:37:30 2300

原创 记录一些常用的函数

1、使用整数来计算除法的精度避免有些不能使用浮点型的场合/**didiv : 被除数*div : 除数*accuracy:精确度,精确到小数点后面的位数*return:返回的是扩大10^accuracy后的商值。 */uint32_t accuracy_cal(uint32_t didiv,uint32_t div, uint32_t accuracy){ uint3

2017-07-08 12:32:22 333

原创 音频技术1

音频技术1原始的音频要通过网络传输到某个点播放,一般经过采集(声波信号到模拟信号),采样(AD过程)、编码、解码、播放(DA过程)的过程。本文章主要讲述的是讲述整个过程一般的描述,让读者对音频传输的过程有一定的了解。鉴于本人才疏学浅,文中有什么描述不妥当或者有误的地方还请大家指正,谢谢!音频的采集:一般常见的有麦克风、话筒等设备。采集设备一般都是能采集声波信号然后转化成模拟量。

2017-06-16 23:06:18 397

原创 linux驱动调试

linux驱动调试linux 目录 /proc 下面可以配置驱动的调试信息,比如给proc目录的自己定制的驱动的一文件设置一个变量,然后驱动程序跟了proc的参数值来配置调试级别、类似于内核调试的级别来配置自己驱动调试级别。可以在dev目录创建一个设备专门用来打印相应的驱动调试信息。

2017-06-12 21:58:27 386

原创 stm32f205开发记录

stm32f205开发记录发现发送键盘按键按下立即发送一个松手动作,无法释放按键。经过测量中间要有一定的延时、有的说在发送完毕回调做相应的处理。具体我没有找到发送完毕回调,我使用延时几个毫秒,具体几个毫秒需要测量,我延时2ms左右既可以发送释放按键动作。 stm32f205的串口,尽管使用了标志位判断,仍然无法快速发送,中间还是需要一定的延时操作,感觉stm32f205和stm32f1...

2017-06-12 21:50:41 3119

原创 container_of 例子说明

很早前之前看的linux内核,一直想把container_of记录一下,趁今天想起就记录一下:内核中的描述/** * container_of - cast a member of a structure out to the containing structure * @ptr: the pointer to the member. * @type: the typ

2017-06-02 23:02:56 415

原创 linux获取网络信息函数

获取IP地址 int sys_getIP(char *ip_addr) { char ip_sys[80] = {“ifconfig eth0 | grep inet | cut -d: -f2 | cut -d’ ’ -f1 > ipaddr.txt”}; FILE *ip_fp = NULL; int error_sys; if((e

2017-05-27 22:42:29 485

原创 hisi35xx串口驱动的完善

鉴于hisi的uart3还没有打通,ls /dev/ | grep ttyA* ,看到的只有ttyAMA0 和ttyAMA1,且使用应用程序打开ttyAMA1设备后,使用write函数,发送,示波器观察没有波形输出。猜想是GPIO复用管脚没打开于是编写了GPIO复用管脚驱动,加载驱动,ttyAMA1可以正常使用 。每次启动程序都要加载此驱动,比较麻烦,所以想要在内核添加,搜索UART,定位UA

2017-05-09 20:44:14 1554

原创 大屏拼接处理器

大屏拼接处理器概括            在大屏幕拼接系统中,我们很容易将焦点聚集在拼接单元上,而作为整个系统“神经中枢”的处理器往往被人忽视。对于大屏幕厂商来说,处理器是加强对大屏核心技术把控,打造差异化的关键。大屏处理器的优劣直接决定着整个大屏幕显示系统效果的好坏。那么,大屏处理器是什么?大屏幕处理器主要功能是将一个完整的图像信号划分成N块后分配给N个视频显示单元(如背投单元),完成用

2017-05-04 20:56:48 3194 1

原创 2011年戴尔笔记本维修总结

总结:1、戴尔笔记本的结构有点差,螺丝很多,相对于我用自己的acer 4755g来说,拆起来很费经。        2、戴尔笔记本内部构造也很复杂,特别是键盘的排线太短了,想再次安装回去需要好长的时间才能弄好。       3、经过检查,发现此笔记本硬盘坏掉,无法开机。        以下是图片!    奇葩的硬盘位置,要把整个结构拆开才能换硬盘,相比我的acer,只需要后

2017-04-29 13:32:07 862

转载 【转载】NAT穿透的详细讲解及分析

这篇文章看了很有收获,很多东西都和自己的猜想一样。于是转过来分享一下,感谢博主!摘自:http://bbs.pediy.com/thread-131961.htm一、什么是NAT?为什么要使用NAT?NAT是将私有地址转换为合法IP地址的技术,通俗的讲就是将内网与内网通信时怎么将内网私有IP地址转换为可在网络中传播的合法IP地址。NAT的出现完美地解决了lP地址不足的问题,而且还能

2017-04-24 10:46:55 4964

原创 stm32f407以太网及USB OTG快速开发

stm32f407以太网及USB OTG快速开发引言想要快速完成网络协议栈和USB OTG功能,使用ST自家的工具STM32CubMx再好不过的了。如果你还不会使用,别着急下面我会一步一步的用图片告诉你如何做。软件平台:windows、STM32CubMx、keil v5硬件平台:原子的stm32f407ZGT6开发板,STM32CubMx配置1、以太网管脚的映射配置

2017-03-18 19:09:05 27386 6

原创 STM32 内部flash的读写程序

/* Base address of the Flash sectors */#define ADDR_FLASH_SECTOR_0 ((uint32_t)0x08000000) /* Base @ of Sector 0, 16 Kbytes */#define ADDR_FLASH_SECTOR_1 ((uint32_t)0x08004000) /* Base @ of S

2017-03-07 13:04:39 1150

原创 socket通信的遇到的问题1

使用select对fd可读写,格式while(ctrl){////FD_ZERO(&readSocketSet);FD_SET(readSocketFd,&readSocketSet);ret = select(maxFd,&readSocketSet,NULLNULL)switch(ret){case 0: break;case -1: exit(-1);brea

2017-02-23 22:19:10 535

原创 AT24C128 EEPROM的读写

记录AT24C128 eeprom的多字节读写#define _EEPROM_DEBUG_LEVEL 0 #if _EEPROM_DEBUG_LEVEL == 1 #defineEEPROM_DEBUG(fmt,args...) do{ \ printf(fmt,##args);\ }while(0

2017-02-17 21:22:16 7117

原创 STM32连接射频si4438模块

SI4438射频模块参数:1、频率范围:425-525 MHz2、数字接收信号强度指示(RSSI)3、64字节收发数据寄存器(FIFO)4、跳频功能等!使用SI的WDS工具生成代码1、  选择仿真模式2、  芯片选择si4438 B1模式3、  Radio Configuration Application4、  Select Application

2017-02-14 22:44:55 6383

原创 基于live555实时流服务器解析

#define READ_FROM_FILES_SYNCHRONOUSLY 1READ_FROM_FILES_SYNCHRONOUSLY 1void ByteFrameLiveVideoSource:: doGetNextFrame(){ if(fLimitNumBytesToStream &amp;&amp; fNumBytesToStream == 0) { handleClo...

2017-02-07 21:31:19 2984

原创 使用STM32CubeMx创建U盘读写程序

平台windows 7CPU:STM32F205软件:keil 5下载STM32CubeMx:http://pan.baidu.com/s/1bpsvV6R安装好后,建立usbMassClass工程,注意选择芯片。选择自己要的功能如下图:外部是时钟的选择:FSUSB的选择debug口选择UASRT1选择USB IPco

2017-01-21 11:18:35 17038 11

原创 建立live555海思编码推流服务

因项目需要,这一周弄了一下live555。需求:海思编码——>RTSP server,使用VLC可以访问,类似于网络摄像机的需求。看了一下,live555的架构太复杂了,半桶水的C++水平还真的需要花点时间才可以明白。由于live555的例子server使用的是读取文件,打包成RTSP包然后发送。例子运行live555MediaServer,把对应的视频文件发到该服务的目录下面,在VLC使用rtsp

2017-01-13 20:56:19 12711 7

原创 记:STM32F205双USB开发做device

STM32F205双USB开发做device。 记得使用STM32CubeMx联合开发,会让你有意想不到效率!STM32F205有两个USB接口,一个是FSUSB,另外一个是HSUSB。 FSUSB——full speed USB ,HSUSB——high speed USB FSUSB最高支持全速的USB,HSUSB不仅支持全速的USB还支持高速的USB,当然HSUSB要支持高速的USB必须

2016-12-20 22:29:30 4854

原创 linux alarm 的使用

#include#include#include 第一种:void timer_handler(int m){ count++; printf("m: %d count:%d \n",m,count);} void set_timer() { struct itimerval itv; itv.it_value.tv_sec = 1; //

2016-07-13 21:57:21 893

原创 利用freetype显示unicode字符

使用freetype加载矢量字库,ttf字体文件,通过字符的unicode,load一个字符的点阵!汉字的unicode使用32bit既可表达,比如‘’我‘’的unicode是0x6211定义全局变量static FT_Library g_lib;static FT_Face g_face;初始化freetypeint init(){ int error; erro

2016-07-13 21:55:02 4207

OV7740Reg头文件

OV7740Reg头文件,用于配置ov7740摄像头。输出的是黑白图像。可根据个人修改。

2019-04-23

QT环境(3536)

QT环境(3536),启动fb0,设置ARG8888的模式。注意设置QT环境变量! 运行QTAPP即可!

2018-01-23

安卓BLE LED灯控制!给予TI BLE

基于TIBLE开发的小程序!

2016-06-03

onvif rtsp流对接

使用gsoap2.8.32生成的onvif架构!实现了rtsp对接。注意修改IP。

2016-05-19

USB 上位机控制LED灯

包含了上位机和下位机的源码,注意,你可能编译不成功,那你得找到 hid.lib kernel32.lib setupapi.lib user32.lib hidparse.lib 这几个文件

2013-01-29

JLINKV8重烧固件后解决不识别问题并能重烧固件

jlink重烧固件工具 jlink固件 解决清除固件后,电脑无法识别AT芯片或者识别成了GPS Camera Detect等问题 含有解决问题的说明 亲测能用

2013-01-25

windows下的QT和DDK环境的搭建

弄了一整个下午,本来想直接下载SDK直接安装,但SDK无法下载了。于是只能费力一个个安装了,终于弄好了。

2012-11-04

数据结构链表的操作STL

对于STL线性链表的函数操作很有帮助!这里的用了几个函数,都是经常用到的,敬请留意!

2010-07-28

1602A液晶和单片机构成的时钟

提高编程思维!自作一个时钟!很简单的原理!!不过不太准,要经过校准才能用!!!还可以加很多程序在里面使其完美!!!这里仅仅只用了一个液晶没有用到其他芯片的!

2010-07-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除