您现在的位置: 主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > PIC16F72单片机控制HT1621B驱动LCD -
本文所属标签:
为本文创立个标签吧:

PIC16F72单片机控制HT1621B驱动LCD -

来源: 网络用户发布,如有版权联系网管删除 2018-09-08 

[导读]
//PIC16C72单片机控制HT1621B驱动LCD#include #define BIAS 0X50 //1/2偏压,4背极#define RC256 0X30 //系统时钟选择为片内RC振荡器#define WDTDIS1 0X0A //禁止WDT溢出标志输出#define TIMERDIS 0X08

 

本文引用地址: http://www.21ic.com/app/mcu/201804/765468.htm

//PIC16C72单片机控制HT1621B驱动LCD
#include
#define BIAS 0X50 //1/2偏压,4背极

#define RC256 0X30 //系统时钟选择为片内RC振荡器
#define WDTDIS1 0X0A //禁止WDT溢出标志输出
#define TIMERDIS 0X08 //时基输出禁能
#define SYSEN 0X02 //打开系统时钟
#define LCDON 0X06 //打开偏压发生器
#define SYSDIS 0X00 //关闭系统时钟和偏压发生器

 

#define CS RB5
#define WR RB6
#define DATA RB7
#define uchar unsigned char
#define uint unsigned int

void SENDBYTE (uchar dat);
void SENDBIT (uchar dat,uchar bitcnt);
/***************************延时子函数******************************/
void delay() //延时
{
uchar i=0;
while(i<10)
i++;
}
void delay1s() //延时1S
{
uchar i;
uint j;
for(i=0;i<10;i++)
for(j=0;j<1300;j++);
}
/**************************HT1621B初始化****************************/
void START_HT1621() //初始化HT1621
{
CS=1;
WR=1;
DATA=1;
delay();
CS=0;
CS=0;
WR=0;
WR=0;
}
/*************************发送命令子函数A***************************/
void SENDCOMA(uchar com) //发送命令A,ID=100+0
{
START_HT1621();
SENDBIT(0X80,4);
SENDBYTE(com);
}
/*************************发送命令子函数B***************************/
void SENDCOMB(uchar adr) //发送命令B,发送显示数据
{
START_HT1621(); //HT1621初始化
SENDBIT(0XA0,4);
//发送写数据ID:101+6位LCD之RAM地址第1位
SENDBIT(adr,5); //然后发送地址后5位
}
/*************************发送命令子函数C***************************/
void SENDCOMC(uchar com) //发送命令C,ID=100+1
{
START_HT1621();
SENDBIT(0X90,4);
SENDBYTE(com);
}
/***********************按位发送数据子函数**************************/
void SENDBIT (uchar dat,uchar bitcnt) //按位发送数据
{
uchar i;
for(i=0;i

 

 



              查看评论 回复



嵌入式交流网主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > PIC16F72单片机控制HT1621B驱动LCD -
 

"PIC16F72单片机控制HT1621B驱动LCD -"的相关文章

网站地图

围观()