?? sys_init.c
字號:
/*-- 文字: 8 --*/
/*-- Times New Roman8; 此字體下對應的點陣為:寬x高=5x8 --*/
unsigned char code WLib_8_5x8[]={0x00,0x6c,0x92,0x92,0x6c};
/*-- 文字: 9 --*/
/*-- Times New Roman8; 此字體下對應的點陣為:寬x高=5x8 --*/
unsigned char code WLib_9_5x8[]={0x00,0x0c,0x92,0x92,0x7c};
/*-- 文字: 0 --*/
/*-- Times New Roman8; 此字體下對應的點陣為:寬x高=5x8 --*/
unsigned char code WLib_0_5x8[]={0x00,0x7c,0x82,0x82,0x7c};
/*-- 文字: 0,1,2,3,4,5,6,7,8,9 寬x高=8x16 --*/
unsigned char code WLib_Num_8x16[160]={
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,
0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,
0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,
0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,
0x00,0x38,0x08,0x08,0xC8,0x28,0x18,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x08,0x31,0x22,0x22,0x11,0x0F,0x00
};
//-- 文字:通
unsigned char code WLib_tong_16x16[]={
0x40,0x42,0x44,0xcc,0x00,0x00,0xf1,0x91,0x95,0xf9,0x95,0x93,0xf1,0x00,0x00,0x00,
0x00,0x40,0x20,0x1f,0x20,0x40,0xbf,0x84,0x84,0xbf,0x94,0xa4,0x9f,0x80,0x80,0x80
};
//-- 文字:道
unsigned char code WLib_dao_16x16[]={
0x40,0x40,0x42,0xcc,0x00,0x04,0xe4,0xa5,0xb6,0xac,0xa6,0xa5,0xe4,0x04,0x00,0x00,
0x00,0x40,0x20,0x1f,0x20,0x40,0x5f,0x4a,0x4a,0x4a,0x4a,0x4a,0x5f,0x40,0x40,0x00
};
//-- 文字:溫
unsigned char code WLib_wen_16x16[]={
0x10,0x60,0x02,0x0c,0xc0,0x00,0xfe,0x92,0x92,0x92,0x92,0x92,0xfe,0x00,0x00,0x00,
0x04,0x04,0x7e,0x01,0x40,0x7e,0x42,0x42,0x7e,0x42,0x7e,0x42,0x42,0x7e,0x40,0x00
};
//-- 文字:毫
unsigned char code WLib_hao_16x16[]={
0x00,0x82,0x82,0x82,0xba,0xaa,0xaa,0xab,0xaa,0xaa,0xba,0x82,0x82,0x82,0x80,0x00,
0x02,0x01,0x40,0x44,0x54,0x54,0x54,0x7e,0xaa,0xaa,0xaa,0xa0,0x82,0xe1,0x00,0x00
};
//-- 文字:度
unsigned char code WLib_du_16x16[]={
0x00,0x00,0xfc,0x24,0x24,0x24,0xfc,0x25,0x26,0x24,0xfc,0x24,0x24,0x24,0x04,0x00,
0x40,0x20,0x9f,0x80,0x84,0x4c,0x55,0x25,0x25,0x55,0x55,0x4c,0x84,0x80,0x80,0x00
};
//-- 文字:伏
unsigned char code WLib_fu_16x16[]={
0x80,0x40,0x20,0xf8,0x07,0x20,0x20,0x20,0x20,0xff,0x20,0x22,0x2c,0x20,0x20,0x00,
0x00,0x00,0x00,0xff,0x80,0x40,0x20,0x18,0x06,0x01,0x06,0x18,0x60,0xc0,0x40,0x00
};
//-- 符號:
unsigned char code WLib_maohao_8x16[]={
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00
};
//-- 符號。
unsigned char code WLib_dian_8x16[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00
};
#endif
/***********************************************************************************
* 函數名稱:dis_start0;
*
* 函數功能描述:顯示開機界面;
*
* 輸入參數:none;
*
* 返回數據:none;
*
* 注意: none;
************************************************************************************/
#if LCDA
void dis_start0 (void)
{
unsigned char x;
LCDA_ClearScreen();
for (x=4;x<240;x+=24)
{
Delay_ms(100);
LCDA_ShowHZxy(x, x, 24,24,HZ_MING_32X32);
LCDA_ShowHZxy(x, x+24,24,24, HZ_LANG_32X32);
LCDA_ShowHZxy(x, x+48,24,24, HZ_KE_32X32);
LCDA_ShowHZxy(x, x+72,24,24, HZ_JI_32X32);
}
}
#elif LCDB
void dis_start0 (void)
{
unsigned int x;
LCDB_ClearScreen();
for (x=4;x<320;x+=24)
{
Delay_ms(100);
LCDB_ShowHZxy(x, x, 24,24,HZ_MING_32X32);
LCDB_ShowHZxy(x, x+24, 24,24,HZ_LANG_32X32);
LCDB_ShowHZxy(x, x+48, 24,24,HZ_KE_32X32);
LCDB_ShowHZxy(x, x+72, 24,24,HZ_JI_32X32);
}
}
#elif LCDC
void dis_start0 (void)
{
LCDC_DispWord (0, 32, WLib_ming_32x32, 4, 32, 1);
LCDC_DispWord (32, 32, WLib_lang_32x32, 4, 32, 1);
LCDC_DispWord (64, 32, WLib_ke_32x32, 4, 32, 1);
LCDC_DispWord (96, 32, WLib_ji_32x32, 4, 32, 1);
LCDC_DispWord (8, 16, WLib_W_10x8, 1, 10, 1);
LCDC_DispWord (19, 16, WLib_W_10x8, 1, 10, 1);
LCDC_DispWord (30, 16, WLib_W_10x8, 1, 10, 1);
LCDC_DispWord (46, 16, WLib_M_9x8, 1, 9, 1);
LCDC_DispWord (57, 16, WLib_L_6x8, 1, 6, 1);
LCDC_DispWord (63, 16, WLib_A_7x8, 1, 7, 1);
LCDC_DispWord (71, 16, WLib_R_7x8, 1, 7, 1);
LCDC_DispWord (79, 16, WLib_M_9x8, 1, 9, 1);
LCDC_DispWord (90, 16, WLib_dot_4x8, 1, 4, 1);
LCDC_DispWord (94, 16, WLib_C_7x8, 1, 7, 1);
LCDC_DispWord (102, 16, WLib_O_7x8, 1, 7, 1);
LCDC_DispWord (110, 16, WLib_M_9x8, 1, 9, 1);
LCDC_DispWord (11, 2, WLib_T_6x8, 1, 6, 1);
LCDC_DispWord (17, 2, WLib_e_5x8, 1, 5, 1);
LCDC_DispWord (22, 2, WLib_l_4x8, 1, 4, 1);
LCDC_DispWord (27, 2, WLib_ddot_3x8, 1, 3, 1);
LCDC_DispWord (34, 2, WLib_0_5x8, 1, 5, 1);
LCDC_DispWord (39, 2, WLib_2_5x8, 1, 5, 1);
LCDC_DispWord (44, 2, WLib_9_5x8, 1, 5, 1);
LCDC_DispWord (49, 2, WLib_line_6x8, 1, 6, 1);
LCDC_DispWord (55, 2, WLib_8_5x8, 1, 5, 1);
LCDC_DispWord (60, 2, WLib_8_5x8, 1, 5, 1);
LCDC_DispWord (65, 2, WLib_2_5x8, 1, 5, 1);
LCDC_DispWord (70, 2, WLib_2_5x8, 1, 5, 1);
LCDC_DispWord (75, 2, WLib_3_5x8, 1, 5, 1);
LCDC_DispWord (80, 2, WLib_5_5x8, 1, 5, 1);
LCDC_DispWord (85, 2, WLib_9_5x8, 1, 5, 1);
LCDC_DispWord (90, 2, WLib_7_5x8, 1, 5, 1);
LCDC_DispWord (95, 2, WLib_line_6x8, 1, 6, 1);
LCDC_DispWord (101, 2, WLib_8_5x8, 1, 5, 1);
LCDC_DispWord (106, 2, WLib_0_5x8, 1, 5, 1);
LCDC_DispWord (111, 2, WLib_2_5x8, 1, 5, 1);
}
#endif
/***********************************************************************************
* 函數名稱:SYSCLK_Init;
*
* 函數功能描述:系統時鐘初始化,使用外部22.1184MHz晶振作為時鐘源;
*
* 輸入參數:none;
*
* 返回數據:none;
*
* 注意: none;
************************************************************************************/
void SYSCLK_Init (void)
{
int i; // 延時計數器
OSCXCN = 0x67; // 使用外部22.1184MHz晶振
for (i=0; i<256; i++); // 等待1ms
while (!(OSCXCN & 0x80)); // 等待外部振蕩器穩定
OSCICN = 0x88; // 切換到外部晶振
}
/***********************************************************************************
* 函數名稱:PORT_Init;
*
* 函數功能描述:配置端口初始化,配置交叉開關和端口;
*
* 輸入參數:none;
*
* 返回數據:none;
*
* 注意: none;
************************************************************************************/
void PORT_Init (void)
{
XBR0 = 0x1F; //設置XBR0
XBR1 = 0x1E; //設置XBR1
XBR2 = 0x44; //打開交叉開關和弱上拉
P0MDOUT = 0x15; //設置P0口輸出
P0 |= 0xEA; //P0口的輸入腳高阻態
P1MDIN = 0x00; //設置P1口輸入信號類型
P1MDOUT = 0x00; //設置P1口輸出
P1 = 0xFF; //P1口高阻態
P2MDOUT = 0x01; //設置P2口輸出
P2 |= 0xFE; //設置P2口輸出
P3MDOUT = 0xFE; //設置P3口輸出
P3 |= 0x01; //設置P3口輸出
P3 &= 0xEF; //P3.4口置0,禁鈴
P74OUT = 0xF7; //設置P4-P7口輸出
P5 |= 0xF0; //鍵盤輸入P5口高4位高阻態
EMI0CF = 0x2D; //外部存儲器接口配置
EMI0TC = 0x9E; //外部存儲器時序控制
}
/****************************************************************************************
文件結束
****************************************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -