📄 hello.c
字号:
/******************************************************************************/
/* HELLO.C: Hello World Example */
/******************************************************************************/
/* This file is part of the uVision/ARM development tools. */
/* Copyright (c) 2005-2006 Keil Software. All rights reserved. */
/* This software may only be used under the terms of a valid, current, */
/* end user licence from KEIL for a compatible version of KEIL software */
/* development tools. Nothing else gives you the right to use this software. */
/******************************************************************************/
#include <stdio.h> /* I/O Functions */
#include <S3C44B0X.H> /* S3C44B0X definitions */
extern volatile unsigned long timeval; /* Current Time Tick */
extern unsigned int LcdBuffer[244][640/4];
extern const unsigned char car[153600];
extern const unsigned char sky[153600];
extern void Lcd_Initial(void);
extern void Lcd_DrawBackground(unsigned char RGB);
extern void Lcd_PutPixel(unsigned int x, unsigned int y,unsigned char RGB);
extern void Lcd_DrawBox(unsigned int H_Offset,unsigned int V_Offset,unsigned int H_Size,unsigned int V_Size,unsigned char RGB);
extern void Lcd_DrawHline(unsigned int x0,unsigned int y0,unsigned int x1,unsigned char RGB);
extern void Lcd_DrawVline(unsigned int x0,unsigned int y0,unsigned int y1,unsigned char RGB);
extern void Lcd_DrawLine(unsigned int x0,unsigned int y0,unsigned int x1,unsigned int y1,unsigned char RGB);
extern void Lcd_PutHz16(unsigned int x,unsigned int y,unsigned char RGB,unsigned char *GB2312);
extern void Lcd_PutChar(unsigned int x,unsigned int y,unsigned char RGB,unsigned char *c);
extern void Lcd_Print(unsigned int x,unsigned int y,unsigned char RGB,unsigned char *c);
extern void Lcd_DrawImage(const unsigned char *pic);
extern int sendchar (int ch);
extern void init_serial (void);
extern void init_timer (void); /* Initialize Timer */
extern void init_serial (void); /* Initialize Serial Interface */
#define MCLK 60000000 /* Master Clock */
#define TCLK 1000 /* Timer Clock */
#define WRBUFOPT (0x8) // write_buf_on
//#define SYSCFG_8KB (0x6)
#define SYSCFG_0KB (0x0|WRBUFOPT)
#define SYSCFG_4KB (0x2|WRBUFOPT)
#define SYSCFG_8KB (0x6|WRBUFOPT)
#define SYSCFG_0KB (0x0|WRBUFOPT)
#define SYSCFG_4KB (0x2|WRBUFOPT)
#define SYSCFG_8KB (0x6|WRBUFOPT)
#define CACHECFG SYSCFG_8KB
#define TCNT (MCLK/TCLK/2) /* Timer Counts */
// static int f_nDelayLoopCount = 400;
extern volatile unsigned long timeval; /* Current Time Tick */
void wait (unsigned long time) { /* Wait Function */
unsigned long tick;
tick = timeval;
while ((timeval - tick) < time); /* Wait for specified Time */
}
extern void init_timer (void); /* Initialize Timer */
extern void init_serial (void); /* Initialize Serial Interface */
__irq void HandlerINT4567 (void) { /* Timer 5 Interrupt Handler */
pPIO->PCONC =0x5501ff54;
pPIO->EXTINPND=0x0f ; pIC->I_ISPC = INT_EINT4567;
}
int main (void) {
int count=48;
int gg=0xfff4;
//long kk;
init_timer(); /* Initialize Timer */
init_serial(); /* Initialize Serial Interface */
//pPIO->PCONC =0x5501ff54;
pPIO->PCONG=0xffff;
pPIO->EXTINT=0x0;
pPIO->PUPG=0x0;
pIC->INTMSK &= ~(INT_GLOBAL | /* Global Interrupt Enable */
INT_EINT4567);
Lcd_Initial();
// Lcd_DrawBackground(0x1f);
Lcd_DrawBackground(0xff);
Lcd_DrawImage(car);
// Lcd_DrawImage(sky);
Lcd_Print(160,32,0xe0,"自动化配料系统");
Lcd_Print(50,168,0x1c,"参数设置");
Lcd_Print(160,168,0x1c,"配料设置");
Lcd_Print(270,168,0x1c,"启动配料");
/* Loop forever */
while (1) {
/* for(kk=0;kk<0xfffff;kk++)
{
// kk=kk;
} */
if(count==58) count=48;
if(gg==0xfff0)
{gg=0xfff2;
Lcd_DrawBox(8,96,80,16,0x1f);
Lcd_Print(8,96,0xc0,"今天好运气...");
sendchar(count);
count++;
}
else if(gg==0xfff2)
{gg=0xfff4;
Lcd_DrawBox(8,96,80,16,0x1f);
Lcd_Print(8,96,0xc0,"老狼请吃鸡...");
sendchar(count);
count++;
}
else if(gg==0xfff4)
{gg=0xfff8;
Lcd_DrawBox(8,96,104,16,0x1f);
Lcd_Print(8,96,0xc0,"-_- -_-");
sendchar(count);
count++;
}
else if(gg==0xfff8)
{gg=0xfff0;
}
pPIO->PDATC |=0x000f;
pPIO->PDATC &=gg;
wait(900); // wait 900ms
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -