1樓:網友
只是控制收發兩線的話,不會卡死。
51微控制器串列埠傳送資料時會產生中斷嗎
2樓:落葉城主
串列埠傳送資料完成後,ti位會置1,如果你開啟了全域性中斷和串列埠中斷,就會產生中斷。
3樓:網友
如果開了串列埠中斷,接收,傳送都會產生中斷。建議,都用中斷方式。串列埠接收到資料後,如果沒有讀出來,又接收到資料了,前面的乙個資料就丟掉了。
特別是當你接收到字串的時候,你關中斷,或者用查詢方式,就容易掉資料。
4樓:
可以不中斷髮資料,當然如果你需要的話,開啟中斷開關,然後中斷函式里面處理。
5樓:方舟劉巨集偉
中斷的方式有兩種,一種是程式中斷,到我得到乙個什麼樣的指令或資料進行中斷,還有乙個就是外部中斷,當給外部中斷乙個訊號,所有的程式停止,做你給中斷的指令,執行完成後,會跳出中斷,等待下一次中斷訊號,不知道你用的是哪一種。
微控制器串列埠傳送資料時不需要產生中斷嗎
6樓:網友
可以要可以不要。
傳送和接收都可以不通過中斷來完成也可以通過中斷來完成還有不要把tpm(定時器)中斷和sci(串列埠)中斷混為一談看看他們的中斷向量表就知道了。
微控制器串列埠接收到資料後,如果不讀取資料,再次傳送會不會產生串列埠中斷??
7樓:網友
不讀取得話接收的資料會覆蓋內容,傳送完成會產生髮送中斷,同時接收標誌不會清除。不知道說清楚沒,接收標誌一般要軟體清除。
8樓:marscheng待業
這個要看接收中斷中處理有沒有清除接收標誌位,這個標誌位需要軟體清除,如果這個標誌位不清除,就不會再產生新的中斷。
51微控制器串列埠通訊是全雙工的,但是為什麼又說它的傳送和接受不可以同時進行呢
9樓:仁昌居士
51微控制器串列埠通訊是全雙工的,傳送和接受可以同時進行。不可以同時進行的是半雙工。
全雙工方式分別由兩根不同的傳輸線傳送資料時,通訊雙方都能在同一時刻進行傳送和接收操作,通訊系統的每一端都設定了傳送器和接收器,因此,能控制資料同時在傳送和接受兩個方向上傳送。
半雙工使用同一根傳輸線既作接收又作傳送,雖然資料可以在兩個方向上傳送,但通訊雙方不能同時收發資料。採用半雙工方式時,通訊系統每一端的傳送器和接收器,通過收/發開關轉接到通訊線上,進行方向的切換,因此,會產生時間延遲。收/發開關實際上是由軟體控制的電子開關。
10樓:網友
他的意思是說因為cpu不可以同時發出傳送和接受指令,且傳送暫存器只能寫入而接受暫存器只能讀取,所以給這兩個暫存器賦予同一位址。
其實傳送和接收可以同時進行。
11樓:網友
寫這段話的人是不懂裝懂。
收和發用同乙個暫存器位址,主要是為了節約位址,8051內部的暫存器位址範圍不多。收和發分別對應讀和寫兩種操作,是完全可以區分開的。而且微控制器讀寫暫存器的速度比串列埠傳送快多了,所以用乙個暫存器是完全足夠的。
12樓:**尼奇
全雙工就是可以同時傳送和接受的意思。
你的說法很可能是將全雙工和半雙工搞錯了。
13樓:網友
51微控制器在同一時間只可以執行一條程式吧?
14樓:
沒道理,能不能把原話貼出來看看。
15樓:2000心安
51的串列埠通訊是全雙工沒錯,但是51的cpu本身沒辦法同時收發資料,簡單說就是它用不上串列埠的全雙工功能。
微控制器中 書上總說什麼「序列口傳送停止位」。請問這個停止位是什麼?
16樓:網友
這個停止位你不用管它,跟起始位一樣,都是在傳送時自動插入的。例如,序列口的工作方式1『(即波特率可變10為非同步通訊方式)該方式以txd為序列資料的傳送端,rxd為資料的接收端,每幀資料為10位:1個起始位個資料位、1個停止位「1」。
就相當於告訴微控制器這個資料傳輸完畢了,可以傳輸下一資料或者驚醒其他動作。
17樓:做而論道
序列口,是微控制器中的乙個硬體部分。
它負責傳送起始位、資料位、停止位,還有空閒位。
其中的資料位,才是編寫軟體時,需要編寫的;
起始位、停止位、空閒位,都是串列埠自動傳送的,程式設計人,不用考慮這個。
如果用示波器觀察串列埠的時序波形,就可以看到這兩個位和空閒位。
18樓:
就是告訴接受機資料傳輸完畢。
如何用串列埠將資料傳給微控制器裡面的暫存器?也就是串列埠接收的資料來更新暫存器的值
19樓:網友
先用串列埠助手等工作(或自己編寫的程式)通過計算機串列埠(com口)傳送資料到微控制器,當然微控制器需要程式設計比如中斷方式接收來自計算機發的資料,接到後將其存入微控制器暫存器對應位址。
急急急!!!!微控制器串列埠通訊問題,返回傳送資料,但是返回資料和傳送的資料不一樣。
20樓:網友
一般都是波特率不一致造成的,你需要檢視一下你的硬體環境比如晶振等。
21樓:凌寒冰吻
嘿嘿,我試過了,把晶振換成的就行了。
22樓:
波特率設定的問題吧!
51微控制器串列埠傳送資料,51微控制器串列埠同時傳送文字和資料
程式採用了查詢copy式傳送,for i 0 i 6 i 共發bai送了6個字元。再去查詢收到否du。這種方法zhi,就是有問題的,發 dao送6個字元時,就可能收到了好幾個字元,而沒有及時儲存,完全可能丟失資訊。應該採用中斷方式接收 傳送,也可以用查詢,也可以用中斷。方法弄清楚了,程式就容易編寫 ...
微控制器串列埠驅動,微控制器和電腦用串列埠連線需要驅動嗎?
電腦串列埠是不支援熱插拔,當你把微控制器連結到com口後,可以使用一個串列埠除錯助手來看看 是否有資料從微控制器裡出來,先把波特率設定低一些,如果能接受到亂碼 就表示微控制器與串列埠在通訊,具體的你可以調節波特率,資料位長度,停止位長度,校驗方式等選項來修正亂碼 兄弟,你用的是usb轉串列埠吧?1....
怎麼程式設計用stc微控制器串列埠1接收資料通過串列埠2送出
讓串列埠1響應中斷 將串列埠1接收暫存器中的資料放到記憶體中 退出串列埠1中斷 將記憶體中的資料通過串列埠2傳送暫存器發出去 stc60s2微控制器2個串列埠怎麼同時使用 我現在是用一塊微控制器的串列埠1不停的傳送資料,另一塊微控制器的串列埠1接收 5 這時因為s2con這個暫存器是不能位定址的!所...