標(biāo)題: 有些單片機(jī)沒有UART通信這個資源,所以UART通信也需要自己模擬這樣子嗎? [打印本頁]

作者: 3038838599    時間: 2023-11-12 18:48
標(biāo)題: 有些單片機(jī)沒有UART通信這個資源,所以UART通信也需要自己模擬這樣子嗎?
謝謝大家
作者: a185980800    時間: 2023-11-12 20:01
99%的單片機(jī)都有這個資源你要用它為什么選個選那1%呢
作者: wulin    時間: 2023-11-12 20:23
練練手玩玩可以,不是不得以不要指望模擬串口,這樣玩相當(dāng)占用時間資源。不如換MCU,價錢差不多,何必和自己過不去。
作者: Hephaestus    時間: 2023-11-12 20:29
20年前還有,現(xiàn)在沒見過。
作者: 大漠落日    時間: 2023-11-12 20:35
模擬的單純發(fā)送還行,要是接收就太費CPU時間了,不如換個單片機(jī)
作者: sinclair123    時間: 2023-11-12 21:09
假如uart口缺乏,可以寫c代碼模擬uart協(xié)議的收發(fā)
作者: npn    時間: 2023-11-12 22:37
1位起始位(低電平)+8位數(shù)據(jù)位(低位在前)+1位停止位(高電平) ,1/波特率秒傳輸一位,空閑高電平。
作者: rayin    時間: 2023-11-13 07:46
8個腳的SOP8那種封裝的單片機(jī), 就有些是沒有串口的, 價格很低的, 比如輝芒的單片機(jī)
作者: joyb    時間: 2023-11-13 08:38
模擬串口,學(xué)習(xí)可以,實用還是換單片機(jī)
作者: erwwer    時間: 2023-11-13 10:03
是的,你也可以自己做通信協(xié)議
作者: wufa1986    時間: 2023-11-13 10:43
我覺得不要花心思研究這些
作者: coody_sz    時間: 2023-11-13 11:12
串口不夠時我也常用軟件模擬串口,90奶奶嗲的MCU速度慢,我只模擬4800以下的波特率,現(xiàn)在的MCU速度快,模擬4路9600的全雙工串口,占CPU時間不會太多(20%以內(nèi)),與MCU原來的4個串口組成8個串口,然后SUB接上位機(jī)。
作者: npn    時間: 2023-11-13 12:21
coody_sz 發(fā)表于 2023-11-13 11:12
串口不夠時我也常用軟件模擬串口,90奶奶嗲的MCU速度慢,我只模擬4800以下的波特率,現(xiàn)在的MCU速度快,模擬 ...

軟件模擬串口的波特率與晶振頻率、單片機(jī)性能有關(guān),定時器中斷用自動重裝初值模式。
作者: npn    時間: 2023-11-13 12:25
大漠落日 發(fā)表于 2023-11-12 20:35
模擬的單純發(fā)送還行,要是接收就太費CPU時間了,不如換個單片機(jī)

串口接收不用死等,P3.0有下降沿中斷,中斷來了再接收即可。
作者: fishafish    時間: 2023-11-13 14:17
npn 發(fā)表于 2023-11-13 12:25
串口接收不用死等,P3.0有下降沿中斷,中斷來了再接收即可。

串口速度很慢,就是用中斷也是差不多死等!
作者: 圣博朗西斯    時間: 2023-11-13 15:09
模擬串口速度達(dá)不到的,但是可以用把協(xié)議定下來
作者: yzwzfyz    時間: 2023-11-14 09:15
你是想法是對的。
作者: 哦豁~    時間: 2023-11-14 12:09
是的,就只能用IO模擬。有些單片機(jī)沒有UART,但價格勝在便宜。有個客戶,之前有個產(chǎn)品一個月有個五百來K的量(一片便宜一點點總體就能省不少錢了),所以就選這種沒有UART的單片機(jī),自己用IO模擬,9600波特率。產(chǎn)品的任務(wù)進(jìn)程不多,所以發(fā)送直接是阻塞發(fā)送,接收是用中斷+定時器來做,2倍采樣率,再弄個超級mini的FIFO接收緩沖區(qū)。當(dāng)然現(xiàn)在他已經(jīng)用IO模擬IIC,因為后級的芯片,他改選用IIC接口的了。沒錯因為那個IIC接口的芯片更便宜。
作者: dalaoshi    時間: 2023-11-14 18:57
我玩過312500BPS的,好像可以,但偶爾會失誤,不可靠,想用發(fā)三碼檢驗二碼的方法提高可靠性,后來發(fā)現(xiàn)MCU串口內(nèi)部就是取三電平檢驗二電平的,何必麻煩,就用內(nèi)部串口了,如果你的速率不高,應(yīng)該可以,也可以試驗發(fā)三碼檢驗二碼的方法,看看可靠性是否達(dá)到100%。
作者: zh_junwei    時間: 2023-11-15 17:07
模擬的話波特率不能太高,9600以下都還可以




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