单片机第四章5 广告灯(利用取表方式)
单片机课程设计-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语言实验及实践教程第一章:硬件资源模块第二章: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单片机实验及实践系统板(以后简介系统板)集成多个硬件资源模块,每个模块各自可以成为独立的单元,也可以相互组合,因此,可以为不同阶层的单片机爱好者及单片机开发者提供不同的开发环境。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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;
}
}
}。