自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (2)
  • 收藏
  • 关注

转载 emWin中TEXT_SetBkColor注意事项

刚好遇到这个问题,收录一下,转帖自:原贴:https://blog.csdn.net/xinxinsky/article/details/84110752 今天打算做个测试项目用emWin做界面,其中TEXT要设置背景色,调用方法为TEXT_SetBkColor(hItem, 0x0000FF00);按理说应该有绿色背景色的,在VS调试中也是显示绿色背景色的,但是到单片机中确没有背景色的显示,很无语,研究到最后发现启用了ARGB,那么将最高位透明度设置为0xFF即可,即TEXT_SetBk..

2020-10-10 16:36:33 414

原创 关于emWin显示矢量字体TTF所踩的坑

最近由于项目的需要,要在Stm32上使用emWin 图形界面,其中涉及到中文字符的显示。由于TTF矢量字库可以随意缩放的优势,一劳永逸,省得建立多个字库文件切换,所以决定使用该方式。 关于Stm32+emWin+TTF的使用方法原子哥、安富莱和野火都有较详细的说明,这里主要对具体使用过程中踩的坑进行说明。移植TTF的库及stm32端的代码,这个可以看几位大佬的教程。很多同学开始跑了一下几位大佬的例程,还行,然后就雄心勃勃的开始准备移植自己喜欢的字库进去了,但是我可以很明确的告诉你...

2020-09-29 17:09:55 1490 1

原创 小米蓝牙鼠标在Ubuntu18.0.4下反应迟钝问题的解决

在Ubunt 18.04中使用小米蓝牙鼠标,发现鼠标活动范围特别小 ,反应非常迟钝,蓝牙鼠标设置里的速度调节调到最快还是很慢,网上查询资料,xset m 10 仍然无效。经过测试,后来发现得用xinput设置灵敏度才能解决。解决方法如下:设置鼠标灵敏度: xinput set-prop "pointer:MiMouse" "libinput Accel Speed" ...

2019-10-13 10:33:53 3190

原创 在linux下shell脚本中if中用到or怎么写

在使用NCS2的测试程序demo_squeezenet_download_convert_run.sh时,一旦添加“-d MYRAID”,总是出现错误:./demo_squeezenet_download_convert_run.sh: 第 54 行: [: 参数太多其中第54行代码如下: if [ "$target" = "MYRIAD" or "$target" = "...

2019-05-21 00:14:12 29216

原创 ubuntu16.04 安装gnome经典桌面

一直比较喜欢旧版本Ubuntu的Gnome风格的菜单栏,在Ubuntu16.0.4中可以执行指令:sudo apt-get install gnome-session-flashback安装完成,注销一下,点击圆形图标,选择经典桌面,就回到经典桌面了。...

2019-05-11 22:03:43 5332

转载 ubuntu 安装caffe(特别注意:ubuntu18.0.4 安装GPU版的caffe的命令是:sudo apt install caffe-cuda,而不是很多资料上的caffe-gpu)

Ubuntu InstallationFor Ubuntu (>= 17.04)Installing pre-compiled CaffeEverything including caffe itself is packaged in 17.04 and higher versions. To install pre-compiled Caffe package, just do...

2018-09-27 14:25:26 3733 3

原创 《深度学习 21天实战Caffe》读书笔记1

关于深度学习常见术语的通俗描述“有监督”学习:上课时,我们跟着老师一步一步学习。“无监督”学习:自主完成课后的作业。“训练数据集”:平时做的课后练习题。“测试数据集”:考试时卷面的题目。关于训练效果:“学霸”:训练效果其他人好,对测试数据集的所有情况如数家珍。“学渣”:完全没有训练或训练不充分,对测试数据集的效果和随机猜测差不多。“学痴”:在训练上出现“过拟合”,平...

2018-09-21 15:05:41 172

原创 OV9655 YUV采集参数

OV9655的数据手册对于YUV方式采集图像数据描述非常模糊,而且貌似还有一些错误,经过几天的实验研究终于获得了OV9655的YUV 数据,特将需要修改的关键参数注释如下:1.  COM7  地址 0x12           bit[1:0]=10(其中:00 RAW RGB data,01 RAW RGB interpolation,10 YUV, 11 RGB)2.  TSLB   

2014-12-03 15:01:17 2830

原创 stm32 DCMI接口CROP功能使用

最近使用stm32F407单片机通过摄像头采集图像进行处理,其中使用到DCMI接口CROP功能。但在网上找了很久,有用的资料不多,只能自己研究,特将自己的使用方法记录下来。     1.如何设置CROP。           定义:                DCMI_CROPInitTypeDef DCMI_CROPInitStruct;

2014-11-24 19:00:50 11993 2

原创 循环语句中一个不易发现的错误

今天在调试自己写的一个图像处理的程序时发现一个循环语句使用时不易发现的一个错误,平时得细节得不注意,搞了我一整天,留着以后参考。部分代码如下:unsigned int i,j; for(i=starty+1;i {       for(j=startx+1;j      {....      }}看出错误来了吗?取endy=0,或endx=0试试,程序不知道要运

2014-01-11 01:02:37 1514

转载 signal(SIGPIPE, SIG_IGN)

当服务器close一个连接时,若client端接着发数据。根据TCP 协议的规定,会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。   根据信号的默认处理规则SIGPIPE信号的默认执行动作是terminate(终止、退出),所以client会退出。若不想客户端退出可以把SIGPIPE设

2014-01-05 20:37:30 864

转载 C指针参数传递

C指针参数传递#include using namespace std ;void fn(int *p1){    int *p2=new int;    *p2=10;     p1=p2;}void main(){    int *p=new int;    fn(p);    cout}/*分析:乍一看这个程序的输出结果好像是1

2013-11-10 12:33:25 893 1

原创 fread读取yuv图像文件不完整的问题

症状:      今天测试视频处理算法,读取yuv图像数据,老是没按自己的意图出结果,后来测试代码,发现直接fread,然后原封不动的和fwrite,虽然文件大小是正常的,但保存的图像帧的后部分全为0;     原因:     window中文件读取很文本文件和二进制,默认是文本文件方式,该方式遇到\0,函数就认为到了末尾,不往下读下去了。    解决:    fopen文件的

2013-10-23 21:37:06 3003 3

原创 浮点数转字节组存储

浮点数转字节组存储,主要用于嵌入式等一些特殊情况,比如串口传数据,其主要思路是将浮点数(通常为4字节),每个字节单独传送,到接收端再将它们组合成一个浮点数即可。在C语言中,我们可以采用union方式实现。union f_data{float fdata;unsigned char cdata[4];}data; //单精度的浮点数,便于拆分字节//如果是双精度的则定义为

2013-09-02 21:29:30 2960

原创 MDK错误More than one section matches selector - cannot all be FIRST/LAST的解决

加入的启动代码为多个,实际只使用其中一个:       startup_stm32f10x_cl.s       startup_stm32f10x_hd.s       ...       startup_stm32f10x_xl.s方案1:删除不需要的方案2:除了实际需要使用的以外,其余全部点右键Options for File'***',勾去灰化的Include in

2013-07-17 13:05:33 8377 7

原创 关于volatile的使用

使用volatile,不让编译器进行优化,每次读取或修改值得时候,都必须重新从内存或寄存器读取或修改,而非从缓存处读取过期的值,保证每次读取的值绝对是实时的。一般,出现在如下几个地方:1.中断服务程序中修改的供其它程序检测的变量2.多任务环境下各任务间共享的标志3.存储器映射的硬件寄存器

2013-07-17 09:18:22 548

原创 仿人智能控制器的参数简化(已发表于《计算机测量与控制》2013年第4期)

2013-06-24 14:02:41 835

原创 QMessageBox::about()在系统托盘状态下确定后退出应用程序的解决

QMessageBox::about()在通常的窗口程序状况下,点击确认,只是关闭about窗口本身;但在系统托盘状态下点击确定,会将应用程序一并退出。解决办法如下:   在程序中加入:QApplication::setQuitOnLastWindowClosed(fal

2011-09-24 23:41:44 1917 1

转载 QT 系统托盘图标

QIcon icon = QIcon(":/images/icon.ico");加载图片setWindowIcon(icon);把图片设置到窗口上trayIcon = new QSystemTrayIcon(this);创建一个系统托盘图标trayIcon->setI

2011-09-19 17:06:53 2681

原创 S3C2440 下Sharp LQ080V3DG01屏能用的一组参数

        //.left_margin      = 44,  /*HFPD*/        //.right_margin     = 116, /*HBPD*/        //.hsync_len        = 96,  /*HSPW*/        //.upper_margin     = 19,  /*VFPD*/        //.lower_mar

2011-06-30 19:25:00 984

原创 arm-linux-gcc 与 gcc 关于字节对齐问题

方法1: #pragma pack(n)         使用伪指令#pragma pack (n),编译器将按照n 个字节对齐;        使用伪指令#pragma pack (),取消自定义字节对齐方式。        如果#pragma pack (n)中指定的n 大于结构体中最大成员的size,则其不起作用,结构体仍然按照size 最大的成员进行对界特别注意:该方法是在 gcc

2011-06-28 15:26:00 2498

转载 QT 设置程序界面风格

在main函数中QApplication::setStyle("plastique");风格可以是 "windows", "motif", "cde", "plastique", "windowsxp", or "macintosh"

2011-06-21 00:41:00 8406

转载 make: 警告:检测到时钟错误。您的创建可能是不完整的。

编译时候出现make: 警告:检测到时钟错误。您的创建可能是不完整的。某个文件修改时间在3.1+e07是由于内核时间和源程序的时间冲突用touch 命令把源程序的时间戳改一下find -exec touch {} /;然后make就好了

2011-06-21 00:32:00 1367

转载 linux下GBK->UTF-8文件编码批量转换脚本

linux下GBK->UTF-8文件编码批量转换脚本find default -type d -exec mkdir -p utf/{} /;find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} /;这两行命令将default目录下的文件

2011-06-20 22:33:00 794

转载 转帖一个最近用到的东西:“在QT下为开发板的键盘编写输入插件”,加上部分自己的补充说明

网上也有相同的文章,但在 QtCreator下不知道如何跟着网上的介绍来操作,所以写了此篇文章,照着做,保证有效 ^_^创建Qt的键盘插件,重点是创建两个类:一个基于QObject和QWSKeyboardHandler派生的键盘处理类(Handler)一个基于QKbdDriverPlugin派生的键盘插件类(Plugin)Handler类的主要作用是完成对底层键

2011-06-20 19:26:00 3548 10

转载 收藏一个实用技巧:linux下查看动态链接库so文件的依赖的相关组建发布时间

  我们很多c程序在windows下是以dll形式展现的,在linux则是以so 形式展现的。  windows一般不会因为编译dll文件的编译器版本不同而出先dll文件不能执行。  但是linux下,不同版本内核的linux下编译的c程序,在其他版本的linux下就容易出现无法执行的问题。主要可能是支持程序的内核相对于编译时的内核较高或者版本相对于编译时的内核较低。  那我们如何看别

2011-06-20 18:48:00 1823

转载 收藏一篇关于QT移植比较精彩的文章

QT移植中的浮点问题的简介与内容作者:lanxinyuchs   http://lanxinyuchs.iteye.com/blog/1037265 浮点问题的由来Inter Xscale这款新型高性能、低功耗的微构架兼容arm v5 te isa指令集,不过不支持浮点指令集。这是为了节省处理器芯片体积和降低运行功耗,XScale体系结构没有实现昂贵的浮点运算部件和除法部件。这些是嵌

2011-06-20 18:45:00 1046

转载 Qt做启动界面

Qt做启动界面 如何用Qt做启动界面,说起来也很简单。其实只需要创建一个元件dialog,然后插入一张图片背景,用一个定时器,使其在主窗口显式之前显示规定的一段时间。       下面这里有一段代码:  int main(int argc, char *argv[])  { QTextCodec::setCodecForTr(QTextCodec::codecForName

2010-02-21 16:10:00 5143 6

转载 Qt SDK里面例子的索引和简单注释

Qt SDK里面例子的索引和简单注释examples//microsky2813@hitmail.com    activeqt        comapp        dotnet//.net        hierarchy        menus        multiple        opengl        qutlook        simple        w

2010-02-21 16:05:00 1986

转载 如何在程序中模拟键盘的按键事件?

QKeyEvent event(QEvent::KeyPress,Qt::Key_A,Qt::NoModifier);QApplication::sendEvent(mainWindow, &event);

2010-02-21 15:55:00 1419

转载 关于QT中enter的定义

在键盘上大enter QT里定义的是Qt::Return小键盘的是Qt::Key_Enter

2010-02-21 15:43:00 860

转载 Valgrind使用指南和错误分析

 Valgrind是一个GPL的软件,用于Linux(Forx86, amd64 and ppc32)程序的内存调试和代码剖析。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C语言中的malloc和free或者C++中的new和delete。使用Valgrind的工具包,你可以自动的检测许多内存管理和线程的bug,避免花费太多的时间在bug寻找上,使得你的程序更加稳固

2009-05-10 00:09:00 7974

转载 Anjuta IDE 下调试程序容易忽略的一个问题

Anjuta IDE 下调试程序容易忽略的一个问题首先说一下我的系统环境:系统是Ubuntu 8.10,安装了build-essential,升级到最新版的gcc和libc等,其他还安装有gtk相关的库与开发环境,可以配合glade3进行gnome图形界面开发。平 时主要用的是Anjuta IDE,版本是2.4.1,应该是比较新的稳定版了。总体感觉不错,不过总觉得其内置的调试器

2009-05-09 23:41:00 2292 1

转载 mutex与semaphore的区别

mutex与semaphore的区别网摘1:Mutex 的发音是 /mjuteks/ ,其含义为互斥(体),这个词是Mutual Exclude的缩写。Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可以对比之处。有人做过如下类比:    * Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行化对critica

2009-05-08 17:19:00 2403

原创 一个关于函数内部指针参数返回的错误调试及分析

一个关于函数内部指针参数返回的错误调试及分析 在C语言中如下两个概念是非常重要,但又是极其容易在编程中出问题的:1.       C语言中指针存储的是一个地址,而非实际的数据项内容。2.       C语言中函数内部定义的变量的作用域或生存空间只在函数内。下面就本人在编程中出现的一个错误代码进行分析,(这个代码出的问题就是以上2点。)除此之外提出一个gcc导致该程序费了很大功夫

2009-05-04 10:32:00 1057

原创 V4L2中两个关于图像占用空间大小的结构体项的理解

1.struct v4l2_pix_format 中的sizeimage 其说明为:       Size in bytes of the buffer to hold a complete image, set by the driver.Usually this is bytesperline times height. When the image consists of variablel

2009-04-19 20:07:00 1214

转载 Linux操作系统线程同步:互斥量(mutex)

互斥量从本质上说就是一把锁, 提供对共享资源的保护访问。  1. 初始化: 在Linux下, 线程的互斥量数据类型是pthread_mutex_t. 在使用前, 要对它进行初始化:  对于静态分配的互斥量, 可以把它设置为PTHREAD_MUTEX_INITIALIZER, 或者调用pthread_mutex_init.  对于动态分配的互斥量, 在申请内存(mallo

2009-04-18 19:27:00 705

转载 程序编制的几点小窍门

对于理工科的科研工作者来说,编制程序是不可避免的。许多人常常为了程序中的一点点小错误花费了大量的时间进行调试,令人非常头疼。那么如何在编制程序中尽量少出现错误,尤其是低级错误呢?我总结了以下几点: 1、对于比较大的,算法比较复杂的程序,一定要把算法写清楚明白。有什么样的算法就会有什么样的程序,只要算法合理,可行,那么程序一定能够编制出来。所以算法是最关键的,在脑子里要非常清楚,而且要把它按

2009-04-18 19:09:00 808

转载 逻辑地址、线性地址、物理地址和虚拟地址

一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。—— 这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插在机器上那根内存本身,把内存看成一个从0字节一直到最大空量逐字节的编号的大数组,然后把这个数组叫做物理地址,但是事实上,这只是一个硬件提供给软件的抽像,内存的寻址方式并不是这样。所以,说它

2009-04-18 19:04:00 431

转载 Linux系统下的多线程编程入门

引言  线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80 年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。  为什么有了进程的概念后,还要再引入线程呢?使用多线程到底

2009-04-18 18:57:00 413

FontSubsetPack

在嵌入式系统开发及游戏开发时需要查看并修改字库文件的一个工具,通过该工具可以查看并修改字库文件的相关信息,并能创建自己的字库文件。

2020-09-28

FontPruner-master.rar

在嵌入式系统开发中使用EmWin图形界面编写程序时,显示矢量字体TTF格式时,由于通常的字体文件都偏大,可以使用该软件对字库文件进行精简。

2020-09-28

空空如也

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

TA关注的人

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