资源简介
本程序是主控芯片为T6963C的LCD驱动,点阵为240128或者点阵160128或者其他都可行(简单修改下即可);硬件定义在头文件中,硬件为stm32F103VC系列单片机,IDE开发环境为keil4。此程序是直接可以使用,目前使用中未发现bug。
代码片段和文件信息
/*************************************************************/
/* LCD.c:LCD操作函数的实现内置控制器T6963C */
/*************************************************************/
#include “T6963.h“
#include “Ziku.h“
#include
////////////////////////////////////////////////////////////////
void LCD_DataIo_Out(void)//数据线输出
{
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = DATA;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(DATA_LINE &GPIO_InitStructure);
}
////////////////////////////////////////////////////////////////
void LCD_DataIo_In(void)//数据线输入
{
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = DATA;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(DATA_LINE &GPIO_InitStructure);
}
void LCD_I0_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_GPIOG ENABLE);
GPIO_InitStructure.GPIO_Pin = WR | RD | CE | CD;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(CRL_LINE &GPIO_InitStructure);
CE_HIGH;
GPIO_InitStructure.GPIO_Pin = DATA;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(DATA_LINE &GPIO_InitStructure);
}
/**********************************************************
//功能:查询数据/指令是否可读写即判断状态字的STA0STA1标志位
//描述:STA0STA1为状态字的低两位STA0反应指令读写状态STA1反应数据读写状态1=准备好0=忙
**********************************************************/
void CheckStatus(void)
{
uint16 dat;
//LCD_DataIo_In();
DATA_LINE->BRR |= 0xFF00;
do{
CD_HIGH;
__NOP();__NOP(); //此延时相当重要
CE_LOW;
WR_HIGH;
RD_LOW;
__NOP();
dat=DATA_LINE->IDR; //读状态字
__NOP();
RD_HIGH;
dat=0x0300&dat; //保留低2位
}while(dat!=0x0300); //STA0STA1是否准备好
}
/**********************************************************
//功能:当使用自动写功能时STA3将取代STA0STA1成为忙标志位
//描述:STA3为状态字第三位STA3反应数据自动写状态1=准备好0=忙
**********************************************************/
void CheckAutoWrite(void)
{
uint16 dat;
//LCD_DataIo_In();
//DATA_LINE->BRR |= 0x00FF;
do{
CD_HIGH;
__NOP();__NOP(); __NOP();__NOP();__NOP();__NOP();__NOP(); //此延时相当重要
CE_LOW;
WR_HIGH;
RD_LOW;
__NOP();__NOP();__NOP();__NOP();__NOP();
dat=DATA_LINE->IDR; //读状态字
__NOP();
RD_HIGH ; //模拟操作时序
dat=0x0800&dat; //保留第3位
}while(dat!=0x0800); //STA3是否准备好
}
/**********************************************************
//函数原型:void WriteData(uint8 dat)
//功能:向T6963C发送一字节数据
//参数:发送的数据(8位)
//描述:该函数向T6963C的数据通道写数据该数据可以作为写入当前显示地址指针
所指的单元
相关资源
- I2C读写AT24C02 基于STM32F103 cube116540
- 基于stm32f103ve的程序——跑马灯实验
- 基于STM32RCT6的步进电机驱动程序
- stm32f407上的两个can发送和接收例程
- STM32 led 时钟
- STM32 2.4G通信例程
- 直流无刷电机方波驱动 stm32 例程代码
- STM32中文资料
- STM32蓝牙和串口程序
- STM32f103超声波模块例程
- stm32f103c8t6 4 oled.rar
- stm32f030 IAP Demo(原创)
- STM32基于rt_thread操作系统的SDHC卡文件
- NRF24L01实现51与STM32双向通讯
- STM32F103 串口程序(完整版)
- stm32 ds18b20 温度传感器 测试通过
- stm32官方例程
- STM32F103定时器中断程序
- [免费]基于stm32f103ze 的OLED驱动代码
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- STM32定时器使用入门。看了这个程序会
- SIM908 SDIO FSMC STM32 FIFO
- STM32F103 CC2500完整驱动(模拟SPI)
- AD7606采集程序
- stm32 用SPI 方式读写 SDHC
- stm32通过DMA方式采集ADC数据
- 意法半导体STM全系列微控制器STM32ST
- 基于STM32芯片的SX1278 驱动 LORA.rar
- STM32的PCB封装库,以及原理图库,48
评论
共有 条评论