|
|
在進(jìn)行串口調(diào)試的過(guò)程中,遇到了一些問(wèn)題。問(wèn)題描述如下:串口只發(fā)送時(shí),是正常的,無(wú)論的單個(gè)字節(jié)還是多個(gè)字節(jié),都沒(méi)有問(wèn)題。但是當(dāng)單片機(jī)接收到的數(shù)據(jù)在回發(fā)給串口調(diào)試助手,返回值為00. 經(jīng)過(guò)折騰,試了很多種方法。把網(wǎng)上一些人推薦的解決方法通通試了一遍,但還是沒(méi)有解決。
因?yàn)槲沂稚嫌袔讐K同樣的板子,都是我自己焊接的,我驗(yàn)證一下是否是硬件的問(wèn)題,果然,當(dāng)我把程序下載到其他兩塊板子的時(shí)候,串口的接發(fā)都沒(méi)有問(wèn)題。在此我判斷應(yīng)該是由硬件的原因?qū)е麓诘慕邮詹徽!?br />
串口直接從芯片上引出來(lái)的,芯片其他功能都正常,出現(xiàn)硬件問(wèn)題的可能性應(yīng)該挺小的。按我的想法,應(yīng)該不會(huì)出現(xiàn)硬件問(wèn)題。
當(dāng)通電以后,我發(fā)現(xiàn),串口沒(méi)有數(shù)據(jù)收發(fā)的時(shí)候,接收端電平也有變化,接收標(biāo)志位置1.只要我動(dòng)一下板子,接收標(biāo)志位就會(huì)置1,剛開(kāi)始我開(kāi)以為是某個(gè)地方接觸不良。把相應(yīng)的電源接口都重新焊接過(guò)一次,發(fā)現(xiàn)問(wèn)題還是存在。
最后,當(dāng)我把stm芯片按住,在動(dòng)一下板子,這個(gè)問(wèn)題就不存在了。我在想很定是板子沒(méi)有焊接好,果然我仔細(xì)觀看,發(fā)現(xiàn)串口接收引腳與另外一個(gè)引腳連在一起了,我把他倆分開(kāi),在測(cè)試,問(wèn)題解決。
這么一個(gè)小問(wèn)題花費(fèi)了我整整一個(gè)星期,所幸問(wèn)題最終被我解決。在解決這個(gè)問(wèn)題的時(shí)候,也學(xué)習(xí)了一些相關(guān)的知識(shí),雖然解決問(wèn)題的過(guò)程是痛苦的,但是結(jié)果是美好的。一度想把這塊板子放棄,但心里總在想,在堅(jiān)持一下,我就不信,解決不了。
細(xì)節(jié)決定成敗,以后一定要小心,不管是焊接,還是編寫(xiě)程序,能一次成功,就一次成功,千萬(wàn)不要等后面在來(lái)尋找錯(cuò)誤,這樣花費(fèi)的時(shí)間更多。
|
|