2.串口通讯点亮LED灯

最简单的串口通讯
Serial.begin()//设置波特率
Serial.read()//读串口数据
Serial.println()//串口输出

#define led 13
int k;//接受指令
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);//设置串口通讯波特率
  pinMode(led,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  k=Serial.read();//将串口接收到的信息赋值给K;
  if(k=='A'){
    digitalWrite(led,HIGH);
    delay(1000);
    digitalWrite(led,LO
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个使用字节写入方式通过IIC通讯向24c02写入32个字节数据并读取后点亮LED的示例代码: ```c #include <Wire.h> #define I2C_ADDR 0x50 // 24c02设备地址 #define LED_PIN 13 // LED接口 void setup() { Wire.begin(); // 初始化I2C通讯 pinMode(LED_PIN, OUTPUT); // 初始化LED接口 digitalWrite(LED_PIN, LOW); // 关闭LED Serial.begin(9600); // 初始化串口通讯 } void loop() { byte data[32] = "Hello, world! This is a test."; // 要写入的32个字节数据 Wire.beginTransmission(I2C_ADDR); // 开始I2C通讯 for (int i = 0; i < 32; i++) { Wire.write(data[i]); // 将每个字节数据写入I2C总线 } Wire.endTransmission(); // 结束I2C通讯 delay(1000); // 等待1秒钟 byte readData[32]; // 用于存储读取到的32个字节数据 Wire.requestFrom(I2C_ADDR, 32); // 请求从I2C总线读取32个字节数据 int i = 0; while (Wire.available()) { readData[i++] = Wire.read(); // 将读取到的每个字节数据存储到数组中 } digitalWrite(LED_PIN, HIGH); // 点亮LED Serial.println((char*)readData); // 在串口上输出读取到的数据 delay(1000); // 等待1秒钟 } ``` 在上面的代码中,我们使用了Arduino自带的Wire库来实现IIC通讯。在 `setup()` 函数中,我们初始化了I2C通讯、LED接口和串口通讯。在 `loop()` 函数中,我们定义了一个要写入的32个字节数据的数组 `data[]`,并使用字节写入方式将其写入到24c02设备中。然后等待1秒钟后,我们使用 `requestFrom()` 函数从24c02设备中请求读取32个字节数据,并将读取到的数据存储到数组 `readData[]` 中。最后,我们点亮LED并在串口上输出读取到的数据。 需要注意的是,24c02设备地址应该根据具体的硬件连接情况来设置。如果你的24c02设备地址不是0x50,请将 `I2C_ADDR` 宏定义修改为正确的设备地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值