新闻中心

EEPW首页>嵌入式系统>设计应用> S3C2410的WINCE BSP添加串口支持

S3C2410的WINCE BSP添加串口支持

作者: 时间:2016-10-08 来源:网络 收藏

s2410INT->rINTMSK = ~BIT_UART1;

break;

搜索:

void

OEMInterruptDisable(DWORD idInt) // @parm Interrupt ID to be disabled. See

还是这一句:case SYSINTR_SERIAL:

在其后面添加:

case SYSINTR_SERIAL1:

s2410INT->rINTMSK |= BIT_UART1;

s2410INT->rINTSUBMSK |= INTSUB_RXD1;

s2410INT->rINTSUBMSK |= INTSUB_TXD1;

s2410INT->rINTSUBMSK |= INTSUB_ERR1;

break;

搜索:

void

OEMInterruptDone(DWORD idInt) // @parm Interrupt ID. See

依旧找到case SYSINTR_SERIAL:

在其后面添加:

case SYSINTR_SERIAL1:

s2410INT->rINTMSK = ~BIT_UART1;

s2410INT->rINTSUBMSK = ~INTSUB_RXD1;

break;

6、打开armint.c文件。

搜索:else if(IntPendVal == INTSRC_UART0)

在其后面添加:

else if(IntPendVal == INTSRC_UART1)

{

SubIntPendVal = s2410INT->rSUBSRCPND;

// Note that we only mask the sub source interrupt - the serial driver will clear the

// sub source pending register.

//

if(SubIntPendVal INTSUB_ERR1)

{

s2410INT->rINTSUBMSK |= INTSUB_ERR1;

}

else if(SubIntPendVal INTSUB_RXD1)

{

s2410INT->rINTSUBMSK |= INTSUB_RXD1;

}

else if(SubIntPendVal INTSUB_TXD1)

{

s2410INT->rINTSUBMSK |= INTSUB_TXD1;

}

else

{

return(SYSINTR_NOP);

}

// NOTE: Don't clear INTSRC:UART1 here - serial driver does that.

//

s2410INT->rINTMSK |= BIT_UART1;

if (s2410INT->rINTPND BIT_UART1) s2410INT->rINTPND = BIT_UART1;

return(SYSINTR_SERIAL1);

}

7、打开smdk2410.cec文件,添加UART1这个feature。

搜索

ComponentType

(

Name ( Serial )

GUID ( {6563AD6C-E71C-11D4-B892-0050FC049781} )

MaxResolvedImpsAllowed( 999 )

Implementations

(

Implementation

(

Name ( S32410 Serial UART )

在其后面添加:

Implementation

(

Name ( S32410 Serial UART1 )

GUID ( {7C4427A5-286C-4C7A-B687-4E3B364D079B} )

Description ( Samsung S32410 serial UART controller. )

BSPPlatformDir ( smdk2410 )

Version ( 5.0.0.0 )

Locale ( 0409 )

Vendor ( Microsoft )

Date ( 2003-1-13 )

SizeIsCPUDependent( 1 )

BuildMethods

(

BuildMethod

(

GUID ( {07DA2083-6261-4ED6-B5BB-70CF4D930D68} )

Step ( BSP )

CPU ( ARMV4 )

CPU ( ARMV4I )

Action ( '#BUILD(SOURCES,$(_WINCEROOT)PLATFORMSMDK2410driversserial)')

)

)

)

我感觉这个改不改没什么关系,反正网上有人这样改了,我也就改了,但是实际内核定制时中并没有添加上这个feature。

到这里,整个过程就结束了,耗费了我整整一天!其实改动量并不大,但是调试一次光编译就要15分钟,还要下载,烧写,启动~唉,没有仿真器就是麻烦。调了好多次没有成功,就是在注册表的中断号那儿出了问题!


上一页 1 2 3 4 下一页

关键词:

评论


相关推荐

技术专区

关闭