欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 通信疑問 通信時基于軟件來協定傳輸模式的對吧?那么串行的話每次傳輸一幀數據 [打印本頁]

作者: 正在學習51    時間: 2023-2-12 18:38
標題: 通信疑問 通信時基于軟件來協定傳輸模式的對吧?那么串行的話每次傳輸一幀數據
過完年了我來重啟學習哈哈哈問個問題。
通信時基于軟件來協定傳輸模式的對吧?那么串行的話每次傳輸一幀數據,可是軟件應該怎么寫?我記得軟件對輸入的監視都是以字符為單位的。


可以一幀數據里包含了起始結束等數,其中就比如起始位只有1bit軟件怎么監視它?

作者: yxtao    時間: 2023-2-13 08:58
很多的單片機都有自帶的外設,這些底層的通訊協議外設自己就能解讀,初始化的時候設置一下就行了,實在想知道怎么實現的話找個51的串口教程學習一下就行了
作者: ly1972001    時間: 2023-2-13 09:40
收到起始位就認為是報文頭了。所以協議要嚴謹。
作者: xuyaqi    時間: 2023-2-13 10:24
通信雙方要有協議,比如一幀幾個字節,起始字節是什么,結束字節是什么,中間字節含義是什么,接收方用串口中斷接收。
作者: 最后一個夏天1    時間: 2023-2-13 12:53
單片機底層串口協議保證一個字節接收無誤以bit為單位,你自己定義的通信協議在底層串口協議基礎上以字節為單位,這樣你就可以自己定義接收符,結束符和數據了。
作者: 人中狼    時間: 2023-2-13 14:50
協議是包含軟件和硬件的,并不是單一的
作者: jizhongbiao    時間: 2023-2-13 17:48
構造一個通信幀就可以了有頭有尾有校驗
作者: 正在學習51    時間: 2023-2-14 03:50
xuyaqi 發表于 2023-2-13 10:24
通信雙方要有協議,比如一幀幾個字節,起始字節是什么,結束字節是什么,中間字節含義是什么,接收方用串口 ...

起始字節嗎?我看書上說的他給個圖就是下沿起始,所以這個下沿不是1bit嗎,并不是一個字節8nit啊。
而我學過的編程命令里只有一個監視鍵盤的指令,這個指令監視的是一個鍵盤至少1字節的信號。

而書上畫的是下沿不就等于1bit嗎所以我就不明白了,1bit不能代表任何字該怎么編程?

比如說I/O口P11<1則進行某些指令,這個1不是8位的字節嗎?下沿只有1bit不能分辨啊。還是1就是1bit的1?

看來我是沒清楚I/O口的設計吧,我找找資料看看。

作者: ankangyu    時間: 2023-2-17 13:56
重點是檢測總線一幀數據的時間間隔,從而記錄數據起始位和結束位。
作者: xuyaqi    時間: 2023-2-18 20:00
正在學習51 發表于 2023-2-14 03:50
起始字節嗎?我看書上說的他給個圖就是下沿起始,所以這個下沿不是1bit嗎,并不是一個字節8nit啊。
而我 ...

書上說的下沿起始,這是單片機硬件要解決的問題,你只需要把單片機收到的一個字節(8位)能處理就行,硬件的事不用你管。
作者: qsssuv    時間: 2023-2-18 20:52
1、串口和字節。串口自身規定了波特率F,在收到1個下降沿,串口硬件會不斷在1/F的時間內采樣,若被理解成0,則認為是起始信號,然后以這樣的規律不斷采集中斷傳輸的數據。并去掉起始信號和結束信號,將中間的數據以字節呈現在數據寄存器中。大概了解一下就行了。
2、若要監控一幀?梢栽诿看谓邮找粋字節之后(請把它們存在數組中,并標記接收數量)都啟動定時器T,T的內容是5ms后將幀接收完成標志位置1。這樣每接收1個字節就刷新這個定時器,直到總線空閑了,你將會得到一幀內容。
作者: Y_G_G    時間: 2023-2-18 21:03
現在看來
我幾個月前的回答,還是對
搞了那么久,連位和下降沿都沒分清
作者: wulin    時間: 2023-2-19 10:31
正在學習51 發表于 2023-2-14 03:50
起始字節嗎?我看書上說的他給個圖就是下沿起始,所以這個下沿不是1bit嗎,并不是一個字節8nit啊。
而我 ...

MCU通訊是基于兩個基本的物理量——電平與時間。電平的高低隨時間變化就是脈沖,對脈沖的高低及脈寬識別就能實現最基本的通訊需求。在此基礎上發展出復雜的通訊技術,在特定時間的電平狀態為1bit,8 bit 為一個字節,若干字節組成一幀數據。為了保證正確通訊,發送端與接收端必須對通訊信號含義做統一規定,這個規定就是通訊協議。通訊雙方呼叫起始可以是一個高電平或低電平,也可以是一個上升沿或下降沿,也可以是特定寬度的脈沖,也可以是特定的脈沖串。書上畫的上升沿或下沿不等于1bit,只是一個電平變化狀態。只有對上升沿或下沿賦予1bit數據含義才能說等于1bit。說的有點啰嗦,也不一定準確,姑妄聽之。
作者: watsonbu    時間: 2023-2-21 09:44
上位機要接收完整的以字節 BYTE 為單位數據,然后再去取某一位 bit 的值進行判斷。麻煩的是電腦一般32位,甚至64位了,要考慮單片機是多少位機,比如:8位的單片機,就要用聯合體或者結構體把 4 byte 的數據弄成32位的雙字 doubleword 給電腦,收到以后,再取含有起始位的字節里找到并判斷,比如:0xffff,肯定起始位就是1,0x0000,起始位就是0,當然,其它比如:0xff8f  這種類型的話,這里面還有大端小端數據的分別,否則就容易取錯了。




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1