南昌大学单片机课程教学设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计任务书

课程名称:微机原理与接口技术

题目: B5901112154型单片机系统的设计

学院:机电工程学院系:机电工程系

专业:机械设计制造及其自动化

班级:机制124班

学号: 5901112154 学生姓名:

起讫日期: 6.16---6.23 指导教师:胡瑢华

系分管主任:

审核日期:

说明

BEIYON1 - 副本.DSN

打开上面的protus软件可以看到完整的电路图

1、课程设计任务书由指导教师填写,并经学院审定后下达给学生。

2、进度表是课程设计工作检查的主要依据。

3、学生根据指导教师下达的任务书,独立完成课程设计。

4、本任务书在课程设计完成后,与说明书、电路原理图和程序清单

等资料一并上交指导教师,作为课程设计的主要档案资料。

一、课程设计的要求和内容(包括原始数据、技术要求、工作要求)

1、工作要求

单片机系统在各行各业自动控制领域的应用越来越广泛。《微机原理与接口技术》课程设计实践教学环节要求同学们针对实际需求,灵活应用所学知识,独立进行系统综合设计,以达到巩固单片机基础知识、掌握单片机系统开发过程和提高动手实践能力的目的。

2、技术要求

每位学生应独立完整地设计一套单片机系统。该系统CPU采用AT89S51芯片,晶振为12MHz。硬件模块可包括:a)显示模块,采用串行口串接74HC164芯片控制5个7段数码管;b)键盘模块,采用2X2行列键盘;c)声音控制模块,采用蜂鸣器发声;d)A/D采集模块,采用ADC0809采集电位计的电压值;e)D/A输出模块,采用DAC0832输出某种波形。

要求实现以下功能:

(1)系统上电后,按照从下进入,在数码管上显示学号的后五位12154。

(2)查询键盘,当用户按1至4号键时在数码管上显示相应数值(例如按1键数码管显示5个1,以此类推),同时伴随蜂鸣器响(只要按键处于按下的状态蜂鸣器就响,按多久就响多久,按键弹起后终止)。需编制键盘去抖动程序(按键中断接INT0,行线接P1.1,P1.2,列线接P1.5,P1.6)。

(3)按键长按(超过1.5秒)则按键可进行功能选择(1号键显示学号,3号键A/D采集,0号键D/A转换功能运行)。

(4)采用译码方式,通过D/A输出频率为500Hz梯形波

(5)采用译码方式,启动通道0的A/D转换,进行采样,A/D转换结束后(通过INT1中断),将采集到的值转换为BCD码,并予以显示(使用三个七段数码管显示例如显示3.75)。

3、此次课程设计采用分级评分,具体操作如下:

课程设计开始阶段确定自己选择何种评分等级,只是在最后提交的时候在资料袋封面标明即可。

《2011级<微机原理与接口技术课程设计>任务定义表》说明:

※表中“键盘口线”定义详见附录。

※表中键盘中断接口详见附录。

※约定键键值排列见附录。

※按哪个约定键进入到哪种功能见附录。

※A/D采集使用A/D的哪个通道进行采集见附录。

※表中“显示方式”是指在编制个人学号的后六位显示程序时,实现缓慢从左右上下逐步在数码管显示,显示速度由同学自主定义。

※A/D中断入口见附录。

※表中“频率”是规定D/A输出时所采用的频率见附录。

※表中“波形”是规定D/A输出时所采用的波形见附录。

二、课程设计图纸内容及张数

1、单片机系统硬件电路原理图1张(2号图纸)

要求布局合理,阅读方便,元器件绘制符合规范。每条信号线均采用直接连接方式,不准采用总线方式画法,每个元器件必须标注型号、参数或引脚号。

三、课程设计实物内容及要求

1、源程序清单1份

要求在WAVE软件下汇编通过(提交的程序清单中包括程序机器码),并对程序进行功能和含义进行详细注解,对自己任务的要点予以标记,使用规范格式打印。

2、课程设计说明书1份

要求针对所设计的软硬件内容进行说明(必须手写),具体内容包括:芯片地址的确定、分频电路的实现、定时/计数初值的求取、软件模块的流程图、设计心得等。

四、建议课程设计进度表(含周六、日)

1、第1天:教师布置设计任务,学生理解设计任务,并准备资料;

2、第2-4天:系统硬件电路原理图设计;

3、第5-7天:编制系统程序,并进行汇编调试;

4、第8天:提交设计资料,并进行考核。

五、主要参考资料

ORG 0000H ;主程序入口

LJMP MAIN

ORG 0003H ;外部中断0入口

LJMP ZHAN2

ORG 0013H ;外部中断1入口

LJMP A2D

MAIN:SETB EA ;打开中断总允许

SETB EX0 ;打开外部中断0允许

MOV P1,#0F9H ;设置键盘初值

MOV R4,#30

XUEHAO: MOV DPTR,#XTAB ;学号显示子程程序

MOV R2,#3 ;从下到上滚动分三次

XUEHAO2:MOV R3,#5 ;每次发送5个显示码进数码管

XUEHAO1:MOV A,#0 ;A清零

MOVC A,@A+DPTR ;查表,给A赋值

MOV SBUF,A ;将A中数据发送到串行口

JNB TI,$ ;判断串行口发送是否完毕

CLR TI ;清除中断标志位,准备进行下一次发送 INC DPTR ;DPTR加1,指向下一个字型码地址

DJNZ R3,XUEHAO1 ;判断是否到了5个

LCALL DELAY1S ;延迟1s,进行显示

DJNZ R2,XUEHAO2 ;判断从下滚动三次是否完毕

LJMP XUEHAO ;新一轮显示

ZHAN2: MOV 70H,A ;响应中断,保存原数据

MOV 71H,DPL

MOV 72H,DPH

MOV 73H,R3

MOV 74H,R2

MOV 75H,R5

MOV 76H,R6

MOV 77H,R7

LCALL DELAY10MS ;延时10MS判断按键是否按下,没按下则返回 JB P3.2,ZHAN1

MOV DPTR,#STAB ;键值显示表地址送给DPTR

LCALL JIANZHI ;调用判断键值的程序

MOV 7AH,A ;将键值保存到7AH中

相关文档
最新文档