TKM32F499¶
Xin简介¶
Note
TKM32F499 极有可能是 STM32F429 的核心设计,阉割内置的Flash和SRAM,外挂8M的32bit sdram,程序存在外置spi flash上(启动时拷贝到sdram执行,不再支持从QSPI XIP启动),所以启动流程跟ARM9和CortexA系列比较相似。
规格参数¶
基本参数¶
发布时间:
官方价格:¥30
制程工艺:
供货周期:
处理性能:
封装规格:LQFP128(0.4mm pitch)
运行环境:-40°C to 85°C/125°C
RAM容量:8MB (SDRAM)
Flash容量:
Note
TKM32F499 是0.4 pitch的LQFP128,体积跟0.5 pitch的LQFP100一样。
特征参数¶
240 MHz Cortex-M4 ,FPU,可支持emWin中FPU部分的高级功能;
自主研发的TK80接口,向下兼容老式8080接口,支持1~24位,可以支持1600万色的液晶,从此显示不再失真;
采用USB下载程序,一根数据线就能下载程序,从此告别各种LINK;
内建电阻触摸IP核,直接驱动电阻触摸,不用再外加XPT2046芯片,省芯又省心;
TF卡采用硬件SDIO模式,配合高效的FATFS文件系统,比速度远远高于模拟IO+SPI的方式;
包含 DMA1 和 DMA2,每个 DMA 控制器有 8 个通道;
模拟性能¶
6ch 12-bit ADC SAR 1MSPS
芯片架构¶
功耗参数¶
供电电压:2.0 to 3.6 V
TK80接口¶
向下兼容 intel 8080 接口
AHB2.0 总线接口
支持读写命令和读写数据操作
读(数据或命令)支持直接读和中断/查询读两种模式
支持盲读
支持内存区域顺序读取数据操作
支持区域填充操作
支持 DMA(仅支持写)
CS_n 支持硬件自动生成和软件生成两种方式
支持读传输完成和写传输完成中断
双向口半双工数据传输
LCD-TFT¶
LTDC提供了24位的并行RGB,传送的所有信号可直接与最高1024x600分辨率的LCD和TFT面板接口,支持RGB888(1600万色),向下兼容RGB666、565、555
VGA 输出, 支持刷新率不低于 20Hz: 640x480, 800x600
自主研发的TK80接口,向下兼容老式8080接口,支持1~24位,可以支持1600万色的液晶,从此显示不再失真;
两个带有专用 FIFO 的显示层(FIFO 深度 480x64)
支持标准水平/垂直同步数字视频格式,输出数字视频时序可调
Xin选择¶
品牌对比¶
F1C内置的DRAM是DDR1,带宽比TK499的SDRAM应该要强不少。
型号对比¶
版本对比¶
Xin应用¶
Xin总结¶
要点提示¶
首先TK499的Boot脚固定拉低,此时的启动方式对应STM32的内置Bootloader启动模式,即从内部固化的ROM中启动,随后初始化SDRAM,并将QSPI中的程序拷贝至SDRAM,然后跳转到SDRAM中执行。
官方推荐的下载方式是USB drag-and-drop,为此提供了一个二级bootloader。在复位时按住PA13,此时进入一级Bootloader即内置固化的BL,用来烧录二级BL至QSPI Flash。已经烧录二级BL后在复位时按住PA11将进入二级BL,此时就可以拖拽下载主程序。
入坑提示¶
相关资源基本上是粗劣复制MM32和STM32, 具体对比型号是MM32F103,STM32是STM32F429,总结一下就是大部分外设理论上都可以直接copy MM32F103的库文件,TIM稍微改改就能用,I2C、BKP只需小改,RCC需要对照F429和手册改动,SPI需要对着手册改动,LCD/TK80应该是自己家的IP,这两个和I2S/QSPI还只能依靠官方库
Tiky官方提供的库就是MM32F103改出来的,全是MM32的库函数,官方就改了几个函数将就能跑起来就放那了,一堆函数不能用,官方支持力度小。
原版F429跑在Flash里配合art加速能拿到3以上的Coremark/MHz,没有art加速的F303能拿到2.5左右的分数,同样运行在SDRAM的F1C100S就算arm9内核也能到2以上。没有Cache的情况下在SDRAM中运行性能损失是真的大,-Oz比-O3/LTO的性能能高出一倍说明SDRAM带宽的瓶颈很明显,在平时使用中如果接RGB屏的话,带宽还会被占用一大截,性能下降还会更明显。另外提供个之前测过的数据,NXP KV58,240MHz的CortexM7,Flash频率只有20-25MHz,开启Cache的情况下能拿到5 Coremark/MHz,关闭Cache分数暴跌到1.5。
同时测了下TK499的功耗,默认GPIO工程,移植Coremark,没有开启其他外设,240MHz空载大概115ma,运行Coremark时125ma;超频到312MHz空载128ma,满载145ma。运行时芯片手摸上去温热,估计30几度左右。