如何使USART串口输出正确的异步通信波形?

[复制链接]
 楼主| 发表于 2008-4-6 12:18 | 显示全部楼层 |阅读模式
用PIC16F914做串行通信试验时,为什么在TX/RC6/SEG9引脚上用示波器测得的波形是lcd的驱动电压波形?<br />串口模块已经作了如下初始化:<br />banksel&nbsp;TXSTA<br />movlw&nbsp;b'00100000'&nbsp;&nbsp;&nbsp;&nbsp;;TXEN=1发送使能,SYNC=0异步通信<br />movwf&nbsp;TXSTA<br />movlw&nbsp;.51&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;2400bps<br />movwf&nbsp;SPBRG<br />clrf&nbsp;STATUS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;RCSTA在bank0<br />movlw&nbsp;b'10000000'&nbsp;&nbsp;&nbsp;&nbsp;;SPEN=1串行端口使能(将RC7/RX&nbsp;和RC6/TX引脚配置为串行端口引脚)<br />movwf&nbsp;RCSTA
发表于 2008-4-6 21:03 | 显示全部楼层

把LCD功能关了

再串行端口使能试试看
 楼主| 发表于 2008-4-7 09:23 | 显示全部楼层

lcd功能要用啊老大

根据张明峰书上所说,设置在异步下只要使SPEN=1,USART模块就接管了TX和RD引脚。难道这种说法错了吗?
发表于 2008-4-7 10:13 | 显示全部楼层

初始化模式,试将TRIS方向也设置一下看

&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;RCSTA,CREN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;接收模块使能<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;RCSTA,SPEN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;使能EUART模块<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;STATUS,RP0<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;TRISC,RX<br />&nbsp;&nbsp;&nbsp;&nbsp;BCF&nbsp;&nbsp;&nbsp;&nbsp;TXSTA,SYNC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;关闭同步模式,异步通信<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;TXSTA,TXEN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;发送模块使能<br />&nbsp;&nbsp;&nbsp;&nbsp;MOVLW&nbsp;&nbsp;&nbsp;&nbsp;.12<br />&nbsp;&nbsp;&nbsp;&nbsp;MOVWF&nbsp;&nbsp;&nbsp;&nbsp;SPBRG<br />&nbsp;&nbsp;&nbsp;&nbsp;CLRF&nbsp;&nbsp;&nbsp;&nbsp;SPBRGH&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;波特率,8M时为9600BPS。<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;PIE1,RCIE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;232接收中断开<br />&nbsp;&nbsp;&nbsp;&nbsp;BSF&nbsp;&nbsp;&nbsp;&nbsp;INTCON,PEIE<br />
 楼主| 发表于 2008-4-8 09:49 | 显示全部楼层

谢谢两位!看来这个栏目的版主更热心

TRISC也设置过了,没有用。<br />不过我要把楼上的代码原封不动地拿来试试看,毕竟-实践是真理的唯一标准!
发表于 2008-4-8 19:55 | 显示全部楼层

前面已经设置过TRISC,TX=0

  
 楼主| 发表于 2008-4-14 10:53 | 显示全部楼层

实验报告:

LCDEN=0关闭LCD模块后,TX输出通信波形正常。<br />LCDEN=1启用LCD模块,但是s9/TX引脚设置成数字I/O后,TX输出通信波形也正常。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

75

主题

1290

帖子

2

粉丝
快速回复 返回顶部 返回列表