STM32在Keil调试时能成功运行但下载就运行不了的问题 问题到这里就解决了,我虽然没有使用 printf() ,但是包含了C库 stdio.h 并且没有勾选 Use MicroLIB ,导致标准C库被调用,程序卡死在半主机模式(也就是 BKPT 软件断点等待主机调试端响应)下。解决方法也很简单,在项目配置中勾选。然后重新编译(Rebuild)即可。
keil软件仿真F429芯片的逻辑分析仪添加引脚出现unknown signal 错误 例如:在验证pwm的互补波形时想要看一下他们的波形,但是一直添加不上引脚,显示unknown signal,试了各种方法还是不行。
STM32物联网实战开发(6)——PWM驱动LED灯 配置PWM输出通道时,Pulse设置的就是CCR的值,当CNT计数值小于CRR时,会输出一个有效电平,是高电平有效还是低电平有效要看CH Polarity(CH通道极性)选择,如果选择为高电平,则该有效电平就是高电平,如果选择低电平则该有效电平就是低电平;因为外部中断或者定时器中断都是在中断处理过程中被HAL_Delay的中断打断的,说明HAL_Delay的中断优先级是比这两者高的,不然HAL_Delay的延时中断打断不了外部中断或者定时器中断,就没有延时的作用。
STM32物联网实战开发(5)——外部中断 当检测到机械按键被按下时,就会在对应的32单片机的引脚输出低电平,所以在程序中只需将引脚配置为外部中断下降沿检测,检测引脚电平状态就知道哪个机械按键被按下了。这里需要注意的是因为STM32F4的开发板中机械按键没有接上拉电阻,那么我们就需要在软件中配置上拉模式。在外部中断回调函数中改变按键的标志位。系统运行函数中不断检测按键状态。
STM32物联网实战开发(4)——基本定时器 综上所述,我们明白啦,利用了HAL库,已经帮我们生成了大部分的代码,我们只需要定义一个结构体(一个变量,一个函数指针(用来打开定时器))。后期只需要调用结构体就可实现定时的功能,最后我们还需要写一个回调函数来实现我们想要实现的功能,因为hal中已经构建了一个弱函数,我们只需要重新构建一个同名的函数即可(定时器中断函数大功告成)。
STM32物联网实战开发(3)——串口打印 提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
STM32物联网实战开发(2)——回调函数 在第一篇博客中提到了全新的程序框架,我们会大量的使用,其中包括的应用。:就是一个通过调用的函数。如果你把函数的地址传递给中间函数的形参,中间函数通过函数指针调用其所指向的函数时,我们就说这是回调函数。:函数Fun1调用函数Fun2,同时将函数Fun3作为形参传递给Fun2,此时,Fun1为应用层函数,Fun2为中间层函数,Fun3为回调函数,回调函数是一种说法而已。当Fun2被调用时,Fun3也会被接着调用。利于代码结构,将代码分为应用层,中间层,硬件驱动层,彼此独立,方便程序的编辑,阅读,修改与移植;
Qt中的窗口类 我们在通过 Qt 向导窗口基于窗口的应用程序的项目过程中倒数第二步让我们选择跟随项目创建的第一个窗口的基类我们在通过 Qt 向导窗口基于窗口的应用程序的项目过程中倒数第二步让我们选择跟随项目创建的第一个窗口的基类,下拉菜单中有三个选项,分别为: QMainWindow、QDialog、QWidget 如下图:(1)常用的窗口类有 3 个在创建 Qt 窗口的时候,需要让自己的窗口类继承上述三个窗口类的其中一个(2)QWidget所有窗口类的基类Qt 中的控件 (按钮,输入框...
STM32中断系统 一. 中断系统(1)中断 :在主程序运行过程中,出现特定的中断触发条件,使得CPU暂停当前正在运行的程序,而去处理中断程序,完成后,又返回原来被暂停的位置继续工作(2)中断优先 :当有多个中断开始时,CPU会根据事情的轻重响应更加紧急的中断中断嵌套 :一个中断正常进行,又来一个更高级的中断,会先去做刚来的高级的中断,然后依次返回(3)一般中断函数都是在一个子函数里的,这个函数不需要我们调用,当中断来临时,自动由硬件调用这个函数...
STM32入门学习笔记 目录文章目录【1-1】、定时器定时中断&定时器外部时钟编辑1.定时器初始化定时器定时1秒2.定时器中断总结以上就是今天要讲的内容,本文仅仅简单介绍了定时器定时中断的使用和定时器外部时钟的使用。【1-1】、定时器定时中断&定时器外部时钟1.定时器初始化代码如下:void Timer_Init(void){ TIM_TimeBaseInitTy...
Opencv4.0学习记录(Day22 视频文件处理和保存) 视频处理与保存视频的属性,SD(标清),HD(高清),UHD(超清),蓝光。如何读取视频文件,以及读取视频文件的属性,衡量视频处理指标:FPS。保存视频时的编码格式。保存视频的实际size和create的size大小保持一致。void QuickDemo::video_demo(Mat &image) { //VideoCapture capture(0);//调用摄像头 VideoCapture capture("E:/images/01.mp4");//调用视频文件...