完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我刚接触微芯片。我用PIC16F877A微控制器和pickit 3进行调试。我试图通过UART发送数据。RX和Tx引脚短路。因此,无论我发送什么数据都必须在RCREG中接收。当我尝试发送数据时,即当我将数据放入TXREG中并且当我启用传输TXIF时,在RCREG中将看不到任何数据。因为TSR寄存器最初(第一次)根本不变空,所以它将是空的。
|
|
相关推荐
5个回答
|
|
微笑:
|
|
|
|
阅读数据表-它确切地解释了为什么会发生这种情况(简短版本:当UART Tx全部是中断驱动时,它让您开始)。
|
|
|
|
无效的txxx数据(未签名的char DATA1){同时(!)!TrMG=DATA1;TXEN=1;而(PrI1BIT.TXIF);1);如果(数据1%2==1){PORTAbits.RA4=0==1){PORTAbits.RA4=0;}否则{PORTAbits.RA4=1;}}}_无符号charrxxxxxxxxxxxxxxx数据无符号charrxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxRC4=1;PORTCbit.RC6=0;SPBRG=31;RCSTAbits.SPEN=1;RCSTAbits.CREN=1;TXSTAbits.SYNC=0;INTCONbits.GIE=1;//ENABLE中断INTCONbits.PEIE=1;//ENable外围中断。PIE1bits.RCIE=1;//ENABLE USART接收中断PIE1bits.TXIE=0;//禁用USART TX中断TXEN=1;int index=0;而(1){PORTB=0xFF;TX9=0;index=index+index+1;tx_data((无符号字符)index);if(index==255){index=0;}//End of mainI已经复制了UART的代码,这是tak从示例代码中,你能指出哪里可能是问题吗?
|
|
|
|
为什么要在发送的每个字符上启用TX侧?使设备在离开之后单独离开。与TX9设置相同。写到TXBUF将触发发送比特。另外,您最好在某个地方有一个ISR来处理Rx中断;否则当接收到字符时,设备可能会重置。还不成问题,但要小心切换该处理上的单个比特。r.更现代的设备有一个LAT寄存器,它有助于克服所谓的“读-修改-写”(RMW)问题,但是您正在使用的设备在将来扩展代码时可能会遇到这个问题。
|
|
|
|
这是您最大的问题。如果只是要进行轮询,请不要启用中断。正如Susan所提到的,如果启用中断,那么当中断条件变为真时,PIC将尝试跳到中断服务例程。您没有中断,因此您的程序将崩溃。
|
|
|
|
只有小组成员才能发言,加入小组>>
5238 浏览 9 评论
2028 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3204 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
778浏览 1评论
666浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
595浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
677浏览 0评论
576浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 06:50 , Processed in 4.209479 second(s), Total 86, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号