您的当前位置:首页正文

《单片机原理及应用》课程实训指导

2022-12-10 来源:步旅网


《单片机原理及应用》课程实训指导书

一、实训目的

1、熟悉单片机应用系统的开发、研制过程。

2、能运用MCS-51单片机进行简单的单片机应用系统的硬件设计。

3、能采用MCS-51单片机汇编语言进行简单的单片机应用系统的软件设计。 4、掌握单片机应用系统的硬件、软件调试方法。

5、熟悉单片机仿真开发系统的作用,基本掌握运用单片机仿真开发系统进行在线仿真、调试和目标程序固化的方法。

6、为今后从事单片机应用系统的开发、生产和维护工作奠定基础。

二、实训要求

1、本实训分组进行,具体分成几组详见实训计划。每组指定一名组长,组长负责组内成员的分工和协调工作。由各班班长负责分组和组长的确定,并将分组表提供给指导老师。

2、利用所提供的实训器材,每组独立完成实训内容中列出的一个实训课题。具体到哪一组完成哪一个课题,由指导老师确定。

3、程序设计中要求用到定时器中断,即定时器以中断方式实现定时。

4、完成实训后或实训期满时,每组应主动将本组完成的样机交给指导老师验收,作为实训成绩评定的重要依据之一。结束实训后的第二天每人提交一份实训报告。报告中应指出组内成员的分工及完成情况,谈谈每人的实训收获与感想。报告格式必须符合学院规定的规范格式。

三、实训内容

课题1、十字路口交通信号灯的设计与制作

1、课题任务

(1) 基本功能:

在马路的十字路口东西南北各设置红、黄、绿3种信号灯,4个路口共12个信号灯。控制的过程为:当东西方向通车时绿灯亮,而南北方向红灯亮;当通车的时间到后,东西方向的绿灯灭,而黄灯亮,黄灯闪烁若干次后由东西方向换到南北方向通车。此时,东西方向黄灯灭而红灯亮,南北方向红灯灭而绿灯亮,南北方向开始通车。通

1

车时间到后,南北方向绿灯灭,黄灯闪烁若干次后由南北方向切换到东西方向,南北方向黄灯灭,红灯亮;而东西方向红灯灭,绿灯亮。如此不断循环。如下图所示:

北 红 黄 绿

绿 红 西 黄 黄 东

红 绿

绿 黄 红 南

(2) 扩展功能:

增设两个按键(1个“调整/确认健”、1个“加1秒键”),用于调整红、黄、绿灯的显示时间。两键功能定义如下:

 在正常工作状态下,按住“调整/确认健”3秒,则进入调整各灯显示时间(即

各方向的通车时间)状态,此时南北绿灯亮,其余灯全灭,表示调整南北通车时间;

 要想使灯亮时间为n秒,则按n次“加1秒键”;  按一下“调整/确认健”,则进入调整黄灯显示时间状态,此时南北黄灯亮,

其余灯全灭;

 黄灯显示时间设好后,再按一下“调整/确认健”,则进入调整红灯显示时间

状态(即东西通车时间),此时南北红灯亮,其余灯全灭;  南北红灯显示时间设好后,再按一下“调整/确认健”,则恢复正常工作状态。 2、课题要求

(1) 所有信号灯全部用Φ5发光二极管替代。

(2) 单片机采用89C51或89S51(内含4KB程序存储器,与MCS-51兼容)。fosc=12MHZ。 (3) 延时时间用单片机的定时器实现。

(4) 因CMOS型单片机的拉电流很小,为了减少额外的驱动开销,所有发光二极管采用共阳极接法。 3、参考设计方案 (1) 参考硬件电路

2

D+5VR1R2R3R4R5R6R7R8J1330330330330330330330330D1D2D3D4D5D6D7D8北红+5V40南红西红东红北黄南黄西黄东黄30pC112MHz123456781312151431191891716IC1P10P11P12P13P14P15P16P17P00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P27RXDTXDALE/PPSEN3938373635343332212223242526272810113029D10D9D11北绿南绿西绿东绿R9330+5VVCCR10330R11330R12330D12C+5V21CON2INT1INT0T1T0EA/VPX1X2RESETRDWRS2 调整/确认S3 加1秒GNDGNDS1 复位+5VSW-PBC310uF/16VGNDY130pR13510AT89C51BR145.1K20GNDGNDC2GND 说明:电源部分的电路未给出,下面给出电路也未画出电源部分。 (2) 参考控制程序 ①用软件延时实现的“基本功能”参考程序如下: ORG 0000H LP1: LCALL DELAY SJMP START CPL P0.6 ORG 0030H CPL P0.7 START: MOV A,#0FFH DJNZ R7,LP1 MOV P1,A MOV R7,#11 MOV P0,A CLR P0.2 12LP: MOV R7,#11 CLR P0.3 CLR P0.0 SETB P0.0

CLR P0.1 SETB P0.1 CLR P1.2 CLR P1.0 CLR P1.3 CLR P1.1 LCALL DELAY50s LCALL DELAY50S SETB P1.2 SETB P1.0 SETB P1.3 SETB P1.1 CLR P0.6 CLR P0.4 CLR P0.7 CLR P0.5

3

ALP2: LCALL DELAY DJNZ R7,LP2

CPL P0.4 AJMP LPCPL P0.5

说明:子程序DELAY50s和DELAY未给出。

②用硬件延时实现的包括“扩展功能”的参考程序如下:

SETKEY DATA 02H JNZ LP8;按住设置键的时 ADD1KEY DATA 01H 间不足3秒,则转 L_TIME DATA 20 MOV P0,#0FFH H_TIME DATA 5 MOV p2,#0F0H ORG 0000H ;调整绿灯亮的时间,绿灯 SJMP START 全亮 ,其余全灭 ORG 000BH SJMP LP8 LJMP T0 BLP1: MOV A,40H ORG 0030H JNZ LP9;不调整时间,转 START: MOV SP,#5FH MOV P0,#0FFH;调整绿灯亮 MOV 31H,#L_TIME 的时间,绿灯全亮 ,其余全灭 MOV 32H,#H_TIME MOV p2,#0F0H RESTART:MOV 30H,#20 LP12: LCALL KEY MOV 40H,#1 CJNE A,#ADD1KEY,LP10 MOV 41H,#2 SJMP LP11 MOV 42H,#60 LP10: CJNE A,#SETKEY,LP12 MOV 43H,31H MOV P0,#0FH; 调整黄灯亮 MOV 20H,#0 的时间,黄灯全亮 ,其余全灭 MOV TMOD, #01H MOV p2,#0FFH MOV TH0 , #3CH DJNZ 41H,LP12 MOV TL0 , #0B0H LJMP RESTART;调整时间完 MOV IE, #82H 毕,重新开始 MOV IP, #02H LP11: MOV A,41H MOV TCON, #10H CJNE A,#2,LP13 ;南北通车 JB 20H.1,LP14 MOV P0,#0FCH SETB 20H.1;20H.1=1表示 MOV p2,#0F3H 已调整了绿灯亮的时间 LP9: CLR 20H.0 MOV 31H,#1 LP6: LCALL KEYSET SJMP LP12 CJNE A,#SETKEY,LP6 LP14: INC 31H SETB 20H.0;按下了设置键, SJMP LP12 则20H.0=1 LP13: JB 20H.2,LP15

LP8: LCALL KEYSET SETB 20H.2;20H.2=1表示 CJNE A,#SETKEY,BLP1;松已调整了黄灯亮的时间 开了设置键,转 MOV 32H,#1

;保持按住设置键 SJMP LP12 LP7: MOV A,40H LP15: INC 32H

4

SJMP LP12 KEY: MOV A,p1 ANL A,#03H

CJNE A,#03H,LP1;有键按下,转

SJMP KEY

LP1: LCALL DL20MS;延时去抖 MOV A,p1 ANL A,#03H

CJNE A,#03H,LP2;确认有键按下,转

SJMP KEY LP2: PUSH A

LP3: MOV A,p1;等键释放 ANL A,#03H

CJNE A,#03H,LP3 POP A RET

KEYSET: MOV A,p1 ANL A,#03H

CJNE A,#03H,LP4 SJMP LP5 LP4: LCALL DL20MS MOV A,p1 ANL A,#03H LP5: RET

DL20MS: MOV R7,#40 DL1: MOV R6,#250 DL2: DJNZ R6,DL2 DJNZ R7,DL1 RET

ORG 0400H

T0: MOV TH0 , #3CH MOV TL0 , #0B0H PUSH PSW PUSH A

JNB 20H.0,LP16;未按下设置键,转

DJNZ 42H,LP17;按住设置键不足3秒,转

;MOV 42H,#60

MOV 40H,#0;(40H)=0表示正在调整交通灯点亮的时间

CLR TR0

5

LJMP EXIT LP16: MOV 42H,#60 LP17: MOV A,#2

CJNE A,40H,LP18

DJNZ 33H,LP19;南北黄灯闪烁间隔时间未到,转

CPL P0.6 CPL P0.7 LP20: MOV 33H,#5 SJMP LP19 LP18: MOV A,#4

CJNE A,40H,LP19

DJNZ 33H,LP19;东西黄灯闪烁间隔时间未到,转

CPL P0.4 CPL P0.5 SJMP LP20 LP19: DJNZ 30H,EXIT;加时不到1秒,退出

MOV 30H,#20

DJNZ 43H,EXIT;点亮时间未到,退出

INC 40H MOV A,40H DEC A CLR C RLC A

MOV DPTR,#TAB JMP @A+DPTR TAB: SJMP CASE1 SJMP CASE2 SJMP CASE3 SJMP CASE4 SJMP CASE5

CASE1: MOV P0,#0FCH;南北通车 MOV p2,#0F3H MOV 43H,31H SJMP EXIT

CASE2: MOV P0,#3CH;南北黄灯亮 MOV p2,#0FFH MOV 43H,32H MOV 33H,#5 SJMP EXIT

CASE3: MOV P0,#0F3H;东西通车

MOV p2,#0FCH MOV 43H,31H SJMP EXIT

CASE4: MOV P0,#0C3H;东西黄灯亮 MOV p2,#0FFH MOV 43H,32H MOV 33H,#5

6

SJMP EXIT CASE5: MOV 40H,#1 SJMP CASE1 EXIT: POP A POP PSW RETI

课题2、比赛用秒表的设计与制作

1、课题任务

秒表功能如下:

⑴ 两个数码管显示秒,用一个数码管显示零点几秒,最多可显示99.9秒。 ⑵ 一个按钮用于启动或停止计时,启动和停止交替进行。如:若当前正在计时,按该按钮则停止计时;若当前已停止计时,按该按钮则继续计时。若计时到99.9秒后又从0.00秒继续计时,循环不止。

⑶ 另一个按钮用于计时器清零。只有在停止计时的时候方可清零。 2、课题要求

(1) 时间的定时采用89C51单片机的定时器和软件计数的方式实现。

(2) 因CMOS型单片机的拉电流很小,为了减少额外的驱动开销,采用共阳极的23数码管。 3、参考设计方案 (1) 参考硬件电路 +5V+5V40334B1B2B3B4B5B6B7B8J121CON2GND+5V330*8IC1R9R10R11R12R13R14R15R16123456781312151431P10P11P12P13P14P15P16P17INT1INT0T1T0EA/VPX1X2RESETRDWRAT89C51R25.1KGND20GND330*16P00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P2739383736353433322122232425262728R1R2R3R4R5R6R7R8*R17R18R19R20R21R22R23R24S2 启/停 RXDTXDALE/PPSEN10113029S3 清零SW-PBGNDA19A1A210A2A32A3A44A4A55A5A67A6A76A7A81A8C1C2C3C4C5C6C7C8VCCDS1DPYaabcfbgdeecdfdpgdp9B110B22B34B45B57B66B71B8DS2DPYaabcfbgdeecdfdpgdp9C110C22C34C45C57C66C71C8DS3DPYaabcfbgdeecdfdpgdpDPY_7-SEG_DP8DPY_7-SEG_DP88DPY_7-SEG_DP30pC112MHzY1GND191830p+5V91716C3C2S1 复位SW-PBSW-PBR2533010uF/16V3 (2) 参考控制程序 (2) 提示: 采用定时器T0工作在方式1定时50ms,计数初值为15536,用软件计数20次 即为1秒。参考控制程序如下: ORG 0000H ORG 0030H SJMP START START: MOV SP,#5FH Title ORG 000BH MOV TMOD, #01H SizeNumber LJMP T0INT MOV TH0 , #3CH A4Date:File:26-Dec-2007I:\\本人教学资料\\实训指导书\\实训1.DdbSheet of Drawn By:4Revision 27 3 MOV TL0 , #0B0H MOV IE,#82H MOV IP,#02H SETB TR0 CLR A

MOV 50H,A MOV 51H,A MOV 52H,#2 ORL P3,#03H RDKEY: ACALL DISPLAY MOV A,P3 ANL A,#03H

CJNE A,#03H,NEXT;有键按下,转

SJMP RDKEY NEXT: JZ RDKEY

JNB ACC.0,KEY0;KEY0为启动/暂停键

KEY1: JB TR0,RDKEY;KEY1为清零键,计时时不准清零 CLR A

MOV 50H,A MOV 51H,A ACALL DISPLAY SJMP KEYOFF KEY0: CPL TR0

KEYOFF: ACALL DL20MS WAIT: MOV A,P3;等键释放 ANL A,#03H

CJNE A,#03H,WAIT SJMP RDKEY DISPLAY:MOV DPTR,#TAB MOV A,50H ANL A,#0FH MOVC A,@A+DPTR

MOV P2,A;P2口显示小数位 MOV A,50H ANL A,#0F0H

SWAP A

MOVC A,@A+DPTR ANL A,#7FH

MOV P0,A;P1口显示个位 MOV A,51H ANL A,#0FH MOVC A,@A+DPTR

MOV P1,A;P0口显示十位 RET

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H

DB 92H,82H,0F8H,80H,90H

T0INT: MOV TH0 , #3CH;T0中断服务程序

MOV TL0 , #0B0H DJNZ 52H,QUIT PUSH PSW PUSH A

MOV 52H,#2 MOV A,50H ADD A,#01H DA A MOV 50H,A MOV A,51H ADDC A,#00H DA A

CJNE A,#10H,SEND CLR A SEND: MOV 51H,A ACALL DISPLAY POP A POP PSW QUIT: RETI

DL20MS: MOV R7,#40 DL2: MOV R6,#250 DL1: DJNZ R6,DL1 DJNZ R7,DL2 RET

课题3、模拟霓虹灯控制系统的设计与制作

1、课题任务

(1) 基本功能:

8

用一个Φ5发光二极管代表一个灯。将16个红、黄、绿3色灯排成一排或排成一个环行,如:红1-黄2-绿3-红4-黄5-绿6-红7-黄8-绿9-红10-黄11-绿12-红13-黄14-绿15-红16,其中数字1—16为各灯的编号,让各灯循环交替显示,从而获得街上霓虹灯的显示效果。以下为一种霓虹灯的显示效果:

① 用一个Φ5发光二极管代表一个灯。将16个红、黄、绿3色灯排成一排或排成一个环行,如:红1-黄2-绿3-红4-黄5-绿6-红7-黄8-绿9-红10-黄11-绿12-红13-黄14-绿15-红16,其中数字1—16为各灯的编号。下面的叙述中用此编号表示不同的灯。

② 按1—16、16—1的顺序依次逐个点亮,任意时刻只有一个灯点亮。 ③ 灯全灭后,让所有灯同时闪烁3次。

④ 灯全亮,然后按1—16的顺序依次熄灭一个灯,直到全灭;再按16—1的顺序依次点亮,直到所有灯全亮。 ⑤ 所有红色灯同时闪烁3次。 ⑥ 灯全灭,同时从两头开始,依次各点亮一个灯并熄灭此前点亮的灯,即1和16亮,熄灭后2和15亮,依此类推,最后灯全灭。 ⑦ 所有黄色灯同时闪烁3次。

⑧ 灯全灭,同时从两头开始,依次各点亮一个灯,直到所有灯全亮后,同时按8—1、9—16的顺序依次各熄灭一个灯,直到灯全灭。 ⑨ 所有绿色灯同时闪烁3次。

⑩ 重复②--⑨。灯亮灭切换时的间隔时间可全部为0.5秒—0.2秒,也可不同。具体时间可自行确定,以视觉效果好为宜。

(2) 扩展功能:

上面的基本功能只是一种固定的显示效果。增设一个“选择”按键,用于循环选择多种显示效果中的一种,即按一下“选择”键,则改变一种显示效果。

2、

9

2课题要求 与课题1相同。 3 参考设计方案 (1) 参考硬件电路 +5VR1R2R3R4R5R6R7R8J121CON2S?SW-PBR1733010uF/16VGND+5VC330pC1GND+5VC2330D133034红黄IC1P10P11P12P13P14P15P16P17INT1INT0T1T0EA/VPX1X2RESETRDWRAT89C5120GNDVCC40+5VD2D10P00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P2739383736353433322122232425262728绿红黄R9330+5V330D3330绿红黄绿红黄30p12MHzY1D4330D5330D6330123456781312151431191891716D9R10330R11330R12330R13330R14330R15330R16330D11D12绿红黄绿红D13D7330D8D14D15D16RXDTXDALE/PPSEN10113029S2 选择GNDGNDR185.1KGND (2) 参考控制程序 10

11

12

13

提示:将各种显示方式编码后存到一张表中,采用二级查表法定时将选择的其中一种显示效果的显示编码从表中取出控制显示。这样处理便于显示效果的选择,也可使程序结构简化。

① 采用软件延时、实现基本功能的参考控制程序如下: ORG 0000H 个点亮 SJMP START RRC A ORG 0030H MOV R3,A STRAT: MOV R2,#0FFH MOV P1,A

MOV R3,#0FFH MOV A,R2 MOV R7,#10H RRC A CLR C MOV R2,A

LP1: MOV A,R2;按1—16的顺序依次逐MOV P0,A 个点亮 LCALL DL300ms

RLC A DJNZ R7,LP2 MOV R2,A MOV R7,#6;此时R2=FFH,R3=7FH,MOV P0,A 所有灯同时闪烁3次 MOV A,R3 CLR A RLC A LP3: CPL A MOV R3,A MOV P0,A MOV P1,A MOV P1,A LCALL DL300ms LCALL DL300ms DJNZ R7,LP1 DJNZ R7,LP3 MOV R7,#0FH;R2=FFH,R3=7FH MOV R7,#10H ;Cy=1 MOV R2,A;A=00H,此时灯全亮

LP2: MOV A,R3;按16—1的顺序依次逐MOV R3,A

14

LP4: SETB C;按1—16的顺序依次熄灭一个灯,直到灯全灭

MOV A,R2 RLC A MOV R2,A MOV P0,A MOV A,R3 RLC A MOV R3,A MOV P1,A

LCALL DL300ms DJNZ R7,LP4 MOV R7,#10H; 再按16—1的顺序

依次点亮,直到所有灯全亮 LP5: CLR C

MOV A,R3 RRC A MOV R3 MOV P1,A MOV A,R2 RRC A MOV R2,A MOV P0,A

LCALL DL300ms DJNZ R7,LP5

MOV R7,#3;R2,R3全为0,灯全亮

LP6: MOV A,#0B6H;红灯闪烁3次

MOV P0,A MOV #6DH MOV P1,A;红灯全亮,其余灯全灭 LCALL DL300ms MOV A,#0FFH MOV P0,A

MOV P1,A;灯全灭 LCALL DL300ms DJNZ R7,LP6

MOV R7,#08H;同时从两头开始,

依次各点亮一个灯并熄灭此前点亮的灯

MOV R2,#7FH MOV R3,#0FEH

LP7: MOV A,R2

RL A MOV R2,A MOV P0,A

15

MOV A,R3 RR A MOV R3,A MOV P1,A

LCALL DL300ms DJNZ R7,LP7

MOV R7,#07H;R2=7FH,R3=FEH

LP8: MOV A,R2

RR A MOV R2,A MOV P0,A MOV A,R3 RL A MOV R3,A MOV P1,A

LCALL DL300ms DJNZ R7,LP8

MOV R7,#3;黄灯闪烁3

次,R2=FEH,R3=7FH LP9: MOV A,#6DH

MOV P0,A MOV #0DBH MOV P1,A;黄灯全亮,其余灯全灭 LCALL DL300ms MOV A,#0FFH MOV P0,A

MOV P1,A;灯全灭 LCALL DL300ms DJNZ R7,LP9

MOV R7,#08H;同时从两头开始,

依次各点亮一个灯,直到所有灯全亮

MOV R2,A;A=FFH MOV R3,A

LP10: CLR C

MOV A,R2 RLC A MOV R2,A MOV P0,A CLR C MOV A,R3 RRC A MOV R3,A MOV P1,A

LCALL DL300ms

DJNZ R7,LP10 DJNZ R7,LP11 MOV R7,#08H;R2=00,R3=00 MOV R7,#3;绿灯闪烁3

LP11: SETB C;同时按8—1、9—16的顺次,R2=FEH,R3=7FH 序依次各熄灭一个灯,直到灯全灭 LP12: MOV A,#0DBH

MOV A,R2 MOV P0,A RRC A MOV #0B6H MOV R2,A MOV P1,A;绿灯全亮,其余灯全灭 MOV P0,A LCALL DL300ms SETB C MOV A,#0FFH MOV A,R3 MOV P0,A RLC A MOV P1,A;灯全灭 MOV R3,A LCALL DL300ms MOV P1,A DJNZ R7,LP12 LCALL DL300ms AJMP START

说明:子程序DL300ms未给出。

② 采用硬件延时、实现了扩展功能的参考控制程序如下:

DLNUM DATA 10 TYPES DATA 2 ORG 0000H SJMP START ORG 000BH LJMP T0INT ORG 0030H START: MOV SP,#5FH CLR A MOV R2,A MOV R3,A MOV R6,A

GOON: MOV TMOD, #01H MOV TH0 , #3CH MOV TL0 , #0B0H MOV IE, #82H MOV IP, #02H MOV TCON, #10H ACALL SITE ACALL DISP ACALL SELECT SJMP GOON SELECT: MOV A,P3

JB ACC.0,SELECT S1: MOV A,P3

16

JNB ACC.0,S1;等键释放 INC R6 MOV A,R6

CJNE A,#TYPES,S2 MOV R6,#0 S2: RET

SITE: MOV A,R6 ADD A,R6 MOV R5,A

MOV DPTR,#TABLE MOVC A,@A+DPTR PUSH A MOV A,R5 INC A

MOVC A,@A+DPTR MOV DPL,A POP DPH CLR A

MOVC A,@A+DPTR MOV 31H,A CLR A INC DPTR

MOVC A,@A+DPTR MOV 30H,A;31H和30H单元中存放编码的个数

INC DPTR;DPTR指向第一个编码 PUSH A RET INC R2 DISP: CLR A MOV A,R2 MOVC A,@A+DPTR JNZ T1 MOV P0,A INC R3 INC DPTR T1: LCALL EQUEL MOVC A,@A+DPTR JNB F0,T2 MOV P2,A CLR A INC DPTR MOV R2,A RET MOV R3,A EQUEL: CLR F0 LCALL SITE MOV A,R3 T2: LCALL DISP CJNE A,31H,ERTN POP A MOV A,R2 POP PSW CJNE A,30H,ERTN TEXIT: RETI SETB F0 ORG 0400H ERTN: RET T0: MOV TH0 , #3CH T0INT: MOV TH0 , #3CH MOV TL0 , #0B0H MOV TL0 , #0B0H DJNZ R7,EXIT DJNZ R7,TEXIT MOV R7,#DLNUM MOV R7,#DLNUM EXIT: RETI PUSH PSW

TAB0: DW 00DEH,0FFFEH,0FFFDH,0FFFBH,0FFF7H,0FFEFH,0FFDFH,0FFBFH,0FF7FH DW 0FEFFH,0FDFFH,0FBFFH,0F7FFH,0EFFFH,0DFFFH,0BFFFH,7FFFH

DW 0FFFFH,7FFFH,0BFFFH,0DFFFH,0EFFFH,0EFFFH,0F7FFH,0FBFFH,0FDFFH DW 0FEFFH,0FF7FH,0FFBFH,0FFDFH,0FFEFH,0FFF7H,0FFFBH,0FFFDH,0FFFEH DW 0000H,0FFFFH,0000H,0FFFFH,0000H,0FFFFH

DW 0000H,8000H,0B000H,2000H,1000H,0100H,0B00H,0200H,0100H,0080H DW 00B0H,0020H,0010H,0008H,000BH,0002H,0001H DW 6DB6H,0FFFFH,6DB6H,0FFFFH,6DB6H,0FFFFH

DW 0FFFFH,7FFEH,0BFFDH,0DFFBH,0EFF7H,0F7EFH,0FBDFH,0FDBFH,0FE7FH DW 0FFFFH

DW 0B6DBH,0FFFFH,0B6DBH,0FFFFH,0B6DBH,0FFFFH

DW 0FFFFH,7FFFH,7FFDH,3FFCH,1FF8H,07D0H,03C0H,0180H,0000H

DW 0100H,0180H,0380H,03C0H,07C0H,07E0H,0FE0H,0FF0H,1FF0H,1FF8H, DW 3FF8H,3FFCH,7FFCH,7FFEH,0FFFEH,0FFFFH DW 0DB6DH,0FFFFH,0DB6DH,0FFFFH,0DB6DH,0FFFFH

DW 0010H,0FFFEH,0FFFDH,0FFFBH,0FFF7H,0FFEFH,0FFDFH,0FFBFH,0FF7FH DW 0FEFFH,0FDFFH,0FBFFH,0F7FFH,0EFFFH,0DFFFH,0BFFFH,7FFFH

DW 0FFFFH,7FFFH,0BFFFH,0DFFFH,0EFFFH,0EFFFH,0F7FFH,0FBFFH,0FDFFH DW 0FEFFH,0FF7FH,0FFBFH,0FFDFH,0FFEFH,0FFF7H,0FFFBH,0FFFDH,0FFFEH DW 0000H,0FFFFH,0000H,0FFFFH,0000H,0FFFFH

DW 0000H,8000H,0B000H,2000H,1000H,0100H,0B00H,0200H,0100H,0080H

17

DW 00B0H,0020H,0010H,0008H,000BH,0002H,0001H DW 6DB6H,0FFFFH,6DB6H,0FFFFH,6DB6H,0FFFFH

DW 0FFFFH,7FFEH,0BFFDH,0DFFBH,0EFF7H,0F7EFH,0FBDFH,0FDBFH,0FE7FH DW 0FFFFH

DW 0B6DBH,0FFFFH,0B6DBH,0FFFFH,0B6DBH,0FFFFH

DW 0FFFFH,7FFFH,7FFDH,3FFCH,1FF8H,07D0H,03C0H,0180H,0000H

DW 0100H,0180H,0380H,03C0H,07C0H,07E0H,0FE0H,0FF0H,1FF0H,1FF8H, DW 3FF8H,3FFCH,7FFCH,7FFEH,0FFFEH,0FFFFH DW 0DB6DH,0FFFFH,0DB6DH,0FFFFH,0DB6DH,0FFFFH TAB1: DW TAB2: TAB3: TAB4: TAB5: TAB6: TAB7: TAB8: TAB9:

TABLE: DW TAB0,TAB1,TAB2,TAB3,TAB4,TAB5,TAB6,TAB7,TAB8,TAB9

四、主要步骤

进行单片机应用系统的开发,通常要经历以下主要步骤:

1、总体设计:包括技术指标的确定、机型和器件的选择、软件和硬件的功能划分。 2、硬件设计:选择合适的元器件,确定合适的元件参数,绘制电路原理图和PCB板图,同时要考虑负载能力和抗干扰措施。注意:电路原理图上应注明单片机、数码管等元件的引脚名称和引脚编号,加上必要的标记,以便于硬件组装和检查。 3、软件设计:包括软件定义、软件结构设计和程序编制、生成目标代码。 4、样机制作:根据设计好的电路原理图和PCB板图进行雕板、组装和焊接。 5、仿真调试:包括硬件调试、软件调试和软、硬件联调,往往要修改软、硬件。 6、固化目标程序:在确认硬件和软件无误后,利用单片机仿真开发系统的EPROM(或FLASH)写入器将目标程序代码固化到单片机应用系统的程序存储器中。

最后将固化有程序的程序存储器或内含程序存储器的单片机插入到样机,研制工作即告完成。

五、时间进度安排

详见实训计划。

六、所需设备器材

1、设备:微机、单片机仿真开发系统。

2、元器件、材料、工具:各课题组所需元器件、材料和工具见下表。 序号 元件名称 规格型号 数量 估计 单价 总数 金额小计 项目 18

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 24 25 27 28 变压器 整流二极管 三端稳压 电解电容 去谐波电容 两孔电源插头 单片机 DIP插座 ~7-9V 1N4007 7805 50V50uF 0.1uF 带1m花线 AT89S51 40PIN 12MHZ 30PF 25V10uF 0.25W 100mm*150mm 2~4针孔 含烙铁架 或斜口钳 非裸线 一字、十字 机械轻触 红黄绿Ø5 1 4 1 1 1 1 1 1 1 2 2 1 1 1 1 1 若干 若干 2 2 12 12 3 24 16 16 课题一 (共3组) 课题二 (共4组) 课题三 (共3组) 各课题 (共10组) 用于制作+5V电源 石英晶振 瓷介电容 电解电容 5.1K电阻 覆铜板 接插件 电烙铁 剪线钳 松香、焊锡 细铜导线 螺丝刀 复位按钮 发光二极管 330欧电阻 8段数码管 330欧电阻 发光二极管 330欧电阻 0.25W 20mm共阳 0.25W 红黄绿Ø5 0.25W 注:1、序号1~6加上一个电解电容25V10uF电解电容(序号11)用于提供+5V直流电源。若有现成的+5V直流电源,则可直接代之。

2、若不采用雕刻制板,则序号13(覆铜板)用万用电路板代替。

说明:本指导书适用于实训时间为1周的单片机课程实训。

19

文其知撰写湖南理工职业技术学院信息工程系电子教研室 20

21

因篇幅问题不能全部显示,请点此查看更多更全内容