DSP

DSP起步

2019-07-13 12:03发布

main()函数:只用来初始化,与VC中的区别是main函数并不是一个主线程中的函数。     DSP中的BIOS,其线程中的线程函数一般都会写成死循环,和单片机有点类似。   DM642工作的函数执行顺序: 1、  初始化一些对应型号DSP的信息。初始化DM642上面的寄存器。 函数为dm642init(); 包含了evmdm642_256M。没有包含evmdm642_vacapparamsPAL 2、  也是初始化需要使用的硬件外围的信息。 比如Vport口,需要使用VideoInit()VideoStart().初始化视频信息。 (视频输入两种方式: 一种Vport口,输入模拟信号,用SAA7115芯片采样成数字信号。此时需要VideoInit()VideoStart(). 一种是EMIF,用FPGADSP通信,此时就不再需要用VideoInit()VideoStart();) 函数为main() 3、  此时设置根据TSK-Task Manager中设置的线程优先级及线程函数来决定执行的函数的先后顺序。 函数为优先级高的函数 比如在我们的程序中有如下三个线程: NetWork_Main设置的优先级对应为5 task_Check_Command设置的优先级是-1 tskNetworkTx设置的优先级是-1 TSK_idle的优先级被系统固定为0 这里我们可以看到NetWork_Main线程中的函数肯定是优先执行。一般情况下会在NetWork_Main把优先级为-1的用函数TSK_setpri()更改为高于0的优先级。这样就可以执行原本是-1的线程中的函数,而不是被挂起。 这样做是为了,一开始就让NetWork_Main先执行,相当于先建立连接和做一些下面执行所需要的工作。       据贝贝童鞋的原话,CCS粉红 {MOD}的函数名是指自己写的函数,即自己添加的函数。而没有变 {MOD}的那些黑 {MOD}的函数名则是系统自带的函数,或者自带的库函数。