大家好,今天小编关注到一个比较有意思的话题,就是关于stm32执行一次程序要多久的问题,于是小编就整理了3个相关介绍的解答,让我们一起看看吧。
STM32怎么把程序存储在外部存储器执行?
有一种方法(我自己验证过的):还是从片内flash启动,启动后将程序从外部SPI接口的flash(容量比较大,我用的是4M的片子)将程序拷贝到片外RAM,最后将代码重定位到片外的RAM上运行。
过程比较麻烦,而且需要有外部SPI接口的flash,和片外RAM,但好处也显而易见,那就是代码长度将不受片内flash的限制。
STM32上能跑Android吗?对存储器有什么要求呢?
Android是基于标准Linux内核的操作系统,大部分的应用程序都是基于JAVA虚拟机。
Android系统需要百兆以上的处理器和数十兆的RAM空间。
标准Linux需要处理器具有MMU(存储器管理单元)。
STM32满足不了这两点要求,所以STM32上是无法跑Android的。
不过在STM32上运行UCOS、FreeRTOS等轻量级机操作系统还是游刃有余的。
Stm32执行一条语句的时间怎么算?
如果定义为i uint32_t的话,在iar里面应该是三条汇编,既一条递加,一条比较,一条跳转。
一条指令为6个机器周期,所以总共时间应该是i*3*6个机器周期,如果系统时间为72mhz,一条机器周期为1/72m。
大概应该是这样。
到此,以上就是小编对于stm32程序运行的问题就介绍到这了,希望介绍的3点解答对大家有用。