0.内容简介
1.LCD12864
OCM J4X8C数据表
2.STM32F103C8T6
STM32F103C8T6数据表
3.字符显示和绘图
3.1 代码
/*
* 说明:LCD12864 OCMJ4X8C http://www.gptlcm.cn/ 串行通信
*/
#ifndef __LCDdisplay_H
#define __LCDdisplay_H
#include "stm32f10x_gpio.h"
#define LCD_CS_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_4); // CS=0
#define LCD_CS_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_4); // CS=1
#define LCD_SID_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_5); // SID=0
#define LCD_SID_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_5); // SID=1
#define LCD_SCLK_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_6); // SCLK=0
#define LCD_SCLK_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_6); // SCLK=1
#define LCD_PSB_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_7); // PSB=0,串口通信 // 可接串口,也可直接接GND
#define LCD_PSB_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_7); // PSB=1,并口通信 // 可接串口,也可直接接VCC
#define LCD_RST_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_3); // RST=0,复位控制信号输入,低有效
#define LCD_RST_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_3); // RST=1
void LCD_Init(void); // LCD初始化
void LCD_CheckBusy(void); // 检测忙
void LCD_WriteByte(unsigned char byte); // 写一个字节
void LCD_WriteCmd(unsigned char cmdByte); // 写指令
void LCD_WriteData(unsigned char dataByte); // 写数据
void LCD_WriteString(unsigned char rowNum,unsigned char columnNum,unsigned char *string); // 写字符串
void LCD_DrawPic(unsigned char *pic); // 绘图
#endif
3.2 字符显示和绘图效果
3.2.1 字符显示
![](https://img-blog.csdnimg.cn/f7fbf32285344cc681aa490d7e019ee6.png)
3.2.2 绘图
![](https://img-blog.csdnimg.cn/2f8e5db372144684bd58fccf8a9017e1.png)