daplink源码中,main文件在main_interface.c文件中,整个工程貌似只创建了main_task一个任务。
而main_task任务里,while循环里,主要是等待7个任务通知/消息。
53 while (1) {
1 flags = osThreadFlagsWait(FLAGS_MAIN_RESET // Put target in reset state
2 | FLAGS_MAIN_90MS // 90mS tick
3 | FLAGS_MAIN_30MS // 30mS tick
4 | FLAGS_MAIN_POWERDOWN // Power down interface
5 | FLAGS_MAIN_DISABLEDEBUG // Disable target debug
6 | FLAGS_MAIN_PROC_USB // process usb events
7 | FLAGS_MAIN_CDC_EVENT // cdc event
8 , osFlagsWaitAny
9 , osWaitForever);
reset好像是让目标板复位的;
90MS是处理usb是否连接的;
30ms是处理led灯闪烁的;
power_down好像是板子断电相关的;
disabledebug好像是设置目标退出debug状态;
proc_usb是被usb中断函数调用的;
cdc_event好像是usb转串口相关。
那么daplink的主要功能,烧录程序及硬件仿真,是在哪里完成的呢?
最近编辑记录 Gentlepig (2024-07-31 08:45:56)
离线
明白些了,谢谢。
离线