欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
曾經(jīng)RS232串口通信的感悟
[打印本頁]
作者:
heise
時間:
2014-8-18 21:47
標題:
曾經(jīng)RS232串口通信的感悟
一個月前,進行了最為基礎的rs232串口通信實驗。當時還不懂中斷是什么,而在查找串口通信資料的時候一直在被強調(diào)可以使用中斷或是查詢模式,當然查詢也不懂。中斷算是比較難以接受的,因為之前在用VC++編譯C語言程序時,程序中只有一個main()函數(shù)的思想已經(jīng)根深蒂固,不是不明白而是出于對中斷的抵觸不可接受。后來由于多次接觸,漸漸的也發(fā)現(xiàn)了它的重要性,單片機程序中main()函數(shù)跟中斷服務程序是同等級別的,中斷發(fā)生時中斷的是當前運行的main()函數(shù)。
用了兩天的時間也大抵搞清楚了有關定時/計數(shù)器,以及中斷相關的寄存器,一個采用中斷模式的RS232程序也就隨之編寫完了。把程序燒寫到flash之后通過RS232串口能夠跟電腦通信,但是發(fā)送給上位機的數(shù)據(jù)一直是混亂的,完全不聽從我的設置。我忽視了一個重要的細節(jié),有關波特率的調(diào)節(jié)問題,說到底就是晶振選擇不合理。選用11.0592的晶振才能夠得到整數(shù)的波特率,以此減小波特率誤差。然而我一直用的12M晶振,這樣的錯誤竟然持續(xù)了50次之多,搞清楚了原因之后問題才得以解決。后來當我引用按鍵控制的時候問題又來了,按一次按鍵發(fā)送的數(shù)據(jù)長短不一,或多或少。原因是我忽視了按鍵抖動問題,按一次按鍵按鍵分合的次數(shù)往往不止一次。當時如果不是一位前輩指點怕是我極難找到這個問題,在進行軟件消抖之后問題也就解決了,最終想要的效果終于得到了。
在完成了RS232通訊實驗后后面的一系列通訊業(yè)變得簡單了起來,后來又一一實踐了SPI,usart,等同步通信方式,并且開始著手USB的學習。在經(jīng)歷了種種失敗之后越來越明顯的感覺到了一個問題,就我們目前所遇到的困哪而言,其實解決的方案都很簡單實施的過程也很方便,而發(fā)現(xiàn)問題所在才是隱藏最深最為重要的一步。就像我們在電工實習以及電子實習時候的檢修工作一樣,問題一旦被發(fā)現(xiàn)基本上能夠迅速解決,然而發(fā)現(xiàn)問題卻顯得格外棘手。以后遇到的問題,也并不是想電工實習檢修拿著萬用表逐個排查那么簡單,更多的時候需要靜下來思考思考,查閱資料。總之發(fā)現(xiàn)問題,往往比解決問題更加關鍵。
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1