高级会员 
  
	- 积分
 - 895
 
        - 金钱
 - 895 
 
       - 注册时间
 - 2017-7-28
 
      - 在线时间
 - 139 小时
 
 
 
 | 
 
5金钱 
首先抛出总的问题:如何掌握单片机片内资源的合理利用与资源分配? 
1、曾经做过一个作品,在stm32里,在一个子函数里加入多句printf函数,会大大影响主程序的运行,后来才知道是串口打印的代码太占用时间了,将printf函数注释掉发现程序更流畅了。 
2、最近在做一个摄像头拍摄,LCD同步刷新显示,高速舵机执行动作的一个作品,发现如果LCD刷新显示存在,会大大影响舵机执行的频率(舵机会响应卡顿),听别人说这是因为LCD屏幕刷新占用了大量资源,我用LED测试了一下(在有LCD刷新和没有刷新的情况下,主函数里同一位置有LED取反),发现LCD确实会影响主函数的时间资源(LED取反频率不同了)。 
那么想问问大神们,怎么才能知道这些需要注意的地方,难道只能通过每次的实践来记录?怎么计算每个程序块占用的时间、存储资源?另外哪些常用的功能函数能放进中断,哪些不能。怎么才能最大限度地减少单片机软件资源的浪费? 
 
或者说,决定了一个函数的执行时间的因素有什么?除了函数内本身的delay延时和变量的计算(从原始的循环嵌套写的delay受到启发for(i=110;i>=0;i--)......)哪些因素会影响一段/一条语句执行的时间? 
希望大家多多提出意见和自己的看法,大家一起讨论。 
 |   
 
 
 
 
 
 |