?? draw_line.c
字號:
/*****************************************************************************
Filename: native.c
Version: 0.01
Description: calculate measure value
Returns: result
Revision History:
EQH-01, 屈宵軍 09/25/04, - Original release
*****************************************************************************/
#include<tms320.h>
#include<math.h>
char STR1[]="L1";
char STR2[]="L2";
char STR3[]="L3";
char STR4[]="V";
char STR6[]="A";
typedef unsigned char Uchar;
void Linehv(Uchar length);
void point(void);
void Linexy(Uchar endx,Uchar endy);
void Fill_data(void);
extern uint col,row,xy;
extern Uchar Wrbyte;
void Draw_Line(void)
{
// Rollscreen(1);
Fill_data();
col=0;
row=0;
xy = 1; /*方向標志。定為水平方向 */
Linehv(192); /*畫一條橫線(0,0)-(191,0) */
col=0;
row=40;
xy = 1;
Wrbyte=0;
Linehv(192); /*畫一條橫線(0,15)-(191,15) */
col=0;
row=63;
xy = 1;
Wrbyte=0;
Linehv(192); /*畫一條橫線(0,32)-(191,32) */
/********************************************************************/
col=0;
row=0;
xy = 0; /*方向標志。定為垂直方向 */
Wrbyte=0;
Linehv(63); /*畫一條豎線(0,1)-(0,31) */
/*********************************************************************/
col=63;
row=0;
xy = 0; /*方向標志。定為垂直方向 */
Wrbyte=0;
Linehv(63); /*畫一條豎線(0,1)-(0,31) */
col=127;
row=0;
xy = 0; /*方向標志。定為垂直方向 */
Wrbyte=0;
Linehv(63); /*畫一條豎線(0,1)-(0,31) */
col=191;
row=0;
xy = 0;
Wrbyte=0;
Linehv(63); /*畫一條豎線(191,1)-(191,31) */
col=0; /*設定斜線的起點坐標 */
row=63;
// Linexy(44,31); /*畫一段斜線(0,63)-(44,31) */
// col=44;
row=31;
// Linexy(190,62); /*繼續畫斜線(44,31)-(191,63) */
}
/****************************************/
/*畫線。只提供X或Y方向的,不支持斜線 */
/****************************************/
void Linehv(Uchar length)
{
Uchar xs,ys;
if (xy){ys = col;
for (xs=0;xs<length;xs++){
col = ys + xs;
point();}
}
else {xs = row;
for (ys=0;ys<length;ys++){
row = xs + ys;
point();}
}
}
/****************************************/
/* 畫點 */
/****************************************/
void point(void)
{
Uchar x1,y1,x,y;
x1=col;
y1=row;
row=y1>>3; /*取Y方向分頁地址 */
Rddata();
y=y1&0x07; /*字節內位置計算 */
x=0x01;
x=x<<y; /*移入所畫點 */
Wrdata(Wrbyte|x); /*畫上屏幕 */
col=x1; /*恢復xy坐標 */
row=y1;
}
void Fill_data(void)
{
col=51;
row=0;
Putstr(STR1,2);
col=51;
row=2;
Putstr(STR2,2);
col=51;
row=4;
Putstr(STR3,2);
col=85;
row=6;
Putstr(STR4,1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -