谢谢分享 mark 我的液晶也是那个型号的 在接线的时候记得要串接一个1K的电阻 标记划线。。。 mark
谢谢分享 谢谢楼主分享 收藏之 非常好的帖子!!!学习了。谢谢楼主 cool 谢谢分享~ mark 来的比较晚!现在真要学画点,mark下! 画斜线程序没看懂,会的帮忙注释详细点,谢谢!!!!
void GUI_Line(unsigned char x0,unsigned char y0,unsigned char x1,unsigned char y1,unsigned char colour)
{
int temp;
int dx,dy; //定义起点到终点的横、纵坐标增加值
int s1,s2,status,i;
int Dx,Dy,sub;
dx = x1 - x0;
if(dx >= 0) //X的方向是增加的
s1 = 1;
else //X的方向是降低的
s1 = -1;
dy = y1 - y0; //判断Y的方向是增加还是降到的
if(dy >= 0)
s2 = 1;
else
s2 =- 1;
Dx = abs(x1-x0); //计算横、纵标志增加值的绝对值
Dy = abs(y1-y0);
if(Dy > Dx)
{ //以45度角为分界线,靠进Y轴是status=1,靠近X轴是status=0
temp = Dx;
Dx = Dy;
Dy = temp;
status = 1;
}
else
status = 0;
/*********Bresenham算法画任意两点间的直线********/
sub = Dy + Dy - Dx; //第1次判断下个点的位置-----------这边不是很懂,这个大致原理是什么
for(i = 0;i < Dx;i ++)
{
GUI_Point(x0,y0,colour); //画点
if(sub >= 0)
{
if(status == 1) //在靠近Y轴区,x值加1
x0 += s1;
else //在靠近X轴区,y值加1
y0 += s2;
sub -= (Dx + Dx); //判断下下个点的位置
}
if(status == 1)
y0 += s2;
else
x0 += s1;
sub += Dy + Dy;
}
} 很好!!画线,,画点正在学 相当佩服楼主的耐力,因为当年我也写过7920绘图代码,这个麻烦只有自己做过才知道。
最终代码写成了,正常工作,为此烧坏了不少大脑细胞。
但缺点太多了:
因为写屏要关闭显示,所以绘图时屏幕是会闪烁的。
如果要显示5*8点阵字符,不能直接用画点函数,需要单独写一个优化的5*8字符显示函数,否则速度太慢了!
因为点阵排列方向的问题,5*8点阵的ASCII字库也要大出很多。
最后,我换KS0108屏了。
得出的结论:ST7920,只有一个长处,就是显示汉字方便。除了长处,没有长处。 回复【119楼】bg4uvr
相当佩服楼主的耐力,因为当年我也写过7920绘图代码,这个麻烦只有自己做过才知道。
最终代码写成了,正常工作,为此烧坏了不少大脑细胞。
但缺点太多了:
因为写屏要关闭显示,所以绘图时屏幕是会闪烁的。
如果要显示5*8点阵字符,不能直接用画点函数,需要单独写一个优化的5*8字符显示函数,否则速度太慢了!
因为点阵排列方向的问题,5*8点阵的ascii字库也要大出很多。
最后,我换ks0108屏了。
得出的结论:st7920,只有一个长处,就是显示汉字方便。除了长处,没有长处。
-----------------------------------------------------------------------
严重同意! 函数库我有,就是没画点的.. 顶 mark 貌似很炫 画点,画线函数,标记下,同时谢谢楼主! mark,感谢楼主分享! mark!! mark mark mark mark mark mark ST7920串口也可以画图,我手里有程序是这样做的,程序是别人写的,细节没怎么看,有需要的可以交流。 回复【楼主位】jackielau 九天
-----------------------------------------------------------------------
楼主,您好!我用12864显示图片,为什么每次显示图片都需要很长时间才能才显示出来,大概20秒 不错哦,做个标记 mark 手机记号一下 收藏了,最近正在搞液晶的菜单显示! 謝謝了。 值得收藏,{:lol:} 我想收藏这个帖子,怎样操作? 精华啊!以前怎么没看到呢! ST7920控制器LCD12864源代码,有画点、画线功能 我看你有这个的例子,请问您能发我一份源码吗?谢谢!我邮箱是:lx_wjj@163.com ST7920控制器LCD12864源代码,有画点、画线功能 楼主 请问您能发我一份源码吗?谢谢!我邮箱是:lx_wjj@163.com 怎么下载不了啊,谁下载了,能发一份给我不。十分感谢!我邮箱:lx_wjj@163.com
怎么下载不了啊,谁下载了,能发一份给我不。十分感谢!我邮箱:lx_wjj@163.com
怎么下载不了啊,谁下载了,能发一份给我不。十分感谢!我邮箱:lx_wjj@163.com
怎么下载不了啊,谁下载了,能发一份给我不。十分感谢!我邮箱:lx_wjj@163.com{:mad:} 收藏先,过两天测试一下 327199551 发表于 2012-1-5 20:50 static/image/common/back.gif
ST7920串口也可以画图,我手里有程序是这样做的,程序是别人写的,细节没怎么看,有需要的可以交流。 ...
串口画图,估计需要缓冲区! shaoziRoma 发表于 2012-1-6 10:40 static/image/common/back.gif
回复【楼主位】jackielau 九天
----------------------------------------------------------------------- ...
我的也是很慢,但是没有20秒 楼主做的可移植性非常好,谢谢! 不知道我的怎么会显示乱点{:cry:} jackielau 发表于 2009-7-14 09:14 static/image/common/back.gif
【24楼】 haozi_1989
本来打算把串行的弄出来,但是手上LCD拿走了,再加上最近出差没空,也就一直没写!!
...
楼主,串行真的不可以画点吗?求指教啊 cool! 可不可以画正弦图{:sweat:} 学习下,不错 好东西!!!!! 先藏着{:titter:} 10192201 发表于 2012-7-29 15:31 static/image/common/back.gif
楼主,串行真的不可以画点吗?求指教啊
比较难,需要缓冲区! 最近在研究12864,看了这个帖子,真是受教了,呵呵 收藏,回头仔细看看。 学习了 mark cool!
留爪!等有机会学习 不错的
不错 现在正在学习了! cool 收藏!谢谢! mark,学习一下。 这个可以是COOL!{:lol:} 好多受教了~~· 并口的,略占资源,程序还是值得收藏的~ 并口模式下,带字库的ST7920刷图。按手册上讲需要先关闭绘图模式(0x34),数据写完了才能打开(0x36)。但这样会闪烁很厉害。试验下来,不关绘图模式的情况下也可以进行刷图操作。短时间看不出问题,但长时间不知道有没有隐患?求指教。 jackielau 发表于 2009-6-29 08:44
程序的基本操作,是从51中移植过来的,感谢原作者!
程序还不是特别完善,请大家多提建议!
目前程序支持8b ...
我是串行的,但是是可以读的哦 MARK markmarkmarkmarkmarkmarkmark
页:
1
[2]