单片机课程设计代码

单片机课程设计代码
单片机课程设计代码

陈新 2014/7/21 17:32:03

QQ可以找到历史记录的

陈新 17:33:15

无痕的回忆 17:01:52

LED_LOOP: MOV R1, #251 ;1s的显示延时(好奇怪,居然不准)

LED_LOOP_1: MOV R4, #14 ;使用了寄存器R1,R4(估计可以使用堆栈临时释放)

LED_LOOP_2: LCALL DISPLAY_MOVE

DJNZ R4, LED_LOOP_2

DJNZ R1, LED_LOOP_1

RET

无痕的回忆 23:10:36

ORG 0000H

AJMP MAIN

ORG 0030H

HC595_SCK BIT P0.4

HC595_RCK BIT P0.5

HC595_RST BIT P0.6

HC595_DAT BIT P0.7

MAIN: MOV A, #00H

MOV P0, A

CLR HC595_RST

LOOP0: MOV R0, #0

LOOP1: MOV R1, #100

LOOP2: MOV R4, #10

LOOP3: LCALL DISPLAY

DJNZ R4, LOOP3

DJNZ R1, LOOP2

INC R0

LJMP LOOP1

DELEY0: MOV R6, #4 ;1ms延时的子程序

DELEY1: MOV R7, #123

DELEY2: DJNZ R7, DELEY2

DJNZ R6, DELEY1

NOP

RET

DISPLAY: MOV A, R0 MOV B, #100

DIV AB

MOV B, #10

DIV AB

;MOV A, #0

LCALL SHOW_NUM MOV A, P0

ANL A, #0F0H

ORL A, #1

MOV P0, A ;延时LCALL DELEY0 ;延时LCALL DELEY0

MOV A, R0 ;有问题MOV B, #100

DIV AB

;MOV A, #7

LCALL SHOW_NUM MOV A, P0

ANL A, #0F0H

ORL A, #2

MOV P0, A ;延时LCALL DELEY0 ;延时LCALL DELEY0

MOV A, R0

MOV B, #100

DIV AB

XCH A, B

MOV B, #10

DIV AB

;MOV A, #7

LCALL SHOW_NUM MOV A, P0

ANL A, #0F0H

ORL A, #4

MOV P0, A

LCALL DELEY0 ;延时LCALL DELEY0 ;延时

MOV A, R0

MOV B, #10

DIV AB

;MOV A, #7

LCALL SHOW_NUM

MOV A, P0

ANL A, #0F0H

ORL A, #8

MOV P0, A

LCALL DELEY0 ;延时

LCALL DELEY0

RET

SHOW_NUM: MOV DPTR, #SEG

MOVC A, @A+DPTR

LCALL SEND_BYTE

RET

SEND_BYTE: MOV R2, #8 ;注意这个循环次数控制,有误差则会影响数码管显示MOV R6, #01H

SEND_LOOP: MOV R3, A

ANL A, R6

JZ ZERO

JNZ NZERO

ZERO: CLR HC595_DAT

AJMP NEXT

NZERO: SETB HC595_DAT

NEXT: SETB HC595_SCK

CLR HC595_SCK

MOV A, R6

RL A

MOV R6, A

MOV A, R3

DJNZ R2, SEND_LOOP

CLR HC595_RCK

SETB HC595_RCK

RET

SEG: DB 0FCH

DB 60H

DB 0DAH

DB 0F2H

DB 66H

DB 0BEH

DB 0E0H

DB 0FEH

DB 0F6H

END

无痕的回忆 23:10:04

int8u tab_abc[] = {0xee, 0x3e, 0x9c, 0x7a, 0x9e, 0x8e};

罐头 17:36:46

还有那个循环的呢

陈新 18:18:36

已经发给你了啊

DISPLAY: MOV A, KEY ;将KEY转移给A

LCALL SHOW_NUM

MOV P0, #0FFH ;打开所有的数码管即设置为静态显示

MOV P0, A

LCALL DELAY_1MS ;延时注意到在动态显示中,点亮每位数码管都需要2秒钟

LCALL DELAY_1MS ;延时。

LCALL DELAY_1MS ;延时。

RET

DISPLAY: MOV A,KEY

MOV B, #100

DIV AB

MOV B, #10

DIV AB

;MOV A, #0

LCALL SHOW_NUM

MOV A, P0

ANL A, #0F0H

ORL A, #1

MOV P0, A ;延时

LCALL DELAY_1MS ;延时

LCALL DELAY_1MS

MOV A, KEY ;有问题

MOV B, #100

DIV AB

;MOV A, #7

LCALL SHOW_NUM

ANL A, #0F0H

ORL A, #2

MOV P0, A ;延时

LCALL DELAY_1MS ;延时

LCALL DELAY_1MS

MOV A, KEY

MOV B, #100

DIV AB

XCH A, B

MOV B, #10

DIV AB

;MOV A, #7

LCALL SHOW_NUM

MOV A, P0

ANL A, #0F0H

ORL A, #4

MOV P0, A

LCALL DELAY_1MS;延时

LCALL DELAY_1MS;延时

MOV A, KEY

MOV B, #10

DIV AB

XCH A, B

;MOV A, #7

LCALL SHOW_NUM

MOV A, P0

ANL A, #0F0H

ORL A, #8

MOV P0, A

LCALL DELAY_1MS ;延时

LCALL DELAY_1MS

RET

DISPLAY: MOV A, KEY ;将KEY转移给A

LCALL SHOW_NUM

MOV A, P0 ;打开所有的数码管即设置为静态显示

ANL A,#0F0H;

ORL A, #15;

MOV P0, A

LCALL DELAY_1MS ;延时注意到在动态显示中,点亮每位数码管都需要2秒钟

LCALL DELAY_1MS ;延时。

RET

DISPLAY: MOV A, KEY ;将KEY转移给A

; LCALL SHOW_NUM

MOV DPTR, #SEG

MOVC A, @A+DPTR

MOV P0, A

LCALL DELAY_1MS ;延时注意到在动态显示中,点亮每位数码管都需要2秒钟

LCALL DELAY_1MS ;延时。

RET

SEG: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

7.26课程设计最终版代码

;---------------------------------------------------------------------

;---------------------------------------------------------------------

;************华南理工大学电子与信息学院信息工程2班**************

;************ ************** ;************ 第二组************** ;************ ************** ;************ 高文冠刘翠玲王志健**************

;************ ************** ;************ 单片机课程设计**************

;---------------------------------------------------------------------

;---------------------------------------------------------------------

; --------------------------------------------------------------------

;分配各地址

;---------------------------------------------------------------------

KEY EQU 40H

AJMP START

ORG 0003H ; 入口地址

AJMP JINT0 ;外部中断0入口

ORG 0013H ;

AJMP JINT1 ; 外部中断1入口地址

ORG 0030H ;

; --------------------------------------------------------------------

;定义这个实验中所需要的管脚,其中HCHC595是八位移位寄存器,BEEP是蜂鸣器;---------------------------------------------------------------------

HC595_SCK BIT P0.4

HC595_RCK BIT P0.5

HC595_RST BIT P0.6

HC595_DAT BIT P0.7

BEEP BIT P1.3 ;定义蜂鸣器的管脚

; --------------------------------------------------------------------

;程序以及初始化硬件代码,主要是对中断以及一些端口进行初始化

;---------------------------------------------------------------------

START: MOV A,#00H ;先将数码管的所有段均置0,即都不选; SETB BEEP ;关闭蜂鸣器

MOV P0, A

CLR HC595_RST

MOV SP,#60H ;堆栈地址为60H

SETB EA ;允许全局中断

SETB EX0 ; 允许外部中断0

SETB EX1 ; 允许外部中断1

SETB PX1 ;设外部中断1为高优先级

SETB IT1 ; 设外部中断1边沿触发

CLR IT0 ; 设外部中断0低电平触发

; --------------------------------------------------------------------

;判断是否按键按下,并且赋予键值的键盘扫描代码

;---------------------------------------------------------------------

GWG0: NOP

MOV P2,#0FFH ; 判第0行是否有键按下

CLR P2.0 ; 将P2.0清零

MOV A,P2

ANL A,#0F0H ; 屏蔽低4位,即消除行线的影响

XRL A,#0F0H

JZ NOKEY0 ;A为0,转向NOKEY0

LCALL DELAY_10MS ; 延时,去抖动

MOV A,P2 ; 再确认一次

ANL A,#0F0H

XRL A,#0F0H

JZ NOKEY0 ; A为0,转向NOKEY0,表示第一行没有按键按下

MOV A,P2 ; 判哪一个键按下

ANL A,#0F0H

CJNE A,#0E0H,NEXT1

MOV KEY,#0 ; 按下的键值是0

LCALL DISPLAY ;根据按键在数码管上和LED上显示键值

LJMP GWG0 ;继续检测

NEXT1: CJNE A,#0D0H,NEXT2

MOV KEY,#1 ; 按下的键值是1

LCALL DISPLAY

LJMP GWG0 ;继续检测

NEXT2: CJNE A,#0B0H,NEXT3

MOV KEY,#2 ; 按下的键值是2

LCALL DISPLAY

LJMP GWG0 ;继续检测

NEXT3: CJNE A,#70H,NOKEY0

MOV KEY,#3 ;按下的键值是3

LCALL DISPLAY

LJMP GWG0 ;继续检测

NOKEY0: MOV P2,#0FFH ; 判第1行是否有键按下

CLR P2.1 ; 将P2.1清零

MOV A,P2

ANL A,#0F0H ;屏蔽低4位,即行线的影响

XRL A,#0F0H

JZ NOKEY1 ;A为0,转向NOKEY1

LCALL DELAY_10MS ;延时,去抖动

MOV A,P2 ; 再确认一次

ANL A,#0F0H

XRL A,#0F0H

JZ NOKEY1 ;A为0,转向NOKEY1

MOV A,P2 ;判断哪个按键按下

ANL A,#0F0H

CJNE A,#0E0H,NEXT5

MOV KEY,#4 ;按下的键值是4

LCALL DISPLAY ;根据按键在数码管上和LED上显示键值

LJMP GWG0 ; 继续检测

NEXT5: CJNE A,#0D0H,NEXT6

MOV KEY,#5 ; 按下的键值是5

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NEXT6: CJNE A,#0B0H,NEXT7

MOV KEY,#6 ;按下的键值是6

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NEXT7: CJNE A,#70H,NOKEY1

MOV KEY,#7 ;按下的键值是7

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NOKEY1: MOV P2,#0FFH ;判第2行是否有键按下

CLR P2.2 ;将P2.2清零

MOV A,P2

ANL A,#0F0H ;屏蔽掉低四位,即消除行线的影响

XRL A,#0F0H

JZ NOKEY2 ;A为0,转向NOKEY2

LCALL DELAY_10MS ;延时,去抖动

MOV A,P2 ; 再确认一次

ANL A,#0F0H

XRL A,#0F0H

JZ NOKEY2 ;A为0,转向NOKEY2

MOV A,P2 ;判哪一个键按下

ANL A,#0F0H

CJNE A,#0E0H,NEXT9

MOV KEY,#8 ;按下的键是8

LCALL DISPLAY ;根据按键在数码管上和LED上显示键值

LJMP GWG0 ;继续检测

NEXT9: CJNE A,#0D0H,NEXT10

MOV KEY,#9 ;按下的键值是9

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NEXT10: CJNE A,#0B0H,NEXT11

MOV KEY,#10 ;按下的键值是10

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NEXT11: CJNE A,#70H,NOKEY2

MOV KEY,#11 ;按下的键值是11

LCALL DISPLAY

LJMP GWG0 ; 继续检测

NOKEY2: MOV P2,#0FFH ;判第2行是否有键按下

CLR P2.3 ;将P2.3清零

MOV A,#P2

ANL A,#0F0H ; 屏蔽高4位

XRL A,#0F0H

JZ NEXT16 ; A为0,转向NEXT16

LCALL DELAY_10MS ; 延时,去抖动

MOV A,P2 ; 再确认一次

ANL A,#0F0H

XRL A,#0F0H

JZ NEXT16 ;A为0,转向NEXT16

MOV A,P2 ;判哪一个键按下

ANL A,#0F0H

CJNE A,#0E0H,NEXT13

MOV KEY,#12 ;按下的键值是12

LCALL DISPLAY ;根据按键在数码管上和LED上显示键值

LJMP GWG0 ;继续检测

NEXT13: CJNE A,#0D0H,NEXT14

MOV KEY,#13 ;按下的键值是13

LCALL DISPLAY

LJMP GWG0 ;继续检测

NEXT14: CJNE A,#0B0H,NEXT15

MOV KEY,#14 ;按下的键值是14

LCALL DISPLAY

LJMP GWG0 ;继续检测

NEXT15: CJNE A,#70H,NEXT16

MOV KEY,#15 ;按下的键值是15

LCALL DISPLAY

LJMP GWG0 ;继续检测

NEXT16:LJMP GWG0

; --------------------------------------------------------------------

;外部中断0服务程序,即实现功能3闪烁显示ERR-和拓展功能蜂鸣器播放音乐

; --------------------------------------------------------------------

JINT0: NOP

LCALL SMG_ERROR_1s ;显示ERR-

LCALL DELAY_1S ;延时

MOV A,#00H ;熄灭所有数码管,达到闪烁的效果

MOV P0, A

LCALL DELAY_1S ;延时

LCALL SMG_ERROR_1s ;第二次显示ERR-

LCALL DELAY_1S ;延时1s

MOV P0,#00H ;再次熄灭所有数码管

LCALL DELAY_1S ;延时1s

LCALL SMG_ERROR_1s ;第三次显示ERR-

LCALL DELAY_1S ;延时1s

MOV P0,#00H ;对P0端口和R4寄存器进行清0

MOV R4,#0

RETI

; --------------------------------------------------------------------

; 外部中断1服务程序,即实现功能4,跑马灯

; --------------------------------------------------------------------

JINT1: MOV R1,#10 ;控制跑马灯的次数为10次

JJHH: MOV P0,#0FFH ;将LED全部置1,

MOV A,#0FEH ;点亮第一个LED

MOV R4,#8 ;控制左移次数为8次,即依次点亮8个LED

LOOP_PMD:MOV P0, A

LCALL DELAY_1S ;在动态显示中,点亮每位数码管都需要2MS

RL A ;对A左移进行左移,实现流水灯的效果

DJNZ R4,LOOP_PMD;R4不为0,则对A继续进行左移,直到所有的LED都被点亮为止

DJNZ R1,JJHH ;R1不为0,则继续进行跑马灯显示,总共10次

LCALL DELAY_1S

LCALL DELAY_1S

RETI

; --------------------------------------------------------------------

;根据按键在数码管上和LED上显示键值,即实现功能一、二

; --------------------------------------------------------------------

DISPLAY:LCALL DISPLAY_SMG ;转向显示程序

LCALL DISPLAY_LED ;转向显示程序

MOV P0, #00H ;将数码管的所有位均置0,即都不选

CLR HC595_RST

RET

; --------------------------------------------------------------------

;根据按键在数码管上显示键值,采用动态显示的方式

; --------------------------------------------------------------------

DISPLAY_SMG: MOV R1,#8

DISPLAY_SMG_1:MOV R4,#255 ;使用了寄存器R4

DISPLAY_SMG_2:MOV A, KEY ;将KEY转移给A

LCALL SHOW_NUM_SMG

MOV A,P0 ;打开所有的数码管即静态显示模式

ANL A,#0F0H;

ORL A,#8

MOV P0,A

LCALL DELAY_1MS ;在动态显示中,点亮每位数码管都需要2MS

LCALL DELAY_1MS ;延时。

MOV A, #0

LCALL SHOW_NUM_SMG

MOV A,P0 ;打开所有的数码管即静态显示模式

ANL A,#0F0H;

ORL A,#7 ;点亮低三位数码管,使之显示为0,实现在一位数码管显示键值

MOV P0,A

LCALL DELAY_1MS ;在动态显示中,点亮每位数码管都需要2MS

LCALL DELAY_1MS ;延时。

DJNZ R4,DISPLAY_SMG_2;显示255次,可以看到4位数码管同时显示不同的值

DJNZ R1,DISPLAY_SMG_1;显示255次,可以看到4位数码管同时显示不同的值

RET

; --------------------------------------------------------------------

;根据按键进行相应的LED显示

; --------------------------------------------------------------------

DISPLAY_LED:MOV A, KEY ;将KEY转移给A

CJNE A,#8,LP1 ;A不等于8,转移

AJMP LOOP ;A等于8

LP1: JNC LOOP ;A大于8,就不进行LED操作

AJMP DISPLAY_LED_OK ; A小于8,才进行LED操作

DISPLAY_LED_OK: CLR BEEP ;蜂鸣器响起,进入LED显示模式

LCALL DELAY_1S;

SETB BEEP ;关闭蜂鸣器

MOV A,KEY

MOV DPTR,#TABLE_LED

MOVC A,@A+DPTR ;查表

MOV P0,A

LCALL DELAY_1S ;延时

LCALL DELAY_1S

LCALL DELAY_1S

LCALL DELAY_1S

LCALL DELAY_1S

LOOP: NOP

RET

; --------------------------------------------------------------------

;循环显示数码管,显示为ERR-

; --------------------------------------------------------------------

SMG_ERROR_1s: MOV R4,#255 ;使用了寄存器R4

SMG_ERROR_1s_1:LCALL DISPLAY_ERROR ;循环显示每位数码管的值,达到动态显示显示的效果

DJNZ R4,SMG_ERROR_1s_1 ;显示255次,可以看到4位数码管同时显示不同的值

RET

DISPLAY_ERROR: MOV A,#0 ;显示表中第一个字母

LCALL SHOW_NUM_ERROR;将‘E’对应的8位数送进HC595

MOV A, P0 ;打开第一位数码管

ANL A, #0F0H

ORL A, #1

MOV P0, A ;显示

LCALL DELAY_10MS ;延时

MOV A,#1 ;显示表中第二个字母‘R’

LCALL SHOW_NUM_ERROR ;将‘R’对应的8位数送进HC595

MOV A, P0 ;打开第二位数码管

ANL A, #0F0H

ORL A, #2

MOV P0, A ;显示

LCALL DELAY_10MS ;延时

MOV A, #2 ;显示表中第三个字母‘R’

LCALL SHOW_NUM_ERROR ;将‘R’对应的8位数送进HC595

MOV A, P0

ANL A, #0F0H

ORL A, #4

MOV P0, A ;显示

LCALL DELAY_10MS;延时

MOV A, #3 ;显示表中第四个字母‘-’

LCALL SHOW_NUM_ERROR ;将‘-’对应的8位数送进HC595

MOV A, P0

ANL A, #0F0H

ORL A, #8

MOV P0, A ;显示

LCALL DELAY_10MS ;延时

RET

; --------------------------------------------------------------------

;数码管显示ERROR

;--------------------------------------------------------------------

SHOW_NUM_ERROR: MOV DPTR, #TABLE_ERROR ; 查表

MOVC A, @A+DPTR ;

LCALL SEND_BYTE ;将八位数送进HC595

RET

; --------------------------------------------------------------------

;查表和进行移位操作

;--------------------------------------------------------------------

SHOW_NUM_SMG: M OV DPTR, #TABLE_SMG

MOVC A, @A+DPTR

LCALL SEND_BYTE

RET

; --------------------------------------------------------------------

;将要显示的数所对应的八位数进行移位操作,送到移位寄存器中

;--------------------------------------------------------------------

SEND_BYTE: MOV R2, #8 ;注意这个循环次数控制,有误差则会影响数码管显示.八位移位寄存器

MOV R6, #01H

SEND_LOOP: MOV R3, A

ANL A, R6

JZ ZERO

JNZ NZERO

ZERO: CLR HC595_DAT

AJMP GOON

NZERO: SETB H C595_DAT

GOON: SETB H C595_SCK

CLR HC595_SCK

MOV A, R6

RL A

MOV R6, A

MOV A, R3

DJNZ R2, SEND_LOOP

CLR HC595_RCK

SETB H C595_RCK

RET

; --------------------------------------------------------------------

;延时1S的程序

;-------------------------------------------------------------------- DELAY_1S: MOV R5, #200

DEL0 : MOV R6, #40

DEL1 : MOV R7, #123

NOP

DJNZ R7,$

DJNZ R6,DEL1

DJNZ R5,DEL0

RET

;--------------------------------------------------------------------

;延时10MS的程序

;-------------------------------------------------------------------- DELAY_10MS:MOV R6,#10 ;延时10MS的程序D1: MOV R7,#248

DJNZ R7,$

DJNZ R6,D1

RET

;--------------------------------------------------------------------

;延时1MS的程序

;-------------------------------------------------------------------- DELAY_1MS: MOV R6,#4 ;1ms延时的子程序DELEY1: MOV R7, #123

DELEY2: DJNZ R7, DELEY2

DJNZ R6, DELEY1

NOP

RET

;--------------------------------------------------------------------

;0--F在数码管上显示的所对应的编码表

;--------------------------------------------------------------------

TABLE_SMG: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H DB 0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH

;--------------------------------------------------------------------

;LED上依次点亮所对应的编码表

;--------------------------------------------------------------------

TABLE_LED: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

;--------------------------------------------------------------------

;ERR-数码管上显示的所对应的编码表

;--------------------------------------------------------------------

TABLE_ERROR: DB 9EH,0EEH,0EEH,02H

END

单片机课程设计指导书

单片机原理及应用课程设计指导书 一、课程设计目的 《单片机原理及应用》是一门技术性,应用性、实践性很强的学科。课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的和任务就是配合单片机的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 二、课程设计要求 1、每个学生可以从下面的课程设计题目中任选一个(也可以根据自己的兴趣选题,但选题必须是和单片机应用有关的其他控制或测试系统,同时要通过指导老师确认),选题后按任务书的要求查阅资料,完成系统的总体设计和各个模块的设计。具体实现可以用Proteus仿真,也可以用硬件。 2、进入实验室以后应根据前面的设计在2周内独立完成仿真和调试任务。课程设计过程中,要认真记录资料来源、出现的问题和解决方法。 3、不同的学生如果选题相同,相互之间可以相互探讨,但杜绝抄袭。如果发现,按零分计算。 4、设计完成后学生要按要求认真撰写课程设计报告,并于设计完成后一周内交指导老师评阅。同时准备设计测试和答辩。

三、时间安排 1、13周之前完成分组和选题,并根据选题向指导老师要任务书 2、14周根据任务书的设计要求,查阅相关的资料,完成系统总体方案设计及各模块的软硬件设计 3、15周进入实验室进行仿真、调试,并馔写设计报告,并于16周周一交给指导教师,并准备系统测试和答辩。 四、设计作品提交 1、课程设计报告书 2、proteus仿真程序(对于用proteus仿真的学生) 3、硬件实物及单片机源程序文件 五、设计报告的撰写 1、设计报告采用统一的格式,封面包括:课程设计名称、班级、姓名、学号、设计时间,具体参考设计摸板。 2、设计报告书写规范,系列分以下几个部分进行书写: 1、绪论:介绍设计的背景和意义 2、系统总体方案设计:给出系统设计硬件框图,说明实现的基本原理 3、硬件系统设计:针对框图中的硬件模块,分别介绍选择的具体元器件型号,并介绍这些器件的性能及和单片机的连接图,最后画出详细的这个系统硬件原理图。 4、系统软件设计:根据设计的功能划分模块,画出主程序和主程序的软件流程图。 5、系统调试及仿真 写出调试方法和运行结果 6、设计总结 六、课程设计内容及提示

单片机课程设计题目

《单片机原理与应用》课程设计题目 1.基于单片机的电子秒表 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,两个按键,三位数码管显示,打开电源开关后显示8,每秒循环左移一位,即□□8—>□8□—>8□□—>□□8—>…,按A键开始计时,实时显示所经历的时间,按B键停止计时并显示从开始到当前时刻的时间,要求精确到0.1秒,量程为0~99.9秒。 要求按键输入采用中断方式,按键A接INT0,按键B接INT1。 2.智能电动百叶窗 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,用一台直流电机控制百叶窗叶片的旋转(正转/反转),用一个光敏电阻传感器测量室内光强度,并用两位数码管显示测量结果,设置三个按键:手动/自动切换、手动正转和手动反转,用一个发光二极管显示手动/自动状态,自动状态时二极管亮。 设置两个极限位置保护行程开关,用于保护百叶窗叶片:当正转到极限位置压下行程开关时,电机停止正转,但还可以反转;当反转到极限位置压下行程开关时,电机停止反转,但还可以正转。 按键输入采用中断方式,按键中断请求信号接INT0. 单片机根据设定光强S1和S2(S2 > S1)和实测光强P控制电机M的动作:当P<=S1时,控制M正转以增加进光量; 当P>S2时,控制M反转以减少进光量; 当S1S+1时,控制R断开电加热回路; 当S-1

单片机课程设计报告模板资料

哈尔滨远东理工学院 课题名称 专业班级 学号 学生姓名 指导教师 2015年10月14日

1、例举设计过程中遇到的问题及其解决方法(至少两例)。答:(1)问题说明: 解决方法: (2)问题说明: 解决方法: 2、教师现场提的问题记录在此(不少于2个问题)。

目录 1 设计任务 (1) 2设计方案 (2) 2.1任务分析 (2) 2.2方案设计 (2) 3 系统硬件设计 (3) 3.1时钟电路设计 (3) 3.2复位电路设计 (3) 3.3 灯控制电路设计 (3) 3.4 倒计时显示电路设计 (4) 3.5 按键控制电路设计 (5) 4 系统软件设计 (6) 4.1 1S定时 (6) 4.2 定时程序流程 (6) 4.3交通灯的设计流程图 (6) 4.4定时器0 及中断响应 (7) 5仿真与性能分析 (8) 6心得体会 (9) 参考文献 (10) 附录1 系统原理图 .......................................................................错误!未定义书签。附录2 系统PCB图 .....................................................................错误!未定义书签。附录3 程序清单 .. (11) II

1 设计任务 支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。用红、绿、黄发光二极管作信号灯。如图1.1所示。设东西向为主干道,南北为支干道。 1. 基本要求 (1) 主干道处于常允许通行的状态,支干道有车来时才允许通行。主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。 (2) 主、支干道均有车时,两者交替允许通行,主干道每次放行30秒,支干道每次放行20秒,设立30秒、20秒计时、显示电路。 (3) 在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。黄灯亮时,原红灯按1Hz 的频率闪烁。 (4) 要求主支干道通行时间及黄灯亮的时间均可在0~99秒内任意设置。 2. 选做 (1) 可设置紧急按钮,在出现紧急情况时可由交警手动实现全路口车辆禁行而行人通行状态,即主干道和支干道均为红灯亮。 (2) 实现绿波带。所谓‘绿波带’,是指在一定路段,只要按照规定时速,就能一路绿灯畅行无阻。“绿波带”将根据道路车辆行驶的速度和路口间的距离,自动设置信号灯的点亮时间差,以保证车辆从遇到第一个绿灯开始,只要按照规定速度行驶,之后遇到的信号灯将全是绿灯。

单片机课程设计指导书

单片机课程设计指导书

单片机应用 课程设计指导书 中原工学院信息商务学院信息工程系 课程名称:单片机应用 适用对象:测控技术与仪器 学分/学时:3/3 选修课程:单片机应用与接口技术

一、课程设计目的 大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容。如何让学生在学好基础知识的同时,迅速掌握应用技术,实验与课程设计环节起着非常重要的作用。本课程设计的目的,是让测控、自动化专业学生通过课程设计,首先建立起单片机应用系统的概念,根据实际的系统设计要求,掌握初步的单片机系统设计方法,从硬件系统和软件系统设计两个方面得到实际的提高,为今后的毕业设计打下良好的基础。 二、课程设计基本要求 1、17周:运用51系列单片机,根据设计要求绘制系统原理图(要 求用protel 或altium designer软件绘制); 2、18周:设计系统软件流程图(要求用visio绘制)、根据系统流 程图编制程序,进行运行调试;然后软硬件联机调试仿真(运用仿真软件proteus)。 3、19周:检查仿真结果,最后编写课程设计报告。 4、课程设计应由学生本人独立完成,严禁抄袭(对自己的设计不 熟悉,读不懂设计中的关键功能部分,对设计的结构不清楚,对设计的功能不了解等),一经验收教师认定其抄袭行为,成绩即为不及格。 5、认真编写课程设计报告,课程设计报告的书写格式见附录1 三、课程设计题目要求

1请设计一个基于单片机的电子时钟,画出硬件电路图、编写程序,完成电子时钟的任务,并进行proteus仿真。该控制任务应该完成下列功能: 1)电子时钟显示用LED数码管显示,格式为: XX XX XX,由左向右分别为:时、分、秒,比如:23 20 40表示23时20分40秒,刚开始工作时应该显示为:年、月、日、学号; 2)实现对时、分、秒进行校准; 3)具有闹铃功能,闹钟时间到,启动蜂鸣器。 2 题目所提供要求为基本功能要求,学生可根据实际情况,在程 序设计和实现功能上做进一步的扩展,如:具有语音播报时间功能、秒表功能等。 四、时间安排计划 时间安排:2013~2014学年下学期17周~19周,具体细分: 1、17周周一布置课设任务,查阅收集资料 周三检查系统框图,绘制打印版 周四检查系统原理图,绘制打印版 2、18周周一检查系统软件流程图,绘制打印版 周三、四检查系统源程序,电子档,自备电脑 3、19周周一、三检查仿真结果,电子档,自备电脑 周四上交课程设计报告 上交地点:传感器实验室 注意:1、本次课设要求1人/组,独立完成课设任务。 2、整个课设分大组分时进行检查,请大家按时到场。(具

单片机课程设计实习报告

【最新】单片机课程设计实习报告 单片机课程设计实习报告 实训任务: 做单一灯的左移右移,八个发光二极管l1-l8分别接在单片机的p1.0 p1.2 p1.3┅ p1.7 p1.6 ┅ p1.0亮,重复循环3次.然后左移2次,右移2次,闪烁2次(延时的时间0.2秒). 一. 实训目的和要求: (1)熟练掌握keil c51集成开发环境的使用方法 (2)熟悉keil c51集成开发环境调试功能的使用和dp?https://www.360docs.net/doc/0b3513660.html,单片机仿真器.编程器.实验仪三合一综合开发平台的使用. (3)利用单片机的p1口作io口,学会利用p1口作为输入和输出口. (4)了解掌握单片机芯片的烧写方法与步骤. (5)学会用单片机汇编语言编写程序,熟悉掌握常用指令的功能运用. (6)掌握利用protel 99 se绘制电路原理图及pcb图. (7)了解pcb板的制作腐蚀过程. 二.实训器材: pc机(一台)http://shi_i.e_am8/ pcb板(一块) 5_ 电阻(八只) 10k电阻(一只) led发光二极管(八只) 25v 10 f电容(一只) 单片机ic座(一块) at89c51单片机芯片(一块) 热转印机(一台) dp?https://www.360docs.net/doc/0b3513660.html,单片机仿真器.编程器.实验仪三合一综合开发平台(一台) 三.实训步骤: (1)根据原理图(下图所示),用导线把单片机综合开发平台a2区的j61接口与d1区的j52接口相连.

(2)将流水灯程序编写完整并使用tkstudy ice调试运行. (3)使用导线把a2区j61接口的p1口7个口分别与j52接口的八个led 相连. (4)打开电源,将编写好的程序运用tkstudy ice进行全速运行,看能否实现任务要求. (5)观察运行结果,若能实现功能,则将正确编译过的he_文件通过easypro51编程器写入mcu片内存储器,然后将烧写的芯片a2区的圆孔ic座进行最终实验结果的演示. (6)制板.首先利用protel 99 se画好原理图,根据原理图绘制pcb图,然后将绘制好的pcb布线图打印出来,经热转印机转印,将整个布线图印至pcb板上,最后将印有布线图的pcb板投入装有三氯化铁溶液的容器内进行腐蚀,待pcb板上布线图外的铜全部后,将其取出,清洗干净. (7)焊接.将所给元器件根据原理图一一焊至pcb板相应位置. _3下一页

单片机课程设计题目汇总(全)

单片机原理与接口技术课程设计题目汇总 说明:为便于同学提前探讨开发思路,特将本课程设计的可选题目发给大家。 每个同学可以在以下题目中选一题要求:课程设计考核内容包括:源程序;设计报告文档基于单片机的电子时钟设计设计内容:1、用LCD液晶作为显示设备(30分) 2、可以分别设定小时,分钟和秒,复位后时间为:00: 00:00 (30 分) 3、能实现日期的设置,年、月、日(30分) 4、其他创新内容(10分)如:闹钟功能;显示星期;整点音乐报时等。 图示: 2010-04-09 MON 11:06:42 基于单片机的交通灯显示系统(一) 设计内容:1、东西方向、南北方向均有红、黄、绿三种信号灯;(30 分) 2、带紧急制动按钮,按钮按下,所有方向亮红灯;再次按下,恢复正常显 示(20分) 3、夜间模式按钮按下,所有方向显示黄灯闪烁(20分) 4、实时提醒绿灯亮的剩余时间(30分)图示: 基于单片机的交通灯显示系统(二) 设计内容:1、东西干道和南北干道的通行分左行、右行、直行,其中左行、右行固定15秒;直行固定30秒(40分) 2、信号灯分绿灯(3种)、红灯、黄灯,每次绿灯换红灯时,黄灯亮3秒 钟。(30分) 3、东西干道和南北干道交替控制,每次干道绿灯交替时,有 3 秒钟所有干道的交通灯都是黄灯闪烁3秒钟,提示已经进入路口的车辆迅速通过。(30分)

4、其他创新内容。(10分) 图示: 四、基于单片机的波形发生器设计 设计内容:1、设计一款能产生3种以上波形的波形发生器(30分) 2、设计波形选择按钮(采用3个独立按键)(10分) 3、点阵显示波形图案(20分) 4、能同时输出两种波形(30分) 5、显示频率(10分) 图示: 五、基于单片机的LED点阵广告牌设计 设计内容:1、能显示不同字符、图形的LED点阵广告牌(30分) 2、用独立按键控制不同字符的切换效果(如闪烁、静止、平移)(30 分) 3、可通过串口从电脑下载更新需要显示的字符(30分) 4、其他创新功能(10分) 图示:略 六、基于单片机的篮球计分器设计 设计内容:1、设计LCD显示篮球比分牌(30分) 2、通过加分按钮可以给A队或B队加分(20分) 3、设计对调功能,A队和B队分数互换,意味着中场交换场地。(20 分) 4、显示比赛倒计时功能(20分) 5、创新内容:如显示第几小节(10分) 显示: A 083: B 079 4th Period 10:25

智能小车单片机课程设计报告

题目: 智能小车设计 打开命令行终端的快捷方式: ctr+al+t:默认的路径在家目录 ctr+shift+n:默认的路径为上一次终端所处在的路径. linux@ubuntu:~$ linux:当前登录用户名. ubuntu:主机名 :和$之间:当前用户所处在的工作路径. windows下的工作路径如C:\Intel\Logs linux下的工作路径是:/.../..../ ~:代表的是/home/linux这个路径.(家目录). ls(list):列出当前路径下的文件名和目录名. ls -a(all):列出当前路径下的所有文件和目录名,包括了隐藏文件. .:当前路径 ..:上一级路径 ls -l:以横排的方式列出文件的详细信息 total 269464(当前这个路径总计所占空间的大小,单位是K) drwxr-xr-x 3 linux linux 4096 Dec 4 19:16 Desktop 第一个位置:代表的是文件的类型. linux系统下的文件类型有以下几种. b:块设备文件 c:字符设备文件 d:directory,目录 -:普通文件. l:连接文件. s:套接字文件. p:管道文件. rwxr-xr-x:权限 r:读权限-:没有相对应的权限 w:写权限

x:可执行权限 修改权限: chmod u-或者+r/w/x 文件名 chmod g-或者+r/w/x 文件名 chmod o-或者+r/w/x 文件名 第一组:用户权限 第二组:用户组的权限 第三组:其他用户的权限. chmod 三个数(权限) 文件名 首先根据你想要的权限生成二进制数,再根据二进制数转换成十进制的三位数 rwxr-x-wx 111101011 7 5 3 chmod 753 文件名 rwx--xr-x 第二个位置上的数字:对应目录下的子文件个数,如果是非目录,则数字是1 第三个位置:用户名(文件创造者). 第四个位置:用户组的名字(前边的用户所处在的用户组的名字). 第五个位置:对应文件所占的空间大小(单位为b) 第六~八个位置:Dec 4 19:16时间戳(最后一次修改文件的时间) 最后一个位置:文件名 操作文件: 1.创建一个普通文件:touch 文件名 2.删除一个文件:rm(remove) 文件名 3.新建一个目录:mkdir(make directory) 目录名 递归创建目录:mkdir -p 目录1/目录2/目录3 4.删除一个目录:rmdir 目录名.//仅删除一个空目录 rm -rf 目录名//删除一个非空目录 5.切换目录(change directory):cd 路径 linux下的路径分两种 相对路径:以.(当前路径)为起点. 绝对路径:以/(根目录)为起点, 用相对路径的方式进入Music:cd ./Music 用绝对路径的方式进入Desktop:cd /home/linux/Desktop 返回上一级:cd ..

单片机课程设计

浙江工业大学之江学院 题目:数字时钟逻辑电路课程设计 班级:测控901 学号:200920540104 姓名:侯晓明 指导老师:刘勤贤 时间:2011年12月26日-2012年1月3日

设计课题:电子时钟课程设计 设计任务与要求根据应用电路的功能,确定封面上的题目,然后完成以下任务: 1、分析电路由几个部分组成,并用方框图对它进行整体描述; 2、对电路的每个部分分别进行单独说明,画出对应的单元电路,分析电路原理、 元件参数、所起的作用、以及与其他部分电路的关系等等; 3、用简单的电路图绘图软件绘出整体电路图,在电路图中加上自己的班级名称、 学号、姓名等信息; 4、对整体电路原理进行完整功能描述; 设计步骤1、查阅相关资料,开始撰写设计; 2、先给出总体方案并对工作原理进行大致的说明; 3、依次对各部分分别给出单元电路,并进行相应的原理、参数分析计算、功能以及与 其他部分电路的关系等等说明; 4.总体电路的绘制及总体电路原理相关说明; 5、列出设计中所涉及的所有参考文献资料。 设计说明书字数不得少于3000字。 参考文献【1】单片微型计算机原理与应用蔡菲娜浙江大学出版社2009年 【2】数字电子技术2黄瑞浙江大学出版社2008年 【3】单片机课程设计指导楼然苗,李光飞北京航空航天大学出版社2007年

设计背景 数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。尽管目前市场上已有现成的数字钟集成电路芯片出售,价格便宜、使用也方便,但鉴于单片机的定时器功能也可以完成数字钟电路的设计,因此进行数字钟的设计是必要的。在这里我们将已学过的比较零散的数字电路的知识有机的、系统的联系起来用于实际,来培养我们的综合分析和设计电路,写程序、调试电路的能力。 单片机具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。 课程设计目的 (1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力; (2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力; (3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。 89C51及各管脚介绍:带4K字节闪烁可编程可擦除只读存储器低电压、高性能CMOS8位微处理器

单片机课程设计题目汇总(全)

单片机课程设计题目汇总(一) 说明:为便于同学提前探讨开发思路,自学相关内容,特将本课程设计的可选题目发给大家。本次题目为其一部分,稍后会有另一部分。鼓励大家自己设计题目。 要求:每个小组2-3人,每个题目最多限两个小组选;课程设计考核内容包括:C51源程序;现场显示结果;设计报告文档(文档的格式稍后公布,请注意查收)。 一、基于单片机的交通灯显示系统(一) 设计内容:1、东西方向、南北方向均有红、黄、绿三种信号灯;(30分) 2、带紧急制动按钮,按钮按下,所有方向亮红灯;再次按下, 恢复正常显示(20分) 3、夜间模式按钮按下,所有方向显示黄灯闪烁(20分) 4、实时提醒绿灯亮的剩余时间(30分) 图示: 二、基于单片机的交通灯显示系统(二) 设计内容:1、东西干道和南北干道的通行分左行、右行、直行,其中左行、右行固定15秒;直行固定30秒(40分) 2、信号灯分绿灯(3种)、红灯、黄灯,每次绿灯换红灯时,黄 灯亮3秒钟。(30分) 3、东西干道和南北干道交替控制,每次干道绿灯交替时,有3 秒钟所有干道的交通灯都是黄灯闪烁3秒钟,提示已经进入路口的车辆迅速通过。(30分) 4、其他创新内容。(10分) 图示: 三、基于单片机的波形发生器设计 设计内容:1、设计一款能产生3种以上波形的波形发生器(30分) 2、设计波形选择按钮(采用3个独立按键)(10分) 3、点阵显示波形图案(20分) 4、能同时输出两种波形(30分)

5、显示频率(10分) 图示: 四、基于单片机的LED点阵广告牌设计 设计内容:1、能显示不同字符、图形的LED点阵广告牌(30分) 2、用独立按键控制不同字符的切换效果(如闪烁、静止、平移) (30分) 3、可通过串口从电脑下载更新需要显示的字符(30分) 4、其他创新功能(10分) 图示:略 五、基于单片机的篮球计分器设计 设计内容:1、设计LCD显示篮球比分牌(30分) 2、通过加分按钮可以给A队或B队加分(20分) 3、设计对调功能,A队和B队分数互换,意味着中场交换场地。 (20分) 4、显示比赛倒计时功能(20分) 5、创新内容:如显示第几小节(10分) 显示: 六、基于单片机的电子贺卡设计 设计内容:1、设计基于单片机的伴奏乐曲(30分) 2、设计基于单片机的彩屏图片(30分) 3、通过矩阵键盘按键显示不同彩屏图片,并伴有不同乐曲(30 分) 4、创新部分(自主设计)(10分) 显示:(略) 七、电风扇模拟控制系统设计 设计内容:1、3个独立按键分别控制“自然风”、“睡眠风”、“常风”,(三者的区别是直流电机的停歇时间不同),并在数显管上显示出区别(30分) 2、每种类型风可以根据按下独立按键次数分为4个档的风力调 节。(30分) 3、设计风扇的过热保护,用继电器实现。即当风扇运行一段时 间后,暂停10秒。(30分) 4、其他创新内容(如报警提示)(10分)

单片机课程设计完整版样本

课程设计( 论文) 课程名称单片机 题目名称简易密码锁的设计学院高等技术学院 专业班级高1 1 0 9 学号3869 学生姓名刘欢 指导教师胡立强 11月28 日 目录

一,任务目的 (3) 二,任务要求 (3) 三,电路与元器件 (4) 四,程序设计 (5) 五,程序运行测试 (6) 六,任务小结 (7) 七,心得体会 (8) 八,参考文献 (9) 1.任务目的

经过对具有四个按键输入和一个数码管显示的简易密码锁的设计与制作, 让读者理解C语言中数组的基本概念和应用技术, 并初步了解单片机与键盘和LED数码管的接口电路设计及编程控制方法。 2.任务要求 在一些智能门控管理系统, 需要输入正确的密码才能开锁。基于单片机控制的密码锁硬件电路包括三部分: 按键、数码显示和电控开锁驱动电路, 三者的对应关系如图表3.16所示。 表3.16 简易密码锁状态 简易密码锁的基本功能如下: 4个按键, 分别代表数字0,1,2,3: 密码在程序中事先设定, 为0-3之间的一个数字; 上电复位后, 密码锁初始状态为关闭, 密码管显示符号”—”; 当按下数字键后, 若与事先设定的密码相同, 则数码管显示字符”P”, 打开锁, 3秒后恢复锁定状态, 等待下一次密码的输入, 否则显示字符”E”持续3秒, 保持锁定状态并等待下次输入。 3.电路与元器件 根据任务要求, 用一位LED数码管作为显示器件, 显示密码锁的状态信息, 数码管采用静态连接方式; 4个按键连接到P0口的低四位

P0.0-P0.3引脚, 设P0.0连接数字”0”按键、P0.1连接数字”1”按键, 依次类推; 锁的开、关电路用P3.0控制的一个发光二极管代替, 发光二极管点亮表示锁打开, 熄灭表示锁定。根据以上分析, 采用如图3.21所示的连接电路。 图3.21 简易密码锁电路 简易密码锁电路所需元器件清单如表3.17所示。 元器件名称参数数量元器件名 称 参数数量 插座DIP40 1 电阻103 1 单片机AT89SC51 1 电解电容22UF 1

单片机课程设计报告

课程设计报告 课程名称单片机原理及应用 设计题目电子琴的设计 专业班级自动化1142 姓名周太永 学号1104421242 指导教师蔡长青张卓 起止时间2014.6.23-2014.7.11 成绩评定 考核内容设计 表现 设计 报告 答辩 综合 评定 成绩 电气与信息学院

2013/2014学年第二学期 《单片机控制系统设计与调试》课程设计任务书 指导教师:蔡长青班级:自动化1141、2班 地点:机房、单片机实验室(实训中心415) 课程设计题目:基于单片机原理的电子琴设计 一、课程设计目的 1.灵活运用单片机的基础知识,依据课程设计内容,能够完成从硬件电路图设计, 到PCB制版,再到软件编程及系统调试实现系统功能,完成课程设计,加深对单片机基础知识的理解,并灵活运用,将各门知识综合应用。 2.能够上网查询器件资料,培养对新知识新技术的独立的学习能力和应用能力。 3.独立完成一个小的系统设计,从硬件设计到软件设计,增强分析问题、解决问 题的能力,为日后的毕业设计及科研工作奠定良好的基础。 二、课程设计内容(包括技术指标) 1.焊接。认真、仔细,避免缺焊、漏焊。 2.频率计算。会计算脉冲值与频率的关系。 3.工作过程。开机时,第一步是对定时器T0进行初始化,设定它的工作状态(对 于本系统将T0设定为工作方式0);然后判断是否有键按下,如果没有按键按下,继续判断,如果有按键按下,则判断是哪个键按下;再根据按键的功能将计数初值装入定时器T0中中并启动T0,当T0定时完毕后,重新装入计数初值继续定时并将P3.3取反,再次定时完毕后再一次的装入计数初值 继续定时并将P3.3取反,一直循环此操作直到按键释放为止,按键释放后 停止T0工作并再次判断是否又有按键按下,并继续执行以前的过程。 三、时间安排 1.布置任务、查资料1天 2.硬件电路图设计及PCB制版3天 3.硬件电路图及PCB制版验收、电路板焊接1天 4.软件编程设计3天 5.系统调试3天 6.调试验收1天 7.完成设计报告3天 四、基本要求 1.画出硬件电路图,完成PCB制版; 2.画出软件流程图,编写程序(C51语言/汇编语言); 3.完成系统调试; 4.提交设计报告。

STC12C5A60S2单片机课程设计报告

一、课程设计基本情况介绍 1.1课程设计的基本目的与任务 本课程设计旨在驾驭本专业学生理论指导实践能力以及电子产品工程设计与开发能力。本实践课所要达到的主要目的是: 1、通过本次课程设计,是对学生综合能力的检,提高学生综合运用专业知识,强化单片机 应用系统设计与防震能力。 2、本次课程设计是在生产实习所完成的“单片机核心板+电子钟模块+MP3模块+RFID模块+无线传输模块+GPS模块+脉搏传感模块”的基础上设计该硬件系统的工作程序。 1.2课程设计的基本内容 1、在生产实习设计单片机硬件系统的基础上,设计相应的应用软件系统。 2、在LCD1602上显示学号程序设计。 3、基于DS1302的实时时钟软件设计。 4、基于DS18B20的温度测量软件设计。 5、基于TL1838A的红外遥控解码软件设计。 6、设计应用软件系统框图和流程图,完成所设计软件的调试。 1.3课程设计的教学要求 1、通过资料查阅及学习了解单片机应用系统的软件设计方法及单片机编程、软硬件联机调 试技巧。 2、独立设计并编写下列应用程序: (1)LCD1602学号显示程序; (2)DS1302实时时钟程序; (3)DS18B20温度测量程序; (4)TL1838A红外遥控解码程序; 3、独立完成所设计程序与硬件系统的联机仿真。 二、整机系统框图(硬件、软件) 该设计方案是以STC12C5A60S2单片机为核心,采用LCD液晶屏幕显示模块、实时时钟模块、温度测量模块、红外遥控解码等模块所构建的系统,能在LCD1602液晶屏上显示当前的日期(年、月、日)、时间(时、分、秒)数据、当前环境温度值和红外遥控解码值。用户可通过遥控器或单片机核心板上的按键来进行日期和时间的设置。本系统设计大部分功能由软件来实现,电路简单明了,系统稳定性也得到大大提高。 1、总体硬件设计框架图: 2、总体软件设计框架图 /////// 三、整机硬件电路原理图(见99SE图) 1、核心板电路原理图 2、蜂鸣器驱动电路 3、按键电路 4、单片机复位电路 5、LCD1602液晶显示电路 6、电子钟模块接口电路 四、软件系统设计思想 //////////// 五、系统软件资源分配表(调试程序、工作程序) ////////////// 六、显示学号的调试程序流程图、程序源代码

单片机课程设计心得体会范文

单片机课程设计心得体会范文 篇一 课程计划是培育先生综合使用所学常识,发明,提出,剖析息争决实践成绩,锤炼理论后劲的紧张关键,是对于先生实践任务后劲的详细锻炼以及调查进程.跟着迷信技能开展的日新日异,单片机曾经成为现今较量争论机使用中绝后活泼的范畴,正在糊口中可以说患上是无处没有正在。因而作为二十一世纪的年夜学来讲把握单片机的开辟技能是非常紧张的。 回忆起这次单片机课程计划,至今我仍慨叹颇多,确实,从选题到定稿,从实际到理论,正在整整两礼拜的日子里,可以说患上是苦多于甜,可是可以学到良多良多的的工具,同时不只仅可以稳固了从前所学过的常识,并且学到了良多正在书籍上所不学到过的常识。透过此次课程计划使我理解了实际与实践相分离是很紧张的,只要实际常识是远远不敷的,只要把所学的实际常识与理论相分离起来,从实际中患上出论断,才干真正为社会效劳,从而进步本人的实践入手后劲以及自力考虑的后劲。正在计划的进程中碰到成绩,可以说患上是坚苦重重,这究竟结果第一次做的,不免会碰到过林林总总的成绩,同时正在计划的进程中发明了本人的缺乏的地方,对于从前所学过的常识了解患上不敷深入,把握患上不敷结实,比方说三极管PNP管脚没有懂怎么样安排,没有懂分患上二极管的正负极,对于单片机汇编言语把握患上欠好透过此次课程计划以后,必需把从前所学过的常识

从头温故。 此次课程计划最初顺遂实现了,正在计划中碰到了良多编程成绩,最初正在梁强教师的勤劳指点下,最初游逆而解。同时,正在梁强教师的身上我学失掉良多适用的常识,正在次我透露表现感激。同时,对于给过我帮助的一切同窗以及列位指点教师再次透露表现忠心的感激。 篇二 做了两周的单片机课程计划,我有了良多的领会以及感触。 咱们的课程计划有两个次要材料:一个是出租车计费器零碎;另外一个便是温度报警零碎。练习可以正在尝试室里做,也可以正在睡房里本人做,我年夜局部工夫仍是正在睡房里做的。 出租车计费器的计划是第一周的材料,因为有了教师的计划图以及顺序,只要要改一下本人所请求的变量就好。单片机的编程用的次要是汇编言语,说假话,我对于汇编言语谈没有上把握,充其量只是理解。黉舍布置的课程真的太少了,对于言语局部的进修只学了多少节课的材料,整本单片机书的材料也是学了三分之一多一点。 第二周的材料便是温度报警零碎的计划。这个材料不现成的顺序以及计划图,需求咱们真正亲手往编,最愁闷的莫过于画计划图。依照尝试请求上的丹青了进去,加载顺序当前却不克不及一般运转,改了很多多少次都不乐成。同窗们电脑上软件的版本差别也影响了交换。有些元件的型号差别,但正在选历时图形确很类似,导致选错了元件,影响了却果。

单片机课程设计报告模板

单片机系统课程设计报告 专业:自动化 学生姓名: 学号: 指导教师: 完成日期:2011 年 3 月17 日

目录 1 设计任务和性能指标 (3) 1.1设计任务............................................................................ 错误!未定义书签。 2 设计方案 (4) 2.1任务分析 (4) 2.2方案设计 (4) 3 系统硬件设计 (5) 3.1时钟的电路设计 (5) 3.2复位电路设计 (5) 3.3灯控电路设计 (5) 3.4倒计时电路设计 (6) 3.5按键控制电路设计 (7) 4 系统软件设计 (8) 4.11秒定时 (8) 4.2定时程序流程 (8) 4.3交通灯的设计流程图 (9) 4.4定时器0与中断响应 (10) 5 仿真及性能分析 (10) 5.1仿真结果图 (11) 5.2仿真结果与分析 (12) 6 心得体会 (13) 参考文献 (14) 附录1 系统原理图 (15) 附录2 系统PCB图 .................................................................. 错误!未定义书签。附录3 程序清单 (17)

1.1设计任务 利用单片机完成交通信号灯控制器的设计,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。用红、绿、黄发光二极管作信号灯。如图5.1所示。设东西向为主干道,南北为支干道。 图5.1 交通灯示意图 1. 基本要求 (1) 主干道处于常允许通行的状态,支干道有车来时才允许通行。主干 道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。 (2) 主、支干道均有车时,两者交替允许通行,主干道每次放行30秒, 支干道每次放行20秒,设立30秒、20秒计时、显示电路。 (3) 在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。 黄灯亮时,原红灯按1Hz 的频率闪烁。 (4) 要求主支干道通行时间及黄灯亮的时间均可在0~99秒内任意设置。 2. 选做 (1) 可设置紧急按钮,在出现紧急情况时可由交警手动实现全路口车辆 禁行而行人通行状态,即主干道和支干道均为红灯亮。 (2) 实现绿波带。所谓‘绿波带’,是指在一定路段,只要按照规定时速, 就能一路绿灯畅行无阻。“绿波带”将根据道路车辆行驶的速度和路口间的距离,自动设置信号灯的点亮时间差,以保证车辆从遇到第一个绿灯开始,只要按照规定速度行驶,之后遇到的信号灯将全是绿灯。 南 北 东 西

单片机课程设计模板2017

课程设计(论文)课程名称单片机应用课程设计 题目 院(系) 专业班级 姓名 学号 指导教师 年月日

西安建筑科技大学课程设计(论文)任务书 专业班级:电子1302 学生姓名:王玖玲指导教师(签名): 一、课程设计(论文)题目 正弦波信号发生器设计 二、本次课程设计(论文)应达到的目的 本次课程设计是自动化专业学生在学习了《单片机原理及应用》课程及《模拟电子线路》、《数字电子线路》等专业基础课程之后进行的一次综合训练,其主要目的是加深学生对单片机软硬件技术和相关理论知识的理解,进一步熟悉51单片机系统设计的基本理论、方法和技能;掌握工程应用的基本内容和要求,力争做到理论与实际的统一;同时培养学生分析问题、解决问题的能力和独立完成系统设计的能力,并按要求编写相关的技术文档和设计报告等。 三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等) 1.设计内容 (1)选择51单片机,晶振采用12MHz。 (2)设计一个能产生0至50HZ正弦波信号。通过0832D/A芯片完成数模转换。 (3)频率值由键盘输入。 (4)将频率值由LED数码管上显示(两位)。 2.设计要求 (1)按照任务书的要个求完成系统分析及方案设计。 (2)完成硬件原理图的设计,并选择相关元器件。 (3)完成控制软件流程图的设计,编写相应的单片机控制程序。 (4)撰写设计报告。 3. 成果要求 (1)在proteus中实现仿真。 (2)提交课程设计报告。 四、应收集的资料及主要参考文献: 1.李建忠.单片机原理及应用.西安电子科技大学出版社,2008 2.杨居义.单片机课程设计指导.清华大学出版社,2009 3.李海滨等.单片机技术课程设计与项目实例.中国电力出版社,2009 以及与51系列单片机相关的文献及教材。 五、审核批准意见 教研室主任(签字)

单片机课程设计报告书----电子秤

一、设计任务及要求: 设计任务: 完成一个简单的使用数字电子秤的硬件与软件部分的设计。 设计要求: 1.利用单片机实现对所设计的电子秤的各项功能的控制。 2.电子秤能够LCD液晶显示出商品的名称、价格,重量、总价等信息。 3.电子秤具有储存几种简单商品价格的功能。 4.电子秤的测量范围要求达到5KG,测量精度要求达到0.001。 5.电子秤能够自动完成商品的价格计算。 指导教师签名: 2010 年6月16 日二、指导教师评语: 指导教师签名: 2010 年7月3日三、成绩 验收盖章 2010 年7 月日

基于单片机的实用电子秤的设计 1 设计目的 单片机以其功能强,体积小,功耗低,易开发等很多优势被广泛应用。本 次数字电子秤的设计就是需要通过选择合适的单片机来进行主控,再结合A/D 转换、键盘、液晶显示、复位电路和蜂鸣器报警驱动电路的知识,同时在软件 的设计过程中用到键盘扫描、液晶显示驱动、模数转换程序及汉字库的的设计, 做到对我们所学数电、模电、单片机等知识的综合应用,最终实现所设计数字 电子秤的各项功能,达到“巩固知识,培养技能,学而用之”的实践目的。通过这次课程设计,不但要提高我们在工作中的学习能力、探究能力、应用能力和动 手能力,还要历练我们不畏艰难、不懂便学、有漏必补的认真严谨的工作态度,强化我们的社会适应力和社会竞争力,为走向社会提前试水,完善自我。 2 设计的主要内容及要求 本设计主要完成一个简单实用数字电子秤的硬件电路部分和软件部分的设计。硬件部分包括数据采集、最小系统板、人机交互界面三大部分。其中,数 据采集部分由压力传感器和A/D 转换部分组成;人机界面部分为键盘输入、 液晶显示。软件部分应用单片机 C 语言实现了本设计的全部控制功能。本设 计的数字电子秤要求能够显示商品的名称、价格、总量、总价等;能够自动完 成商品的价格计算;能够储存几种简单商品的价格;能够具有超重提醒功能, 一旦重量超出了自身重量的测量的范围,发出警报;同时对数字电子秤的测量 范围要达到5KG,测量精度要求达到0.001。 3 整体设计方案 整个数字电子秤电路由压力传感电路(ADC0832采样)、模数转换系统、单 片机主控制电路、LM4229显示电路、蜂鸣器报警电路和4*4键盘电路6 个部

单片机课程设计教案

《单片机技术及其应用》课程设计教案 一、课程设计的目的 课程设计是在学完《单片机原理及接口技术》课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现,从而加深对单片机软硬知识的理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下基础. 1.了解并掌握单片机的原理、结构、指令、接口及应用。 2.提高综合运用所学的理论知识独立分析和解决问题的能力。3.掌握汇编语言程序设计和调试。 4. 掌握C51语言的设计和调试。 二、课程设计的要求 1.根据设计要求,画出硬件接线图及程序的总体流程图,然后进行各控制模块的硬件设计及软件设计。 2.掌握如何应用单片机仿真器来开发应用系统及仿真调试的过程。 三、课程设计的安排 1.时间安排,课程设计时间分为三个阶段: 第一阶段(8学时):主要是学生接受课程设计的准备阶段。包括:1)学生集中介绍课程设计的具体内容和具体要求,学生选题。(4学时) 2)安排学生收集相关资料,确定课程设计的总体方案。(4学时)第二阶段(20学时):主要是学生具体课程设计的过程。包括:学生做的工作 1)确定电路中使用的电子元器件(包括元件名称和及参数值)

2)软件设计与仿真(画出软件流程图,并编写具体的代码) 老师做的工作 1)辅导学生解决在制作过程中出现的问题 2)协助学生购买设计中需要的电子元器件 3)辅导学生焊接电路板和相关元器件 4)辅导学生完成程序的烧写和硬件测试 提供烧写器给学生,由学生能够进行软件仿真调试程序。学生在焊接完毕后,将程序下载到主芯片里并测试电路。由辅导老师辅导学生调试硬件和软件部分,共同解决测试过程中出现的问题,使学生在测试过程进一步学习。 第三阶段(8学时):主要是文档资料整理和答辩 1)安排学生交课程设计报告并总结 2)每组随机抽取3个人进行答辩,取平均成绩作为小组每个人的答辩成绩 课程设计结束后,将学生的设计的实物做课程设计汇报,在实验中心1楼做一个展览。 2. 分组安排 学生可以自由组合,3-6名学生成立一个小课题组,选一名组长,确定课题后由组长进行分工。 3.课题选择 以小组为单位,一组选择一个课题,可以自己选定题目,也可以在指导教师提供的课题中选择。 四、可供选择的课题 1、抢答器的设计

单片机课程设计报告书模板

. .. . .. .. 西南科技大学 2011级微机原理与接口技术 课程设计报告 课题名称微机原理与接口技术 姓名 学号 院、系、部制造科学与工程学院 专业 指导教师 2014年月日

目录 一、绪言 (1) 二、系统设计 (1) 2.1系统整体流程图 (1) 2.2日历时钟的控制方案论证 (1) 2.3单片机的选择方案论证 (2) 2.4键盘选择方案论证 (2) 2.5显示模块的选择方案论证 (2) 2.6模块的选择方案论证 (2) 三、硬件电路设计 (2) 3.1日历时钟的控制电路图 (2) 3.2行列式键盘的设计 (3) 3.3数码管显示电路的设计 (3) 3.4蜂鸣器驱动电路的设计 (4)

3.5主要元器件选择 (4) 四、程序流程图 (5) 五、c语言程序设计 (5) 六、日历时钟的控制器仿真 (19) 6.1K e i l调试 (19) 6.2P r o t e u s调试 (19) 七、结束语 (20) 八、参考文献 (21) 1、绪言 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。电子时钟是现代社会中的主要计时工具之一,广泛应用于手机,电脑,汽车等社会生活需要的各个方面,及对时间有要求的场合。本设计采用AT89C51单片机作为主要核心部件,附以上电复位电路,时钟电路及按键调时电路组成。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。

相关文档
最新文档