我已将自定义BSP配置为具有4个COM端口。 这3个COM端口中的工作正常。
我遇到以下COM端口问题:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\Serial3]
"SysIntr"=dword:16
"IoBase"=dword:03E8
"IoLen"=dword:8
"DeviceArrayIndex"=dword:2
"Prefix"="COM"
"IClass"="{CC5195AC-BA49-48a0-BE17-DF6D1B0173DD}"
"Dll"="Com16550.Dll"
"Order"=dword:0
"Flags"=dword:10 ; User MOde: DEVFLAGS_LOAD_AS_USERPROC
任何超过16个字节的传输都会被截断。在调试时,我们发现在发送前16个字节后,它等待IIR(中断标识寄存器)“发送器保持寄存器空中断”事件发生。
但这不会发生。
有关如何处理此事的任何想法。
答案 0 :(得分:0)
我似乎记得现代' UARTS有一个16字节的发送(和接收)缓冲区,以减少对主CPU的中断。这可以解释为什么在停止之前可以传输16个字节。
至于您的自定义电路板没有中断的原因,我认为您还没有将中断线从UART接线到主处理器。
答案 1 :(得分:0)
这是一个BIOS问题,它在更新BIOS后得到解决