本帖最后由 Aaron238 于 2011-3-14 16:06 编辑
只比较使用过的外部设备,如有不正确的地方请指正!谢谢
USART:
STM32 的USART 没有FIFO , NUC 的有64\16 BYTE FIFO
STM32 的USART 波特可以小数 在频率高的时候可以满足要求. NUC 的做不到!
SPI : STM32 的SPI 没有FIFO , NUC 的有 2 字 FIFO
I2C : STM32 支持 400K , NUC 可以支持 1M
GPIO : STM32 中断 只支持 16个 GPIO (不支持 不同端口,同位 IO 同时使用) , NUC 可以支持所有 GPIO
I2S : STM32 和 SPI 是公用的 不支持 同时 双向传输, NUC 的 I2S 是单独的 外设!
ADC : STM32 的 速度和精度 很高! NUC 的在 800K 的时候只能做到 10 BIT , 支持差分输入 ;
DAC : STM32 有两路输出 , NUC 没有DAC
DMA : STM32 无FIFO NUC 有一个字!
其它功能感觉差别不大 !
另外比较了下 STM32和 NUC 的 FLASH 运行速度!
测试代码
A = 1 ; B = 1 ;
while(1)
{
A = A + B ;
if( A == 10000000) //1千万次运算
{
A = 1 ;
// IO 输出测试时间
if(GPIOA->DOUT == 0XFFFF)GPIOA->DOUT = 0 ;
else GPIOA->DOUT = 0XFFFF ;
}
}
NUC FLASH 无等待时间
24MHZ STM32 FLASH_SetLatency = 0 T = 3.38S NUC 6.30S
48MHZ STM32 FLASH_SetLatency = 1 T = 2.95S NUC 3.15S
60MHZ 未测试 NUC T = 2.46S 目前NUC 最大 60M
72MHZ STM32 FLASH_SetLatency = 2 T = 2.39S NUC 2.10S 超频72M测试 |