我正在学习LM3S3748的例程,usb_dev_serial。程序里面,将UART0_BASE或UART1_BASE定义为USB_UART_BASE,另外,例程在于上位机通信的过程中,将原本属于UART的中断向量定义成了USBUARTIntHandler,并以此来完成上位机与下位机的通信。
请问,
1、USB模块在做模拟串口时,是否会强制占用芯片的一个UART模块?
2、如果启用USB模拟串口功能,那么还能正常使用UART模块完成芯片与其他UART设备之间的通信吗?
usb_dev_serial例程是实现USB虚拟串口通信。开发板工作在USB Device模式,当连接到PC时,USB作为模拟串口使用,PC会安装驱动usb_dev_serial.inf。使能UART0作为另一个真实的串口,用于系统的调试以及数据传输的查看。
具体的流程是这样的:在PC上通过一个串口调试工具将数据通过USB模拟串口传输到开发板上,开发板将接收到的数据通过UART0回传到PC的另一个串口调试工具的接收数据区。也可以UART0发送,USB模拟串口接收。
USBUARTIntHandler只是一个ISR的名字,可以随便命名的。
1、USB模块在做模拟串口时,是否会强制占用芯片的一个UART模块?
不会。
2、如果启用USB模拟串口功能,那么还能正常使用UART模块完成芯片与其他UART设备之间的通信吗?
能。