阅读:1326回复:5
serial 的中断问题?
请问当串口线插入到设备上时,要产生中断吧,然后要把RS232的shutdown pin设为有效,给其上电,那么这段代码加到驱动的那个函数中呢,要保证每次插到设备上时都能产生中断!
|
|
论坛版主
|
沙发#
发布于:2004-11-11 16:24
你说的插上串口线的中断用的是哪根?我觉得可以把你说的那些代码写到中断服务里面
每次插到设备上都产生中断跟你用232的哪根线产生中断有关吧,比如用RX或者/DTR.你该看看你的设备是怎么接的 |
|
板凳#
发布于:2004-11-12 09:27
你说的是CTS/RTS信号吧?如果你的uart支持,那么你只要在pdd 层完成这两个信号的相应动作就可以了。其他的由mdd层来做。上层的应用可以等待一个COM 端口的CTS/RTS 事件。
|
|
论坛版主
|
地板#
发布于:2004-11-12 13:31
他好像要做拔插检测,~cts/~rts不行吧
|
|
地下室#
发布于:2004-11-12 14:16
说得对啊,是用来插拔检测的,用的是DCD,主要是用来实现ActiveSync的,插进cable后,启动ActiveSync,类似usb的那种,检测到插进后,给232上电,拔掉后断电,不晓得在那里实现这种功能啊,oal层还是pdd层,糊涂了
|
|
论坛版主
|
5楼#
发布于:2004-11-12 17:43
真用的DCD啊:)
你用的处理器有没有DCD中断?如果有,可以在中断里面给232上电。如果嫌这部分代码太长可以在这个中断的IST里面做,COM_Init里面启动这个中断和它的IST,然后返回,IST等待一个事件,DCD中断来的时候置事件有效,然后IST来给232上电。 如果DCD没有中断,当载波检测到后总可以通过一个办法告知给232上电的代码,方式类似 |
|