S3C2410的WINCE BSP添加串口支持 04
![Rank: 8](images/default/star_level3.gif) ![Rank: 8](images/default/star_level3.gif)
- UID
- 872238
|
![](http://images.eccn.com/silabs/silicon_chip_980x60_202203.jpg)
S3C2410的WINCE BSP添加串口支持 04
在其后面添加:
const HWOBJ Io1Obj = {
THREAD_AT_INIT,
SYSINTR_SERIAL1,
(PHW_VTBL) &IoVTbl
}; const HWOBJ Io2Obj = {
THREAD_AT_INIT,
SYSINTR_IR,
(PHW_VTBL) &IoVTbl
};
|
接着搜索:
const PCHWOBJ HWObjects[] = {
&IoObj,
&IrObj
}; |
将其修改为
const PCHWOBJ HWObjects[] = {
&IoObj,
&Io1Obj,
&Io2Obj
}; |
再搜索:
GetSerialObject(
DWORD DeviceArrayIndex
) |
将其函数改为:
{
PHWOBJ pSerObj; DEBUGMSG(DEBUGMODE,(TEXT("GetSerialObject : DeviceArrayIndex = %d "), DeviceArrayIndex));
// Now return this structure to the MDD.
if ( DeviceArrayIndex == 2 )
{
RETAILMSG(1,(TEXT("GetSerialObject Io2Obj ")));
pSerObj = (PHWOBJ)(&Io2Obj);
}
else if(DeviceArrayIndex == 1)
pSerObj = (PHWOBJ)(&Io1Obj);
else
pSerObj = (PHWOBJ)(&IoObj);
return (pSerObj);
}
|
5、打开cfw.c文件,这就是中断处理。
搜索:
BOOL
OEMInterruptEnable(DWORD idInt, // @parm Interrupt ID to be enabled. See <l Interrupt ID's.Interrupt ID's> for a list of possble values.
LPVOID pvData, // @parm ptr to data passed in in the <f InterruptInitialize> call
DWORD cbData) // @parm Size of data pointed to be <p pvData>
找到这一句:case SYSINTR_SERIAL: |
|
|
|
|
|
|