荣设计1.docx
《荣设计1.docx》由会员分享,可在线阅读,更多相关《荣设计1.docx(10页珍藏版)》请在冰豆网上搜索。
荣设计1
河南教育学院物理系2010级应用电子专业
毕
业
设
计
报
告
报告题目:
基于c语言的数字基带信号码型变换系统
学生姓名:
郭秋荣
学生学号:
2010160811030
指导教师姓名:
张艳红
指导教师职称(职务):
讲师
2012年9月22日
报告题目
基于C语言的数字基带信号码型变换系统
摘
要
双相码又称曼彻斯特码,是将每个二进制代码分别用两个二进制新码所取代,每个二进制新码有两个不同的相位,双相码要求每一位中都要有一个电平转换。
因而这种代码的最大优点是自定时,同时双相码也有检测错误的功能。
c语言是国内外广泛使用的一种计算机语言,电脑的普及使人们的生活、工作等更加方便。
应此用c语言实现双向码的变换能够方便用户的使用,使用户不用自己去编码,只要输入消息码就能获得双向码。
因此我采用c语言来设计实现该系统。
基于c语言的编程,我们采取双相码编程的相结合,由程序中输入消息码0输出01,输入消息码1输出10的相关原理来进行编程。
关键词
C语言、编码、双相码编码
参
考
资
料
[1]谭浩强,《C语言程序设计教程》,高等教育出版社,2006年12月第3版。
[2]张会生,《现代通信系统原理》,高等教育出版社,2009年6月第2版。
毕业设计报告题目:
基于C语言的数字基带信号码型变换系统
班级
2010级应用电子技术
学生姓名
郭秋荣
评审教师评语:
评审教师(签名)
年月日
成绩
系主任意见:
系主任(签名)
年月日
河南教育学院物理系应用电子技术专业毕业设计报告评审表
基于c语言的双向码变换系统
郭秋荣
摘要:
利用我们所学的c语言来编程双相码的变换系统,消息码0对应的对应的传输码01《零相位的一个周期方波》,消息码1对应的传输码10《π相位的一个周期方波》双相码要求每一位中都要有一个电平转换。
c语言是国内外广泛使用的一种计算机语言,电脑的普及使人们的生活.工作等更加方便。
这样可以把我们所学习的知识有机的统一起来。
关键词:
c语言双向码数字通信原理
绪论
c语言是近年来在国内外得到迅速推广的一种计算机语言。
C语言功能丰富表达力强,使用灵活方便,应用面广,目标效率高,可移植性强,既有高级语言的优点,又有低级语言的许多特点。
因此C语言特别适合编写系统软件。
现在c语言不仅为计算机专业工作者所使用,而且为广大计算机应用人员所喜爱与使用。
许多高等学校,不仅在计算机专业开设了c语言课程,而且在非计算机专业也开设了C语言课程。
本设计在c语言的基础上,利用visualc++软件,根据AMI码,CMI码,HDB3码以及双相码的码型变换特点,编写了c语言程序,实现数字基带先好的码型变换。
通过本设计,运用了c语言,数字通信原理等课程的知识,掌握了用编程语言编写一个完整的实用程序。
实现了编码与解码的全过程。
1.通信系统基带传输常用编码
数字基带信号是数字消息序列的一种电信号表示形式,它是用不同的点位或脉冲来表示相应的数字消息的,主要特点是功率谱集中零频率附近。
不适于在信道中传输,因此,常将数字基带信号进行变换,变成适合信道传输的码型。
常用的传输码有AMI码、HDB3码、双向码和CMI码等。
2.双相码介绍
双相码又称曼彻斯特码,是将每个二进制代码分别用两个二进制新码所取代,每个二进制新码有两个不同的相位,例如:
我们可以将编码规则规定为:
消息码0对应的对应的传输码01《零相位的一个周期方波》,消息码1对应的传输码10《π相位的一个周期方波》双相码要求每一位中都要有一个电平转换。
因而这种代码的最大优点是自定时,同时双相码也有检测错误的功能,如果某一位中间缺少了电平翻转,则被认为是违例代码。
曼彻斯特编码和差分曼彻斯特编码都是双相码的一种。
双相码的编码规则:
将每个二进制码元换成相位不同的一个方波周期。
例如,消息吗“0”对应相位π,“1”对应相位0.双向码是基带传输的常用码型,它在高密度信息流的数据传输中得到了广泛的应用。
用电平跳变来表示1或0的编码,其变化规则很简单,即每个码元均用两个不同相位的电平信号表示,也就是一个周期的方波,但0码和1码的相位正好相反。
消息码0和1交替处有连着0和1可以作为码组的边界将双相码传输码分成组,从而回复出原消息码。
3.设计过程及思路
c语言是国内外广泛使用的一种计算机语言,电脑的普及使人们的生活.工作等更加方便。
应此用c语言实现双向码的变换能够方便用户的使用,使用户不用自己去编码,只要输入消息码就能获得双向码。
因此我采用c语言来设计实现该系统。
我们设计的是基于c语言的数字基带信号码型变换系统。
由于码型较多,我们小组在老师的带领下决定对AMI码、HDB3码、双相码、CMI码四种常用的码型进行c语言的设计。
我重点对双向码进行了c语言的编程设计。
设计过程我通过查阅书籍、在网上搜索和老师的帮助、以及我们组在一起研究和讨论。
我们终于把设计完成了。
我也完成了我的设计。
3.1设计流程图
3.2设计源程序
#include
#include
main()
{
inti,l;
chara[100],b[200];
printf("请输入二进制数:
\n");
scanf("%s",a);
l=strlen(a);
for(i=0;i{
if(a[i]=='1')
{b[2*i]='0';
b[2*i+1]='1';
}
else
{
b[2*i]='1';
b[2*i+1]='0';
}
printf("%s",b);
getch();
}
4.系统测试
(1)打开visualc++6.0时的界面
(2)打开主程序时的界面:
(3)执行开始时的界面:
(4)当选择4.双相码,此时的界面是:
(5)输入信号码源得到:
(6)得到双相码为:
5.结论
我们小组采用C语言编写源程序设计并实现了数字基带信号码型变换系统,并通过了测试运行。
结果表明,该系统能够正确的将输入的原始基带信号变换成相应的双相码码输出,实现了毕业设计要求。
参考文献
[1]谭浩强,《C语言程序设计教程》,高等教育出版社,2006年12月第3版。
[2]张会生,《现代通信系统原理》,高等教育出版社,2009年6月第2版。
论文完成日期2012年9月22日
论文题目
作者姓名
[摘要]×××××××××××××××××××××××××××××××××××××××××××(楷体)
[关键词]×××,×××,×××,×××(楷体)
正文制作
(序论)×××××××××××××××××××××××××××××××××××××××××××
1、××××××××××××××(黑体)
1.1××××××××。
(黑体)××××××××××××××××××××××××××××××××××
1、1.1××××××××××××××(宋粗)
××××××××××××××××××××××××××××××××××××××××××。
2××××××××××××××××××××××××××××××××××××××××××。
2、1××××××××××××××××××××××××××××××××××××××××××
(空一行)
5(结论)××××××××××××××。
6、参考资料的制作
正文内容结束后,必须标明本文的参考资料、附录等项目。
具体格式要求如下:
(正文末尾)
(空一行)(以下非特别标志均为5号楷体)
参考资料:
(4号黑体,顶格)
[1]著作者,书名(篇名),出版社(报刊名称),年份(版次或杂志卷期)
[2]
(最后一行)论文完成日期2012年月日