上一篇我們分享了Grbl的系統(tǒng)命令部分叔汁,在上位機(jī)發(fā)來(lái)的數(shù)據(jù)流惯豆,除了系統(tǒng)命令($開頭)颜阐,其余的就是G代碼了逗噩,在protocol.c中調(diào)用gc_ex...
上一篇我們分析了system.c掉丽,它除了執(zhí)行系統(tǒng)命令外,還處理了其他功能例如:安全門异雁,重置捶障,暫停,恢復(fù)等功能纲刀,這就涉及到對(duì)IO引腳的操作了残邀,Gr...
上一篇我們分享了Grbl主循環(huán)把串口發(fā)來(lái)的數(shù)據(jù)解析,分發(fā)到不同的執(zhí)行機(jī)構(gòu),其中最重要的兩個(gè)使system_execute_line()和gc_e...
主循環(huán)這塊算是Grbl中最復(fù)雜的內(nèi)容了芥挣,里面摻雜了很多模塊調(diào)用驱闷,我們抽絲剝繭,順著脈絡(luò)一點(diǎn)點(diǎn)進(jìn)行空免。先主要分析main.c和protocol.c ...
上篇我們分享了Grbl通過(guò)串口中斷的方式處理收發(fā)數(shù)據(jù)的例子空另,并使用一個(gè)簡(jiǎn)單的結(jié)構(gòu)儲(chǔ)存數(shù)據(jù)。這篇我們分享Grbl中一個(gè)重要的數(shù)據(jù)結(jié)構(gòu):環(huán)形隊(duì)列蹋砚。通...
上篇我們分享了通過(guò)串口寄存器實(shí)現(xiàn)單片機(jī)與電腦的通信扼菠,這篇繼續(xù)通過(guò)中斷的方式實(shí)現(xiàn),這樣能使主循環(huán)和串口互不干擾的獨(dú)立運(yùn)行坝咐。 首先我們開啟在UCSR...
上一篇我們分享了Grbl串口的serial.c源碼循榆,接下來(lái)我們將通過(guò)動(dòng)手編寫幾個(gè)例子來(lái)深入了解Arduino底層關(guān)于串口寄存器的用法。 開始之前...
串口通過(guò)UART接口通過(guò)USB與上位機(jī)通信墨坚,配置成中斷接收和中斷發(fā)送模式秧饮,并創(chuàng)建了串口接收環(huán)形隊(duì)列和串口發(fā)送環(huán)形隊(duì)列,中斷接收的數(shù)據(jù)存放在串口接...
注釋詳盡泽篮,設(shè)計(jì)嚴(yán)謹(jǐn)盗尸,有專業(yè)、優(yōu)雅帽撑、神作之稱泼各。模塊交互,相得益彰亏拉。其中串口通信扣蜻、中斷定時(shí),如外星之技及塘。廢寢忘食莽使,仍怡然自樂(lè)。 前面我們分享了Grb...