电信专业视频课程设计.docx

上传人:b****7 文档编号:9143116 上传时间:2023-02-03 格式:DOCX 页数:30 大小:184.79KB
下载 相关 举报
电信专业视频课程设计.docx_第1页
第1页 / 共30页
电信专业视频课程设计.docx_第2页
第2页 / 共30页
电信专业视频课程设计.docx_第3页
第3页 / 共30页
电信专业视频课程设计.docx_第4页
第4页 / 共30页
电信专业视频课程设计.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

电信专业视频课程设计.docx

《电信专业视频课程设计.docx》由会员分享,可在线阅读,更多相关《电信专业视频课程设计.docx(30页珍藏版)》请在冰豆网上搜索。

电信专业视频课程设计.docx

电信专业视频课程设计

《电信专业电子系统课程设计B》

课程设计报告

 

题目:

视频信号发生器的设计与实现

院(系):

信息科学与工程学院

专业班级:

电子信息工程1102

学生姓名:

学号:

指导教师:

 

2014年5月19日至2014年5月23日

 

华中科技大学武昌分校制

电信专业电子系统课程设计B课程设计任务书

一、设计题目

视频信号发生器的设计

二、设计主要内容

运用89C2051单片机和AD722芯片,通过单片机编程完成视频信号发生器的设计,能通过电视接收机正确,稳定显示按事先确定的图形(要求每个同学各自设计不同的图形)。

三、原始资料

[1]王思贤,高峰.电子系统课程设计B指导书(讲义).华中科技大学武昌分校,2010.

[2]谈新权,邓天平.视频技术基础.武汉:

华中科技大学出版社,2007.

[3]姜志海,黄玉清等.单片机原理及应用,电子工业出版社,2009

四、要求的设计成果(根据每个同学所选择的图形画出)

五、进程安排

整个课程设计安排一周完成。

1、讲解课题内容。

2、图像自行选择设计的图形。

发放课题元件。

3、根据所选图形设计方案。

4、编写调试软件。

5、课题验收,完成课程设计报告。

六、主要参考资料

[1]王思贤,高峰.电子系统课程设计B指导书(讲义).华中科技大学武昌分校,2010.

[2]谈新权,邓天平.视频技术基础.武汉:

华中科技大学出版社,2007.

[3]姜志海,黄玉清等.单片机原理及应用,电子工业出版社,2009

指导教师(签名):

 

20年月日

 

1AT89C2051简介………………………………………………………5

2电视彩条信号发生器的设计…………………………………………5

3设计方法…………………………………………………………………7

3.1AT89C2051工作过程……………………………………………………7

3.2软件编程思想及流程图…………………………………………………9

3.3程序清单…………………………………………………………………10

4心得体会…………………………………………………………………23

5参考文献………………………………………………………………23

 

1.AT89C2051简介

AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含2kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。

2.电视彩条信号发生器设计原理

本课程设计所涉及到的彩条信号发生器,是利用单片机产生序列行、场同步信号和R、G、B三基色信号,然后输入给视频编码芯片AD722产生白、黄、青、绿、紫、红、蓝、黑8种颜色的彩色条状图像信号。

图1.1彩条信号发生器系统框图

系统电路原理图:

 

设计内容

如图根据我的设计图形,整幅画面可分为7个部分,每部分41行,共7x41=287行。

而且每一行要有80个机器周期,其中13个周期固定不变,其余67个周期按需要分配颜色周期。

各块的颜色分配如下图所示。

 

 

第1部分:

63蓝+4黑

第2部分:

8蓝+48红+7蓝+4黑

第3部分:

48蓝+8红+7蓝+4黑

第4部分:

8蓝+48红+7蓝+4黑

第5部分:

48蓝+8红+7蓝+4黑

第6部分:

8蓝+48红+7蓝+4黑

第7部分:

63蓝+4黑

3.设计方法

3.1AT89C2051工作过程

AT89C2051输出P1

数据

机器周期数

备注

第623行的行同步

00001000

00000000

6

34

第623.5行开始

5个均衡脉冲

00000100

00000000

3

37

共重复5次

第1行开始

5个开槽脉冲

00000100

00000000

34

6

(第一场开始)

共重复5次

第2.5行开始

5个均衡脉冲

00000100

00000000

3

37

共重复5次

第6行开始

18个行同步

00001000

00000000

6

74

共重复18次

第24行开始

287个彩条行

00001000

00000000

00400000

00000000

6

7

63

4

第一部分共重复41次

00001000

00000000

00400000

00100000

00400000

00000000

6

7

8

48

7

4

 

第二部分共重复41次

00001000

00000000

00400000

00100000

00400000

00000000

6

7

48

8

7

4

第三部分共重复41次

00001000

00000000

00400000

00100000

00400000

00000000

 

6

7

8

48

7

4

 

第四部分共重复41次

00001000

00000000

00400000

00100000

00400000

00000000

 

6

7

48

8

7

4

第五部分共重复41次

00001000

00000000

00400000

00100000

00400000

00000000

6

7

8

48

7

4

第六部分重复41次

00001000

00000000

00400000

00000000

6

7

63

4

第七部分重复41次

第311行开始

5个均衡脉冲

00000100

00000000

3

37

共重复5次

第312.5行开始

5个开槽脉冲

00000100

00000000

34

6

(第二场开始)

共重复5次

第316行开始

5个均衡脉冲

00000100

00000000

3

37

共重复5次

空半行

00000000

40

第319行开始

17个行同步

00001000

00000000

6

74

共重复17次

第336行开始

287个彩条行

同第一场

同第一场

共287行,

然后接第一场第623行的行同步

3.2软件设计思想和流程图

电视机采用隔行扫描的方式,即一帧图像分成两场。

因为彩条图像每一部分的每一行、每一场图像是一样的,程序设计时,应当采用循环的方式,使程序结构化,小型化。

并且,严格按照信号脉冲的宽度,根据指令周期的不同,选用合适的指令。

程序流程图

下一场

Y

NY

N

N

Y

N

Y

N

Y

彩条开始

图3.1系统程序流程图(未考虑隔行扫描)

3.3总程序清单

ORG0000H

START:

MOVA,#00H

MOVP1,A;初始化清0

MOVIE,#0;禁止中断

MOVSP,#70H;栈区地址

CLRPSW.3;选寄存器组为0组

CLRPSW.4

LOOP:

SETBP1.3;第623行的行同步

D623H:

NOP;开始6个机器周期

NOP

NOP

NOP

MOVR1,#9

CLRP1.3

D34:

NOP;开始34个机器周期

DJNZR1,D34;27

NOP

MOVR2,#5;第623.5行开始5个均衡脉冲

LOOP101:

NOP

NOP

NOP

NOP

SETBP1.2

MOVR1,#10;开始3个机器周期

NOP

CLRP1.2

D37:

NOP;开始37个机器周期

DJNZR1,D37;30

DJNZR2,LOOP101

MOVR2,#5;笫一行开始5个开槽脉冲

LOOP111:

NOP

NOP

NOP

SETBP1.2

MOVR1,#8;开始34个机器周期

D341:

NOP

NOP

DJNZR1,D341;32

CLRP1.2

DJNZR2,LOOP111;开始6个机器周期

MOVR2,#5;笫2.5行开始5个均衡脉冲

LOOP121:

NOP

NOP

SETBP1.2

MOVR1,#8;开始3个机器周期

NOP

CLRP1.2

D371:

NOP;开始37个机器周期

MOVR0,#18;笫6行开始的18个行同步

DJNZR1,D371;32

DJNZR2,LOOP121

LOOP181:

MOVR1,#2

NOP

SETBP1.3

D6H:

DJNZR1,D6H;开始6个机器周期

MOVR1,#17

CLRP1.3

D74:

NOP;开始74个机器周期

NOP

DJNZR1,D74;68

NOP

DJNZR0,LOOP181

MOVR0,#41

;第24行开始的287个彩条行(255+32)

NOP

LOOP1:

SETBP1.3

NOP;开始6个机器周期

NOP

NOP

MOVR1,#2

NOP

CLRP1.3

C1023H:

DJNZR1,C1023H;开始7个机器周期

;////////////////////////////////////////////////////第1部分

MOVR1,#14

MOVA,#40H

MOVP1,A

C1032H:

DJNZR1,C1032H;开始32个机器周期(蓝)

NOP

NOP

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

NOP

AD1024H:

DJNZR1,AD1024H

MOVA,#40H

MOVP1,A

MOVR1,#10;开始23个机器周期(蓝)

AD1025H:

DJNZR1,AD1025H

MOVA,#00H

MOVP1,A

MOVR2,#41;开始4个机器周期"0"

DJNZR0,LOOP1

LOOP2:

SETBP1.3

MOVR1,#2;开始6个机器周期

AD1026H:

DJNZR1,AD1026H

CLRP1.3

MOVR1,#2;开始7个机器周期

AD1027H:

DJNZR1,AD1027H

;////////////////////////////////////////////////////第2部分

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

AD1028H:

DJNZR1,AD1028H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AD1029H:

DJNZR1,AD1029H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AD10291H:

DJNZR1,AD10291H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AD10292H:

DJNZR1,AD10292H

NOP

MOVA,#40H

MOVP1,A

MOVR1,#2;开始7个机器周期(蓝)

AD1030H:

DJNZR1,AD1030H

MOVA,#00H

MOVP1,A

MOVR0,#41;开始4个机器周期"0"

DJNZR2,LOOP2

LOOP3:

SETBP1.3

NOP;开始6个机器周期

NOP

NOP

MOVR1,#2

NOP

CLRP1.3

D1031H:

DJNZR1,D1031H;开始7个机器周期

;/////////////////////////////////////////////////////第3部分

MOVR1,#22

MOVA,#40H

MOVP1,A

D1032H:

DJNZR1,D1032H;开始48个机器周期(蓝)

NOP

NOP

MOVA,#10H

MOVP1,A

MOVR1,#2;开始8个机器周期(红)

NOP

D1034H:

DJNZR1,D1034H

MOVA,#40H

MOVP1,A

MOVR1,#2;开始7个机器周期(红)

AD1035H:

DJNZR1,AD1035H

MOVA,#00H

MOVP1,A

MOVR2,#41;开始4个机器周期"0"

DJNZR0,LOOP3

LOOP4:

SETBP1.3

MOVR1,#2;开始6个机器周期

D1036H:

DJNZR1,D1036H

CLRP1.3

MOVR1,#2;开始7个机器周期

D1037H:

DJNZR1,D1037H

;////////////////////////////////////////////////////第4部分

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

D1038H:

DJNZR1,D1038H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#22;开始48个机器周期(红)

NOP

D1039H:

DJNZR1,D1039H

MOVA,#40H

MOVP1,A

MOVR1,#2;开始7个机器周期(蓝)

D1040H:

DJNZR1,D1040H

MOVA,#00H

MOVP1,A

MOVR0,#41;开始4个机器周期"0"

DJNZR2,LOOP4

LOOP5:

SETBP1.3

NOP;开始6个机器周期

NOP

NOP

MOVR1,#2

NOP

CLRP1.3

D1042H:

DJNZR1,D1042H;开始7个机器周期

;////////////////////////////////////////////////////第5部分

MOVR1,#22

MOVA,#40H

MOVP1,A

DS170H:

DJNZR1,DS170H;开始48个机器周期(蓝)

MOVR1,#2

NOP

MOVA,#10H

MOVP1,A

DS130H:

DJNZR1,DS130H;开始8个机器周期(红)

MOVR1,#2

NOP

MOVA,#40H

MOVP1,A

DS160H:

DJNZR1,DS160H;开始7个机器周期(蓝)

MOVR1,#2

MOVA,#00H

MOVP1,A

 

MOVR2,#41;开始4个机器周期"0"

DJNZR0,LOOP5

LOOP6:

SETBP1.3

MOVR1,#2;开始6个机器周期

ASD6H:

DJNZR1,ASD6H

CLRP1.3

MOVR1,#2;开始7个机器周期

ASD7H:

DJNZR1,ASD7H

;////////////////////////////////////////////////////第6部分

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

D150H:

DJNZR1,D150H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#22;开始48个机器周期(红)

NOP

D151H:

DJNZR1,D151H

MOVA,#40H

MOVP1,A

MOVR1,#2;开始7个机器周期(蓝)

D152H:

DJNZR1,D152H

MOVA,#0

MOVP1,A

MOVR0,#41;开始4个机器周期"0"

DJNZR2,LOOP6

LOOP7:

SETBP1.3

MOVR1,#2;开始6个机器周期

D153H:

DJNZR1,D153H

CLRP1.3

MOVR1,#2;开始7个机器周期

D154H:

DJNZR1,D154H

;////////////////////////////////////////////////////第7部分

MOVA,#40H

MOVP1,A

MOVR1,#14;开始32个机器周期(蓝)

D155H:

DJNZR1,D155H

NOP

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

NOP

D156H:

DJNZR1,D156H

MOVA,#40H

MOVP1,A

MOVR1,#10;开始23个机器周期(蓝)

D157H:

DJNZR1,D157H

MOVA,#00H

MOVP1,A

MOVR2,#5;开始4个机器周期"0"

DJNZR0,LOOP7

 

;//////////////////第二场///////////////////

LOOP131:

SETBP1.2

MOVR1,#11;开始3个机器周期

NOP

CLRP1.2

D372:

NOP;开始37个机器周期

DJNZR1,D372;33

MOVR3,#5;笫312.5行开始5个开槽脉冲

DJNZR2,LOOP131

LOOP141:

SETBP1.2

MOVR1,#8;开始34个机器周期

D342:

NOP

NOP

DJNZR1,D342;32

CLRP1.2

NOP;开始6个机器周期

MOVR2,#5;笫316行开始5个均衡脉冲

NOP

DJNZR3,LOOP141

LOOP151:

SETBP1.2

MOVR1,#11;开始3个机器周期

NOP

CLRP1.2

D373:

NOP;开始37个机器周期

DJNZR1,D373;33

NOP

DJNZR2,LOOP151

NOP

MOVR1,#11;空半行(40个机器周期)

K40:

NOP

DJNZR1,K40;33

MOVR3,#17;笫319行开始17个行同步

LOOP171:

NOP

NOP

NOP

NOP

SETBP1.3

MOVR1,#2;开始6个机器周期

TD6H:

DJNZR1,TD6H

CLRP1.3

MOVR1,#22;开始74个机器周期

TD74:

NOP

DJNZR1,TD74;66

DJNZR3,LOOP171

MOVR0,#41

NOP

NOP

NOP

LOOP8:

SETBP1.3

NOP;开始6个机器周期

NOP

NOP

MOVR1,#2

NOP

CLRP1.3

C1023:

DJNZR1,C1023;开始7个机器周期

;////////////////////////////////////////////////////第2-1部分

MOVR1,#14

MOVA,#40H

MOVP1,A

CC1032H:

DJNZR1,CC1032H;开始32个机器周期(蓝)

NOP

NOP

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

NOP

AAD1024H:

DJNZR1,AAD1024H

MOVA,#40H

MOVP1,A

MOVR1,#10;开始23个机器周期(蓝)

AAD1025H:

DJNZR1,AAD1025H

MOVA,#00H

MOVP1,A

MOVR2,#41;开始4个机器周期"0"

DJNZR0,LOOP8

LOOP9:

SETBP1.3

MOVR1,#2;开始6个机器周期

AAD1026H:

DJNZR1,AAD1026H

CLRP1.3

MOVR1,#2;开始7个机器周期

AAD1027H:

DJNZR1,AAD1027H

;////////////////////////////////////////////////////第2-2部分

MOVA,#40H

MOVP1,A

MOVR1,#2;开始8个机器周期(蓝)

AAD1028H:

DJNZR1,AAD1028H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AAD1029H:

DJNZR1,AAD1029H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AAD10291H:

DJNZR1,AAD10291H

NOP

MOVA,#10H

MOVP1,A

MOVR1,#6;开始16个机器周期(红)

AAD10292H:

DJNZR1,AAD10292H

NOP

MOVA,#40H

MOVP1,A

MOVR1,#2;开始7个机器周期(蓝)

AAD1030H:

DJNZR1,AAD1030H

MOVA,#00H

MOVP1,A

MOVR0,#41;开始4个机器周期"0"

DJNZR2,LOOP9

LOOP10:

SETBP1.3

NOP;开始6个机器周期

NOP

NOP

MOVR1,#2

NOP

CLRP1.3

DA1031H:

DJNZR1,DA1031H;开始7个机器周期

;////////////////////////////////////////////////////第2-3部分

MOVR1,#22

MOVA,#40H

MOVP1,A

DA1032H:

DJNZR1,DA1032H;开始48个机器周期(蓝)

NOP

NOP

MOVA,#10H

MOVP1,A

MOVR1,#2;开始8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1