资源简介
基于stm32控制芯片的串行12864液晶显示
代码片段和文件信息
/*************************************************
函数名:12864.c
功 能 :驱动12864液晶(带字库串行方式)
时 间 :2013/06/27
更新 :2013/07/05
*************************************************/
#include
#include “12864.h“
#include “delay.h“
// 选择PB10:CLK(E)输出 PB9R/W(SID)数据 PB8:RS/CS片选
void LCD12864_Init(void)
{
RCC->APB2ENR|=1<<3; //使能PORTB时钟
GPIOB->CRH&=0XFFFF0000;
GPIOB->CRH|=0X00003333;//PB.8~11推挽输出
GPIOB->ODR|=1<<8; //PB.8输出高
GPIOB->ODR|=1<<9;
GPIOB->ODR|=1<<10;
GPIOB->ODR|=1<<11;
PSB_L;
/*--------------------LCD基本指令-----------------------*/
delay_ms(2);
Write_LCD_Command(0x30); //30--基本指令动作
delay_ms(5);
Write_LCD_Command(0x0c); //光标右移画面不动
delay_ms(5);
Write_LCD_Command(0x01); //清屏
delay_ms(5); //清屏时间较长
Write_LCD_Command(0x06); //显示打开,光标开,反白关
delay_ms(5);
// Write_LCD_Command(0x34); // 扩充指令
// Write_LCD_Command(0x36); // 打开绘图指令
Draw_Clear(); // 清屏
//Draw_Update();
}
/*********************************************************
函数名:Send_Byte()
返回值:无
功 能: 写数据到LCD
*********************************************************/
void Send_Byte(u8 zdata)
{
u16 i;
for(i=0; i<8; i++)
{
if((zdata << i) & 0x80)
SID_H;
else
SID_L;
SCLK_H;
SCLK_L;
}
}
/*********************************************************
函数名:Receive_Byte()
返回值:temp1+temp2
功 能: 读LCD数据
*********************************************************/
u8 Receive_Byte(void)
{
u8 itemp1temp2value;
temp1=0;
temp2=0;
for(i=0;i<8;i++)
{
temp1=temp1<<1;
SCLK_L;
SCLK_H;
SCLK_L;
if(PAout(7)==1)
{
temp1++;
}
}
for(i=0;i<8;i++)
{
temp2=temp2<<1;
SCLK_L;
SCLK_H;
SCLK_L;
if(PAout(7)==1)
{
temp2++;
}
}
temp1=0xf0&temp1;
temp2=0x0f&temp2;
value=temp1+temp2;
return value ;
}
/*********************************************************
函数名:Check_Busy()
返回值:无
功 能: LCD忙检查
*********************************************************/
void Check_Busy(void)
{
do
Send_Byte(0xfc); //11111RW(1)RS(0)0
while(0x80&Receive_Byte());
}
/*********************************************************
函数名: Write_LCD_Command()
返回值:无
功 能: 写命令到LCD
*********************************************************/
void Write_LCD_Command(u8 cmdcode)
{
CS_H;
Check_Busy();
Send_Byte(0xf8);
Send_Byte(cmdcode & 0xf0);
Send_Byte((cmdcode << 4) & 0xf0);
delay_ms(2);
CS_L;
}
/*********************************************************
函数名: Write_LCD_Data()
返回值:无
功 能: 写显示内容到LCD
*********************************************************/
void Write_LCD_Data(u8 Dispdata)
{
CS_H;
Check_Busy();
Send_Byte(0xfa); //11111RW(0)RS(1)0
Send_Byte(Dispdata & 0xf0)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-05-14 23:27 stm32 12864 (串行)串口实验\
目录 0 2013-06-27 20:41 stm32 12864 (串行)串口实验\HARDWARE\
目录 0 2013-06-27 20:43 stm32 12864 (串行)串口实验\HARDWARE\12864\
文件 10294 2013-07-05 22:49 stm32 12864 (串行)串口实验\HARDWARE\12864\12864.c
文件 1120 2013-07-04 21:32 stm32 12864 (串行)串口实验\HARDWARE\12864\12864.h
文件 15870 2013-07-04 22:00 stm32 12864 (串行)串口实验\HARDWARE\12864\BMP.h
文件 0 2013-06-27 20:43 stm32 12864 (串行)串口实验\HARDWARE\12864\ZiKu.h
目录 0 2013-05-14 23:27 stm32 12864 (串行)串口实验\SYSTEM\
目录 0 2013-05-14 23:27 stm32 12864 (串行)串口实验\SYSTEM\delay\
文件 2038 2011-01-12 20:34 stm32 12864 (串行)串口实验\SYSTEM\delay\delay.c
文件 876 2011-01-12 20:34 stm32 12864 (串行)串口实验\SYSTEM\delay\delay.h
目录 0 2013-05-14 23:27 stm32 12864 (串行)串口实验\SYSTEM\sys\
文件 6885 2011-01-12 20:34 stm32 12864 (串行)串口实验\SYSTEM\sys\sys.c
文件 3839 2011-01-12 20:34 stm32 12864 (串行)串口实验\SYSTEM\sys\sys.h
目录 0 2013-05-14 23:27 stm32 12864 (串行)串口实验\SYSTEM\usart\
文件 3342 2013-07-04 22:50 stm32 12864 (串行)串口实验\SYSTEM\usart\usart.c
文件 1052 2011-04-17 15:51 stm32 12864 (串行)串口实验\SYSTEM\usart\usart.h
目录 0 2013-07-10 19:42 stm32 12864 (串行)串口实验\USER\
文件 358 2013-07-05 19:41 stm32 12864 (串行)串口实验\USER\12864.__i
文件 155193 2013-07-05 19:41 stm32 12864 (串行)串口实验\USER\12864.crf
文件 1949 2013-07-05 19:41 stm32 12864 (串行)串口实验\USER\12864.d
文件 183716 2013-07-05 19:41 stm32 12864 (串行)串口实验\USER\12864.o
文件 19 2013-07-04 21:29 stm32 12864 (串行)串口实验\USER\ExtDll.iex
文件 89992 2013-07-05 19:42 stm32 12864 (串行)串口实验\USER\Jli
文件 35244 2013-07-02 20:58 stm32 12864 (串行)串口实验\USER\STM32F10x.lst
文件 5156 2013-07-02 20:58 stm32 12864 (串行)串口实验\USER\STM32F10x.o
文件 11307 2009-05-07 14:40 stm32 12864 (串行)串口实验\USER\STM32F10x.s
文件 148420 2013-07-02 20:58 stm32 12864 (串行)串口实验\USER\delay.crf
文件 1881 2013-07-02 20:58 stm32 12864 (串行)串口实验\USER\delay.d
文件 172480 2013-07-02 20:58 stm32 12864 (串行)串口实验\USER\delay.o
文件 152112 2013-05-10 08:44 stm32 12864 (串行)串口实验\USER\ds18b20.crf
............此处省略41个文件信息
- 上一篇:房屋租赁管理系统前台页面展示
- 下一篇:倒车雷达工作原理
相关资源
- 基于stm32俄罗斯和贪吃蛇游戏keil源代
- 基于STM32单片机与12864液晶的万年历时
- STM32上实现12864液晶二维码的显示,
- 基于51单片机12864液晶屏的贪吃蛇游戏
- 0.96寸OLED显示屏12864液晶屏模块IIC接口
- 基于51单片机的12864液晶显示的“204
- 12864液晶 飞思卡尔mc9s12XS128原版程序,
- HB12864液晶显示c程序
- MSP430单片机AD转换电压值带字库12864液
- 基于单片机的DS18B20温度采集,液晶屏
- 基于51单片机SHT11温湿度传感器检测程
- 用PROTEUS的12864液晶仿真示波器
- STC12单片机运用LTC1865AD转换 含12864液晶
- protues中AMPIRE12864液晶数据手册及程序
- Verilog HDL编写的FPGA LCD12864液晶显示代
- 51单片机驱动DS1302时间模块+DS18B20温度
- MSP430单片机驱动12864动态显示文字图片
- ADC0809+12864液晶显示+电压值+proteus图仿
- 51单片机12864液晶屏proteus仿真源代码
- STM32 实现12864液晶屏显示汉字和图片且
- 用51单片机解析GPS数据并在12864液晶显
- 12864液晶屏.zip
- ADC序列通道多次转换12864液晶程序ms
- YXD-12864液晶技术规格
- 矩阵键盘+lcd12864液晶显示
- 用DS18B20测量温度并在12864液晶屏上显
- 基于C8051f020的电子万年历
- 12864液晶屏控制器为ks0108的proteus仿真
- TI的msp430f5529在12864液晶上通过四个按
- 51单片机+CS5460+12864液晶的单相电能表
评论
共有 条评论