⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 44blib.h

📁 三星S3C44B0X的一个DEMO代码,实现LCD显示时钟运行.
💻 H
字号:
/*********************************************** 
 * NAME    : 44BLIB.H                          *
 * Version : 17.Apr.00                         *
 ***********************************************/
#define DebugOut Uart_Printf

#define min(x1,x2) ((x1<x2)? x1:x2)
#define max(x1,x2) ((x1>x2)? x1:x2)

#define ONESEC0 (62500)	//16us resolution, max 1.04 sec
#define ONESEC1 (31250)	//32us resolution, max 2.09 sec
#define ONESEC2 (15625)	//64us resolution, max 4.19 sec
#define ONESEC3 (7812)	//128us resolution, max 8.38 sec
#define ONESEC4 (MCLK/128/(0xff+1))  //@60Mhz, 128*4us resolution, max 32.53 sec

#define NULL 0

#define EnterPWDN(clkcon) ((void (*)(int))0xe0)(clkcon)
#define DOWNLOAD_ADDRESS _RAM_STARTADDRESS


/* RAMTRON */
#define P_RAMTRON	0x4000000

/* 2550 A */
#define rA_RHR_THR_BaudL		(*(volatile unsigned char*)0x6000000)
#define rA_IER__BaudM		    (*(volatile unsigned char*)0x6000001)
#define rA_FCR_ISR 		        (*(volatile unsigned char*)0x6000002)
#define rA_LCR 		            (*(volatile unsigned char*)0x6000003)
#define rA_MCR 		            (*(volatile unsigned char*)0x6000004)
#define rA_LSR 		            (*(volatile unsigned char*)0x6000005)
#define rA_MSR 		            (*(volatile unsigned char*)0x6000006)
#define rA_SPR 		            (*(volatile unsigned char*)0x6000007)

/* 2550 A */
#define rB_RHR_THR_BaudL		(*(volatile unsigned char*)0x8000000)
#define rB_IER__BaudM		    (*(volatile unsigned char*)0x8000001)
#define rB_FCR_ISR 		        (*(volatile unsigned char*)0x8000002)
#define rB_LCR 		            (*(volatile unsigned char*)0x8000003)
#define rB_MCR 		            (*(volatile unsigned char*)0x8000004)
#define rB_LSR 		            (*(volatile unsigned char*)0x8000005)
#define rB_MSR 		            (*(volatile unsigned char*)0x8000006)
#define rB_SPR 		            (*(volatile unsigned char*)0x8000007)

#define P_FONT1616	0x0060000
#define Serial0_BUFLEN 100       //Serial0 buffer len

extern unsigned short int  Font1616[0x48000];

extern unsigned int MCLK ;
extern unsigned int	UART_BAUD ; 
extern char Have_1S;

extern unsigned char Screen_Y_Offset ;
extern char *date[8];
extern unsigned char date_t[7];
extern unsigned char buff[6];
extern unsigned char Status;
extern char whichUart;

//44blib.c
void Delay(int time); //Watchdog Timer is used.

void *malloc(unsigned nbyte); 
void free(void *pt);

void __irq Uart0_RxFifoInt(void);
void __irq Rtc_Tick(void);
int  Test_Rtc_Alarm(void);
void Test_Rtc_Tick(void);
void Get_Rtc(void);
void Rtc_Init(void);

unsigned char Change_BCD_Hex(unsigned char BCDV);
unsigned char Change_Hex_BCD(unsigned char HexV);

#define TESTYEAR2	(0x00)
#define TESTMONTH2 	(0x01)
#define TESTDAY2	(0x01)
#define TESTDATE2	(0x07)  // SUN:1 MON:2 TUE:3 WED:4 THU:5 FRI:6 SAT:7   
#define TESTHOUR2	(0x00)
#define TESTMIN2	(0x00)
#define TESTSEC2	(0x00)

void Port_Init(void);
void Cache_Flush(void);
void Uart_Init(int mclk,int baud);  //串口子程序
void Uart_Select(unsigned char ch);
void Uart_TxEmpty(unsigned char ch);
char Uart_Getch(unsigned char ch);
void Uart_SendByte(unsigned char ch, unsigned char data);
void Uart_SendString(unsigned char ch,char *pt);
void Uart_Printf(char *fmt,...);

void Timer_Start(int divider); //Watchdog Timer is used.
int  Timer_Stop(void);         //Watchdog Timer is used.


void ChangePllValue(int m,int p,int s);

void ChangeMemCon(unsigned *pMemCfg);
void EnableInterrupt(void);
void DisableInterrupt(void);

unsigned char handle_run_year(unsigned char year);
void date_add_one(void);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -