自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lihui126的专栏

技术博客,兴趣是一个“电”字。

  • 博客(45)
  • 资源 (1)
  • 收藏
  • 关注

原创 使用Visual Studio(VS2015)编译自己的GVIM 8.0

使用Visual Studio(VS2015)编译自己的GVIM 8.0

2017-02-16 11:54:32 2171

转载 QtE4.6.3触摸屏隐藏鼠标指针的方法总结

QtE4.6.3触摸屏隐藏鼠标指针的方法总结

2015-12-02 14:23:21 2223

转载 C语言中的强符号与弱符号(关于变量声明与定义的深入讨论)

看到一篇介绍C语言强符号与弱符号的文章非常好,转载过来加深印象。原文地址:http://blog.csdn.net/astrotycoon/article/details/8008629==============================================================================一、概述在C语言中,函数和初始化的全局变量

2015-06-01 15:51:07 4061

转载 __stdcall,__cdecl,_cdecl,_stdcall,。__fastcall,_fastcall 区别简介

__stdcall,__cdecl,_cdecl,_stdcall,。__fastcall,_fastcall 区别简介 1.今天写线程函数时,发现msdn中对ThreadProc的定义有要求:DWORD WINAPI ThreadProc(LPVOID lpParameter);不解为什么要用WINAPI宏定义,查了后发现下面的定义。于是乎需要区别__stdcall和__cdec

2015-06-01 09:01:56 772

原创 为什么将能被4整除但不能被100整除和能被400整除的年份设为闰年

计算闰年的C程序要写成:if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) printf("%d is a leap year\n", year);else printf("%d is not a leap year\n", year);今天突然好奇,为什么要设置一个不能被100整除这个条件?下面是查来的: 定制

2015-05-29 15:36:08 16174 2

转载 解密随机数生成器

从小就一直很好奇,MP3播放器的随机播放功能是如何实现的,今天读到一篇关于随机数的文章,又勾起了我的那时好奇心,索性上下求索,了解了随机数背后的很多知识,顿觉豁然开朗,特意写这篇文章和大家总结分享一下。其实,随机数在我们身边无处不在。无论是玩扑克牌麻将骰子时的点数,玩LOL时的玩家匹配,还是高大上的量子物理,核聚变,都无一例外地随机数有关,在混沌理论中,这个世界本身就是一系列随机过程的产物——好吧,

2015-05-29 14:53:51 19184 8

原创 为mini2440的Qt程序增加字体并使字体大小可改变

写了一个Qt程序在2440上运行,由于屏幕是3.5寸,显示一个qwt的波形图控件就已经捉襟见肘了,并且默认的文字显得太大,按照网上所述, export QWS_DISPLAY=linuxfb:mmHeight=110:mmWidth=50:0 无论如何修改mmHeight和mmWidth,发现完全没有效果 但export QWS_SIZE=200x300是有效果的,虽然对修改文字大小没什么帮助

2015-05-27 11:04:47 1182

原创 MFC对话框中的工具栏、状态栏设计小结

对网上的资料结合自己的实践的总结,由于大部分都是网上先辈们的经验,这里只是直接将内容拿来,格式优化一下更易读而已。对话框中建立工具栏的方法工具栏中包含了一组用于执行命令的按钮,每个按钮都用一个图标来表示。当单击某个按钮时,会产生一个相应的消息,对这个消息的处理就是按钮的功能实现。将菜单中常用的功能放置在工具栏中,这样可以方便用户操作,省去了在级联菜单中一层层查找菜单项的麻烦。1、工具栏类CToolB

2015-05-26 14:17:06 9948 1

转载 C99的新特性

C99出来很久了,好像现在还在谈论一个10多年前的标准显得有点过时。不过现实是:关于C99新增的特性,许多用C用了N年的人其实还都不清楚。而在一些能找到的相关文章里面,基本上都是一些对标准的简单翻译,看那种玩意还不如直接去翻标准。所以我主要从自己的使用体验的角度来分享一下我用C99的一些心得。这篇文章并非要做个大而全的C99相对C89的扩展列表,我只挑我自己觉得可能用上或者有必要说的来讨论。另

2015-05-26 12:50:20 776

原创 mini2440开发板运行Qt程序出现Segmentation fault的另一种奇葩原因:Ubuntu下使用FileZilla通过FTP方式传输程序

使用QWT-6.1.2写了一个名为dataplot的小程序,Ubuntu下运行正常,遂交叉编译后传到开发板上,运行,报错:Segmentation fault。主机环境:Ubuntu 12.04 + gcc 4.6.3 + Qt 4.8.1开发环境:arm-linux-gcc 4.4.3 with EABI + QtE 4.6.3 (均为mini2440官方提供) 解决过程

2015-05-20 13:48:11 3118 1

转载 脚本中export不起作用的原因分析

#!bin/bash export PATH=$PATH:/usr/lib/java/jre export PATH=$PATH:/usr/lib/java/bin---path结果发现直接运行./ path 没起到效果, 后来发现原来机制是这样: 类似于局部变量,从当前shell中运行脚本path,是先创建一个子进程shell 然后运行脚本程序,然后子进程退出,返回父进程shel

2015-05-19 11:07:59 1378

原创 使mini2440的Qt程序横屏显示,-qt-gfx-transformed与QWS_DISPLAY

mini2440开发板上已经默认安装了QtE-4.6.3库,如果直接使用,则所有的Qt程序都是默认竖屏显示的,如何横屏显示,也即如何旋转屏幕呢?经过一番折腾,最终找到了方法,现记录下来备忘。第一步:设置环境变量QWS_DISPLAY当应用程序./myQtApp -qws启动时,会去检测QWS_DISPLAY这个环境变量,设置一些显示相关的东西。旋转屏幕就在这里设置,方法是:

2015-05-19 10:36:35 3918

转载 sqlite3在mini2440上的移植——基于ubuntu10.04

sqlite3在mini2440上的移植一、开发环境:Mini2440,linux_2.6.32.2内核,ubuntu10.04,arm-linux-gcc-4.3.2

2015-05-18 16:49:52 581

转载 Ubuntu 12.04 LTS 中文输入法的安装

本文是笔者使用 Ubuntu 操作系统写的第一篇文章!参考了红黑联盟的这篇文章:Ubuntu 12.04中文输入法的安装安装 Ubuntu 12.04 着实费力一番功夫,老是在用 Ubuntu 来引导 Windows,结果 Ubuntu 倒是能用,一进入 Windows 就蓝屏,于是又重装 Windows 好几遍...直到后来认识了 EasyBCD 我才走上正途...我装的是英文版的 Ubuntu

2015-05-18 11:39:05 511

原创 交叉编译qwt控件并在Mini2440开发板上运行(Ubuntu12.04 + QtE4.6.3 + qwt6.1.2)

交叉编译qwt控件并在Mini2440开发板上运行(Ubuntu12.04 + QtE4.6.3 + qwt6.1.2)

2015-05-17 15:11:15 1714 1

原创 Linux下编译并使用Qt第三方图形控件qwt(Ubuntu12.04 + Qt4.8.1 + qwt6.1.2)

Windows下编译运行qwt的方法请参阅博主的另一篇文章: Qt第三方图形控件qwt的编译安装与使用的简单方法(Win7+Qt4.8.6+MinGW4.8.2) 编译环境主机系统: VMWare + Ubuntu 12.04 (32位) 编译器版本: gcc-4.6.3 Qt版本: Qt-4.8.1 + Qt Creator-2.5.0 qwt版本: qwt-6.1.2安装步骤下载qwt

2015-05-17 14:02:40 3504 2

转载 Markdown 语法说明 (简体中文版)

声明: 这份文档派生(fork)于繁体中文版,在此基础上进行了繁体转简体工作,并进行了适当的润色。此文档用 Markdown 语法编写,你可以到这里查看它的源文件。「繁体中文版的原始文件可以查看这里 。」–By @riku注: 本项目托管于 GitCafe上,请通过”派生”和”合并请求”来帮忙改进本项目。

2015-05-16 17:29:18 1326

转载 浅谈 qmake 之 pro、pri、prf、prl文件

尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧:不是太清楚CONFIG等变量到底如何起作用的用过的qmake内置变量和函数不超过20个看Qt Creator源码或者QtSolution等库中自己使用的 *.pro 文件就想看天书一样本文只能抓住一条线,简单介绍一下 *.pro、*.pri、*.prf、*.prl等

2015-05-16 15:00:31 585

转载 Scribefire发CSDN博客

历史在很久很久以前,CSDN是支持外部工具来写文章的,可是在另一个很久很久以前就不行了。突然看到CSDN有能够用外部工具来写博客了(CSDN的公告),一直以来都纠结这个问题,CSDN的编辑器不好用,不支持Markdown这样的语法,虽然一直用markdownhere来解决。现在,看到可以用Windows Live Write来发文章了,可以我是Linux系统没有Live,怎么办~~~,怎么办~~,

2015-05-16 14:39:01 647

原创 交叉编译Qt应用程序,出现moc: Too many input files specified的问题

某天在Linux下编译了一个主机使用的qwt控件和一个Qt-4.6.3交叉编译版本的qwt控件。为了测试控件在Mini2440上的显示效果,交叉编译了一个使用qwt的温度计控件显示温度的Qt程序,不料却出现编译错误:moc: Too many input files specified,而主机直接编译却完全没问题。试了很久才发现,原来是博主的非主流编译步骤导致的。

2015-05-15 21:46:31 2209

原创 linux内核中,在/drivers/char目录的Kconfig文件中加入自己编写的新驱动,make menuconfig却不显示的问题

linux内核中,在/drivers/char目录的Kconfig文件中加入自己编写的新驱动,make menuconfig却不显示的问题。将设备驱动文件加入内核代码树并编译的步骤。

2015-05-14 22:16:06 3130

原创 Linux下加载.ko驱动模块的两种方法:insmod与modprobe

Linux下加载.ko驱动模块的两种方法:insmod与modprobe

2015-05-14 20:56:38 54287 1

原创 关于Linux下I2C驱动的Probe方式没有自动生成i2c_client且没有自动调用i2c_driver的.probe指向的函数的问题解决

背景项目内容是使用i2c接口的气压传感器SHT21,连接至mini2440上实时采集气压存储至板子上的sqlite数据库并显示一个Qt的界面。同学负责SHT21的驱动编写,博主负责上层应用的开发。开发工具均使用mini2440官方提供的工具,交叉编译器使用gcc4.4.3 with EABI,开发板内核是linux-2.6.32.2版本,主机环境是Ubuntu12.04。

2015-05-14 16:48:46 5609

转载 欢迎使用CSDN-markdown编辑器

Markdown编辑器使用说明测试留存

2015-05-11 20:44:51 439

原创 Qt第三方图形控件qwt的编译安装与使用的简单方法(Win7+Qt4.8.6+MinGW4.8.2)

qwt虽然强大,但是安装和编译还是有些费劲的,网上资料各种奇怪的安装方法都有,但经过博主多方尝试,终于还是发现,根据qwt官方安装文档安装才是最简单省力的。

2015-05-11 13:42:28 6074

原创 MFC对话框美化(文本颜色、字体、背景颜色修改)

MFC默认界面太寒碜我已经无力吐槽了,最近稍微做了一些美化的内容,主要是对话框背景颜色的修改,控件文字大小、字体、颜色的修改,多种配色使得对话框风格活泼不少。修改前后对比图: 代码如下,仅列出需要修改的函数:// VirtualMeterDlg.cpp : 实现文件//BOOL CVirtualMeterDlg::OnInitDialog(){ CDialogEx

2015-05-07 10:22:22 6869

原创 MFC不同工程(解决方案)之间对话框资源的复制与重用方法

项目是一个基于MFC的VS2013工程A,主要实现一个通过GPRS网络接收一个传感器系统采集的数据并存储的功能。最近需要添加一个带有温度计、罗盘等控件的对话框,但由于原程序已经比较完善,而新控件以前并未使用过,怕直接添加会出现莫名的问题,因此先创建一个新工程B,将界面设计好,控件成功运行,然后将工程B的界面与类文件移植到工程A中使用即可。

2015-05-07 09:53:15 6316

原创 MFC创建UI线程并建立包含ProgressCtrl进度条对话框的简单方法

项目中由于一些原因,需要在单独线程中创建一个包含ProgressCtrl进度条的对话框用于显示操作进度,因此想到利用MFC的UI线程来实现。虽然想法简单,但实现起来还是颇费了一番周折,捣鼓了一阵子,算是找到了一个比较简单的创建UI线程的方法,现记录下来。所谓UI线程,无非就是一个比普通Work线程多一个消息循环的线程。再延伸一下,想到MFC的对话框工程自动创建的也应该就是一个UI线程而已。

2015-05-04 10:46:49 4047

原创 Ubuntu12.04交叉编译mini2440提供的QtE4.6.3并测试sqlite3数据库

友善之臂mini2440说明手册上的Linux相关教程都是基于Fedora的,我用VMware安装的Fedora9一直使用不习惯,网络功能不稳定、中英文界面字体大小有问题、与主机数据共享麻烦、VMtool总是装不上去。最近学习Qt,索性直接把工作平台换到我的Ubuntu12上。

2015-04-27 20:43:07 1561

原创 Windows下Qt Creator显示中文乱码的另一种情况及解决办法

Win7 64位系统,很久以前安装了Qt5.3.1 MinGW 32bit 版本,里面是自带Creator 3.1.2的。然而一直显示中文乱码,cpp文件代码和注释中的中文全是小方框,首先怀疑是Creator版本问题,于是又重新装了最新的Qt Creator 3.3.2,结果还是中文显示乱码。    网上搜了下,有人说是文件编码的问题,我看了下,我的cpp文件已经是UTF-8编码了,Creat

2015-03-31 11:01:46 6917 3

转载 MFC中获取各个窗口(对话框)之间的指针、对象、句柄

MFC在很多的对话框操作中,我们经常要用到在一个对话框中调用另一个对话框的函数或变量.可以用如下方法来解决.   HWND hWnd=::FindWindow(NULL,_T("Sphere"));      //得到对话框的句柄   C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象

2015-01-31 14:16:13 12700

转载 常见图像文件格式的介绍

一、BMP图像文件格式BMP是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BblP文件所占用的空间很大。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在

2015-01-23 16:54:09 1335

原创 Multisim10中仿真时间步长与数码显示管的类型有关

用Multisim10仿真一个数字频率计数器,单个模块仿真很顺利,无论是计数部分还是秒脉冲发生电路都正常工作,但最后连起来仿真的时候就无语了,由于要测量1s内的输入信号的频率,按道理说如果输入信号是100Hz的话,应该在1s后在数码管显示出"100”的字样。    然而,Multisim不知道是出于什么样的考虑,如果信号频率调高的话,它会自动延长软件环境中的时间,于是,现实中的1s在软件中

2015-01-23 16:52:30 10874 2

转载 共享软件大敌 简析十大破解工具

影响共享软件发展的因素很多,被非法破解可以说是共享软件的头号大敌。那么造成共享软件生存困难的cracker们到底用了那些武器呢?今天就让我让带您去看看神秘的cracker常用的十类软件,它们就是共享软件的十大杀手!  一. 调试类工具soft-ice和trw2000  soft-ice是目前公认最好的跟踪调试工具。使用soft-ice可以很容易的跟踪一个软件、或是监视软件产生的错误

2015-01-23 16:47:03 1059

原创 Fedora9下安装Qt4Creator的方法及相关问题解决

因为之前买了mini2440开发板,友善之臂的官方文档给的是Fedora9下的开发方法,因此电脑中就装了个fedora9.但最近想学习下Qtcreator,就直接下载安装了,没想到遇到了许多问题,最后捣腾了2天终于基本搞定了。写这篇文章一来作为备忘,二来可以为和我一样遇到这种问题的各位提供一个解决方法。    我的Fedora9系统安装的时候就选择了一些开发工具,不清楚这个对安装Qt有没有

2015-01-23 16:43:32 1505

原创 (未解决)VMware中的Fedora9下安装VMtool后图形界面无法启动

原因不明,按照正常步骤安装VMtool配置到90%左右的时候出现 error -1  x did not started 的错误,重启系统后直接进入了tty命令行模式,输入startx命令会出现具体的错误提示,大概意思是说新安装了设备vmware驱动“vmwgfx”找不到之类的,百度了很多,貌似和xorg.conf的文件有关,但是具体解决办法依然没有。    最后退而求其次,开始研究怎

2015-01-23 16:37:22 1713

原创 解决“win7系统,警告 -已计划将多个默认网关用于提供单一网络(例如 intranet或者Internet)的冗余”问题

win7系统,出于一些目的,需要手动更改本地连接IP地址,但是不知为何会出现这种提示,然后再怎么修改IP也连接不上网络了。经过一番折腾最终搞定,记录下来备忘。解决步骤:       1.打开网络和共享中心,在左边找到“更改适配器设置”,进入。                   2.把除了“本地连接”以外的其他所有适配器禁用掉。3.在任务栏的网络连接图标

2015-01-23 16:30:41 31751 2

原创 鼠标问题导致笔记本开机点击桌面和任务栏无反应

现象:    win7的本本重启之后点击桌面无论左击右击都没反应,任务栏图标也没法点击,但是键盘是可以用的,按Windows徽标键从开始菜单中是可以打开软件的,也就是说,除了与鼠标有关的动作无法执行,系统其他功能是正常的。解决记录:    首先怀疑是不是某些开机启动项影响。按Windows徽标键+R键,打开运行窗口,输入msconfig,回车,然后用tab键+方

2015-01-23 16:22:43 4067

原创 64位WIN7安装SourceInsight3.5汉化补丁或绿色汉化版显示序列号无效的问题与解决办法

安装英文原版SourceInsight3.5,一切正常,第一次打开软件提示输入序列号,于是就找了个序列号输入进去,随后软件可以正常使用。    后来发现网上有汉化补丁Insight3.exe,于是下载下来替换掉原来的文件,再打开软件,这时候提示使用了无效的序列号。想到把原版软件卸载,更换序列号。然而卸载之后再重装英文版SourceInsight,发现竟然不需要重新输入序列号,百度之后发

2015-01-23 16:15:12 3836

原创 安装usb摄像头驱动引起VMwareWorkstation9虚拟机无法正常打开

win7下虚拟机突然无法打开了,提示“windows无法访问指定的设备、路径。或文件,您可能没有合适的权限打开这个项目。“        首先想到的是wmware相关服务是否正常启动,任务管理器查看,是正常的。    然后想到是否有服务冲突,于是重启F8进入安全模式,发现vmware可以正常打开。    仔细回想最近电脑的软件安装情况,两天内新增了一个usb摄像头驱动和

2015-01-23 16:14:40 2154

第七章-嵌入式Linux应用开发入门指南-mini2440用户手册

选自mini2440用户手册的第七章内容,嵌入式Linux应用开发入门指南,传在这里是方便在线观看,内容主要是介绍了嵌入式linux的应用开发,简单驱动开发的基本步骤,值得参考

2015-05-14

空空如也

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

TA关注的人

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