当前位置:网站首页>2.2 fonctionnement stm32 GPIO
2.2 fonctionnement stm32 GPIO
2022-07-06 03:24:00 【Rou252051452】
1、Généralités
Par procédurePINEntrée de l'appareil,Produits,Travaux de vérification interrompus, etc..
2、Entrée
3、Produits
4、Interruption
4、Fonction d'essai
/**
1、Produits:
1)Utilisez le bouton Polaris pour développer le tableauLED0(PB1)EtLED1(PB0)Comme sortieIOTests.
2)Après avoir appuyé sur le bouton,LED0Lumière.
3)Après le relâchement du bouton,LED0éteint.
2、Entrée:
1)Utilisez le bouton Polaris pour développer le tableauKEY0(PH3)Détecter comme entrée
2)Après avoir appuyé sur le bouton,LED0Lumière.
3)Après le relâchement du bouton,LED0éteint.
3、Interruption:
1)Utilisez le bouton Polaris pour développer le tableauKEY1(PH2)Comme entrée d'interruption
2)Après avoir appuyé sur le bouton,LED1Lumière.
3)Après le relâchement du bouton,LED1éteint.
**/
#include "rtthread.h"
#include "board.h"
// Macro - définition pour obtenir le numéro pin .
#define LED0 GET_PIN(B,1)
#define LED1 GET_PIN(B,0)
static rt_uint32_t KEY0 = 0;
static rt_uint32_t KEY2 = 0;
void exti_callback()
{
if(rt_pin_read(KEY2) == PIN_LOW)
{
rt_pin_write(LED1, PIN_LOW);
}
else
{
rt_pin_write(LED1, PIN_HIGH);
}
}
void example_gpio()
{
//AdoptionAPI Obtenir le numéro pin
KEY0 = rt_pin_get("PH.3");
KEY2 = rt_pin_get("PC.13");
// Régler le mode pin
rt_pin_mode(LED0, PIN_MODE_OUTPUT);
rt_pin_mode(LED1, PIN_MODE_OUTPUT);
rt_pin_mode(KEY0, PIN_MODE_INPUT_PULLUP);
rt_pin_mode(KEY2, PIN_MODE_INPUT_PULLUP);
//TestsLEDSortie de la lampe
for(rt_int8_t i = 0; i<5 ; i++)
{
rt_pin_write(LED0, PIN_LOW);
rt_pin_write(LED1, PIN_LOW);
rt_thread_delay(500);
rt_pin_write(LED0, PIN_HIGH);
rt_pin_write(LED1, PIN_HIGH);
rt_thread_delay(500);
}
// Interrompre la liaison de la fonction de rappel
rt_pin_attach_irq(KEY2, PIN_IRQ_MODE_RISING_FALLING, exti_callback, RT_NULL);
//Activer l'interruption
rt_pin_irq_enable(KEY2, PIN_IRQ_ENABLE);
while(1)
{
if(rt_pin_read(KEY0) == PIN_LOW)
{
rt_pin_write(LED0, PIN_LOW);
}
else
{
rt_pin_write(LED0, PIN_HIGH);
}
rt_thread_delay(200);
}
}
MSH_CMD_EXPORT(example_gpio, example_gpio)
Travaux complets
边栏推荐
- Computer graduation project asp Net fitness management system VS development SQLSERVER database web structure c programming computer web page source code project
- Who is the winner of PTA
- How to write compile scripts compatible with arm and x86 (Makefile, cmakelists.txt, shell script)
- Arabellacpc 2019 (supplementary question)
- Leetcode problem solving -- 98 Validate binary search tree
- Descriptor implements ORM model
- 2、GPIO相关操作
- Analyze menu analysis
- Data and Introspection__ dict__ Attributes and__ slots__ attribute
- Introduction to DeNO
猜你喜欢
【概念】Web 基础概念认知
施努卡:3d视觉检测应用行业 机器视觉3d检测
给新人工程师组员的建议
Mysqldump data backup
2022工作中遇到的问题四
mysqldump数据备份
Era5 reanalysis data download strategy
[Li Kou] the second set of the 280 Li Kou weekly match
Linear programming matlab
Exness foreign exchange: the governor of the Bank of Canada said that the interest rate hike would be more moderate, and the United States and Canada fell slightly to maintain range volatility
随机推荐
Leetcode problem solving -- 98 Validate binary search tree
数据分析——seaborn可视化(笔记自用)
【Rust 笔记】18-宏
Leetcode problem solving -- 173 Binary search tree iterator
3.2 rtthread 串口设备(V2)详解
Precautions for single chip microcomputer anti reverse connection circuit
多态day02
Teach you to build your own simple BP neural network with pytoch (take iris data set as an example)
JS音乐在线播放插件vsPlayAudio.js
Era5 reanalysis data download strategy
js凡客banner轮播图js特效
Getting started with applet cloud development - getting user search content
这些不太会
OCR文字识别方法综述
Force buckle 1189 Maximum number of "balloons"
Codeworks 5 questions per day (1700 average) - day 6
C language judgment, ternary operation and switch statement usage
[concept] Web basic concept cognition
Résumé des méthodes de reconnaissance des caractères ocr
Deep parsing pointer and array written test questions