单片机技术实验指导书

时间:2019-05-12 17:57:21下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《单片机技术实验指导书》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《单片机技术实验指导书》。

第一篇:单片机技术实验指导书

《单片机控制技术》实验指导书

实验一 流水灯实验(左移右移方式)

一. 实验项目卡编号:59010115-01 二. 实验目的

通过此实验,让大家初步掌握左移位、右移位指令的使用。三. 实验设备

1. S51E单片机学习开发板一块 2. PC微机一台

四. 实验步骤

1. 打开编译软件伟煌MCS51开发系统。

2. 编写源程序并进行调试。要求:小灯先向左依次移动8次,再向右依次移动7次,随后循环前面的工作。

3. 将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 LED7——————P1.6 LED8——————P1.7 4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序 ORG 0000H START:MOV A,#0FFH CLR C MOV R2,#08H LOOP:RLC A MOV P1,A LCALL DELAY DJNZ R2,LOOP MOV R2,#07H LOOP1:RRC A MOV P1,A LCALL DELAY DJNZ R2,LOOP1 JMP START DELAY:MOV R4,#200 D1: MOV R5,#248 DJNZ R5,$ DJNZ R4,D1 RET END

实验二 流水灯实验(利用查表方式)

一.实验项目卡编号:59010115-02 二.实验目的

通过此实验,让同学们掌握查表指令的使用。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1. 打开编译软件伟煌MCS51开发系统。

2. 编写源程序并进行调试。要求:学习利用查表方式,使小灯做舞台灯效果的变化,左移3次,右移3次,闪烁3次,廷时时间为200毫秒。3. 将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 LED7——————P1.6 LED8——————P1.7 4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序 ORG 0000H MOV P1,#00H MOV A,#00H START:MOV DPTR,#TABLE LOOP: CLR A MOVC A,@A+DPTR CJNE A,#01H,LOOP1 JMP START LOOP1:MOV P1,A MOV R3,#20 LCALL DELAY JMP LOOP DELAY:MOV R4,#20 D1: MOV R5,#248 DJNZ R5,$ DJNZ R4,D1 DJNZ R3,DELAY RET TABLE:DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 7FH, 0BFH,0DFH,0EFH DB 0F7H,0FBH,0FDH,0FEH DB 7FH, 0BFH,0DFH,0EFH DB 0F7H,0FBH,0FDH,0FEH DB 7FH, 0BFH,0DFH,0EFH DB 0F7H,0FBH,0FDH,0FEH DB 00H,0FFH,00H,0FFH DB 00H,OFFH

END

实验三 按键的应用(按键控制小灯)

一.实验项目卡编号:59010115-03 二.实验目的

1.掌握按键的识别与处理。2.加强对输入控制的理解。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:利用按键的方式,控制小灯的亮灭,按键后小灯亮,再次按键后小灯灭。了解人为按键的自然规律:由于单片机的指令执行很快,按键必须进行延时来消除抖动,并要求在按键后执行子程序的最后加入一条指令检测按键是否放下。3.将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 SW1———————P2.2 SW2———————P2.3 SW3———————P2.4 SW4———————P2.5 SW5———————P2.6 SW6———————P2.7 4.打开开发板电源,用软件将调试好的程序下载至单片机中,按动键盘观察实验现象。

五.实验参考程序

KEY BIT P3.3 SW1 BIT P2.2 ORG 0000H

START:MOV SP,#40H

MOV P2,#0FFH

MOV P3,#0FFH

MOV P1,#0FFH

CLR KEY

WAIT: JB KEY,$

JB SW1,$

LCALL DELAY

CPL P1.0

JNB SW1,$

JMP WAIT

DELAY:MOV R3,#200

D1:

MOV R4,#200

DJNZ R4,$

DJNZ R3,D1

RET

END

实验四 外部中断实验

一.实验项目卡编号:59010115-04 二.实验目的

1.了解51单片机外部中断原理和概念。

2.学习如何使用编程来调用中断服务子程序的整个过程。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:当主程序运行后,小灯一直在做右移循环运动,当按键发生后则触发了中断1,开始执行中断1的服务子程序,小灯全部闪烁10次,然后再返回主程序,继续原来的循环。

3.将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 LED7——————P1.6 LED8——————P1.7 SW1———————P2.2 SW2———————P2.3 SW3———————P2.4 SW4———————P2.5 SW5———————P2.6 SW6———————P2.7 INT1(P3.3)——————SW 4.打开开发板电源,用软件将调试好的程序下载至单片机中,按动键盘观察实验现象。

五.实验参考程序

ORG 0000H

JMP START

ORG 0013H

JMP EXT1

ORG 100H

START:MOV IE,#84H

MOV IP,#04H

MOV TCON,#00H

MOV SP,#40H

MOV P1,#0FFH

MOV P2,#00H

MOV P3,#0FFH

SETB P2.0

LOOP:MOV A,#0FFH

CLR C

MOV R2,#08H

LOOP1:RLC A

MOV P1,A

LCALL DELAY

DJNZ R2,LOOP1

JMP LOOP

EXT1:PUSH ACC

PUSH PSW

MOV A,#00H

MOV R3,#10 LOOP2:MOV P1,A

LCALL DELAY

CPL A

DJNZ R3,LOOP2

POP PSW

POP ACC

RETI

DELAY:MOV R5,#20

D1:MOV R6,#20

D2:MOV R7,#248

DJNZ R7,$

DJNZ R6,D2

DJNZ R5,D1

RET

END

实验五 定时器中断实验

一.实验项目卡编号:59010115-05 二.实验目的

1.了解51单片机定时器中断原理和概念。

2.学习如何使用编程来调用中断服务子程序的整个过程。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:当主程序运行后,用51单片机定时器中断来令小灯每隔1秒就左移一次。

3.将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 LED7——————P1.6 LED8——————P1.7 4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序

ORG 0000H

JMP START

ORG 000BH

JMP TIM0

ORG 100H START:MOV P1,#0FFH

MOV TMOD,#01H

MOV TH0,#HIGH(65536-10000)

MOV TL0,#LOW(65536-10000)

SETB TR0

MOV IE,#82H

MOV R2,#100

MOV P1.#0FEH

SJMP $

TIM0: PUSH ACC

PUSH PSW

MOV TH0,# HIGH(65536-10000)

MOV TL0,#LOW(65536-10000)

DJNZ R2,LOOP

MOV R2,#100

MOV A,P1

RL A

MOV P1,A LOOP: POP PSW

POP ACC

RETI

END

实验六 中断优先级实验

一.实验项目卡编号:59010115-06 二.实验目的

1.学习设置51单片机的中断优先级。

2.学习如何使用编程来调用中断服务子程序的整个过程。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。2.编写源程序并进行调试。要求:当主程序运行后,首先P1的8个LED每隔1秒就左移一次,当按键后8个LED闪烁5次。

3.将S51E开发板连接到PC机上。

对应的89S51与LED引脚的连线为 LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 LED7——————P1.6 LED8——————P1.7 INT1(P3.3)——————SW 4.打开开发板电源,用软件将调试好的程序下载至单片机中,按动键盘观察实验现象。

五.实验参考程序

ORG 0000H JMP START ORT 000BH JMP TIM0 ORG 100H START:MOV P1,#0FFH MOV TMOD,#01H MOV TH0,#HIGH(65536-10000)MOV TL0,#LOW(65536-10000)SETB TR0 MOV IE,#86H MOV IP,#04H:用MOV IP,#00H代替本行看结果如何? MOV R2,#50 MOV P2,#00H MOV P3,#0FFH SETB P2.0 MOV P1,#0FEH SJMP $ EXT1: PUSH ACC PUSH PSW MOV A,#00H MOV R3,#10 LOOP1: MOV P1,A LCALL DELAY CPL A DJNZ R3,LOOP1 MOV P1,#0FEH POP PSW POP ACC RETI TIM0: PUSH ACC PUSH PSW MOV TH0,#HIGH(65536-10000)MOV TL0,#LOW(65536-10000)DJNZ R2,LOOP MOV R2,#100 MOV A,P1 RL A MOV P1,A LOOP: POP PSW POP ACC RETI DELAY: MOV R6,#0FFH D1: MOV R7,#0FFH DJNZ R7,$ DJNZ R6,D1 RET END

实验七 RS232串行通讯实验

一.实验项目卡编号:59010115-07 二.实验目的

1.了解RS232串行通讯的工作原理。

2.掌握用查询方式进行数据传输的控制原理。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:实验中通过RS232的自收自发对小灯进行右移控制。3.将S51E开发板连接到PC机上。

将89S51的引脚RXD(P3.0)与TXD(P3.1)引脚对接。

4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序

NUM EQU 20H

ORG 0000H JMP START ORG 100H MOV NUM,#00H START:MOV SCON,#50H MOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#0FFH MOV TMOD,#20H MOV TH1,#0FDH MOV TL1,#0FDH SETB TR1 LOOP:MOV DPTR,#TABLE MOV A,NUM MOVC A,@A+DPTR JZ CLRA0 RET1:INC NUM CLR TI MOV SUBF,A CLR RI LOOP1:JBC RI,LOOP2 JMP LOOP1 LOOP2:MOV A,SUBF MOV P1,A LCALL DELAY JMP START CLRA0:MOV NUM,#00H MOV A,NUM

MOV DPTR,#TABLE MOVC A,@A+DPTR JMP RET1 DELAY:MOV R7,#50 D1:MOV R6,#20 D2:MOV R5,#248 DJNZ R5,$ DJNZ R6,D2 DJNZ R7,D1 RET TABLE:DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,7FH DB 00H END

实验八 八段数码管动态显示实验

一.实验项目卡编号:59010115-08 二.实验目的

1.掌握数码管的显示原理。2.掌握动态显示的控制原理。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:实验中能在开发板的两个数码管上显示99倒记时。3.将S51E开发板连接到PC机上。

89S51与数码管显示器对应引脚的联机为: P0.0————————数码管显示器的a脚 P0.1————————数码管显示器的b脚 P0.2————————数码管显示器的c脚 P0.3————————数码管显示器的d脚 P0.4————————数码管显示器的e脚 P0.5————————数码管显示器的f脚 P0.6————————数码管显示器的g脚 P0.7————————数码管显示器的dp脚 P2.6————————数码管显示器1的驱动脚 P2.7————————数码管显示器2的驱动脚

4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序

MIAO EQU 21H GEWEI EQU 22H SHIWEI EQU 23H SCANLED BIT 01H ORG 0000H JMP START ORG 0BH JMP TIMER0 ORG 100H START:MOV SP,#40H MOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#OFFH MOV R0,#20H MOV R5,#60H CLR0:MOV @R0,#00H INC RO DJNZ R5,CLR0 MOV TMOD,#01H

MOV TH0,#HIGH(65536-5000)MOV TL0,#HIGH(65536-5000)SETB TR0

MOV IE,#82H MOV R7,#200 MOV MIAO,#99 AJMP $ TIMER0: PUSH ACC PUSH PSW MOV TH0,#HIGH(65536-5000)

MOV TL0,#HIGH(65536-5000)DJNZ R7,TIM0_LP MOV R7,#200 DJNZ R7,TIM0_LP MOV MIAO,#99 TIM0_LP: MOV A,MIAO LCALL BIN_BCD MOV SHIWEI,A MOV GEWEI,B CPL SCANLED JB SCAN_L1 JMP SCAN_L2 SCAN_L1:MOV P2,#7FH MOV A,SHIWEI JMP END_SCAN SCAN_L1:MOV P2,#0BFH MOV A,GEWEI JMP END_SCAN END_SCAN:MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P0,A POP PSW POP ACC RETI BIN_BCD:MOV B,#10 DIV AB RET TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H DB 90H END 实验九 模拟交通灯实验(调用延时子程序方式)

一.实验项目卡编号:59010115-09 二.实验目的

1.掌握数码管的显示原理。2.学习延时子程序的编写。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:实验中模拟交通灯红灯先亮10秒时间,接着黄灯亮3秒时间,随后绿灯再亮10秒时间。

89S51与数码管显示器对应引脚的联机为: P0.0————————数码管显示器的a脚 P0.1————————数码管显示器的b脚 P0.2————————数码管显示器的c脚 P0.3————————数码管显示器的d脚 P0.4————————数码管显示器的e脚 P0.5————————数码管显示器的f脚 P0.6————————数码管显示器的g脚 P0.7————————数码管显示器的dp脚 P2.6————————数码管显示器1的驱动脚 P2.7————————数码管显示器2的驱动脚

LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序

GEWEI EQU 21H SHIWEI EQU 22H SCANLED EQU 23H RED EQU 24H GREEN EQU 25H YELLOW EQU 26H NUMTIM EQU 27H ORG 0000H JMP START ORG 0BH JMP TIMER0 ORG 100H START:MOV SP,#40H MOV R0,#20H MOV R5,#20 CLR0: MOV @R0,#00H INC R0 DJNZ R5,CLR0 MOV TMOD #01H MOV TH0,#HIGH(65536-5000)

MOV TL0,#LOW(65536-5000)

SETB TR0 MOV IE,#82H MOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#0FFH MOV R3,#10 MOV R2,#3 MOV R1,#10 INE: MOV RED,#10 MOV YELLOW,#3 MOV GREEN,#10 LOOP:MOV P1,#0FBH MOV NUMTIM,RED LCALL DELAY1 DEC RED DJNZ R3,LOOP MOV R3,#10 MOV NUMTIM,#00H LCALL DELAY1 LOOP1:MOV P1,#0F3H MOV NUMTIM,YELLOW LCALL DELAY1 DEC YELLOW DJNZ R2,LOOP1 MOV R2,#3 MOV NUMTIM,#00H LCALL DELAY1 LOOP2: MOV P1,#0BFH MOV NUMTIM,GREEN LCALL DELAY1 DEC GREEN DJNZ R1,LOOP2 MOV R1,#10 MOV NUMTIM,#00H LCALL DELAY1 MOV YELLOW,#3 LOOP3: MOV P1,#0F3H MOV NUMTIM,YELLOW LCALL DELAY1 DEC YELLOW DJNZ R2,LOOP3 MOV R2,#3 MOV NUMTIM,#00H LCALL DELAY1 LJMP INI TIMER0:PUSH ACC PUSH PSW MOV TH0,#HIGH(65536-5000)

MOV TL0,#LOW(65536-5000)MOV A,NUMTIM LCALL BIN_BCD MOV SHIWEI,A MOV GEWEI,B MOV A,SCANLED CPL A MOV SCANLED,A JZ SCAN_L1 JMP SCAN_L2 SCAN_L1:MOV P2,#7FH MOV A,SHIWEI JMP END_SCAN SCAN_L2:MOV P2,#0BFH MOV A,GEWEI JMP END_SCAN END_SCAN:MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P0,A POP PSW POP ACC RETI BIN_BCD:MOV B,#10

DIV AB RET DELAY1:MOV R6,#10 D1:MOV R5,#200 D2:MOV R4,#248 DJNZ R4,$ DJNZ R5,D2 DJNZ R6,D1 RET TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END 实验十 模拟交通灯实验(调用定时中断方式)

一.实验项目卡编号:59010115-10 二.实验目的

1.掌握数码管的显示原理。2.学习中断子程序的编写。三.实验设备

1.S51E单片机学习开发板一块 2.PC微机一台 四.实验步骤

1.打开编译软件伟煌MCS51开发系统。

2.编写源程序并进行调试。要求:实验中模拟交通灯红灯先亮10秒时间,接着黄灯亮3秒时间,随后绿灯再亮10秒时间。

89S51与数码管显示器对应引脚的联机为: P0.0————————数码管显示器的a脚 P0.1————————数码管显示器的b脚 P0.2————————数码管显示器的c脚 P0.3————————数码管显示器的d脚 P0.4————————数码管显示器的e脚 P0.5————————数码管显示器的f脚 P0.6————————数码管显示器的g脚 P0.7————————数码管显示器的dp脚 P2.6————————数码管显示器1的驱动脚 P2.7————————数码管显示器2的驱动脚

LED1——————P1.0 LED2——————P1.1 LED3——————P1.2 LED4——————P1.3 LED5——————P1.4 LED6——————P1.5 4.打开开发板电源,用软件将调试好的程序下载至单片机中,观察实验现象。

五.实验参考程序

GEWEI EQU 21H SHIWEI EQU 23H SCANLED EQU 25H SCANMODE EQU 26H RED EQU 28H GREEN EQU 29H YELLOW EQU 2AH NUMTIM EQU 2BH LED EQU 34H ORG 0000H JMP START ORG 0BH JMP TIMER0 ORG 100H START:MOV SP,#30H MOV R0,#20H

MOV R5,#40 CLR0: MOV @R0,#00H INC R0 DJNZ R5,CLR0 MOV TMOD #01H MOV TH0,#HIGH(65536-5000)

MOV TL0,#LOW(65536-5000)

SETB TR0 MOV IE,#82H MOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#0FFH MOV R3,#10 MOV R2,#3 MOV R1,#10

MOV RED,#10 MOV YELLOW,#3 MOV GREEN,#10 MOV NUMTIM,#10 MOV LED,#0FFH AJMP $ TIMER0:PUSH ACC PUSH PSW MOV TH0,#HIGH(65536-5000)

MOV TL0,#LOW(65536-5000)

DJNZ R7,RET0 MOV R7,#200 MOV A,SCANMODE MOV B,#4 DIV AB MOV A,B RL A MOV DPTR,#TAB_SCAN JMP @A+DPTR TAB_SCAN:AJMP RED_LIGHT AJMP YEL_LIGHT AJMP GRE_LIGHT AJMP YEL_LIGHT RET0:MOV A,NUMTIM

LCALL BIN_BCD MOV SHIWEI,A MOV GEWEI,B INC SCANLED MOV A,SCANLED MOV B,#4 DIV AB RL A MOV DPTR,#TAB_SCAN0 JMP @A+DPTR TAB_SCAN0:AJMP SCAN_L1 AJMP SCAN_L2 SCAN_L1: MOV P2,#0F7H MOV A,SHIWEI JMP END_SCAN SCAN_L2: MOV P2,#0FBH MOV A,GEWEI JMP END_SCAN END_SCAN:MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P0,A MOV A,LED MOV P1,A POP PSW POP ACC RETI RED_LIGHT:MOV LED,#OFBH MOV NUMTIM,RED DEC RED MOV A,RED CJNE A,#0FFH,RET0 MOV RED,#10 MOV A,SCANMODE ADD A,#01H MOV SCANMODE,A

JMP RET0 YEL_LIGHT:MOV LED,#0F3H MOV NUMTIM,YELLOW DEC YELLOW MOV A,YELLOW CJNE A,#0FFH,RET0 MOV YELLOW,#3 MOV A,SCANMODE ADD A,#01H MOV SCANMODE,A JMP RET0 GRE_LIGHT: MOV LED,#0BFH MOV NUMTIM,GREEN DEC GREEN MOV A,GREEN CJNE A,#0FFH,RET1 MOV GREEN,#10 MOV A,SCANMODE ADD A,#01H MOV SCANMODE,A RET1:JMP RET0 BIN_BCD: MOV B,#10 DIV AB RET DELAY: MOV R5,#02 D1: MOV R6,#200 D2: MOV R7,#200 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END

第二篇:单片机实验指导书

单片机实验指导书

实验说明

实验1:定时控制实验

要求:电路连接与编程相结合,控制灯按一定规律点亮和熄灭。注意:灯为低电平驱动。

实验报告:说明灯亮的方式;画出实际电路图、程序流程图和源程序(要有详细注释)。

实验2:密码锁实验

要求:三个数码键一个确认键,按设定的密码(开关顺序)使灯点亮。

注意:为消除开关触点抖动,判断时要加10毫秒左右的延时。

实验报告:说明密码顺序;画出实际电路图、程序流程图和源程序(要有详细注释)。

实验3:音乐发生器实验

要求:电路连接与编程相结合,使单片机演奏一段乐曲。

实验报告:画出实际电路图、程序流程图和源程序(要有详细注释)。

实验4:串口通讯实验

要求:两人为一组,一人为发一人为收,通过串口连接。用发者的开关控制收者的灯点亮或发出音响。之后二人交换收、发。实验报告:画出电路图、程序流程图和源程序(要有详细注释)。

硬件测试程序

main: mov p0,#0ffhmov p1,#0ffhmov p2,#0ffhmov p3,#0ffhacall spk1

mov p0,#00hmov p1,#00hmov p2,#00hmov p3,#00hacall spk2

sjmp main

spk1: mov r0,#0ffhmov r2,#0ffhacall spk

ret

spk2: mov r0,#0ffhmov r2,#0dfhacall spk

ret

spk:cpl p1.0

lp1:mov a,r2,mov r5,adjnz r5,$cpl p1.0djnz r0,lp1

ret

;端口设置 ;1-灯灭

;调音响1 ;端口清0 ;灯亮

;调音响2 ;返回重复

;设音响1 ;参数 ;调音响

;设音响2 ;参数 ;调音响

;P1.0翻转

;音调延时 ;P1.0翻转 ;音长延时

第三篇:DSP技术实验指导书

一 基础实验:CCS 的使用与简单应用程序的调试

1.1 实验目的

1.熟悉 CCS 集成开发环境,掌握工程的生成方法; 2.熟悉 SEED-DEC5416 实验环境; 3.掌握 CCS 集成开发环境的调试方法; 1.2 实验内容

1.DSP源文件的建立; 2.DSP程序工程文件的建立;

3.学习使用CCS集成开发工具的调试工具; 1.3 实验知识背景 1.3.1 CCS 简介

1.CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS 支持如下所示的开发周期的所有阶段 1.3.1 CCS 简介

1.CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS 支持如下所示的开发周期的所有阶段

湖南工学院教案用纸 p

2.CCS窗口介绍

1.3.2 CCS 常用文件介绍

使用CCS时,经常遇见下述扩展名文件:

1.project.mak:

CCS使用的工程文件

2.program.c:

C程序源文件

3.program.asm:

汇编程序源文件

4.filename.h:

C程序的头文件,包含DSP/BIOS API模块的头文件

5.filename.lib:

库文件

6.project.cmd:

连接命令文件

7.program.obj:

由源文件编译或汇编而得的目标文件

8.program.out:

(经完整的编译、汇编以及连接的)可执行文件

9.project.wks:

存储环境设置信息的工作区文件

保存配置文件时将产生下列文件:

1.programcfg.cmd:

连接器命令文件

2.programcfg.h54:

汇编头文件

3.programcfg.s54:

汇编源文件

湖南工学院教案用纸 p

1.3.3 CCS 常用指令简介

1.设置断点。

将光标放置在需要设置断点的程序行前,选择 Debug→Breakpoints,即完成可一个断点的设置。

2.CCS 提供 3 种方法复位目标板

1)Reset DSP:

Debug →Reset D,初始化所有的寄存器内容并暂停运行中的程序。使用此命令后,要重新装载.out 文 件后,在执行程序。

2)Restart:

Debug → Restart,将 PC 值恢复到当前载入程序的入口地址。

3)Go main:

Debug →Go main,将程序运行到主程序的入口处暂停。

3.CCS 提供 4 种执行操作

1)执行执行:

Debug →Run,程序运行直到遇到断点为止。

2)暂停执行:

Debug →Halt,程序停止运行。

3)动画执行:

Debug →Animate,用户反复运行程序,直到遇到断点为止。

4)自由执行:

Debug →Run Free,禁止所有断点运行程序。

4.CCS 提供 4 种单步执行操作

1)单步进入:Debug →step into,快捷键 F8,当调试语句不是

基本的汇编指令时,此操作进入语句内部。

2)单步执行:Debug → step Over,此命令将函数或子函数当作

一条语句执行,不进入内部调试。

3)单步跳出:Debug →step Out,此命令作用为从子程序中跳出

4)执行到光标处: Debug → Run to Cursor,快捷键 crtl+F10,此命令作用为将程序运行到光标处。

5.内存、寄存器与变量的操作

1)查看变量

使用 view →Watch Window 命令

2)查看寄存器

使用 view →Registers →CPU Registers 命令

3)查看内存

使用 view →memory 命令

湖南工学院教案用纸 p

6.Graph 的设置即图形显示

1)选择View →Graph →Time/Frequency。

2)在弹出的Graph Property Dialog对话窗中,将 Graph Title,Start Address,Acquisition Buffer Size,Display Data Size,DSP Data Type等的属性可改变为如下图所示(也可根据具体需要设置属性)。向下滚动右侧的滚动条或调整 dialog 框的大小可看到所有的属性。1.4 实验步骤

1).将 DSP 仿真器与计算机连接好;

2).将 DSP 仿真器的 JTAG 插头与 SEED-DEC5416 单元的 J1 相连接;

3).启动计算机,当计算机启动后,打开 SEED-DTK_DBD 的电源。观察SEED-DTK-IO1 单元的+5V,+3.3V,+15V,-15V 的电源指示灯,SEED_DEC5416 的 D2 以及 SEED-DSK2812 的 D2 是否均亮;若有不亮的,请断开电源,检查电源。4).双击图标进入 CCS 环境。

下面按照原文件、工程文件以及编译条件的设置来分别介绍一下 CCS 的使用。

1.4.1 创建源文件

1).打开 CCS 选择 File →New →Source File 命令 2).编写源代码并保存

3).保存源程序名为 math.c,选择 File →Save 4).创建其他源程序(如.cmd)可重复上述步骤。

1.4.2 创建工程文件

1.打开 CCS,点击 Project-->New,创建一个新工程,其中工程名及路径可任意指定 2.弹出如下对话框:

3.在 Project 中填入工程名,Location 中输入工程路径;其余按照默认选项,点击完成即可完成工程创建。

4点击 Project 选择 add files to project,添加工程所需文件。

湖南工学院教案用纸 p

5.在弹出的对话框中的下拉菜单中分别选择.c 点击打开,即可添加源程序XXX.c 添加到工程中。

6.同样的方法可以添加文件 XXX.cmd、XXX.lib 到工程中;在下面窗口中可以看到 XXX.c、XXX.cmd、XXX.lib 文件已经加到工程文件中。

7.以下操作可使您对工程中的文件进行打开、删除、查看属性等操作

1.4.3 设置编译与连接选项 1. 点击Project选择Build Opitions 2. 在弹出的对话框中设置相应的编译参数,一般情况下,按默认值就可以;

3. 在弹出的对话框中选择连接的参数设置,设置输出文件名,堆栈的大小以及初始化的方式。

1.4.4 工程编译与调试

1. 点击Project→Buildall,对工程进行编译,如正确则生成out文件;

若是修改程序,可以使用 Project → Build 命令,进行编译连接,它只对修改部分做编译连接工作。可节省编译与连接的时间。编译通过,生成.out 文件。2. 点击File→loadprogram,在弹出的对话框中载入debug 文件夹下 的.out 可执行文件。3. 装载完毕

4.点击debug →Go Main回到C程序的入口

5. 打开 File →Workspace →Save Workspace 保存调试环境,以便下次调试时不需要重新进行设置。只要 File →Workspace →LoadWorkspace 即可恢复当前设置 1.5完成简单应用程序的调试 1.6记录实验结果 1.7完成实验报告:

二.设计实验 按键中断显示实验

3.1实验目的

1.了解D SP外部中断的使用,中断服务程序的设计方法;2.掌握DSP中断向量表的划分。3.2实验设备

计算机;

DSP硬件仿真器;

SZ-DSPF开发教学平台。3.3实验硬件设置

做实验之前,需要接通该实验所需的硬件电路,木实验为:先将实验箱上的电源开关“MS2“,”MS3 “和”MS4”按下,再将机箱右侧的船型开关往“I”方向打开电源;SZ-5416的主控模块上的J7,J9,J4,J16短接;在“设置模块”中将“A”和“C”设置为“1”。然后开始做实验,注意在做D SP实验时一开始按了SZ-5416的主控模块上的K1硬件复位后,程序运行中不要再按复位键,以免实验由十D SP复位而失败。3.4实验原理及说明

本实验采用键盘中断,当有键按下时一给DSP一个中断信号(INT2)DSP通过此I/O端口地址COOlh读键值,在读取键值后由数码管显T出来。硬件原理图请参考“SZ-LK板”的说明,逻辑关系请参考第二章逻辑分析5416部分,数据流程请参考第五章中的数码管和按键。中断标志寄存器(IFR},中断屏蔽寄存器(IMR} 3.5实验步骤及结果

本实验是一个测试键盘的实验,运行程序依次按键1-8,数码管依次显T 7-0,中间键一一对应,任意按一键,其对应的数码管显不相应的数字。

步骤: 1.启动CCS}编写实验程序代码(可参考随机光盘中的例程alldsp4h2keptest,进行编译并加载到DSP中。

2.采用单步运行或执行到光标处,或全速运行。观察其结果。(具体请参考实验一)

湖南工学院教案用纸 p

3.6实验程序框图

3.7完成实验报告及实验思考

1.分析下例指令的特点POPD, POPM, PSHD PUSHM?

2.分析中断管理流程及中断向量表的特点

湖南工学院教案用纸 p

三、定时器实验

4.1 实验目的

1.了解 DSP 汇编程序的构成; 2.了解 DSP 程序各段的含义;

3.熟悉在汇编条件下如何编写中断服务程序; 4.了解串行通讯的过程

5.掌握长时间间隔的定时器的处理。6.掌握片内外设的设置方法。

4.2 实验内容

1.DSP 的初始设置;

2.DSP 中断向量表的建立; 3.定时中断的编写;

4.查询方式异步串口程序的编写。

4.3 实验要求

能够掌据汇编语言的程序结构。正确进行异步串口的通讯与定时器的设置。能够与系统正确通讯。通过 LCD 与键盘可以控制定时器的运行。

4.4 实验程序功能与结构说明

湖南工学院教案用纸 p

4.5.实验步骤

首先将光盘下 03.Examples of

Program 04.SEED_DTK-DBD 调试实验程 序目录下的 CCS-Timer 的文件夹拷贝到 D:盘根目录下。

1.将 DSP 仿真器与计算机连接好;

2.将 DSP 仿真器的 JTAG 插头与

SEED-DEC5416 单元的 J1 相连接;

3.启动计算机,当计算机启动后,打开 SEED-DTK_DBD 的电源。观察

SEED-DTK-IO1 单元的+5V,+3.3V,+15V,-15V 的电源指示灯,SEED_DEC5416 的 D2 以及 SEED-DSK2812 的 D2 是否均亮;若有不亮的,请断开电源,检查电源。

4.打开 CCS,进入 CCS 的操作环境。5.装入 timer.pjt 工程文件,添加 dtk-boot.gel 文件。

6.装载程序 timer.out,进行调试。

7.在程序的第 101 行“i=i+1;”处设置断点。

8.运行程序,程序会停在断点处,表明已进入定时器中断。继续运行程序,程序每次都会停在断点处。实验者可根据自己的需要改变周期寄存器的

值,从而控制每次进中断的时间。

4.6 思考题

理解 DSP 程序的编写过程,如何编写中断程序? 四. 综合性实验

FIR滤波器的设计

8.1实验目的

1.了解F工R滤波器的原理及使用方法;

2.了解使用Matlab语言设计F工RR滤波器的方法;3.了解DSP对F工R滤波器的设计及编程方法;4.熟悉对F工R滤波器的调试方法;8.2实验内容

本试验要求设计滤波器采样频率为1000hz,截n频率300hz的低通滤波器。设计F工R滤波器实现上面要求。输入信号频率合成信号,目的是通过我们设计的滤波器将高频信号滤掉,余下低频的信号成分,达到滤波的效果。8.3实验原理

一个线性位移不变系统的输出序列Y(}>和输入序列X(}>之间的关系,应满足常系数线性差分方程:

湖南工学院教案用纸 p FIR滤波器的单位冲激响应h(n)为有限长序列。若h(n)为实数,且满足偶对称或奇对称的条件,则FIR滤波器具有线性相位特性。

N—偶数

在数字滤波器中,FIR滤波器具有如下几个主要特点: ①FIR滤波器无反馈回路,是一种无条件稳定系统;②FIR滤波器可以设计成具有线性相位特性。

本实验程序设计的就是一种偶对称的线性相位滤波器。程序算法实现采用循环缓冲区法。

算法原理: ①在数据存储器中开辟一个N个单元的缓冲区(滑窗),用来存放最新的N个输入样本;②从最新样本开始取数;③读完最老样本后,输入最新样本来代替最老样本,而其他数据位置不变;④用BK寄存器对缓冲区进行间接寻址,使缓冲区地址首尾相邻。

8.4程序设计

1.滤波器的Matlab 编写matlab程序,语言设计生成F工R滤波器系数后,附到DSP汇编语言程序中。主程序如

f=[0 0.6 0.6 1];m=[1 1 0 0] b=firls(36, f, m)freqz(b, 1, 512)b二b*2^ 15 2.输入信号程序,文件名为firinput.3.DSP汇编语言程序设计。汇编源文件fir.asm,中断向量表vectoes.asm和链接命令文件fir.cmd组成。

8.5实验步骤

1.打开ccs,新建立一上程文件fir.Pjt.2.将汇编源文件fir.asm、中断向量表vectors.asm和链接命令文件fir.cmd添加到fir.pjt中。

3.在project菜单下选择build options选项,选取Linker选项,调整为

-q-c –m,.Debugf ir.Map,-o,.Debugf ir.out“-w一x。点击编译,链接图标,通过后生成fir.out文件和f irr.map文件,其余选项.丁默认。

湖南工学院教案用纸 p 4.在file菜单下,选择load program选项,将生成的fir.out文件装载 到DSP中。

5.运行程序,在view菜单下选择watch window选项来观测变量值。依次输入input和output来观测输入输出变量值,这两个变量分别为滤波前的输入数据和滤波后输出数据的首地址。

6.在view菜单下选择graph/time frequence,弹出如下对话框。按照要求,设置好相应的参数,来观测输入和输出数据的波形。7.具体调试执行程序时,使用断点,单步执行等方式。} v }r.}.}xm }-}o'r nmsuwr,}rv;yxirxn}

8.6记录实验结果

8.7完成实验报告及思考题

1.为什么要对matlab程序生成的系数进行调整,即将浮点数转换成整数? 2.试改变输入的信号(保证一个频率在通带范围内,一个在通带范围外),进行相应的数据调整,然后在CCS底下观测看输入数据波形。

3.进行滤波器系数的调整再进行相应滤波,然后在CCS底下看输出数据波形情况有何变化。

第四篇:单片机原理及接口技术课程设计指导书

长 沙学院

课程设计指导书(部)

级单片机原理及接口技术机电工程系机械设计制造及其自动化

年月日 课程设计名称系专班

课程名称:《单片机原理及接口技术》课程设计

课程编号:JX010146

主 笔 人:程立志

主 审 人:许焰

1、课程设计的目的通过《单片机原理及接口技术》课程设计,使学生初步具备以下能力:

1.1、加深对《单片机原理及接口技术》所学知识的理解;

1.2、掌握单片机内部资源的使用方法和步骤;

1.3、掌握单片机应用的环节和步骤;

1.4、进一步熟悉在proteus软件里进行硬件设计和编程调试;

1.5、能使用汇编语言或C语言编程环境Keil编写程序、编译、仿真和修改程序;

1.6、能初步判断分析单片机系统的简单故障;

1.7、能对自己的实践工作进行总结,具备编写实习报告书能力;

1.8、初步具备辩证思维和逻辑分析的能力;

1.9、培养学生热爱科学,实事求是的学风和创新意识、精神,合作精神。

2、课程设计的题目

单片机的应用领域非常广泛,就其基本的控制原理和实现方法无外乎是对一些常见的如:距离或位移(米)、重量(千克)、时间(秒)、电流或电压(安培)、温度(开尔文)、等物理量进行测量控制,鉴于单片机当前的应用状态和学员对其应掌握的程度,本次课程设计题目的设定主要是以贴近现实生活为主,提出了一些在教学、工业控制和科研等领域基本常见的课题,其目的是要让学员们拓宽视野,着重体会其学习基本的原理及控制编程基础的重要性,以期达到培养学员们的兴趣和今后再学习的愿望。

2.1、;LED流水灯控制设计:

拓展:广告灯的左移右移控制设计;汽车尾灯模拟控制设计;城市景观灯的控制设计;…

2.2、电子日历、数字钟设计:

拓展:智能晨起系统控制设计;智能全自动洗衣机控制设计;秒表/时钟计时器控制设计;…

2.3、数字温度计的控制设计:

拓展:新生儿恒温箱监控系统设计;多点温度的控制设计;传导系数测量仪的应用设计;…

2.4、16×16 点阵LED汉字显示设计:

拓展:机场、车站、码头、商场、银行、政务等公共服务场所信息指示牌设计;…

2.5、1602液晶显示屏显示设计:

拓展:机场、车站、码头、商场、银行、政务等公共服务场所信息指示牌设计;…

2.6、128×64点阵LED汉字显示设计:

拓展:机场、车站、码头、商场、银行、政务等公共服务场所信息指示牌设计;…

2.7、直流电机控制设计:

拓展:传送带单控与顺序控制设计;电子装配生产线部件移动控制设计;多层电梯控制设计;…

2.8、步进电机控制设计:

拓展:机械手动作行程控制设计;安防监控自动寻迹云台的控制设计;条码打印机的控制设计;…

2.9、AD/DA转换控制设计:

拓展:简易数字电压表设计;简易数字压力计设计;吊车悬臂角度的控制设计;超声波测距器的设计…

2.10、逻辑算法控制设计:

拓展:抢答器控制设计;交通灯设计;多层电梯控制设计;4×4 矩阵键盘计算器设计…

2.11、遥控设计:

拓展:无线电遥控升降系统控制设计、红外遥控升降系统控制设计、红外遥控多路开关控制设计;…

2.12、PWM方式控制设计:

拓展:直流电机调速控制设计;城市立交桥景观带的控制设计;…

2.14、电子琴设计;

拓展:报警发生器控制设计;函数信号发生器的设计;

3、课程设计内容(主要技术关键的分析、解决思路和方案比较等)

要求学生根据所选课题,结合实际工程应用情况参照以下几例给出的具体实现功能和控制参数完成课题的设计任务书。

3.1、简易数字电压表的设计

利用MCS-51系列单片机设计简易数字电压表测量0~5v的8路输入电压值,并在四位LED数码管上轮流显示或单路选择显示。测量最小分辨率为0.019V,测量误差约为±0.02V

3.2、秒表/时钟计时器的设计

秒表/时钟计时器要求使用六位LED数码显示管显示时、分、秒,以24(小时)计时方式。使用按键开关可实现时分调整、秒表/时钟功能转换功能。

3.3、电子日历的设计

电子日历上能显示阳历年,月,日,星期,时,分,秒和阴历年、月,使用按键开关可实现调整。

3.4、超声波测距器的设计

设计一个超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。要求测量范围在0.10-4.00m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

3.5、DS18B20数字温度计的设计

利用89C51单片机、DS18B20温度传感器,制作数字温度计。要求测温范围为-50~110℃,精度误差在0.1℃以内,LED数码管直接显示测量温度值。

3.6、1602液晶显示屏设计

设计一个室内用1602液晶显示屏,要求在目测条件下LED显示屏个点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。

3.7、六路数字抢答器的设计

1)、抢答器同时供6名选手或6个代表队比赛,分别用6个按钮S0 ~ S5表示。

2)、设置一个系统清除和抢答控制开关S,该开关由主持人控制。

3)、抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。

4)、抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间0.5秒左右。

5)、参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。

6)、如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。

3.8、机械手动作行程控制

1)、设“单步”、“单程”、“往返”、“连续”4个按钮及4个键值灯;

2)、设“左上”、“左下”、“右上”、“右下”4个电磁位置开关及4个指示灯。

3)、设“左上”为初始位置,根据不同的选择按钮,驱动相应的(3台)直流电机正反转,完成相应的行程动作。

3.9、三层楼电梯呼叫控制

1)、第一层只设“上”、第二层设“上”、“下”、第三层只设“下”共四个按钮;

2)、每层都设一个电磁位置开关,轿厢上下指示灯;共享一台直流电机正反转。

3)、电梯轿厢内设“1”、“2”、“3”三个楼层键及键位指示灯,轿厢上下指示灯,开关门指示灯,电梯根据当前层位和楼层选择按钮的先后顺序,决定向上或向下,电机以正反转时延2秒完成层间动作。

3.10、16×16 点阵LED汉字显示设计。

1)、点阵显示汉字“长沙大学机电系”;

2)、实现自定义滚动效果,如左滚屏,有滚屏,上、下卷帘等。

单片机的应用系统随着用途不同,它们的硬件和软件结构差别很大,但系统设计的方法和步骤基本上是相同的。一般包括总体设计、硬件设计、软件设计、仿真调试、固化程序、应用系统独立运行等步骤。

课程设计由于时间安排、学生水平、实验条件等诸方面的限制,仅要求学生完成仿真调试即可,同时根据实际情况,在试验箱上调试通过。

由于设计时间紧迫,不要在完成全部设计后再编写设计说明书。而应在设计过程中逐步完成。一开始不可能设计出满意的主程序框图。因此,总体设计部分在完成全部设计任务后再写。而硬件部分和软件部分可以在设计过程同步完成。

4、注意事项

4.1、充分调研相关文献,针对课题需要进行系统详细的论证,不能盲目生搬硬套,严谨抄袭;

4.2、以小组为单位(原则上是3人一组),小组内成员分工明确,各司其职,按照所分配的任务在规定的时间内合理的完成好。

4.3、课程设计报告要包括:设计功能要求,设计控制参数,硬件电路设计(元件选型,硬件电路布局),系统程序的设计(注意总结出现的问题、疑难以及解决的方法和思路,对以后的借鉴作用等),调试及性能分析,课程设计小结、控制源程序清单等;图包括设计方案框图、硬件原理图(要求有描述)、程序流程图等。

第五篇:单片机课程设计指导书

单片机课程设计指导书

一、设计内容及步骤

1、方案设计

先要明确设计任务的要求,根据设计任务及要求,确定设计所要实现的具体功能,例如“流水灯”具体怎么“流”、有几种“花样”、如何操作、等等。这是一项见仁见智的工作,没有统一的要求,各人可根据自己的理解自行设计。

2、硬件电路设计

设计能使单片机工作并实现所需功能的基本硬件电路,包括选择和确定元器件的规格、参数。

3、软件程序设计

单片机由于内存小、速度低,因此一般不用高级语言编程而多用汇编语言编程,这样软件程序和硬件电路就要有严格的对应关系。单片机电路的功能主要是由软件程序实现的,因此硬件电路比较简单而软件程序相对复杂,软件程序设计是整个课程设计的难点和重点。

4、烧写调试程序

由于软件程序一般都比较复杂,设计时难免会有考虑不周的问题,或是有一些疏漏,而这些问题或疏漏仅凭在纸上的分析是很难发现的,因此软件程序设计好后还要经过运行调试,才能知道所设计的软件程序能否实现之前确定的功能。这个过程往往要经过多次反复才能最终达到目的。一般先用计算机仿真进行调试,成功后再把程序写到单片机中并制作实际电路进行验证。

二、设计方法及要求

1、方案设计

首先要完整、准确地理解设计任务(虽然课程设计只是做个电路模型进行一下验证演示,但设计时要假象是设计一个实用的产品),然后通过必要的调研、分析,综合考虑各方面的因素,定出一个具体的设计目标。

例如,可先把自己当作用户,从用户的角度考虑这个“产品”应该具备哪些功能、怎样操作使用比较方便,同时又安全可靠;再从厂家的角度,结合实际的客观条件,考虑怎样既能满足用户的基本需求,又能最大限度地降低生产成本。

因此设计目标不要追求尽善尽美,但也不能过于简单,要从实际出发,用足用够给定的硬件条件,充分开发可以用软件实现的功能以使整体功能最大化。

2、硬件设计

硬件设计包括确定电路的结构组成、绘制电气原理图、确定元器件的规格参数。

由于是课程设计,多数题目采用最小系统即可,如果要求高一点,还要考虑抗干扰措施、电路的功耗、数据的断电保护、元器件的来源和性价比等。

最小系统基本上是一种固定的模式,需要设计的就是合理分配单片机的资源,分配、确定输入输出端口用途,这没有固定的模式,只要符合单片机的端口功能和性能就行。例如,输入输出应优先采用P1口,还要注意各口作输出口时带负载的能力,即高电平时所能输出的最大电流,或低电平时允许灌入的最大电流,以及高阻态时所能承受的最高电压。原则上输出口所接负载的电流消耗不能超过输出口允许进出的最大电流值,最好是让输出口通过缓冲驱动器(例如三极管)带负载而不是直接带负载,以免造成单片机的损坏。

硬件结构应结和应用软件一并考虑,若某种功能既可以用硬件实现,也可以用软件实现,应优先选择用软件实现,以尽可能地简化硬件结构。

3、软件设计

软件设计要结合功能设计和硬件设计进行,或者说在做功能设计和硬件设计时就要对软件设计有所考虑,即那些功能应由软件完成。

设计软件不要一来就急于用指令写程序,要先做总体规划设计,明确软件要实现的功能是什么,分那些步骤、按什么顺序来实现设计的功能,画出程序的流程图。程序的流程也就是单片机的工作过程,从通电工作开始,程序的第一步做什么,后面又做什么„„;怎样结束,等等。由于单片机是靠程序进行工作的,程序怎么规定它就怎么做,程序没有规定它就无法工作,很死板。因此设计程序流程时要作仔细、周全的考虑,只要出现所设计的“产品”在正常操作使用过程中可能出现的任何一种情况,都要让单片机知道该如何应对处理,否则就会出现死机无法工作的情况。

程序的流程是编写程序的纲领、指导、前提,有了正确的程序流程,就容易编写出正确的程序,单片机也才能实现所设计的功能。俗话说,磨刀不误砍柴工,所以构思、设计程序的流程要给予高度的重视,要花大的气力,有时一次两次难以考虑周全,可能需要反反复复地进行多次。

如果整个流程实现一个总体功能,则流程的每一分支或步骤即可看成是一个子功能。对于比较复杂的功能,则子功能下还可再分解出孙功能,即总体功能画一个流程图,再针对较大的子功能画细致的流程图。总之流程图画的越细致,程序越容易编写。

流程设计好后,也不要就急于写具体的程序,因为那样写程序缺乏条理,很容易出错,而且可读性差,难以发现和纠正错误。因此写程序前还应对程序的编写结构进行认真的规划设计。

程序的结构总体上可分为两大部分,即主程序和子程序(或中断程序)。主程序可按程序的功能分块、分段进行编写,每块、每段完成一个特定的功能。如果某一块或段在主程序中需多次出现,应把它作为子程序,以减少整个程序的长度。

程序设计的重点在于搭建程序的框架,框架搭成,工作就完成了大半,剩下的就是填充框架。填充框架不一定要自己去一条一条地想该用什么指令,可根据某一块或某一段程序的功能,寻找具有相同功能的现成的程序块、段去填充,对于一些“通用”的程序段,例如按键消抖程序、延时程序等,应优先采用成熟的“标准”程序,这样既可减少工作量,又可减少出错。事实上,程序设计大多数时候就是用一些零散、成熟的程序快(段)拼凑成一个自己所需的完整程序。

程序运行中,可能需要在不同的功能模块间进行跳转,这就需要在跳转的入口处加上标号。为便于阅读,在符合指令的语法规则的前提下,标号应能简要地反映该段程序的功能,例如采取常见的英文缩写或汉语拼音缩写(通常是缩写单字拼音的首字母)。

运用跳转指令时要注意避免进入死循环。若不可避免进入死循环,或有意要进入死循环,除复位外,最好能有其他退出死循环的措施。

单片机程序的运行离不开单片机的内存,因此编写程序前还应充分了解所用单片机的内存情况,尤其是要搞清楚那些具有特定用途的特殊内存的用途、位置及长度,同时还要搞清楚所用程序指令(包括常数表格)以及依程序流程产生的各项数据要占用的存储空间,编写程序前,要合理地分配利用内存空间,注意不要占用特殊内存。

最后,为了便于以后(以及其他人)对程序的阅读、分析,所编写的程序应该条理清楚,程序各块、段、条的功能作用明确,在一些重要、关键或用意不是很明确的指令后最好加以注释。

三、设计报告的内容及要求

1、方案设计说明

从总体上概括介绍所设计项目的构成、功能及操作使用方法,详细说明该方案是怎么设计出来的。

2、硬件设计说明

画出完整、规范的电路图,说明单片机I/O口分配使用的情况以及为何这样分配使用,分析介绍电路的工作原理,介绍电路中主要元器件在电路中的作用以及他们的规格或参数是怎样确定的。

3、软件设计说明

1)说明软件设计的思路,介绍软件的总体功能,画出完整、规范的程序的流程图;

2)介绍程序的总体框架结构,即整个程序由哪些模块构成,各模块的功

能是什么,其中又包含哪些子功能,等等,从总体上说明整个程序的执行及工作过程;

3)以一些重要或关键的程序段为例,说明该段程序的功能、作用和编写

思路;

4)列出完整的程序清单,重要、关键或难以理解用意的模块、语句要加

以注释;

4、制作调试说明

介绍制作调试的过程、结果,以及在过程中出现的问题和解决问题的方法。

5、操作使用说明

介绍所设计“产品”的操作及使用方法。

6、总结说明

介绍本次课程设计的收获、体会或经验教训,要求客观、具体。

 报告不要盲目追求篇幅,只要能说清楚问题即可,不必大量拷贝或摘抄资

料文献。正文采用宋体四号字,若用手写,要求字迹工整。

四、进度安排

本课程设计共两周的时间,按10个工作日算,进度安排如下:

 明确设计任务,调研、查阅资料,构思、确定总体方案,用两天时间;  设计硬件电路,设计软件功能,画程序流程图,用一天时间;

 设计程序结构,编写程序,用两天时间;

 通过计算机仿真验证调试程序,用一天时间;

 制作硬件电路,用一天时间;

 通过硬件电路验证调试程序,用一天时间;

 撰写设计报告,验收设计成果,用两天时间。

五、成绩评定

及格标准如下:

1、按期完成设计并提交设计报告和交验根据设计制作的实物,出勤良好;

2、报告的内容、格式符合要求,能反映设计过程的实际情况,设计制作的实物的功能和性能基本能达到设计任务的要求。

 在及格的基础上,根据设计成果的质量酌情评定为优秀、良好或中等。 不交设计报告或报告的内容大部分是抄来的,以及不交验设计制作的实物

或用别人的实物来交验,出勤很少,将判为不及格。

下载单片机技术实验指导书word格式文档
下载单片机技术实验指导书.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    单片机实验

    实验一、MCS51单片机基本开发环境 1. 实验目的: 1) 熟悉软件的集成开发环境 2) 掌握单片机软件设计流程 3) 掌握单片机存贮器结构及各窗口之间的联系 2. 实验内容: 1) 用三种方......

    单片机实验

    实验一清0、移数 将片内20H~2FH及片外0010H~001FH单元清0; 然后将片内30H~3FH的数据移到片外0000H~000FH中;判断: 若(30H)≤10,则求其平方存到31H中,并将位00H置1(其它位清0) 若(30H)=1......

    推进剂与烟火技术实验指导书

    推进剂与烟火技术实验备课笔记 目录 推进剂与烟火技术 实验一 铝热剂 实验二 固体煤油 实验三 有色发光剂 实验四 烟幕剂 实验五 新型火药、彩烟与焰火 实验六 火药绘画 实......

    单片机接口技术与实验课程总结

    《单片机接口技术与实验》课程总结 姓名:史慧学号:年级:专业:电气工程及其自动化1226409016 2009级 2011年秋季学期 实验一 1. 功能要求 本实验要求向芯片中写入 10 个字节......

    2013单片机实验教案

    单片机技术实验 教 案 冯 杰 1 实验一 顺序结构程序设计 一、实验目的 掌握汇编语言设计和调试方法。 二、实验内容 把外部RAM中2000h单元的内容拆开,高位送2001h单元,低位......

    单片机实验 2

    单片微型计算机原理、应用及接口技术 实验报告 得分: 年级专业: 测控1303班学生姓名/学号:崔振振/201323030325 评阅教师: 提交时间:2015—2016学年第1学期 单片机实验1汇编语......

    单片机实验心得体会

    单片机实验心得体会 单片机实验心得体会一:单片机实验心得体会 时间过得真快,不经意间,一个学期就到了尾声,进入到如火如荼的期末考试阶段。在学习单片机这门课程之前,就早早的......

    单片机液晶显示实验

    实验八 单片机液晶显示实验 一、实验目的 1、了解液晶显示屏的控制原理及方法。 2、了解点阵汉字的显示原理。 二、实验说明 1、 利用实验上的液晶显示屏电路,编写程序控制......