久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3710|回復: 0
收起左側(cè)

STM32 GPIO口實驗 每按一下開關(guān),兩個LED燈的亮滅狀態(tài)翻

[復制鏈接]
ID:777712 發(fā)表于 2020-6-13 20:23 | 顯示全部樓層 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png

   設(shè)計電路,在GPIOC口,分別接有一個開關(guān)K1和兩個指示燈LED1和LED2。兩個燈一亮一滅,每按一下開關(guān),兩個燈的亮滅狀態(tài)翻。
1.    main.c
#include "stm32f10x.h"
#include "led.h"
#include "key.h"
#include "sys.h"
int main(void)
{
   u8  kcnt=0;
   SystemInit();
    LED_Init();
    KEY_Init();
   
  while (1)
  {
      if(S1_DOWN)
          {
              delay_nms(10);
                  if(S1_DOWN)
                  {
                     while(S1_DOWN);
                     kcnt++;
                     }
                         if(kcnt%2==0)
                         {  
                                LED1_ON;
                                LED2_OFF;
                       
                         }
                         if(kcnt%2==1)
                         {   
                                LED1_OFF;
                                LED2_ON;
                       
                         }
                        
       }                                 
  }
}

2.    led.h
#ifndef __LED__H

#define __LED__H

#include "stm32f10x.h"

#include "sys.h"

#define LED1_ON GPIO_SetBits(GPIOC,GPIO_Pin_5)
#define LED1_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_5)
#define LED2_ON GPIO_SetBits(GPIOC,GPIO_Pin_6)
#define LED2_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_6)
void LED_Init(void);
void delay_nms(u16 time);
#endif

3.    key.h
#ifndef __KEY_H_
#define __KEY_H_

#include "stm32f10x.h"
#include "sys.h"
#define S1_DOWN GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_10)==0
#define S1_UP GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_10)==1
void KEY_Init(void);
#endif

4.    led.c
#include "stm32f10x.h"
#include "led.h"
void LED_Init(void)
{
     GPIO_InitTypeDef GPIO_InitStructure;
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
     GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5|GPIO_Pin_6;
     GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
     GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
     GPIO_Init(GPIOC,&GPIO_InitStructure);
     GPIO_SetBits(GPIOC,GPIO_Pin_5|GPIO_Pin_6);
}
void delay_nms(u16 time)
{
   u16 i=0;
   while(time--)
   {
      i=12000;
      while(i--);
   }
}

5.key.c
#include "stm32f10x.h"
#include "key.h"
#include "delay.h"

void KEY_Init(void)
{
     GPIO_InitTypeDef  GPIO_InitStructure;
         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_15;
     GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU;
     GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
     GPIO_Init(GPIOB,&GPIO_InitStructure);
     //GPIO_SetBits(GPIOB,GPIO_Pin_15);
}

51hei.png
51hei.png

實驗.7z

696.75 KB, 下載次數(shù): 26, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久在线精品 | 九一精品 | 亚洲在线一区二区 | 成人性生交大片 | 久久午夜视频 | 午夜码电影| 五月婷亚洲 | 美女黄视频网站 | 91综合网 | 欧美h视频| 国产精品亚洲一区二区三区在线观看 | 国产91丝袜在线播放 | 免费视频一区二区 | 国产精品一区在线播放 | 亚洲国产精选 | 操久久久 | 免费观看一级毛片视频 | 黑人巨大精品欧美一区二区免费 | 欧美无乱码久久久免费午夜一区 | 91国产精品| 日韩一区二区三区在线看 | 免费精品视频在线观看 | 日韩一区二区视频 | 久草网址 | 激情一区二区三区 | 欧美精品一区三区 | 久久亚洲春色中文字幕久久久 | 一区中文字幕 | 亚洲综合在线视频 | 亚洲第一av | 天堂成人国产精品一区 | 爱综合| 免费观看a级毛片在线播放 黄网站免费入口 | 亚洲人成网站777色婷婷 | 亚洲一区二区在线电影 | 99视频在线 | 中文字幕中文字幕 | 国产真实精品久久二三区 | 91xx在线观看 | 国产精品www| 色网在线观看 |