自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (6)
  • 收藏
  • 关注

原创 精雕细琢见真章《STM32Cube高效开发教程》

我们编写的新书《STM32Cube高效开发教程(基础篇)》终于在各大电商平台上架销售了,这是值得众多STM32开发者入手的一本新书,它是目前市面上第一本采用STM32CubeMX和STM32CubeIDE作为开发软件,系统性地介绍STM32的HAL库开发技术的书。《STM32Cube高效开发教程》分为《基础篇》和《高级篇》两本,《高级篇》大约在10月份才能正式印刷出来。总结一下,本书具有如下的一些特点。1. 使用STM32Cube生态系统的开发工具和技术ST公司现在大力推广其STM32Cube生

2021-09-08 22:20:46 6197 5

原创 尽善尽美之作《Python Qt GUI与数据可视化编程》

我写的第二本书《Python Qt GUI与数据可视化编程》终于上架销售了。去年为第一本书《Qt 5.9 C++开发指南》写的介绍文章称其为倾心倾力之作。本书与第一本书是有些关联的,一些内容框架和示例来自于第一本书,但是本书不是简单地将C++的示例改写为Python的示例,在写这本书时发现第一本书中的一些不足,做了很多的改进。我们在写论文或指导学生写论文时都知道一个基本的道理:好的论文总是...

2019-08-16 17:42:08 31216 34

原创 倾心倾力之作《Qt 5.9 C++开发指南》

五一假期前收到了人民邮电出版社寄来的书,我们写的《Qt 5.9 C++开发指南》终于印刷出来了!从2016年11月开始写书,到今天终于印刷出版,历时约一年半,现在它终于面世了。     成书过程由于做项目的需要,在2014年开始转而用Qt编写软件。在本人学习Qt的过程中,买了好几本Qt编程的书,但是没有发现特别满意的。《C++ GUI Qt 4编程》和《Qt高级编程》虽然是比较经典...

2018-05-02 17:29:29 33549 59

原创 《Qt 6 C++开发指南》提供4个版本的示例程序

Qt 6 C++开发指南》包含丰富的示例项目,为了方便读者使用《Qt 6 C++开发指南》学习Qt编程,本书提供了4个版本的示例程序。读者可在人民邮电出版社异步社区本书的配套资源里下载这4个版本的示例程序

2023-03-24 23:03:59 6375 2

原创 《Qt 6 C++开发指南》--1.1 Qt 简介

《Qt 6 C++开发指南》1.1节的完整内容,由作者发布。介绍了什么Qt,什么事Qt的跨平台开发特性。Qt的许可类型、不同安装版本,Qt支持的开发语言,以及Qt 6的新特性等。

2023-02-27 17:06:36 9306

原创 《Qt 6 C++开发指南》简介

《Qt 6 C++开发指南》内容和特点简介

2023-02-25 00:17:24 5650 5

原创 《STM32Cube高效开发教程(基础篇)》各章示例列表

《STM32Cube高效开发教程(基础篇)》各章都有完整的项目示例,这些示例都在一个STM32F407开发板上验证测试过。读者可以从异步社区(https://www.epubit.com/)搜索本书后,下载全部示例源代码。我们还录制了示例在开发板上运行测试的视频,已全部发布到B站上,《STM32Cube高效开发教程(基础篇)》示例运行演示视频索引 - 哔哩哔哩以下是本书各章示例的列表。 章节 示例项目 示例功能和知识点 第1章

2021-09-28 19:23:21 4066

原创 《STM32Cube高效开发教程》即将正式出版

我们编写的新书《STM32Cube高效开发教程》预计在9月份就能印刷出来了,这是STM32开发方面的一本重磅新书,为什么这么说呢?因为,它是第一本全面使用STM32CubeMX和STM32CubeIDE作为开发软件,系统性地介绍STM32的HAL库开发的书。图1 新书封面我们知道,ST公司现在推广的是STM32Cube生态系统,全面使用HAL/LL驱动库,标准库已经被淘汰,不再更新。ST公司为STM32Cube生态系统提供了功能完善的工具软件,且都是免费的。其中,STM32CubeMX用于MC.

2021-08-19 13:30:10 893 4

原创 使用STM32CubeMX和STM32CubeIDE的常见问题和注意事项

STM32CubeMX和STM32CubeIDE是ST公司的STM32Cube生态系统中最重要和最常用的2个软件,使用这2个免费软件可以高效地进行STM32系统的开发。CubeMX用于对一个STM32器件进行可视化的配置,然后生成CubeIDE或其他IDE项目的初始化代码。CubeIDE可以在CubeMX初始生成的代码基础上进一步添加用户功能代码,实现具体的功能。新手在使用CubeMX和CubeIDE的过程中,容易范一些错误,或遇到一些问题不知如何解决。本文将这些常见问题整理如下。(1)安装了错

2021-04-11 21:09:31 34256 12

原创 《Python Qt GUI与数据可视化编程》出了繁体中文版

《Python Qt GUI与数据可视化编程》在2019年9月出版,不久后就转让了繁体中文版的版权。在春节前才拿到一本样书,原来他们在2020年3月份就已经正式出版了,只是改了书名叫《Python QT GUI程式设计》...

2021-03-04 00:53:06 625 2

原创 KiCad完整流程使用体验

KiCad是一个开源免费的电路PCB设计软件,可以绘制原理图和PCB,电路设计的基本功能它都有了。对于一般的DIY或非专业大型电路设计来说,使用KiCad设计电路PCB是完全没有问题的。KiCad已经发展到5.x版本,可以到官网(https://kicad.org/ )或清华大学开源软件镜像站(https://mirrors.tuna.tsinghua.edu.cn/kicad/)下载最新的版本。本人以前只是用KiCad绘制电路原理图,所以对它的一些功能没有全面和深入地使用。最近使用KiCad走了一个.

2021-02-03 14:27:41 1245

原创 是时候换到STM32Cube开发方式了

1. STM32发展历程STM32系列MCU是国内应用非常广泛的一种32位MCU,不知不觉中,STM32的开发方式已经发生了很大的变化。2014年,ST公司推出了HAL驱动库和MCU图形化配置软件STM32CubeMX。2017年底,ST公司收购了Atollic公司,将专业版TrueSTUDIO免费。2019年4月,ST公司正式推出了自己的STM32 MCU程序开发IDE工具软件STM32CubeIDE 1.0.0,形成了一个完整的STM32Cube生态系统。2. STM32生态系统2014

2020-11-13 00:23:56 982 3

原创 《Python Qt GUI与数据可视化编程》第14章程序出现 module ‘matplotlib‘ has no attribute ‘figure‘错误的解决办法

《Python Qt GUI与数据可视化编程》第14章“Matplotlib数据可视化”的示例程序是在Python 3.7和Matplotlib 3.0.0版本下测试过的,运行都没有问题。但是在使用高版本的 Matplotlib 3.3.2时,程序会出现一个严重错误,导致程序根本无法运行。例如在运行14.1节的示例程序 Demo14_1GUI.py 时,出现如下的错误Traceback (most recent call last): File "G:\PyQt5Book\DemoV5With

2020-09-18 22:33:16 2574 3

原创 STM32CubeIDE中导入TrueSTUDIO项目后中文注释乱码问题的解决方法

在STM32CubeIDE中导入一个TrueSTUDIO的项目后,会发现原来程序中的中文注释都编程乱码了,无法正常显示。原因肯定是文件编码的问题,点击Edit菜单下的Set Enconding,在下面的对话框里测试了各种编码,都是无法显示。原因是TrueSTUDIO文件用的编码在STM32CubeIDE里不支持,既然不是UTF-8,那就是GBK或ANSI了,而这个对话框里没有这两种编码。...

2019-12-27 22:12:09 5435

原创 FreeRTOS的基础时钟

在STM32CubeMX启用FreeRTOS后,在导出代码时会出现一个如图4所示的对话框。提示在使用FreeRTOS时,强烈建议将HAL的基础时钟设置为非SysTick定时器。在前面的示例中,我们都是将HAL的基础时钟设置为定时器TIM6,但并未详细说明这么做的原因。在前一节已经介绍了HAL基础时钟的作用,以及使用SysTick定时器或TIM6定时器作为HAL基础时钟时的工作原理。通过前面章节...

2019-12-06 00:15:29 6764 6

原创 使用其他定时器作为HAL的基础时钟

在不使用FreeRTOS的时候,SysTick是默认的HAL基础时钟源,但是在SYS模块中,也可以选择其他定时器作为基础时钟源,例如可以选择基础定时器TIM6作为HAL的基础时钟源。图1 选用TIM6作为HAL的基础时钟选择TIM6作为基础时钟源后,TIM6就不能在作为其他用途,在STM32CubeMX中不能再对TIM6做任何设置。在NVIC中,TIM6的中断被自动启用,优先级被设置为...

2019-12-06 00:04:22 2480

原创 使用SysTick作为HAL的基础时钟

HAL需要设置一个定时器作为基础时钟。基础时钟通过定时溢出中断产生嘀嗒信号,嘀嗒信号的缺省频率是1000Hz,也就是基础时钟的定时周期是1ms。基础时钟主要用于实现延时函数HAL_Delay(),或在一些有超时(timeout)设置的函数里确定延时。在不使用FreeRTOS的时候,STM32CubeMX里默认地将基础时钟源设置为SysTick定时器,如图1所示。SysTick是Cortex-M...

2019-12-05 23:57:47 6035 1

原创 HAL和FreeRTOS的基础时钟

在STM32CubeMX里启用FreeRTOS后,生成代码时会出现一个如图所示的对话框,提示要使用一个非SysTick定时器作为HAL的基础时钟。为什么要这么设置?什么是HAL的基础时钟?为什么不使用FreeRTOS的时候没有出现这个的对话框?之前遇到这种情况,就在SYS模块里将HAL基础时钟源设置为TIM6(如下图),也并没有深究其中的缘由。最近在分析FreeRTOS的Tickl...

2019-12-05 23:48:26 3607

原创 《Python Qt GUI与数据可视化编程》第14章 Matplotlib数据可视化

第14章 Matplotlib数据可视化Matplotlib是Python中做数据绘图最常用的一个包,它提供了二维和三维绘图功能,能绘制曲线、直方图、柱状图、饼图、伪色图、等高线图、极坐标图、三维曲面、三维等高线等各种图,具有丰富的绘图定制功能,能在图中使用LaTeX标记输出数学符号和公式,生成具有出版品质的图。Matplotlib最初是仿照MATLAB的绘图功能开发的,matplotli...

2019-08-24 22:22:20 4754

原创 《Python Qt GUI与数据可视化编程》第13章 PyQtDataVisualization三维绘图

第13章 PyQtDataVisualization三维绘图Data Visualization是Qt中的一个三维数据可视化模块,可以绘制三维柱状图、三维散点图、三维曲面等。Data Visualization模块的功能虽然不能和一些专业的三维图形类库(如VTK)相提并论,但是它简单易用,对于简单的三维数据显示是比较实用的。PyQt5中并没有Data Visualization模块,需要单独安...

2019-08-24 22:08:58 4742 2

原创 《Python Qt GUI与数据可视化编程》第12章 PyQtChart二维绘图

第12章 PyQtChart二维绘图Charts是Qt的一个二维图表模块,可以绘制各种常见的二维图表,如折线图、柱状图、饼图、散点图、极坐标图等,功能比较全面,绘制的图形效果也比较美观,是用于数据二维可视化的有力工具。PyQtChart是Qt Charts模块的Python绑定,它需要单独安装。本章首先介绍PyQtChart模块的基本特点和功能,以画折线图为例介绍用PyQtChart绘制一...

2019-08-24 22:00:03 7436 2

原创 《Python Qt GUI与数据可视化编程》第6章 对话框与多窗口设计

第6章 对话框与多窗口设计本章介绍多窗口的设计和调用问题,包括PyQt5标准对话框的使用,自定义对话框的设计和使用,如何在主窗口和对话框之间传递数据,如何设计类似于多页浏览器的多窗口程序,如何设计标准MDI(Multiple Document Interface)应用程序等问题。6.1 标准对话框PyQt5为应用程序设计提供了一些常用的标准对话框,如打开文件对话框、选择颜色对话框、信息...

2019-08-23 16:35:16 2481

原创 《Python Qt GUI与数据可视化编程》第5章 事件处理

第5章 事件处理基于窗体(Widget)的应用程序都是由事件(event)驱动的,鼠标单击、按下某个按键、重绘某个组件、最小化窗口都会产生相应的事件,应用程序对这些事件作出相应的响应处理以实现程序的功能。本章介绍PyQt5中事件的处理方法,包括:常见的特定事件的处理函数及其使用方法。 使用event()函数拦截QWidget窗体的事件,然后进行识别和分发处理的方法。 使用事件过滤器进行...

2019-08-23 16:19:57 2111

原创 《Python Qt GUI与数据可视化编程》第4章 Model/View 结构

第4章 Model/View 结构Model/View(模型/视图)结构是进行数据显示与编辑的一种编程结构,在这种结构里,源数据由模型(Model)读取,然后在视图(View)组件上显示和编辑,在界面上编辑修改的数据又通过模型保存到源数据。源数据可以是内存中的字符串列表或二维表格型数据,也可以是数据库中的数据表。视图就是界面上的视图类组件,如QListView、QTreeView、QTable...

2019-08-23 16:06:52 2760

原创 《Python Qt GUI与数据可视化编程》第3章 常用界面组件的使用

第3章 常用界面组件的使用第2章已经介绍了PyQt5编写GUI应用程序的基本原理,本章将介绍一些常用的GUI界面设计组件的使用。这些常用组件的使用是比较简单的,所以实例程序一般是一次融合了几个组件的使用,而不是逐个的简单介绍。很多编程细节问题在实例中逐步展开进行解释。当然,在实例程序中不可能展现一个组件或类的所有方法,读者在使用中可以通过Qt帮助文档查找某个类的详细信息。3.1 数据输入...

2019-08-23 15:56:26 4894

原创 《Python Qt GUI与数据可视化编程》第2章 PyQt5 GUI程序框架

第2章 PyQt5 GUI程序框架[在异步社区可免费阅读第2章完整内容]本章介绍PyQt5编写GUI程序的基本原理和主要技术点,包括GUI应用程序的基本框架,UI Designer可视化设计窗体的方法,窗体文件如何转换为Python文件并使用,Qt信号与槽技术的使用方法等。掌握了本章的内容,就掌握了PyQt5设计GUI程序的框架性原理,再学习后面的各章内容就基本上是各种类的使用方法的学习...

2019-08-23 15:38:22 7026

原创 《Python Qt GUI与数据可视化编程》第1章 开发环境安装

第1章 开发环境安装本章介绍本书用到的各个软件的功能特点、安装和基本使用方法,构建本书所介绍内容的开发环境。需要安装的软件包括Python 3.7,Qt 5.12,PyQt 5.12,读者安装最新的版本即可。本书所有实例都是在 64位Window 7系统里测试的。 虽然安装了Qt 5.12,但只是为了使用它的Qt Creator进行界面可视化设计、槽函数原型生成、查看类的帮助信息,不需要...

2019-08-23 15:27:13 5309

原创 《Python Qt GUI与数据可视化编程》各章内容简介与实例展示

《Python Qt GUI与数据可视化编程》介绍使用PyQt5开发Python GUI应用程序的原理和方法,使用PyQtChart和PyQtDataVisualization进行二维和三维数据可视化设计的方法,以及将Matplotlib嵌入到PyQt5 GUI应用程序界面中进行数据可视化的编程方法。读者可以到人民邮电出版社异步社区免费阅读第1章和第2章的完整内容,可免费下载全书实例的源代码。...

2019-08-23 15:18:52 6644 7

原创 新书《Python Qt GUI与数据可视化编程》

经过一年多写作和出版社的编辑加工,我的第二本书《Python Qt GUI与数据可视化编程》马上就正式上架了,敬请关注。本书介绍在Python中使用PyQt5和其他模块进行GUI和数据可视化编程的方法,全书目录如下:第一部分 PyQt5开发基础第1章 开发环境安装第2章 PyQt5 GUI程序框架第二部分 GUI应用程序设计第3章 常用界面组件的使用第4章 M...

2019-08-06 23:29:57 3741

原创 TrueSTUDIO环境设置的一些小技巧

最近一直在使用STM32CubeMX和TrueSTUDIO进行STM32的程序开发,用起来已经是得心应手了。使用TrueSTUDIO的过程中知道了一些环境设置的小技巧,可以提高工作效率过减少问题,故专门贴出来。TrueSTUDIO的环境设置主要是在项目的属性设置对话框里进行设置。(1)使用并行编译在C/C++ Build的Behavior设置页面,勾选Enable parallel b...

2019-06-08 10:40:16 3821

原创 《Qt 5.9 C++开发指南》发布实例源码更新,提供Qt 5.12环境下测试过的源码

近期,对《Qt 5.9 C++开发指南》的实例源程序进行了更新,异步社区本书的“配套资源”下载里可以看到如下的内容。其中,QT5.9Samp2019.zip是在Qt5.9环境下测试过所有实例程序,QT5.12Samp2019.zip是在Qt 5.12环境下测试过的所有实例。这次的实例源代码压缩文件比最初的小,是因为:(1)删除了实例项目中的临时文件和编译后文件,只保留项目初始源程序。...

2019-06-01 10:30:32 7202 9

原创 STM32CubeMX和STM32CubeIDE组合,定义STM32开发新方式

在2018年3月份,本人写下了一篇博文《几种STM32开发IDE的比较与选择》,当时ST公司已经收购了Atollic公司,TrueSTUDIO 9.0变成一个免费的STM32开发IDE工具。当时本人就预见TrueSTUDIO +STM32CubeMX必将是ST公司大力推广的开发工具组合。在后面为一门课程备课时,本人也使用了STM32CubeMX+TrueSTUDIO 9.0,发现这套工具非常好用,...

2019-05-08 16:58:47 21716 6

原创 文件十六进制编辑软件HxD Hex Editor的使用

在编写自定义格式文件的读写程序,或分析一个二进制文件的内容时,需要查看文件的十六进制内容,这就需要用到文件十六进制内容显示与编辑软件。本人试用过4种这样的软件,试用过的4个软件分别是:(1)WinHex,专门用于文件十六进制显示和编辑的软件,有评估版可用,正式版收费。下载地址 http://www.winhex.com/winhex/(2)UltraEdit,这是个通用的文件编辑器,可以编...

2019-02-28 00:10:48 17805 1

原创 VirtualBox中安装Ubuntu 16.04 LTS

第1步: 安装VirtualBoxVirtualBox是一个免费的虚拟系统软件,其功能与一些商业版的软件基本没啥区别。在Windows7里安装VirtualBox5.1.26,安装过程同一般的Windows软件安装过程一样。图1-1 安装好的VirtualBox软件,已经建立了2个虚拟机第2步:创建Ubuntu虚拟机要在虚拟机里运行64位的Ubuntu系统,必须设置电脑的BIO...

2018-12-04 00:37:52 765

原创 Ubuntu里Qt 5.9.1 初次编译时出错: can not find -lGL

在Ubuntu里安装Qt 5.9.1后,编译一个简单的GUI程序时出现如图所示的错误,这是缺少了依赖包 liggl1-mesa-dev,在终端里安装即可。在终端输入sudo apt-get install libgl1-mesa-dev在询问是否继续时,键入’y’ 安装即可。安装后再编译就没有错误了。  ...

2018-12-03 22:11:59 686

原创 在64位Ubuntu 16.04系统里安装Qt 5.9.1

从网上下载Linux系统的64位Qt 5.9.1,下载的安装文件是   qt-opendource-linux-x64-5.9.1.run 打开命令终端,直接运行这个安装文件可能提示没有权限,因为下载的文件是没有执行权限的。使用chmod指令修改权限,然后运行此文件chmod a+x qt-opensource-linux-x64-5.9.1.run./qt-opensourc...

2018-12-03 22:04:23 3364 1

原创 PyQt5中QSqlQuery的exec和exec_函数的使用问题

PyQt5的QSqlQuery类有两个函数,exec()和exec_(),每种函数又有两种参数类型,其函数原型是: exec(self, queryStr) -> bool exec(self) -> bool exec_(self, queryStr) -> bool exec_(self) -> bool在PyQt5.11.2及其以后版本中,e...

2018-12-01 15:12:36 10291 2

原创 如何正确使用《Qt 5.9 C++开发指南》一书学习Qt C++编程

《Qt 5.9 C++开发指南》一书上市以来销售情况不错,受到广大读者的普遍认可,但是有少数读者觉得本书不适合于初学者,学起来有困难,甚至说本书逻辑混乱。如果不是恶意评价,可能就是学习方法不得当,所以本文就如何使用本书来学习做一个介绍。学习Qt GUI编程的重点是什么?学习Qt GUI编程的重点应该是构造UI界面后,使用窗体进行业务逻辑操作的编程,也就是各种界面组件类的接口函数的灵活使用,...

2018-11-23 12:03:15 10289 8

原创 Eric6的安装与基本设置

1. Eric6简介Python安装后自带的交互式开发环境IDLE功能比较弱,特别是代码提示和补全功能比较弱。Eric6是一个全功能的Python开发IDE,它本身就是用Python开发的,并且使用了PyQt。Eric6还集成了Scintilla编辑器控制,具有很强大的代码编辑、代码补全等功能。Eric是一个专业的Python项目管理的IDE,它使用了插件管理系统,可以通过安装插件来扩展E...

2018-11-15 22:20:13 15613

原创 MATLAB R2018a 时频分析新增函数

     最近研究时频分析,将MATLAB更新到 R2018a 版本,发现这个版本里新增了好几个函数。例如以前做EMD和HHT一般用第三方的工具箱,现在MATLAB R2018a自己的工具箱里就有了。      现在将整理的 MATLAB R2018a 时频分析工具箱里的函数列表贴出来,等后面研究了一些示例程序和使用心得的时候再发具体的技术贴。MATLAB R2018a时频分析功能函数函数名 功...

2018-06-30 23:28:29 4509 3

《Qt 5.9 C++开发指南》第2.4节 混合方式UI设计 实例程序samp2_4

演示如何通过Qt Designer可视化设计界面,如菜单栏、工具栏等,再通过代码在工具栏上添加SpinBox、ComboBox,在状态栏添加显示组件等,实现可视化与代码化的混合界面设计。博文链接 https://blog.csdn.net/HongAndYi/article/details/80328652

2018-05-19

Qt与Matlab混合编程中mwArray数组使用详解

演示Qt 5.9与Matlab 2017b混合编程中,用于传递数据的mwArray数组的使用方法,包括数组维数设置、传入数据、读取返回数据、字符串型数据等。博文地址 https://blog.csdn.net/HongAndYi/article/details/79477031

2018-05-15

《Qt 5.9 C++开始指南》2.1节 UI文件设计与运行机制 实例程序

通过一个主窗口继承于QWidget的简单应用程序,介绍了Qt项目文件的组成、各文件的作用,分析了Qt Designer设计的UI文件的结构,以及Qt如何根据可视化设计的UI文件创建界面。

2018-05-14

《Qt 5.9 C++开始指南》2.2节 可视化UI设计 实例程序

《Qt 5.9 C++开始指南》2.2节 可视化UI设计 实例程序,演示布局管理、信号与槽可视化设计、手工设置信号与槽关联等基本的UI可视化设计技术

2018-05-14

Qt 5.9 与 matlab 2017b 混合编程基本流程--Qt5.9项目源码

Qt 5.9与MATLAB 2017b混合编程的简单实例,包括Qt 5.9项目的全部源程序

2018-03-04

空空如也

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

TA关注的人

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