ImageVerifierCode 换一换
格式:DOC , 页数:11 ,大小:132.50KB ,
资源ID:11123034      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-11123034.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LCD12864画点画线画圆画正弦波.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

LCD12864画点画线画圆画正弦波.doc

1、LCD12864画点画线画圆画正弦波实际效果图如下:C程序如下:#include#include#define uchar unsigned char#define uint unsigned int#define LCD P0uchar chip_select=1;bit color=0;sbit e=P21;sbit rw=P22;sbit rs=P23;sbit cs2=P24;sbit cs1=P25;uchar line=0;uchar select=0;void delay(uint i)while(i-);/* check busy */void checkBusy() /检查L

2、CD是否忙uchar dat;rs=0;/指令操作rw=1;/读出操作do LCD=0xff;/P0设置为输入e=1;/给使能信号dat=0x80/只判断DB7位的状态e=0;while(dat=0x80);/忙则继续检测void lcdWrite(bit ml,uchar zifu)checkBusy();rs=ml;rw=0;P0=zifu;e=1;delay(1);e=0;void ClearLCD(uchar zifu)uchar i,j;lcdWrite(0,0x3f);cs1=1;cs2=1;for(i=0;i 3);/计算出属于哪个字节 uchar BX = Y - (DX 63

3、) chip_select=2;X -= 64;else chip_select=1;lcdWrite(0,0xb8+DX);/设行地址lcdWrite(0,0x40+X);/设列地址TempData = ReadData();/读出所画点所在字节的内容switch (Type) /对该字节进行相应操作case 0:TempData x1=x2;x2=x;for ( x=x1;x=x1)temp=1;d_x=x2-x1;else d_x=x1-x2;x=x1;y=y1;DrawPoint(x,y,1);if(tempd_y=y2-y;if(errd_x)while(y!=y2)d_x=x-x2

4、;d_y=y2-y;if(err0)x=x-1;y=y+1;err=err+d_y-d_x;else y=y+1;err=err-d_x;DrawPoint(x,y,1);/*/void DrawLevel(void)for(i=0;i127;i+)DrawPoint(i,32,1);/画水平直线/*/void DrawSineWave(void)uchar xn=0;uchar yn=32;uchar i;uchar xi,yi;for(i=0;i127;i+)xi=i;yi=(sin(i*0.1)*32)+32;DrawLine(xn,yn,xi,yi);/在一系列零散的点上,两点两点之间

5、连线,从而得到一条曲线xn=i;yn=yi;/*/void DrawCircle(uchar x0,uchar y0,uchar r)/x0,y0为圆心坐标,r为圆半径uchar xn,yn,xi,yi;unsigned int j;xn=cos(0)*r+x0;yn=sin(0)*r+y0;for(j=0;j630;j+)xi=(cos(j*0.01)*r)+x0;yi=(sin(j*0.01)*r)+y0;DrawLine(xn,yn,xi,yi);/在一系列零散的点上,两点两点之间连线,从而得到一条曲线xn=xi;yn=yi;/*/void DrawRetic(uchar x0,ucha

6、r y0,uchar x1,uchar y1)/画正方形,x0,y0为左上角坐标,x1,y1为右下角坐标DrawLine(x0,y0,x1,y0);DrawLine(x0,y0,x0,y1);DrawLine(x1,y0,x1,y1);DrawLine(x0,y1,x1,y1);/* uchar i;for(i=0;i=x1-x0;i+)DrawPoint(x0+i,y0,1);DrawPoint(x0+i,y1,1);for(i=0;i=y1-y0;i+)DrawPoint(x0,y0+i,1);DrawPoint(x1,y0+i,1);*/*/void DrawTrigle(uchar x

7、1,uchar y1,uchar x2,uchar y2,uchar x3,uchar y3)/画三角形,三个坐标为三角形顶点DrawLine(x1,y1,x2,y2);DrawLine(x2,y2,x3,y3);DrawLine(x1,y1,x3,y3);/* main */void main(void)initLCD();while(1)ClearLCD(0x00);cs1=1;cs2=0;jis(0,32,2,16,1,2,hz);cs1=0;cs2=1;jis(0,0,2,16,1,2,hz+2*32);DrawLine(0,63,127,0);DrawRetic(10,10,100,50);DrawTrigle(63,17,20,60,100,60);DrawLevel();DrawSineWave();DrawCircle(63,32,r);r-=4;if (r8)r=32;

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报