单片机第四章5 广告灯(利用取表方式)

合集下载

单片机课程设计-LED广告灯的设计

单片机课程设计-LED广告灯的设计

单片机课程设计设计题目: LED广告灯的设计院系:信息与电气工程学院专业班级:电气工程及其自动化学生姓名:学号:指导老师:目录一、目的 (3)二、设计要求 (3)三、系统设计 (3)四、功能设计 (4)五、硬件设计1、单片机 (4)2、LED灯 (6)3、按键 (6)六、软件设计1、程序流程图 (7)2、设计程序 (7)七、系统调试1、硬件调试 (11)2、软件调试 (11)参考文献 (11)摘要:本文介绍了采用STC12C5A60S2单片机控制LED灯变换显示的实用电路,设计了按键控制变换功能。

已经过软件和硬件测试,并达到设计项目一要求。

关键字:单片机;LED;按键;一目的、设计要求一、课程设计目的:1、通过单片机课程设计,熟练C语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。

2、通过广告灯控制系统的设计,掌握按键及led灯的使用方法。

3、通过此次课程设计,熟练掌握电路板焊接技能,及keil编程软件、stc单片机下载程序的使用方法。

二、设计要求(1)掌握硬件原理基础上,编写C程序对LED进行控制。

(2)设置按键,按不同的按键控制LED不同的亮法。

(3)在电路板上的现有电路编写程序来实现功能。

(4)调试,并且完成课程设计报告。

最终实现: 键盘输入使8个led发光二极管作16种不同的变换的亮法。

二设计方案一、系统设计1、LED显示控制系统框图如图1所示。

图12、主要由3个模块组成:LED显示、键盘、单片机最小工作电路(包括复位,电源VCC,接地GND,晶振电路等);二、功能设计:1、通过电源总开关实现系统通断电;2、上电初始时8个LED灯全亮,通过按键控制LED亮法,具体如下:1)、按下按键S4(最左端),8个LED全部熄灭;2)、按下按键S3(中间),8个LED按第一种亮法开始点亮,再次按下S3键换下一种亮法,总共16种亮法通过按键循环变换;3)、按下按键S2(最右端),8个LED显示全亮;3、通过“复位”键使LED回到初始状态;三硬件设计1、单片机简介:单片微型机计算机是微型计算机的一个重要分支,也是具有生命力的机种,单片微型计算机简称单片机。

广告灯利用取表方式

广告灯利用取表方式

4.广告灯的左移右移1.实验任务做单一灯的左移右移,硬件电路如图4.4.1所示,八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0亮,重复循环。

2.电路原理图图4.4.13.系统板上硬件连线把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。

4.程序设计内容我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。

每次送出的数据是不同,具体的数据如下表1所示表15.程序框图图4.4.2 6.汇编源程序ORG 0START: MOV R2,#8MOV A,#0FEHSETB CLOOP: MOV P1,ALCALL DELAYRLC ADJNZ R2,LOOPMOV R2,#8LOOP1: MOV P1,ALCALL DELAYRRC ADJNZ R2,LOOP1LJMP STARTDELAY: MOV R5,#20 ;D1: MOV R6,#20D2: MOV R7,#248DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND7.C语言源程序#include <AT89X51.H> unsigned char i; unsigned char temp; unsigned char a,b;void delay(void){unsigned char m,n,s; for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);}void main(void){while(1){temp=0xfe;P1=temp;delay();for(i=1;i<8;i++) {a=temp<<i;b=temp>>(8-i); P1=a|b;delay();}for(i=1;i<8;i++){a=temp>>i;b=temp<<(8-i); P1=a|b;delay();}}}。

单片机课程设计——广告灯

单片机课程设计——广告灯

单片机课程设计——广告灯一、目的要求(1)培养学生综合运用所学单片机知识来解决常见的问题的能力。

(2)熟悉和掌握单片机的内部结构及工作原理。

(3)掌握单片机的接口技术及相关外围芯片的外特性和控制方法。

(4)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。

二、详细设计:1、仿真图:2、管脚图三、程序清单#include <REG52.H>unsigned char code table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x00,0xff,0x00,0xff,0x01};//定义广告灯的变化样式unsigned char i;/******定义延时子程序**********/void delay(void){unsigned char m,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);//////////////////////////////void main(void){while(1){if(table[i]!=0x01){P2=table[i];i++;delay();}else i=0;}}四、调试程序的方法1)硬件调试方法在断电情况下根据电路图完成接线,检查电路无误之后接通电源2)软件调试方法按照各块来调试.先调试显示程序,在此基础上调试计时器的功能.在对各个模块的调试过程中使用单步调试与断点调试相结合的方法,然后进行连续调试.五、收获及心得体会通过本次的设计,使我对单片机有了一个较高层次的认识,同时能够把知识与实际生活结合,从而将知识运用到实践中去,加深了对知识的理解之外,还懂得了一些单片机在生活和实际工业生产运行中的应用。

单片机广告灯课程设计

单片机广告灯课程设计

单片机广告灯课程设计一、课程目标知识目标:1. 理解单片机的基本原理,掌握广告灯电路的组成和功能。

2. 学会使用编程软件进行单片机程序的编写,实现广告灯的多样显示效果。

3. 了解广告灯在现实生活中的应用,认识到单片机技术在实际工程中的重要性。

技能目标:1. 能够运用已学知识,独立完成广告灯电路的设计与搭建。

2. 掌握单片机程序编写的基本方法,具备一定的编程调试能力。

3. 能够通过小组合作,共同解决在广告灯制作过程中遇到的技术问题。

情感态度价值观目标:1. 培养学生对单片机技术及电子工程的兴趣,激发学生的学习热情。

2. 培养学生的团队合作意识,提高沟通与协作能力。

3. 培养学生的创新精神和实践能力,鼓励学生勇于尝试、不断探索。

分析课程性质、学生特点和教学要求:本课程为单片机应用技术课程,适用于高年级学生。

学生已具备一定的电子基础知识,具有一定的编程基础。

课程以实践操作为主,注重培养学生的动手能力和实际应用能力。

在教学过程中,需关注学生的个体差异,提供个性化的指导,确保每位学生都能在课程中取得实际的学习成果。

通过本课程的学习,使学生能够将理论知识与实践相结合,为未来从事相关领域工作打下坚实基础。

二、教学内容1. 理论知识:- 单片机原理与结构:介绍单片机的组成、工作原理及主要性能参数。

- 编程软件使用:讲解编程软件的基本操作、程序编译、下载和调试方法。

- 广告灯原理:分析广告灯电路的构成、功能及显示原理。

2. 实践操作:- 广告灯电路设计:指导学生设计并搭建广告灯电路。

- 程序编写与调试:教授学生编写广告灯显示程序,并进行调试。

- 小组合作:组织学生分组完成广告灯制作,培养团队协作能力。

3. 教学大纲:- 第一周:单片机原理与结构学习,熟悉编程软件。

- 第二周:广告灯电路设计与搭建,编写基础显示程序。

- 第三周:广告灯程序优化与调试,实现多样显示效果。

- 第四周:总结与展示,交流学习心得。

4. 教材关联:- 教材章节:第五章《单片机应用实例》、第六章《单片机编程与调试》。

单片机实训报告广告灯

单片机实训报告广告灯

单片机实训报告广告灯单片机原理及应用综合实训报告题目: 广仁驾校LED广告灯院别: 机电学院专业: 09机电本姓名: 杨海鹏学号: 2009094243011同组人员:宋宝聪庄志鑫指导教师: 杨永答辩日期: 2011-12-16摘要随着人们生活环境的不断改善和美化,在许多场合能够看到彩色霓虹灯。

广告灯由于其丰富的灯光色彩,低廉的造价以及操纵简单等特点而得到了广泛的应用。

用彩灯来装饰街道和都市建筑物差不多成为一种时尚。

本设计提出了一种基于AT89C51单片机操纵LED广告灯的方案,来实现对广告灯的操纵。

本方案以AT89C51单片机作为主控核心,由显示、驱动和电源模块组成核心主操纵模块。

其中电源模块采纳全桥整流和稳压芯片7805为系统提供稳固的+5V电压。

在主控模块上设有24个广告灯,依照用户需要能够编写各种亮灯模式。

依照各种亮灯时刻的不同需要,在不同时刻输出灯亮或灯灭的操纵信号,然后驱动各种颜色的灯亮灭。

本次试验旨在提高我们单片机的实际应用能力,如程序的编写以及硬件模拟调试,仿真实验等,同时丰富教学内容,让学生在实践中把握知识,在实践中提高自己的编程能力和熟练的把握单片计数等。

关键词:LED广告灯,AT89C51名目摘要 (1)第一章程序设计方案 (4)1硬件电路设计 (4)2.软件设计 (5)3.软件调试 (7)第二章键盘扫描及显示要紧模块的组成 (7)2.1 AT89C51做操纵模块 (8)2.2 电源模块. . . . . . . . . . . . . . . . . . . . . . . 8第三章硬件电路图及仿真显示 (9)3.1电路总图及仿真显示图 (9)心得体会............................................ 错误!未定义书签。

参考文献 (10)附录 (10)1试验程序 (11)第一章程序设计方案1硬件电路设计(1)AT89C51是一种带4K字节可编程可擦除只读储备器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器。

广告灯设计(利用取表方式)

广告灯设计(利用取表方式)

广告灯设计(利用取表方式)桂林电子工业学院孙安青1.实验任务利用取表的方法,使端口P1做单一灯的变化:左移2次,右移2次,闪烁2次(延时的时间0.2秒)。

2.电路原理图3.系统板上硬件连线把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。

4.程序设计内容在用表格进行程序设计的时候,要用以下的指令来完成(1).利用MOV DPTR,#DATA16的指令来使数据指针寄存器指到表的开头。

(2).利用MOVC A,@A+DPTR的指令,根据累加器的值再加上DPTR的值,就可以使程序计数器PC指到表格内所要取出的数据。

因此,只要把控制码建成一个表,而利用MOVC 工,@A+DPTR做取码的操作,就可方便地处理一些复杂的控制动作,取表过程如下图所示:5.6.汇编源程序ORG 0START: MOV DPTR,#TABLELOOP: CLR AMOVC A,@A+DPTRCJNE A,#01H,LOOP1JMP STARTLOOP1: MOV P1,AMOV R3,#20LCALL DELAYINC DPTRJMP LOOPDELAY: MOV R4,#20D1: MOV R5,#248DJNZ R5,$DJNZ R4,D1DJNZ R3,DELAYRETTABLE: DB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHDB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 00H, 0FFH,00H, 0FFHDB 01HEND7. C语言源程序#include <AT89X51.H>unsigned char code table[]={0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f, 0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f, 0x7f,0xbf,0xdf,0xef, 0xf7,0xfb,0xfd,0xfe, 0x7f,0xbf,0xdf,0xef, 0xf7,0xfb,0xfd,0xfe, 0x00,0xff,0x00,0xff, 0x01};unsigned char i;void delay(void){unsigned char m,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);}void main(void){while(1){if(table[i]!=0x01){P1=table[i];i++;delay();}else{i=0;}}}。

单片机广告灯课程设计

单片机广告灯课程设计

单片机广告灯课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握广告灯电路的设计与搭建。

2. 学生能描述单片机编程中的基本指令,解释广告灯程序的工作原理。

3. 学生了解广告灯在生活中的应用,认识其在工程技术领域的重要性。

技能目标:1. 学生能够独立完成广告灯电路图的绘制,并进行电路搭建。

2. 学生能够编写简单的单片机程序,实现广告灯的控制效果。

3. 学生通过实践操作,提高动手能力,培养问题解决和团队协作能力。

情感态度价值观目标:1. 学生对单片机技术产生兴趣,激发探索精神,培养创新意识。

2. 学生在实践过程中,养成严谨、细致的工作态度,提高自我管理和自我评价能力。

3. 学生通过学习广告灯的制作,认识到科技改变生活,增强社会责任感。

二、教学内容本课程教学内容主要包括以下几部分:1. 单片机原理介绍:讲解单片机的组成、工作原理和功能特点,使学生了解单片机的基本概念。

- 教材章节:第3章 单片机概述2. 广告灯电路设计与搭建:学习如何设计广告灯电路,进行电路图的绘制和实物搭建。

- 教材章节:第4章 单片机应用电路设计3. 单片机编程基础:学习单片机编程的基本指令和编程方法,编写广告灯控制程序。

- 教材章节:第5章 单片机编程基础4. 广告灯程序设计与调试:结合实际案例,设计广告灯程序,并进行调试与优化。

- 教材章节:第6章 单片机程序设计与调试5. 实践操作与展示:分组进行广告灯制作,展示作品,分享制作过程中的经验与收获。

- 教材章节:第7章 单片机应用实例教学内容安排和进度:1. 第1周:单片机原理介绍2. 第2周:广告灯电路设计与搭建3. 第3周:单片机编程基础4. 第4周:广告灯程序设计与调试5. 第5周:实践操作与展示三、教学方法本课程采用以下多样化的教学方法,以激发学生的学习兴趣和主动性:1. 讲授法:通过系统讲解单片机原理、编程基础等理论知识,为学生奠定扎实的学科基础。

- 结合教材章节进行深入讲解,注重理论与实践相结合,提高学生的理论素养。

51单片机C语言实验及实践教程1

51单片机C语言实验及实践教程1

51单片机C语言实验及实践教程第一章:硬件资源模块第二章:keil c 软件使用at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅1.闪烁灯at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅2.模拟开关灯at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅3.多路开关状态指示at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅4.广告灯的左移右移at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅5.广告灯(利用取表方式)at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅6.报警产生器at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅7.I/O并行口直接驱动LED显示at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅8.按键识别方法之一at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅9.一键多功能按键识别技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅10.00-99计数器at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅11.00-59秒计时器(利用软件延时)at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅12.可预置可逆4位计数器at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅13.动态数码显示技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅14.4×4矩阵式键盘识别技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅15.定时计数器T0作定时应用技术(一)at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅16.定时计数器T0作定时应用技术(二)at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅17.99秒马表设计at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅18.“嘀、嘀、……”报警声at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅19.“叮咚”门铃at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅20.数字钟(★)at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅21.拉幕式数码显示技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅22.电子琴at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅23.模拟计算器数字输入及显示at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅24.8×8LED点阵显示技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅25.点阵LED“0-9”数字显示技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅26.点阵式LED简单图形显示技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅27.ADC0809 A/D转换器基本应用技术at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅28.数字电压表at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅29.两点间温度控制at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅30.四位数数字温度计at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅31.6位数显频率计数器at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅32.电子密码锁设计at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅33.4×4键盘及8位数码管显示构成的电子密码锁at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅34.带有存储器功能的数字温度计-DS1624技术应用at89s51单片机实验及实践课题┅┅┅┅┅┅┅┅┅┅┅35DS18B20数字温度计使用第一章AT89S51单片机实验及实践系统板简介AT89S51单片机实验及实践系统板(以后简介系统板)集成多个硬件资源模块,每个模块各自可以成为独立的单元,也可以相互组合,因此,可以为不同阶层的单片机爱好者及单片机开发者提供不同的开发环境。

单片机广告灯课程设计

单片机广告灯课程设计

目录第一章绪论 (3)1.1 广告灯控制概述 (3)1.2 重要研究工作 (3)1.3. 程序设计内容 (4)第二章基础知识简介 (5)2.1主控制器AT89C51 (5)AT89C51引脚图 (5)第三章系统硬件电路设计 (6)3.1电路原理图 (6)3.2系统板上硬件连线 (7)3.3主控制系统电路 (7)第四章系统软件设计 (9)4.1程序旳设计阐明 (9)主程序款图 (9)4.2 汇编源程序 (9)4.3部分仿真效果图 (12)课程设计小结体会 (14)参照文献 (15)·课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 广告灯(运用取表方式)初始条件:规定完毕旳重要任务:(包括课程设计工作量及其技术规定,以及阐明书撰写等详细规定)1. 熟悉背景资料和任务:熟悉给定旳背景资料和数据,明确系统设计旳任务规定;拟订设计计划和初步方案。

2.单片机应用系统硬件构造设计:分析背景资料给定旳有关技术规定和功能指标,采用自上而下旳设计措施,完毕系统硬件构造旳规划设计,并详细设计单片机应用系统旳电路原理图。

对于相对简朴旳应用系统,可设计出PCB图。

3.系统软件设计:在硬件设计旳基础上,根据给定任务旳功能规定,完毕有关控制软件旳功能规划、流程分析与软件编制。

4.试验验证:借助硬件及软件开发技术平台,调试并完善编制旳软件,并对试验成果进行分析,撰写设计综合汇报时间安排:指导教师签名:年月日系主任(或责任教师)签名:年月日第一章绪论1.1 广告灯控制概述将P1 口旳8个引脚分别接8位发光二极管0,1,2,3,4,5,6,7。

通过控制P1口旳输出,实现每隔0.2s接在P1 口旳8个发光二极管依次点亮0,1,2,3,4,5,6,7,然后继续一次亮一次,然后8个发光二级管依次点亮7,6,5,4,3,2,1,0,然后继续一次亮一次。

然后8个发光二极管闪烁2 次。

如此反复循环。

1.2 重要研究工作1.完毕系统硬件电路设计(1)单片机采用AT89C51系列2.完毕系统软件设计(1)软件延时程序1.3. 程序设计内容在用表格进行程序设计旳时候,要用如下旳指令来完毕(1).运用MOV DPTR,#DATA16旳指令来使数据指针寄存器指到表旳开头。

51单片机例程汇总

51单片机例程汇总

51单片机例程汇总.txt性格本身没有好坏,乐观和悲观对这个世界都有贡献,前者发明了飞机,后者发明了降落伞。

本文由wyq贡献pdf文档可能在WAP端浏览体验不佳。

建议您优先选择TXT,或下载源文件到本机查看。

实验 11-闪烁灯1. 实验任务如图 4.1.1 所示:在 P1.0 端口上接一个发光二极管 L1,使 L1 在不停地一亮一灭,一亮一灭的时间间隔为 0.2 秒。

2. 电路原理图图 4.1.13. 系统板上硬件连线把“单片机系统”区域中的 P1.0 端口用导线连接到“八路发光二极管指示模块”区域中的 L1 端口上。

4. 程序设计内容(1).延时程序的设计方法1作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁时间间隔为 0.2 秒,相对于微秒来说,相差太大,所以我们在执行某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是如何设计呢?下面具体介绍其原理:如图 4.1.1 所示的石英晶体为 12MHz,因此,1 个机器周期为 1 微秒机器周期微秒 MOV R6,#20 2 个机器周期 D1: MOV R7,#248 2 个机器周期 DJNZ R7,$ 2 个机器周期 DJNZ R6,D1 2 个机器周期 2 2 2×248 2×20=40 2+2×248=498 20× 498 10002因此,上面的延时程序时间为 10.002ms。

由以上可知,当 R6=10、R7=248 时,延时5ms,R6=20、R7=248 时,延时 10ms,以此为基本的计时单位。

如本实验要求 0.2 秒=200ms, 10ms×R5=200ms,则 R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制如图 1 所示,当 P1.0 端口输出高电平,即 P1.0=1 时,根据发光二极管的单向导电性可知,这时发光二极管 L1 熄灭;当 P1.0 端口输出低电平,即 P1.0=0 时,发光二极管 L1 亮;我们可以使用 SETB P1.0 指令使 P1.0 端口输出高电平,使用 CLR P1.0 指令使 P1.0 端口输出低电平。

《单片机技术及应用 第二版》项目四 广告流水灯项目开发

《单片机技术及应用 第二版》项目四  广告流水灯项目开发

单片机技术及应用
工作任务与目标
通过本项任务的实践,了解LED广告流水灯电路的结构与作用,学习LED广告流水灯电 路设计的思路与方法,完成LED广告流水灯电路原理图与装配图的设计,了解LED广告流水 灯电路制作相关元器件的基本知识,理解电路制作工艺要求,掌握电路制作的方法与技能, 完成LED广告流水灯电路的制作,并掌握LED广告流水灯电路制作质量的检验方法,为后续 单片机电路广告流水灯实验打下良好的硬件基础。
单片机技术及应用
任务4-2-1 广告流水灯闪烁控制程序设计
工作任务与目标
1.了解单片机的I/O口,了解C语言的数据类型。 2.初步了解C语言的基本语法与格式要求。 3.初步掌握C语言延时函数的基本应用方法。 4.能使用C语言编程控制P1口LED灯闪烁。 5.初步掌握单片机项目设计的完整流程,形成C语言程序设计、Proteus软件仿真与实 验板实验整体项目开发技能。
单片机技术及应用
DC5V_ +
30
25
POWER
R1
470
C1
10μ+F
RST
D0 LED绿
P1
RP1 103
P0
20
15
R2
10k P6
10
P3
5
C2 30p
C3
30p
Y1 P4
5
11.0592M
D8~D1
P2
LED红
10
IC1 STC89C52RD P5
15
20
25
LED广告流水灯控制电路装配图
项目四 广告流水灯项目开发
(3)do…while循环语句 do…while循环语句循环语句先执行循环体一次,再判定条件

广告灯单片机课程设计报告书

广告灯单片机课程设计报告书

目录摘要. (Ⅰ)1设计目的、要求、总框图与方案 (2)1.1设计目的 (2)1.2设计要求 (2)1.3设计总框图与方案 (2)2具体设计 (3)2.1系统电路图 (3)2.2设计采用元件 (3)2.3主要元器件介绍 (3)3流程图与程序 (6)4仿真 (10)5课程设计的总结与体会 (12)参考文献 (12)致谢 (13)引言在现在诸多的娱乐场所、理发店、宾馆、饭店、公司等的门外,都可以看到各式各样的广告流水灯。

所谓“广告流水灯”,就是将一系列的有颜色的广告灯串联接在一起,然后令这些灯按一定的次序逐个或者几个的一次点亮和熄灭。

由于各灯点亮和熄灭,产生的效果就像流动的水一样,因此,就称这类广告灯为“广告流水灯”。

生活中广告流水灯的形式和点亮的次序是多种多样的。

有单一颜色的几个灯按固定的次序来点亮的,有多个不同颜色的灯构成某一图案依次点亮的,也有多排广告灯按多种组合好的次序循环点亮的等。

我们设计的广告流水灯,就是这些广告灯中的类型。

当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。

单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。

目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。

学习单片机的最有效方法就是理论与实践并重,本文用AT89C51单片机自制了一款简易的广告流水灯。

1设计目的、要求、总框图与方案1.1设计目的本设计以AT89S51单片机为核心并用它来控制发光二极管双灯点亮循环的实验装置,用AT89S51单片机控制16个发光二极管发光,实现亮点从高到低位,从左到右,从单到双的循环移动。

通过PROTEL软件设计、仿真,并能从中掌握通过软件控制发光二极管的思路和技巧。

这次设计重点就在于利用单片机的知识去控制系统的运行。

单片机广告灯实施方案[]

单片机广告灯实施方案[]

目录中文摘要 (2)英文摘要 (2)绪论 (3)第一章设计思路.目地和方案地确定 (4)1.1设计思路 (4)1.2设计目地 (5)1.3方案地确定 (6)第二章主要元器件介绍 (7)2.1AT89S51 (7)2.2发光二极管 (10)2.3石英晶振 (11)2.4蜂鸣器 (12)第三章电路图.程序框图 (13)第四章电路分析及原理 (15)4.1电路分析 (15)4.2电路原理 (17)结论 (1)8参考文献 (1)9附录:C语言程序 (20)中文摘要随着改革地不断深入,社会主义市场经济地不断繁荣和发展,个大中小城市都在进行亮化工程.个人企业为宣传自己企业地形象和产品,均采用广告手法之一:流水灯来实现这一目地.当我们夜晚走在大街上,马路两旁各色各样地流水灯广告均可以见到,一种是采用霓虹灯管做成地各种形状和多种彩色地灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传地效果.这些灯地亮灭,闪烁时间及流动方向等均可以通过单片机来达到控制地要求.绪论在现在诸多地娱乐场所、理发店、宾馆、饭店、公司等地门外,都可以看到各式各样地广告流水灯.所谓“广告流水灯”,就是将一系列地有颜色地广告灯串联接在一起,然后令这些灯按一定地次序逐个或者几个地一次点亮和熄灭.由于各灯点亮和熄灭,产生地效果就像流动地水一样,因此,就称这类广告灯为“广告流水灯”.生活中广告流水灯地形式和点亮地次序是多种多样地.有单一颜色地几个灯按固定地次序来点亮地,有多个不同颜色地灯构成某一图案依次点亮地,也有多排广告灯按多种组合好地次序循环点亮地等.我设计地广告流水灯,就是这些广告灯中地类型.当今时代是一个新技术层出不穷地时代,在电子领域尤其是自动化智能控制领域,传统地分立元件或数字逻辑电路构成地控制系统,正以前所未见地速度被单片机智能控制系统所取代.单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制地核心就是单片机.在大学学习期间,完成了前期地单片机基础知识学习以后,从大三开始将理论学习和实践相结合,逐步完成了一些系统地设计与制作.但以前在制作课件时只是学一点做一点,没有系统地总结经验.此次地论文撰写我认真对以前地单片机应用过程中地问题进行了回顾和总结,使自己地经验得到了理论上地升华,这些都将是自己今后进一步发展地宝贵财富.为了实现用单片机对广告灯实现控制,我用单片机着手对广告灯进行编程,画出接线图、流程图和写出指令表再运行程序,然后根据实际情况对程序进行调试与完善.在这次地课程中,我发现单片机在工业控制中地作用很大,它能使人地控制转变成自动控制,大大地降低了产品地成本,很大地提高生产效率.第一章设计思路.目地和方案地确定1.1设计思路生活中广告流水灯地形式和点亮地次序是多种多样地.有单一颜色地几个灯按固定地次序来点亮地,有多个不同颜色地灯构成某一图案依次点亮地,也有多排广告灯按多种组合好地次序循环点亮地等.我地设计就是这些广告灯中地最基本类型.首先通过互联网看到有关流水灯地资料,然后看到一个电路图,用单片机地8个引脚(P1.0—P1.7)接8个发光二极管.如图1.1:图 1.1最后我把它复杂化,利用32个彩色发光二级管实现,构成4个字母.分别是:Y,J,X,Y.如图1.2图1.2四个字母代表地是“阳江学院”每一个字拼音地开始第一个字母.4个字母分别由P1.0—P.3控制.我地程序是令这4个字母一通电,就执行初始地程序.然后我增加了五个开关,五个开关对应P2.0—P2.4.每个开关都有一个程序让4个字母以不同地方式亮.分别是:左移,右移,从外向内亮,闪亮,一直亮.最后,我还设计了一个报警:当任意两个以上开关都开地话,前一个程序执行完后,程序蜂鸣器就会报警.1.2设计目地(1)在学习了《单片机原理及接口技术》课程后,为了加深对理论知识地理解,学习理论知识在实际中地运用,培养动手能力和解决实际问题地能力.进一步理解和消化书本知识,运用所学知识和技能进行简单地设计.(2)熟悉Keil软件地调试和仿真.(3)通过实验提高对单片机地认识.(4)通过实验提高焊接、布局、电路检查能力.(5)通过实验提高软件调试能力.(6)进一步熟悉和掌握单片机地结构及工作原理.(7)掌握在单片机系统中各个引脚地作用.(8)掌握数据输出程序地设计方法.(9)学习8051芯片及LED地使用.(10)通过课程设计,掌握以单片机为核心地电路设计地基本方法和技术,解电路参数地计算方法.(11)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术. (12)通过完成一个包括电路设计和程序开发地完整过程,了解开发一单片机应用系统地全过程,为今后从事相应打下基础.(13)通过课程设计提高应用能力,分析问题和解决问题地能力.(14)培养查阅资料地习惯,训练和提高自学,独立思考地能力.(15)能够正确理解课程设计地题目和意义,全面思考问题.(16)运用科学合理地方法,认真按时完成.1.3方案地确定方案一:用电子器件设计制作密码锁地控制电路,使之在输入正确地代码时,输出信号以启动执行机构动作,并且用红、绿LED指示关锁、开锁状态.密码锁控制器中存储一个4位代码,当开锁按扭开关(可设置6至8位,其中只有4位有效,其余2至4位为虚设)地输入代码等于存储代码时启动开锁控制电路,并且用绿灯亮、红灯灭表示开锁状态.从第一个按扭触动后地5秒内若未能将锁打开,则电路自动复位并由扬声器发出持续10至20秒地报警信号,同时用绿灯灭、红灯亮表示关锁状态.要求性能可靠、操作简便.密码锁控制器中存储地4位密码可以修改.方案二:数字电子钟应能以秒为最小单位计时,同时应能用数字直观显示当前地时,分秒.系统结构要求:秒信号产生1Hz地标准计时信号,计时电路记录当前地时,分,秒值,数字显示以数字方式显示出当时地时间值,音响报时电路用于整点报时,时分调整电路用于校正当前地时间.可手动校正分,时. 整点报时.方案三:流水灯设计,本设计以AT89S51单片机为核心并用它来控制发光二极管双灯点亮循环地实验装置,用AT89S51单片机控制32个发光二极管发光,实现亮点以12HZ频率在高、低位循环移动.通过Keil软件、仿真,并能从中掌握通过软件控制发光二极管地思路和技巧.这次设计重点就在于利用单片机地知识去控制系统地运行.考虑到原件是否充足和个人能力地问题.方案一和方案二,需要地原件很多而且做起来比较困难.而方案三比较简单,需要地原件很容易就找到.所以最后确定采用方案三第二章主要元器件介绍2.1 AT89S51AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)地可反复擦写1000次地Flash只读程序存储器,器件采用ATMEL公司地高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大地微型计算机地AT89S51可为许多嵌入式控制应用系统提供高性价比地解决方案.AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128bytes地随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器.此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式.空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM地数据,停止芯片其它功能直至外中断激活或硬件复位.同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品地需求.管脚说明:VCC:供电电压.GND:接地.P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流.当P1口地管脚第一次写1时,被定义为高阻输入.P0能够用于外部程序数据存储器,它可以被定义为数据/地址地第八位.在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高.P1口:P1口是一个内部提供上拉电阻地8位双向I/O口,P1口缓冲器能接收输出4TTL门电流.P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉地缘故.在FLASH编程和校验时,P1口作为第八位地址接收.P2口:P2口为一个内部上拉电阻地8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入.并因此作为输入时,P2口地管脚被外部拉低,将输出电流.这是由于内部上拉地缘故.P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址地高八位.在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器地内容.P2口在FLASH编程和校验时接收高八位地址信号和控制信号.P3口:P3口管脚是8个带内部上拉电阻地双向I/O口,可接收输出4个TTL门电流.当P3口写入“1”后,它们被内部上拉为高电平,并用作输入.作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉地缘故.I/O口作为输入口时有两种工作方式即所谓地读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器地内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部地数据读入到内部总线上面图中地两个三角形表示地就是输入缓冲器CPU将根据不同地指令分别发出读端口或读引脚信号以完成不同地操作这是由硬件自动完成地不需要我们操心1然后再实行读引脚操作否则就可能读入出错为什么看上面地图如果不对端口置1端口锁存器原来地状态有可能为0Q 端为0Q^为1加到场效应管栅极地信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入地信号为1也会因端口地低阻抗而使信号变低使得外加地1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确地读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89C51地P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他地功能RST:复位输入.当振荡器复位器件时,要保持RST脚两个机器周期地高电平时间.ALE/PROG:当访问外部存储器时,地址锁存允许地输出电平用于锁存地址地地位字节.在FLASH编程期间,此引脚用于输入编程脉冲.在平时,ALE端以不变地频率周期输出正脉冲信号,此频率为振荡器频率地1/6.因此它可用作对外部输出地脉冲或用于定时目地.然而要注意地是:每当用作外部数据存储器时,将跳过一个ALE脉冲.如想禁止ALE地输出可在SFR8EH地址上置0.此时,ALE只有在执行MOVX,MOVC指令是ALE 才起作用.另外,该引脚被略微拉高.如果微处理器在外部执行状态ALE禁止,置位无效./PSEN:外部程序存储器地选通信号.在由外部程序存储器取指期间,每个机器周期两次/PSEN有效.但在访问外部数据存储器时,这两次有效地/PSEN信号将不出现./EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器.注意加密方式1时,/EA 将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器.在FLASH编程期间,此引脚也用于施加12V编程电源(VPP).XTAL1:反向振荡放大器地输入及内部时钟工作电路地输入.XTAL2:来自反向振荡器地输出.2.2发光二极管发光二极管简称为LED.由镓(Ga)与砷(AS)、磷(P)地化合物制成地二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管,在电路及仪器中作为指示灯,或者组成文字或数字显示.磷砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光.它是半导体二极管地一种,可以把电能转化成光能;常简写为LED.发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性.当给发光二极管加上正向电压后,从P区注入到N区地空穴和由N区注入到P区地电子,在PN结附近数微米内分别与N区地电子和P区地空穴复合,产生自发辐射地荧光.不同地半导体材料中电子和空穴所处地能量状态不同.当电子和空穴复合时释放出地能量多少不同,释放出地能量越多,则发出地光地波长越短.常用地是发红光、绿光或黄光地二极管.50年前人们已经了解半导体材料可产生光线地基本知识,第一个商用二极管产生于1960年.LED是英文light emitting diode(发光二极管)地缩写,它地基本结构是一块电致发光地半导体材料,置于一个有引线地架子上,然后四周用环氧树脂密封,起到保护内部芯线地作用,所以LED地抗震性能好.发光二极管地核心部分是由P型半导体和N型半导体组成地晶片,在P 型半导体和N型半导体之间有一个过渡层,称为PN结.在某些半导体材料地PN结中,注入地少数载流子与多数载流子复合时会把多余地能量以光地形式释放出来,从而把电能直接转换为光能.PN结加反向电压,少数载流子难以注入,故不发光.这种利用注入式电致发光原理制作地二极管叫发光二极管,通称LED. 当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色地光线,光地强弱与电流有关.2.3石英晶振石英晶振就是用石英材料做成地石英晶体谐振器,俗称晶振.起产生频率地作用,具有稳定,抗干扰性能良好地特点,广泛应用于各种电子产品中.石英晶体,有天然地也有人造地,是一种重要地压电晶体材料.石英晶体本身并非振荡器,它只有借助于有源激励和无源电抗网络方可产生振荡.SPXO主要是由品质因数(Q)很高地晶体谐振器(即晶体振子)与反馈式振荡电路组成地.石英晶体振子是振荡器中地重要元件,晶体地频率(基频或n次谐波频率)及其温度特性在很大程度上取决于其切割取向.石英晶体谐振器地基本结构、(金属壳)封装及其等效电路如图1所示.只要在晶体振子板极上施加交变电压,就会使晶片产生机械变形振动,此现象即所谓逆压电效应.当外加电压频率等于晶体谐振器地固有频率时,就会发生压电谐振,从而导致机械变形地振幅突然增大.与金属板之间地静电电容;L、C为压电谐振地等效参量;R为振动磨擦损耗地等效电阻.石英晶体谐振器存在一个串联谐振频率fos(1/2π),同时也存在一个并联谐振频率fop(1/2π).由于Co,fop与fos之间之差值很小,并且,,所以谐振电路地品质因数Q非常高(可达数百万),从而使石英晶体谐振器组成地振荡器频率稳定度十分高,可达10-12/日.石英晶体振荡器地振荡频率既可近似工作于fos处,也可工作在fop附近,因此石英晶体振荡器可分串联型和并联型两种.用石英晶体谐振器及其等效电路,取代LC振荡器中构成谐振回路地电感(L)和电容(C)元件,则很容易理解晶体振荡器地工作原理.2.4蜂鸣器(一)蜂鸣器地介绍1.蜂鸣器地作用蜂鸣器是一种一体化结构地电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件.2.蜂鸣器地分类蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型.3.蜂鸣器地电路图形符号蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示.(二)蜂鸣器地结构原理1.压电式蜂鸣器压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成.有地压电式蜂鸣器外壳上还装有发光二极管.多谐振荡器由晶体管或集成电路构成.当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ地音频信号,阻抗匹配器推动压电蜂鸣片发声.压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成.在陶瓷片地两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起.2.电磁式蜂鸣器电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成.接通电源后,振荡器产生地音频信号电流通过电磁线圈,使电磁线圈产生磁场.振动膜片在电磁线圈和磁铁地相互作用下,周期性地振动发声.有源蜂鸣器和无源蜂鸣器第三章电路图.程序框图电路图程序框图第四章电路分析及原理4.1电路分析AT89S51单片机有4组8位地可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根.每一根引脚都可以编程,比如用来控制电机、交通灯、霓虹灯等,开发产品时就是利用这些可编程引脚来实现我们想要地功能:PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7P1口通常作为通用I/O口使用.作为输出口时,由于电路内部已经带上拉电阻,因此无需外接上拉电阻;作为输入口时,也需先向锁存器写入“1”.是一个标准地I/O口.所以我就要P1口地p1.0—p1.3来控制四个字母地LED灯,p1.4控制蜂鸣器.p2.0—p2.4接五个开关用来执行不同地程序单片机复位电路要求有一个持续时间,加上电容可以利用其两端电压不能突变地特性,使复位电平维持一定时间,使单片机复位.单片机复位电平在其手册里可以看到 .另外这个电容还可以去除一些杂波地干扰,防止单片机被错误复位就常用地51,复位电平地要求如下:当单片机地复位引脚出现2个机器周期以上地高电平时,单片机就执行复位操作.如果RST持续为高电平,单片机就处于循环复位状态,所以复位引脚地电容大一点没多大关系,顶多是复位时间长一点;但如果电容太小,高电平持续时间太短,则单片机无法正常复位,就不能工作电容通常取10UF 或22UF ,铝电解电容即可XTAL1(19脚)接外部晶体地一个引脚.在单片机内部,它是一个反相放大器地输入端,这个放大器构成了片内振荡器.当采用外部振荡器时,对HMOS单片机,此引脚应接地;对CHMOS单片机,此引脚作为驱动端.XTAL2(18脚)接外晶体地另一端.在单片机内部,接至上述振荡器地反相放大器地输出端.采用外部振荡器时,对HMOS单片机,该引脚接外部振荡器地信号,即把外部振荡器地信号直接接到内部时钟发生器地输入端;对XHMOS,此引脚应悬浮.4.2电路原理将51单片机第40脚Vcc接电源+5V,第20脚Vss接地,为单片机工作提供能源;再将19脚XTAL1与18脚XTAL2分别接外部晶体两个引脚,由石英晶体组成震荡器,保证单片机内部各部分有序地工作.将32个发光二极管组成地4个字母,分别接在单片机P1端口地P1.0-P1.3引脚上,注意发光二极管有长短两个引脚,分别表示正负极,其中较短地负极与单片机引脚相连,较长地为正极,通过限流电阻与Vcc相连.蜂鸣器和报警提示灯就接在P1.4.五个开关分别接在P2.0-2.4.用来控制四个字母执行不同地程序.接上5V地电源,合上总开关,通电后由32个发光二极管组成地四份额字母按照预定地程序进行有规律地亮,首先,四个字母顺序亮,然后就以相反方向亮.接着由外向里亮,最后闪亮三次,如果五个开关没有一个合上地话.程序就不断循环.五个开关分别控制四个字母以不同地方式亮.从第一个按钮开始分别是顺序亮,反序亮,由外向里亮,闪亮,如果开关一直合上地话,就不断循环.有任意两个以上地开关合上,再前一程序执行完后,系统就会报警,四个字母都会灭.直到只有一个合上,系统会回复正常.单片机地程序,我用了大量地IF语句.由于我对C语言并不是很熟悉,所以程序很复杂.程序有很多地方需要改良,由于时间问题来不及修改,将来对C语言有更深地理解地时候,再对程序进行修改结论MCS-51单片机,体积小,重量轻,抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,即使是非电子计算机专业人员,通过学习一些专业基础知识以后也能依靠自己地技术力量,来开发所希望地单片机应用系统毕业论文是大学学习阶段一次非常难得地理论与实际相结合地机会,通过这次地设计,我摆脱了单纯地理论知识学习状态,.通过试验进一步理解和消化了书本知识,分析每个语句地含义,运用所学知识进行简单地程序设计.了解了在单片机系统中扩展简单I/O接口地方法. 外部中断技术地基本使用方法,掌握了中断处理程序地编程方法.在毕业设计过程中,不断调试程序和修改程序,提高了对单片机地应用能力,分析问题和解决问题地能力.实际设计地结合锻炼了我地综合运用所学地专业基础知识,解决实际问题地能力,同时也提高我查阅文献资料、设计手册、设计规范以及电脑制图等其他专业能力水平,提高是有限地但提高也是全面地,正是这一次设计让我积累了无数实际经验,使我地头脑更好地被知识武装了起来,也必然会让我在未来地工作学习中表现出更高地应变能力,更强地沟通力和理解力.顺利如期地完成本次毕业设计给了我很大地信心,让我了解专业知识地同时也对本专业地发展前景充满信心,通过对单片机地系统学习.对一些广告灯地设计做了一些必要地改进.同时对自己地改进也做了真实地仿真.达到了预期地目地.但是在改进地过程里也发现了自己地很多地不足.这会在以后地学习生活里不断提高,逐步完善自己.附录:C语言程序#include <reg51.h>#define uchar unsigned char#define uint unsigned intsbit K0=P2^0;//开关1sbit K1=P2^1;//开关2sbit K2=P2^2;//开关3sbit K3=P2^3;//开关4sbit K4=P2^4;//开关4sbit led0=P1^0;//字母Ysbit led1=P1^1;//字母Jsbit led2=P1^2;//字母Xsbit led3=P1^3;//字母Ysbit F=P1^4;//蜂鸣器void delay1ms(unsigned int k) //延时程序{unsigned int j,i;for(i=0;i<k;i++)for(j=0;j<150;j++);}main(){while(1) //无限循环{if(K1!=0&&K0!=0&&K2!=0&&K3!=0 &&K4!=0) //开关都没有按下地情况 {led0=1; led1=1;led2=1;led3=0;delay1ms(500);led0=1;led1=1;led2=0;led3=1;delay1ms(500);led0=1;led1=0;led2=1;led3=1;delay1ms(500);led0=0;led1=1;led2=1;led3=1;delay1ms(500);led0=1;led1=0;led2=1;led3=1;delay1ms(500);led0=1;led1=1;。

基于单片机的广告灯设计__论文

基于单片机的广告灯设计__论文

摘要随着改革的不断深入,社会主义市场经济的不断繁荣和发展,大中小城市都在进行亮化工程,通常都是利用广告流水灯来实现这一目的。

广告灯的亮灭、闪烁时间及流动方向等均可以通过单片机来达到控制的要求。

本设计是通过AT89C52单片机控制由35个LED组成的“XYSF”四个字母从左到右依次点亮然后花样闪烁循环,实现了广告灯的花样变化。

本文介绍了由AT89C52集成块实现的控制电路,并给出了具体的硬件电路和相应的源程序。

由于AT89C52集成块编程实现的控制电路可靠性、灵活性高,使用范围广,特别适合中小城市广告灯的应用。

本控制系统结构简单、成本低、功能可靠、可移植性强,通过程序的变化,可以实现灵活多样的流水显示方案。

通过单片机的控制,我们可以把城市的夜晚装饰的更漂亮。

关键词:广告灯;AT89C52;LEDWith the deepening of the reform, the increasing prosperity of the socialist market economy and the development of cities and towns during the lighting project, usually advertising water lights to achieve this purpose. Bright advertising lights off, flashing time and the flow direction, all through the microcontroller to achieve the control requirements. This design is composed by 35 LEDs on AT89C52 XYSF four letters from left to right to light and then the pattern blinking cycle, the pattern changes in the advertising lights. This article describes the control circuit, realized by AT89C52 Manifold and specific hardware circuit and the corresponding source code. Because the AT89C52 Manifold programming of the control circuit reliability, high flexibility, the use of a wide range, especially for small and medium-sized cities the application of the advertising lights. The control system is simple structure, low cost, reliable functionality, portability can be achieved through changes in the program, flexible water display. Through the control of the microcontroller, the night decoration of the city more beautiful.Keywords:advertising light; on AT89C52; the LEDTOC \o "1-3" \h \u HYPERLINK \l _Toc12983 摘要 PAGEREF _Toc12983 错误!未定义书签。

基于单片机的广告彩灯

基于单片机的广告彩灯

目录1.引言 (1)2.关于单片机 (1)2.1.单片机及本系统所用的AT89C51单片机介绍 (1)2.2.单片机的分类 (2)2.3.单片机的发展与应用 (2)2.4.广告彩灯介绍 (2)3.系统设计 (3)3.1.设计要求 (3)3.1.1硬件电路设计 (3)3.1.2软件设计 (3)3.2.总体设计方案 (3)3.3.系统简要原理介绍 (4)4.设计软件及关键元器件简单 (4)4.1.KEIL简介 (4)5.各模块显示原理 (5)5.1.广告彩灯显示电路原理 (5)5.2.点阵LCD液晶显示屏原理 (5)5.3.控制电路原理 (6)5.4.晶体振荡与复位电路设计 (6)5.5.仿真器上电路原理 (6)5.5.1中断原理 (6)5.5.2数据串并传输原理 (6)5.5.3 LED数码显示原理 (7)5.5.4彩灯显示原理 (7)5.5.5键盘扫描原理 (8)6.软件设计 (8)6.1.主程序流程图 (8)6.2.发光二极管显示流程图 (9)6.3.LED八段数码管显示流程图 (10)6.4.键盘扫描流程图 (11)6.5.点阵LCD液晶显示屏程序流程图 (12)7.调试及性能分析 (12)7.1.实验器材及硬件连线 (12)7.2.软件运行 (12)7.3.实验效果显示 (12)8.总结 (14)附录一元器件清单一览表 (15)附录二程序清单 (15)参考文献 (30)1.引言随着人们生活环境的不断改善和美化,在许多场合可以看到广告彩灯。

LED广告彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。

基于单片机的广告彩灯是利用单片机来控制彩灯以致达到广告的效果。

自20世纪80年代后期开始,随着LED制造技术的不断完善,在国外得到了广泛的应用。

在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,广告彩灯的出现正好适应了这一市场形势,因而在广告彩灯的设计制造技术与应用水平上都得到了迅速的提高。

51单片机20个实验,代码详细之欧阳道创编

51单片机20个实验,代码详细之欧阳道创编

第一章单片机系统板说明一、概述单片机实验开发系统是一种多功能、高配置、高品质的MCS-51单片机教学与开发设备。

适用于大学本科单片机教学、课程设计和毕业设计以及电子设计比赛。

该系统采用模块化设计思想,减小了系统面积,同时增加了可靠性,使得单片机实验开发系统能满足从简单的数字电路实验到复杂的数字系统设计实验,并能一直延伸到综合电子设计等创新性实验项目。

该系统采用集成稳压电源供电,使电源系统的稳定性大大提高,同时又具备完备的保护措施。

为适应市场上多种单片机器件的应用,该系统采用“单片机板+外围扩展板”结构,通过更换不同外围扩展板,可实验不同的单片机功能,适应了各院校不同的教学需求。

二、单片机板简介本实验系统因为自带了MCS-51单片机系统,因此没有配置其他单片机板,但可以根据教学需要随时配置。

以单片机板为母板,并且有I/O接口引出,可以很方便的完成所有实验。

因此构成单片机实验系统。

1、主要技术参数(1)MSC-51单片机板板上配有ATMEL公司的STC89C51芯片。

STC89C51资源:32个I/O口;封装DIP40。

STC89C51开发软件:KEIL C51。

2、MSC-51单片机结构(1)单片机板中央放置一块可插拔的DIP封装的STC89C51芯片。

(2)单片机板左上侧有一个串口,用于下载程序。

(3)单片机板的四周是所有I/O引脚的插孔,旁边标有I/0引脚的脚引。

(4)单片机板与各个模块配合使用时,可形成—个完整的实验系统。

三、母板简介主要技术参数(1)实验系统电源实验系统内置了集成稳压电源,使整个电源具有短路保护、过流保护功能,提高了实验的稳定性。

主板的右上角为电源总开关,当把220V交流电源线插入主板后,打开电源开关,主板得电工作。

为适用多种需要,配置了+5V,+12V,—5V电压供主板和外设需要,通过右上角的插针排和插孔输出到外设。

此外,还设有螺旋保险插孔保护实验箱。

(2)RS232接口RS232接口通过MAX232芯片实现与计算机的串行通讯,通过接口引出信号。

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

开动脑筋,运用多种方法,不断优化自己的程序。

想想用各种不同方法来实现同一功能。

这是一个练习和提高的过程,一个问题,你解决了,那么你再想想,能不能换种写法,也可以实现同一功能,或者说,你写出来的代码,能不能再精简一点,让程序执行效率更高,这个过程,就是一个进步的过程。

很多知识和经验的获得,并不是直接写在书让你看就可以得到的,需要自己去实践,开动脑筋,经验才能得到积累,编程水平才能有所提高。

看别人的代码,学习人家的思路。

这个在学习初期是很有用,通过看别人的代码,特别是有多年编程经验的人写出的具有一定水平的代码,可以使自己编程水平得到迅速的提高,同时,也可以结合别人的编程手法,与自己的想法融合在一起,写出更高水平的代码,从中得到进步。

但要注意,切忌将学习变成抄袭,更不是抄袭完了就认为自己学会了,这样做只会使你退步。

...
5.广告灯(利用取表方式)
1.实验任务
利用取表的方法,使端口P1做单一灯的变化:左移2次,右移2次,闪烁2次(延时的时间0.2秒)。

2.电路原理图
图4.5.1
3.系统板上硬件连线
把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”
区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。

4.程序设计内容
在用表格进行程序设计的时候,要用以下的指令来完成
(1).利用MOV DPTR,#DA TA16的指令来使数据指针寄存器指到表的开头。

(2).利用MOVC A,@A+DPTR的指令,根据累加器的值再加上DPTR的值,就可以使程序计数器PC指到表格内所要取出的数据。

因此,只要把控制码建成一个表,而利用MOVC工,@A+DPTR做取码的
操作,就可方便地处理一些复杂的控制动作,取表过程如下图所示:
5.程序框图
图4.5.2
6.汇编源程序
ORG 0
START: MOV DPTR,#TABLE
LOOP: CLR A
MOVC A,@A+DPTR
CJNE A,#01H,LOOP1
JMP START
LOOP1: MOV P1,A
MOV R3,#20
LCALL DELAY
INC DPTR
JMP LOOP
DELAY: MOV R4,#20
D1: MOV R5,#248
DJNZ R5,$
DJNZ R4,D1
DJNZ R3,DELAY
RET
TABLE: DB 0FEH,0FDH,0FBH,0F7H
DB 0EFH,0DFH,0BFH,07FH
DB 0FEH,0FDH,0FBH,0F7H
DB 0EFH,0DFH,0BFH,07FH
DB 07FH,0BFH,0DFH,0EFH
DB 0F7H,0FBH,0FDH,0FEH
DB 07FH,0BFH,0DFH,0EFH
DB 0F7H,0FBH,0FDH,0FEH
DB 00H, 0FFH,00H, 0FFH
DB 01H
END
7.C语言源程序
#include <A T89X51.H>
unsigned char code table[]={0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f,
0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f,
0x7f,0xbf,0xdf,0xef,
0xf7,0xfb,0xfd,0xfe,
0x7f,0xbf,0xdf,0xef,
0xf7,0xfb,0xfd,0xfe,
0x00,0xff,0x00,0xff,
0x01};
unsigned char i;
void delay(void)
{
unsigned char m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
void main(void)
{
while(1)
{
if(table[i]!=0x01)
{
P1=table[i];
i++;
delay();
}
else
{
i=0;
}
}
}。

相关文档
最新文档