Matlab编写摩斯代码,以摩斯电码为例为 Arduino 编写库

d851c1e5bf7d550d02f143e379074025.png

下面是一个简单的莫斯电码,使用Pin13 连接的LED 显示出来。

下面的代码是个简单的莫斯代码,运行的时候,会在Pin13 引脚的LED上显示SOS。

int pin = 13;

void setup()

{

pinMode(pin, OUTPUT);

}

void loop()

{

dot(); dot(); dot();

dash(); dash(); dash();

dot(); dot(); dot();

delay(3000);

}

void dot()

{

digitalWrite(pin, HIGH);

delay(250);

digitalWrite(pin, LOW);

delay(250);

}

void dash()

{

digitalWrite(pin, HIGH);

delay(1000);

digitalWrite(pin, LOW);

delay(250);

}

dot() 和 dash() 实际的执行闪烁LED指示灯。

头文件的核心是由库中的每个函数的一条线,在一个类中,以及任何需要用到的变量:

class Morse

{

public:

Morse(int pin);

void dot();

void dash();

private:

int _pin;

};

头文件的格式如下:

#ifndef Morse_h

#define Morse_h

// the #include statment and code go here...

#endif

本实例中的头文件如下:

// Morse.h - Library for flashing Morse code.

// Created by David A. Mellis, November 2, 2007.

// Released into the public domain.

#ifndef Morse_h

#define Morse_h

#include "Arduino.h"

class Morse

{

public:

Morse(int pin);

void dot();

void dash();

private:

int _pin;

};

#endif

写 Morse.cpp 文件

// Morse.cpp - Library for flashing Morse code.

// Created by David A. Mellis, November 2, 2007.

//Released into the public domain.

#include "Arduino.h"

#include "Morse.h"

Morse::Morse(int pin)

{

pinMode(pin, OUTPUT);

_pin = pin;

}

void Morse::dot()

{

digitalWrite(_pin, HIGH);

delay(250);

digitalWrite(_pin, LOW);

delay(250);

}

void Morse::dash()

{

digitalWrite(_pin, HIGH);

delay(1000);

digitalWrite(_pin, LOW);

delay(250);

}

主程序中,如下

#include

Morse morse(13);

void setup()

{

}

void loop()

{

morse.dot(); morse.dot(); morse.dot();

morse.dash(); morse.dash(); morse.dash();

morse.dot(); morse.dot(); morse.dot();

delay(3000);

}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值