个性化教育

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

河北科技大学

信息科学与工程学院

实训报告

学生姓名:学号:

专业班级:

实训地点:

实训时间:

指导教师:

2 0 15年12 月

实训成绩评定表

目录

一、实训目的 (1)

二、实训任务及要求 (1)

三、实训过程与内容 (1)

四、实训总结与心得体会 (17)

五、参考文献 (17)

一、实训目的

1.熟悉并掌握单片机芯片的概念及应用方法。单片微型计算机简称单片机,是典型的嵌入式微控制器,它不是完成某个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机,和计算机相比,单片机缺少了外围设备等。

2.熟练并掌握Keil、Protues等。能熟练掌握用Keil软件建立工程、编写程序、并熟悉如何生成hex文件等;能熟练应用Protues画图软件,会找元器件、会连接元器件等。

3.通过此次个性化单片机的实训,对单片机系统有一个全面的了解、掌握常规芯片的使用方法、掌握简单单片机应用系统软硬件的设计方法,进一步锻炼在单片机应用方面的实际动手能力。将之前学过的单片机方面的理论知识运用到实践当中,同时检验书本上理论的正确性。将自己的理论知识,进一步巩固、深化已经学过的理论知识,提高综合运用所学过的知识,并且培养自己发现问题、解决问题的能力。

二、实训任务及要求

1.使用AT89C51单片机控制一个LED灯的亮灭、8个发光二极管实现按顺序循环移动点亮。要求使用Keil软件编写程序,用Protues设计电路图,最终将程序加载至AT89C51单片机实现功能。

2.开关状态的检测(根据单个开关状态,看数码管的显示)。要求使用单片机AT89C51检测4个开关SW1~SW4的状态,只需识别出单个开关闭合的状态。例如仅开关SW1合上时,数码管显示“1”;仅SW2合上时,数码管显示“2”;仅SW3合上时,数码管显示“3”;仅SW4合上时,数码管显示“4”;当开关没有合上,或合上的开关多于1个时,数码管均显示“0”。

3.4×4矩阵键盘动态扫描,当某键按下时,数码管显示相应键值。

4.使用AT89C51单片机实现外部中断请求延时,60秒倒计时时钟。

三、实训过程与内容

<一>熟知软件

1.设计思路

首先,熟练掌握与单片机相关的软件(Keil、Protues),设计一个简单的电路,实现一个简单的功能,为此设计了一个使用AT89C51单片机控制一个LED灯亮、灭的电路。

2.根据设计思路,选择合适的元器件

(1)AT89C51:单片机;

(2)RES:电阻;

(3)CAP、CAP-ELEC:电容与电解电容;

(4)CRYSTAL:晶振;

(5)LED-YELLOW:黄色发光二极管;

(6)BUTTON:按键。

3.设计电路图(如下图)

4.根据设计思路及设计电路图,使用Keil软件编写程序:

#include "reg51.h"

#define uchar unsigned char

#define unsigned int

sbit in=P3^0;

sbit out=P1^0;

void main(void)

{

while(1)

{

in=1;

if(in==0) out=0;

else out=1;

}

}

此代码控制发光二极管的亮灭,开关按下,发光二极管变亮,反之,则不亮。

5.设计结果

用Keil软件,编写程序并生成hex文件;用Protues软件画电路图,按设计思路连接电路器件,并将hex文件导入至单片机芯片中。点击运行程序,当按键开关按下时,发光二极管变亮;当按键开关断开时,则不亮。

<二>设计流水灯

1.设计思路

为了熟悉AT89C51单片机能实现的功能及原理,设计一个简单的电路,能实现流水灯亮灭的功能。为此设计了一个使用AT89C51单片机控制8个发光二极管实现按顺序循环移动点亮。

2.根据设计思路,选择合适的元器件

(1)AT89C51:单片机;

(2)RES、RX8:电阻与8排阻;

(3)CAP、CAP-ELEC:电容与电解电容;

(4)CRYSTAL:晶振;

(5)LED-YELLOW:黄色发光二极管;

(6)BUTTON:按键。

3设计电路图(如下图)

4.根据设计思路及设计电路图,使用Keil软件编写程序:

#include

#include

void delay()

{

unsigned char i,j;

for(i=0;i<255;i++)

for(j=0;j<255;j++);

}

void main()

{

P1=0xfe;

while(1)

{

P1=_crol_(P1,1);

delay();

}

5.设计结果

用Keil软件,编写程序并生成hex文件;用Protues软件画电路图,按设计思路连接电路器件,并将hex文件导入至单片机。点击运行程序,则8个发光二极管按顺序依次变亮。

<三>开关状态的检测

1.设计思路

设计一个电路,使用单片机AT89C51检测4个开关SW1~SW4的状态,只需识别出单个开关闭合的状态。例如仅开关SW1合上时,数码管显示“1”;仅SW2合上时,数码管显示“2”;仅SW3合上时,数码管显示“3”;仅SW4合上时,数码管显示“4”;当开关没有合上,或合上的开关多于1个时,数码管均显示“0”。

2.根据设计思路选择合适的元器件

(1)AT89C51:单片机;

(2)RES:电阻;

(3)CAP:电容;

(4)CRYSTAL:晶振;

(5)7SEG-COM-CAT-GRN:数码管;

(6)SWITCH:开关。

相关文档
最新文档