“控制每段”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
第18行: 第18行:
 
将数码管的<big>IN</big>接到Hub的4,5引脚。
 
将数码管的<big>IN</big>接到Hub的4,5引脚。
 
<br>
 
<br>
将Battery、Core、Hub堆叠在一起,通过MicroUSB数据线接入电脑。
+
将Battery、Core、Hub堆叠在一起,通过MicroUSB数据线接入电脑。初次使用请参考:[[AVR核心:Getting_started/zh|Getting Started]]。
 
[[File:Sensor_Number_setNumber_circuit.jpg|600px|left]]
 
[[File:Sensor_Number_setNumber_circuit.jpg|600px|left]]
 
<br>
 
<br>

2017年7月7日 (五) 02:06的版本

Sensor_Number库-控制每段


在下面的示例中,使用Core核心通过软串口引脚(4,5)发送数据控制一个数码管7段。

所需硬件



电路搭建

将数码管的IN接到Hub的4,5引脚。
将Battery、Core、Hub堆叠在一起,通过MicroUSB数据线接入电脑。初次使用请参考:Getting Started



代码

/*
    控制数码管7段,高电平点亮。
    数据低位开始对应a,b,c,d,e,f,g
    
       a
     ————-
 f |       | b
   |   g   |
     ————-
 e |       | c
   |       |
     ————-
       d
    
    电路:
    * 数码管接到核心的4,5引脚

    注意:
    Core的A6,A7接口不能用于软串口控制。
    控制段时不能直接控制点,只能通过setPoint()函数来控制点。

    2017年7月5日修改
    By YLB

*/

#include "Microduino_Number.h"

#define NUM 4
#define LIGHT 255

SoftwareSerial mySerial(4, 5);   // RX, TX
NumberLED LED(NUM, &mySerial);  //使用软串口

//NumberLED LED(NUM, &Serial); //使用硬串口0,1

//控制段数据,从低位开始对应a,b,c,d,e,f,g
byte num_data[7] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40};

void setup() {
  LED.begin();               //初始化彩灯
}

void loop() {
  for (uint8_t i = 0; i < 7; i++)
  {
    LED.setSeg(0, num_data[i], LIGHT);    //点亮段
    LED.show();                          //显示
    delay(500);               //切换显示之间时间间隔,单位毫秒
  }
}


相关案例