⑴ 51單片機如果用i2c匯流排的器件的話要寫那些低層的驅動函數,stm32的好像不用寫為什麼要不要寫啊,剛接
51功能很弱,I2C的時序必須要用埠模擬,也就是你想說的「要自己寫底層驅動」,具體來說,I2C的底層函數,其實也很簡單,包括:啟動信號、停止信號、單位元組發送、連續發送、接收信號,就這些了,很簡單吧,就那幾個函數,背都能背過。
至於STM32,功能就強大了,內部集成了I2C硬體,如果要以I2C協議進行數據傳輸(包括發送和接收),只需簡單的配置幾個寄存器就ok,晶元內部是怎麼個時序不需要你了解,你也不用了解,你只要設置好了I2C控制寄存器,再向I2C數據寄存器寫入數據,STM32就會自動發送出去。接收的話,可以實時監測配置寄存器中「接收完成標志位」,或者採用接收中斷
⑵ 51單片機怎麼驅動軟碟機
51單片機是可以控制軟碟機的,當然如果不用實時系統的話,需要自己編制軟碟機的底層驅動,20年前我做過的一個設備控制系統就是自己做的軟碟機驅動,用到8237DMA,可以讀寫1.44M和720M的軟磁碟。
⑶ 單片機硬體開發怎麼去系統學習,或者你是如何學習的。
單片機的硬體開發需要學習的東西還是挺多的 基本上分為以下幾塊吧
1、硬體 需要基本的數電、模電的功底 需要了解單片機的工作原理、系統組成 再就是 了解單片機外部驅動電路的構成如三極體 繼電器 光耦啥的用法,基本的硬體介面了解 如並口、串口、IIC、SPI、USB、網路啥的
2、編程語言 現在基本都是用C了 建議還是要了解一點匯編,這樣會讓你對單片機底層驅動更了解
3、開發平台 硬體你要會用主流的畫圖軟體 如PADS PRTEL啥的 編程部分現在主流的用KEIL啥的
建議還是買個開發板 現在51的開發板很便宜的這樣可以更快的建立一些感性認識 也能讓自己更容易的堅持下去 呵呵
總而言之 (不是牢騷) 做硬體開發就是個圍城 外面的想進來 裡面的在糾結著要不要出去 想出去又捨不得出去 不想出去又累得要死 哈哈
⑷ stm32底層驅動指的是什麼
當然是留著給計算機通信的了!假如你要STM32海量傳送數據到電腦上,但是串口太慢了,就需要使用USB了。當然這要在計算機上裝對應的驅動。
如果是F107、F207或者F407單片機的USB,那就相當強大了,不但能和電腦連接,還能插上U盤讀取其中的內容。
⑸ 單片機中的驅動是什麼意思
這個從字面意思就可以理解啊。
驅動,就是使靜止變為運動。放在單片機或者說電腦領域里,就是使某個不工作的器件按照你預想的工作方式工作。當然這需要你編程,編寫出來的程序就是「驅動程序」。
實際上,你電腦裝系統也是這樣的,剛裝好的系統一般需要裝驅動,比如顯卡驅動,你裝完相應的驅動才能按你的要求顯示(剛開始也是有驅動的,只是不是你顯卡的那個型號。否則的話,你顯示器是不會工作的)
⑹ 單片機底層開發指的是什麼
單片機底層開發一般指利用單片機的固有資源完成的控制功能的軟硬體開發,比如通訊協議及驅動(SPI,232,485,IIC,CAN,IR等)、AD轉換、各種現場控制、各種環境狀況測控、電機控制、電磁閥、繼電器控制、鍵盤掃描、LED和LCD顯示等等。
⑺ 單片機程序中的底層驅動程序和應用程序
驅動程序與硬體相關,編寫驅動程序要非常了解硬體,同時給應用層提供API函數介面,應用層可以調用這些介面去訪問硬體而不必了解硬體.
應用程序是根據實際應用去編寫.
比如說你有一個應用是控制每天早上六點鍾開燈.應用程序只負責在適當的時間做適當的事(到六點了,我要開燈了,按下按鍵);具體它不知道為什麼按下鍵就能開燈,因為按下鍵後開燈的事情就是驅動程序完成了.
⑻ 單片機底層驅動編寫要求高嗎
其實也不高,主要需要對單片機平台熟悉、了解要驅動的對象的特性(主要是時序方面特性)。
某些情況下對資源佔用要求苛刻時,就需要盡力提高驅動效率,同時還要求介面簡單、適用廣泛——這才是高要求、高標準的驅動。
⑼ 單片機學習中,敢問各位大蝦底層匯流排驅動程序是自己寫還是『拿來主義』呢
只要有時序圖,那麼兩者基本一樣。其實沒有所謂的拿來還是使用他們的驅動,功能實現是一致的,只是說如果你寫的是上層應用層程序那麼底層程序也就不用考慮太細,直接用人家已經測試好的即可;如果你想寫底層的驅動程序,對速度又有額外的要求那麼推薦按照時序圖自己書寫。看需求,祝好~
我不知道下面的問題補充是讓我們回答什麼,見諒。
⑽ 關於「底層驅動」的理解問題
一本理解為直接操作硬體的內核模塊代碼,差不多就是你說的那個意思。
底層驅動程序就是:利用iic匯流排的時序寫入和讀出數據,並封裝成函數,按特定的結構要求組成內核模塊代碼(.c文件)。
應用程序就是:按特定的方式調用上面的驅動程序,完成iic設備的讀寫。