摘要: 简介 上一篇博文已经说过如何编写支持多语言的Qt 命令行应用,这一篇说说Qt GUI 应用多语言支持的坑。 本人喜欢用代码来写布局,而不是用 Qt Designer 来设计布局,手写布局比 Qt Desiner 布局有以下优点: 1. 手工布局,所想即所见, 2. 源代码方式修改布局非常方便,只需要 阅读全文
posted @ 2019-06-13 16:29 林特斯9527 阅读(1821) 评论(2) 推荐(1) 编辑
摘要: 花了3个晚上,把这个章节看完,受益匪浅。 1. 最有用的应该是与中断相关的错误,优先排查中断优先级设置。 2. 堆栈溢出检查,可能用到,一般先把堆栈设置的足够大,只要没有溢出就是好事,溢出了,掌握了栈溢出钩子函数排错很方便。 3. 相关的问题应该尽量不会出现,毕竟只要需要打印调试信息的情况下才使用, 阅读全文
posted @ 2017-12-13 10:27 林特斯9527 阅读(3337) 评论(0) 推荐(1) 编辑
摘要: 因为项目需要,最近开始学习FreeRTOS,一开始有些紧张,因为两个星期之前对于FreeRTOS的熟悉度几乎为零,经过对FreeRTOS官网的例子程序的摸索,和项目中问题的解决,遇到了很多熟悉的身影,以前在Linux平台编程的经历给了我一些十分有用的经验,后悔当初没能在第一家公司待下去,浪费了大好时 阅读全文
posted @ 2017-12-09 00:07 林特斯9527 阅读(7990) 评论(0) 推荐(1) 编辑
摘要: 背景 标题表述的不准确,大意是移植到WIN10的PC机,Intel I5。 最近因为项目接触了FreeRTOS 实时操作系统,想对这个操作系统有一个更深入的了解,所以决定下载源码看看,下面这个链接的随书一起的源码。 FreeRTOS 源码下载链接: http://freertos.org/Docum 阅读全文
posted @ 2017-11-25 17:20 林特斯9527 阅读(3685) 评论(1) 推荐(0) 编辑
摘要: 简介 使用 Keil debug 很方便,把内存中的一段区域 dump 出来也很方便,例如使用命令 。但是要查看 dump 出来的内容却很不方便。因为 dump 出来的格式是 INTEL hex386 格式的,这个格式是给机器读的而不是给人读的。 例如下面是一个完成的 INTEL HEX386 格式 阅读全文
posted @ 2019-07-23 17:59 林特斯9527 阅读(931) 评论(0) 推荐(0) 编辑
摘要: 起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了。这个真是头疼,变量太多,不知道从哪里查找内存泄漏好。于是迫切的需要找到一种追查内存泄漏的工具。 一开始很自然的是 阅读全文
posted @ 2019-07-04 10:59 林特斯9527 阅读(3254) 评论(0) 推荐(1) 编辑
摘要: 参见博文: "liam.page" 和 "voidcn" 前提条件 1. 安装 ImageMagick 软件 (因为要把 gif 图片转换成 png 序列),使用它的命令行工具 2. 命令行下把 gif 转换成 png 序列,实际,例如 3. latex 源文件中引入宏包 4. 编写代码插入图片 需 阅读全文
posted @ 2019-07-02 19:17 林特斯9527 阅读(6082) 评论(1) 推荐(0) 编辑
摘要: 首先为VS2017 IDE点赞。 配置核心 配置 Qt5 和 OpenCV400,最主要的就是头文件路径、库路径以及库文件名字。 配置方法和步骤 1. 新建一个工程,或者打开一个已有的工程; 2. 选择 ,然后打开一个工程的属性管理器并展开,如下面的工程 ; 3. 右键单击 然后选择 "Add Ne 阅读全文
posted @ 2019-06-25 16:02 林特斯9527 阅读(1078) 评论(0) 推荐(0) 编辑
摘要: 简介 常用静态库文件的名字一般是 ,例如 就是一个静态库文件,但是一个例程居然是引用 文件作为静态库,有点非常规啊。 这是一个NI488.2 的例程,其中一个例程的说明文档如下: Microsoft Visual C++ (64 bit) With Microsoft Visual C++ (Ver 阅读全文
posted @ 2019-06-18 16:43 林特斯9527 阅读(1593) 评论(0) 推荐(0) 编辑
摘要: 简介 Qt 多语言支持很强大,很好用。 首先要强调的是程序中需要翻译的字符串最好都用 这种形式,这里的 "message" 就是需要翻译的字符串,统一用英文来表示,也就是说开发过程中程序的默认语言是英文, 开发完成后,用 Qt 多语言工具将程序翻译成不同的语言。 需要用到的工具就是 Qt 自带的 l 阅读全文
posted @ 2019-06-07 17:22 林特斯9527 阅读(3748) 评论(0) 推荐(0) 编辑
摘要: 一开始浏览代码出现了下面这个问题, 标记为红色,符号无法识别,下面还出现了很多提示需要加 , 等符号,虽然编译没问题,但是看着红色标记和一堆提示真是要逼死强迫症。 既然符号 无法识别,有没有什么办法从 vscode 中规避呢?搜索之后得到一个相关的信息,参见如下这个网页: "How to force 阅读全文
posted @ 2019-03-15 10:59 林特斯9527 阅读(7616) 评论(0) 推荐(0) 编辑
摘要: 芯片手册 某个Cortex M4芯片带有1个UART,支持Tx,Rx 的FIFO功能,而且可以通过寄存器配置FIFO的阈值,芯片的datasheet并不完善,没有说明RX的FIFO具体有几个级别,每隔级别的阈值是多少。 但是需要注意的是 TX, RX 的FIFO都可以通过UART 的 DR 寄存器进 阅读全文
posted @ 2018-06-15 09:54 林特斯9527 阅读(3812) 评论(0) 推荐(0) 编辑
摘要: 本文参见 "这里" 。 使用缓冲的 cursor,下例给从2000年加入公司并且还在公司的员工薪水从明天起加15% 阅读全文
posted @ 2017-10-29 23:16 林特斯9527 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 连接数据库 本文参见 "这里" ,示例如何连接MySQL 数据库。 Python import mysql.connector from mysql.connector import errorcode 连接数据库需要的参数 表示使用纯Python版本的接口,如果置为False,表示使用C库版本的接 阅读全文
posted @ 2017-10-29 23:15 林特斯9527 阅读(646) 评论(0) 推荐(0) 编辑
摘要: 这里仅介绍 MySQL 官方开发的 Python 接口,参见这里: https://dev.mysql.com/doc/connector python/en/ Chapter 1 Introduction to MySQL Connector/Python 这个接口是用纯Python写成的,仅依赖 阅读全文
posted @ 2017-10-29 19:18 林特斯9527 阅读(1953) 评论(0) 推荐(0) 编辑
摘要: 基础 翻译文档。 支持不同的版本 既可以在 中指定版本号,也可以在代码中运行时检查当前版本。 在 中指定最小版本号和目标版本号,例如: 代码中检查版本号,需要使用 静态类,做版本比较: String资源 为了优化UI界面,提倡把字符串都定义成字符串资源,放在 文件中,以 对的形式存在,这也方便于应用 阅读全文
posted @ 2017-08-25 15:30 林特斯9527 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 准备工作: 串口小板子连接开发板,电脑串口工具打开对应串口,进入命令行。 示波器底线接开发板底线,探针连接TXD或者RXD。 由于发送一个字节或者接受一个字节的时间很短,用 Single 并不能抓到波形,所以用 Run 模式,串口命令行发送大量的数据,待示波器能稳定地抓到波形然后 Stop ,在面板 阅读全文
posted @ 2017-08-14 15:34 林特斯9527 阅读(981) 评论(0) 推荐(0) 编辑
摘要: Q: 内部类为什么如此重要? A: 内部类的存在使得我们可以在一个外部类里面实现多个相同的接口。 Q: 内部类为什么要把一个接口实现多次? A: 例如GUI事件处理,设想有3个按钮,每个按钮有不同的用途,那么创建3个内部类,都实现同样的接口 ActionListener ,这就意味着每一个类可以实现 阅读全文
posted @ 2017-08-13 10:58 林特斯9527 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 《Head First Java 2nd Edition》 摘录 JFrame 代表屏幕上的一个窗口,可以把 buttons, checkboxes, test fields 等等界面相关的东西置于其上。它可以有一个有菜单项的菜单条。无论在哪个平台上,都有窗口图标,最小化、最大化和关闭窗口的按钮。 阅读全文
posted @ 2017-08-11 16:33 林特斯9527 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 参考原文《STM32F1开发指南》 内存管理简介 内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。最主要的目的是如何高效、快速的分配,并且在适当的时候释放和回收内存资源。内存管理的实现方法有很多种,但最终是要实现2个函数: malloc (内存申请)和 free (内存释放)。 STM3 阅读全文
posted @ 2017-08-07 15:26 林特斯9527 阅读(1217) 评论(0) 推荐(0) 编辑