摘要:
TIM是Timer的简写,是STM32的一种外设 定时器分为高级定时器、通用定时器、基本定时器。 通用定时器框图 这里只说明通用定时器的框图: 从图中可以看出使用内部时钟CK_INT作为定时器时钟输入,CK_PSC是输入预分频器PSC的时钟,CK_PSC经过PSC分频后得到定时器计数用的时钟CK_C 阅读全文
摘要:
STM32F103C8T6提供了USART外设实现设备间的串行通信。USART数据帧格式参照:https://www.cnblogs.com/qianxiaohan/p/18264171 USART框图: RTS、CTS是硬件控制流的引脚,在实际中很少使用RTS、CTS。可以将此框图简化: USAR 阅读全文
摘要:
问题及解决方案 当用USB在电脑上插拔,自制的简易串口助手中串口名称不会实时更新,因此为了实现更新串口名,这里记录一下实现过程 解决方案:将Windows的设备管理消息发送给QT进行处理(需要包含windows.h),自定义子类继承QWidget、QAbstractNativeEventFilter 阅读全文
摘要:
STM32F10x时钟配置 根据参考手册可知STM32F10x系列的时钟树如下: 图中给了说明了HSE、HSI、LSI、LSE的全称。 HSE(The high speed external clock signal),高速外部时钟信号,需要4-16MHz的外部振荡器 HSI(The high sp 阅读全文
摘要:
STM32延时函数(查询定时器实现) 之前在STM32中使用延时函数的时候,都是直接使用,并不了解其中的原理。经过查阅资料,这里记录一下大致原理。 首先直接贴出来延时函数delay.c,通过查询的SysTick Timer的STK_CTRL寄存器的计数标志位COUNTFLAG方式实现,其中SysTi 阅读全文
摘要:
简易串口助手界面设计 自定义了QWidget的派生类SerialPortWidget,其界面设计大致如下: 效果图: 项目结构 serial_port └─│ main.cpp //主程序 │ mainwindow.cpp //主窗口源文件和头文件 │ mainwindow.h │ myintval 阅读全文
摘要:
串行通信有关概念 串口,通常指的是串行通信接口。 串行通信(Serial Communication) 串行通信接口 通用异步收发器(Universal Asynchronous Receiver/Transmitter: UART),是一种硬件接口,通常称串口 通用同步/异步收发器(Univers 阅读全文
摘要:
需求分析 QTextEdit实现输入十六进制数,如果输入了其他的字符则弹出提示框,并删除该字符。大致思路:每当输入一个字符时,QTextEdit会发出信号void textChanged(),利用该信号创建一个与之相连接的槽函数void validateHEX(),每发出一次信号触发一次槽函数,槽函 阅读全文
摘要:
QLineEdit限定输入整数时遇到的问题 问题 QValidator常常用于判断数据的合法性,QLineEdit,QSpinBox,QComboBox中经常使用该类。 QLineEdit要限制输入整数,那么添加语句lineEdit->setValidator(new QIntValidator(1 阅读全文
摘要:
QT中的moc、uic、rcc 在学习QT的过程中接触到了moc、uic、rcc这几个名词 moc(Meta-Object Compiler),元对象编译器,用于处理QT拓展的C++语法 uic(User Interface Compiler),用户界面编译器,将根据.ui文件生成相应的.h文件,例 阅读全文