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

📄 io_port.c

📁 QX44B0的BIOS源代码
💻 C
字号:
#include "44b.h"

#include "io_port.h"

#define   BIT_IOLED          0x1

void IO_PortInit()
{
      ///****PortA 使用默认值****/      10-bit output

    //*********断口 PortB配置********/  11-bit output
    //    引脚       功能       配置值
    //  PortB.10    nGCS5         1
    //  PortB.09    nGCS4         1
    //  PortB.08    nGCS3         1

    //  PortB.07    nGCS2         1
    //  PortB.06    nGCS1         1
    //  PortB.05    OUTPUT        0
    //  PortB.04    OUTPUT        0
    //  PortB.03    nSRAS         1
    //  PortB.02    nSCAS         1
    //  PortB.01    SCLK          1
    //  PortB.00    SCKE          1
    rPCONB = 0x000007CF;
    rPDATB = 0x07EF;


    //*********断口 PortC配置********/  16-bit input/output
    //    引脚       功能       配置值
    //  PortC.15   Input          00
    //  PortC.14   Input          00
    //  PortC.13   RxD1           11
    //  PortC.12   TxD1           11
    //  PortC.11   Output         01
    //  PortC.10   Output         01
    //  PortC.09   Output         01
    //  PortC.08   OutPut         01

    //  PortC.07   VD4            11
    //  PortC.06   VD5            11
    //  PortC.05   VD6            11
    //  PortC.04   VD7            11
    //  PortC.03   IISCLK         11
    //  PortC.02   IISDI          11
    //  PortC.01   IISDO          11
    //  PortC.00   IISRLCK        11
    rPCONC = 0x0F55FFFF;
    rPDATC = 0xFFFF;
    rPUPC |= 0xC000; 

    //*********断口 PortD配置********/   8-bit input/output
    //    引脚     功能         配置值
    //  PortD.07   VFRAME         10
    //  PortD.06   VM             10
    //  PortD.05   VLINE          10
    //  PortD.04   VCLK           10
    //  PortD.03   VD3            10
    //  PortD.02   VD2            10
    //  PortD.01   VD1            10
    //  PortD.00   VD0            10
    rPCOND = 0x00009AAA;	//PD6 = Output(For MTV-C3224LCD)
    rPDATD = 0xBF;			//PD6 = 0	//LCD Off
    rPUPD  = 0x00;

    //*********断口 PortE配置********/   9-bit input/output
    //    引脚      功能        配置值
    //  PortE.08   CODECLK        10
    //  PortE.07   OutPut         01            D5
    //  PortE.06   OutPut         01            D4
    //  PortE.05   OutPut         01            D3
    //  PortE.04   OutPut         01            D2
    //  PortE.03   OutPut         01            D1
    //  PortE.02   RxD0           10
    //  PortE.01   TxD0           10
    //  PortE.00   OutPut         00            
    rPCONE = 0x00025568;
    rPDATE = 0x1FF;
    rPUPE |= 0x0FF06; 

    //*********断口 PortF配置********/   9-bit input/output
    //    引脚      功能        配置值
    //  PortF.08   SIOCLK        011
    //  PortF.07   SIORxD        011
    //  PortF.06   SIORDY        011   001 OUTPUT
    //  PortF.05   SIOTXD        011
    //  PortF.04   nXDREQ0        11
    //  PortF.03   nXDACK0        11
    //  PortF.02   nWAIT          10
    //  PortF.01   IICSDA         10
    //  PortF.00   IICSCL         10
    //rPCONF = 0x001B2FEA;

    rPCONF = 0x0024900a;	//0 1->IICSCL IICSDA, 2~4->input 5~8->IIS PORT
    rPDATF = 0x1FF;
    rPUPF |= 0x3;                    //SDA,SCL  接上拉电阻

    //*********断口 PortG配置********/  8-bit input/output
    //    引脚      功能        配置值
    //  PortF.07   InPut          00  S4
    //  PortF.06   InPut          11  S3
    //  PortF.05   InPut          11  S2
    //  PortF.04   InPut          11  S1
    //  PortF.03   EINT3          11
    //  PortF.02   EINT2          11
    //  PortF.01   EINT1          11
    //  PortF.00   EINT0          11
    rPCONG = 0x000000FF;
    rPDATG = 0xFF;

    /***** 外部中断触发模式配置 *****/
    //   中断      信号        配置值
    //  EINT7   下降缘触发      011
    //  EINT6   下降缘触发      011
    //  EINT5   下降缘触发      011
    //  EINT4   下降缘触发      011

    //  EINT3   下降缘触发      011
    //  EINT2   下降缘触发      011
    //  EINT1   高电平触发      001
    //  EINT0   下降缘触发      011
    rEXTINT = 0x33333313;

}


//PortE  FOR  LED
void IO_PortSetLed(unsigned char OnOff)
{
    if( OnOff == LEDON ) rPDATE = rPDATE | BIT_IOLED;
    if( OnOff == LEDOFF ) rPDATE = rPDATE & (~BIT_IOLED);
}

⌨️ 快捷键说明

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