實驗用的單片機是STC89C52RC,我寫了個程序想通過串口發送一組數據過去然后單片機原封不動把這一組數據發回給PC,PC發送數據用的軟件是串口調試助手,但是我發現只要超過了10個字節的數據反發回來的數據就會老是少一個字節,比如我發54 01 00 08 52 4c 01 00 03 04 05 08,單片機發回來的總會少一個字節,有時候會少04,有時候會少05,然后我再試54 01 00 08 52 4c 01 00 03 04 05 08 87 ed ba,發現發送回來的字節總要比發送出去的字節要少一位,而且都是要么少04,要么就少05,其他數據都是正常的,我發現04剛好是第10個字節,05是第11個字節。
我程序的處理方式是只要接收到一個字節就馬上把接收到的字節發送回來給PC,我沒有用到數組,這樣就不存在數組空間溢出什么的了,想不明白,這會是什么原因呢? |