精华内容
下载资源
问答
  • 彩灯编程实例

    2016-01-20 22:01:01
    彩灯循环实例,利用循环指令编写,如有错误,敬请大家看后批评指正
  • 如何用汇编语言写一个循环彩灯的程序,采用定时器方式1工作关注:120答案:2信息版本:手机版解决时间 2019-01-09 23:07遮云壑2019-01-09 14:42由89C51内部定时器1按方式1工作,即作为16位定时器使用,每0.05秒钟T1...

    如何用汇编语言写一个循环彩灯的程序,采用定时器方式1工作

    关注:120  答案:2  信息版本:手机版

    解决时间 2019-01-09 23:07

    遮云壑

    2019-01-09 14:42

    由89C51内部定时器1按方式1工作,即作为16位定时器使用,每0.05秒钟T1溢出中断一次。P1口的P1.0~P1.7分别接发光二极管的L1~L8。要求编写程序模拟一循环彩灯。彩灯变化花样可自行设计。例程给出的变化花样为:①L1、L2、…L8依次点亮;②L1、L2、…L8依次熄灭;③L1、L2、…L8全亮、全灭。各时序间隔为0.5秒。让发光二极管按以上规律循环显示下去。

    最佳答案

    詩光轨車

    2019-01-09 16:01

    ORG 0000H

    LJMP MAIN

    ORG 000BH

    LJMP T0ISR

    ORG 0030H

    MAIN:

    MOV TMOD,#01H

    MOV TH0,#HIGH(65536-50000)

    MOV TL0,#LOW(65536-50000)

    SETB TR0

    SETB ET0

    SETB EA

    MOV R2,#0

    SJMP $

    T0ISR:

    CLR TR0

    MOV TH0,#HIGH(65536-50000)

    MOV TL0,#LOW(65536-50000)

    SETB TR0

    MOV A,R0

    CJNE A,#18,T001

    MOV R0,#0

    T001:

    MOV DPTR,#LEDTAB

    MOVC A,@A+DPTR

    MOV P1,A

    INC R0

    RETI

    LEDTAB:

    DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H

    DB 80H,0C0H,0E0H,0F0H,0F8H,0FCH,0FEH,0FFH

    DB 00H,0FFH

    END

    全部回答

    1楼夜风逐马

    2019-01-09 17:27

    unsigned char lights = 0; //lights到各位分别表示p1.0~p1.7

    int i=0;

    while (1)

    {

    //①l1、l2、…l8依次点亮

    lights = 0x01;

    for (i=0; i<7; i++)

    {

    delay(500);

    lights = lights << 1;

    }

    delay(500);

    //②l1、l2、…l8依次熄灭

    lights = 0xfe;

    for (i=0; i<7; i++)

    {

    delay(500);

    lights = (lights << 1) + 0x01;

    }

    delay(500);

    //③l1、l2、…l8全亮

    lights = 0xff;

    delay(500);

    //全灭

    lights = 0x00;

    delay(500);

    }

    我要举报

    如以上问答内容为色情/暴力/低俗/不良/侵权等信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

    大家都在看

    推荐资讯

    展开全文
  • 编程彩灯设计

    2015-04-27 12:13:47
    这篇文档是对彩灯进行可编程设计,如果有这方面的要求的话,可以下载
  • 一堂-三彩灯PLC编程-课的信息化教学思考
  • 编程彩灯控制器的设计报告册,详细的说明了设计要求及设计过程
  • 设计一种新型的基于总线控制的可编程LED全彩灯光控制系统。系统由彩灯表演编辑部分(上位机)、网络控制部分(中继器)和LED单元控制部分(彩灯节点)组成,采用两级网络控制技术(CAN、 RS485总线传输),与目前...
  • 硬件课程设计, 可编程节日彩灯,计算机学院有这课程设计,用汇编语言
  • 通过对硬件编程,将图形、文字、动画存储在E2PROM中,通过计数器控制图形、文字、动画的地址,在利用显示矩阵显示出来。系统所显示的内容可反复循环,直至手动或加压清零,便可回到初始地址。
  • 数字电路课程设计,可编程彩灯控制器设计的电路图
  • 编程彩灯控制器课设
  • pdf格式的文件,控制器的设计参考文件,用EPROM构成的可编程彩灯控制器
  • <p>8个彩灯,一次只亮一个,从左到右,从右到左依次点亮 <p style="text-align:center"><img alt="" src="https://img-ask.csdnimg.cn/upload/1623027000078.jpg" /></p>  </p>
  • 本设计由于采用了力源公司的新一代BASIC单片机PS1016及高性价比的8位LED控制驱动器PS7219,从而可实现多路端口,并且能够对任一端口进行控制,可广泛用于大型霓虹灯、塑料霓虹灯以及彩灯的可编程控制,既可在产品上...
  • 循环彩灯编程设计,单片机实验基础篇中必须要做到的实验
  • 现有的霓虹灯以及彩灯控制器多是使用专用集成电路,其中固化多种闪烁方式,一般只提供4~16路输出。由于在大型霓虹灯中使用的控制器路数相当多,一般只能定做,代价高而且灵活性较差。本设计由于采用了力源公司的新...
  • 这是一个中小规模芯片做的可编程彩灯控制器 8*8的彩灯 用138扫描 EEPROM控制图幅 有选图功能
  • 前 言 电子技术课程设计是配合电子技术基础课程与实验教学的一个...现代生活中彩灯越来越成为人们的装饰品它不仅能美化环境渲染气氛还可用于娱乐场所和电子玩具中现以该课题为例进行分析与设计可编程彩灯控制电路很多
  • 设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告设计报告
  • 编程 LED 彩灯环 V3实物展示: 注意事项: Rainbow LED Ring V3的编程接口兼容FTDI Basic和USB Serial Light适配器。您可以选择这两款产品进行对你的LED彩灯进行编程。 将J1的Power choose焊盘,焊接到3.3v焊盘上...
  • 本课程设计的基本任务:是着重提高学生在数字集成电路应用方面的实践技能,树立严谨的科学作风,培养学生综合运用理论知识解决实际问题的能力。学生通过电路设计、安装、调试、整理资料等环节,初步掌握工程设计方法...
  • 电工电子实验课设选了这个题目,网上的文章找了两篇,但是原理图有点糊,主要是年代久远,因此在这里记录一下。 原理其实都相差不大,如下图 由上面原理图EEPROM接线可以看出,A3接地,只读取前8列二进制程序...

            电工电子实验课设选了这个题目,网上的文章找了两篇,但是原理图有点糊,主要是年代久远,因此在这里记录一下。

            原理其实都相差不大,如下图

             由上面原理图EEPROM接线可以看出,A3接地,只读取前8列二进制程序,因此我们烧录程序的时候只能在前八列烧录。

            当然,16列全部烧录也可以,把A4-A10地址端接线分别接到A3-A9即可。

    (以上两种仅适用于烧录64副图画,想要增加图画数量需要增加使用的地址端数量)

            以上原理图由Proteus作出,可以按上图接线仿真,但是要想对EEPROM烧录程序进行仿真,不能使用EEPROM2864,需改用27C64,使用STC-ISP软件生成想要的二进制文件,然后在Proteus中双击27C64芯片,然后弹出对话框如下图,然后单击红圈所圈,选择自己保存的二进制文件,即可进行仿真。

    特别注意:在实验过程中,8X8点阵的管脚并不是一排高电平,一排低电平,而是混在一起,需要自己用电表测导通模式进行测量。

     

            方法一:两个555定时器分别产生低,高频脉冲,低频控制画面数,高频刷新画面,因为课程设计要求用数码管10进制显示,那么在不增加其他元件的情况下EEPROM里面程序的存储位置可能要做一些改变,即按照10进制存取,即将程序写在0000-0009行,然后跳过000A-000F,接着在0010-0019行写程序,然后跳过001A-001F;

            方法二:不想用上面方法也可以改变电路,我同学就用第二片EEPROM记录10进制程序,然后读出来,这种方法整体上可以减少芯片数量,因此可以简化电路,也是可以参考的一种方法;

            方法三:在网上还看到一种方法,不用在烧录程序的时候刻意跳过某些行,但是元件数量会增加,即用74185芯片,但是我们实验的时候没有这个芯片而作罢。

    附加:STC-ISP软件

    链接:https://pan.baidu.com/s/1WiDGEJ404rzvZCTR7Sfohw
    提取码:783t
    下载链接如上

    如何生成二进制文件?

    1.打开软件,点击红圈内左右按钮,到程序文件菜单栏下,

     然后点击区域填充,弹出填充数据块对话框,起始地址不用改,结束地址看自己程序需要的行数灵活填写(注意是16进制)我填的是0x9900,填充数据默认是00,仿真或实验的时候即是8X8点阵全暗,实验室专用的烧录程序一般默认的填充数据是FF,即8X8点阵全亮。

     然后单击确定

    将想要烧录程序填入,数据填入完毕点击保存数据,选择自己可以找到的磁盘位置存储。

     

    展开全文
  • esp32 sdk编程利用rmt驱动ws2812七彩灯,实现彩虹渐变效果。对应的博客 https://blog.csdn.net/xh870189248/article/details/90897877
  • 演示文稿 演讲PPT 学习 教学 课件 医学 文件教学 培训课件
  • 注意,一定要先插上图5-2中所示的跳线帽(跳线帽分别用来连接红外和RGB彩灯) --实验编程 第一步:在扩展中输入网址 https://github.com/osoyoo/OSOYOO_IR添加OSOYOO_IR扩展包 第二步:搜索”neopixel”,添加 ...

    [20个项目学会BBC micro:bit编程]网易云课堂视频教程 点击这里

    --硬件连接

    注意,一定要先插上图5-2中所示的跳线帽(跳线帽分别用来连接红外和RGB彩灯)

     --实验编程

    第一步:在扩展中输入网址 https://github.com/osoyoo/OSOYOO_IR  添加OSOYOO_IR扩展包

    第二步:搜索”neopixel” ,添加 neopixel扩展包(如何添加上面已经讲过)

     

    程序网址:https://makecode.microbit.org/_bizcsPJ6j5cr

    --实验结果

      按CH-键RGB彩灯显示蓝色,按CH键RGB彩灯显示绿色,按CH+键RGB彩灯显示红色,按EQ键RGB彩灯全部关闭。

    注意事项:

      1.注意图6-3 红外遥控RGB彩灯程序实现右图中当开机时的设置,彩灯设置为RGB(GRB format)

      2.注意图6-3 红外遥控RGB彩灯程序实现右图中标数字7的地方提示的程序错误,忽略即可。

      3.不同遥控器的编码方式不一样,上图程序只适用于左图所示的遥控器,其它遥控器不适用。

      4.如果外接红外接收头,请注意该接收头需要的工作电压,有可能是5V。在3.3V下不工作。

    拓展知识:

      M-robot使用的big:bit配置的红外接收头为VS1838B,该红外接收头只有3跟针脚,无需额外的元器件,加电即可正常工作,非常适合初学者。其实,红外的解码是比较复杂的,初学者建议使用扩展包。关于micro:bit红外编码解码的更多知识,可以访问http://osoyoo.com/2018/09/18/micro-bit-lesson-using-the-ir-controller/(内容为英文)

     

    转载于:https://www.cnblogs.com/microcampus/p/10267925.html

    展开全文
  • 像素点内部包含了智能数字接口数据锁存信号整形放大驱动电路,还包含有高精度的内部振荡器和12V高压可编程定电流控制部分,有效保证了像素点光的颜色高度一致。 主要特点 ● 智能反接保护,...

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 

    【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)

    实验三十六:WS2812B智能外控集成LED四位彩灯模块(内置驱动IC)

     

    WS2813B

    是一个集控制电路与发光电路于一体的智能外控LED光源。其外型与一个5050LED灯珠相同,每个元件即为一个像素点。像素点内部包含了智能数字接口数据锁存信号整形放大驱动电路,还包含有高精度的内部振荡器和12V高压可编程定电流控制部分,有效保证了像素点光的颜色高度一致。

    主要特点

    ●    智能反接保护,电源反接不会损坏IC。

    ●    IC控制电路与LED点光源公用一个电源。

    ●    控制电路与RGB芯片集成在一个5050封装的元器件中,构成一个完整的外控像素点。

    ●    内置信号整形电路,任何一个像素点收到信号后经过波形整形再输出,保证线路波形畸变不会累加。

    ●    内置上电复位和掉电复位电路。

    ●    每个像素点的三基色颜色可实现256级亮度显示,完成16777216种颜色的全真色彩显示,扫描频率不低于400Hz/s。

    ●    串行级联接口,能通过一根信号线完成数据的接收与解码。

    ●    任意两点传传输距离在不超过5米时无需增加任何电路。

    ●    当刷新速率30帧/秒时,级联数不小于1024点。

    ●    数据发送速度可达800Kbps。

    ●    光的颜色高度一致,性价比高。

    数据协议采用单线归零码的通讯方式,像素点在上电复位以后,DIN端接受从控制器传输过来的数据,首先送过来的24bit数据被第一个像素点提取后,送到像素点内部的数据锁存器,剩余的数据经过内部整形处理电路整形放大后通过DO端口开始转发输出给下一个级联的像素点,每经过一个像素点的传输,信号减少24bit。像素点采用自动整形转发技术,使得该像素点的级联个数不受信号传送的限制,仅仅受限信号传输速度要求。

    LED具有低电压驱动,环保节能,亮度高,散射角度大,一致性好,超低功率,超长寿命等优点。将控制电路集成于LED上面,电路变得更加简单,体积小,安装更加简便。

    应用领域
    ●     LED全彩发光字灯串,LED全彩模组, LED全彩软灯条硬灯条,LED护栏管
    ●   LED点光源,LED像素屏,LED异形屏,各种电子产品,电器设备跑马灯等
     

    只需要一个数字口就可以几乎无限级联的全彩RGB LED( 我这里是四位的模块)

     

    四位模块电原理图

    模块引脚
    VCC---这个引脚需要由一个5V-7V的直流电源接入。电压过高(7V)的话会烧毁LED,电压太低(5V)的话则会造成亮度过低,甚至造成LED不工作。

    GND---公共引脚,接地,即接电源的负极。

    IN---微控制器(或者是另外一个WS2812)的数据从这个引脚传入LED。

    OUT---数据从这里输出给下一级的WS2812,如果这个WS2812是最后一级,则可直接悬空此引脚。

    下载WS2812驱动库Adafruit_NeoPixel,有二链接;
    https://github.com/adafruit/Adafruit_NeoPixel
    https://www.tuicool.com/articles/IbaAJbE

    好像需要三个库,以适应不同情况下的使用
    Adafruit_GFX
    Adafruit_NeoPixel
    Adafruit_NeoMatrix

    解压缩每个库,从文件夹名称中删除“-master”并将它们移动到Arduino库文件夹libraries里面。重新启动Arduino IDE以加载库。

    /*
    
    【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
    
    实验三十六:WS2812B智能外控集成LED四位彩灯模块(内置驱动IC)之一
    
    第一个实验:一只LED的呼吸灯
    
    */
    
     
    
    #include <Adafruit_NeoPixel.h>
    
    #define PIN 6
    
    #define MAX_LED 1
    
    #define ADD true
    
    #define SUB false
    
     
    
    int val = 0;
    
    boolean stat = ADD;
    
     
    
    Adafruit_NeoPixel strip = Adafruit_NeoPixel( MAX_LED, PIN, NEO_RGB + NEO_KHZ800 );
    
     
    
    void setup(){
    
      strip.begin();
    
      strip.show();
    
    }
    
     
    
    void loop(){
    
      uint32_t color = strip.Color(val, val, val);
    
      strip.setPixelColor(0, color);
    
      
    
      if(val>=235)
    
        stat = SUB;
    
      if(val<=0)
    
        stat = ADD;
    
      
    
      strip.show();
    
      delay(15);
    
      if(stat==SUB) val --;
    
      else if(stat==ADD) val++;
    
    }
    /*
    
    【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
    
    实验三十六:WS2812B智能外控集成LED四位彩灯模块(内置驱动IC)之二
    
    第二个实验:四只LED轮流全彩快闪
    
    */
    
     
    
    #include <Adafruit_NeoPixel.h>
    
     
    
    #define PIN 6
    
    #define MAX_LED 4
    
     
    
    #define ADD true
    
    #define SUB false
    
     
    
    int val = 0;
    
    boolean stat = ADD;
    
     
    
    Adafruit_NeoPixel strip = Adafruit_NeoPixel( MAX_LED, PIN, NEO_RGB + NEO_KHZ800 );
    
     
    
    void setup()
    
    {
    
      strip.begin();           
    
      strip.show();           
    
    }
    
     
    
    void loop()
    
    {
    
      uint8_t i,a=0;                                        
    
      uint32_t color = strip.Color(0, 100, 255);        
    
      while(a<10)
    
      {
    
          for(i=0;i<9;i++)
    
          {
    
            if(i==a) strip.setPixelColor(i, color);     
    
            else strip.setPixelColor(i, 0);             
    
          }
    
           strip.show();                                
    
           delay(30);                                   
    
           a++;                                         
    
      }
    
    }
    
    /*
    
    【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
    
    实验三十六:WS2812B智能外控集成LED四位彩灯模块(内置驱动IC)之三
    
    第三个实验:循序点亮四只绿色光LED
    
    */
    
     
    
    #include <Adafruit_NeoPixel.h>
    
    #ifdef __AVR__
    
    #include <avr/power.h>
    
    #endif
    
     
    
    #define PIN            6
    
    #define NUMPIXELS      4
    
     
    
    Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
    
     
    
    int delayval = 500; 
    
     
    
    void setup() {
    
     
    
    #if defined (__AVR_ATtiny85__)
    
      if (F_CPU == 16000000) clock_prescale_set(clock_div_1);
    
    #endif
    
     
    
      pixels.begin(); 
    
    }
    
     
    
    void loop() {
    
     
    
      for(int i=0;i<NUMPIXELS;i++){
    
     
    
        pixels.setPixelColor(i, pixels.Color(0,150,0)); 
    
     
    
        pixels.show(); 
    
     
    
        delay(delayval); 
    
     
    
      }
    
    }

    实现同一效果,至少有三种编程方式,代码+图形+仿真,可以互为补充,互相配合

     

    展开全文
  • mPython是一款非常专业的图形...Microbit、音乐、彩灯、引脚、无线广播、硬件扩展等命令,这些命令都是中文,所以使用就简单得多了,对于不会英文的朋友来说这款软件可以帮助你更好学习编程,更快知道命令执行的方式...
  • --实验编程 第一步:添加扩展板,搜索neopixel即可找到 第二步:熟悉neopixel扩展包 程序网址:https://makecode.microbit.org/_7bP9zddRFAjJ --实验结果  4个RGB同时显示:RGB0显示红色、RGB1显示蓝色...
  • 题目 数据 3 RYBGRYBGR !RGYB !!!...这个题目的要求注定给的字符串任取四个相邻的子字符串,RYBG各占据一个,于是我们可以遍历一遍字符串来看看RYBG对应的在哪个位次,然后mod4可以得到对应的第一次出现位置//注意可以...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 910
精华内容 364
关键字:

彩灯编程