国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用

這篇具有很好參考價(jià)值的文章主要介紹了【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


一、實(shí)驗(yàn)?zāi)康?/h2>
  1. 熟悉STM32 模塊的GPIO硬件連接;
  2. 掌握GPIO初始化配置;
  3. 掌握GPIO控制板上LED燈編程;
  4. 熟練KEIL 工程的配置,編譯,調(diào)試,下載。

二、實(shí)驗(yàn)環(huán)境

  1. 操作系統(tǒng):WINDOWS 10
  2. 開發(fā)工具:Keil 4,UartAssists
  3. 實(shí)驗(yàn)設(shè)備:125K RFID讀寫器模塊、JLink在線調(diào)試器、電源、PC

三、實(shí)驗(yàn)內(nèi)容

1.實(shí)驗(yàn)任務(wù)

??運(yùn)行程序后,LED燈D7、D8按照全熄滅、亮紅燈,亮藍(lán)燈、全亮的順序保持1段時(shí)間(約1秒),并循環(huán)運(yùn)行;
??本實(shí)驗(yàn)所使用的是125K RFID讀寫器模塊、JLink在線調(diào)試器、電源、PC;

2.實(shí)驗(yàn)步驟

(1)查看硬件原理圖,查找板上兩個(gè)LED D7,、D8所連接的GPIO口;
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
(2)打開給定STM32工程模板,工程文件在Object文件夾下。了解模板主要文件作用。生成、下載并運(yùn)行程序;
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
(3)添加固件庫(kù)GPIO,了解GPIO固件庫(kù)中函數(shù)的作用,參考文檔《STM32固件庫(kù)使用手冊(cè)(中文)》,重點(diǎn)分析;掌握GPIO_Init()、GPIO_SetBits()、GPIO_ResetBits()、GPIO_WriteBit()、GPIO_Write()、GPIO_ReadInputDataBit()、GPIO_ReadInputData()的作用和用法;
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
(4)使用循環(huán)定義延時(shí)函數(shù)Delay( ),延遲時(shí)間大約1秒;
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
(5)完成D7,D8的初始化函數(shù);
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
(6)在主函數(shù)中初始化完成后,利用GPIO_WriteBit()、GPIO_Write()函數(shù)編寫代碼控制按照D7,D8全熄滅、亮紅燈,亮藍(lán)燈、全亮,每種狀態(tài)用Delay()保持1秒,并無(wú)限循環(huán);
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
走馬燈效果:
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用
源代碼:

#include"main.h"
#define LED1 GPIO_Pin_12
#define LED2 GPIO_Pin_13
void LightLed()
{
	GPIO_SetBits(GPIOB,LED1) ; //置1全滅
	GPIO_SetBits(GPIOB,LED2);
	Delay_ARMJISHU(1000) ;
	GPIO_ResetBits(GPIOB,LED2);//亮紅燈
	Delay_ARMJISHU(1000) ;
	GPIO_SetBits(GPIOB,LED2) ; //置1紅燈滅
	GPIO_ResetBits(GPIOB,LED1) ;//藍(lán)燈亮
	Delay_ARMJISHU(1000) ;
	GPIO_ResetBits(GPIOB,LED1); //置0全亮
	GPIO_ResetBits(GPIOB,LED2);
	Delay_ARMJISHU(1000);
}

void Delay_ARMJISHU(__IO uint32_t nCount)//延時(shí)程序
{
	     unsigned int i,k ;
	     for(i=0;i<nCount;i++)
		     for(k=0;k<12000;k++);
}

void GPIO_Init_config(void)
{
	GPIO_InitTypeDef GPIO_InitStructure;
	RCC_APB2PeriphClockCmd (RCC_APB2Periph_GPIOB ,ENABLE);
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13|GPIO_Pin_12;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;
	GPIO_Init(GPIOB,&GPIO_InitStructure);
}
 
int main(void) 
{ 
	     RCC_Configuration() ;//系統(tǒng)時(shí)鐘初始化
	     GPIO_Init_config();
 while (1)
	    {
		     LightLed();
	}
}

總結(jié)

??GPIO(英語(yǔ):General-purpose input/output),通用型之輸入輸出的簡(jiǎn)稱,功能類似8051的P0—P3,其接腳可以供使用者由程控自由使用,PIN腳依現(xiàn)實(shí)考量可作為通用輸入(GPI)或通用輸出(GPO)或通用輸入與輸出(GPIO)。GPIO 驅(qū)動(dòng)可以用作多個(gè)用途,包括管腳設(shè)置,單位設(shè)置/重置,鎖定機(jī)制,從端口管腳讀入或者向端口管 腳寫入數(shù)據(jù)。
??通過(guò)這次實(shí)驗(yàn),熟悉STM32 模塊的GPIO硬件連接;學(xué)習(xí)到了GPIO口的功能及使用方法,了解GPIO固件庫(kù)中GPIO_Init()、GPIO_SetBits()、GPIO_ResetBits()、GPIO_WriteBit()、GPIO_Write()、GPIO_ReadInputDataBit()、GPIO_ReadInputData()的作用和用法;掌握GPIO初始化配置;并掌握GPIO控制板上LED燈編程。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-490967.html

到了這里,關(guān)于【嵌入式操作系統(tǒng)】實(shí)驗(yàn)2:GPIO編程及應(yīng)用的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 主流嵌入式操作系統(tǒng)有哪些

    主流嵌入式操作系統(tǒng)有哪些

    嵌入式操作系統(tǒng)EOS(Embedded OperatingSystem)是一種用途廣泛的系統(tǒng)軟件,過(guò)去它主要應(yīng)用于工業(yè)控制和國(guó)防系統(tǒng)領(lǐng)域。常見(jiàn)的嵌入式操作系統(tǒng)有wince、PALM OS、linux、Android、FreeRTOS。 WINDOWS CE是微軟開發(fā)的一個(gè)開放的、可升級(jí)的32位嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操

    2024年02月06日
    瀏覽(17)
  • 【小黑嵌入式系統(tǒng)第二課】嵌入式系統(tǒng)的概述(二)——外圍設(shè)備、處理器、ARM、操作系統(tǒng)

    【小黑嵌入式系統(tǒng)第二課】嵌入式系統(tǒng)的概述(二)——外圍設(shè)備、處理器、ARM、操作系統(tǒng)

    上一課: 【小黑嵌入式系統(tǒng)第一課】嵌入式系統(tǒng)的概述(一)——概念、特點(diǎn)、發(fā)展、應(yīng)用 下一課: 【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(tái)(一)——概述、總線、存儲(chǔ)設(shè)備(RAMROMFLASH) 前些天發(fā)現(xiàn)了一個(gè)巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享

    2024年02月08日
    瀏覽(24)
  • 嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)

    嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)

    在RTOS中,時(shí)鐘具有非常重要的作用,通過(guò)時(shí)鐘可實(shí)現(xiàn)延時(shí)任務(wù)、周期性觸發(fā)任務(wù)執(zhí)行、任務(wù)有限等待的計(jì)時(shí)。 大多數(shù)嵌入式系統(tǒng)有兩種時(shí)鐘源,分別為實(shí)時(shí)時(shí)鐘RTC(Real-Time Clock)和定時(shí)器/計(jì)數(shù)器。 實(shí)時(shí)時(shí)鐘一般是靠電池供電,即使系統(tǒng)斷電,也可以維持日期和時(shí)間。由于實(shí)

    2024年02月11日
    瀏覽(23)
  • 嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)(一)

    嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)(一)

    以一款簡(jiǎn)單、易學(xué)的嵌入式開發(fā)平臺(tái)ARM Mini2440(CPU是三星ARM 9系列的ARM S3C2440)為例,通過(guò)具體代碼實(shí)現(xiàn),介紹如何從裸板入手設(shè)計(jì)簡(jiǎn)單的輪詢系統(tǒng)、前后臺(tái)系統(tǒng),以及如何一步一步在ARM Mini2440上編寫RTOS內(nèi)核,到如何讓RTOS內(nèi)核支持多核嵌入式處理器。 aCoral是2009年創(chuàng)建的開源

    2024年02月12日
    瀏覽(24)
  • 嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)(十)

    RTOS的引導(dǎo)是指將操作系統(tǒng)裝入內(nèi)存并開始執(zhí)行的過(guò)程。在嵌入式系統(tǒng)的實(shí)際應(yīng)用中,針對(duì)不同應(yīng)用環(huán)境,對(duì)時(shí)間效率和空間效率有不同的要求。因此,操作系統(tǒng)啟動(dòng)時(shí)應(yīng)充分考慮這兩種限制。 時(shí)間限制主要包括兩種情況:系統(tǒng)要求快速啟動(dòng)和系統(tǒng)啟動(dòng)后要求程序能實(shí)時(shí)運(yùn)行

    2024年02月07日
    瀏覽(27)
  • 嵌入式系統(tǒng)設(shè)計(jì)師考試筆記之操作系統(tǒng)基礎(chǔ)復(fù)習(xí)筆記二

    嵌入式系統(tǒng)設(shè)計(jì)師考試筆記之操作系統(tǒng)基礎(chǔ)復(fù)習(xí)筆記二

    目錄 3、任務(wù)管理 (1)嵌入式操作系統(tǒng)的任務(wù)管理可以分為 (2)進(jìn)程 (3)線程 (4)任務(wù) (5)任務(wù)的創(chuàng)建與中止 (6)任務(wù)的狀態(tài)任務(wù)有三中基本狀態(tài): (7)任務(wù)控制塊 TCB (8)任務(wù)的切換 (9)任務(wù)的調(diào)度 (10)實(shí)時(shí)系統(tǒng)調(diào)度 (11)任務(wù)互斥 (12)信號(hào)量 (13)任務(wù)同

    2024年02月08日
    瀏覽(91)
  • 嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)與開發(fā)(信號(hào)量學(xué)習(xí))

    除了臨界點(diǎn)機(jī)制、互斥量機(jī)制可實(shí)現(xiàn)臨界資源的互斥訪問(wèn)外,信號(hào)量(Semaphore)是另一選擇。 信號(hào)量與互斥量的區(qū)別 對(duì)于互斥量來(lái)說(shuō),主要應(yīng)用于臨界資源的互斥訪問(wèn),并且能夠有效地避免優(yōu)先級(jí)反轉(zhuǎn)問(wèn)題。 對(duì)于信號(hào)量而言,它雖然也能用于臨界資源的互斥訪問(wèn),但是不能

    2024年02月08日
    瀏覽(30)
  • C語(yǔ)言嵌入式系統(tǒng)編程注意事項(xiàng)之內(nèi)存操作

    C語(yǔ)言嵌入式系統(tǒng)編程注意事項(xiàng)之內(nèi)存操作

    在嵌入式系統(tǒng)的編程中,常常要求在特定的內(nèi)存單元讀寫內(nèi)容,匯編有對(duì)應(yīng)的MOV指令,而除C/C++以外的其它編程語(yǔ)言基本沒(méi)有直接訪問(wèn)絕對(duì)地址的能力 數(shù)據(jù)指針 在嵌入式系統(tǒng)的編程中,常常要求在特定的內(nèi)存單元讀寫內(nèi)容,匯編有對(duì)應(yīng)的MOV指令,而除C/C++以外的其它編程語(yǔ)言

    2024年02月09日
    瀏覽(25)
  • 從何著手OpenHarmony?從這里開始認(rèn)識(shí)嵌入式開源鴻蒙操作系統(tǒng)

    從何著手OpenHarmony?從這里開始認(rèn)識(shí)嵌入式開源鴻蒙操作系統(tǒng)

    首先,我們需要知道HarmonyOS與OpenHarmony是不同的概念,我們需要知道它們的區(qū)別: ????????HarmonyOS是華為獨(dú)家開發(fā)的,但華為在2020、2021年分兩次 將HarmonyOS的基礎(chǔ)能力全部捐獻(xiàn)給了開放原子開源基金會(huì),形成了OpenHarmony開源項(xiàng)目 ,華為對(duì)開源鴻蒙沒(méi)有控制權(quán),當(dāng)然華為仍將

    2024年02月04日
    瀏覽(25)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包