这是一个很长的历史,回到1980调制解调器的海因斯调制解调器中,虽然他们使用了“+++”和一秒钟的延迟。http://En.维基百科…org……如果你这样做,你可能需要使你的250MS延迟更长一点,或者在调用延迟之前添加一个等待TrMT。
以上来自于百度翻译
以下为原文
You got it.
This has a long history, going back to Hayes modems in the 1980's, although they used "+++" and a one second delay.
https://en.wikipedia.org/..._set#Hayes.27_solution
Note, your transmit routine is inefficient, it prevents the PIC doing anything while the UART peripheral does the transmitting.
You can make it more efficient by changing to:
void UART3WriteString(const char * str) {
while( *str ) {
while (U3STAbits.UTXBF); //wait until room in transmit buffer
U3TXREG = *str++;
}
}
If you do this, you may need to make your 250ms delay a little longer, or add a wait for TRMT before calling the delay.
这是一个很长的历史,回到1980调制解调器的海因斯调制解调器中,虽然他们使用了“+++”和一秒钟的延迟。http://En.维基百科…org……如果你这样做,你可能需要使你的250MS延迟更长一点,或者在调用延迟之前添加一个等待TrMT。
以上来自于百度翻译
以下为原文
You got it.
This has a long history, going back to Hayes modems in the 1980's, although they used "+++" and a one second delay.
https://en.wikipedia.org/..._set#Hayes.27_solution
Note, your transmit routine is inefficient, it prevents the PIC doing anything while the UART peripheral does the transmitting.
You can make it more efficient by changing to:
void UART3WriteString(const char * str) {
while( *str ) {
while (U3STAbits.UTXBF); //wait until room in transmit buffer
U3TXREG = *str++;
}
}
If you do this, you may need to make your 250ms delay a little longer, or add a wait for TRMT before calling the delay.
举报