我們在單片機(jī)開發(fā)中,經(jīng)常會用到串口,這時候我可以通過使用DMA,減少CPU的占用。使用串口的空閑中斷可以完成不定長數(shù)據(jù)的接受。所以本次我們從基礎(chǔ)的外設(shè)移植開始完成此款板子的體驗。
首先看下板子吧。
板子整體還是GD一貫風(fēng)格,還是白色板子,這次由于芯片的管腳較小,目前所以引出方式變了。把可以用的IO都引出了。
本次我們使用串口0進(jìn)行測試,此測試完成后我們也可以非常方便的移植到串口1上。
我在其基礎(chǔ)上移植了新的開發(fā)模板,主要導(dǎo)入我們的外設(shè)庫和CMSIS庫即可。例程上我使用了一個閃爍LED燈的例子。
主循環(huán)中我們就兩個任務(wù),一個是點(diǎn)燈,一個是完成串口接收和發(fā)送。
在串口初始話的時候需要主要下,我們使能了串口的中斷后,還需要打開其串口的空閑中斷,不然進(jìn)不了接受中斷函數(shù)中。
中斷函數(shù)中我們只需要完成中斷服務(wù)函數(shù)的編寫,進(jìn)入串口接收空閑中斷后,就讓其使用DMA的方式接收處理數(shù)據(jù)。
串口發(fā)送結(jié)束后也會調(diào)用函數(shù)關(guān)閉其發(fā)送。
效果就是只要我們數(shù)據(jù)在100字節(jié)以內(nèi)都可以完成數(shù)據(jù)接受和發(fā)送。且長度可變。
審核編輯:劉清
-
單片機(jī)
+關(guān)注
關(guān)注
6037文章
44562瀏覽量
635919 -
led燈
+關(guān)注
關(guān)注
22文章
1592瀏覽量
108065 -
中斷
+關(guān)注
關(guān)注
5文章
898瀏覽量
41529 -
串口
+關(guān)注
關(guān)注
14文章
1555瀏覽量
76588
發(fā)布評論請先 登錄
相關(guān)推薦
評論