智能车学习(二)—— GPIO学习

本文是智能车学习系列的第二篇,主要介绍了GPIO的使用,包括初始化管脚和设置管脚状态。然而,当前的GPIO设置不完善,缺少上拉、下拉输入状态及中断功能。在后续学习中,作者期望能找到更全面的解决方案,并指出可以直接调用现有代码进行操作。
摘要由CSDN通过智能技术生成

一、概述

     使用的是蓝宇的底层,主要有初始化管脚,设置管脚状态,反转管脚状态等。

二、代码重述:

1、头文件gpio.h

#ifndef GPIO_H       //防止重复定义(gpio_H  开头)
#define GPIO_H

#include "common.h"   //包含公共要素头文件

/*
 * 定义管脚方向
 */
typedef enum GPIO_CFG
{
    //这里的值不能改!!!
    GPI         = 0,                                //定义管脚输入方向      GPIOx_PDDRn里,0表示输入,1表示输出
    GPO         = 1,                                //定义管脚输出方向
} GPIO_CFG;

#define HIGH  1u
#define LOW   0u

// 端口号地址偏移量宏定义
#define PORTA    0
#define PORTB    1
#define PORTC    2
#define PORTD    3
#define PORTE    4

//===========================================================================
//函数名称:gpio_init
//函数返回:无
//参数说明:port:端口号+引脚号(gpio_cfg.h中宏定义,格式为PTXY,eg:PTA0) by BlueMountain 2015/10/8
//  
//         dir:引脚方向(0=输入,1=输出)
//         state:引脚初始状态(0=低电平,1=高电平)
//功能概要:初始化端口指定引脚作为GPIO引脚的功能,并定义为输入或输出,若是输出,
//         还指定初始状态是低电平或高电平
//===========================================================================
void gpio_init(PTxn port, uint8_t dir, uint8_t state);



//============================================================================
//函数名称:gpio_set
//函数返回:无
//
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值