#include <LedControl.h> #include <SPI.h> LedControl lc = LedControl(12, 11, 10, 1); int smallHeart[8] = { 0b00011000, 0b01111110, 0b11111111, 0b11111111, 0b11111111, 0b01111110, 0b00111100, 0b00011000 }; int bigHeart[8] = { 0b00000000, 0b01100110, 0b11111111, 0b11111111, 0b11111111, 0b01111110, 0b00111100, 0b00011000 }; void displayHeart(int heart[]) { for (int i = 0; i < 8; i++) { lc.setRow(0, i, heart[i]); } } void setup() { lc.shutdown(0, false); lc.setIntensity(0, 8); lc.clearDisplay(0); displayHeart(smallHeart); } void loop() { delay(500); displayHeart(bigHeart); delay(500); displayHeart(smallHeart); lc.setCharSpeed(0, 'I', 250); lc.setString(0, "LOVE YOU"); delay(500); displayHeart(smallHeart); for (int i = 0; i < 2; i++) { displayHeart(bigHeart); delay(500); displayHeart(smallHeart); delay(500); } lc.setChar(0, 'I', 0, 0); displayHeart(bigHeart); lc.setChar(0, 'U', 1, 0); delay(500); for (int i = 0; i < 2; i++) { displayHeart(smallHeart); delay(250); displayHeart(bigHeart); delay(250); } lc.setCharSpeed(0, ' ', 250); lc.setCharSpeed(0, 'I', 250); lc.setString(0, "LOVE YOU"); } arduino ide显示error: 'class LedControl' has no member named 'setString'怎么改
时间: 2024-02-02 10:02:58 浏览: 77
LedControl库中没有setString函数,所以出现了这个错误。如果想要在LedControl库中使用字符串显示功能,可以使用setChar函数来实现。例如,可以将字符串中的每个字符分别显示在LedControl屏幕上。
下面是修改后的代码:
```
#include <LedControl.h>
#include <SPI.h>
LedControl lc = LedControl(12, 11, 10, 1);
int smallHeart[8] = {
0b00011000,
0b01111110,
0b11111111,
0b11111111,
0b11111111,
0b01111110,
0b00111100,
0b00011000
};
int bigHeart[8] = {
0b00000000,
0b01100110,
0b11111111,
0b11111111,
0b11111111,
0b01111110,
0b00111100,
0b00011000
};
void displayHeart(int heart[]) {
for (int i = 0; i < 8; i++) {
lc.setRow(0, i, heart[i]);
}
}
void setup() {
lc.shutdown(0, false);
lc.setIntensity(0, 8);
lc.clearDisplay(0);
displayHeart(smallHeart);
}
void loop() {
delay(500);
displayHeart(bigHeart);
delay(500);
displayHeart(smallHeart);
lc.setCharSpeed(0, 'I', 250);
lc.setChar(0, 'L', 0, 0);
lc.setChar(0, 'O', 1, 0);
lc.setChar(0, 'V', 2, 0);
lc.setChar(0, 'E', 3, 0);
lc.setChar(0, ' ', 4, 0);
lc.setChar(0, 'Y', 5, 0);
lc.setChar(0, 'O', 6, 0);
lc.setChar(0, 'U', 7, 0);
delay(500);
displayHeart(smallHeart);
for (int i = 0; i < 2; i++) {
displayHeart(bigHeart);
delay(500);
displayHeart(smallHeart);
delay(500);
}
lc.setChar(0, 'I', 0, 0);
displayHeart(bigHeart);
lc.setChar(0, 'U', 1, 0);
delay(500);
for (int i = 0; i < 2; i++) {
displayHeart(smallHeart);
delay(250);
displayHeart(bigHeart);
delay(250);
}
lc.setCharSpeed(0, ' ', 250);
lc.setCharSpeed(0, 'I', 250);
lc.setChar(0, 'L', 0, 0);
lc.setChar(0, 'O', 1, 0);
lc.setChar(0, 'V', 2, 0);
lc.setChar(0, 'E', 3, 0);
lc.setChar(0, ' ', 4, 0);
lc.setChar(0, 'Y', 5, 0);
lc.setChar(0, 'O', 6, 0);
lc.setChar(0, 'U', 7, 0);
}
```
修改后的代码中使用了setChar函数来显示字符串,将“LOVE YOU”分别显示在LedControl屏幕上。
阅读全文