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

📄 control.c

📁 長高44b0xi BIOS源碼 FS44B0II BIOS具有啟動、引導
💻 C
字号:
#include "../inc/def.h"
#include "../inc/config.h"
#include "../inc/board.h"
#include "44b.h"
#include "option.h"

void ShowBootInfo(void)
{
	puts("\n **************************************\n");
	puts("*                                       *\n");
	puts("*   BIOS for FS44B0 CORE Board V3.30    *\n");
	puts("*       Http://www.dmatek.com.tw        *\n");
	puts("*                                       *\n");
	puts(" ***************************************\n");
}

//#define	FS44B0_BOARD

void PortInit(void)
{
	// PORT A GROUP
	/*  BIT 9	8	7	6	5	4	3	2	1	0	*/
	/*  A24	  A23	A22	A21	A20	A19	A18	A17	A16	A0	*/	      
	/*  1		1	1	1	1	1	1	1	1	1	*/
	rPCONA = 0x3ff;	

	// PORT B GROUP
	/* BIT 10   9    8       7      6        5     4     3     2     1     0    */
	/*     /CS5 /CS4 /CS3    /CS2   /CS1     nWBE3 nWBE2 /SRAS /SCAS SCLS  SCKE	*/
	/*     NC   NC   RTL8019 USBD12 NV_Flash NC    NC    Sdram Sdram Sdram Sdram*/
	/*     1,   1,   1,      1,     1,       0,    0,    1,    1,    1,    1    */
	rPDATB = 0x7cf;
    
	//PORT C GROUP
	//BUSWIDTH=16													*/
	/*  PC15		14		13		12		11		10		9		8	*/
	/*	o		o		RXD1	TXD1	o		o		o		o	*/
	/*	NC		NC		Uart1	Uart1	NC		NC		NC		NC	*/
	/*   01		01		11		11		01		01		01		00	*/

	/*  PC7		6		5		4		3		2		1		0	*/
	/*   o		o		o		o		o		o		o		o	*/
	/*   NC		NC		NC		NC		NFALE 	NFCLE 	NFCE 	NFRB*/
	/*   01		01		01		01		01		01		01		00	*/
#ifdef FS44B0_BOARD
	rPDATC = 0x0100;	//All IO is low, PC8 = 1 LCD-Off, PC9 = 0 BackLight Off
	rPCONC = 0xfff5ff54;	//0->D12SUSPD, 1~3->LED, 4~7->VD7~VD4, 8->DISPON, 9->BACKLIGHT, 10~13->UART1, 14->RTS0, 15->CTS0
	rPUPC  = 0x0000;	//disable all pull-up
#elif defined ST44B0_BOARD
	rPDATC = 0x0300;	//All IO is low, PC8 = 1 LCD-Off, PC9 = 1 BackLight Off
	rPCONC = 0x0005ff00;	//0~3->input, 4~7->VD7~VD4, 8->DISPON, 9->BACKLIGHT, 10~15->input
	rPUPC  = 0x0000;	//disable all pull-up
#else
	rPDATC = 0x0100;	//All IO is low, PC8 = 1 LCD-Off, PC9 = 0 BackLight Off
	rPCONC = 0xfff5ff54;	//0->D12SUSPD, 1~3->LED, 4~7->VD7~VD4, 8->DISPON, 9->BACKLIGHT, 10~13->UART1, 14->RTS0, 15->CTS0
	rPUPC  = 0x0000;	//disable all pull-up
#endif	

	//PORT D GROUP
	/*  PORT D GROUP(I/O OR LCD)										*/
	/*  BIT7		6		5		4		3		2		1		0	*/
	/*      VF		VM		VLINE	VCLK	VD3		VD2		VD1		VD0	*/
	/*	   10		10		10		10		10		10		10		10	*/
	rPCOND= 0xaaaa;	
	rPUPD = 0x00;
	//These pins must be set only after CPU's internal LCD controller is enable
	
	//PORT E GROUP 
	/*  Bit 8		7		6		5		4		3		2		1		0		*/
	/*		ENDLAN	LED3	LED2	LED1	LED0	BEEP	RXD0	TXD0	CLKOUT	*/ 
	/*      10		01		01		01		01		01		10		10		11		*/
#ifdef FS44B0_BOARD
	rPCONE	= 0x20828;	//0->input, 1 2->TXD0 RXD0, 3 4 6 7->input, 5->beep, 8->CODECLK
	rPUPE	= 0x000;	//disable all pull-up
#elif defined ST44B0_BOARD
	rPDATE	= 0x70;
	rPCONE	= 0x15ab;	//0->FOUT, 1 2->TXD0 RXD0, 3->beep, 4~6->LED, 7->input, 8->ENDIAN
	rPUPE	= 0x000;	//disable all pull-up
#else
	rPCONE	= 0x26568;	//0->input, 1 2->TXD0 RXD0, 3 4->input, 5->led, 6->buzzer, 7->led, 8->CODECLK
	rPDATE	= 0x60;
	rPUPE	= 0x000;	//disable all pull-up
#endif	
	
	//PORT F GROUP
	/*  Bit8		7		6		5		 4		3		2		1		0		*/   
	/*  IISCLK	IISDI	IISDO	IISLRCK	Input	Input	Input	IICSDA	IICSCL	*/
	/*	100		100		100		100		00		01		01		10		10		*/
#ifdef 	FS44B0_BOARD
	rPCONF = 0x24900a;	//0 1->IICSCL IICSDA, 2~4->input 5~8->IIS PORT
	rPUPF  = 0x000;		//disable all pull-up
#elif defined ST44B0_BOARD
	rPCONF = 0x24000;	//0~5->input, 6 7->TXD1 RXD1, 8->input
	rPUPF  = 0x000;		//disable all pull-up
#else
	rPCONF = 0x24900a;	//0 1->IICSCL IICSDA, 2~4->input 5~8->IIS PORT
	rPUPF  = 0x000;		//disable all pull-up
#endif

	//PORT G GROUP
	/*  BIT7		6		5		4		3		2		1		0	 */
	/*	INT7		INT6		INT5		INT4		INT3		INT2		INT1		INT0	*/
	/*    S3		S4		S5		S6		NIC		EXT		IDE		USB	*/
	/*      11      11      11      11      11      11      11      11       */
	rPCONG = 0xff3c;	//eint1 is eth interrupt in FS44B0, eint2 for ide
	rPUPG  = 0x00;		//disable all pull-up
	
//	rSPUCR = 0x7;  //D15-D0 pull-up disable
	rSPUCR = 0x6;  //D15-D0 pull-up enable

	/*┮Τ

⌨️ 快捷键说明

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