單片機從編程到運行程序的步驟 單片機如何做成PLC?
單片機如何做成PLC?去:有兩條路。首先,串口用于與單片機通信,采用無協(xié)議模式。但一定要注意PLC的通訊,進行必要的轉(zhuǎn)換。比如RS422,RS485等。,可以使用相應(yīng)的芯片與MCU連接。第二,利用IO
單片機如何做成PLC?
去:有兩條路。
首先,串口用于與單片機通信,采用無協(xié)議模式。但一定要注意PLC的通訊,進行必要的轉(zhuǎn)換。比如RS422,RS485等。,可以使用相應(yīng)的芯片與MCU連接。
第二,利用IO口,可以通過編碼與單片機交換數(shù)據(jù),節(jié)省硬件資源。這種不需要任何協(xié)議,雖然慢,但是對于數(shù)據(jù)顯示來說綽綽有余。如果PLC沒有通訊口,可以考慮使用PLC編程口,具體取決于PLC的編程口是rs485/rs232還是協(xié)議。大多數(shù)PLC支持R232觸摸屏。
51單片機編程方法?
1.唐 不要定義太多變量。低128位是用戶定義變量的存儲區(qū)(默認)。也可以把變量放在高128位,但是容易出錯。盡量少放,最好不放??梢酝ㄟ^*.M51檢查內(nèi)存變量的存儲情況,最好不要超過110字節(jié),否則程序不會運行或者出錯。
2.如果一個變量被用在很多地方,它可以被定義為一個全局變量。例如,循環(huán)變量I和J用于最小化參數(shù)傳遞。
3.靜態(tài)變量最好放在程序存儲區(qū),由代碼定義。
4.變量應(yīng)該定義為無符號數(shù),只占一位的變量,比如標志位,應(yīng)該定義為位。
()主程序后面的子程序要提前聲明,前面的不用聲明。
6.如果定義了變量和子程序但沒有使用,系統(tǒng)會給出警告。
7.盡管局部變量和全局變量的名稱不同,但運行時可能會被全局變量更改。
8.程序編譯后,有可能產(chǎn)生非常大的文件。比如原來的5k在編譯后變成了10k,這是C匯編時程序空間隨機分配造成的。程序編譯的一部分可以先屏蔽,然后解除屏蔽再編譯,可恢復(fù),或者復(fù)制到另一個文件進行編譯。
9.如果在定時器中使用脈沖信號,當(dāng)要去除脈沖信號時,應(yīng)先關(guān)閉定時器,然后根據(jù)需要將電平設(shè)置為高電平或低電平。
10.軟件可以用來實現(xiàn)看門狗功能。例如,如果程序運行一個周期需要50毫秒,則計時器可以設(shè)置為100毫秒。當(dāng)超過100毫秒時,程序?qū)?fù)位,定時器將在程序周期結(jié)束時重新加載或復(fù)位。
11.為了提高所得數(shù)值的準確性,可以多次測量,然后排序,去掉最大值和最小值,再取平均值,或者直接取平均值。
12.一個定時器可以用于多個計時。一般來說,兩個定時器對于較大的程序是不夠的。如果幾個計時時間分別為10ms、200us和50ms,則計時值可以位于200us,并且可以設(shè)置另外兩個變量。當(dāng)需要多個計時時,只需找到它們的最小公約數(shù)計時即可。
13.當(dāng)我們把一個程序?qū)懭雴纹瑱C時。,用*寫的。十六進制,唐 不要被它的大小迷惑,對于8k的單片機來說,小于20k的程序都可以寫入。