CCS3.0与DSP/BIOS 5.31关键笔记:平台设置与中断管理
需积分: 10 14 浏览量
更新于2024-09-14
收藏 39KB DOC 举报
本文档主要介绍了CCS3.3版本的DSP/BIOS 5.31的一些关键知识点,旨在帮助读者更好地理解和使用这个平台。以下内容详细阐述了几个核心概念:
1. **平台配置**:新建的platform项目必须保存为platforms.tci文件,而非文档中指定的特定名称,这与平台的创建和管理有关。
2. **线程与中断**:在DSP/BIOS中,线程和中断处理有严格的交互规则。软中断(如SWI)与任务(task)不同,软中断不能在中断上下文中使用SEM_PEND,因为中断环境不支持。中断函数的终止需要通过调用相应的启用和禁用函数,如HWI_enable和SWI_disable。
3. **中断优先级**:软中断的运行受其他中断打断,中断结束后会根据需要恢复执行,而任务则可以在循环中运行,并允许挂起。
4. **函数触发**:软中断通过特定函数如SWI_post来触发,不能调用以_MOD_F_开头的系统保留函数,如CLK_F_isr。
5. **命名规范**:用户需遵循命名约定,避免使用DSP/BIOS预定义的MOD_和MOD_F开头的变量和函数,以免冲突。
6. **对象使用**:在代码中引用DSP/BIOS模块的对象时,要用extern关键字声明,如extern LOG_objtrace。
7. **头文件**:必须包含<program>.cfg.h,这是DSP/BIOS自动生成的与程序相关的C头文件。
8. **对象管理**:静态定义的对象不能使用XXX_delete函数删除,理解对象生命周期和管理方式至关重要。
9. **创建函数**:大多数XXX_create函数接受XXX_Attrs作为属性参数,空参数时采用默认设置。
10. **主函数替代**:汇编文件中的_main函数可以替代C文件中的main(),以便更好地利用硬件资源或定制功能。
11. **链接器选项**:使用如–u_malloc的选项告诉连接器使用DSP/BIOS库的相应函数,而不是运行支持库。
12. **汇编指令**:.asg和.set在汇编语言中有相似作用,但.set定义的是常量,而.asg用于字符串替换。
13. **中断控制**:在main()函数中,可以独立控制某些中断,但不能全局启用所有中断,需区别对待。
14. **中断与main函数**:由于main()未开启中断,这里可以调整特定中断,但需注意中断处理的隔离。
本文档提供了一套关于CCS3.3 DSP/BIOS 5.31的实用指南,涵盖了平台配置、中断管理、函数调用、命名规则以及汇编语言使用等方面的关键信息。掌握这些知识点有助于在实际开发中高效利用和调试DSP/BIOS环境下的程序。
2020-05-11 上传
2020-05-05 上传
点击了解资源详情
2015-01-07 上传
2021-08-10 上传
2016-05-18 上传
2024-05-17 上传
ygl7311
- 粉丝: 3
- 资源: 5
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫