我试图使用LCD1602 IO扩展板写入液晶显示器( PCF8574显示屏)。我已经使用了一些我找到的示例代码,但是虽然它确实会闪烁背景光(所以我知道它正在与LCD通信),但它不会打印数字。
我不想使用WiringPI库,因为它不再受支持,我想使用BCM2835库。有人知道我怎么能在液晶显示器上写字符吗?我以为我只需要发送密码?
#include <bcm2835.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char **argv)
{
char buf[1];
char wbuf[] = "Hello World!";
if (!bcm2835_init())return 1;
bcm2835_i2c_begin(); //Start I2C operations.
bcm2835_i2c_setSlaveAddress(0x27); //I2C address
bcm2835_i2c_set_baudrate(10000); //1M baudrate
buf[0] = 0xEF; //LED ON
bcm2835_i2c_write(buf,1);
int ln = strlen(wbuf);
for (int i=0; i< ln; i++)
{
buf[0] = wbuf[i];
bcm2835_i2c_write(buf,1);
bcm2835_delay(5);
}
bcm2835_i2c_end();
bcm2835_close();
return 0;
}发布于 2020-11-26 22:30:03
与其直接通过bcm2835完成所有的工作,我还发现了一个通过i2c与液晶屏幕对话的库。
https://github.com/albertherd/LCD1602
如果您确实希望仅通过bcm2835完成此操作,那么您似乎只需要对PI上的I2C控制器执行一些文件IO操作。(更容易使用该库)
https://stackoverflow.com/questions/64978311
复制相似问题