|
arduino nano328使用SD卡(SPI通信方式)和SSD1306(IIC通信方式)出现问题单独使用SD卡或者SSD1306可以正常工作,SD使用的是arduino自带函数,SSD1306使用标准驱动函数,同时使用时,编译没有报错,但是串口没有输出提示信息,板子没有输出显示信息。一下为源码部分。希望可以得到解答
#include <Wire.h>//IIC OLED
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <SPI.h>
//#include <SD.h>
#define OLED_RESET 5
Adafruit_SSD1306 show(OLED_RESET);
// CS引脚为pin4,这里也沿用官方默认设置
const int chipSelect = 4; //设定CS接口
void setup()
{
Serial.begin(9600); //设置串口通信波特率为9600
Serial.print("Initializing SSD1306..."); //串口输出数据Initializing SD card...
show.begin(SSD1306_SWITCHCAPVCC, 0x3C);
Serial.print("Initialized SSD1306..."); //串口输出数据Initializing SD card...
Serial.print("Initializing SD..."); //串口输出数据Initializing SD card...
// if (!SD.begin(chipSelect)) { //如果从CS口与SD卡通信失败,串口输出信息Card failed, or not present
// Serial.println("Card failed, or not present");
// return;
// }
Serial.println("card initialized."); //与SD卡通信成功,串口输出信息card initialized.Z
}
void loop()
{
show.clearDisplay();
vio();
}
void vio()
{
show.setTextSize(2);
show.setTextColor(WHITE);
show.setCursor(0,50);
show.print("result:1");
show.display();
delay(1000);
}
|
|