我用的cpu是三星的2440,想用gpio口来模拟一个串口,可是不知道怎么下手,刚学WinCE,好多都不懂,希望做过的指点一下。我现在的想法是:将gpio口模拟成rx,tx,然后将rx接到cpu的中断那里,这样gpio口有数据来时,就用中断的方式通知系统去读数据。而数据的发送和接...
全文
回复(10) 2007-09-05 22:54 来自版块 - Wince 程序开发
表情
fishly_0谢谢各位的回复,已经有眉目了 (2007-10-21 21:33)
ok138ok我也是建议用扩展芯片(2007-10-19 22:31)
pumbpeng波特率地的时候还好,高的时候,恰好CPU又比较忙得时候,时序就不好保证了。 我们经常用IO口模拟I2C, I2C是有CLK的,可以保证采样数据时机正确, UART需要本身不传输时钟,靠两边设置一样,用IO模拟就比较难了(2007-10-18 14:08)
fishly_0晕,好像很难啊 ,我现在有点思路了。用cpu的一个定时器来定时采样或者将外部的信号接到cpu的一个外部中断的引脚上。刚开始学,好多都看得很晕 (2007-09-18 21:49)
buaadallas你如果想在wince的平台上用gpio实现一个全功能的串口驱动是非常复杂的。因为你需要用到wince的串口MDD,需要实现很多功能。 如果仅仅是想实现最简单的功能,那建议使用查询方式。把每个要发送的字节进行移位操作,先给io置一个起始电平,然后根据你设置的波特率,等待相应的时间,...(2007-09-10 16:49)
wenzai用这样的方法模拟,波特率不能很高,一般用用还行,我以前是在单片机里做的。 所以使用扩展芯片还是最佳的选择,除了使用并口扩展串口,SPI口转串口的芯片也很多(2007-09-07 08:35)
harktrip兄弟你是因为串口不够用吗? 如果是这样,就加个16C550或16C2550,驱动都有现成的 你用gpio仿真串口,数据准确性相当差(2007-09-06 22:36)
fishly_0我刚开始学WinCE,看网上很多人都说只要懂得改就好了,结果马上就遇到一个想不通的问题了:( ,现在都不知道在哪实现这个功能呢 。 如果用起始位来产生中断,不知道是不是应该在系统响应中断的地方做这个事情呢?那这样就不知道会不会独占cpu了。(2007-09-06 21:45)
fishly_0wenzai,能否指点一下呢。如果按照中断的方式来做,即用数据的开始位来触发中断,那么接下来的一段时间内,是否要隔一段时间就接收一下数据呢?那这样的话,cpu是不是就不能执行其他的任务了? 底层这里是不是没有多线程这个概念?这个我一直想不通 (2007-09-06 21:41)
wenzai在google里搜索IO 模拟串口,可以找到大量你想要的信息(2007-09-06 19:15)

返回顶部