用C语言编写LCD显示程序
(串口模式的图形点阵LCD控制器)能够显示常见字母、数字、符号、中文、自定义字符、图形,以及文字和图形混和显示,并能实现部分控制功能如:画面清除(Displayclear...
(串口模式的图形点阵LCD控制器)能够显示常见字母、数字、符号、中文、自定义字符、图形,以及文字和图形混和显示,并能实现部分控制功能如:画面清除(Display clear)、光标归位(Return home)、显示打开/关闭(Display on/off)、光标显示/隐藏(Cursor on/off)、显示字符闪烁(Display character blink)
展开
展开全部
LCD有哪些寄存器?各表示什么含义,控制什么功能?
写出来的程序又如何验证是否正确?
其实,你只需要对LCD的打开、关闭,以及能把一个数据块显示在LCD上就行了
“常见字母、数字、符号、中文、自定义字符、图形,以及文字和图形混和显示;光标显示/隐藏(Cursor
on/off)、显示字符闪烁(Display
character
blink);画面清除(Display
clear)、光标归位(Return
home)”
这些功能,只需要在这个数据块上进行操作,然后再送到LCD显示。
写出来的程序又如何验证是否正确?
其实,你只需要对LCD的打开、关闭,以及能把一个数据块显示在LCD上就行了
“常见字母、数字、符号、中文、自定义字符、图形,以及文字和图形混和显示;光标显示/隐藏(Cursor
on/off)、显示字符闪烁(Display
character
blink);画面清除(Display
clear)、光标归位(Return
home)”
这些功能,只需要在这个数据块上进行操作,然后再送到LCD显示。
意法半导体(中国)投资有限公司
2021-01-14 广告
2021-01-14 广告
/*端口定义*/ /#define sled_dm_port P0 /*定义LED显示的段码数据脚*/ /#define sled_wm_port P2 /*定义LED显示的位码数据脚*/ /*定义数码管显示字符跟数字的对应数组关系*/ u...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
呜呜 !我好想帮你解决 ~
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
端口初始化:
void Init_Port(void)
{
P1DIR=0;
P1SEL=0;
P1DIR |=BIT0;
P1DIR |=BIT1;
P1DIR |=BIT2;
return;
}
管脚高低电平产生程序:
void SHCLK_Hi(void)
{
P1OUT |=BIT2;
return;
}
void SHCLK_Lo(void)
{
P1OUT &=-(BIT2);
return;
}
void SHCLK_Hi(void)
{
P1OUT |=BIT1;
return;
}
void SHCLK_Lo(void)
{
P1OUT &=-(BIT1);
return;
}
上面的程序是
通过相应的管教产生高低电平。
数据显示程序:
void DataOut(unsigned char nValue)
{
int i;
int j;
for(i=0;i<8;i++)
{
if((nvalue & 0x01)==1)
{
P1OUT |=BIT 0;
}
else
{
P1OUT &=-(BIT0);
}
SHCLU_HI();
SHCLK_Lo();
for(j=10;j>0;j++)
nvalue>>=1;
}
return;
}
这部分程序通过P1.0管脚输出数据,zai输山数据的时候,产生相应的移位时钟信号。
数据显示程序:
void main(void)
{
unsigned char nvalue;
Init_CLK();
Init_Port();
STCLK_Lo();
nvalue=0;
DataOut(seg[nvalue]);
nvalue=2;
DataOut(seg[nvalue]);
STCLK_Hi();
return;
}
在上面的程序中,Init_CLK()为初始化时钟
太多自己去看看书吧,不好说
void Init_Port(void)
{
P1DIR=0;
P1SEL=0;
P1DIR |=BIT0;
P1DIR |=BIT1;
P1DIR |=BIT2;
return;
}
管脚高低电平产生程序:
void SHCLK_Hi(void)
{
P1OUT |=BIT2;
return;
}
void SHCLK_Lo(void)
{
P1OUT &=-(BIT2);
return;
}
void SHCLK_Hi(void)
{
P1OUT |=BIT1;
return;
}
void SHCLK_Lo(void)
{
P1OUT &=-(BIT1);
return;
}
上面的程序是
通过相应的管教产生高低电平。
数据显示程序:
void DataOut(unsigned char nValue)
{
int i;
int j;
for(i=0;i<8;i++)
{
if((nvalue & 0x01)==1)
{
P1OUT |=BIT 0;
}
else
{
P1OUT &=-(BIT0);
}
SHCLU_HI();
SHCLK_Lo();
for(j=10;j>0;j++)
nvalue>>=1;
}
return;
}
这部分程序通过P1.0管脚输出数据,zai输山数据的时候,产生相应的移位时钟信号。
数据显示程序:
void main(void)
{
unsigned char nvalue;
Init_CLK();
Init_Port();
STCLK_Lo();
nvalue=0;
DataOut(seg[nvalue]);
nvalue=2;
DataOut(seg[nvalue]);
STCLK_Hi();
return;
}
在上面的程序中,Init_CLK()为初始化时钟
太多自己去看看书吧,不好说
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这题可不是20分的价值啊!!!哈哈,随便路过看看,我是一个很懒的C++作者
你上网找一个吧,你的意思我明白 ,就是用电脑自己控制自己做的LED.
你不知道这上面还有不只电脑一个件儿...呵呵,LED组有独自的控制系统,这个系统通过电脑来控制,呵呵
你上网找一个吧,你的意思我明白 ,就是用电脑自己控制自己做的LED.
你不知道这上面还有不只电脑一个件儿...呵呵,LED组有独自的控制系统,这个系统通过电脑来控制,呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询