STM32F4+SRAM+FREERTOS+DMA+JPEG串口图传

功能描述:基于正点原子探索者开发板的串口图传,将十六进制图片通过串口传输到单片机并通过LCD显示(使用FREERTOS)

一、使用STM32cubeMX生成初始化代码

1、时钟配置:使用HSE时钟,并配置HCLK为最大工作时钟

2、打开调试线,并选择时基为TIM1

3、使能FREERTOS,选取CMSIS_V2,内存管理选择HEAP5,其他选项保持默认

4、配置SRAM选项和时序:

 5、配置LCD

 6、设置LCD背景灯开关和一个LED

7、配置串口,开启DMA选择循环模式,串口的接收引脚选择上拉输入,防止重复进入串口空闲中断,开启USART1全局中断

8、启用JPEG库,STM32F4只能使用软件解码

 

 9、DMA的初始化应该在串口的初始化之前

二、生成代码并编辑,这里使用VSCODE+OPENOCD调试,所以生成makefile工程

        1、首先重定向串口,可以使用printf输出到串口,在usart.c中编辑如图,并修改makefile

 

2、设定FREERTOS堆区域,HEAP5管理方式可以管理不连续的RAM空间,将SRAM交由FREERTOS管理,这样就可以使用更大的RAM空间:

4、在stm32f4xxx_it.c中添加一些自己的中断处理函数

3、主要代码编辑在freertos.c,其他代码上传在附件,并附加注释。

4、代码烧录到STM32开发板以后,复位打开串口调试助手,输出操作系统信息

 5、使用vscode的hexdump插件,采用16进制查看图片信息:

6、复制到将所有十六进制数据转换为一行,并复制到串口调试助手,点击发送,发送完毕以后,串口会输出图片的信息,并将图片显示在LCD屏幕上

 

代码链接:正点原子探索者+FREERTOS+SRAM+JPEG+LCD显示图片-硬件开发文档类资源-CSDN下载

版权声明:本文为CSDN博主「Crys\」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_33931911/article/details/122818334

生成海报
点赞 0

Crys

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

【零基础学STM32】CubeMx+HAL配置按键点灯实验

主要内容 上一篇文章中采用了EXTI中断的方式控制小灯的亮灭。其实也可以不采用中断,直接使用GPIO配置即可实现按键对应小灯的状态,且效果几乎相同。同样本次例程试验采用正点原子阿波罗STM32F429IGT6开发板

STM32 HAL库学习笔记-(SPI驱动ADXL345)

STM32 HAL库学习笔记-(SPI驱动ADXL345) 最近有项目需要需要用到ADXL345,网上转了一圈都是IIC驱动为主,正好最近在学习HAL库,所以本文将使用SPI驱动ADXL345 CU

STM32学习(3)

这周学习了STM32的一些外设的使用,包括ADC和DAC,I2C和SPI,以及相应的一些实验,例如外部中断实验,串口通信实验,SPI通信实验,掌握