搜档网
当前位置:搜档网 › 多模块系统综合设计 .doc

多模块系统综合设计 .doc

多模块系统综合设计 .doc
多模块系统综合设计 .doc

多模块系统综合设计

一﹑实验目的:

1﹑熟悉微机系统硬件的综合设计方法;

2﹑掌握多模块程序设计的规则和方法。

二﹑实验内容

在以前单元接口实验的基础上,把多个接口部件连接成一个多功能的微机综合应用系统。系统包括以下可选功能:

(1)用中断方式统计单次脉冲(键入)次数并在LED显示器上显示;

(2)扫描4*4键盘,若按下0~9键,则在LED显示器最左边两位显示其数值;如为A--F 功能键,则分别实现下列功能:

A:LED显示器左二位显示‘A’,同时发光二极管左循环流水灯显示。

B:LED显示器左二位显示‘B’,同时发光二极管右循环流水灯显示。

C:LED显示器左二位显示‘C’,同时发光二极管闪烁显示。

D:LED显示器左二位显示‘D’,同时右四位显示‘HELP’。

E:LED显示器左二位以16进制显示8位乒乓开关的状态。

F:LED显示器左二位显示‘F’,同时回到主程序。

(3)多种波形发生器,用PC键盘输入来控制DAC0832的输出波形,如按‘1’输出锯齿波,按‘2’输出三角波,按‘3’输出方波,按‘4’输出正弦波,按‘5’退出程序。并用示波器观测输出波形。

三、实验要求

1.基本要求 (1)系统至少包括两种功能模块;由PC键盘控制选择实现功能

(2)软件采用多模块程序结构

2.提高要求 (1)三种或更多功能模块

(2)改善人机接口

四、实验报告要求

(1)实验目的和内容

(2)总体设计

(3)硬件设计:原理图(接线图)及简要说明

(4)程序框图和清单

(5)实验结果和体会

多模块系统综合设计

一、总体设计

(1)系统运行时,首先执行主程序模块,显示功能菜单,供选择运行各模块或返回DOS。

(2)利用8259实现脉冲计次;8255管理键盘和发光二极管。两片8位锁存器实现六

位LED显示器动态刷新控制。

二﹑硬件设计

1.主要硬件单元:

实验平台上有:4*4键盘电路﹑电平开关电路﹑发光二极管显示电路﹑七段数码显示电路﹑单脉冲发生电路。

实验主板上有:分频电路﹑地址译码器﹑可编程并行接口8255单元﹑模数转换ADC08单元﹑数模转换DAC0832单元。

各硬件单元的电路原理图请参见实验箱简介,此处不再累述。

2.硬件主要跳线连接

请参见表3-1

表3-1 对应跳线连接表

三﹑软件设计

1.功能模块的划分:

根据要求可把整个程序划分为六个功能模块:并行接口芯片8255A的A口LED流水灯显示模块,B口读乒乓开关数值模块,C口简易键盘操作模块;8259的系统硬中断模块;D/A 的波形输出模块,以及D/A﹑A/D联调模块。其中8255的A口﹑C口两个功能设计到一个程序中(SY8255.ASM),B口的功能模块设计在SY82552.ASM中,8259的系统硬中断模块在SY8259.ASM中,D/A的波形输出模块在SYAD2.ASM中, D/A﹑A/D联调模块在SYAD1.ASM中,其中SYAD2.ASM由SYAD1.ASM调用形成A/D-D/A综合功能的大模块,SY82552.ASM由SY8255.ASM调用形成接口芯片8255A综合功能的大模块,各个大模块由主程序SY.ASM调用。

各个源程序文件分别汇编,生成各自的目标文件,然后用‘LINK’命令连接,生成可执行文件SY.EXE。其示意图如图1:

连接命令格式:LINK SY+SYAD1+SYAD2+SY8255+SY82552+SY8259

2.各模块的具体分析:

(1)主程序模块:

功能:判断键入的数字键,分情况调用各个功能模块。若键入‘1’,则调用8259功能模块,若为‘2’,则调用8255A综合功能模块,若为‘3’,则调用A/D-D/A综合功能大模块,若为‘4’,则退出返回DOS环境。

SY8255.ASM SY82552.ASM SYAD1.ASM SYAD2.ASM SY8259.ASM SY.ASM

MASM MASM MASM MASM MASM MASM

SY8255.OBJ SY82552.OBJ SYAD1.OBJ SYAD2.OBJ SY8259.OBJ SY.OBJ LINK LINK

8255大功能模块 A/D-D/A大功能模块 8259功能模块主程序模块

LINK

可执行文件SY.EXE

图 1

流程框图及程序清单:

源程序如下:

; 主程序模块SY.ASM

EXTRN ADDA:FAR,F8259:FAR,F8255:FAR ;指出外部模块定义的标志符

DATA SEGMENT PUBLIC 'DATA' ;所有程序共用一个数据段,即一个DS值MESS DB 0DH,0AH,0DH,0AH

DB '********** MAIN MENU ***********',0DH,0AH

DB 'PRESS 1 TO MAKE 8259 INTERRUPT!',0DH,0AH

DB 'PRESS 2 TO THE OPERATION OF 8255A!',0DH,0AH ;主菜单

DB 'PRESS 3 TO THE OPERATION OF DA/AD!',0DH,0AH

DB 'PRESS 4 TO QUIT DOS!',0DH,0AH,0DH,0AH,'$'

DATA ENDS

STACK SEGMENT para stack 'stack'

DB 100 DUP (?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA

MOV DS,AX

MOV AX,STACK

MOV SS,AX

BIG: LEA DX,MESS

MOV AH,09H

INT 21H

BIG1: MOV AH,08H

INT 21H

CMP AL,'1'

JZ F59

CMP AL,'2'

JZ F55

CMP AL,'3'

JZ AD

CMP AL,'4'

JZ QIT

JMP BIG1

F59: CALL F8259

MOV AL,00H

JMP BIG

F55: CALL F8255

MOV AL,00H

JMP BIG

AD: CALL ADDA

MOV AL,00H

JMP BIG

QIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

流程图请见图2

图2 主程序模块

(2)8259系统硬中断模块:

功能:可编程中断控制器采用PC机内的8259A,用单脉冲发生单元申请中断(IRQ3),利用中断服务子程序统计脉冲开关按下的次数,并用两位数码管显示开关按下次数。

流程框图及程序清单

有键按下吗

图3 系统硬中断

源程序如下:

; 系统硬中断模块 sy8259.asm

DATA SEGMENT PUBLIC 'DATA' ;各模块共用一个DS值

MESS1 DB 'Press any to quit MAIN MENU !',0DH,0AH,'$'

MESS2 DB 'A 8259 interrupt, press any to quit MAIN MENU!',0DH,0AH,'$' MY1 db 0h

DCTBL DB 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh,77h,7Ch,39h,5Eh,79h,71h INTMASK DB 0

CSREG DW ?

IPREG DW ?

NUM DW ?

NUM2 DW ?

DATA ENDS

STAC SEGMENT PARA STACK 'STACK'

DB 128 DUP(?)

STAC ENDS

CODE SEGMENT

ASSUME CS:CODE,SS:STAC,DS:DATA,ES:DATA

PUBLIC F8259 ;F8259定义为外部过程

F8259 PROC FAR

START: MOV AX,00H

MOV NUM,AX

MOV NUM2,AX

CLI ;关中断

MOV AX,DATA

MOV DS,AX

MOV AX,STAC

MOV SS,AX

LEA DX,MESS1

MOV AH,09H

INT 21H

MOV AL,0AH

MOV AH,35H

INT 21H

MOV AX,ES ;保护0AH号中断向量(IRQ3对应0AH号)MOV CSREG,AX

MOV IPREG,BX

PUSH DS

MOV AX,CS

MOV DS,AX

MOV DX,OFFSET INTPROC ;置中断向量(如口地址为CS:DX)

MOV AL,0AH

MOV AH,25H

INT 21H

POP DS

IN AL,21H

AND AL,0F7H ;写屏蔽操作命令字OCW1,开IRQ3中断屏蔽位OUT 21H,AL

STI ;开中断

LOP1: NOP

NOP

NOP

NOP

NOP

NOP

CALL DISP

MOV AX,NUM

CMP AX,060H

JNZ LOP2

MOV AX,00H

MOV NUM,AX

MOV NUM2,AX

LOP2: NOP

MOV DL,0FFH

MOV AH,06H

INT 21H

JZ LOP1

IN AL,21H

OR AL,08H ;恢复OCW1内容

OUT 21H,AL

MOV DX,IPREG

MOV AX,CSREG

MOV DS,AX

MOV AL,0AH ;恢复0AH号中断向量

MOV AH,25H

INT 21H

STI ;开中断

RET

F8259 ENDP

INTPROC PROC NEAR ;中断服务子程序

PUSH DS

PUSH AX

MOV AX, DATA

MOV DS,AX

NOP

MOV AX,NUM

INC AX ;脉冲开关按一次,中断次数NUM就加1

MOV NUM,AX

NOP

MOV AL,20H

OUT 20H,AL ;置中断方式字OCW2为非特殊的EOI中断结束 POP AX

POP DS

IRET ;中断返回

INTPROC ENDP

DISP PROC NEAR ;两位LED显示中断次数子程序PUSH DS

PUSH CX

PUSH AX

MOV CX,NUM

MOV AX,CX

MOV BX,NUM2

CMP AX,BX

JZ DISP0

MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET MESS2

MOV AH,09H

INT 21H

MOV NUM2,CX

DISP0: MOV CX,NUM

MOV AX,CX

AND AL,0FH

MOV AH,AL

MOV AL,CL

MOV CL,04H

SHR AL,CL

MOV CH,AL

MOV CL,AH

DISPL: MOV DX,288H

MOV AL,02H

OUT DX,AL

MOV DX,284H

MOV AL,CL

MOV AH,0

LEA BX,DCTBL

MOV SI,AX

MOV AL,[BX+SI]

OUT DX,AL

CALL DELAY1

DISPH: MOV DX,288H

MOV AL,01H

OUT DX,AL

MOV DX,284H

MOV AL,CH

MOV AH,0

LEA BX,DCTBL

MOV SI,AX

MOV AL,[SI+BX]

OUT DX,AL

CALL DELAY1

POP AX

POP CX

POP DS

RET

DISP ENDP

DELAY1 PROC NEAR ;延迟子程序PUSH CX

MOV CX,0F00H

LOOP $

POP CX

RET

DELAY1 ENDP

DELAY2 PROC NEAR

PUSH AX

PUSH CX

MOV CX,030H

DL21: CALL DELAY1

LOOP DL21

POP CX

POP AX

RET

DELAY2 ENDP

CODE ENDS

END

(3)并行接口8255A综合模块:

功能:利用8255的A口输出控制发光二极管,B口输入接收8位乒乓开关状态,C口接收小键盘行列状态实现一定的功能,采用反转法判断所按实验平台上的小键盘为何键,在数码管上显示按键信息:按 0到9数字键就在左边两个数码管上显示其数值;如为A--F功能键,则分别实现下列功能:

A:数码管左二位显示‘A’,同时L1到L8左循环流水灯显示。

B:数码管左二位显示‘B’,同时L1到L8右循环流水灯显示。

C:数码管左二位显示‘C’,同时L1到L8闪烁显示。

D:数码管左二位显示‘D’,同时右四位数码管显示‘HELP’。

E:数码管左二位以16进制显示8位乒乓开关的状态。

F:数码管左二位显示‘F’,同时回到主程序。

其中,B口接受并显示乒乓开关状态由小模块SY82552完成,并受大模块SY8255调用。其它功能由SY8255完成。

模块SY8255的流程框图及程序清单

流程框图如图4

数码管显示其数值

图4 SY8255模块

源程序如下:

; 8255功能模块 sy8255.asm

PA55 EQU 280H

PB55 EQU 281H

PC55 EQU 282H ;定义8255各口地址

P55CTL EQU 283H

DATA SEGMENT PUBLIC 'DATA'

TABLE DB 0EEH,0DEH,0BEH,07EH,0EDH,0DDH,0BDH,07DH

DB 0EBH,0DBH,0BBH,07BH,0E7H,0D7H,0B7H,077H

DCTBL DB 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh

DB 77h,7Ch,39h,5Eh,79h,71h

MES DB ' *********** SUBMAIN MENU ***********',0DH,00AH

DB 'Press any key on the small keyboard!',0DH,0AH

DB 'Press NUM key to display num on the led!',0dh,0ah

DB 'Press A for left cycle!',0DH,0AH

DB 'Press B for right cycle!',0DH,0AH

DB 'Press C for alternately display!',0DH,0AH

DB 'Press D to display HELP on the right four led!',0DH,0AH

DB 'Press E to display the data of pingpang on the left tow led!',0DH,0AH

DB 'Press F to quit to MAIN MENU!',0DH,0AH,0DH,0AH,'$'

MESS DB '*****Press any key to main menu!*****',0DH,0AH,0DH,0AH,'$' KEYC DB ?

KEYR DB ?

KEY DB ?

NUM1 DB ?

NUM2 DB ?

DATA ENDS

STACK SEGMENT PARA STACK 'STACK'

DB 50 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK

PUBLIC F8255 ;F8255定义为外部过程

EXTRN F82552:FAR ;F82552为外部过程名

F8255 PROC FAR

START:

MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET MES

MOV AH,09

I NT 21H

LOP1: CALL TESTKEY ;调用检测小键盘按键子程序,键号在CALL DISP ;变量KEY(默认为0)

MOV AL,KEY

CMP AL,0AH

JZ A0

CMP AL,0BH

JZ B0

CMP AL,0CH

JZ C0

CMP AL,0DH

JZ DE

CMP AL,0EH

JZ EE

CMP AL,0FH

JZ FF

MOV DL,0FFH

MOV AH,6

INT 21H

JZ LOP1 ;无PC键按下,则循环

JMP START ;按键不是'A-F’,则重新检测﹑显示

A0: LEA DX,MESS

MOV AH,9

INT 21H

CALL DISP

MOV DX,PA55

MOV AL,0FEH

A1: OUT DX,AL

PUSH AX

CALL DISP

POP AX

CALL DELAY2

ROL AL,1

PUSH AX

PUSH DX

MOV DL,0FFH

MOV AH,06H

INT 21H

POP AX

JZ A1

MOV KEY,00H

JMP START B0: LEA DX,MESS

MOV AH,9

INT 21H

CALL DISP

MOV DX,PA55

MOV AL,0FEH B1: OUT DX,AL PUSH AX

CALL DISP

CALL DELAY2 CALL DISP

POP AX

ROR AL,1

PUSH AX

PUSH DX

MOV DL,0FFH

MOV AH,06H

INT 21H

POP DX

POP AX

JZ B1

MOV KEY,00H

JMP START DE: JMP D0 EE: JMP E0

FF: JMP F0

C0: LEA DX,MESS

MOV AH,9

INT 21H

CALL DISP

MOV DX,PA55

MOV AL,55H C1: OUT DX,AL

CALL DELAY2

NOT AL

PUSH AX

PUSH DX

MOV DL,0FFH

MOV AH,06H

POP DX

POP AX

JZ C1

MOV KEY,00H

JMP START

E0: CALL DISP

CALL DELAY2 PUSH DS

CALL F82552 POP DS

MOV KEY,00H MOV AL,00H JMP START

D0: LEA DX,MESS

MOV AH,9

INT 21H

D1: CALL DISP

MOV NUM1,04H

MOV NUM2,76H

CALL DISP1

MOV NUM1,08H

MOV NUM2,79H

CALL DISP1

MOV NUM1,10H

MOV NUM2,38H

CALL DISP1

MOV NUM1,20H

MOV NUM2,73H

CALL DISP1

CALL DELAY1

MOV DL,0FFH

MOV AH,6

INT 21H

JZ D1

MOV KEY,00H

JMP START

F0: CALL DISP

CALL DELAY2 MOV KEY,00H RET

F8255 ENDP

TESTKEY PROC ;检测小键盘按键子程序KEY0: MOV AL,83H

MOV DX,P55CTL

OUT DX,AL

MOV AL,00

MOV DX,PC55

OUT DX,AL

IN AL,DX

AND AL,0FH

MOV KEYC,AL

KEY1: MOV AL,8aH

MOV DX,P55CTL

OUT DX,AL

MOV AL,00

MOV DX,PC55

OUT DX,AL

IN AL,DX

AND AL,0F0H

MOV KEYR,AL

MOV AL,KEYC

OR AL,KEYR

MOV SI,OFFSET TABLE

MOV CX,16

MOV DL,00H

KEY2: CMP AL,[SI]

JZ KEY3

INC SI

INC DL

DEC CX

JZ KEYEND

JMP KEY2

KEY3: MOV KEY,DL

KEYEND: RET

TESTKEY ENDP

DISP PROC ;显示子程序PUSH DS

PUSH AX

MOV AL,KEY

MOV AH,0

LEA BX,DCTBL

MOV SI,AX

MOV AL,[BX+SI]

MOV NUM2,AL

MOV NUM1,03H

CALL DISP1

POP AX

POP DS

RET

DISP ENDP

DISP1 PROC

PUSH DX

PUSH AX

MOV DX,288H

MOV AL,NUM1

OUT DX,AL

MOV DX,284H

MOV AL,NUM2

OUT DX,AL

CALL DELAY1

POP AX

POP DX

RET

DISP1 ENDP

DELAY1 PROC NEAR

PUSH CX

MOV CX,0F00H

LOOP $

POP CX

RET

DELAY1 ENDP

DELAY2 PROC NEAR

...

DELAY2 ENDP ;同SY8259.ASM CODE ENDS

END

SY82552开关状态输入模块的流程框图及程序清单流程框图如图5

程序如下:

; 开关状态输入模块 SY82552.ASM

PA55 EQU 280H

PB55 EQU 281H

PC55 EQU 282H

P55CTL EQU 283H

DATE SEGMENT

MESS2 DB 'Press any key to SUBMAIN MENU !',0DH,0AH,0DH,0AH,'$'

DCTBL DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h NUM DW ?

DATE ENDS

STAC SEGMENT PARA STACK 'STACK'

STA DW 50 DUP(?)

TOP EQU LENGTH STA

STAC ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATE,SS:STAC,ES:DATE

PUBLIC F82552

F82552 PROC FAR

MOV AX,DATE

MOV DS,AX

MOV ES,AX

MOV AH,09H

MOV DX,OFFSET MESS2

INT 21H

MOV DX,P55CTL

MOV AL,9BH

OUT DX,AL

图5 开关输入模块

LOP0: MOV DX,PB55

IN AL,DX

MOV BL,AL

MOV AH,00H

MOV NUM,AX

CALL DISP

MOV DL,0FFH

MOV AH,06H

INT 21H

JZ LOP0

QUIT: MOV AL,00H

RET

F82552 ENDP

DISP PROC NEAR ;显示子程序同SY8259

...

DISP ENDP

DELAY1 PROC NEAR

...

DELAY2 PROC NEAR ;延迟子程序同前面SY8259

...

CODE ENDS

END

(4)A/D-D/A综合模块:

SYAD1模块功能

通过PC机键盘输入一个00H--0FFH的两位16进制数(字母要求为大写),送给DAC0832,在其输出端OUT1(或VOUT2,其幅值是VOUT1的两倍)得到一个0--5V的直流电压。再通过ADC0809的IN4端口对VOUT1进行采样并以16进制形式显示在屏幕上,同时可用示波器或万用表测量VOUT1(或VOUT2)输出的模拟电压与输入和输出的16进制值进行比较。

SYAD1流程框图与程序清单:

流程图如图 6

图 6

源程序如下:

; 数模模数转换模块 syad1.asm

DACS EQU 290H

ADCS EQU 28cH

ADPORT EQU 28cH

PUBLIC ADDA

EXTRN F82552:FAR

DATA SEGMENT PUBLIC 'DATA'

MES1 DB '******* SUBMAIN MENU ********',0DH,0AH

DB 'PRESS 1 TO INPUT DATA!',0DH,0AH

DB 'PRESS 2 TO OUTPUT WAVE!',0DH,0AH

DB 'PRESS 3 TO QUIT TO DOS',0DH,0AH

DB 'PRESS 4 TO EXIT TO MAIN MENU',0AH,0DH,'$' MES2 DB 'PLEASE INPUT DATA OF HEX:','$'

MES3 DB 'PRESS ANY KEY TO MAIN MANU!',0DH,0AH,'$' MES4 DB 'THE OUTPUT DATA IS:','$'

BUF DB 2 DUP (?)

CRLF DB 0AH,0DH,'$'

DATA ENDS

STAC SEGMENT PARA 'STACK'

DB 50 DUP(?)

STAC ENDS

CODE SEGMENT

ASSUME CS:CODE,SS:STAC,DS:DATA

ADDA PROC FAR

STAR: LEA DX,MES1

MOV AH,9

INT 21H

LOP1: MOV DL,0FFH

MOV AH,6

INT 21H

JZ LOP1

JZ DA

CMP AL,'2'

JZ CWAVE

CMP AL,'3'

JZ EXIT0

CMP AL,'4'

JZ RE

JMP STAR

EXIT0: JMP EXIT

RE: JMP RETN0

CWAVE: CALL F82552

MOV AL,00H

JMP STAR

DA: LEA DX,MES2

MOV AH,9

INT 21H

MOV AH,1

INT 21H ;从键盘接收数据

MOV BUF,AL ;以ASCII码存入BUF中 INT 21H

MOV BUF[1],AL

LEA DX,CRLF

MOV AH,09H

INT 21H

DA0: MOV AL,BUF ;ASCII码转换为二进制数 SUB AL,30H

CMP AL,9

JBE A0

SUB AL,7

A0: MOV BL,AL

MOV AL,BUF[1]

SUB AL,30H

CMP AL,9

JBE B0

SUB AL,7

B0: MOV CL,4

ROL BL,CL

XOR AL,BL

MOV DX,DACS

OUT DX,AL ;数据给DAC0832

MOV DL,0DH

MOV AH,2

INT 21H

(完整版)软件详细设计说明书模板

软件详细设计说明书 v1.0 200X年月XX日 修订历史记录

编制 审查 审核 批准 文档评审负责人:参加评审人员:

目录 1引言 (4) 1.1编写目的 (4) 1.2背景 (4) 1.3定义 (4) 1.4设计依据 (4) 2软件系统结构 (4) 2.1功能需求 (4) 2.2子模块划分 (4) 2.3子模块间关系 (4) 3公共数据结构 (4) 4程序设计说明 (5) 4.1程序1设计说明 (5) 4.1.1程序描述 (5) 4.1.2功能 (5) 4.1.3性能 (5) 4.1.4输入 (5) 4.1.5输出 (5) 4.1.6算法 (5) 4.1.7流程 (5) 4.2程序2设计说明 (5) 5模块重用说明 (5)

1引言 1.1编写目的 〖说明编写这份软件详细设计说明书的目的〗 1.2背景 〖说明待开发软件(子)系统的名称和此软件(子)系统所属大系统的名称; 说明任务的来源(开发背景和市场背景)等;该软件(子)系统与大系统中其他子系统的关系。〗 1.3定义 〖列出本文档中所用到的专门术语的定义和缩写词的原意〗 1.4设计依据 〖列出本文档所引用的有关设计依据(标题、文件编号、版本号、作者、发布日期、出版单位),包括本项目内部已编写的有效文档、出版刊物和国家标准或规范〗2软件系统结构 2.1功能需求 2.2子模块划分 〖说明本软件系统(或模块)的实现,即其内部的子模块划分(给出程序的名称和标识符)。建议以图形说明。〗 1.XXXXXXXX 2.XXXXXXXX 3.XXXXXXXX 4.XXXXXXXX 5.XXXXXXXX 6.XXXXXXXX 2.3子模块间关系 〖说明各子模块间的控制、顺序等耦合关系。〗 3公共数据结构 〖给出本软件系统使用的每一个公共数据结构的类型定义、存储方式,公共数据结构内各元素项的类型定义、初始取值、可能取值的范围及相应的物理含义。建议以类似C语言的数据说明格式来描述。〗

系统硬件综合设计

计算机与信息学院 《系统硬件综合设计》 课程设计报告 学生姓名:李 学号: 1234567890 专业班级:计算机 2017 年 07 月 01日

一、实验原理及设计 本次试验我主要根据上图进行理解和编程,起先参考了5个基础实验,期间又翻阅了自己动手写cpu,并且在网上查了很多资料,下面我将对该图做出我的理解和设计: 1.pcf部分 always @(posedge Clk) begin PCPlus4F_Reg = PCPlus4F; if (BranchM&ZeroM) PCF = PCBranchM; else PCF = PCPlus4F; InstructionF_Reg = InstructionF; if (InstructionF[31:26] == 6'b000010) begin PCF = {6'h0,InstructionF[25:0]}; PCF = PCF << 2; end End assign PCPlus4F = PCF + 4; assign ImemRdAddrF = PCF; 每个时钟上升沿到来,根据上一个时钟的PCSrcM判断是否为分支指令,若是,则选择PCBranchM作为这个时钟的指令地址,否则选PCF+4作为这个指令的指令地址,另外对于J类指令,我设计了一个特定的OpCode==“000010”,即为跳转指令,因为每个指令以字节格式存储,占用,4个字节,故将后26位立即数进行位扩展后将其左移两位,效果等同于乘4,再将其赋值给PCF,这样下一跳的指令地址即为所要跳转的地址。对于这个部分,我起先是准备将其设计成一个模块的,之后由于模块接口连接时出现了无法解决的错误:输出PCF要作为Instruction Memory的输入,又要作为自身模块下一跳的输入,导致三者关联一起变化,程序报错,后来我又想到将PCF的输出改成两个,PCFout 及PCFnext,PCFout作为Instruction Memory的输入,PCFnext作为自身模块下一跳的输入,但是程序仍无法正常运行,最后我想到了在top模块中对PCF进行处理并得以实现。

软件详细设计文档模板(最全面)

研发生产中心文档编号版本A1 密级商密A 项目名称Xx系统 项目来源 Xxx系统 详细设计说明书 (内部资料请勿外传) 编写:日期:检查:日期:审核:日期:批准:日期: XX公司 版权所有不得复制 文档变更记录

序号变更(+/-)说明作者版本号日期批准1 2

目录 1. 引言 (5) 1.1 编写目的和范围 (5) 1.2 术语表 (5) 1.3 参考资料 (5) 1.4 使用的文字处理和绘图工具 (5) 2. 全局数据结构说明 (7) 2.1 常量 (7) 2.2 变量 (8) 2.3 数据结构 (8) 3. 模块设计 (9) 3.1 用例图 (9) 3.2 功能设计说明 (10) 3.2.1 模块1 (10) 3.2.2 模块2 (11) 4. 接口设计 (12) 4.1 内部接口 (12) 4.2 外部接口 (12) 4.2.1 接口说明 (12) 4.2.2 调用方式 (12) 5. 数据库设计 (12) 6. 系统安全保密设计 (12) 6.1 说明 (12) 6.2 设计 (12) 6.2.1 数据传输部分 (12) 6.2.2 IP过滤分部 (13) 6.2.3 身份验证部分 (13) 7. 系统性能设计 (13) 8. 系统出错处理 (13)

1.引言 1.1背景 此文档的背景 1.2编写目的和范围 说明写这份详细设计说明书的目的。 本详细设计说明书编写的目的是说明程序模块的设计考虑,包括程序描述、输入/输出、算法和流程逻辑等,为软件编程和系统维护提供基础。本说明书的预期读者为系统设计人员、软件开发人员、软件测试人员和项目评审人员。 1.3术语表 定义系统或产品中涉及的重要术语,为读者在阅读文档时提供必要的参考信息。 序号术语或缩略语说明性定义 1 PM Project Manager,项目经理 2 1.4参考资料 列出有关资料的名称、作者、文件编号或版本等。参考资料包括: a.需求说明书、架构设计说明书等; b.本项目的其他已发表的文件; c.引用文件、资料、软件开发标准等。 资料名称作者文件编号、版本资料存放地点 1.5使用的文字处理和绘图工具 文字处理软件:[编写设计文档使用的文字处理软件,如RedOffice ] 绘图工具:[使用的UML工具,如Rose、Jude、Visio]

系统硬件综合设计

计算机与信息学院 系统硬件综合设计》 课程设计报告 学生姓名:李 学号:1234567890 专业班级:计算机 2017 年07 月01 日

1.pcf 部分 always @(posedge Clk) begin PCPlus4F_Reg = PCPlus4F; if (BranchM&ZeroM) PCF = PCBranchM; else PCF = PCPlus4F; InstructionF_Reg = InstructionF; if (InstructionF[31:26] == 6'b000010) begin PCF = {6'h0,InstructionF[25:0]}; PCF = PCF << 2; end End assign PCPlus4F = PCF + 4; assign ImemRdAddrF = PCF; 每个时钟上升沿到来,根据上一个时钟的PCSrcM判断是否为分支指令,若是,则选择 PCBranchM作为这个时钟的指令地址,否则选PCF+4作为这个指令的指令地址,另外对于J 类指令,我设计了一个特定的OpCode=“= 000010”,即为跳转指令,因为每个指令以字节格式存储,占用,4 个字节,故将后26 位立即数进行位扩展后将其左移两位,效果等同于乘4,再将其赋值给PCF,这样下一跳的指令地址即为所要跳转的地址。对于这个部分,我起先是准备将其设计成一个模块的,之后由于模块接口连接时出现了无法解决的错误:输出PCF要作为Instruction Memory 的输入,又要作为自身模块下一跳的输入,导致三者关联一起变化,程序报错,后来我又想到将PCF的输出改成两个,PCFout 及PCFnext,PCFout 作为Instruction Memory的输入,PCFnext 作为自身模块下一跳的输入,但是程序仍无法正常运行,最后我想到了在top 模块中对PCF进行处理并得以实

详细设计模板

。 目录 1引言 1.1编写目的 1.2背景 1.3参考资料 1.4术语定义及说明 2设计概述 2.1任务和目标 2.1.1需求概述 2.1.2运行环境概述 2.1.3条件与限制 2.1.4详细设计方法和工具 3系统详细需求分析 3.1详细需求分析 3.2详细系统运行环境及限制条件分析接口需求分析4总体方案确认 4.1系统总体结构确认 4.2系统详细界面划分 4.2.1应用系统与支撑系统的详细界面划分 4.2.2系统内部详细界面划分 5系统详细设计 5.1系统结构设计及子系统划分

。 5.2系统功能模块详细设计 5.3系统界面详细设计 5.3.1外部界面设计 5.3.2内部界面设计 5.3.3用户界面设计 6数据库系统设计 6.1设计要求 6.2信息模型设计 6.3数据库设计 6.3.1设计依据 6.3.2数据库选型 6.3.3数据库种类及特点 6.3.4数据库逻辑结构 6.3.5物理结构设计 6.3.6数据库安全 6.3.7数据字典 7网络通信系统设计 7.1设计要求 7.2网络结构确认 7.3网络布局设计 7.4网络接口设计 8信息编码设计

。 8.1代码结构设计 8.2代码编制 9维护设计 9.1系统的可靠性和安全性 9.2系统及用户维护设计 9.3系统扩充 9.4错误处理 9.4.1出错类别 9.4.2出错处理 9.4.3系统调整及再次开发问题 10系统配置 10.1配置原则 10.2硬件配置 10.3软件配置 11关键技术 11.1关键技术的提出 11.2关键技术的一般说明 11.3关键技术的实现方案 12组织机构及人员配置 13投资预算概算及资金规划 14实施计划 14.1限制

软件详细设计模板

需求名称Array— ( [ XXX项目小组

修订表

审批记录 目录 1.引言.............................................................. 错误!未定义书签。 目的............................................................... 错误!未定义书签。 ` 范围............................................................... 错误!未定义书签。 读者对象........................................................... 错误!未定义书签。 参考资料........................................................... 错误!未定义书签。 术语与缩略语....................................................... 错误!未定义书签。 2.设计概述.......................................................... 错误!未定义书签。 任务和目标......................................................... 错误!未定义书签。 3.系统详细需求分析.................................................. 错误!未定义书签。 详细需求分析....................................................... 错误!未定义书签。 # 详细系统运行环境及限制条件分析接口需求分析 ......................... 错误!未定义书签。 4.总体方案确认...................................................... 错误!未定义书签。 系统总体结构确认................................................... 错误!未定义书签。 系统详细界面划分................................................... 错误!未定义书签。 应用系统与支撑系统的详细界面划分 ....................... 错误!未定义书签。 系统内部详细界面划分 ................................... 错误!未定义书签。 5.系统详细设计...................................................... 错误!未定义书签。 系统结构设计及子系统划分 ........................................... 错误!未定义书签。 ? 系统功能模块详细设计..................................................... 错误!未定义书签。 系统界面详细设计 ......................................................... 错误!未定义书签。 外部界面设计................................................... 错误!未定义书签。 内部界面设计................................................... 错误!未定义书签。

软件详细设计方案模板

QR-RD-022(Ver1.2) Xxx软件 概要设计方案 (内部资料请勿外传) 编写:日期: 检查:日期: 审核:日期: 批准:日期: XX公司 版权所有不得复制

文档变更记录

目录 1. 引言 (4) 1.1 编写目的和范围 (4) 1.2 术语表 (4) 1.3 参考资料 (4) 2. 需求 (5) 2.1 总体描述 (5) 2.2 功能 (5) 2.3 性能分析 (8) 2.3.1 精度 (8) 2.3.2 时间特性 (8) 2.3.3 灵活性 (9) 2.3.4 可靠性,可维护性,可操作性、防呆性 (9) 3. 环境 (10) 3.1 设备环境 (10) 3.2 软件环境 (10) 3.3 接口 (10) 3.4 保密与安全 (11) 3.4.1 说明 (11) 3.4.2 设计 (11) 3.4.3 数据传输部分 (11) 3.4.4 IP过滤分部 (11) 4. 业务功能设计 (11) 4.1 运行过程 (11) 4.2 逻辑流程 (11) 4.3 功能模块 (13) 4.4 数据流向 (14) 4.4.1 输入 (14) 4.4.2 输出 (15) 4.5 通信协议 (18) 5. 数据库设计 (29) 6. 系统出错处理 (30)

1.引言 1.1 编写目的和范围 说明写这份详细设计说明书的目的。 本详细设计说明书编写的目的是说明程序模块的设计考虑,包括程序描述、输入/输出、算法和流程逻辑等,为软件编程和系统维护提供基础。本说明书的预期读者为系统设计人员、软件开发人员、软件测试人员和项目评审人员。 1.2 术语表 定义系统或产品中涉及的重要术语,为读者在阅读文档时提供必要的参考信息。 1.3 参考资料 列出有关资料的名称、作者、文件编号或版本等。参考资料包括: a.需求说明书、架构设计说明书等; b.本项目的其他已发表的文件; c.引用文件、资料、软件开发标准等。

电源设计模块芯片资料

7805稳压电源电路图 7805管脚图 7805典型应用电路图:

78XX系列集成稳压器的典型应用电路如下图所示,这是一个输出正5V直流电压的稳压电源电路。IC采用集成稳压器7805,C1、C2分别为输入端和输出端滤波电容,RL为负载电阻。当输出电较大时,7805 应配上散热板。 下图为提高输出电压的应用电路。稳压二极管VD1串接在78XX稳压器2脚与地之间,可使输出电压Uo 得到一定的提高,输出电压Uo为78XX稳压器输出电压与稳压二极管VC1稳压值之和。VD2是输出保护

二极管,一旦输出电压低于VD1稳压值时,VD2导通,将输出电流旁路,保护7800稳压器输出级不被损坏。 下图为输出电压可在一定范围内调节的应用电路。由于R1、RP电阻网络的作用,使得输出电压被提高,提高的幅度取决于RP与R1的比值。调节电位器RP,即可一定范围内调节输出电压。当RP=0时,输出电压Uo等于78XX稳压器输出电压;当RP逐步增大时,Uo也随之逐步提高。 下图为扩大输出电流的应用电路。VT2为外接扩流率管,VT1为推动管,二者为达林顿连接。R1为偏置电阻。该电路最大输出电流取决于VT2的参数。 7905概述

下图为提高输入电压的应用电路。78XX稳压器的最大输入电压为35V(7824为40V),当输入电压高于此值时,可采用下图所示的电路。VT、R1和VD组成一个预稳压电路,使得加在7800稳压器输入端的电压恒定在VD的稳压值上(忽略VT的b-e结压降)。Ui端的最大输入电压仅取决于VT的耐压。 集成稳压器还可以用作恒流源。下图为78XX稳压器构成的恒流源电路,其恒定电流Io等于78XX稳压器输出电压与R1的比值。

软件开发文档模板

软件开发文档模板 1 可行性研究报告 可行性研究报告的编写目的是:说明该软件开发项目的实现在技术、经济和社会条件方面的可行性;评述为了合理地达到开发目标而可能先择的各种方案;说明论证所选定的方案。可行性研究报告的编写内容要求如下: 1.1 引言 1.1.1 编写目的 1.1.2 背景 1.1.3 定义 1.1.4 参考资料 1.2 可行性研究的前提 1.2.1 要求 1.2.2 目标 1.2.3 条件、假定和限制 1.2.4 进行可行性研究的方法 1.2.5 评价尺度 1.3 对现有系统的分析 1.3.1 数据流程和处理流程 1.3.2 工作负荷 1.3.3 费用开支 1.3.4 人员 1.3.5 设备 1.3.6 局限性 1.4 所建议的系统 1.4.1 对所建议系统的说明 1.4.2 数据流程各处理流程 1.4.3 改进之处 1.4.4 影响 1.4.4.1 对象设备的影响 1.4.4.2 对软件的影响 1.4.4.3 对用户单位机构的影响 1.4.4.4 对系统动行的影响 1.4.4.5 对开发的影响 1.4.4.6 对地点和设施的影响 1.4.4.7 对经费开支的影响 1.4.5 局限性 1.4.6 技术条件方面的可行性 1.5 可选择其他系统方案 1.5.1 可选择的系统方案 1 1.5.2 可选择的系统方案 2 …… 1.6 投资及收益分析 1.6.1 支出 1.6.1.1 基本建设投资

1.6.1.2 其他一次性支出 1.6.1.3 非一次性支出 1.6.2 收益 1.6. 2.1 一次性收益 1.6. 2.2 非一次性收益 1.6. 2.3 不可定量的收益 1.6.3 收益/投资比 1.6.4 投资回收周期 1.6.5 敏感性分析 1.7 社会条件方面的可行性 1.7.1 法律方面的可行性 1.7.2 使用方面的可行性 1.8 结论 2 项目开发计划 编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度所需经费预算、所需软、硬件条件等问题作出安排记载下来,以便根据本计划开展和检查本项目的开发工作。编制内容要求如下: 2.1 引言 2.1.1 编写目的 2.1.2 背景 2.1.3 定义 2.1.4 参考资料 2.2 项目概述 2.2.1 工作内容 2.2.2 主要参加人员 2.2.3 产品及成果 2.2. 3.1 程序 2.2. 3.2 文件 2.2. 3.3 服务 2.2. 3.4 非移交产品 2.2.4 验收标准 2.2.5 完成项目的最迟期限 2.2.6 本计划的审查者与批准者 2.3 实施总计划 2.3.1 工作任务的分解 2.3.2 接口人员 2.3.3 进度 2.3.4 预算 2.3.5 关键问题 2.4 支持条件 2.4.1 计算机系统支持 2.4.2 需要用户承担的工作 2.4.3 需由外单位提供的条件 2.5 专题计划要点

电源模块设计分析

电源模块设计分析 电源模块是可以直接贴装在印刷电路板上的电源供应器(参看图1),其特点是可为专用集成电路(ASIC)、数字信号处理器(DSP)、微处理器、存储器、现场可编程门阵列(FP GA) 及其他数字或模拟负载提供供电。一般来说,这类模块称为负载点(POL) 电源供应系统或使用点电源供应系统(PUPS)。由于模块式结构的优点甚多,因此高性能电信、网络联系及数据通信等系统都广泛采用各种模块。虽然采用模块有很多优点,但工程师设计电源模块以至大部分板上直流/直流转换器时,往往忽略可靠性及测量方面的问题。本文将深入探讨这些问题,并分别提出相关的解决方案。 图1,电源供应器 采用电源模块的优点 目前不同的供应商在市场上推出多种不同的电源模块,而不同产品的输入电压、输出功率、功能及拓扑结构等都各不相同。采用电源模块可以节省开发时间,使产品可以更快推出市场,因此电源模块比集成式的解决方案优胜。电源模块还有以下多个优点: ● 每一模块可以分别加以严格测试,以确保其高度可靠,其中包括通电测试,以便剔除不合规格的产品。相较之下,集成式的解决方案便较难测试,因为整个供电系统与电路上的其他功能系统紧密联系一起。 ● 不同的供应商可以按照现有的技术标准设计同一大小的模块,为设计电源供应器的工程师提供多种不同的选择。 ● 每一模块的设计及测试都按照标准性能的规定进行,有助减少采用新技术所承受的风险。 ● 若采用集成式的解决方案,一旦电源供应系统出现问题,便需要将整块主机板更换;若采用模块式的设计,只要将问题模块更换便可,这样有助节省成本及开发时间。

容易被忽略的电源模块设计问题 虽然采用模块式的设计有以上的多个优点,但模块式设计以至板上直流/直流转换器设计也有本身的问题,很多人对这些问题认识不足,或不给予足够的重视。以下是其中的部分问题: ● 输出噪音的测量; ● 磁力系统的设计; ● 同步降压转换器的击穿现象; ● 印刷电路板的可靠性。 这些问题会将在下文中一一加以讨论,同时还会介绍多种可解决这些问题的简单技术。 输出噪音的测量技术 所有采用开关模式的电源供应器都会输出噪音。开关频率越高,便越需要采用正确的测量技术,以确保所量度的数据准确可靠。量度输出噪音及其他重要数据时,可以采用图2 所示的Tektronix 探针探头(一般称为冷喷嘴探头),以确保测量数字准确可靠,而且符合预测。这种测量技术也确保接地环路可减至最小。 图2,测量输出噪音数字 进行测量时我们也要将测量仪表可能会出现传播延迟这个因素计算在内。大部分电流探头的传播延迟都大于电压探头。因此必须同时显示电压及电流波形的测量便无法确保测量数字的准确度,除非利用人手将不同的延迟加以均衡。 电流探头也会将电感输入电路之内。典型的电流探头会输入600nH 的电感。对于高频的电路设计来说,由于电路可承受的电感不能超过1mH,因此,经由探头输入的电感会影响di/dt 电流测量的准确性,甚至令测量数字出现很大的误差。若电感器已饱和,则可采用

软件详细设计报告文档模板

软件详细设计报告文档模板 1.引言 1.1编写目的 说明编写详细设计方案的主要目的。 说明书编制的目的是说明一个软件系统各个层次中的每个程序(每个模块或子程序)和数据库系统的设计考虑,为程序员编码提供依据。 如果一个软件系统比较简单,层次很少,本文件可以不单独编写,和概要设il?说明书中不重复部分合并编写。 方案重点是模块的执行流程和数据库系统详细设计的描述。 1.2背景 应包含以下几个方而的容: A.待开发软件系统爼称: B.该系统基本概念,如该系统的类型、从属地位等; C.开发项目组轻称。 1.3參考资料 列出详细设讣报告引用的文献或资料,资料的作者、标题、出版单位和出版日期等信息,必要时说明如何得到这些资料。 1.4术语定义及说明 列岀本文档中用到的可能会引起混淆的专门术语、左义和缩写词的原文。 2.设计概述 2.1任务和目标 说明详细设计的任务及详细设汁所要达到的目标。 1丄1需求概述

对所开发软件的槪要描述,包括主要的业务需求、输入、输出、主要功能、性能等,尤其需要描述系统性能需求。 1.1.2运行环境概述 对本系统所依赖于运行的硬件,包括操作系统、数据库系统、中间件、接口软件、可能的性能监控与分析等软件环境的描述,及配置要求。 1」.3条件与限制 详细描述系统所受的部和外部条件的约束和限制说明。包括业务和技术方而的条件与限制以及进度、管理等方而的限制。 1.1.4详细设计方法和工具 简要说明详细设计所采用的方法和使用的工具。如HIPO图方法、IDEF(I2DEF)方法、E-R图,数据流程图、业务流程图、选用的CASE I具等,尽量采用标准规和辅助工具。 3.系统详细需求分析 主要对系统级的需求进行分析。首先应对需求分析提出的企业需求进一步确认,并对由于情况变化而带来的需求变化进行较为详细的分析。 3.1详细需求分析 包括: ?详细功能需求分析 ?详细性能需求分析 ?详细资源需求分析 ?详细系统运行环境及限制条件分析 3.2详细系统运行环境及限制条件分析接口需求分析 包括: ?系统接口需求分析 ?现有硬、软件资源接口需求分析 ?引进硬、软件资源接口需求分析

单片机硬件系统设计原则

单片机硬件系统设 计原则 1

单片机硬件系统设计原则 一个单片机应用系统的硬件电路设计包含两部分内容:一是系统扩展,即单片机内部的功能单元,如ROM、RAM、I/O、定时器/计数器、中断系统等不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统的配置,即按照系统功能要求配置外围设备,如键盘、显示器、打印机、A/D、D/A转换器等,要设计合适的接口电路。 系统的扩展和配置应遵循以下原则: 1、尽可能选择典型电路,并符合单片机常规用法。为硬件系统的标准 化、模块化打下良好的基础。 2、系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,并留有适当余地,以便进行二次开发。 3、硬件结构应结合应用软件方案一并考虑。硬件结构与软件方案会产生相互影响,考虑原则是:软件能实现的功能尽可能由软件实殃,以简化硬件结构。但必须注意,由软件实现的硬件功能,一般响应时间比硬件实现长,且占用CPU时间。 2

4、系统中的相关器件要尽可能做到性能匹配。如选用CMOS芯片单片机构成低功耗系统时,系统中所有芯片都应尽可能选择低功耗产品。 5、可靠性及抗干扰设计是硬件设计必不可少的一部分,它包括芯片、器件选择、去耦滤波、印刷电路板布线、通道隔离等。 6、单片机外围电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作不可靠,可经过增设线驱动器增强驱动能力或减少芯片功耗来降低总线负载。 7、尽量朝”单片”方向设计硬件系统。系统器件越多,器件之间相互干扰也越强,功耗也增大,也不可避免地降低了系统的稳定性。随着单片机片内集成的功能越来越强,真正的片上系统SoC已经能够实现,如ST公司新近推出的μPSD32××系列产品在一块芯片上集成了80C32核、大容量FLASH 存储器、SRAM、A/D、I/O、两个串口、看门狗、上电复位电路等等。单片机系统硬件抗干扰常见方法实践 影响单片机系统可靠安全运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统结构设计、元器件选择、安装、制造工艺影响。这些都构成单片机系统的干扰因素,常会导致单片机系统运行失常,轻则影响产品质量和产量,重则会导致事故,造成重大经济损失。 3

48V50A开关电源整流模块主电路设计

48V/50A开关电源整流模块主电路设计 高频开关电源系统具有体积小,重量轻,高效节能,输出纹波小,输出杂音电压小和动态响应性能好等很多优点,现已开始逐步地取代整流式电源而成为现代通讯设备的新型基础电源系统。随着电子技术,电力电子技术,自动控制技术和计算机控制技术的发展,高频开关电源系统的性能也越来越好。通信用开关电源系统作为开关式稳压电源的一种形式,它的设计内容和设计方法都具有自己的特殊性。 要设计一套通信用开关电源系统,首先要明白对它的全面要求,然后再设计系统的各个部分。高频开关电源主回路和控制回路所用的电路形式,元器件,控制方式都发展很快。它们的设计具有特殊的内容和方法。 1设计要求和具体电路设计 通信基础开关电源系统的关键部分是开关电源整流模块。整流模块的规格很多,结合在工 作中遇到的实际情况,提出该模块设计的硬指标如下: 1) 电网允许的电压波动范围 单相交流输入,有效值波动范围:220 V±20%,即176~264 V;频率:45~65 Hz。 2) 直流输出电压,电流 输出电压:标称-48V,调节范围:浮充,43~56?5V;均充,45~58V。 输出电流:额定值:50A。 3) 保护和告警性能 ①当输入电压低到170 VAC或高到270 VAC,或散热器温度高到75 ℃时,自动关机。 ②当模块直流输出电压高到60 V,或输出电流高到58~60 A时,自动关机。 ③当输出电流高到53~55 A时,自动限流,负载继续加大时,调低输出电压。

4) 效率和功率因数 模块的效率不低于88%,功率因数不低于0.99。 5) 其他指标 模块的其他性能指标都要满足“YD/T731”和“入网检验实施细则”等行业标准。 由于模块的输出功率不大,可采用如下的基本方案来设计主电路: 1) 单相交流输入,采用高频有源功率因数校正技术,以提高功率因数; 2) 采用双正激变换电路拓扑形式,工作可靠性高; 3) 主开关管采用 V MOSFET,逆变开关频率取为50 kHz; 4) 采用复合隔离的逆变压器,一只变压器双端工作; 5) 采用倍流整流电路,便于绕制变压器。 依照上述方案,即可设计出主电路的基本形式如图1。 图1 48V/50A整流模块DC/DC主电路基本形式 以下即可按照模块设计的要求来确定主电路中各元器件的基本参数。 1) 输出整流管的选择 输出整流二极管的工作波形如图2所示。

2 系统硬件设计

2 系统硬件设计 2.1 系统总体设计结构 太阳能热水器控制器主要由温度水位数据采集模块、单片机控系统。本次设计选用的是AT89C52单片机作为核心控制器,组成热水器微控制系统。传感器采用的是单片集成两端感温电流源DS18B20温度传感器,用于检测水温,并负责将检测到的水压转换成0~5V的模拟信号,然后通过ADC0832模数转换器把检测到的温度电压信号转换成数字信号,一方面由单片机AT89C52完成最终完成太阳能热水器控制器的控制功能,另一方面通过LED显示当前温度和水位值,另外一方面与温度和水位设定值进行比较、运算,根据结果发出相应的上水、加热指令,对热水器的温度和水位进行控。 2.2 温度检测电路 温度检测部分是实现温度智能控制的重要环节,只有准确地检测出温度,才能通过软件实现辅助加热。其性能的好坏直接影响系统的性能,对于温度检测,目前比较理想的是集成温度传感器DS18B20,因此温度传感器采用是美国模拟器件公司生产的单片集成两端感温电流源DS18B20。DS18B20温度传感器是一种已经IC化的温度感测器,它会将温度转换为电流,在单片机的各种课本中经常看到。其规格如下: (1)温度每增加1℃,它会增加1μA输出电流; (2)可测量范围-55℃至125℃; (3)供电电压范围+3V至+5V。 AD590的管脚图及元件符号如2.2所示:

图2.2 DS18B20的管脚图及元件符号 DS18B20的输出电流值说明如下: 其输出电流是以绝对温度零度(-273℃)为基准,每增加1℃,它会增加1μA输出电流,因此在室温25℃时,其输出电流Iout=(273+25)=298μA。 2.2.1 DS18B20的主要特性 (1)适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电; (2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯; (3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温; (4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内; (5)温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃; (6)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温; (7)在9位分辨率时最多在 93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快; (8)测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力; (9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。 2.2.2 DS18B20工作原理 图2.3 DS18B20测温原理图 DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s 减为750ms。 DS18B20测温原

软件详细设计文档模板

项目编号: (项目名称) 软件详细设计报告文件编号:生效日期:年月日 编制:日期:审核: 日期: 批准: 日期:同方锐安科技有限公司

目录 1. 引言 (1) 1.1编写目的 (1) 1.2项目风险 (1) 1.3文档约定 (1) 1.4预期读者和阅读建议 (1) 1.5参考资料 (2) 2. 支撑环境 (2) 2.1数据库管理系统 (2) 2.2开发工具、中间件以及数据库接口 (2) 2.3硬件环境 (2) 2.4网络环境 (3) 2.5多种支撑环境开发要点 (3) 3. 部件详细设计 (4) 4. 词汇表 (5) 5. 部件表格式 (5) 6. 界面表格式 (6)

1. 引言 引言是对这份软件系统详细设计报告的概览,是为了帮助阅读者了解这份文档如何编写的,并且应该如何阅读、理解和解释这份文档。 1.1 编写目的 说明这份软件系统详细设计报告是基于哪份软件产品需求分析报告、哪份软件产品概要设计报告和哪份软件产品数据库设计说明书(如果该软件产品需要数据库支持)编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件系统详细设计报告详尽说明了该软件产品的编码结构,从而对该软件产品的物理组成进行准确的描述。 1.2 项目风险 具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险,首要风险承担者包括: ●任务提出者; ●软件开发者; ●产品使用者。 1.3 文档约定 描述编写文档时所采用的标准(如果有标准的话),或者各种编写约定。 编写约定包括: ●部件编号方式; ●界面编号方式; ●命名规范: ● 1.4 预期读者和阅读建议 列举本软件系统详细设计报告所针对的各种不同的预期读者,描述文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。 读者包括: ●开发人员; ●项目经理; ●测试人员; ●文档编写人员; ●

软件开发设计文档模板

软件文档编写指南 封面格式: 文档编号 版本号 文档名称: 项目名称: 项目负责人: 编写年月日 校对年月日 审核年月日 批准年月日 开发单位 系统规约说明书(System Specification) 一.引言 A.文档的范围和目的 B.概述 1.目标 2.约束 二.功能和数据描述 A.系统结构 1.结构关系图 2.结构关系图描述 三.子系统描述 A.子系统N的结构图规约说明 B.结构字典 C.结构连接图和说明 四.系统建模和模拟结构 A.用于模拟的系统模型

B.模拟结果 C.特殊性能 五.软件项目问题 A.软件项目可行性研究报告 B.软件项目计划 六.附录 软件项目可行性研究报告(Report for Feasibility Study) 一.引言 1.编写目的(阐明编写可行性研究报告的目的,指出读者对象) 2.项目背景(应包括:(1)所建议开发的软件名称;(2)项目的任务提出者、开发者、用户及实现单位;(3)项目与其他软件或其他系统的关系。) 3.定义(列出文档中用到的专门术语的定义和缩略词的原文。) 4.参考资料(列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源。)二.可行性研究的前提 1.要求(列出并说明建议开发软件的基本要求,如(1)功能;(2)性能;(3)输出;(4)输入;(5)基本的数据流程和处理流程;(6)安全与保密要求;(7)与软件相关的其他系统;(8)完成期限。) 2.目标(可包括:(1)人力与设备费用的节省;(2)处理速度的提高;(3)控制精度和生产能力的提高;(4)管理信息服务的改进;(5)决策系统的改进;(6)人员工作效率的提高,等等。) 3.条件、假定和限制(可包括:(1)建议开发软件运行的最短寿命;(2)进行系统方案选择比较的期限;(3)经费来源和使用限制;(4)法律和政策方面的限制;(5)硬件、软件、运行环境和开发环境的条件和限制;(6)可利用的信息和资源;(7)建议开发软件投入使用的最迟时间。) 4.可行性研究方法 5.决定可行性的主要因素 三.对现有系统的分析 1.处理流程和数据流程 2.工作负荷 3.费用支出(如人力、设备、空间、支持性服务、材料等项开支。) 4.人员(列出所需人员的专业技术类别和数量。) 5.设备 6.局限性(说明现有系统存在的问题以及为什么需要开发新的系统。) 四.所建议技术可行性分析 1.对系统的简要描述 2.处理流程和数据流程 3.与现有系统比较的优越性 4.采用建议系统可能带来的影响 (1)对设备的影响 (2)对现有软件的影响

系统硬件的设计

第三章系统硬件设计 3.1 孵化恒温箱的介绍 本系统使用单片机AT89C2051来实现对孵化箱温度的控制,蛋类孵化是一个复杂的生物学过程,其内部环境条件随着不同的孵化进程,发生较大的变化。孵化温度一般就认为是孵箱内部温度,孵化温度控制的原则和依据“看胎施温”是孵化温度控制的原则。孵化温度控制的影响因素孵化箱的类型、规模、密封程度、进出气孔的大小、加热系统与孵化规模的匹配程度、孵化的家禽种类、孵化箱的室温等等,每个因素的变化都会影响到孵化温度的稳定。 温度是家禽孵化的首要条件,保持合适的温度是获得较高孵化率及健雏率的前提,虽然孵化的最佳温度是37.8℃,然而在生产中还应该根据实际情况来进行温度的控制,本文就鸡种蛋孵化不同情况下的温度控制进行论述。孵化是养鸡生产中一项重要的技术环节。种蛋质量和孵化条件影响种蛋的孵化率和健雏率,而在孵化条件中,温度自始至终是禽蛋孵化中的主要矛盾,起主导作用。根据胚胎发育状况掌握好孵化温度是禽蛋孵化稳产高产的关键,即必须给胚胎提供一个最适宜的环境温度,这样才能正常完成胚胎的发育,获得较高的孵化率和健雏率。虽然在孵化中有一个最佳温度。然而在实际生产中,影响温度的因素很多。以下是鸡种蛋孵化生产中温度控制的一些基本原则。温度范围与最佳温度孵化中低于某一温度胚胎发育将被抑制。要高于某一温度,胚胎才开始发育,这一温度被称为“生理零度”,也叫临界温度,一般认为鸡的生理零度约为23.9℃,同时胚胎发育对环境温度有一定的适应能力,以鸡为例,温度在35~40.5℃之间,都会有一些种蛋孵出小鸡。在35~40.5℃之间这个温度范围内有一个最佳温度,应该环境温度保持在24~26℃,孵化箱内的最佳温度为37.8℃。环境温度对孵化有一定的影响,环境温度的高低主要影响孵化过程温度控制的精确度。在生产中一般根据不同地域、不同季节而灵活掌握。 恒温孵化和变温孵化是根据环境温度的不同而经常采用的两种孵化方式,恒温孵化与变温孵化如果操作恰当均可取得较好的效果。恒温孵化是在孵化过程中把温度控制在37.0~38.0℃之间,恒温孵化对孵化的环境要求条件较高,环境温度应该保持在22~26℃之间,并且要通风良好。变温孵化是根据孵化机类型、孵化室温度和胚胎发育日龄,给予不同的温度。如果环境温度低于20℃,则孵化温度可比最佳温度高0.5~0.7℃;如果环境温度高于30℃,则可以降低孵化温度0.2~0.6℃。表3.1为一个变温孵化方案[3]。

电源电路设计模块图

电源电路单元 前面介绍了电路图中的元器件的作用和符号。一张电路图通常有几十乃至几百个元器件,它们的连线纵横交叉,形式变化多端,初学者往往不知道该从什么地方开始,怎样才能读懂它。其实电子电路本身有很强的规律性,不管多复杂的电路,经过分析可以发现,它是由少数几个单元电路组成的。好象孩子们玩的积木,虽然只有十来种或二三十种块块,可是在孩子们手中却可以搭成几十乃至几百种平面图形或立体模型。同样道理,再复杂的电路,经过分析就可发现,它也是由少数几个单元电路组成的。因此初学者只要先熟悉常用的基本单元电路,再学会分析和分解电路的本领,看懂一般的电路图应该是不难的。 按单元电路的功能可以把它们分成若干类,每一类又有好多种,全部单元电路大概总有几百种。下面我们选最常用的基本单元电路来介绍。让我们从电源电路开始。 一、电源电路的功能和组成 每个电子设备都有一个供给能量的电源电路。电源电路有整流电源、逆变电源和变频器三种。常见的家用电器中多数要用到直流电源。直流电源的最简单的供电方法是用电池。但电池有成本高、体积大、需要不时更换(蓄电池则要经常充电)的缺点,因此最经济可靠而又方便的是使用整流电源。 电子电路中的电源一般是低压直流电,所以要想从 220 伏市电变换成直流电,应该先把220 伏交流变成低压交流电,再用整流电路变成脉动的直流电,最后用滤波电路滤除脉动直流电中的交流成分后才能得到直流电。有的电子设备对电源的质量要求很高,所以有时还需要再增加一个稳压电路。因此整流电源的组成一般有四大部分,见图 1 。其中变压电路其实就是一个铁芯变压器,需要介绍的只是后面三种单元电路。 二、整流电路 整流电路是利用半导体二极管的单向导电性能把交流电变成单向脉动直流电的电路。 ( 1 )半波整流 半波整流电路只需一个二极管,见图 2 ( a )。在交流电正半周时 VD 导通,负半周时 VD 截止,负载 R 上得到的是脉动的直流电

软件模块详细设计模板

技术文件技术文件名称: 技术文件编号: 版本: 拟制____________________________ 审核____________________________ 会签_____________________________ 标准化__________________________ 批准_____________________________ 中兴软件技术(南昌)有限公司

版本变更记录

目录 版本变更记录 (ii) 目录 (iii) 1 引言.......................................................................................... 1-1—7 ' I 1.1 编写目的.................................. ................. 1-1 1.2 适用范围.................................. ................. 1-1 1.3 预期读者和阅读建议........................ ................. 1-1 1.4 参考资料.................................. ................. 1-1 1.5 引用标准文件.............................. ................ 1-1 2 术语、定义与缩略语............................... ................ 2-2 2.1 术语、定义............................... ................. 2-2 2.2 缩略语.................................... ................ 2-2 3 模块-..................... 错误!未定义书签。 3.1 模块描述.................................. .................. 3-2 3.2 标准模块(可选)........................... ...................3-2 3.3 模块设计.................................. .................. 3-3 3.4 类定义.................................... ................. 3-5 3.4.1 类一.............................. ..................... 错误!未定义书签。 3.5 单兀定义(可选)........................... ................. 3-16 3.5.1 单元一.......................................................................... 3-16

相关主题