女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32按鍵控制LED的亮滅

單片機(jī)與嵌入式 ? 來(lái)源:?jiǎn)纹瑱C(jī)與嵌入式 ? 2023-12-11 14:19 ? 次閱讀

使用一個(gè)按鍵控制LED的亮滅,按鍵按下時(shí)LED亮起,按鍵松開(kāi)時(shí)LED熄滅。通過(guò)按鍵控制實(shí)驗(yàn)來(lái)介紹下 IO 口作為輸入的使用。本例中用到了GPIOE的PE3管腳。

LED和按鍵的電路圖。

454bebfa-97ec-11ee-8b88-92fbcf53809c.png

455c27d6-97ec-11ee-8b88-92fbcf53809c.png

按鍵 K_LEFT、K_DOWN、K_RIGHT 分別連接在 STM32F1 芯片的 PE2、PE3、PE4引腳上。

按鍵另一端是全部接在 GND 上,這個(gè)和我們學(xué)習(xí) 51單片機(jī)是一樣的,采用獨(dú)立式按鍵接法,按下時(shí)輸入到芯片管腳即為低電平。

整個(gè)程序?qū)崿F(xiàn)的流程步驟如下:

初始化按鍵使用的端口時(shí)鐘

按鍵檢測(cè)處理

按鍵控制處理

工程文件目錄如下。

4573208a-97ec-11ee-8b88-92fbcf53809c.png

IO口初始化程序代碼在key.c文件中。

/***************************************************************
* 函 數(shù) 名 : KEY_Init
* 函數(shù)功能 : 按鍵初始化
* 輸 入 : 無(wú)
* 輸 出 : 無(wú)
*****************************************************************/
void KEY_Init(void)
{
  GPIO_InitTypeDef GPIO_InitStructure; //定義結(jié)構(gòu)體變量
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOE,ENABLE);
GPIO_InitStructure.GPIO_Pin=KEY_UP_Pin;//選擇你要設(shè)置的IO口
  GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPD;//下拉輸入
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//設(shè)置傳輸速率
GPIO_Init(KEY_UP_Port,&GPIO_InitStructure);/*初始化GPIO*/
GPIO_InitStructure.GPIO_Pin=KEY_DOWN_Pin|KEY_LEFT_Pin|KEY_RIGHT_Pin;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU;//上拉輸入
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(KEY_Port,&GPIO_InitStructure);
}

要知道哪個(gè)按鍵被按下,就需要編寫(xiě)按鍵檢測(cè)函數(shù),具體代碼如下:

/****************************************************************
* 函 數(shù) 名 : KEY_Scan
* 函數(shù)功能 : 按鍵掃描檢測(cè)
* 輸 入 : mode=0:單次按下按鍵
 mode=1:連續(xù)按下按鍵
* 輸 出 : 0:未有按鍵按下
KEY_UP:K_UP 鍵按下
KEY_DOWN:K_DOWN 鍵按下
KEY_LEFT:K_LEFT 鍵按下
KEY_RIGHT:K_RIGHT 鍵按下
*****************************************************************/
u8 KEY_Scan(u8 mode)
{
  static u8 key=1;
  if(key==1&&(K_UP==1||K_DOWN==0||K_LEFT==0||K_RIGHT==0))//任意一個(gè)按鍵按下
  {
delay_ms(10);//消除抖動(dòng)
    key=0;
    if(K_UP==1)
    {
      return KEY_UP;
    }
    else if(K_DOWN==0)
    {
      return KEY_DOWN;
    }
    else if(K_LEFT==0)
    {
      return KEY_LEFT;
    }
    else
    {
      return KEY_RIGHT;
    }
  }
elseif(K_UP==0&&K_DOWN==1&&K_LEFT==1&&K_RIGHT==1)//無(wú)按鍵按下
{
  key=1;
}
if(mode==1)//連續(xù)按鍵按下
{
  key=1;
}
  return 0;
}

主函數(shù),代碼如下:

#include "system.h"
#include "SysTick.h"
#include "led.h"
#include"key.h"
int main()
{
  u8 key;
  SysTick_Init(72);
  LED_Init();
  KEY_Init();


while(1)
  {
    key=KEY_Scan(1);   //á?D?é¨?è°′?ü
if(key)
    {
      led2=0;
      delay_ms(5);//每隔5ms滅一次
if(KEY_Scan(1)!=key)
      {
        led2=!led2;
        delay_ms(5);
      }
    }    
  }
}

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23691

    瀏覽量

    670775
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6062

    文章

    44915

    瀏覽量

    646698
  • STM32
    +關(guān)注

    關(guān)注

    2289

    文章

    11011

    瀏覽量

    362275
  • IO口
    +關(guān)注

    關(guān)注

    3

    文章

    170

    瀏覽量

    24733
  • 按鍵控制
    +關(guān)注

    關(guān)注

    1

    文章

    44

    瀏覽量

    8943

原文標(biāo)題:STM32基礎(chǔ)實(shí)例-按鍵控制LED

文章出處:【微信號(hào):?jiǎn)纹瑱C(jī)與嵌入式,微信公眾號(hào):?jiǎn)纹瑱C(jī)與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用STM32按鍵控制LED

    本次實(shí)驗(yàn)所用到的Simulink模型如圖5.1所示,實(shí)驗(yàn)現(xiàn)象: 按鍵按下、松開(kāi)LED循環(huán)實(shí)現(xiàn)翻轉(zhuǎn)亮效果,當(dāng)按鍵按下時(shí),產(chǎn)生下降沿脈沖,通過(guò)一個(gè)計(jì)數(shù)器對(duì)下降沿脈沖進(jìn)行0~1循環(huán)計(jì)數(shù),計(jì)
    的頭像 發(fā)表于 11-29 16:22 ?3581次閱讀
    使用<b class='flag-5'>STM32</b><b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b><b class='flag-5'>亮</b><b class='flag-5'>滅</b>

    stm32f103按鍵控制led

    stm32f103按鍵控制led,正題引入:下面就直接進(jìn)入正題,按鍵中斷
    發(fā)表于 08-05 07:37

    利用按鍵控制LED

    STM32 HAL庫(kù) CubeMX教程(四)外部中斷實(shí)驗(yàn)內(nèi)容NVIC(嵌套向量中斷控制器)外部中斷簡(jiǎn)介CubeMX配置中斷回調(diào)函數(shù)編寫(xiě)實(shí)驗(yàn)內(nèi)容 利用按鍵控制LED
    發(fā)表于 08-09 09:02

    STM32F103實(shí)驗(yàn)二:按鍵控制LED 精選資料推薦

    STM32單片機(jī)按鍵控制LED。
    發(fā)表于 08-16 07:16

    利用按鍵控制LED燈的

    STM32F4工程--IO口--按鍵控制點(diǎn)燈程序(庫(kù)函數(shù)) ----芯片:STM32F429IGT6本文章介紹使用STM32F4單片機(jī),利用按鍵控制
    發(fā)表于 08-24 07:18

    按鍵控制外部中斷實(shí)現(xiàn)LED的方法

    一,按鍵控制外部中斷實(shí)現(xiàn)LED開(kāi)機(jī)使得P1.0管腳的LED按下
    發(fā)表于 12-06 08:19

    如何利用Stduino通過(guò)按鍵控制LED

    2020/01/06 星期一作者:Astilbe問(wèn)題:如何利用Stduino通過(guò)按鍵控制LED。我們已經(jīng)學(xué)習(xí)過(guò)怎么點(diǎn)亮一顆LED燈,那
    發(fā)表于 01-05 07:52

    基于CC2530芯片按鍵控制LED 實(shí)驗(yàn)資料下載

    基于CC2530芯片按鍵控制LED 實(shí)驗(yàn)資料下載
    發(fā)表于 05-03 10:00 ?7次下載

    使用51單片機(jī)按鍵控制LED和單個(gè)IO翻轉(zhuǎn)的程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)按鍵控制LED和單個(gè)IO翻轉(zhuǎn)的程序免費(fèi)下載。
    發(fā)表于 07-08 17:41 ?12次下載
    使用51單片機(jī)<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b><b class='flag-5'>亮</b><b class='flag-5'>滅</b>和單個(gè)IO翻轉(zhuǎn)的程序免費(fèi)下載

    FPGA入門(mén)系列實(shí)驗(yàn)教程之按鍵控制LED的詳細(xì)資料說(shuō)明

    實(shí)現(xiàn)按鍵控制LED。通過(guò)這個(gè)實(shí)驗(yàn),掌握采用Verilog HDL語(yǔ)言編程實(shí)現(xiàn)按鍵控制LED
    發(fā)表于 06-11 16:50 ?31次下載
    FPGA入門(mén)系列實(shí)驗(yàn)教程之<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b><b class='flag-5'>亮</b><b class='flag-5'>滅</b>的詳細(xì)資料說(shuō)明

    FPGA入門(mén)系列實(shí)驗(yàn)教程之如何進(jìn)行按鍵消抖控制LED

    實(shí)現(xiàn)按鍵控制 LED 。通過(guò)這個(gè)實(shí)驗(yàn),掌握采用 Verilog HDL 語(yǔ)言編程實(shí)現(xiàn)按鍵控制 LED
    發(fā)表于 06-11 16:50 ?14次下載
    FPGA入門(mén)系列實(shí)驗(yàn)教程之如何進(jìn)行<b class='flag-5'>按鍵</b>消抖<b class='flag-5'>控制</b><b class='flag-5'>LED</b><b class='flag-5'>亮</b><b class='flag-5'>滅</b>

    按鍵控制LED燈的閃爍工程文件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是按鍵控制LED燈的閃爍工程文件免費(fèi)下載。
    發(fā)表于 05-28 08:00 ?24次下載
    <b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b>燈的閃爍<b class='flag-5'>亮</b><b class='flag-5'>滅</b>工程文件免費(fèi)下載

    STM32F103實(shí)驗(yàn)二:按鍵控制LED

    STM32單片機(jī)按鍵控制LED。
    發(fā)表于 12-16 16:55 ?62次下載
    <b class='flag-5'>STM32</b>F103實(shí)驗(yàn)二:<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b><b class='flag-5'>亮</b><b class='flag-5'>滅</b>

    基于stm32按鍵控制led

    基于stm32按鍵控制led資料文件分享
    發(fā)表于 09-21 15:50 ?40次下載

    stm32按鍵控制led

    stm32按鍵控制led? 在嵌入式系統(tǒng)中,硬件按鍵常常被用作開(kāi)關(guān)輸入,
    的頭像 發(fā)表于 09-02 17:05 ?1.2w次閱讀