📄 lcd_2.c
字号:
//针对HJD162A型号的lcd显示器
//IOA0--rs,IOA1--rw,IOA2--E,IOA8~OA15--DB0~DB7,IOB0--key1,IOB1--key2;
//IOA0~IOA1为低电平输出,IOA8~OA15为悬浮式输入,当要输出或输入的时候,只改变*P_IOA_Dir即可
#include<spce061a_chf.h>
#include"keyy.h"
#include"bit.h"
//////////////////////////////////////////////////
//函数:void init_IO_lcd(void)
//描述:初始化LCD使用的IO口
//参数:无
//返回:无
///////////////////////////////////////////////////
void init_IO_lcd()
{
PB_Dir->byte.byteh=0x00;
PB_Attrib->byte.byteh=0xff;
PB->byte.byteh=0xff;
PB_Dir->bit.bit0=1;
PB_Dir->bit.bit1=1;
PB_Dir->bit.bit2=1;
PB_Attrib->bit.bit0=1;
PB_Attrib->bit.bit1=1;
PB_Attrib->bit.bit2=1;
P1_0=0;
P1_1=0;
P1_2=0;
}
//////////////////////////////////////////////////
//函数:void lcd_init(void)
//描述:初始化LCD显示设置
//参数:无
//返回:无
///////////////////////////////////////////////////
void lcd_init(void)
{
write_command(0x38);//显示模式的设置
write_command(0x08);//显示关闭*/
write_command(0x0c);//整体显示,关光标,不闪烁
write_command(0x06);//显示光标移动设置
write_command(0x01); //显示清屏
}
//////////////////////////////////////////////////
//函数:void v_data_to(float v_float)
//描述:将float型的数字转成字符串并显示
//参数:v_float--要转换的电压值
//返回:无
///////////////////////////////////////////////////
void v_data_to(unsigned int dd)
{
unsigned char AD_value[]="00";
if(dd<10)
{
AD_value[1]=dd+48;
lcd_display(AD_value,sizeof(AD_value));
}
else
{
AD_value[0]=dd/10+48;
AD_value[1]=dd%10+48;
lcd_display(AD_value,sizeof(AD_value));
}
}
//////////////////////////////////////////////////
//函数:void lcd_display(unsigned char *value,unsigned int length)
//描述:将要显示的字符串进行显示
//参数:*value--字符串地址;length--字符串的长度
//返回:无
///////////////////////////////////////////////////
void lcd_display(unsigned char *value,unsigned int length)
{
unsigned int i;
init_IO_lcd();
lcd_init();
for(i=0;i<length-1;i++)
{
write_data(value[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -