板子:NUCLEO-L432KC 屏幕:am2320 pled屏幕:mk661 库:1.mbed.h(自带) 2. https://github.com/adafruit/Adafruit_SSD1306 3. http://os.mbed.com/users/yasuyuki/code/AM2320/ 代码: #include "mbed.h" #include "AM2320.h" #include "adafruit_ssd1306.h" // 我们使用I2C协议 I2C i2c(PB_7, PB_6); // SDA, SCL // 创建一个AM2320对象 AM2320 am2320(i2c); // 创建一个Adafruit SSD1306 OLED显示对象 adafruit_ssd1306 oled(i2c, NC); // I2C协议 int main() { while(1) { // 更新传感器读数 am2320.update(); // 读取温度和湿度 float temperature = am2320.readTemperature(); float humidity = am2320.readHumidity(); // 在OLED屏幕上显示 oled.clearDisplay(); oled.printf("Temperature: %.2f\n", temperature); oled.printf("Humidity: %.2f\n", humidity); oled.display(); // 等待一秒 wait_us(1000000); } } 报错: 1. Unknown type name 'adafruit_ssd1306' 2. No member named 'update' in 'AM2320' 3. No member named 'readTemperature' in 'AM2320' 4. No member named 'readHumidity' in 'AM2320'
时间: 2024-01-09 13:03:18 浏览: 111
NUCLEO-L432KC实现UART1、UART2双串口数据通信(STM32L432KC)
这个问题可能是因为您没有正确引入库或者库没有被正确编译。请按照以下步骤检查:
1. 确认您已将所有必要的库文件复制到项目文件夹中。
2. 如果您使用的是在线IDE(如mbed studio),请确保您已正确添加所需的库,也可以尝试删除并重新添加这些库。
3. 确认您已正确连接硬件,并且设备已正确连接到计算机。
4. 检查您的代码是否正确,特别是库的函数调用和对象的初始化是否正确。
如果以上步骤都没有解决问题,请尝试删除库并重新下载和编译它们。如果问题仍然存在,请尝试在论坛或开发者社区中查找类似的问题并获得更多帮助。
阅读全文