📄 diceng_1.c
字号:
//HJD162A的底层驱动函数
#include<spce061a_chf.h>
#include"bit.h"
//////////////////////////////////////////////////
//函数:void check_busy(void)
//描述:检测"忙"信号的函数,并等待到"闲"
//参数:无
//返回:无
///////////////////////////////////////////////////
void check_busy()
{
unsigned int c;
PB_Dir->byte.byteh=0x00;
PB->byte.byteh=0xff;//悬浮式输入
do
{
*P_Watchdog_Clear=0x01;
P1_0=0;//rs=0
P1_1=1;//rw=1
P1_2=1;//E=1
c=PB->byte.byteh;//只读出高8位
P1_2=0;//E=0;
asm("nop");
c&=0x80;
}while(c==0x80);
}
//////////////////////////////////////////////////
//函数:void write_command(unsigned int command)
//描述:写一个字节的命令到LCD中的控制寄存器当中
//参数:command--要写入的命令
//返回:无
///////////////////////////////////////////////////
void write_command(unsigned int command)
{
check_busy();
PB_Dir->byte.byteh=0xff;
PB->byte.byteh=command;//操作高8位
P1_0=0;//rs=0
P1_1=0;//rw=0
P1_2=1;//E=1
asm("nop");
P1_2=0;//E=0;//下降沿触发
asm("nop");
}
//////////////////////////////////////////////////
//函数:void write_data(unsigned int data2)
//描述:写一个字节的数据到LCD中的控制寄存器当中
//参数:data2--要写入的数据
//返回:无
///////////////////////////////////////////////////
void write_data(unsigned int data2)
{
check_busy();
PB_Dir->byte.byteh=0xff;
PB->byte.byteh=data2;//操作高8位
P1_0=1;//rs=1
P1_1=0;//rw=0
P1_2=1;//E=1
asm("nop");
P1_2=0;//E=0;//下降沿触发
asm("nop");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -