chang_nicolas
驱动小牛
驱动小牛
  • 注册日期2004-08-26
  • 最后登录2007-03-29
  • 粉丝0
  • 关注0
  • 积分370分
  • 威望39点
  • 贡献值0点
  • 好评度34点
  • 原创分0分
  • 专家分0分
阅读:1260回复:5

serial 的中断问题?

楼主#
更多 发布于:2004-11-11 15:09
请问当串口线插入到设备上时,要产生中断吧,然后要把RS232的shutdown pin设为有效,给其上电,那么这段代码加到驱动的那个函数中呢,要保证每次插到设备上时都能产生中断!
wxl_50685330
论坛版主
论坛版主
  • 注册日期2002-11-19
  • 最后登录2018-09-25
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望521点
  • 贡献值0点
  • 好评度419点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-11 16:24
你说的插上串口线的中断用的是哪根?我觉得可以把你说的那些代码写到中断服务里面

每次插到设备上都产生中断跟你用232的哪根线产生中断有关吧,比如用RX或者/DTR.你该看看你的设备是怎么接的
根据地的兄弟们,团结就是力量
leo_cyl
驱动牛犊
驱动牛犊
  • 注册日期2001-08-20
  • 最后登录2009-11-02
  • 粉丝0
  • 关注0
  • 积分22分
  • 威望13点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-11-12 09:27
你说的是CTS/RTS信号吧?如果你的uart支持,那么你只要在pdd 层完成这两个信号的相应动作就可以了。其他的由mdd层来做。上层的应用可以等待一个COM 端口的CTS/RTS 事件。
wxl_50685330
论坛版主
论坛版主
  • 注册日期2002-11-19
  • 最后登录2018-09-25
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望521点
  • 贡献值0点
  • 好评度419点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-11-12 13:31
他好像要做拔插检测,~cts/~rts不行吧
根据地的兄弟们,团结就是力量
chang_nicolas
驱动小牛
驱动小牛
  • 注册日期2004-08-26
  • 最后登录2007-03-29
  • 粉丝0
  • 关注0
  • 积分370分
  • 威望39点
  • 贡献值0点
  • 好评度34点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-11-12 14:16
说得对啊,是用来插拔检测的,用的是DCD,主要是用来实现ActiveSync的,插进cable后,启动ActiveSync,类似usb的那种,检测到插进后,给232上电,拔掉后断电,不晓得在那里实现这种功能啊,oal层还是pdd层,糊涂了
wxl_50685330
论坛版主
论坛版主
  • 注册日期2002-11-19
  • 最后登录2018-09-25
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望521点
  • 贡献值0点
  • 好评度419点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-11-12 17:43
真用的DCD啊:)

你用的处理器有没有DCD中断?如果有,可以在中断里面给232上电。如果嫌这部分代码太长可以在这个中断的IST里面做,COM_Init里面启动这个中断和它的IST,然后返回,IST等待一个事件,DCD中断来的时候置事件有效,然后IST来给232上电。

如果DCD没有中断,当载波检测到后总可以通过一个办法告知给232上电的代码,方式类似
根据地的兄弟们,团结就是力量
游客

返回顶部