TMS320F280049学习4:GPIO输入检测

TMS320F280049学习4:GPIO输入检测

文章目录


前言

DSP的内部输入上拉是弱上拉,上拉后的电压只有2.1V左右,需要外部加上拉电阻,具体参考这篇文章

一、工程代码

c 复制代码
#include "driverlib.h"
#include "device.h"

#define DRV_LED2_PIN                        23
#define DRV_BUTTON_PIN                      11
#define DELAY_MS(MS)                        DEVICE_DELAY_US((long double)MS * 1000)

/*******************************************************************************
* 函 数 名         : led_init
* 输    入         : 空
* 输    出         : 空
* 函数功能         : LED初始化
* 详细描述         : 空
*******************************************************************************/
void led_init(void)
{
    //设置GPIO模式
    GPIO_setPadConfig(DRV_LED2_PIN, GPIO_PIN_TYPE_STD);
    //设置GPIO方向
    GPIO_setDirectionMode(DRV_LED2_PIN, GPIO_DIR_MODE_OUT);
}

/*******************************************************************************
* 函 数 名         : button_init
* 输    入         : 空
* 输    出         : 空
* 函数功能         : 按钮初始化
* 详细描述         : 空
*******************************************************************************/
void button_init(void)
{
    //设置GPIO模式
    GPIO_setPadConfig(DRV_BUTTON_PIN, GPIO_PIN_TYPE_PULLUP);
    //设置GPIO方向
    GPIO_setDirectionMode(DRV_BUTTON_PIN, GPIO_DIR_MODE_IN);
}

/*******************************************************************************
* 函 数 名         : main
* 输    入         : 空
* 输    出         : 空
* 函数功能         : 主函数
* 详细描述         : 空
*******************************************************************************/
void main(void)
{
    //初始化时钟和外设
    Device_init();
    //解锁GPIO配置
    Device_initGPIO();

    led_init();
    button_init();

    //初始化PIE并清空PIE寄存器,关闭CPU中断
    Interrupt_initModule();
    //初始化PIE向量表
    Interrupt_initVectorTable();
    //使能中断
    EINT;
    //使能调试事件
    ERTM;

    while(1)
    {
        GPIO_writePin(DRV_LED2_PIN, !GPIO_readPin(DRV_BUTTON_PIN));
        DELAY_MS(10);
    }
}

总结

下一步,GPIO输入中断。

相关推荐
小猪佩奇TONY35 分钟前
OpenCL 学习(5)---- OpenCL 内核和内核参数
学习
01二进制代码漫游日记43 分钟前
自定义类型:联合和枚举(一)
c语言·开发语言·学习·算法
非凡ghost1 小时前
小X分身APP(手机分身类工具)
android·windows·学习·智能手机·软件需求
weixin_458872611 小时前
东华复试OJ每日3题打卡·复盘82~84
学习
昌兵鼠鼠2 小时前
LeetCode Hot100 哈希
学习·算法·leetcode·哈希算法
旖旎夜光2 小时前
哈希(14)(下)
数据结构·c++·学习
2401_848009724 小时前
Redis零基础入门学习
数据库·redis·学习
如果你想拥有什么先让自己配得上拥有4 小时前
全等三角形的判定条件思考
学习·总结
zenpluck5 小时前
RTAB-Map学习记录(1)--论文阅读
c++·论文阅读·学习·机器人
小宋加油啊6 小时前
多模态方法学习
学习·多模态