2621|6

9

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

12864液晶画抛物线——求大神救命!!! [复制链接]

有哪位好心人帮解答一下,12864液晶画抛物线图怎么画的,我学别人的程序不会改:

方程如下:
x=0.707*40*t
y=0.707*40*t-4.9*t*t
//以下是我学别人的画点程序:
void drawpoint(uchar x,uchar y)//画点
{
uchar temp;
temp=rsj(x,y);//读数据
xy(x,y/8);//选页
xsj((0x01<<(y%8))|temp);//写数据
}



//我改的画上面x,y方程的程序:
void huatu(float x,float y)
{
uchar i;
float temp,temp22;//定义x,y值
uchar tempp,tempp22;//类型转换
for(i=0;i<128;i++)
{
    temp=0.707*40*i;                      //x=0.707*40*t
    tempp=(uchar)temp;                //类型转换           
    temp22=0.707*40*i-4.9*i*i;       //y=0.707*40*t-4.9*t*t      
    tempp22=(uchar)temp22;       //类型转换
    drawpoint(tempp,tempp22);
}
}



此帖出自单片机论坛

最新回复

本帖最后由 sjtitr 于 2015-12-14 10:32 编辑 首先不是x和y同时除以比例,那样就不对了。 其实剩下就是图形学的问题了,利用图形学可以把图像描画得更漂亮。 如果你只是简单的表示图像,可以采用简单的方式。 比如像你说的,x轴的步长降为1(而不是t的步长,t的步长会约是1/28),然后计算对于每个x的y值。 或者t的步长不需要降那么多,但是不做画点,而是根据点来连线。  详情 回复 发表于 2015-12-14 10:31
点赞 关注
 

回复
举报

1976

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
抛物线的程序没有搞过,你搜一下有没有别人和程序可以学习的
此帖出自单片机论坛
 
 

回复

603

帖子

1

TA的资源

纯净的硅(中级)

板凳
 

简单思路的话,你的抛物线应该是对称轴垂直于x轴平行于y轴的,可以先把你的参数方程化成y关于x的一元二次函数
真正实际描画的时候,根据自变量的值(也就是x的区间从区间一端到区间的另一端),依次求出每个函数值y,然后在相应的(x,y)描点。

当然了,这样的话,在抛物线绕定点旋转的时候,就无法表达了。
那就还得是参数方程才能解决问题。……不过你在对参数方程描画的时候,貌似步长1有点太长了!
单看x=0.707*40*i=28.28*i,当增加一个步长1的时候,x坐标相差了28,128的情况下能画4或5个点,64就只能画2或3个点,怎么可能看出来抛物线!~
此帖出自单片机论坛
 
 
 

回复

1999

帖子

24

TA的资源

五彩晶圆(高级)

4
 
花点就是画点,只要计算出抛物线坐标就好了,不要动画点函数
此帖出自单片机论坛
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

5
 
sjtitr 发表于 2015-12-11 12:06
简单思路的话,你的抛物线应该是对称轴垂直于x轴平行于y轴的,可以先把你的参数方程化成y关于x的一元二次 ...

您的解答给我启发,怪不得我液晶显示满屏都是是间隔很大的有规律的点,是不是再把x和y除以一定比例,比如您说的:x轴的步长现在为28,除以一定比例,让点连成线。
此帖出自单片机论坛

点评

剩下就是图形学的问题了,利用图形学可以把图像描画得更漂亮。 如果你只是简单的表示图像,可以采用简单的方式。 比如像你说的,x轴的步长降为1(而不是t的步长,t的步长会约是1/28),然后计算对于每个x的y值。  详情 回复 发表于 2015-12-14 10:31
 
 
 

回复

603

帖子

1

TA的资源

纯净的硅(中级)

6
 
本帖最后由 sjtitr 于 2015-12-14 10:32 编辑
lajirenzzz 发表于 2015-12-11 18:13
您的解答给我启发,怪不得我液晶显示满屏都是是间隔很大的有规律的点,是不是再把x和y除以一定比例,比如 ...
首先不是x和y同时除以比例,那样就不对了。
其实剩下就是图形学的问题了,利用图形学可以把图像描画得更漂亮。

如果你只是简单的表示图像,可以采用简单的方式。
比如像你说的,x轴的步长降为1(而不是t的步长,t的步长会约是1/28),然后计算对于每个x的y值。
或者t的步长不需要降那么多,但是不做画点,而是根据点来连线。
此帖出自单片机论坛
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

7
 
鏌ョ湅鏈笘鍏ㄩ儴璁ㄨ锛岃鐧诲綍鎴栬€�娉ㄥ唽
此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
福禄克有奖直播:高精度测温赋能电子制造 报名中!
直播时间:2025年2月28日(周五)上午10:00
直播主题:高精度测温赋能电子制造
小伙伴们儿快来报名直播吧~好礼等你拿!

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表