This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM2732: 启动时间确认以及如何在APP程序中获取运行时间

Part Number: AM2732


有两个问题请教各位:

1. 我这边运行基于AM2732的mmwave demo,串口打印的启动时间中SBL Total Time Taken,就是上电后到开始运行APP所使用的时间吗?

2. 请问下该如何在程序中获取运行的时间,比如计算运行一段程序或等待一个信号量所使用的时间?

  • 您好,

    请问下该如何在程序中获取运行的时间,比如计算运行一段程序或等待一个信号量所使用的时间?

    根我们可以使用以下两种方法来获取程序运行的时间:

    1.使用time模块计算程序运行时间

    import time
    
    start_time = time.time() # 获取程序开始时间
    
    # 在这里写下你的程序代码
    
    end_time = time.time() # 获取程序结束时间
    
    run_time = end_time - start_time # 计算程序运行时间
    
    print("程序运行时间为:", run_time, "秒")

    2.使用datetime模块计算程序运行时间

    import datetime
    
    start_time = datetime.datetime.now() # 获取程序开始时间
    
    # 在这里写下你的程序代码
    
    end_time = datetime.datetime.now() # 获取程序结束时间
    
    run_time = (end_time - start_time).seconds # 计算程序运行时间
    
    print("程序运行时间为:", run_time, "秒")

  • 就是上电后到开始运行APP所使用的时间吗?

    是的,您的理解是正确的。

  • 我这边参考SBL中的计时方式,在一进入main()函数就获取一下当前的时钟计数

    cycleCountStart = CycleCounterP_getCount32();

    再在以太网发包完成后再调用CycleCounterP_getCount32()记录当前时钟计数,最后用这两个值相减除以(SOC_getSelfCpuClk()/1000000)获取us计时,我这边实际的发包频率是1s,但是获取到的时间值却只增加了15ms,请问这是什么原因造成的?

  • 请问这是什么原因造成的?

    SOC_getSelfCpuClk()函数返回的CPU时钟频率不准确或者是 CycleCounterP_getCount32()函数获取的时钟计数不准确,导致计算出的时间不准确。
    要么就是发包的过程中存在延迟,导致实际发包频率低于预期,从而计算出的时间不准确。