首页 > 网络 > 网络热点

Stm32

常驻编辑 网络热点 2022-07-12 时钟   电平   寄存器   堆栈   系统   初始化   按键   频率   芯片   定义   代码

83z拜客生活常识网

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4;//PE2 PE3 PE483z拜客生活常识网

GPIO_Init(GPIOE,&GPIO_InitStruct);83z拜客生活常识网

//main.c83z拜客生活常识网

#include 83z拜客生活常识网

#include 83z拜客生活常识网

#include 83z拜客生活常识网

#include 83z拜客生活常识网


83z拜客生活常识网

int main()83z拜客生活常识网

{83z拜客生活常识网

int key_flag = 0;83z拜客生活常识网


83z拜客生活常识网

//初始化83z拜客生活常识网

led_init();83z拜客生活常识网

key_init();83z拜客生活常识网


83z拜客生活常识网

while(1){83z拜客生活常识网

if(S1==0){83z拜客生活常识网

//延时消抖10ms83z拜客生活常识网

delay(100);83z拜客生活常识网

if(S1==0){83z拜客生活常识网

//真实按键事件83z拜客生活常识网

if(key_flag==0){//按下没有松开83z拜客生活常识网

D1 = ~D1;//取反83z拜客生活常识网

key_flag = 1;83z拜客生活常识网

}83z拜客生活常识网

}83z拜客生活常识网

}83z拜客生活常识网

else{83z拜客生活常识网

//延时消抖10ms83z拜客生活常识网

delay(100);83z拜客生活常识网

if(S1){83z拜客生活常识网

key_flag = 0;83z拜客生活常识网

}83z拜客生活常识网

}83z拜客生活常识网

}83z拜客生活常识网


83z拜客生活常识网

}83z拜客生活常识网

//lcd.c83z拜客生活常识网

include 83z拜客生活常识网

#include 83z拜客生活常识网


83z拜客生活常识网

void delay(unsigned int ms)83z拜客生活常识网

{83z拜客生活常识网

int i,j;83z拜客生活常识网


83z拜客生活常识网

for(i=0;i83z拜客生活常识网

for(j=0;j<5000;j++);83z拜客生活常识网

}83z拜客生活常识网


83z拜客生活常识网

void led_init(void)83z拜客生活常识网

{83z拜客生活常识网

GPIO_InitTypeDef GPIO_InitStruct;83z拜客生活常识网


83z拜客生活常识网

//1.开启GPIOE GPIOF的时钟83z拜客生活常识网

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE|RCC_AHB1Periph_GPIOF,ENABLE);83z拜客生活常识网


83z拜客生活常识网

//2.GPIO初始化 PF9 PF10 PE13 PE1483z拜客生活常识网

GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT;//输出模式83z拜客生活常识网

GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;//推挽输出83z拜客生活常识网

GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;//高速83z拜客生活常识网

GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL;//无上下拉83z拜客生活常识网

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10;//PF9 PF1083z拜客生活常识网

GPIO_Init(GPIOF,&GPIO_InitStruct);83z拜客生活常识网


83z拜客生活常识网

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_13|GPIO_Pin_14;//PE13 PE1483z拜客生活常识网

GPIO_Init(GPIOE,&GPIO_InitStruct);83z拜客生活常识网


83z拜客生活常识网

//3.LED默认关闭83z拜客生活常识网

GPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);83z拜客生活常识网

GPIO_SetBits(GPIOE,GPIO_Pin_13|GPIO_Pin_14);83z拜客生活常识网

}83z拜客生活常识网

//lcd.h83z拜客生活常识网

#ifndef _LED_H_83z拜客生活常识网

#define _LED_H_83z拜客生活常识网


83z拜客生活常识网

#define D1 PFout(9)83z拜客生活常识网

#define D2 PFout(10)83z拜客生活常识网

#define D3 PEout(13)83z拜客生活常识网

#define D4 PEout(14)83z拜客生活常识网


83z拜客生活常识网

void delay(unsigned int ms);83z拜客生活常识网

void led_init(void);83z拜客生活常识网


83z拜客生活常识网

#endif83z拜客生活常识网

//key.h83z拜客生活常识网

#ifndef _KEY_H_83z拜客生活常识网

#define _KEY_H_83z拜客生活常识网


83z拜客生活常识网

#define S1 PAin(0)83z拜客生活常识网

#define S2 PEin(2)83z拜客生活常识网

#define S3 PEin(3)83z拜客生活常识网

#define S4 PEin(4)83z拜客生活常识网


83z拜客生活常识网

void key_init(void);83z拜客生活常识网


83z拜客生活常识网

#endif83z拜客生活常识网

//sys.h 该文件由系统定义83z拜客生活常识网

#ifndef __SYS_H_83z拜客生活常识网

#define __SYS_H_83z拜客生活常识网

#include "stm32f4xx.h"83z拜客生活常识网


83z拜客生活常识网

//IO口操作宏定义83z拜客生活常识网

#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2))83z拜客生活常识网

#define MEM_ADDR(addr) *((volatile unsigned long *)(addr))83z拜客生活常识网

#define BIT_ADDR(addr, bitnum) MEM_ADDR(BITBAND(addr, bitnum))83z拜客生活常识网

//IO口地址映射83z拜客生活常识网

#define GPIOA_ODR_Addr (GPIOA_BASE+20) //0x4002001483z拜客生活常识网

#define GPIOB_ODR_Addr (GPIOB_BASE+20) //0x4002041483z拜客生活常识网

#define GPIOC_ODR_Addr (GPIOC_BASE+20) //0x4002081483z拜客生活常识网

#define GPIOD_ODR_Addr (GPIOD_BASE+20) //0x40020C14

相关阅读:

  • 陈时中曝BNT儿童疫苗迟到原因 网友:第几次时钟狼来了?
  • 逆向时钟乐队全新改编单曲《这个夏天》上线 鸣蜩之日
  • 最美的520文案
  • 时间只是人类的错觉?
  • 《双人成行》火出圈了,情侣必玩
  • 地球比平时旋转得更快
  • MIUI14的到来会推迟吗?你的机型还试配吗?
  • 为超新星“设定时钟”:数百年前地球时间框架内的恒星爆
  • 家里再穷,也要买齐三件物品挂在墙上,培养孩子时间观和世
  • 《空中阁楼》上帝视角的解谜
    • 网站地图 |
    • 声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。