linux 串口编程_ARM-Linux开发与MCU开发有何不同?上篇
ARM-Linux開發與MCU開發有何不同?
針對ARM-Linux程序的開發,主要分為三類:應用程序開發、驅動程序開發、系統內核開發,針對不同種類的軟件開發,有其不同的特點。今天我們來看看ARM-Linux開發和MCU開發的不同點,以及ARM-Linux的基本開發環境。
1. ARM-Linux應用開發和單片機開發的不同
這里先要做一個說明,對于ARM的應用開發主要有兩種方式:一種是直接在ARM芯片上進行應用開發,不采用操作系統,也稱為裸機編程,這種開發方式主要應用于一些低端的ARM芯片上,其開發過程非常類似單片機,這里不多敘述。還有一種是在ARM芯片上運行操作系統,對于硬件的操作需要編寫相應的驅動程序,應用開發則是基于操作系統的,這種方式的嵌入式應用開發與單片機開發差異較大。ARM-Linux應用開發和單片機的開發主要有以下幾點不同:
(1)應用開發環境的硬件設備不同
單片機:開發板,仿真器(調試器),USB線;
ARM-Linux:開發板,網線,串口線,SD卡;
對于ARM-Linux開發,通常是沒有硬件的調試器的,尤其是在應用開發的過程中,很少使用硬件的調試器,程序的調試主要是通過串口進行調試的;但是需要說明的是,對于ARM芯片也是有硬件仿真器的,但通常用于裸機開發。
(2)程序下載方式不同
單片機:仿真器(調試器)下載,或者是串口下載;
ARM-Linux:串口下載、tftp網絡下載、或者直接讀寫SD、MMC卡等存儲設備,實現程序下載;
這個與開發環境的硬件設備是有直接關系的,由于沒有硬件仿真器,故ARM-Linux開發時通常不采用仿真器下載;這樣看似不方便,其實給ARM-Linux的應用開發提供了更多的下載方式。
(3)芯片的硬件資源不同
單片機:通常是一個完整的計算機系統,包含片內RAM,片內FLASH,以及UART、I2C、AD、DA等各種外設;
ARM:通常只有CPU,需要外部電路提供RAM以供ARM正常運行,外部電路提供FLASH、SD卡等存儲系統映像,并通過外部電路實現各種外設功能。由于ARM芯片的處理能力很強,通過外部電路可以實現各種復雜的功能,其功能遠遠強于單片機。
想要獲取更多資料私聊
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的linux 串口编程_ARM-Linux开发与MCU开发有何不同?上篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python读文件和写文件-python
- 下一篇: 现在电脑的主流配置_玩手游是因为电脑配置