相信接觸過STC15系列單片機(jī)的小伙伴們,應(yīng)該會對其編程風(fēng)格比較熟悉,沒錯,STC15系列單片機(jī)可以采用庫函數(shù)編程,官方提供了標(biāo)準(zhǔn)的函數(shù)庫,我們只需要利用好庫函數(shù),便可大大簡化配置流程,從而提高編程效率。由于筆者這里的教程不是關(guān)于51單片機(jī)的基礎(chǔ)教程,所以此處省去了新建工程以及如何添加庫文件等操作。
首先,我們要養(yǎng)成良好的習(xí)慣,在使用任何一款板子的時候,先建一個配置板載資源的文件,當(dāng)然要是板子比較復(fù)雜的話,可以分模塊配置多個,由于筆者使用的板子比較簡單,所以就只添加了一個名為“BSP_IO.h”的文件,顧名思義,就是一些輸入輸出的配置而已了。
接下來,我們來配置一下串口參數(shù),在之前的帖子中我們知道,迪文DGUS屏的串口通信波特率配置的是115200,那么,我們在單片機(jī)程序中,自然也要講串口通信的波特率配置成115200,其他的就不需要修改了:
程序中有需要用到串口定時向觸摸屏刷新數(shù)據(jù),所以,這里我們也配置一個定時器,并設(shè)置起中斷頻率為1000Hz,即:1ms中斷一次。
接下來,我們需要根據(jù)板子上的IO分布,來配置一下IO口的輸入輸出模式,所有輸入口均配置成“準(zhǔn)雙向口”,所有輸出口均配置成“強(qiáng)推挽模式”。
另外,程序中也有用到兩路0-5V電壓的采集,所以此處我們還需要對ADC相關(guān)的參數(shù)進(jìn)行配置,本例程中采用的是AD口分別是P10和P11,查詢方式獲取AD值:
至此,系統(tǒng)配置相關(guān)的東西基本就完成了,接下來,我們就需要自己寫一些應(yīng)用相關(guān)的函數(shù)了,本例中,筆者寫了四個函數(shù):
Uart1_M(jìn)onitor(); //串口1數(shù)據(jù)監(jiān)控
Uart1_Send(); //串口1發(fā)送指令
ADC_Sampling(); //ADC采樣
GIOP_StateRefresh();//GPIO狀態(tài)刷新
其中,Uart1_M(jìn)onitor()函數(shù),主要是用對串口中斷接收到的數(shù)據(jù)進(jìn)行解析,比如:DGUS屏按鍵返回的指令、參數(shù)設(shè)置的指令等;Uart1_Send()函數(shù),主要用來定時向DGUS屏寫入數(shù)據(jù),比如:數(shù)據(jù)變量顯示、圖標(biāo)變量顯示等; ADC_Sampling()函數(shù)主要是對外部兩路0-5V模擬量輸入進(jìn)行采樣處理; GIOP_StateRefresh()函數(shù)主要是用來實(shí)時刷新輸入輸出口的狀態(tài)。
審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
相關(guān)推薦
單片機(jī)(Microcontroller Unit, MCU)調(diào)試是嵌入式開發(fā)中的一個重要環(huán)節(jié),它幫助開發(fā)者發(fā)現(xiàn)和修復(fù)代碼中的錯誤,優(yōu)化程序性能。不同的單片機(jī)和開發(fā)環(huán)境可能使用不同的調(diào)試工具和命令
發(fā)表于 12-19 09:56
?482次閱讀
單片機(jī)(Microcontroller Unit,MCU)編程是指為單片機(jī)編寫程序的過程,這些程序控制單片機(jī)的行為和功能。單片機(jī)廣泛應(yīng)用于嵌
發(fā)表于 11-01 14:13
?957次閱讀
眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。本設(shè)計所使用的芯片可兼容以下所有的51系列單片機(jī)(包括AT系列和STC系列)。資料內(nèi)容仿真實(shí)
發(fā)表于 10-22 14:12
?300次閱讀
程序通常涉及以下幾個步驟: 選擇單片機(jī)和開發(fā)環(huán)境 : 確定項目需求,選擇合適的單片機(jī)型號。 安裝相應(yīng)的開發(fā)環(huán)境,如Keil、IAR、MPLAB等。 硬件連接 : 將單片機(jī)連接到開發(fā)板或
發(fā)表于 10-21 11:21
?938次閱讀
單片機(jī)的中斷機(jī)制是一種重要的處理方式,它允許單片機(jī)在執(zhí)行主程序的過程中,能夠暫停當(dāng)前任務(wù),轉(zhuǎn)而處理外部或內(nèi)部緊急事件。這種機(jī)制極大地提高了系統(tǒng)的響應(yīng)速度和處理能力,使得單片機(jī)在各種應(yīng)用
發(fā)表于 10-17 18:03
?971次閱讀
使用C語言編寫,然后編譯成機(jī)器碼并燒錄到單片機(jī)的存儲器中。 Hex文件是一種用于存儲單片機(jī)程序的文件格式,它包含了程序的機(jī)器碼和一些附加信息
發(fā)表于 09-02 10:49
?3853次閱讀
表述存在一定的誤解,因?yàn)镵eil主要是用于編寫、編譯和調(diào)試單片機(jī)程序的工具,而不是直接從單片機(jī)中讀取已編程代碼的工具。 一、Keil的主要功能 編程開發(fā) :Keil允許用戶使用C語言或
發(fā)表于 09-02 10:32
?1249次閱讀
單片機(jī)燒錄程序是單片機(jī)開發(fā)過程中的一個重要環(huán)節(jié),涉及到將編寫好的程序代碼通過燒錄器寫入單片機(jī)的R
發(fā)表于 09-02 10:05
?1665次閱讀
單片機(jī)(Microcontroller Unit, MCU)是一種集成電路芯片,它將計算機(jī)的CPU、存儲器、輸入/輸出接口等集成在一塊芯片上,用于控制各種電子設(shè)備。單片機(jī)燒錄程序是指將編寫
發(fā)表于 09-02 10:04
?1554次閱讀
單片機(jī)燒錄原理 單片機(jī)燒錄是指將編寫好的程序代碼通過一定的方式傳輸?shù)?b class='flag-5'>單片機(jī)的存儲器中,使其能夠按照程序
發(fā)表于 09-02 09:54
?613次閱讀
單片機(jī)燒錄程序是單片機(jī)開發(fā)過程中非常重要的一步,它涉及到將編寫好的程序代碼通過一定的方式傳輸?shù)?b class='flag-5'>單片機(jī)
發(fā)表于 09-02 09:47
?1441次閱讀
歡迎來到單片機(jī)的世界,這是一種微小(但功能強(qiáng)大)的設(shè)備,改變了嵌入式系統(tǒng)的面貌。在本文中,您將了解單片機(jī)的一些基本知識、單片機(jī)的結(jié)構(gòu)以及微處理器與單片機(jī)之間的一些區(qū)別。在深入
發(fā)表于 08-09 11:49
?1808次閱讀
ZX-D30、ZX-D37、ZX-D32等。 藍(lán)牙模塊設(shè)置 : 將藍(lán)牙模塊與單片機(jī)連接。通常,藍(lán)牙模塊通過串口(UART)與單片機(jī)通信。 設(shè)置藍(lán)牙模塊的工作模式和參數(shù),例如波特率、名稱、停止位、數(shù)據(jù)位等。這通常通過發(fā)送特定的AT命令來完成。
發(fā)表于 07-24 17:59
?2899次閱讀
最近看到臺私信要資料的同學(xué)比較多,想必大家都是對單片機(jī)有著濃厚的學(xué)習(xí)興趣,但是很多新手開始入門單片機(jī)的時候都會遇到一些學(xué)習(xí)的誤區(qū),今天就來整理一下大家可能會遇到的六大誤區(qū)。單片機(jī)作為嵌
發(fā)表于 03-28 08:03
?948次閱讀
需注意仿真中51單片機(jī)芯片是兼容的,AT89C51,AT89C52是51單片機(jī)的具體型號,內(nèi)核是一樣的。相同的原理圖里,無論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片
發(fā)表于 03-18 10:13
?845次閱讀
評論