arduino nano328使用SD卡(SPI通信方式)和SSD1306(IIC通信方式)出现问题
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);
}
检查一些这些库里,是不是使用了delay,如果是的话,把这些delay尝试的改到自己代码里手工控制。delay会打断时序 弘毅 发表于 2017-5-21 08:05
检查一些这些库里,是不是使用了delay,如果是的话,把这些delay尝试的改到自己代码里手工控制。delay会打 ...
我将SSD1306和SD使用的delay函数关掉了,单独测试正常,合在一起,还是和没用delay是一样的实验现象。出口无提示信息,板子没有反应
页:
[1]