STM32
文章平均质量分 61
memoff
Hi
展开
-
STM32H7 DAC2+BDMA
STM32H7 DAC2+BDMA原创 2022-10-31 13:38:35 · 866 阅读 · 1 评论 -
STM32F3/F4基于DSP的FIR滤波器应用
网上看了一些资料,有点乱和杂,这里记录一下过程。首先勾选DSP,选择Library或者Source都可以。增加预定义ARM_MATH_CM4,__CC_ARM,ARM_MATH_MATRIX_CHECK,ARM_MATH_ROUNDING3. 增加包含头文件目录4. 打开Matlab,输入fdatool命令,进行FIR滤波器设计具体设计选哪种滤波器,多少阶,采样率,截止频率完全根据自己的要求设计,完成后点Generate C header 来输出滤波器参数。5. STM32 代码原创 2021-04-20 22:24:52 · 4535 阅读 · 6 评论 -
STM32F429 LTDC驱动RGB屏幕
429有很多特点,支持SDRAM, LTDC, TouchGFX等,手上正好有几块RGB屏幕,加之TouchGFX至少需要LTDC或是DSI的方式驱动(并口和FSMC方式还不可行),所以一定要试试LTDC。CubeMX配置,按照屏幕的类型选择是18位还是24位的接口类型,值得注意的是如果你选的是18位的接口,颜色是通过R[7:2],G[7:2],B[7:2] 这几个引脚连接的而不是[5:0],...原创 2020-01-18 15:48:39 · 6025 阅读 · 1 评论 -
STM32F429驱动外部SDRAM
STM32F429的一个很大优势就是可以直接驱动SDRAM,这样一下子就可以外扩可观的运存,很诱惑。这里用到的SDRAM 为W9825G6KH, 256Mbit, 32MByte配置CubeMX这里不展开这里面的数值的具体计算过程,主要是按照手册来算的,感兴趣的可以网上寻找,有很多相关的资料。SDRAM 初始化,SDRAM不像SRAM配置好了就可以用,他需要初始化#include ...原创 2020-01-18 15:29:43 · 1966 阅读 · 0 评论 -
STM32F429 初试TouchGFX
自制的429开发板到了最后的一个目标-TouchGFX随着新版本的发布,TouchGFX和CubeMX之间的集成越来越好了,操作了越来越容易了。这里429需要用到SDRAM+LTDC+FreeRTOS+SPI(触屏)以及LCD液晶屏的驱动,这些自己先搞定,也不难,都搞定了就可以到TouchGFX的配置了。FreeRTOS里面设置开启DMA2D以及LTDC的全局中断Cubemx配置T...原创 2020-01-18 15:06:23 · 3014 阅读 · 0 评论 -
STM32F407 驱动外部SRAM
需要驱动的SRAM型号为IS61LV25616AL,性价比比51216的高很多配置Cubemx这几个时序比较关键,可以按照手册来计算,我用下来这几个数值比较合适。然后就没有然后了,生成代码就可以用了。。。检查SRAM内容是否正确uint8_t bsp_TestExtSRAM(void){ uint32_t i; uint32_t *pSRAM; uint8_t *pByte...原创 2020-01-13 18:58:36 · 2385 阅读 · 0 评论 -
STM32F407 FSMC 驱动液晶显示
前端时间对液晶屏很感兴趣,驱动了好多屏,这里主要讲下用FSMC方式驱动16位并口屏幕的方法,因为STM32 FSMC功能的限制,最多只能驱动16位并口,18位,24位的可以用端口模拟的方式或者牺牲颜色数量用16位FSMC驱动。配置Cubemx注意选择的A6用于区分指令和数据和后面的地址计算有关系, 时序的话一开始可以用默认的(最大值)调通了再慢慢改小,看看极限是多少。自己编写TFT的驱动...原创 2020-01-13 16:55:01 · 3373 阅读 · 0 评论 -
STM32 移植 STemwin(Touch)
上篇讲到了STemwin的基本移植步骤,这里再讲下Touch的支持。驱动好自己的触摸屏,准备好测量X,Y 返回为ADC值的函数。这个一般也不难准备好GUI_TOUCH_X.C文件,这里比较坑的就是这个文件没有包含在STemwin的包里面(至少5.32里面没有),需要自己写一个,其实内容很简单,如下#include "GUI.h"#include "XPT2046.h"void GU...原创 2020-01-12 21:09:53 · 1625 阅读 · 0 评论 -
STM32 移植 STemwin
移植STemwin平台STM32F429+LTDC+SDRAM其实不难就是给自己做个记录,年纪大了记性不好。。。自己先驱动好TFTLCD, LTDC, SDRAM等Cubemx配置增大堆栈大小,不然容易出错需要添加以下文件进行配置挨个文件配置GUIConf.c里面主要修改ram大小,酌情而定,不宜太大。#define GUI_NUMBYTES (1024)...原创 2020-01-11 09:54:01 · 1171 阅读 · 0 评论 -
STM32F429 自制开发板
上次讲到自制了F407开发板,用下来都不错,但是有个遗憾就是407没有LTDC,最近一直在研究液晶屏,着了迷一样,研究了一圈,觉得F429是最好的选择,网上的开发板价格都较贵,关键是好多都没有引出LTDC接口,决定自制一块开发板自带LTDC+SDRAM。原理图F429的原理图不像407,网上的资源不多,基本上和F407的相类似,LTDC和SDRAM的引脚就要当心了,一定要按照CUBEMAX...原创 2020-01-10 10:03:57 · 1039 阅读 · 0 评论 -
STM32F407 自制开发板
现在PCB打样的价格真是一低再低。决定把之前自己热转印做的PCB板再改改,打样,做一块像样的开发板。主要包含这些接口 (USB, SRAM, TFT FSMC, SD, NRF24L01,SPI FLASH),其他的接口基本上用不上就没有接。原理图网上有很多类似的原理图,大同小异,没什么好讲的,倒是要注意F407芯片的电源引脚的连接PCB 布线其实布线是很有讲究的,特别是SRAM...原创 2020-01-09 11:59:51 · 1697 阅读 · 0 评论 -
STM32 TIM触发ADC 定时采样-笔记
用TIM3的update触发adc,只需勾选Internal clock就可以了ADC设置,关键是选TIM3 TRIGGER OUTTIM3 设置时间间隔然后关键选Update event程序代码记得开启TIM3 HAL_ADCEx_Calibration_Start(&hadc1); //STM32F1 HAL_TIM_Base_Start(&htim3);...原创 2018-11-24 13:33:16 · 18415 阅读 · 4 评论 -
基于AD9833 的DDS信号发生器
以前用ICL8038 DIY过信号发生器,效果还是不错的,电路简单,输出的波形还算可靠,就是频率不是很稳定,受电容影响较大,网上顺手5块钱买了一块AD9833,想试试看用作DDS信号发生器,AD9833是最大25MSPS(基于25M晶振)电路上用STM32F030+TM1650+AD9833,很简单,通讯上用SPI,要注意的几点AD9833是密脚的MSOP封装(间距0.5mm)一开始封装搞错...原创 2018-11-12 13:14:56 · 9845 阅读 · 6 评论 -
TM1650驱动数码管以及按键扫描
TM1650真是一款性价比很高的芯片,一个芯片就能够驱动4位8段数码管以及按键扫描。经过和STM32F030芯片的实验,达到了所有预期的效果。和以往的74HC595芯片对比,节省芯片一片,以往需要两片595芯片才能驱动4位数码管,闪烁控制,亮度控制完全通过TM1650控制,不需额外编程,方便许多。但是有一些注意点:TM1650只能驱动共阴数码管,有网友试过驱动共阳数码管,没法驱动。按键扫...原创 2018-11-06 10:34:14 · 25715 阅读 · 8 评论 -
STM32 f407 3ADC 交替 实现 7.2Msps 采样率
想用CUBE配置然后用HAL库实现F407 3ADC交替采样实现7.2MSPS采样率,网上查了很多资料,3adc交替采样的资料很少,有用寄存器配置的,但是用HAL库的基本上没有找到,只能自己摸索。首先是Pinout,值得注意的是3ADC 交替通常用到一样的通道,我用的是0通道。然后是时钟的配置ADC最快时钟是36MHz,所以系统最快只能在144MHz,要做相应的更改然后是ADC设置,这里...原创 2018-10-19 09:24:48 · 6516 阅读 · 9 评论