📄 main.c
字号:
//============================================================
// Crossworks AVR application builder
// Wrt: Dang Minh Phuong. kamejoko80@yahoo.com
// Date: 27/5/2006
// Target : M128
// Crystal: 16.000Mhz
//============================================================
#include <__cross_studio_io.h>
#include <ATmega128.h>
#include <math.h>
#include "N6610.h"
void port_init(void)
{
PORTA = 0x7F;
DDRA = 0x80;
}
void Long_Delay(unsigned int m)
{
unsigned int i,j;
for(i=1;i<=m;i++)
for(j=1;j<=50000;j++);
}
//---------------------------------------------------------------
// plot sin(x) function
//---------------------------------------------------------------
void Graph(void)
{
unsigned char x,y,x0,y0;
float yr;
x0=0;
x=0;
y0=0;
while(x<=129)
{
x+=1;
yr=40*sin(x*3.14/32)+64; // Function
y=floorf(yr);
Line(y0,x0,y,x,0x03);
x0=x;
y0=y;
}
}
void main(void)
{
unsigned char i,j;
port_init();
LCD_Init();
Rect(7,2,20,60,1,0x1C); // Drawa circle
PRINT_CHAR(10,5,'y',1,0xFF,0x1C); // Display character
PRINT_CHAR(10,12,'=',1,0xFF,0x1C);
PRINT_CHAR(10,20,'s',1,0xFF,0x1C);
PRINT_CHAR(10,27,'i',1,0xFF,0x1C);
PRINT_CHAR(10,32,'n',1,0xFF,0x1C);
PRINT_CHAR(10,41,'(',1,0xFF,0x1C);
PRINT_CHAR(10,48,'x',1,0xFF,0x1C);
PRINT_CHAR(10,53,')',1,0xFF,0x1C);
Line(64,0,64,129,0x1C);
Line(0,64,110,64,0x1C);
Graph();
Rect(110,64,129,129,1,0xE0); // Draw rectangle
PRINT_CHAR(115,69,'k',1,0xFF,0xE0);
PRINT_CHAR(115,74,'a',1,0xFF,0xE0);
PRINT_CHAR(115,81,'m',1,0xFF,0xE0);
PRINT_CHAR(115,87,'e',1,0xFF,0xE0);
PRINT_CHAR(115,93,'j',1,0xFF,0xE0);
PRINT_CHAR(115,99,'o',1,0xFF,0xE0);
PRINT_CHAR(115,105,'k',1,0xFF,0xE0);
PRINT_CHAR(115,110,'o',1,0xFF,0xE0);
PRINT_CHAR(115,116,'8',1,0xFF,0xE0);
PRINT_CHAR(115,122,'0',1,0xFF,0xE0);
PRINT_CHAR(18,70,'A',1,0xD8,0xFF);
PRINT_CHAR(18,76,'T',1,0xD8,0xFF);
PRINT_CHAR(18,82,'M',1,0xD8,0xFF);
PRINT_CHAR(18,88,'E',1,0xD8,0xFF);
PRINT_CHAR(18,94,'G',1,0xD8,0xFF);
PRINT_CHAR(18,100,'A',1,0xD8,0xFF);
PRINT_CHAR(18,106,'1',1,0xD8,0xFF);
PRINT_CHAR(18,112,'2',1,0xD8,0xFF);
PRINT_CHAR(18,118,'8',1,0xD8,0xFF);
i=DarkRed;
PRINT_CHAR(110,5,'A',2,i,0xFF);
PRINT_CHAR(110,17,'V',2,i,0xFF);
PRINT_CHAR(110,29,'R',2,i,0xFF);
Circle(64,64,20,0,0xE3);
//Circle(90,110,4,1,0xFF);
/*
#define DarkBlue 0x02
#define LightBlue 0x03
#define DarkGreen 0x14
#define LightGreen 0x1c
#define DarkRed 0x60
#define LightRed 0xe0
#define White 0xff
#define Black 0x00
#define Yellow 0xdd
#define Purple 0x62
*/
while(1);
while(1)
{
for(j=0;j<=64;j++)
for(i=0;i<=64;i++)
{
if (j>=64-i)
Put_Pixel(i,j,0xE0); // Red
else
Put_Pixel(i,j,0x3); // Blue
}
for(j=64;j<=129;j++)
for(i=0;i<=64;i++)
{
if (j<=64+i)
Put_Pixel(i,j,0xFC); // Yelow
else
Put_Pixel(i,j,0xE3); // Pink
}
for(j=0;j<=64;j++)
for(i=64;i<=129;i++)
{
if (j>=i-64)
Put_Pixel(i,j,0x1C); // Green
else
Put_Pixel(i,j,0xFF); // White
}
for(j=64;j<=129;j++)
for(i=64;i<=129;i++)
{
if (j<=193-i)
Put_Pixel(i,j,0x1F); // sweat Blue
else
Put_Pixel(i,j,0xD8); // Brown
}
Long_Delay(20);
for(j=0;j<=129;j++)
for(i=0;i<=129;i++)
Put_Pixel(i,j,0xFF); // sweat Blue
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -