DSP数字图像处理系统设计上课讲义
- 格式:doc
- 大小:858.00 KB
- 文档页数:27
目录一、设计目的及要求 (2)二、设计所需的软件介绍 (2)三、设计原理 (3)四、程序流程图 (6)五、设计程序 (7)六、处理后的效果展示 (11)七、课程设计心得 (15)八、参考文献 (16)一、设计目的及要求:目的:1、掌握CCStudio3.3的安装和配置;2、掌握数字图像处理的原理、基本算法和各种图像处理技术;3、掌握图像的灰度化、二值化和灰度直方图的原理及编程思路;4、掌握图像滤波(图像锐化、中值滤波、边缘检测、特征识别等)的基本原理及编程方法及编程思路;要求:1、能够根据设计题目要求查阅检索有关的文献资料,结合题目选学有关参考书。
查询相关资料,初步制定设计方案。
2、用CCS软件进行C语言设计相关算法,实现对图像的采集及处理。
3、编写相应的C语言程序实现各种图像处理。
二、设计所需的软件介绍:英文全称:Code Composer Studio 中文译名:代码调试器,代码设计套件。
CCS的全称是Code Composer Studio,它是美国德州仪器公司(Texas Instrument,TI)出品的代码开发和调试套件。
TI公司的产品线中有一大块业务是数字信号处理器(DSP)和微处理器(MCU),CCS便是供用户开发和调试DSP和MCU程序的集成开发软件。
Code Composer Studio v3.3 (CCStudio v3.3) 是用于 TI DSP、微处理器和应用处理器的集成开发环境。
Code Composer Studio 包含一整套用于开发和调试嵌入式应用的工具。
它包含适用于每个 TI 器件系列的编译器、源码编辑器、项目构建环境、调试器、描述器、仿真器以及多种其它功能。
Code Composer Studio IDE 提供了单个用户界面,可帮助您完成应用开发流程的每个步骤。
借助于精密的高效工具,用户能够利用熟悉的工具和界面快速上手并将功能添加至他们的应用。
产品版本:CCS 有多个版本可供选择。
dsp图像处理课程设计一、教学目标本课程的教学目标是使学生掌握数字信号处理(DSP)图像处理的基本理论、方法和应用,培养学生运用所学知识解决实际问题的能力。
具体目标如下:1.知识目标:(1)了解图像处理的基本概念、原理和算法;(2)掌握DSP芯片的基本结构、工作原理和编程方法;(3)熟悉图像处理软件的开发环境和使用方法。
2.技能目标:(1)能够运用图像处理算法对图像进行增强、压缩、滤波等操作;(2)能够使用DSP芯片进行图像处理的硬件实现;(3)具备使用图像处理软件进行算法实现和性能评估的能力。
3.情感态度价值观目标:(1)培养学生的创新意识和团队合作精神;(2)增强学生对图像处理技术的兴趣和责任感;(3)引导学生关注图像处理技术在实际应用中的伦理和法律问题。
二、教学内容本课程的教学内容主要包括以下几个部分:1.图像处理基本概念:图像处理的基本概念、图像采样和量化、图像变换、图像增强、图像压缩等。
2.DSP芯片及其编程:DSP芯片的基本结构、工作原理、编程方法及应用实例。
3.图像处理算法实现:常用图像处理算法的原理和实现方法,如滤波、边缘检测、分割、特征提取等。
4.图像处理软件开发:图像处理软件的开发环境、编程语言及应用实例。
5.图像处理技术应用:图像处理技术在实际应用中的案例分析,如数字相机、手机摄像头、医学影像处理等。
三、教学方法为了实现本课程的教学目标,我们将采用以下教学方法:1.讲授法:通过讲解图像处理的基本概念、原理和算法,使学生掌握相关知识。
2.案例分析法:分析实际应用案例,使学生了解图像处理技术在实际工作中的应用。
3.实验法:通过实验操作,使学生熟悉DSP芯片的使用方法和图像处理软件的开发。
4.讨论法:学生进行小组讨论,培养学生的团队协作能力和创新思维。
四、教学资源为了保证本课程的顺利进行,我们将准备以下教学资源:1.教材:《数字信号处理(DSP)图像处理教程》等。
2.参考书:相关领域的学术论文、技术文档等。
dsp课课程设计像处理一、教学目标本课程的教学目标是使学生掌握DSP(数字信号处理)的基本原理和应用方法,培养学生具备处理数字信号的能力。
具体目标如下:1.知识目标:•掌握数字信号处理的基本概念、原理和方法。
•了解DSP芯片的架构和编程方法。
•熟悉数字信号处理在通信、多媒体、语音处理等领域的应用。
2.技能目标:•能够运用DSP算法进行数字信号的处理。
•能够使用DSP芯片进行实际项目的开发和调试。
•具备分析、解决实际问题的能力。
3.情感态度价值观目标:•培养学生对DSP技术的兴趣和好奇心,激发学生学习的积极性。
•培养学生团队合作精神,提高学生沟通协作能力。
•培养学生具备创新意识,鼓励学生勇于探索新知识。
二、教学内容本课程的教学内容主要包括以下几个部分:1.数字信号处理基本概念:数字信号、离散时间信号、离散时间系统、Z变换等。
2.DSP算法与实现:数字滤波器、快速傅里叶变换(FFT)、数字图像处理等。
3.DSP芯片与应用:DSP芯片的基本架构、编程方法、应用案例等。
4.实际项目开发:基于DSP技术的通信系统、多媒体处理、语音处理等。
三、教学方法为了提高教学效果,本课程将采用以下教学方法:1.讲授法:教师通过讲解、演示、案例分析等方式,传授知识点和技能。
2.讨论法:学生进行小组讨论,培养学生的思考能力和团队合作精神。
3.案例分析法:通过分析实际项目案例,使学生更好地理解理论知识。
4.实验法:安排实验室实践环节,让学生动手操作,提高实际应用能力。
四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用权威、实用的教材,为学生提供系统的理论知识。
2.参考书:提供丰富的参考资料,帮助学生拓展知识面。
3.多媒体资料:制作课件、视频等多媒体资料,提高学生的学习兴趣。
4.实验设备:配置齐全的实验室设备,为学生提供实践操作的机会。
五、教学评估本课程的教学评估将采用多元化、全过程的评价方式,以全面、客观、公正地反映学生的学习成果。
Dsp实验教案适用专业:电子、电科实验室名称:dsp实验室(205)教师:王丽加载完毕,单击“Run”运行程序;XF灯以一定频率闪烁;单击“Halt”暂停程序运行,则XF灯停止闪烁,如再单击”灯又开始闪烁;Dsp实验教案适用专业:电子、电科实验室名称:dsp实验室(205)教师:王丽”后;在“exp10.c”程序中,“InitC5402( )”处设置断点;调整图形观察窗口,观察产生波形;”继续运行程序,在JAD4的AD50_DAout ,用示波器可观测到产生的正弦波波Halt ”暂停程序运行,示波器上正弦波消失;exp10.c ”程序中,N 值为产生正弦信号一个周期的点数,产生的正弦信号的频率与转换频率DA f 有关,产生正弦波信号频率f 的计算公式为: Nf f DA尝试修改“exp10.c ”程序中N 值,“Rebuild ”及“Load ”后, 单击“观察产生信号频率变化;exp10.pjt ”工程文件;关闭所有窗口,本实验完毕。
Dsp实验教案适用专业:电子、电科实验室名称:dsp实验室(205)教师:王丽单击“Run”,程序运行到第一个断点处停止;View / Graph / Image打开一个图形观察窗口,以观察程序载入的“Lena64.bmp 该图象应保存在“D:\Tu”目录中;按下图设置该图形观察窗口,观察变量y,为单击“Run”,程序运行到第三个断点处停止,这时可在图形观察窗口中,观察到原图象经二值化处理后的结果图象,本程序中,二值化处理阈值设为128;Dsp实验教案适用专业:电子、电科实验室名称:dsp实验室(205)教师:王丽5.本实验所提供的样例子程序操作说明启动CCS 2.0,用Project/Open打开“convolve.pjt”工程文件;双击“convolve.pjt”及“Source”可查看源程序;并加载“convolve.out 在程序最后“i = 0”处,设置断点;Run”运行程序,程序运行到断点处停止;再打开一个图形观察窗口,以观察卷积结果波形;该观察窗口的参数设置为:变量为159,数据类型为32位浮点数;关闭“convolve.pjt”工程文件,关闭各窗口,实验结束。
D S P数字图像处理系统设计华东交通大学理工学院课程设计报告书所属课程名称 DSP原理及应用题目数字图像处理系统设计分院电信分院专业班级 09通信工程(2)班学号学生姓名指导教师2012 年 6 月 18 日课程设计(论文)任务书专业09通信工程班级通信(2)班姓名一、课程设计(论文)题目数字图像处理系统的设计二、课程设计(论文)工作:自 2012 年 6 月 20 日起至 2012 年 6 月 21 日止。
三、课程设计(论文)的内容要求:1、学会如何使用CCS软件。
2、识别各种CCS软件中各元件及其图形表示和文字号。
3、掌握C语言和汇编语言的编程思想以及它们的基本则。
4、熟练掌握数字图像处理系统的工作原理,并读懂源序。
5、按照编辑、编译、调试、运行的正确步骤,并正确进行编译和调试。
6、学会分析运行结果图。
学生签名:2012 年 6 月 21 日课程设计(论文)评阅意见评阅人职称20 年月日目录第一章课程设计内容及要求............................ 错误!未定义书签。
1.1 设计内容...................... 错误!未定义书签。
1.2设计要求 (5)第二章程序设计原理 (5)2.1数字图象处理基本原理 (5)2.2数字图像处理常用方法 (5)2.3图象灰度处理的基本原理 (6)2.4图象的反色原理和实现 (7)2.5灰度图象二值化原理及意义 (8)第三章程序设计步骤 (10)第四章源代码 (13)第五章总结 (24)第六章参考文献..................... 错误!未定义书签。
第1章课程设计内容及要求一、设计内容1了解数字图象处理的基本原理2 学习灰度图象反色处理技术3 学习灰度图象二值化处理技术二、设计要求1、按照设计任务书要求,学会安装CCS软件及USB仿真器设计2、根据设计任务写出设计工作小结,对设计过程索进行的有关步骤进行理论分析,并对完成的设计作出评价,总结自己整个设计工作中的经验教训和收获。
3、把每个班级每个课设作为一个文件夹,文件夹采用课设名+班级命名,课程设计报告的命名采用学号的后四位+学生姓名命名。
第2章程序设计原理2、1数字图像处理的基本原理数字图像处理是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。
图像处理最早出现于 20 世纪 50 年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。
数字图像处理作为一门学科大约形成于 20 世纪 60 年代初期。
早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。
图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。
2、2 数字图像处理常用方法:1 )图像变换:由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。
因此,往往采用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理(如傅立叶变换可在频域中进行数字滤波处理)。
目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。
2 )图像编码压缩:图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减少所占用的存储器容量。
压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。
编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。
3 )图像增强和复原:图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。
图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。
如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;如强化低频分量可减少图像中噪声影响。
图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。
4 )图像分割:图像分割是数字图像处理中的关键技术之一。
图像分割是将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。
虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一种普遍适用于各种图像的有效方法。
因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。
5 )图像描述:图像描述是图像识别和理解的必要前提。
作为最简单的二值图像可采用其几何特性描述物体的特性,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。
对于特殊的纹理图像可采用二维纹理特征描述。
随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。
6 )图像分类(识别):图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。
图像分类常采用经典的模式识别方法,有统计模式分类和句法(结构)模式分类,近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。
2.3 图像的灰度化处理的基本原理将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。
彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。
而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。
灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。
图像的灰度化处理可用两种方法来实现。
(1)使求出每个像素点的R、G、B三个分量的平均值,然后将这个平均值赋予给这个像素的三个分量。
(2)根据YUV的颜色空间中,Y的分量的物理意义是点的亮度,由该值反映亮度等级,根据RGB和YUV颜色空间的变化关系可建立亮度Y与R、G、B三个颜色分量的对应:Y=0.3R+0.59G+0.11B,以这个亮度值表达图像的灰度值。
2.4图像的反色原理对于彩色图像的R、G、B各彩色分量取反的技术就是图像的反色处理,这在处理二值化图像的连通区域选取的时候非常重要。
如物体连通域用黑色表示,而二值化后的物体连通域图像可那是白色的,而背景是黑色的,这时应手动选取图像的反色处理或有程序根据背景和物体连通域两种颜色的数量所占比例而自动选择是否选择选取图像的反色处理。
(见下图)2.5 灰度图像二值化原理及意义作为一种高效智能的人机交互手段,身份证的快速识别技术可以广泛的应用于公民身份核查、暂住人口调查、旅店业登记核查、罪犯追逃等公安业务当中,大大提高了工作人员的录入速度,减少了用户的等待时间,提高了工作效率。
由于身份证图像背景复杂,由激光防伪阴影网格线及各种版面噪声构成;且因激光防伪标志和打印条件的千差万别,再加上身份证图像质量偏差,给身份证的字符识别带来了很大的困难。
必须经过预处理,除去大量的噪声信号,才能更好的进行字符的定位、分割,以及识别。
而二值化是预处理中非常重要的一步,也是最为关键的一步,它直接影响到OCR 系统的性能。
研究者在分析和讨论了多种图像二值化的优缺点后,在吸取各种方法优点的基础上,提出了一种新的身份证扫描图像的二值化方法——嵌入式多阈值动态自适应的二值化方法。
图像二值化是图像处理中的一项基本技术,也是很多图像处理技术的预处理过程。
在颗粒分析、模式识别技术、光学字符识别(OCR)、医学数据可视化中的切片配准等应用中,图像二值化是它们进行数据预处理的重要技术。
由于图像二值化过程将会损失原图像的许多有用信息,因此在进行二值化预处理过程中,能否保留原图的主要特征非常关键。
在不同的应用中,图像二值化时阈值的选择是不同的。
因此,自适应图像阈值的选取方法非常值得研究。
研究者对图像二值化方法进行了讨论,在此基础上提出了一个新的图像二值化算法。
该算法基于数学形态学理论,较好地保留了图像二值化时原图的边缘特征。
图像的二值化处理就是讲图像上的点的灰度置为0或255,也就是讲整个图像呈现出明显的黑白效果。
即将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。
在数字图像处理中,二值图像占有非常重要的地位,特别是在实用的图像处理中,以二值图像处理实现而构成的系统是很多的,要进行二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像,这样子有利于再对图像做进一步处理时,图像的集合性质只与像素值为0或255的点的位置有关,不再涉及像素的多级值,使处理变得简单,而且数据的处理和压缩量小。
为了得到理想的二值图像,一般采用封闭、连通的边界定义不交叠的区域。
所有灰度大于或等于阀值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。
如果某特定物体在内部有均匀一致的灰度值,并且其处在一个具有其他等级灰度值的均匀背景下,使用阀值法就可以得到比较的分割效果。
如果物体同背景的差别表现不在灰度值上(比如纹理不同),可以将这个差别特征转换为灰度的差别,然后利用阀值选取技术来分割该图像。
动态调节阀值实现图像的二值化可动态观察其分割图像的具体结果。
第3章程序设计步骤1、首先,在PC机的D盘新建目录“tu”,并把“lena64.bmp”拷贝到该目录下。
然后启动CCS 2.0用Project/Open打开“Exp12_cpu1”目录下“exp12.pjt”工程文件;并双击“exp12.pjt”及“Source”可查看源程序;并加载“exp12.out”;2、在源程序“exp12..c”中,在三个“i=0”处设置三个断点;(如下图所示);3、单击“Run”,程序运行到第一个断点处停止;4、用View/Graph/Image打开一个图形观察窗口,以观察程序载入的“lena64.bmp”图像,该图像应保存在“D:\Tu”目录中;按下图设置该图形观察窗口,观察变量y,为64*64的二维数组;5、单击“Run”,程序运行到第一个断点处停止;6、单击“Run”,程序运行到第二个断点处停止,这时可在图形观察窗口中,观察到原图象经反色处理后的结果图象;7、单击“Run”,程序运行到第三个断点处停止;这时可在图形观察窗口中,观察到原图象经二值化处理后的结果图象,本程序中,二值化处理阀值设为1288、关闭各窗口,本实验结束。
第4章源代码1、exp12.c#include "math.h"#include "stdio.h"#define IMAGE_WIDTH 64#define IMAGE_HEIGTH 64main(){ FILE *fi;int i,j,k;int y[IMAGE_HEIGTH][IMAGE_WIDTH];unsigned char id[64];Sys_Initial();k=128; /*k is Threshold Value*/fi=fopen("D:\\tu\\Lena64.bmp","rb");for (i=0; i<=16; i++) //把BMP格式的前16*64字节的头文件给过掉{fread((char *)id,sizeof(char),IMAGE_WIDTH,fi);}for (i=0; i<IMAGE_HEIGTH; i++){ fread((char *)id,sizeof(char),IMAGE_WIDTH,fi);for (j=0; j<IMAGE_WIDTH; j++){y[i][j]=id[j];}}fclose(fi);i=0;for (i=0; i<IMAGE_HEIGTH; i++){for (j=0; j<IMAGE_WIDTH; j++){y[i][j] = (255-y[i][j]);}}i=0;for (i=0; i<IMAGE_HEIGTH; i++){for (j=0; j<IMAGE_WIDTH; j++){y[i][j] = 255*((255-y[i][j])/k);}}i=0;i=0;}2、initial.asm.global _Sys_Initial ;系统初始化子程序.text ;以下程序分配到"text"段_Sys_Initial:nopXAR3 = #0H ;初始化XAR3 =0 作为下面操作的地址指针XDP = #0H ;设置XDP的高7位地址DPH为0,这样就可以用*abs(#k16),访问MMRwatchdog timer time-out event occurred)mode)AR3 = *port(#4003H) ;读WDTCR2AR3 = AR3 & #0BFFFH ;SET WDTCR2.14 = 0,关掉看门狗 *port(#4003H) = AR3sequence after idle.frequency*port(#1c00H) = #2090HAR3 = #1c00H ;AR3指向CLKMD的地址Loop_pll: TC2 = bit(*AR3,#0) || readport() ;这条指令的功能和"bit(*port(*ar3),#0)"相同if(!TC2) goto Loop_pll ;测试CLKMD.0(LOCK)位,判断PLL是否已经切换到了PLL模式native 55 modemode.executing instructions when HOLD happned.bit,0--enable,1--disablesaturation is performedsign-extension mode is Onused for native 55used for native 55bit(ST1,#5) = #0 ;C54CM = 0,C54x-Compatible Mode Is Disablethe AR indirect addressing mode 0--DSP mode.0--disable 1--enablebitbus error is detected0--Inter PROM Enable bootNo saturation is performed.1--disablebit(ST3,#2) = #0 ;CLKOUT引脚使能MMC/SD2MMC/SD1written with 0.AR3 = #45H*AR3 = #0H ;禁止IER1控制的中断.AR3 = #01H*AR3 = *AR3 ;清除IFR0的中断标志AR3 = #46H*AR3 = *AR3 ;清除IFR1的中断标志bit(ST1,#11) = #1 ;INTM = 1,Disable ALL mask Interruptenabledenabled. Idling EHPI and clock domain is not allowedpullups/pulldowns enabledsignal is assertedmemory busCKE signalin normal modeSDRAM self-refresh commandmodemodewhen readwhen readread state of this bit is undefinedwhen readAR3 = *port(#0800H) ;Set MEMCEN =0 ,bit(AR3,@#5) = #0 ;Disabled The signal on the CLKMEM pin is held high.*port(#0800H)=ar0*port(#0801H)=#0FFFFHAR3 = *port(#0800H)AR3&= #0f2ffhAR3|= #0200h*port(#0800H) = AR3 widthreadreset)width*port(#0807H)=#5fffH readreset)*port(#0808H)=#0000H 16-bit data bus width CAREDON'T CAREDON'T CAREreadreset)16-bit data bus width CAREDON'T CAREDON'T CAREreadreset)SDRAMCPU clock frequencywhen readwhen readread state of this bit is undefinedwhen readrepeat(#20)nop_16;延迟>6 CLKrepeat(#20)nop_16;设置中断向量表的定位指针 IVPD IVPHAR3 = #49H*AR3 = #0002H ;IVPD = 0002HAR3+= #1*AR3 = #0002H ;IVPH = 0002H ;设置 SYSR ,设置CLKOUT输出时钟的频率writesby 10*port(#07fdH)=#0005H*port(#3400H)=#0000Hrepeat(#20)nop_16return.end3、link.cmdMEMORY{ PAGE 0:MMR: origin = 000000h, length = 0000c0h /*不要把任何段分配到这个区域,也是DARAM0的一部分*/VECS: origin = 000200h, length = 0001FFh /*中断向量表 ".VECTORS",也是DARAM0的一部分*/DARAM0: origin = 000400h, length = 001BFFh /*DARAM0剩余的地址范围(HPI ACCESSIBLE) 8K BYTES 4K WORDS*/DARAM1: origin = 002000h, length = 001FFFh /*DARAM1(HPI ACCESSIBLE) 8K BYTES 4K WORDS*/DARAM2: origin = 004000h, length = 001FFFh /*DARAM2(HPI ACCESSIBLE) 8K BYTES 4K WORDS*/DARAM3: origin = 006000h, length = 001FFFh /*DARAM3(HPI ACCESSIBLE) 8K BYTES 4K WORDS*/DARAM4: origin = 008000h, length = 001FFFh /*8K BYTES 4K WORDS*/DARAM5: origin = 00A000h, length = 001FFFh /*8K BYTES 4K WORDS*/DARAM6: origin = 00C000h, length = 001FFFh /*8K BYTES 4K WORDS*/DARAM7: origin = 00E000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM0: origin = 010000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM1: origin = 012000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM2: origin = 014000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM3: origin = 016000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM4: origin = 018000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM5: origin = 01A000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM6: origin = 01C000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM7: origin = 01E000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM8: origin = 020000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM9: origin = 022000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM10: origin = 024000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM11: origin = 026000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM12: origin = 028000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM13: origin = 02A000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM14: origin = 02C000h, length = 001FFFh /*8KBYTES 4K WORDS*/SARAM15: origin = 02E000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM16: origin = 030000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM17: origin = 032000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM18: origin = 034000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM19: origin = 036000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM20: origin = 038000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM21: origin = 03A000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM22: origin = 03C000h, length = 001FFFh /*8K BYTES 4K WORDS*/SARAM23: origin = 03E000h, length = 001FFFh /*8K BYTES 4K WORDS*/ExtCE0: origin = 040000h, length = 3BFFFFh /*扩展外设*/ExtCE1: origin = 400000h, length = 3FFFFFh /*扩展外设*/ExtCE2: origin = 800000h, length = 3FFFFFh /*SDRAM*/ExtCE3: origin = 0c00000h, length = 3EFFFFh /*SDRAM*/PDROM: origin = 0FF0000h, length = 0FFFFh /*reset vector AND bootloader program*/}SECTIONS{/*----------------中断有关的段-------------------------*/.vectors : {} > VECS PAGE 0 /*中断向量段,必须和IVPD和IVPH设置的相同,在"0H"边界*/.isr : {} > DARAM0 PAGE 0 /*中断跳转程序地址*//*----------------堆栈有关的段-------------------------*/ .stack : {} > SARAM0 PAGE 0 /*数据堆栈段 Primary stack*/.sysstack : {} > SARAM1 PAGE 0 /*系统堆栈段Secondary system stack*//*-----------------初始化段-------------------------*/.text : {} > SARAM2 PAGE 0 /*Executable code*/.cinit : {} > SARAM3 PAGE 0 /*Tables for explicitly initialized global and static variables*/.const: {} > SARAM4 PAGE 0 /*Global and static const variables that are explicitly initialized*/.switch : {} > SARAM5 PAGE 0 /*Switch statement tables*/.pinit : {} > SARAM6 PAGE 0 /*Tables for global object constructors*//*----------------未初始化段---------------------------*/.bss : {} > SARAM7 PAGE 0 /*Global and static variables*/.sysmem: {} > SARAM8 PAGE 0 /*Memory for malloc functions*/.cio: {} > SARAM9 PAGE 0 /*C I/O buffer*/}第5章总结每一次的课设总能给我很多感触。