资源简介
Arduino的LCD12864例程,含串行和并行两种驱动模式,其库文件可以直接使用,注释详细,甚至不用看驱动器的Datasheet即可驱动LCD12864。

代码片段和文件信息
#include “LCD12864_S.h“
int LCD12864_SCLK_PORT = 10; //E引脚串行模式别名
int LCD12864_SID_PORT = 11; //RW引脚串行模式别名
int LCD12864_CS_PORT = 12; //RS引脚串行模式别名
//********************************************************************
//LCD12864清屏
//********************************************************************
void LCD12864_Clear()
{
LCD12864_COM_Write(0x01);
}
//********************************************************************
//LCD12864地址设置
//********************************************************************
void LCD12864_SET_Address( unsigned char iunsigned char j)
{
switch(i)
{
case 1:
LCD12864_COM_Write(0x80+(j-1));
break;
case 2:
LCD12864_COM_Write(0x90+(j-1));
break;
case 3:
LCD12864_COM_Write(0x88+(j-1));
break;
case 4:
LCD12864_COM_Write(0x98+(j-1));
break;
default: break;
}
}
/*************************************************************************************
发送一个字节
*************************************************************************************/
void LCD12864_SendByte(unsigned char bbyte) //发送一个字节
{
unsigned char i;
for(i=0;i<8;i++)
{
if((bbyte&0x80) == 0) //取出最高位
{
digitalWrite(LCD12864_SID_PORTLOW);
}
else
{
digitalWrite(LCD12864_SID_PORTHIGH);
}
digitalWrite(LCD12864_SCLK_PORT LOW);
delayMicroseconds(1);
digitalWrite(LCD12864_SCLK_PORT HIGH);
delayMicroseconds(1);
digitalWrite(LCD12864_SCLK_PORT LOW);
delayMicroseconds(1);
bbyte<<=1; //左移
}
}
//********************************************************************
//检测忙信号写入命令字 ddate 为待写入的命令字
//********************************************************************
void LCD12864_COM_Write( unsigned char ddata )
{
unsigned char HdataLdata;
Hdata=ddata&0xf0; //取高四位
Ldata=(ddata<<4)&0xf0; //取低四位
LCD12864_SendByte(0xf8); //发送起始信号
delayMicroseconds(1); //延时是必须的
LCD12864_SendByte(Hdata); //发送高四位
delayMicroseconds(1); //延时是必须的
LCD12864_SendByte(Ldata); //发送低四位
delayMicroseconds(1); //延时是必须的
}
//********************************************************************
//数据写入 ddata 为待写入的8位数据
//********************************************************************
void LCD12864_Data_Write(unsigned char ddata)
{
unsigned char HdataLdata;
Hdata=ddata&0xf0; //取高四位
Ldata=(ddata<<4)&0xf0; //取低四位
LCD12864_SendByte(0xfa); //发送起始信号
delayMicroseconds(1); //延时是必须的
LCD12864_SendByte(Hdata); //发送高四位
delayMicroseconds(1); //延时是必须的
LCD12864_SendByte(Ldata); //发送低四位
delayMicroseconds(1); //延时是必须的
}
//*************************************************************************************
//写连续字符函数
//*************************************************************************************
void LCD12864_write_word(const char *s)
{
while(*s>0)
{
LCD12864_Data_Write(*s);
s++;
delay(1);
}
}
//*********************************************
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2 2013-08-16 19:30 并行模式\LCD12864_P_MAIN\Debug\li
文件 2 2013-08-16 19:30 并行模式\LCD12864_P_MAIN\Debug\li
文件 2037 2013-08-16 19:30 并行模式\LCD12864_P_MAIN\Debug\MAIN.log
文件 5303 2013-08-16 19:41 并行模式\LCD12864_P_MAIN\LCD12864_P.cpp
文件 562 2013-08-16 19:38 并行模式\LCD12864_P_MAIN\LCD12864_P.h
文件 2945 2013-08-16 19:40 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.ino
文件 17584128 2013-08-16 19:12 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.sdf
文件 896 2013-08-16 18:32 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.sln
..A..H. 12800 2013-08-16 19:12 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.suo
文件 4292 2013-08-16 18:32 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.vcxproj
文件 1267 2013-08-16 18:32 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.vcxproj.filters
文件 143 2013-08-16 18:20 并行模式\LCD12864_P_MAIN\LCD12864_P_MAIN.vcxproj.user
文件 14635008 2013-08-16 19:55 并行模式\LCD12864_P_MAIN\MAIN.sdf
文件 874 2013-08-16 18:06 并行模式\LCD12864_P_MAIN\MAIN.sln
..A..H. 15360 2013-08-16 19:55 并行模式\LCD12864_P_MAIN\MAIN.suo
文件 4244 2013-08-16 18:10 并行模式\LCD12864_P_MAIN\MAIN.vcxproj
文件 1256 2013-08-16 18:10 并行模式\LCD12864_P_MAIN\MAIN.vcxproj.filters
文件 143 2013-08-16 16:50 并行模式\LCD12864_P_MAIN\MAIN.vcxproj.user
文件 995 2013-08-16 18:31 并行模式\LCD12864_P_MAIN\Visual Micro\.LCD12864_P_MAIN.vsarduino.h
文件 962 2013-08-16 18:09 并行模式\LCD12864_P_MAIN\Visual Micro\.MAIN.vsarduino.h
文件 2801 2013-08-16 19:41 并行模式\LCD12864_P_MAIN\Visual Micro\Compile.vmps.xm
文件 2674 2013-08-16 19:41 并行模式\LCD12864_P_MAIN\Visual Micro\Configuration.Debug.vmps.xm
文件 2801 2013-08-16 19:40 并行模式\LCD12864_P_MAIN\Visual Micro\Upload.vmps.xm
文件 2 2013-08-16 19:30 串行模式\LCD12864_S_MAIN\Debug\li
文件 2 2013-08-16 19:30 串行模式\LCD12864_S_MAIN\Debug\li
文件 2037 2013-08-16 19:30 串行模式\LCD12864_S_MAIN\Debug\MAIN.log
文件 27117 2016-06-14 13:29 串行模式\LCD12864_S_MAIN\hs_err_pid10100.log
文件 17584128 2013-08-16 19:12 串行模式\LCD12864_S_MAIN\LCD12864_P_MAIN.sdf
..A..H. 12800 2013-08-16 19:12 串行模式\LCD12864_S_MAIN\LCD12864_P_MAIN.suo
文件 4340 2013-08-17 13:26 串行模式\LCD12864_S_MAIN\LCD12864_P_MAIN.vcxproj
............此处省略30个文件信息
相关资源
- 数据库系统基础教程答案第三版机械
- AXURE移动端素材元件库68580
- E4A无障碍跨程序操作类库(带源码、
- 软考数据库系统工程师复习资料(完
- Visio图标-最新最全的网络通信图标库
- Python中Numpy库最新教程
- 60个HFSS 仿真模型库
-
st
yles 引文样式语言( CSL ) 引文样 - MoNyog8.5+破解补丁
- ANSYS LS-DYNA
- 全国4级地址库,京东数据
- 一个超简单的企业管理系统(带ACCE
- 数据库课设:图书管理系统报告
- 合同管理系统的源代码(附数据库)
- ado数据库MFC图书管理系统vs2010
- 先进先出库存管理excel表格.rar
- 在线题库管理
- 矩阵基本运算函数库
- 数据库VFP课程设计
- ADNS-3080光流传感器测试程序Arduino
- 服装店进销存管理系统
- 数据库实现学生成绩管理系统选课管
- 排队机叫号 源代码
- 课程作业:模拟仓库管理系统
- Access数据库在线编辑器
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- Php 导出数据为EXCEL程序
- 人大金仓数据库系统表
- 伪原创同义词库(13000条)
- 模拟ATM柜员机系统--连接数据库
评论
共有 条评论