1.1.1 CCS的基本操作
1.1.1.1 实验目的
1. 掌握CCS对工程的基本操作
2. 掌握使用CCS调试程序的技巧
3. 会使用Memory、Graphic等工具查看程序运行状态
4. 会使用File I/O控制数据的输入和输出
1.1.1.2 实验程序功能
实验中用到的是实现幅度调制(AM)功能的程序。调幅是通信系统中常见的调制方式之一,它将信息调制到载波的幅度上,如图:
设信号的频率为m,直流量为A,载波的频率为c,则AM的公式为:
y(t)[AMcos(mt)]sin(ct)
即如果已知欲调制信号和载波信号,只要将二者相乘,就可以得到调制后的信号。
程序中baseband数组用来存储载波信号,signal用来存储欲调制的信号,output用来存储调制输出信号。
为了方便练习File I/O的使用,实验程序还提供了欲调制信号(10Hz正弦波、方波、三角波)和载波(100Hz正弦波)的数据文件。
1.1.1.3 实验步骤
1.1.1.4 工程的维护
1. 新建一个名为exp_mod的工程。
2. 将准备好的程序文件复制到工程的目录下。
3. 将所有文件添加到工程中。
1.1.1.5 工程的编译和运行
1. 编译,并对编译过程中产生的错误进行排查。
2. 运行程序,查看程序的输出。
1.1.1.6 工程的调试
1. 尝试添加断点并查看断点效果。
2. 尝试单步运行程序。
1.1.1.7 运行结果查看
1. 将程序中的宏FILEIO_OPEN值设置为0(关闭),用头文件的方式定义输入信号。
2. 使用Memory和Watch工具,观察单步执行过程中输出数组output内容的变化。
3. 使用Graph工具,查看输入信号signal和输出信号output的时域波形和频域波形。
4. 将SIGNAL_TYPE设置为方波和三角波,重复2、3步,注意比较输出信号的不同。
1.1.1.8 File I/O练习
1. 将程序中的宏FILEIO_OPEN值设置为1(打开),File I/O的方式获取输入信号。
2. 在三处inject()函数和一处drawout()函数设置探针点,并做如下设置:
程序第59行的inject(),向signal数组中输入欲调制信号,向baseband数组
中输入载波信号
程序第70行的inject(),向baseband数组中输入载波信号
程序第75行的inject(),向signal数组中输入欲调制信号
程序第80行的drawout(),绘制output数组中数据的图形
提示:做文件输入的时候,要注意文件循环输入(Wrap Around)的选项和输入长度的限制;绘制图形的时候,要注意图形选项中关于缓冲区尺寸和采样率的设置。
因篇幅问题不能全部显示,请点此查看更多更全内容