在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32F407入門開發: GPIO口輸出配置

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2022-05-28 13:54 ? 次閱讀

第一章F407建工程所需依賴文件

image.pngimage.pngimage.pngimage.pngimage.pngimage.png

第二章 新建工程

image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png

說明:STM32F4 的主頻最高是 168Mhz,所以我們一般設置 PLLCLK 為 168Mhz(M=8,N=336,P=2),通過 SW 選擇 SYSCLK=PLLCLK即可得到 168Mhz 的系統運行頻率。

第三章分析LED硬件原理圖

image.pngimage.pngimage.png

第四章 編寫LED驅動代碼

查看數據手冊:

image.pngimage.png

Led.c文件代碼如下:

#include "led.h"
/*
函數功能:LED初始化
硬件連接:
PF8-->BEEP  --高電平響
PF9-->LED0  --低電平亮
PF10->LED1  --低電平亮
*/
void LED_Init(void)
{
	/*1. 開時鐘*/
	RCC->AHB1ENR|=1<<5;//使能PORTF時鐘

	/*2. 配置GPIO口模式*/
	GPIOF->MODER&=~(0x3<<8*2); //清除模式
	GPIOF->MODER|=0x1<<8*2;    //配置輸出模式

	GPIOF->MODER&=~(0x3<<9*2); //清除模式
	GPIOF->MODER|=0x1<<9*2;    //配置輸出模式

	GPIOF->MODER&=~(0x3<<10*2); //清除模式
	GPIOF->MODER|=0x1<<10*2;    //配置輸出模式

	/*3. 配置GPIO口輸出類型*/
	GPIOF->OTYPER&=~(0x1<<8);  //0表示推挽輸出
	GPIOF->OTYPER&=~(0x1<<9);  //0表示推挽輸出
	GPIOF->OTYPER&=~(0x1<<10); //0表示推挽輸出

	/*4. 配置GPIO口輸出速度*/
	GPIOF->OSPEEDR&=~(0x3<<8*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<8*2;    //50MHZ輸出速度

	GPIOF->OSPEEDR&=~(0x3<<9*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<9*2;    //50MHZ輸出速度

	GPIOF->OSPEEDR&=~(0x3<<8*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<10*2;   //50MHZ輸出速度

	/*5. 配置GPIO口輸出默認電平*/
	GPIOF->ODR|=1<<10;   	//輸出1
	GPIOF->ODR|=1<<9;   	//輸出1
	GPIOF->ODR&=~(1<<8);  //輸出0
}
復制代碼

第五章 編譯代碼 配置下載

image.pngimage.pngimage.png

第六章 編寫無源蜂鳴器驅動代碼

Delay.c延時函數代碼


#include "delay.h"
/*
功能  :毫秒級別的延時函數
參數  :填入延時的時間
返回值:無
說  明:頻率在168MHZ情況下使用
*/
void DelayMs(u32 time)
{
	u32 a,b,c;
	for(a=0;a;a++)>

Led.c代碼


#include "led.h"
/*
函數功能:LED初始化
硬件連接:
PF8-->BEEP  --高電平響
PF9-->LED0  --低電平亮
PF10->LED1  --低電平亮
*/
void LED_Init(void)
{
	/*1. 開時鐘*/
  RCC->AHB1ENR|=1<<5;//使能PORTF時鐘
	
  /*2. 配置GPIO口模式*/
  GPIOF->MODER&=~(0x3<<8*2); //清除模式
	GPIOF->MODER|=0x1<<8*2;    //配置輸出模式
	
	GPIOF->MODER&=~(0x3<<9*2); //清除模式
	GPIOF->MODER|=0x1<<9*2;    //配置輸出模式

	GPIOF->MODER&=~(0x3<<10*2); //清除模式
	GPIOF->MODER|=0x1<<10*2;    //配置輸出模式

  /*3. 配置GPIO口輸出類型*/
	GPIOF->OTYPER&=~(0x1<<8);  //0表示推挽輸出
	GPIOF->OTYPER&=~(0x1<<9);  //0表示推挽輸出
	GPIOF->OTYPER&=~(0x1<<10); //0表示推挽輸出

	/*4. 配置GPIO口輸出速度*/
	GPIOF->OSPEEDR&=~(0x3<<8*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<8*2;    //50MHZ輸出速度
	
	GPIOF->OSPEEDR&=~(0x3<<9*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<9*2;    //50MHZ輸出速度
	
	GPIOF->OSPEEDR&=~(0x3<<8*2); //清除之前配置
	GPIOF->OSPEEDR|=0x2<<10*2;   //50MHZ輸出速度
	
	/*5. 配置GPIO口輸出默認電平*/
	GPIOF->ODR|=1<<10;   	//輸出1
	GPIOF->ODR|=1<<9;   	//輸出1
	GPIOF->ODR&=~(1<<8);  //輸出0
}

/*
1/2000HZ=0.0005s=0.5ms=500us
1/4000HZ=0.25ms
控制蜂鳴器:產生2KHZ~5KHZ的方波即可
*/
void BEEP_Ctlrl(u8 cmd,u32 time)
{
	u8 i;
	if(cmd) //打開蜂鳴器
	{
		for(i=0;i;i++)>

Mian.c主函數代碼


#include "stm32f4xx.h" // Device header
#include "led.h"
#include "delay.h"

int main(void)
{
	u8 i;
	LED_Init();
	while(1)
	{
	 i=!i;
	 BEEP_Ctlrl(i,200);
	}
}
復制代碼

第七章 LED呼吸燈示例

#include "stm32f4xx.h" // Device header
#include "led.h"
#include "delay.h"

int main(void)
{
		u32 i,k=1000;
		LED_Init();
		while(1)
		{
			 for(i=0;i;i++)>

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 輸出
    +關注

    關注

    0

    文章

    93

    瀏覽量

    21876
  • GPIO
    +關注

    關注

    16

    文章

    1217

    瀏覽量

    52434
  • STM32F407
    +關注

    關注

    15

    文章

    188

    瀏覽量

    29675
收藏 人收藏

    評論

    相關推薦

    STM32F407 GPIO輸出配置配置步驟

    STM32F407ZGT6 是意法半導體(STMicroelectronics)公司推出的一款高性能ARM Cortex-M4核心的32位微控制器(MCU)。它是 STM32F4 系列的一員,具備強大的處理能力和豐富的外設功能,適用于各種應用領域
    的頭像 發表于 07-06 14:27 ?2082次閱讀
    <b class='flag-5'>STM32F407</b> <b class='flag-5'>GPIO</b><b class='flag-5'>口</b><b class='flag-5'>輸出</b><b class='flag-5'>配置</b><b class='flag-5'>配置</b>步驟

    STM32F407 GPIO輸入配置配置步驟

    介紹STM32F407新建寄存器工程流程,介紹輸入模式的配置方式,以按鍵為例完成按鍵輸入檢測。
    的頭像 發表于 07-06 14:28 ?2530次閱讀
    <b class='flag-5'>STM32F407</b> <b class='flag-5'>GPIO</b><b class='flag-5'>口</b>輸入<b class='flag-5'>配置</b><b class='flag-5'>配置</b>步驟

    STM32F407 串口配置步驟

    介紹STM32F407配置步驟,完成串口的數據發送與接收、實現中斷接收,支持printf重定向。
    的頭像 發表于 07-06 14:29 ?3427次閱讀
    <b class='flag-5'>STM32F407</b> 串口<b class='flag-5'>配置</b>步驟

    STM32F407 位帶配置步驟

    介紹STM32F407位帶操作方法,設置寄存器的偏移量,實現按GPIO指定位進行讀寫操作,方便編程。
    的頭像 發表于 07-06 14:30 ?1334次閱讀
    <b class='flag-5'>STM32F407</b> 位帶<b class='flag-5'>配置</b>步驟

    stm32f407通信的代碼

    stm32f407通信的代碼 原理圖還有封裝 很清楚自己畫的
    發表于 03-21 17:22 ?0次下載

    STM32F407 UCOS III實驗

    STM32F407 UCOS III實驗,介紹基于STM32F407的UCOSIII實例,參考下
    發表于 09-22 14:08 ?82次下載

    STM32F407 開發板原理圖

    STM32F407 開發板原理圖
    發表于 09-22 16:12 ?393次下載
    <b class='flag-5'>STM32F407</b> <b class='flag-5'>開發</b>板原理圖

    [STM32]STM32F407系列教程之二,gpio輸入輸出實驗

    [STM32]STM32F407系列教程之二,gpio輸入輸出實驗
    發表于 11-29 14:06 ?19次下載
    [<b class='flag-5'>STM32</b>]<b class='flag-5'>STM32F407</b>系列教程之二,<b class='flag-5'>gpio</b>輸入<b class='flag-5'>輸出</b>實驗

    STM32F407的串口UART 基礎配置STM32CubeMX

    STM32F407的串口UART 基礎配置STM32CubeMX
    發表于 11-29 16:06 ?56次下載
    <b class='flag-5'>STM32F407</b>的串口UART 基礎<b class='flag-5'>配置</b><b class='flag-5'>STM32</b>CubeMX

    STM32F407開發板用戶手冊】第1章?? 初學STM32F407的準備工作

    STM32F407開發板用戶手冊】第1章?? 初學STM32F407的準備工作
    發表于 12-04 13:36 ?75次下載
    【<b class='flag-5'>STM32F407</b><b class='flag-5'>開發</b>板用戶手冊】第1章?? 初學<b class='flag-5'>STM32F407</b>的準備工作

    STM32F407開發板用戶手冊】第21章 STM32F407的NVIC中斷分組和配置(重要)

    STM32F407開發板用戶手冊】第21章 STM32F407的NVIC中斷分組和配置(重要)
    發表于 12-04 13:51 ?21次下載
    【<b class='flag-5'>STM32F407</b><b class='flag-5'>開發</b>板用戶手冊】第21章 <b class='flag-5'>STM32F407</b>的NVIC中斷分組和<b class='flag-5'>配置</b>(重要)

    STM32F407開發板用戶手冊】第19章 STM32F407GPIO應用之按鍵FIFO

    STM32F407開發板用戶手冊】第19章 STM32F407GPIO應用之按鍵FIFO
    發表于 12-05 15:21 ?39次下載
    【<b class='flag-5'>STM32F407</b><b class='flag-5'>開發</b>板用戶手冊】第19章 <b class='flag-5'>STM32F407</b>的<b class='flag-5'>GPIO</b>應用之按鍵FIFO

    STM32F407入門開發: 配置定時器輸出PWM方波

    STM32F407的定時器的 TIM6 和 TIM7 是普通定時器,除此之外,其他的定時器都可以用來產生 PWM 輸出。其中高級定時器 TIM1 和 TIM8 可以同時產生多達 7 路的 PWM
    的頭像 發表于 05-28 13:43 ?1.5w次閱讀
    <b class='flag-5'>STM32F407</b><b class='flag-5'>入門開發</b>: <b class='flag-5'>配置</b>定時器<b class='flag-5'>輸出</b>PWM方波

    STM32F407入門開發: 位帶操作

    STM32F407的位帶操作可以實現類似51單片機中寄存器的操作方法,操作GPIO代碼簡潔方便。 關于位段的操作在Cortex-M3M4權威指南里有詳細描述:
    的頭像 發表于 05-28 13:50 ?3741次閱讀
    <b class='flag-5'>STM32F407</b><b class='flag-5'>入門開發</b>: 位帶操作

    STM32F407入門開發: 串口配置

    STM32F407 的串口資源非常豐富,功能也很強勁。 STM32F407 最多可提供 6 路串口,有分數波特率發生器、支持同步單線通信和半雙工單線通訊、支持 LIN、 支持調制解調器操作、 智能卡
    的頭像 發表于 05-28 13:51 ?1.1w次閱讀
    <b class='flag-5'>STM32F407</b><b class='flag-5'>入門開發</b>: 串口<b class='flag-5'>配置</b>
    主站蜘蛛池模板: 狠狠色噜噜狠狠狠狠米奇777 | 狠狠色丁香久久婷婷 | 2022年国产精品久久久久 | 调教双性学霸美人 | 9797色| 日韩欧美印度一级毛片 | 狠狠色噜噜狠狠狠狠狠色综合久久 | 四虎影院网站 | 久久精品视频9 | 日本三级黄色 | 曰本毛片| 成人在线看片 | 一级片免费在线观看视频 | 在线免费观看h | 天天舔天天操 | 中文字幕三级久久久久久 | 亚洲欧美4444kkkk | 色网站观看 | 国产h视频在线观看网站免费 | 福利午夜最新 | 欧美极品在线视频 | 伊人网大香 | 亚瑟 国产精品 | 国产黄色视屏 | 成人福利在线视频 | 伊人操| 禁漫画羞羞动漫入口 | 亚洲欧洲一区二区三区在线观看 | 狠狠色婷婷狠狠狠亚洲综合 | 色综合视频在线观看 | 福利盒子手机看片 | 一区二区三区免费视频播放器 | 国产精品夜夜春夜夜爽 | 欧美69视频在线 | 天堂网在线.www天堂在线 | 香港三级理论在线观看网站 | 国产一区二区三区夜色 | 亚洲成人免费网站 | 国产在线观看www鲁啊鲁免费 | 玖玖玖精品视频免费播放 | 午夜在线观看视频在线播放版 |