当前位置:文档之家› 呼吸灯单片机程序

呼吸灯单片机程序

呼吸灯单片机程序
呼吸灯单片机程序

呼吸灯单片机报告

本次实验中的程序实现的功能是通过51系列的单片机,实现数码管由暗变亮,由亮变暗的闪烁过程。

#include

#define wave_port P1

#define uint unsigned int

#define uchar unsigned char

sbit led_port=P2^0 ;

uint counter;

uint h;

void main()

{

uint main_i;

counter=0;

TMOD=0x01; //1MS 65536-1000

TH0=0XFC;

TL0=0X18;

EA=1;

ET0=1;

TR0=1;

h=0;

while(1)

{if(h<=20)

{h++;}

If(h==20)

{for(h=20;h>=0;h--)}

}

}

void timer0_int(void) interrupt 1 //中断服务程序{

TH0=0XFC;

TL0=0X18;

counter++;

if(counter<=h)

{

wave_port=0xff;

}

else

{

wave_port=0x00;

}

if(counter==10)

{

counter=0;

}

}

}

总结

经过本次单片机的实验,使我们小组的每个成员对单片机编程的方式方法有了更深一步的认识。我们通过更具体的学习,和老师的帮助下,我们对单片机的设计有了更深的体会。

LED呼吸灯C51源程序

* 【使用说明】: 晶振为11.0592M 利用定时器控制产生占空比可变的PWM 波 按K3,PWM值增加,则占空比减小,LED 灯渐亮 按K4,PWM值减小,则占空比增加,LED 灯渐暗 当PWM值增加到最大值或减小到最小值时,蜂鸣器将报警 ******************************************************************************* ***/ #include #include sbit K1 =P3^4 ; //PWM值增加键 sbit K2 =P3^5; //PWM值减少键 sbit BEEP =P0^4; //蜂鸣器 unsigned char PWM=0x7f ; //赋初值 void Beep(); void delayms(unsigned char ms); void delay(unsigned char t); /*********************************************************/ void main() { P1=0xff; TMOD=0x21 ; TH0=0xfc ; //1ms延时常数 TL0=0x66 ; //频率调节 TH1=PWM ; //脉宽调节 TL1=0 ; EA=1; ET0=1; ET1=1; TR0=1 ; while(1) { do{ if(PWM!=0xff) {PWM++ ;delayms(10);} else Beep() ;

} while(K1==0); do{ if(PWM!=0x02) {PWM-- ;delayms(10);} else Beep() ; } while(K2==0); } } /*********************************************************/ // 定时器0中断服务程序(频率) /*********************************************************/ void timer0() interrupt 1 { TR1=0 ; TH0=0xfc ; TL0=0x66 ; TH1=PWM ; TR1=1 ; P1=0x00 ; //启动输出 } /*********************************************************/ // 定时器1中断服务程序(脉宽) /*********************************************************/ void timer1() interrupt 3 { TR1=0 ; P1=0xff ; //结束输出 } /*********************************************************/ //蜂鸣器子程序 /*********************************************************/ void Beep() { unsigned char i ; for (i=0 ;i<100 ;i++) { delay(100) ;

C51单片机实行流水灯程序

#include #define LEDPort P1 unsigned char LED01_[9]= {0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,}; //方式0,方式1灯开关数组。unsigned char LED23_[5]= {0xFF,0x7E,0xBD,0xDB,0xE7}; // 方式2,方式3灯开关数组。 unsigned char LED4_[16]={0XFF,0X7F,0X3F,0X1F,0X0F,0X07,0X03,0X01,0X00,0X01,0X03,0X07,0X0f,0X1 f,0X3f,0X7f}; //方式4 unsigned char LED56_[8]={0XFF,0X3F,0X9F,0XCF,0XE7,0XF3,0XF9,0XFC}; unsigned char LED7_[]={0X0F,0XF0,0X33,0XCC,0X3C,0XC3,0XFF}; unsigned char TAB[9]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80};//定义断码表。 unsigned char i=0,j=9; //数据选择计数。 unsigned char Mode=0; //模式选择,默认为模式0。 unsigned char Count=1; //定时器中断计数。 unsigned char Delay=1; //延迟计数,通过改变改数值改变灯状态延迟时间。 //灯延迟时间=uc_Dalay*定时器溢出时间。 void main() { P2=0X3F; TMOD=0x01; //定时器0模式一。 TH0=0x3C; TL0=0xB0; //溢出时间:50ms。 TR0=1; //定时器0开启。 IT0=1; //外部中断0下降沿触发。 IT1=1; //外部中断1下降沿触发。

基于单片机的广告灯课程设计

单片机课程设计报告书 课题名称 基于单片机的广告灯课程设计 姓 名 学 号 院 系 专 业 指导教师 2011年 6月10日 ※ ※※※※※※※※ ※※ ※※ ※※ 2008级学生单片机 课程设计

基于单片机的广告灯课程设计 1、设计目的 本设计以AT89S51单片机为核心并用它来控制发光二极管双灯点亮循环的实验装置,用AT89S51单片机控制16个发光二极管发光,实现亮点从高到低位,从左到右,从单到双的循环移动。通过PROTEL软件设计、仿真,并能从中掌握通过软件控制发光二极管的思路和技巧。这次设计重点就在于利用单片机的知识去控制系统的运行。 2、设计要求 1)广告流水灯具有控制的功能。 2)设置一个系统使广告流水灯能够规律性和周期性的闪烁功能。 3)能够使其制动化和中断的功能。 3、设计总框图与方案 图3.1系统框图 本次课程设计是用流水灯的变化来表示不同的效果。主体选用AT89S51单片机使用多个发光二极管,通过编程来实现“流水灯”的花样变化。 4、硬件电路的设计 4.1系统电路图

图4.1 广告灯的硬件原理电路图 这个电路图中都为低电位亮,高电位灭即‘0’亮‘1’灭,就这样通过查表控制‘0’与‘1’的变化来控制发光二极管的亮灭。中断中也是如此,通过取反的手段来控制灯的亮灭。按照图4.1进行仿真,通过编程来实现“流水灯”的花样变化。AT89S51的P1、P3口分别接一组发光二极管,发光二极管另一端接电源输出,故为高电平。P1、P3口输出电平的变化控制二极管的发光情况。当P1、P3口的输出电平为低时,LED灯亮;反之,不亮。 5、软件设计 5.1 流程图与程序 图5.1程序总流程图 本实验流程中,用AT89S51单片机控制16个发光二极管发光。其中二极管一端接高电平,另一端接AT89S51芯片输出端口,通过控制各输出端口高低电平的变化决定二极管是否发光,从而使广告流水灯能够规律性和周期性地分别实现一个亮灯的左右移动、一个不亮灯的左右移动、灯的从两边到中间及单双等交替闪烁等花样变化。 6、系统仿真 在Proteus的ISIS 7.1sp2软件环境下画出电路原理图,接下来就是将设计的程序在Keil C51 μVision2开发集成环境上编译成机器语言,进入Proteus 的ISIS,鼠标左键点击菜单“Debug”,选中“use romote debuger monitor”,便可实现KeilC与Proteus连接调试。首先在Proteus中双击单片机AT89C51,将KeilC下编程生成的 .HEX文件导入到AT89C51中,可在Proteus中单击全速仿真运行按钮,进行现象的查看,能清楚地观察到芯片上每一个引脚的电平变化,红色代表高电平,蓝色代表低电平;如果现象不正确,则在KeilC中单步调试程序,并在Proteus观察现象,那一步不正确则对该段的程序进行修改,调试直到仿真完全成功为止。 图6.1 Proteus软件环境下画出电路原理图 图6.2效果一

最新51单片机花样呼吸灯程序

#include /*-----------定义单片机引脚--*/ sbit LED0=P1^0; sbit LED1=P1^1; sbit LED2=P1^2; sbit LED3=P1^3; sbit LED4=P1^4; sbit LED5=P1^5; sbit LED6=P1^6; sbit LED7=P1^7; void Delay(unsigned int t); //函数声明 unsigned int z,y; void main (void)//主函数 { unsigned int CYCLE=1000,PWM_LOW=0;//定义周期并赋值 while (1) //主循环 { /*--------整排LED灯呼吸---------*/ P1=0x00; Delay(1000); //加延时,可以看到熄灭的过程(下面程序同理) for(PWM_LOW=1;PWM_LOW0;PWM_LOW--) //与逐渐变亮相反的过程 { P1=0x00; //点亮LED Delay(PWM_LOW); P1=0xff; //熄灭LED Delay(CYCLE-PWM_LOW); //主循环中添加其他需要一直工作的程序,延时长度,600次循环中从599减至1 } /*--------第一颗LED灯呼吸---------*/ /* LED0=1; Delay(1000); for(PWM_LOW=1;PWM_LOW

呼吸灯课程设计

郑州科技大学 《数字电子技术》课程设计 题目LED 呼吸灯 学生姓名 专业班级 学号 院(系) 指导教师 完成时间 2013年 3 月13日

目录 1 课程设计目的 (1) 2 课程设计任务与要求 (2) 3 设计方案与论证 (4) 3.1 设计任务分析 (4) 3.2 设计电路 (4) 3.3 调试 (5) 4 设计原理及其功能 (6) 5 单元电路的设计 (7) 5.1 LED日光灯 (7) 5.2 电阻 (8) 5.3 电容 (8) 5.4 三极管 (9) 5.5 LM358 (11) 6 硬件的制作与调试 (13) 6.1 电路焊接 (13) 6.2 功能实现 (13) 6.3 外观 (13) 7 设计总结 (14)

参考文献 (16) 附录一:总体电路原理图 (17) 附录二:元器件清单 (18)

1 课程设计目的 电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养工程人员的素质和能力具有十分重要的作用。在电子信息类本科教学中,电子技术课程设计是一个重要的实践环节,它包括选择课题、电子电路设计、组装、调试和编写总结报告等实践内容。通过课程设计要实现以下两个目标:第一,让学生初步掌握电子线路的试验、设计方法。即学生根据设计要求和性能参数,查阅文献资料,收集、分析类似电路的性能,并通过组装调试等实践活动,使电路达到性能指标;第二,课程设计为后续的毕业设计打好基础。毕业设计是系统的工程设计实践,而课程设计的着眼点是让学生开始从理论学习的轨道上逐渐引向实际运用,从已学过的定性分析、定量计算的方法,逐步掌握工程设计的步骤和方法,了解科学实验的程序和实施方法,同时,课程设计报告的书写,为今后从事技术工作撰写科技报告和技术资料打下基础。

51单片机流水灯C语言源代码

#include #include #define uint unsigned int #define uchar unsigned char uchar z=50,e=0x00,f=0xff; uchar code table1[]={ 0x80,0xc0,0xe0,0xf0, 0xf8,0xfc,0xfe,0xff}; uchar code table2[]={ 0x7f,0x3f,0x1f,0x0f, 0x07,0x03,0x01,0x00}; uchar code table3[]={ 0x01,0x03,0x07,0x0f, 0x1f,0x3f,0x7f,0xff}; uchar code table4[]={ 0xe7,0xdb,0xbd,0x7e, 0xbd,0xdb,0xe7,0xff}; uchar code table5[]={ 0xe7,0xc3,0x81,0x00, 0x81,0xc3,0xe7,0xff}; uchar code table6[]={ 0x7e,0x3c,0x18,0x00, 0x18,0x3c,0x7e,0xff}; void delay(uchar); void lsd1(); void lsd2(); void lsd3(); void lsd4(); void lsd5(); void lsd6(); void lsd7(); void lsd8(); void lsd9(); void lsd10(); void lsd11(); void lsd12(); main() { while(1) { lsd1(); lsd2(); lsd3(); lsd4();

(完整版)51单片机流水灯程序

1.第一个发光管以间隔200ms 闪烁。 2. 8 个发光管由上至下间隔1s 流动,其中每个管亮500ms, 灭500ms 。 3. 8 个发光管来回流动,第个管亮100ms 。 4. 用8 个发光管演示出8 位二进制数累加过程。 5. 8 个发光管间隔200ms 由上至下,再由下至上,再重复一次,然后全部熄灭再以300ms 间隔全部闪烁 5 次。重复此过程。 6. 间隔300ms 第一次一个管亮流动一次,第二次两个管亮流动,依次到8 个管亮,然后重复整个过程。 7. 间隔300ms 先奇数亮再偶数亮,循环三次;一个灯上下循环三次;两个分别从两边往中间流动三次;再从中间往两边流动三次;8 个全部闪烁 3 次;关闭发光管,程序停止。 1 #include #define uint unsigned int sbit led 仁P"0; void delay(); void main() { while(1) { led1=0; delay(); led1=1; delay(); } } void delay() {

uint x,y; for(x=200;x>0;x--) for(y=100;y>0;y--); } #include #include #define uint unsigned int #define uchar unsigned char sbit p P1A0; uchar a; void delay(); void main() { a=0xfe; P1=a; while(1) { a=_crol_(a,1); delay(); P1=a; delay(); } } void delay() { uint b; for(b=55000;b>0;b--); } 3 #include #include #define uint unsigned int #define uchar unsigned char void delay() { uint x,y; for(x=100;x>0;x--) for(y=110;y>0;y--); } void main() { uchar a,i; while(1) a=0xfe; for(i=0;i<8;i++) { P1=a; delay(100); a=_crol_(a,1); } a=0x7f; for(i=0;i<8;i++) { P1=a; delay(100); a=_cror_(a,1);

基于单片机的广告灯设计

《单片机原理及应用》 课程设计 题目∶广告灯 院系∶机电工程系 专业班级∶机电一体化机电0911 姓名∶晓寒 学号∶21 指导教师∶沈全鹏 成绩∶ 2011年12 月日

目录 中文摘要 (2) 英文摘要 (2) 绪论 (3) 第一章设计思路.目的和方案的确定 (4) 1.1设计思路 (4) 1.2设计目的 (5) 1.3方案的确定 (6) 第二章主要元器件介绍 (7) 2.1 AT89S51 (7) 2.2发光二极管 (10) 2.3石英晶振 (11) 2.4蜂鸣器 (12) 第三章电路图.程序框图 (13) 第四章电路分析及原理 (1) 5 4.1电路分析 (15) 4.2电路原理 (17) 结论 (1) 8 参考文献 (1) 9

附录: C语言程序 (20) 中文摘要 随着改革的不断深入,社会主义市场经济的不断繁荣和发展,个大中小城市都在进行亮化工程。个人企业为宣传自己企业的形象和产品,均采用广告手法之一:流水灯来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的流水灯广告均可以见到,一种是采用霓虹灯管做成的各种形状和多种彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。这些灯的亮灭,闪烁时间及流动方向等均可以通过单片机来达到控制的要求. (关键字: 广告灯、AT89S51单片机、程序设计) English Abstract With the deepening of reform, the socialist market economy, increasing prosperity and development of cities during the months Xinhuanet lighting project. Individual companies to promote their corporate image and products are one of advertising practices: water lights to achieve this purpose. When we walk in the streets at night, the road on both sides of a great variety of water can see the lights all advertising, a is made of neon tubes of various shapes and a variety of color tubes, and the other for sunlight, such as a pipe or tube as the incandescent light source, language or reprovision a large poster advertising to achieve the effect of publicity. Out of these bright lights, flashing all the time and the flow direction can be achieved through the single-chip control. (Keyword: Advertisement lamp AT89S51Singlechip Program Design)

51单片机(呼吸灯)C语言版

基于单片机与PWM的呼吸灯设计 实训指导教师: 班级: 设计人姓名: 设计日期: 设计地点: 完成时间: 摘要

本设计是基于单片机的原理与接口设计,采用单片机I/O口,加以C 语言编程实现LED渐亮再渐暗类似人的呼吸一样的效果。 关键词 AT89C51,PWM(脉宽调制) 一、设计要求: 呼吸灯就是让LED灯的闪烁像呼吸一样,时呼时吸,时亮时暗,利用LED的余辉和人眼的暂留效应,看上去和人的呼吸一样。 二、设计原理: 用C语言编程实现PWM(脉宽调制)输出驱动LED,逐渐增加PWM的占空比从而实现LED模拟呼吸的过程,即渐亮再渐暗再渐亮再渐暗……如此往复,再利用LED的余辉和人眼的暂留效应,看上去就和人的呼吸一样。三、整体方案设计 8个LED按照顺序逐个实现呼吸效果。加以其他闪烁花样增加更炫彩的效果。 四、实验元件及器材 (1)元件: LED(发光二极管)8个 1KΩ电阻8个 1nf电容2个 晶振1个 AT89C51芯片1个

(2)器件:Atmega128开发板1块 计算机1台 五、硬件原理 (1)主电路:8个LED分别连接AT89C51的P1口,使用共阳方式,并加以1kΩ的电阻接入电源。 (2)时钟电路:外部时钟方式是使用外部振荡脉冲信号。

六、软件设计及系统仿真调试 (1)调试方法:利用keil软件进行C语言程序编写及调试,再利用Proteus 仿真软件进行仿真实验。 (2)调试过程所遇问题: 1、由于呼吸灯的程序在仿真软件Proteus中实现的效果不明显,很难辨别LED是否具有呼吸的效果。所以边用keil调试程序边用STC烧写软件直接写入开发板,从而很明显看出LED是否具有呼吸效果; 2、程序运行时,出现LED闪烁过快,由于人眼的暂留效应看似LED全部一直亮着,经调试,修改延时时间,实现呼吸效果。 七、结论与心得 在本次设计中,C语言程序在开发板中得以实现应有的功能。在调试过程中,发现很多问题都是由于不细心导致的,因此在以后的设计方案中,要集中精力,莫粗心大意。再者就是知识量的不足,虽然是一个小小的设计方案,但是查阅了很多相关资料,在日后,要多充足自己的知识量,保证C程序的编写质量。

模拟电子技术课程设计报告

郑州科技学院 模拟电子技术课程设计(作品) 题目基于LM358的呼吸灯设计 姓名廖兴仓 专业班级电气工程及其自动化四班 院(系)电气工程学院 学号2 0 1 5 4 7 1 2 9 指导老师亚民 完成时间2018年5月17日

目录 1课程设计的目的--------------------------- 1 2课程设计的基本要求----------------------- 1 3课程设计的步骤--------------------------- 2 3.1明确课程设计任务和要求-------------------------2 3.2方案选择-----------------------------------------------3 3.3单元电路设计、数计算和元器件的选择------3 3.4画出这整机电路图-----------------------------------4 3.5审图------------------------------------------------------5 3.6组装、焊接及调试-----------------------------------5 4设计方案与论证--------------------------- 5 4.1设计方案分析-----------------------------------------5 4.2设计电路-----------------------------------------------6 4.3调试------------------------------------------------------6 5设计原理及功能说明----------------------- 7 6单元电路的设计--------------------------- 7 6.1LED灯----------------------------------------------- 7 6.2电阻--------------------------------------------------- 8 6.3电容--------------------------------------------------- 8 6.4三极管----------------------------------------------- 10 6.5LM358------------------------------------------------ 10 7硬件的制作与调试-------------------------11 7.1电路焊接-------------------------------------------- 11 7.2功能实现-------------------------------------------- 11 7.3外观-------------------------------------------------11 8总结-----------------------------------11

(完整word版)51单片机流水灯

51单片机的流水灯控制 班级:100712 姓名:全建冲 学号:10071047

一、设计要求 用51单片机设计一个流水灯的控制方案,要求采用定时器定时,利用中断法控制流水灯的亮灭,画出电路图和程序流程图,写出程序代码以及代码注释。 二、电路原理图 原理图分析: 本原理图采用STC89S52单片机控制8个LED灯,其中8个LED灯的负极接单片机的P1端口,正极通过1KΩ排阻连接到电源上。原理图中还给出了晶振与复位端,以保证控制器的稳定工作。

三、程序流程图

四、程序代码及注解 1.非中断定时器控制 #include #include//包含了_crol_函数的头文件 #define uchar unsigned char #define uint unsigned int uint i=0; uchar a=0xfe; void main() { TMOD=0x01;//设置工作方式为定时器0,16位手动重装初值 TH0=(65536-46080)/256;//50毫秒定时赋初值 TL0=(65536-46080)%256; TR0=1;//启动定时器0 while(1) { If(TF==1)//读溢出标志位 { TH0=(65536-46080)/256;//重新赋初值 TL0=(65536-46080)%256;

i++; if(i==10)//500毫秒定时 { i=0; P1=a;//P1端口赋值 a=_crol_(a,1);//循环左移 } TF=0;//清除定时器溢出标志 } } } 程序分析:本程序采用非中断定时器法控制流水灯,核心语句在于读取标志位TF位,TF为定时器溢出标志位,溢出时硬件自动置一,所以循环读取标志位以判断定时器是否溢出,而每次溢出需要手动清零,否则定时器无法再次溢出,利用标志i读取10次即可达到500毫秒的定时。另外需要注意的是单片机晶振为11.0592MHz,所以计时一个数的时间为12/11.0592=1.085us,故定时50毫秒的计数为50000/1.085=46080。 2.中断定时器控制 #include

基于-单片机的节日彩灯设计

单片机课程设计 题目: 院(系): 专业: 学号: 姓名: 指导教师:

摘要 彩灯控制器在我们的日常生活中有着重要的运用,如广告牌的设计和节日彩灯的设计都能运用到它的原理。本次报告中设计的花样彩灯控制器是其中较简单的,但这是进行复杂设计的基础。 查阅相关资料,用简单的输入输出端口等硬件,结合实际彩灯的亮灭控制过程进行设计。利用键盘上的灯实现灯的各种形式的变换,使彩灯变换的样式更多,克服了节日彩灯变换样式单调的缺点,使节日彩灯朝着变换多种多样的方式发展。 关键词:可编程节日彩灯;循环;控制高低电平;实现对彩灯的控制

目录 目录 引言 (4) 1、设计目的与要求 (5) 2、设计总体方案 (5) 3、模块电路的设计 (7) 4、独立设计部分 (10) 5、焊接制作与调试结果及其分析 (12) 6、设计过程中的问题及其解决方案 (13) 7、心得体会 (13) 8、改进工作展望 (14) 参考文献 (14) 附录一 (15) 附录二 (17) 附录三 (19) 1 设计目的与要求 1.1引言 在现代生活中,彩灯作为一种景观,安装在建筑物的适当地方。一是作为装饰增添

节日气氛,二是有一种广告宣传的作用:用在舞台上增强晚会灯光效果。 彩灯控制器在我们的日常生活中有着重要的运用,如广告牌的设计和节日彩灯的设计都能运用到它的原理。本次报告中设计的花样彩灯控制器是其中较简单的,但这是进行复杂设计的基础。 数码管是一种半导体发光器件,其基本单元是发光二极管。通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字能够显示时间、日期、温度等所有可用数字表示的参数。由于它的价格便宜、使用简单,在电器特别是家电领域应用极为广泛,空调、热水器、冰箱等等。绝大多数热水器用的都是数码管,其他家电也用液晶屏与荧光屏。 可编程节日彩灯打破常规彩灯闪烁固定变化的现状,可根据人们不同的意愿进行编程设计出想要的变换的色彩效果。查阅相关资料,用简单的输入输出端口等硬件,结合实际彩灯的亮灭控制过程进行设计。利用键盘上的灯实现灯的各种形式的变换,使彩灯变换的样式更多,克服了节日彩灯变换样式单调的缺点,使节日彩灯朝着变换多种多样的方式发展。 1.2设计目的 通过课程设计使我们更进一步掌握微机原理与应用课程的有关知识,通过查阅资料,阅读程序,提高设计程序的能力及动手能力,使编程水平有一定的提高,同时也会提高我们通过动手进行硬件设计及程序设计从而提高解决实际问题的能力。 1.3实验要求———————————— 1. 用16盏以上的LED小灯,实现至少4种彩灯灯光效果(不含全部点亮,全部熄灭; 2. 手动模式与自动模式切换:设置一个按钮可以在自动模式和手动模式间切换; 3. 手动模式可以用输入按钮在几种灯光效果间切换; 4. 自动模式下自动在几种效果间切换的功能; 5. 可以通过按钮暂停彩灯效果,使小灯全亮并闪烁,再次按下相同按钮后继续之前的效果。 2 设计总体方案 2.1硬件设计的思路、原理、设计细节 用单片机最小系统控制彩灯电路用流水灯的方式实现彩灯自动闪烁,彩灯电路总共有32的LED共隐接法组成,彩灯电路有三个部分,八个LED组成“二”,十六个LED组成字母“G”,八个LED组成字母“O”。用P0口的P1.0、P1.1、P1.2、P1.3控制四个LED点亮或熄灭,P1.0、P1.1、P1.2、P1.3控制四个LED点亮或熄灭,用P1和P2控制字母“G”的点亮或熄灭,用P3控制字母“O”的点亮熄灭。 2.2、软件设计的思路、原理、设计细节 采用C语言编写控制程序,程序设计思路用流水灯先点亮“二”,然后再点亮字母“G”,最后点亮“O”。

51单片机PWM呼吸灯源程序

51单片机PWM-呼吸灯源程序 /** ************************************************* *************** * @file : main.c * @xu ran * @date : 2014年5月23日20:55:19 - 2014年5月23日22:32:12 * @version : V2.0 * @brief : PWM脉冲宽度调制技术实现呼吸灯 ************************************************* *************** * @attention * 实验平台 : 51hei开发板 * 单片机 : STC89C52RC MCU 晶振 : 11.0592 MHZ ************************************************* *************** */ #include //使用STC89C52库 /* 三八译码器74HC138 */ sbit ADDR3 = P1^3;

sbit ENLED = P1^4; sbit PWMOUT = P0^0; //LED0 /* PWM占空比 */ unsigned char code pwmTable[] = { 3, 5, 8, 11, 13, 16, 21, 24, 27, 30, 33, 36, 40, 45, 49, 53, 55, 57, 61, 65, 67, 69, 72, 75, 79, 82, 86, 89, 91, 93, 96, 99 }; // dc% /* PWM的高电平和低电平的定时器的重载值 */ unsigned char Highthr0, Hightlr0; unsigned char Lowthr0, Lowtlr0; /* 定时器T1计数装载值 */ unsigned char thr1, tlr1; /* PWM 频率计数值 */ unsigned long tmp = 0; /******************local function defines**************************/ void ConfigPWM(unsigned int fr, unsigned char dc); void ConfigTimer1(unsigned int xms); /************************************************

OPPO产品市场调查

市场营销课程设计报告 OPPO产品市场调查 (一)企业背景: OPPO公司是一家中国注册,集科研、制造和营销于一体的中型电子加工企业,公司主营:Hi-Fi音响,Hi-Fi DVD 播放机,高端家庭影院,高品质MP3/MP4 播放器、手机产品远销东南亚等市场。广东欧珀电子工业有限公司在2005年同时成立,公司先后在中国成功推出MP3、MP4播放器,并于2008年5月,正式推出手机产品,致力于打造高品质时尚数码行业的品牌,SONY和索尼爱立信是OPPO(欧珀)的目标。至今,OPPO产品的销售覆盖全球,公司多元化、国际化经营已初具规模。OPPO致力于向消费者提供高端品质数码产品,OPPO品牌全球注册,公司凭借雄厚的自主研发能力,在品质表现上力求完美,在产品造型设计上力求时尚精美,在功能操作上力求简洁易用。 作为NBA历史上最年轻的官方合作伙伴,OPPO对于追求现代生活方式的消费者,OPPO可以提供比其他品牌更高品质,可炫耀的数字产品,因为OPPO始终把产品的品质,以人为本的设计和产品的精美、和消费者享受到的自由、时尚的生活作为执著的追求。高品质是OPPO 最核心的市场竞争力,OPPO为消费者提供高品质产品的同时也传递了一种高雅,品味,浪漫的生活方式,所以成为NBA史上最年轻的官方合作伙伴。OPPO公司的宗旨 -- 品质:高品质就是公司的根本生存力和发展力,利用严格的质量控制体系,永远保持最核心的竞争力.。目标:我们的目标成为全球首屈一指的数码电子品牌。 OPPO公司也是目前国内数码行业的一大品牌,在MP4、MP3和手机行业成为消费者受欢迎的品牌。 核心价值:提供高品质的产品和服务,为人们创造更加美好的生活,做正确的事,但不仅做正确的是,更要做有意义有利于社会的事,建立一个更健康和更久远的企业。做事情的方式:维持严谨,平静的心态. 诚信:值得信赖的,并永远保持承诺,绝不欺骗消费者和企业的合作伙伴。 团队精神:和谐团队内部以及与商业合作伙伴。 对消费者:只提供高品质的产品和服务。 对员工:提供和谐和相互尊重的工作环境 对商业伙伴:提供公平和有价值和互利合作的平台。 对股东:使一个合理的利益远高于社会平均水平的投资。 (二)产品介绍: OPPO S33 OPPOs33为OPPO公司2009年推出的第一款新品MP4。S33为触屏单手触摸操作,3.0英寸、1600万高清高亮触摸屏,兼具便携性和操作性,首次推出情侣双色,以“Feel”(感触)、“Fun”(好玩)、“Free”(自由)的3F为设计理念,并在UI、影音、操作、功能等方面体现3f的精髓。 设计特点:S33采用竖向UI设计,多文件操作和按键音回馈,适合单手操作,滑动触摸可切换屏幕桌面。整机风格简约大方,底部加载一个触摸式呼吸灯按键,并可直接进入机器主菜单。G-sensor重 OPPO s33 力感应功能在S33上全新升级,支持甩动换歌,图片自动翻转,在音乐、视频界面进行横向操作时,自动切换到专辑封面横向展示界面和视频横向胶卷浏览模式。图片和电子书拥有同

AT89C51单片机的花样广告灯

物理与电子信息学院 课程设计Ⅳ 基于AT89C51单片机的花样彩灯仿真分析 姓名: 班级:电子科学与技术 学号: 指导老师: 时间:2011年1日6日

目录 内容摘要 (1) 关键词 (1) Abstract (1) 1绪论 (1) 2 系统设计 (2) 2.1 设计任务与要求 (2) 2.2 方案的选择与论证 (2) 3 系统硬件设计 (2) 3.1 控制器模块 (3) 3.2 按键模块 (5) 3.4 LED显示模块 (5) 3.5硬件元件清单 (6) 4软件设计与仿真 (6) 4.1主程序设计 (6) 4.3 仿真结果 (8) 4.4 系统调试 (9) 4.5 误差分析 (9) 结束语 (10)

内容摘要:随着电子技术的迅速发展,单片机得到了越来越多的应用。本设计用单片机89S51结合LED(发光二极管)制作了一个广告移动彩灯,它由一块89S51组成,通过逐次扫描其中一块的P2.0--P2.7口,从而依次实现彩灯轮流点亮、逐点点亮、间隔点亮。 关键词:LED彩灯;AT-89C51单片机;彩灯控制器 Abstract:Along with the electronic technology rapid development, the monolithicintegrated circuit obtained more and more many applications. Here Iused monolithic integrated circuit 89C51 to unify LED (light emitterdiode) to manufacture a belt music broadcast function advertisementmigration colored lantern with the loudspeaker, it was composed by two89C51, through gradually scanned together P3.0--P3.2 mouth, judgedwhether had the pressed key to press down, unified the port scanningand the pressed key scanning, thus realized the colored lantern tolighten, to lighten, the gap point by point in turn in turn lightens. Keywords: LED lantern; AT-89C51 single-chip microcomputer; Lantern controller 1绪论 近年来,彩灯对于美化、亮化城市有着不可轻视的重要工作。因此作为城市装饰的彩灯需求量越来越大,对与彩灯的技术和花样也越来越高。但传统的彩灯控制电路一般是由数字电路组成,这种彩灯控制器电路结构复杂、成本较高、功率损耗大,此外从功能效果上看,彩灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改进。而单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。LED彩灯具有成本低、发光纯度高、发光热量小、耗电量低、超长寿命的特点。所以利用单片机作LED彩灯控制,不仅是使控制花样、路数大大增加,成本也很低,而且对环境能源没有污染,有着很大的发展前景。本方案是一种基于AT-89C51单片机的彩灯控制方案,实现对LED彩灯的控制。主要以AT-89C51单片机作为主控核心与发光二极管、晶振、复位、电源等组成电路,利用软件编辑实现彩灯流水灯的效果。

最经典的51单片机经典流水灯汇编程序

单片机流水灯汇编程序设计 开发板上的8只LED为共阳极连接,即单片机输出端为低电平时即可点亮LED。 程序A: ;用最直接的方式实现流水灯 ORG 0000H START:MOV P1,#01111111B ;最下面的LED点亮 LCALL DELAY;延时1秒 MOV P1,#10111111B ;最下面第二个的LED点亮 LCALL DELAY;延时1秒 MOV P1,#11011111B ;最下面第三个的LED点亮(以下省略) LCALL DELAY MOV P1,#11101111B LCALL DELAY MOV P1,#11110111B LCALL DELAY MOV P1,#11111011B LCALL DELAY MOV P1,#11111101B LCALL DELAY MOV P1,#11111110B LCALL DELAY MOV P1,#11111111B ;完成第一次循环点亮,延时约0.25秒 AJMP START ;反复循环 ;延时子程序,12M晶振延时约250毫秒 DELAY: MOV R4,#2 L3: MOV R2 ,#250 L1: MOV R3 ,#250 L2: DJNZ R3 ,L2 DJNZ R2 ,L1 DJNZ R4 ,L3 RET END 程序B: ;用移位方式实现流水灯

ajmp main ;跳转到主程序 org 0030h ;主程序起始地址 main: mov a,#0feh ;给A赋值成11111110 loop: mov p1,a ;将A送到P1口,发光二极管低电平点亮 lcall delay ;调用延时子程序 rl a ;累加器A循环左移一位 ajmp loop ;重新送P1显示 delay: mov r3,#20 ;最外层循环二十次 d1: mov r4,#80 ;次外层循环八十次 d2: mov r5,#250 ;最内层循环250次 djnz r5,$ ;总共延时2us*250*80*20=0.8S djnz r4,d2 djnz r3,d1 ret end 51单片机经典流水灯程序,在51单片机的P2口接上8个发光二极管,产生流水灯的移动效果。 ORG 0 ;程序从0地址开始 START: MOV A,#0FEH ;让ACC的内容为11111110 LOOP: MOV P2,A ;让P2口输出ACC的内容 RR A ;让ACC的内容左移 CALL DELAY ;调用延时子程序 LJMP LOOP ;跳到LOOP处执行 ;0.1秒延时子程序(12MHz晶振)=================== DELAY: MOV R7,#200 ;R7寄存器加载200次数 D1: MOV R6,#250 ;R6寄存器加载250次数 DJNZ R6,$ ;本行执行R6次 DJNZ R7,D1 ;D1循环执行R7次 RET ;返回主程序

相关主题
文本预览
相关文档 最新文档