微型计算机控制技术课程设计计算机计算机原理_计算机-计算机原理.pdf
微型计算机控制技术 课程设计 姓名:任文华 班级:1220391 学号:122039128 日期:2014-12-22 自动化系课程实训 实训一 流水灯的设计 一、实训目的 1通过实验,熟悉并掌握试验系统原理与使用方法。2.掌握单片机的基本使用方法与编程方法。3.掌握 C 语言编程基本思想。4.学会基础的编程控制。二、实训内容 1.使用仿真软件设计流水灯控制电路。2.使用 Keil 编写程序实现流水灯的控制。3.运行并调试程序。三、实训原理 本流水灯是一个带有八个发光二极管的单片机最小应用系统,即为 AT89C51 单片机、电阻、发光二极管、电源等电路和必要的软件组成的单片机。如果要让接在 P1.0 口的 LED1(共阴极接法)亮起来,那么只要把 P1.0 的 电平变为高电平就可以了;相反,如果要接在 P1.0 口的 LED1 熄灭,就要把 P1.0 口的电平变为低电平;同理,接在 P1.1 P1.7 口的其他 7 个 LED 的点亮和熄灭 方法同 LED1。因此,要实现流水灯功能,我们只要将发光二极管 LED1LED8 依 次点亮、熄灭,8 只 LED 灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极 管灯亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。四、实训过程 1.电路设计 如下图:1 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 2.编写程序#include void delay()int i,j;for(i=0;i100;i+)for(j=0;j200;j+);void main()while(1)P1=0X01;delay();P1=0X02;delay();P1=0X04;delay();P1=0X08;delay();P1=0X10;delay();P1=0X20;delay();P1=0X40;delay();P1=0X80;2 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 delay();3.运行过程 如下图:实训二 8*8 点阵显示屏的设计 一、实训目的 1 通过实验,熟悉并掌握试验系统原理与使用方法。2.掌握点阵的基本原理与使用方法。3.掌握单片机的基本使用方法与编程方法。二、实训内容 1使用仿真软件实现点阵显示汉字(下面显示“口”字)。2.了解点阵的使用原理和引脚接法。3.使用 Keil 环境编程并下载编译好的程序到 51 单片机中。4.调试并运行程序。三、实训原理 LED 它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子 3 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以 LED 的抗震性能好。发光二极管的核心部分是由 p 型半导体和 n 型半导体组成的晶片,在 p 型半导体和 n 型半导体之间有一个过渡层,称为 p-n 结。在某些半导体材料的 PN 结 中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出 来,从而把电能直接转换为光能。PN 结加反向电压,少数载流子难以注入,故 不发光。这种利用注入式电致发光原理制作的二极管叫发光二极管,通称 LED。当它处于正向工作状态时(即两端加上正向电压),电流从 LED 阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。LED 点阵显示屏作为一种新兴的显示器件,是由多个独立的 LED 发光二极管封装而成。LED 点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。四、实训过程 1.电路设计 如下图 2.编写程序#include#define r unsigned char;4 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 void delay()int i;for(i=0;i100;i+);r table1=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;r table2=0 xff,0 x81,0 x81,0 x81,0 x81,0 x81,0 x81,0 xff;void main()while(1)int m;for(m=0;m8;m+)P0=table1m;P3=table2m;delay();3.运行过程 如下图:5 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 实训三 输入键盘的设计 一、实训目的 1通过实验,熟悉并掌握试验系统原理与使用方法。2.通过完成输入键盘设计,逐渐培养学生的编程能力、用计算机解决实际问题的能力。3.掌握单片机的基本使用方法与编程方法。二、实训内容 1使用仿真软件实现矩阵键盘检测扫描电路的设计。2.掌握消除矩阵键盘抖动的方法。3.使用 Keil 软件编写按键检测程序并下载编译好的程序到 51 单片机中。4.调试并运行程序。三、实训原理 本次设计主要是通过软硬件结合的 方法来加以实现所要求的功能的,利用 AT89C51 端口单独作为输入 /输出的功能同 时实现拓展键盘和八段码显示的功能。其 中,键盘键值的扫描是一个主要注意的问 题。在实际使用中,由于通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。抖动时间的长短由按键的机械特 性决定,一般为 5ms 10ms。这是一个很重要的时间参数,在很多场合都要用到。按键稳定闭合时间的长短则是由操作人员的按键动作决定的。四、实训过程 1.电路设计 如下图:6 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 2.编写程序#include#define r unsigned char;r code table=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e,;r num;void delay(unsigned int z)/延时程序 unsigned int x,y;for(x=z;x0;x-)for(y=100;y0;y-);void play(unsigned int m)/数码管显示 P0=tablem;void keyscan()/键盘扫描 P3=0 xfe;if(P3!=0 xfe)delay(5);if(P2!=0 xfe)switch(P3)7 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 case 0 xee:num=0;break;case 0 xde:num=1;break;case 0 xbe:num=2;break;case 0 x7e:num=3;break;play(num);P3=0 xfd;if(P3!=0 xfd)delay(5);if(P2!=0 xfd)switch(P3)case 0 xed:num=4;break;case 0 xdd:num=5;break;case 0 xbd:num=6;break;case 0 x7d:num=7;break;play(num);P3=0 xfb;if(P3!=0 xfb)delay(5);if(P2!=0 xfb)switch(P3)case 0 xeb:num=8;break;case 0 xdb:num=9;8 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 break;case 0 xbb:num=10;break;case 0 x7b:num=11;break;play(num);P3=0 xf7;if(P3!=0 xf7)delay(5);if(P2!=0 xf7)switch(P3)case 0 xe7:num=12;break;case 0 xd7:num=13;break;case 0 xb7:num=14;break;case 0 x77:num=15;break;play(num);void main()/主程序 while(1)keyscan();delay(50);3.运行过程 如下图:9 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌 自动化系课程实训 五、实训心得 经过这段时间的实训,我主要有以下几点感想:第一,要有坚持不懈的精神 实训刚开始可能觉得自己什么都不会,有种想要放弃的念头,但是,必须坚持完成任务,只要细心学习,什么都能学会。第二,要勤劳,任劳任怨 我们要主动学习,而不只是听老师布置任务,在有限的时间里完成尽可能多的任务。与此同时,我们应该自己主动找一些事情来做,从小事做起,慢慢学习。第三,要虚心学习,不耻下问 在实训过程中,我们肯定会碰到很多的问题,有很多是我们所不懂的,不懂的东西我们就要虚心向同事请教,当别人教我们知识的时候,我们也应该虚心地接受。同时,我们也不要怕犯错。每一个人都有犯错的时候,第一次做错了不要紧,重要的是知错能改。第四,要确立明确的目标,并端正自己的态度 平时,我们不管做什么事,都要明确自己的目标,就像我们到公司工作以后,要知道自己能否胜任这份工作,关键是看你自己对待工作的态度,态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握。因此,要树立正确的目标,只有这样我们才能把事情做好。10 验熟悉并掌握试验系统原理与使用方法掌握单片机的基本使用方法与编程方法掌握语言编程基本思想学会基础的编程控制二实训内容使用仿真软件设计流水灯控制电路使用编写程序实现流水灯的控制运行并调试程序三实训原理本流的单片机如果要让接在口的共阴极接法亮起来那么只要把的电平变为高电平就可以了相反如果要接在口的熄灭就要把口的电平变为低电平同理接在口的其他个的点亮和熄灭方法同因要实现流水灯功能我们只要将发光二极管依次点亮间很短我们在控制二极管灯亮灭的时候应该延时一段时间否则我们就看不到流水效果了四实训过程电路设计如下图自动化系课程实训编写程序自动化系课程实训运行过程如下图实训二点阵显示屏的设计一实训目的通过实验熟悉并掌