自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 TouchGFX学习笔记3:标签按钮、图标按钮、开关按钮和单选按钮

在Button的基础上添加文本显示,可以提示该按钮的功能,例如在按钮上显示开灯/关灯字样。

2024-02-01 22:16:39 537 2

原创 TouchGFX学习笔记2:SPI接口屏幕移植

打开工程目录,找到如图的文件并打开,选择一个合适的模板,这里我选择空的模板,在页面中添加一张Image,用于验证TouchGFX移植是否成功,点击F4生成代码,再打开keil工程进行编译。首先指定在rect中绘制代码,在LCD上开启一个窗口,然后将数据逐一写入即可,注意位选和数据端口使能,这里就完成了TouchGFX图像绘制的功能。然后按照下图进行配置,先开启CRC(touchgfx运行需要),再根据自己的需求进行配置,因为用的是SPI接口的屏幕,接口需要自定义,分辨率240*240,单缓冲,无操作系统。

2024-01-23 20:48:10 2335 1

原创 TouchGFX学习笔记1:Button按钮控件

无意间在网上看到很多大佬在使用TouchGFX这个GUI,看着很炫酷,想试试效果怎么样,记录一下学习过程。以上就是今天要讲的内容,本文仅仅简单介绍了Button的使用,Button还有很多的交互,后面讲解其他按钮控件时再做演示。

2024-01-15 21:39:52 648

原创 STM32 CubeMX学习实验14:定时器编码模式Encoder Mode

关于编码器的介绍很多博主有介绍,这里就不再多说,直接上工程配置。1.选择定时器2作为编码定时器,直接下拉到Combined Channels选择Encoder Mode。预分频系数和重装载值可以先设置为0和4294967295(最大),如果发现编码器输出值不对可以适当修改预分频系数。打开串口调试助手,旋转编码器,观察编码值和旋转方向,可以使用定时器定时读取编码值可以计算旋转速度,可以应用于编码电机等。先开启定时器编码器通道(双通道),在while中获取旋转方向和编码值,通过printf输出到串口调试助手。

2023-11-27 19:50:09 757

原创 STM32 CubeMX学习实验13:定时器输入捕获获取PWM频率

使用定时器5作为输入捕获定时器,将通道1(PA0)设置为输入捕获,设置预分频器和计数值,这里设置为1us计数一次,最大可以捕获周期为0xFFFFFFFFus的PWM,所以一般不需要考虑溢出的问题,使能自动重装载。使能定时器中断,选择合适的优先级,将引脚设置下拉,保证没有信号输入时保持电压的稳定,最大输出速度选择高。在这里在这里可以选择任意定时器输出PWM,便于检验输入捕获的准确性,将TIM14通道1设置为PWM输出,频率为100Hz,其他默认即可。

2023-11-15 19:19:54 1974 2

原创 STM32 CubeMX学习实验12:DAC数模转换

选择DAC通道1,不使用触发方式,不使用输出缓冲,查看输出引脚。

2023-11-02 19:31:11 376 1

原创 STM32 CubeMX学习实验11:ADC-DMA多通道采集

开启ADC,选择任意两个通道,使能扫描模式和连续转换模式,只需要开启一次传输,转换后不需要手动开启转换,使能DMA传输,根据需要分配转换顺序和转换时间。打开DMA Settings选项,添加DMA对ADC1数据进行传输,选择循环模式,不需要手动开启下一次传输,其他选项默认即可。

2023-11-01 18:46:13 836 1

原创 STM32 CubeMX学习实验10:ADC多通道采集和内部温度传感器读取

开启ADC1的三个通道(IN0-PA0、IN13-PC3、temperature温度转换),因为要轮询转换三个通道,需要使能扫描转换模式,配置各通道的参数,这里一次是CH0、CH13、温度转换,代码中依次转换,记住自己的配置。

2023-10-31 19:42:38 1188 1

原创 STM32 CubeMX学习实验9:ADC读取电压值

打开工程,在Analog中选择ADC1,选择ADC通道(PC3),配置信息如下:为了保证ADC转换的准确度,ADC时钟不能超过36MHz,在Clock Prescaler选项中只能选择4分频(84/4=21)及以上,这里选择4分频。分辨率选择12位精度(0-4095),采样时间15个ADC时钟周期。数据对齐方式选择右对齐,如果选择左对齐的方式,需要将得到的数据向右移4位才能得到正确的数据,具体为什么这样可以参考ADC数据存储:左对齐和右对齐 | 风逍遥 (hyxhe.com)

2023-10-30 19:29:48 346 1

原创 STM32 CubeMX学习实验8:USART-DMA接收不定长度字节的数据

该函数需要放到串口中断回调中进行判断,在stm32f4xx_it.c中找到USART1_IRQHandler函数,将自定义的处理函数放到USART1_IRQHandler里。开启USART1,打开串口中断,打开DMA request,选择USART1_RX,模式选择Normal,其他选项默认即可。编译过程可能会出现标识符hdma_usart1_rx未定义的错误,需要在usart.h中添加extern关键字进行声明。2.新建一个.c/.h文件,在.c文件中自定义一个空闲中断处理函数,用于判断数据传输结束。

2023-10-24 18:32:30 832

原创 STM32 CubeMX学习实验7:USART printf打印和串口接收特定数据包

学过C语言的同学都知道printf函数,是打开C语言大门的一个函数,如何在stm32上使用该函数呢!要在stm32上使用printf函数,需要对printf进行重定向,把串口发送的数据通过printf打印出来对printf重定向后,避免使用半主机模式二导致库函数程序无法运行,使用微库Micro LIB可以避免半主机模式,在keil中点击Options for Target...,勾选Use Micro LIB,点击OK即可。

2023-10-23 19:08:00 2242

原创 STM32 CubeMX学习实验6:USART串口通信

【代码】STM32 CubeMX学习实验6:USART串口通信。

2023-10-21 18:47:25 259 2

原创 STM32 CubeMX学习实验5:一定频率PWM输出

三、下载验证根据占空比计算公式,当CCR值为100时占空比为10%(PWM模式1、输出极性为高的情况下)。当PWM为模式2、输出极性为高的情况下,PWM占空比应该为90%。关于PWM模式1和模式2可参考http://blog.csdn.net/STM_32starter/article/details/53749735的详细介绍。

2023-10-20 18:28:27 121 1

原创 STM32 CubeMX学习实验4:定时器中断

【代码】STM32 CubeMX学习实验4:定时器中断。

2023-10-19 18:12:43 228

原创 STM32 CubeMX学习实验3:外部中断

【代码】STM32 CubeMX学习实验3:外部中断。

2023-10-19 09:32:03 203

原创 STM32 CubeMX学习实验2:按键输入

【代码】STM32 CubeMX学习实验2:按键输入。

2023-10-17 18:15:40 232

原创 STM32 CubeMX学习实验1:点亮led

点击右上角的generate code按钮, 在弹出的对话框中点击Open Project打开生成的新项目。

2023-10-15 19:24:36 116 1

空空如也

空空如也

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

TA关注的人

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