【NUCLEO-F412ZG试用体验】实验二 驱显12864黑白串口LCD
参考实验一的GPIO口的设置,可以很轻松的完成LCD的驱显,需要做的工作就是正确设置串口LCD,本例LCD只有4根线,SDIN,SCLK,SREG,SRET,因为只写LCD,省去了片选CS。
仔细查看板子,几乎所有的GPIO都是不连续的,少有的几个连续不超过5个。从
STM32F412ZG用户手册来看PC_8~12,和PD3~7是唯一连续超过4个的GPIO,查看PinNames.h文档,其定义了PA0~15,PB0~15,PC0~15,PD2,PH0~1,简单起见,我们先用PC8~12其中的4个就可以了。
1. 写一个12864.h模块,前边定义:
//Define ISP LCD GPIO
DigitalOut dat(PC_8);
DigitalOut clk(PC_9);
DigitalOut reg(PC_10);
DigitalOut res(PC_11);
之后的所有内容与早先做实验写的内容一样,此处不重复给代码了,参考文档在本站:【NUCLEO-F412ZG试用体验】实验二 驱显12864黑白串口LCD 中,有完整的代码,仅仅定义GPIO口不一样。
主循环中只是调用实验一中的LED和显示所有ASCII码,由于STM32F412ZGIO口的速度足够快,刷新屏幕根本看不到,只有在串口TFT彩色LCD中可以看到明显的刷屏和显示ASCII码。
实验做到二,已明显感到MBED的好用和简洁,几乎编程者不用费什么功夫,只需要想做什么将需要的GPIO或对应的功能模块打开设置即可,后边的实验还没有做就已经信心爆棚了。LCD显示照片跟帖在后。