
专业版
STM32H743IIT6开发板
6.0k
0
0
20
简介
主控为STM32H743IIT6,同时挂载了以下模块:IIC EEPROM,SDMMC(TF卡),QSPI Nor Flash,256Mbit SDRAM,三个用户按键和led,引出所有引脚
简介:主控为STM32H743IIT6,同时挂载了以下模块:IIC EEPROM,SDMMC(TF卡),QSPI Nor Flash,256Mbit SDRAM,三个用户按键和led,引出所有引脚开源协议
:CC BY-SA 3.0
创建时间:2024-02-21 18:04:05更新时间:2025-02-06 09:16:38
描述
一、外设概述
- SDRAM:使用了华邦的W9825G6KH,带宽为16bit,大小为32MB,13根地址线,16根数据线,通过FMC扩展,V1版本受限于板子的大小和个人能力没有走等长线,不过还是可以跑,V2版本地址线和数据线分别做了等长,测试只跑了100MHz,更高的速度没有试过。
- FLASH:使用了华邦的W25Q128JVEIQ(也可以使用其他封装为WSON-8的W25Q系列),V1和V2版本均对数据线做了等长,能正常运行,但最高速度没有进行过测试。
- EEPROM:使用了杰盛维的JSM24C02(和AT24C是一样的,区别只是杰盛微有券),芯片的三条地址线全部接地了,即地址为0xA0和0xA1(这个外设的测试代码我不小心搞丢了,不过我之前测试过是能跑的)。
- SDMMC:为了开发板能同时使用所有板载外设不冲突,这里只能将SD卡挂载在SDMMC2上,同时卡槽连接了CD(插入检测引脚),不过CD脚当时因为没有认真看手存,没有加上拉电阻,因此若想使用插入检测,需要在内部配置引脚上拉(此外,未插入TF卡就进行初始化会导致运行失败,因此程序烧录没反应有可能是没有插卡导致的)。
- USB:USB接口用的是TYPE-C母座,两条cc脚均通过5.1k电阻下拉,c to c线也可以供电(碰到过一家type-c cc悬空的产品,内叫一个见了鬼了,我的c to c PD头和充电宝似乎供不了电,最后拆了才发现原因),板子没有带ch340,type-c口只做USB接口使用。
- Debug:板子引出了8个引脚(4根电源,4根数据)作为调试接口,四根数据线为SWD的SWDIO和SWCLK、以及USART1的PA9和PA10(设计时为了美观,没有加上引脚描述,各位如有需要记得在PCB上添加丝印)
- SPI LCD:板子上带有一个8P的fpc座作为spi lcd接口,适用于驱动型号ST7789的1.14寸lcd屏(分辨率为135*240,直插型),若想使用其他线序的spi屏幕,需要各位自己更改,此外,虽然这个屏幕还是很耐造(我电源反接过),但是各位还请先看清线序再使用
- MCU LCD:由于手上有两个565的8080并口屏幕(其中一个为驱动NT35310的3.5寸320x480原子屏),所以板载的接口为565接口,可以直插原子的3.5寸屏(别的大小的应该也可以,但是没试过),但是仅限于显示接口,触摸部分的接口是不一致的,无法直接使用,同时为了便于后期使用电容触摸,还预留了两个上拉电阻和开关,以便后期使用软件IIC,这部分的接口有两个,一个为排母,另一个是FPC座,在-O3优化下,使用FreeRTOS,FMC频率240MHz,全屏单色的刷新速度为170帧/秒(未使用DMA)
- DCMI接口:由于手上没有合适的摄像头,这部分设计没有经过验证
- 电源:由于开发板上外设众多,考虑到极端情况,使用了WD1117(1.35A/3.3V)作为线性稳压器,将5V降至3.3V,若没有同时用到这么多外设,可以使用普通的AMS1117(1A/3.3V)。同时因为H743价格不菲(好歹也要29左右),所以设计了3.3V和5V的单极性TVS,还用了两颗钽电容。H743的BAT引脚也通过一个bat54c接到了电池和3.3V上,电池座规格为CR1220
- 交互接口:提供了一颗三色LED和三个用户按键,led的三个颜色分别由三个引脚控制,三个按键均用电阻下拉(按下上升)
- GPIO拓展:引出了136个GPIO,加上16个GND和8个3V3,凑整了两个80p的排针(电源对称,上下插反了也没事)
二、注意事项
- PCB上没有Debug接口、fpc接口的线序说明,各位要么加上,要么对着原理图看,别接反了
- PCB支持DFU下载,上电后先按下BOOT键置1,再按下并松开RST键完成复位重启,然后点击STM32CubeProgrammer里USB模式下右边的刷新,出现USB设备后点击CONNECT,即可连接
- V1版本为10x8.4的两层板,支持免费打样;V2版本为12x8的两层板,不能免费(但是长了点好看),V1和V2版本略有区别,区别如下:(1)V1版本的参考电压VREF+没有直连VDDA,而是放置了一个0欧姆电阻作为跳线,V2版本则是将VREF+直连了VDDA (2)V1版本的lcd背光引脚为PB1,V2版本为PB5(与原子相同,显示部分可直接使用原子的例程),因此若想使用例程点亮V1版本的LCD,则需要将PB1用杜邦线连至3V3引脚,或是在程序内部进行修改,将LCD_BL设定为PB1 (3)V2版本总体走线更拟人些,且SDRAM、屏幕排母接口和flash数据线均做了等长,而V1作为验证板,只在flash做了等长,走线也更抽象点
- SD卡例程中会使用FATFS向卡内写入文件,若没能写入,则需要先将tf卡格式化为FAT格式,另,cd(插入检测)引脚若要使用记得上拉,未插入别初始化
- 提供的BOM表内V1版本有些许不准,V2版本的BOM表比较准,但也仅供参考,还是需要每一件进行核对后再行购买
- H743IIT6有两个版本,一个为v,一个为y。v版本最高支持到480MHz,y只支持到400M,可以通过丝印最后一位辨别版本,Cubemx的默认配置最高为400M,若要使用480M,则需要在System Core的RCC中,将System Parameters里的Product revision改为rev.V,再将上方的Power Regulator Voltage Scale改为Scale 0即可,丝印判断如图所示
三、例程说明
由于个人能力有限,仅能提供以下例程,以下例程均使用STM32CubeMx和keil5基于hal库编写,其中并口lcd驱动移植了原子的,spi lcd驱动移植了某宝boring的
- DAC_TEST:在PA4脚输出一个循环变化的电压
- FreeRTOS:使用了两个任务,一个负责连续红蓝刷屏,另一个负责每1秒记录并输出帧数(使用的屏幕为并口)
- FLASH:使用QSPI对FLASH进行读写测试,用串口(PA9,PA10)打印结果
- SDRAM:使用FMC对SDRAM进行读写测试,用串口(PA9,PA10)打印结果
- LCD:使用SPI点亮LCD
- USART:用QSPI读写FLASH,同时点亮spi lcd,并使用内部adc接口采集计算并输出芯片内部结温
- lvgl:用FMC驱动并口LCD跑一个简单的LVGL界面(直接用的原子3.5寸)
- SD_T:用FATFS通过SDIO操作tf卡,写入两个文件
四、外观
设计图

BOM


添加到专辑
0
0
分享
侵权投诉
评论