📄 lcd.c
字号:
#include "constant.h"
#include "com.c"
#include "stdio.h"
//画线
void line(byte x0, byte y0, byte x1, byte y1)
{
int dx, dy, incx, incy, inc1, inc2, e;
byte i, x, y;
//求水平距离
if (x1 > x0)
{
dx = x1 - x0;
incx = 1;
}
else
{
dx = x0 - x1;
incx = -1;
}
//求竖直距离
if (y1 > y0)
{
dy = y1 - y0;
incy = 1;
}
else
{
dy = y0 - y1;
incy = -1;
}
x = x0;
y = y0;
//若水平距离大于竖直距离
if (dx > dy)
{
e = (dy << 1) - dx;
inc1 = (dy - dx) << 1;
inc2 = dy << 1;
for (i = 0; i <= dx; i++)
{
pixel(x, y);
x += incx;
if (e < 0)
{
e += inc2;
}
else
{
y += incy;
e += inc1;
}
}
}
//竖直距离大于水平距离
else
{
e = (dx << 1) - dy;
inc1 = (dx - dy) << 1;
inc2 = dx << 1;
for (i = 0; i <= dy; i++)
{
pixel(x, y);
y += incy;
if (e < 0)
{
e += inc2;
}
else
{
x += incx;
e += inc1;
}
}
}
}
void main()
{
byte i, j;
// SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
// TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
// TH1 = 221; /* TH1: reload value for 1200 baud @ 16MHz */
// TR1 = 1; /* TR1: timer 1 run */
// TI = 1; /* TI: set TI to send first char of UART */
Init();
FontWidth = 8;
FontHeight = 16;
ShowStr(30, 0, "ABCDEFFF");
rect(0, 0, 20, 30);
show();
line(20, 30, 0, 0);
show();
while (1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -