基于单片机控制发光二极管课程设计
- 格式:doc
- 大小:1.31 MB
- 文档页数:28
项目二单片机控制8位发光二极管简介:发光二极管是一种非常流行的电子元件,它可以将电能转化为光能,发出亮光。
在数码电子产品、时钟、闹钟、计数器等各种应用中,发光二极管都有广泛应用。
本项目使用单片机通过控制8位发光二极管,展示数字、字母和符号,实现了一个简单的显示。
原理:8位发光二极管有8个引脚分别对应8个数码,控制每个数码的发光需要控制对应的引脚输出高电平。
为了简化控制,本项目使用了74HC595串行移位寄存器,将单片机输出转换为8位并行输出,对应控制8个数码引脚。
移位寄存器通过SER输入端口读入单片机输出数据,一次读入8位数据后,通过数据锁存器将数据存储到寄存器中,依次将数据移位输出到输出端口Q0~Q7,控制对应的发光二极管发光。
由于数据在移位输出时是往高位输出,所以需要控制输出的数据是低位对应数码的数据,即从右至左依次控制每个数码的发光。
硬件设计:其中,8个数码阳极引脚通过限流电阻接入12V电源,共阳极电压为12V。
74HC595移位寄存器的VCC接入5V电源,OE、MR、SER、SRCLK、RCLK、Q0~Q7引脚接入单片机的对应引脚,其中:OE引脚为输出使能端,接地时输出有效。
MR引脚为同步复位端,接VCC时清零寄存器中存储的状态。
SER引脚为串行数据输入端,接单片机的输出引脚。
RCLK引脚为并行输出时钟端,连接与SRCLK相同的时钟引脚。
Q0~Q7引脚为并行输出端,连接到数码管对应的阳极引脚。
单片机的控制程序设计如下:duan数组为8位数码对应的7段LED表示值。
num数组为8位数码的控制数据。
延时函数delay()用于调节数字切换速度。
hc595_out()函数将num数组输出到74HC595移位寄存器。
hc595_sendbyte()函数每次将一个字节通过SER口向74HC595移位寄存器输出,并控制SRCLK时钟,将数据移位存储到寄存器中。
结论:通过单片机控制8位发光二极管的设计,可以实现数字、字母和符号的显示。
单片机控制发光二极管实验报告发光二极管广东石油化工学院单片机实验一实验报告实验报告实验一发光二极管实验学院: 电信学院专业:班级学生学号:实验时间一、实验目的1、掌握AT89C51 单片机IO 口的输入输出。
2、掌握用查表方式实现AT89C51 单片机IO 口的控制。
3、练习单片机简单延时子程序的编写。
4、熟练运用Proteus 设计、仿真AT89C51 系统。
二、实验内容1、编写延时子程序,延时时间为0.1S。
代码:void delay(){int i, j;for (i = 0; i 100; i++)for (j = 0; j 125; j++);}2、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,实现亮点以由上到下循环移动,间隔时间为0.1S。
代码:#includereg51.h#includeintrins.hvoid delay(){int i, j;for(i = 0; i 100; i++)for(j = 0; j 125; j++);}void main(){P1 = 0xFE;while(1){P1 (转载于: 写论文网:单片机控制发光二极管实验报告)= _crol_(P1,1);delay();}}运行结果截图:图一3、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,循环实现亮点由上到下移动1 次(间隔时间为0.2S),由下到上移动1 次(间隔时间为0.2S),闪烁1 次(即先全亮0.1S,再全灭0.1S)。
代码:#includereg51.h#define uchar unsigned char#define uint unsigned intvoid delay(){uint i, j;for (i = 0; i 100; i++){for (j = 0; j 128; j++){//delay 100ms, do nothing.}}}void shangXia(){uchar k;P1 = 0xFE;for (k = 0; k 8; k++){delay();P1 = _crol_(P1,1);}}void xiaShang(){uchar k;P1 = 0x7F;for (k = 0; k 8; k++){delay();P1 = _crol_(P1,-1);}}void main(){while(1){shangXia();xiaShang();}}截图与题一相同,增加由下至上。
实验二 P1口控制LED发光二极管一、实验目的1、进一步熟练Proteus及Keil软件的基本操作2、掌握8051单片机P1口的使用方法3、掌握LED发光二极管的原理及使用方法4、学习汇编程序的调试及仿真方法二、实验电路三、实验内容及步骤:要求:8个LED发光二极管循环左移显示(发光的移位),间隔时间为一秒。
1、使用Proteus画出电路原理图2、在Keil uVision中完成程序编辑、调试及编译,生成.HEX文件3、进行Protues与Keil uVision联动的相关设置:4、在Proteus中仿真运行。
四、思考1、将本实验的实验现象改为“不发光二极管循环移位”。
2、将本实验的实验现象改为“每隔0.5秒发光二极管循环移位”。
参考程序:ORG 0LJMP MAINORG 30H MAIN: MOV A,#0FEH LOOP: MOV P1,ALCALL DELAYRL ASJMP LOOP DELAY: MOV R7,#20H DELAY1:MOV R6,#200 DELAY2:MOV R5,#123DJNZ R5,$DJNZ R6,DELAY2DJNZ R7,DELAY1RETEND实验三数码管静态显示实验一、实验目的1、进一步熟悉51系列单片机2、了解8051单片机P0口的使用方法3、掌握共阴极数码管的原理及使用方法4、学习8051的编程、调试、编译、仿真。
二、实验电路图3 数码管静态显示电路原理图注:数码管要从元件库选择Optoelectronics类中的7SEG-COM-CAT-GRN。
三、要求及步骤:要求:在七段数码管上以递增方式循环显示数字0—9,间隔时间为一秒。
1、使用Proteus画出电路原理图2、在Keil uVision中完成程序编辑、调试及编译,生成.HEX文件3、进行Protues与Keil uVision联动的相关设置:4、在Proteus中仿真运行。
四、思考1、为什么要将P0口各引脚通过电阻R3-R9接到电源?2、如何在共阴数码管上循环显示十六进制数字0—F(不区分字母的大小写)?3、怎样修改程序使数字以递减方式循环显示?4、若用共阳极数码管应如何修改电路和程序,才能完成本实验的功能?参考程序:ORG 00HLJMP STARTORG 30HSTART: MOV DPTR,#TABLES1: MOV R4,#00HS2: MOV A,R4MOVC A,@A+DPTRMOV P0,ALCALL DELAYINC R4CJNE R4,#0AH,S2SJMP S1DELAY: MOV R5,#20 ;延时子程序D2: MOV R6,#200D1: MOV R7,#123DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABLE: DB 3FH,06H,5BH,4FH,66H ;段码表DB 6DH,7DH,07H,7FH,6FHEND实验四基本输入/输出实验一、实验目的1、进一步熟悉8051单片机并行I/O口的使用方法3、掌握并行I/O口输入/输出操作的方法4、学习8051的编程、调试、编译、仿真。
单片机led灯课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握其内部结构和功能。
2. 学生能掌握LED灯的电路连接和工作原理。
3. 学生能理解并运用编程语言,实现对单片机控制LED灯亮灭的操作。
技能目标:1. 学生能独立完成单片机与LED灯的硬件连接,并进行调试。
2. 学生能运用编程软件,编写控制LED灯的程序代码,实现不同的亮灭效果。
3. 学生能通过实验,培养动手操作能力和问题解决能力。
情感态度价值观目标:1. 学生对单片机及其应用产生兴趣,提高学习热情和积极性。
2. 学生在实验过程中,培养团队协作意识和沟通能力。
3. 学生能够认识到科技对社会发展的作用,增强创新意识和责任感。
课程性质:本课程为实践性课程,以学生动手操作为主,结合理论知识,培养学生的实际应用能力。
学生特点:学生为初中生,具有一定的电子知识和编程基础,对新鲜事物充满好奇,喜欢动手操作。
教学要求:教师需结合学生特点,采用启发式教学,引导学生主动探究,注重培养学生的实践能力和创新精神。
在教学过程中,关注学生的个体差异,给予个性化的指导和评价。
通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高综合素养。
二、教学内容本课程教学内容主要包括以下几部分:1. 单片机基础知识:介绍单片机的内部结构、工作原理、功能和应用领域,使学生了解单片机的基本概念。
2. LED灯电路原理:讲解LED灯的电路连接方式、工作原理和亮灭控制方法,为学生后续实验打下基础。
3. 编程语言及开发环境:学习单片机编程语言(如C语言),介绍编程软件的使用,使学生能够编写程序代码。
4. 硬件连接与调试:指导学生完成单片机与LED灯的硬件连接,教授调试方法,培养学生的动手能力。
5. 程序编写与调试:教授如何编写控制LED灯的程序代码,实现不同的亮灭效果,并学会调试程序。
6. 创新设计与实践:鼓励学生发挥想象,设计独特的LED灯控制效果,提高学生的创新能力。
51单片机8个发光二极管闪烁设计方案1. 方案目标本方案旨在设计一个基于51单片机的电路和程序,实现8个发光二极管的闪烁效果。
具体目标如下:1.实现8个发光二极管的交替闪烁。
2.控制每个发光二极管的亮灭时间和频率。
3.确保方案具有可行性和高效性。
2. 实施步骤2.1 硬件设计根据目标需求,我们需要以下硬件组件:1.51单片机(如STC89C52):作为主控芯片,负责控制8个发光二极管的亮灭状态。
2.8个发光二极管:用于显示亮灭状态。
3.8个电流限流电阻:用于限制发光二极管的工作电流,防止过流损坏。
4.连接线:用于连接主控芯片、发光二极管和电流限流电阻。
硬件连接步骤如下:1.将主控芯片与发光二极管之间通过连接线连接起来。
2.将每个发光二极管与对应的电流限流电阻连接起来,确保电流在安全范围内。
2.2 软件设计软件设计包括编写主控芯片的程序代码,实现对8个发光二极管的控制。
以下是一个基本的软件设计思路:1.定义8个IO口用于连接发光二极管,并设置为输出模式。
2.定义一个变量ledState表示当前发光二极管的亮灭状态,初始值为0。
3.在主循环中,通过改变ledState的值来控制发光二极管的亮灭状态。
4.使用延时函数或定时器来控制每个发光二极管的亮灭时间和频率。
具体步骤如下:1.初始化IO口:将8个IO口设置为输出模式。
2.定义变量:定义一个整型变量ledState用于记录当前发光二极管的亮灭状态,默认为0。
3.进入主循环:–设置第一个发光二极管为亮,其他7个发光二极管为灭。
–延时一段时间(如200ms)。
–设置第一个发光二极管为灭,第二个发光二极管为亮,其他6个发光二极管为灭。
–延时一段时间(如200ms)。
–重复以上步骤,依次控制每个发光二极管的亮灭状态。
4.返回主循环。
2.3 预期结果通过上述硬件和软件设计,我们可以实现8个发光二极管的交替闪烁效果。
具体预期结果如下:1.8个发光二极管按照顺序交替亮灭。
单片机原理及应用题目基于单片机控制发光二极管院(系)信息工程学院专业班级学生姓名学号设计地点指导教师目录1 综述 (4)1.1基于单片机控制发光二极管的过去发展。
(4)1.2基于单片机控制发光二极管的现在发展。
(4)1.3基于单片机控制发光二极管的未来发展。
(4)1.4基于单片机控制发光二极管的国内发展 (7)1.5基于单片机控制发光二极管的国外发展 (8)2 搭建平台 (10)2.1概述 (10)2.2 Proteus (11)2.3 Keil (12)2.4 STC_ISP (13)3 硬件技术介绍 (14)3.1系统总体设计 (14)3.2最小系统电路图设计 (15)3.3按键电路设计 (15)3.4 LCD电路设计 (17)4 功能实现 (18)4.1整体仿真电路图 (18)4.2 流程图 (18)4.3 源程序 (19)5 测试结果及分析 (26)5.1硬件测试 (26)5.2软件测试 (26)5.3实验截图 (27)5.4焊接中的问题 (27)*致谢 (28)*参考文献 (28)1 综述1.1基于单片机控制发光二极管的过去发展。
1971年intel公司研制出世界上第一个4位微处理器;Intel公司的霍夫研制成功世界上第一块4位微处理芯片Intel4004,标志着第一代微处理器问世,微处理器和微机时代从此开始。
由此单片机器件的发展过程:1976年,Intel推出MCS-48系类单片机,1980年Intel公司推出了性能较完善的MCS-51系列单片机,直到1982年Intel推出了微控制器化阶段的MCS-96系类单片机。
1.2基于单片机控制发光二极管的现在发展。
处于对低功耗的普遍需求,目前各大厂商推出的各类单片机产品都采用了CHMOS工艺,随着集成电路技术的快速发展,很多单片机生产厂家充分考虑到用户的需求,将一些常用的功能部件,如A/D、D/A、PWM以及LCD驱动器等集成到芯片内部,尽量做到单片化。
单片机原理及应用题目基于单片机控制发光二极管院(系)信息工程学院专业班级学生姓名学号设计地点指导教师目录1 综述 (4)1.1基于单片机控制发光二极管的过去发展。
(4)1.2基于单片机控制发光二极管的现在发展。
(4)1.3基于单片机控制发光二极管的未来发展。
(4)1.4基于单片机控制发光二极管的国内发展 (7)1.5基于单片机控制发光二极管的国外发展 (8)2 搭建平台 (10)2.1概述 (10)2.2 Proteus (11)2.3 Keil (12)2.4 STC_ISP (13)3 硬件技术介绍 (14)3.1系统总体设计 (14)3.2最小系统电路图设计 (15)3.3按键电路设计 (15)3.4 LCD电路设计 (17)4 功能实现 (18)4.1整体仿真电路图 (18)4.2 流程图 (18)4.3 源程序 (19)5 测试结果及分析 (26)5.1硬件测试 (26)5.2软件测试 (26)5.3实验截图 (27)5.4焊接中的问题 (27)*致谢 (28)*参考文献 (28)1 综述1.1基于单片机控制发光二极管的过去发展。
1971年intel公司研制出世界上第一个4位微处理器;Intel公司的霍夫研制成功世界上第一块4位微处理芯片Intel4004,标志着第一代微处理器问世,微处理器和微机时代从此开始。
由此单片机器件的发展过程:1976年,Intel推出MCS-48系类单片机,1980年Intel公司推出了性能较完善的MCS-51系列单片机,直到1982年Intel推出了微控制器化阶段的MCS-96系类单片机。
1.2基于单片机控制发光二极管的现在发展。
处于对低功耗的普遍需求,目前各大厂商推出的各类单片机产品都采用了CHMOS工艺,随着集成电路技术的快速发展,很多单片机生产厂家充分考虑到用户的需求,将一些常用的功能部件,如A/D、D/A、PWM以及LCD驱动器等集成到芯片内部,尽量做到单片化。
同时单片机的种类越来越多,Intel、Motorola、Philip、EMC等公司设计和开发了多种功能不同的产品。
1.3基于单片机控制发光二极管的未来发展。
单片机作为一个完整的数字处理系统具备了构成计算机的几乎全部主要单元部件,在这个意义上称之为单片微机毫不过份,正所谓“麻雀虽小,五脏俱全”。
通过学习和应用单片机入计算机硬件之门可收事半功倍之效。
选择单片机作为接近PC机硬件的首选机种,不必从一开始就为众多外围芯片及相互间的配合弄得头晕脑胀,这对揭开计算机神秘的面纱,无疑是一条捷径。
从应用的角度看,单片机本姓“单”,它自成一体,不过是一片大规模集成电路而已,大量对于其它微处理器必需的外部器件和连线早已在单片机内部完成,各种信息传递的时序关系变得简单,易于理解和接受。
用单片机实现某个特定的控制功能十分方便,“边学边用,学用结合”,很容易“立竿见影”。
从设计思想看,单片机的应用意味着“从以硬件电路设计为主的传统设计方法向对单片机内部资源及外部引脚功能加以利用的以软件设计为主的方法的转化”。
从而使硬件成本大大降低,设计工作变得异常灵活。
往往只需改动一下程序就可以使设备增加功能,提高性能,岂不妙哉。
工业自动化控制是最早采用单片机控制的领域之一,在测控系统、过程控制、机电一体化设备中主要利用单片机实现逻辑控制、数据采集、运算处理、数据通信等用途。
单独使用单片机可以实现一些小规模的控制功能,作为底层检测、控制单元与上位计算机结合可以组成大规模工业自动化控制系统。
特别在机电一体化技术中,单排年级的结构特点使其更容易发挥其集机械、微电子和计算机技术于一体的优势。
内部含有点片剂的仪器系统称为智能仪器,也称为微机化仪器。
这类仪器大多采用单片机进行信息处理、控制及通信,与非智能化仪器相比,功能得到了强化,增加了诸如数据存储、故障诊断、联网集控等功能。
以单片机作为核心组成智能仪器表已经是自动化仪表发展的一种趋势。
单片机功能完善、体积小、价格廉、易于嵌入,非常适合于对家用电器的控制。
嵌入单片机的家用电器实现了智能化,是传统型家用电器的更新换代,现已广泛应用于洗衣机、空调、电视机、视盘机、微波炉、电冰箱、电饭煲以及各种试听设备等。
信息和通信产品的自动化和智能化程度很高,其中许多功能的完成都离不开单片机的参与。
这里最具代表性和应用最广的产品就是移动通信设备,例如手机内的控制芯片就是属于专用型单片机。
另外在计算机外部设备中,如键盘、打印机中也离不开单片机。
新型单片机普遍具备通信接口,可以方便地和计算机进行数据通信,为计算机和网络设备之间提供连接服务创造了条件。
现在办公自动化设备中大多数嵌入了单片机控制核心。
如打印机、复印机、传真机、绘图机、考勤机及电话等。
通过单片机控制不但可以完成设备的基本功能,还可以实现与计算机之间的数据通信。
在商业营销系统中单片机已广泛应用于电子秤、收款机、条形码阅读器、IC卡刷卡机、出租车计价器以及仓储安全监测系统、商场保安系统、空气调节系统、冷冻保险系统等。
单片机在医疗设施及医用设备中的用途亦相当广泛,例如在医用呼吸机、各种分析仪、医疗监护仪、超声诊断设备及病床呼叫系统中都得到了实际应用。
现代汽车的集中显示系统、动力监测控制系统、自动驾驶系统、通信系统和运行监视器等装置中都离不开单片机。
特别是采用现场总线的汽车控制系统中,以单片机担当核心的节点通过协调、高效的数据传送不仅完成了复杂的控制功能,而且简化了系统结构。
汽车家庭化是我国未来十年的一个热点。
而单片机应用则是提高汽车质量的一项重要支撑技术。
目前,在高档乘用车中已普遍有二三十片单片机被用于空调、音响、仪表盘、自动窗、遥控门、自控前后盖、空气质量监测、反射镜角度调整、自动灭火、防盗报警等项控制。
而更重要的应用则是在控制发动机、传动器、制动器、安全气囊、车载全球定位系统(GPS)等方面。
目前,国产汽车在此领域的开发应用尚不能满足需求,这正是电子技术人员可以大展拳脚的领域。
1.4基于单片机控制发光二极管的国内发展单片机的技术进步反映在内部结构、功率消耗、外部电压等级以及制造工艺上。
在这几方面,较为典型地说明了数字单片机的水平。
在目前,用户对单片机的需要越来越多,但是,要求也越来越高。
在单片机应用中,可靠性是首要因素为了扩大单片机的应用范围和领域,提高单片机自身的可靠性是一种有效方法。
近年来,单片机的生产厂家在单片机设计上采用了各种提高靠性的新技术:EFT技术,低噪声布线技术及驱动技术,采用低频时钟。
同时单片机在目前在国内的发展形势下还表现出可靠性及应用越来越水平高和互联网连接,所集成的部件越来越多,功耗越来越低和模拟电路结合越来越多等发展趋势。
1.5基于单片机控制发光二极管的国外发展现在可以说单片机是百花齐放的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,它们各具特色,互成互补,为单片机的应用提供广阔的天地。
纵观单片机的发展过程,可以预示单片机的发展趋势。
MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。
80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。
CMOS虽然功耗较低,但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于在要求低功耗,电池供电的应用场合。
所以这种工艺将是今后一段时期单片机发展的主要途径。
现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。
甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。
此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。
现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。
现在虽然单片机的品种繁多,各具特色,但仍以80C51为核心的单片机占主流,兼容其结构和指令系统的有PHILIPS公司的产品,ATMEL公司的产品和中国台湾的Winbond系列单片机。
所以C8051为核心的单片机占据了半壁江山。
而Microchip公司的PIC精简指令集(RISC)也有着强劲的发展势头,中国台湾的HOLTEK公司近年的单片机产量与日俱增,与其低价质优的优势,占据一定的市场分额。
此外还有MOTOROLA公司的产品,日本几大公司的专用单片机。
在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补,相辅相成、共同发展的道路。
以往单片机内的ROM为1KB~4KB,RAM 为64~128B。
但在需要复杂控制的场合,该存储容量是不够的,必须进行外接扩充。
为了适应这种领域的要求,须运用新的工艺,使片内存储器大容量化。
目前,单片机内ROM 最大可达64KB,RAM 最大为2KB。
另外单片机进一步改变CPU的性能,加快指令运算的速度和提高系统控制的可靠性。
采用精简指令集(RISC)结构和流水线技术,可以大幅度提高运行速度。
现指令速度最高者已达100MIPS(Million Instruction Per Seconds,即兆指令每秒),并加强了位处理、中断和定时控制功能。
这类单片机的运算速度比标准的单片机高出10 倍以上。
由于这类单片机有极高的指令速度,可以使用软件模拟其I/O 功能,由此引入了虚拟外设的新概念。
在很长一段时间里,通用型单片机通过三总线结构扩展外围器件成为单片机应用的主流结构。
随着低价位OTP(One Time Programble)及各种特殊类型片内程序存储器的发展,加之处围接口不断进入片内,推动了单片机“单片”应用结构的发展。
特别是I2C、SPI 等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化。
2 搭建平台2.1概述目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。