1,建立一个项目,打开CCS的dsp端编译器 Project->new 取名为gxv3140。
2,创建BIOS配置文件,选择File→New→DSP/BIOS Config,在弹出窗口中选中evmDM6446,保存为gxv3140.tcf,并把它加入工程中。
3,创建一个包含main()函数的源文件编译一下会自动产生以下四个文件:
gxv3140cfg.h 声明配置文件中定义的一些对象,如:LOG_Obj trace; TSK_Obj TSK_task1;
gxv3140cfg.cmd
gxv3140cfg.s62 汇编语言源文件
gxv3140cfg_c.c 包含#include "gxv3140cfg.h"
gxv3140.cdb 保存配置设置
4,修个配置文件,主要是三个地方要修个:1 内存分布,2 任务建立,3 定时器设置。其他的都可以不动,使用默认配置
1,配置内存
右键点击"MEM-Memory Section Manager",再点击"Insert MEM"添加你要的内存,我就把DDR添加进去吧。
取名为“DDR”,一个内存就出来了,右键点击"DDR",再点击"properties",base填0x80000000吧,len选项为长度,随便填个“0x8000000”吧
添加其他内存方法和上面一样。
2,任务建立
右键点击"TSK-Task Manager",再点击"Insert TSK"添加你的任务,取名为TSK_task0,
再右键点击"TSK_task0",再点击"Properties"添加你的任务函数名_my_task0(函数名前面多加个下划线,规定),再为你的任务选个优先级吧。
OK,一个任务建成,等一下在源文件中实现这个函数就可以,按上面的方法在建个任务,TSK_task1.函数名:_my_task1
3 定时器设置
这块没配置,系统不会工作,你的任务不会切换。
右键点击"CLK-Clock Manager",再点击"Properties ",选“Timer 1”,取消"specify input clock rate",选中“Reset Timer TIMMODE”即可,其他的默认。
5,源文件实现3个函数:main(),my_task0(),my_task1().
main() 系统启动前调用一起,里面可以放一些初始化的东西。
my_task0() 实现如下
{
while(1){
printf("task0
")
TSK_sleep(50);
}
}
my_task1()的实现就不用说了,好了,编译运行下,看看多线程是怎么玩的。