DSP28335处理器GPIO应用

 一、概述    

     GPIO(General Purpose Intput Oytput)是通用输入输出端口的简称,可以通过软件来控制其输入和输出。DSP28335芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。GPIO最简单的就是做输出高低电平

       本篇文件将介绍DSP28335的GPIO的输出高低电平功能。

二、GPIO结构框图

       DSP28335的通用输入输出GPIO共有88个引脚,该芯片将88个GPIO分成A、B、C三组进行管理。其中A组为:GPIO0~GPIO31;B组为:GPIO32~GPIO63;C组为:GPIO64~GPIO87。

图1 GPIO结构框图

   图1为GPIO的A组结构框图,对于B、C是一致的。将GPIO结构框图分为4部分。各部分用处如下:

第一部分:这一部分确定GPIO是输入还是输出,比如GPIOx_DIR=1时为输出,GPIOx_DIR=0时作输入使用[控制输入还是输出];

第二部分:这一部分是数据数据寄存器,当GPIO作输出使用时,给数据寄存器控制高电平输出的数据位写有效值时,GPIO就输出高电平,给数据寄存器控制低电平输出的数据位写有效值时,GPIO就输出低电平;当GPIO作输入使用时,该部分只能读,比如读此时引脚采样到的是高电平还是低电平。

第三部分:这一部分是GPIO作输入使用才用到,比如GPIO接一个按键作输入,产生一个中断。

第四部分:这一部分是GPIO的上拉控制,使用上拉可以增强GPIO的驱动能力。通过对该部分的寄存器配置可以使能GPIO上拉功能或者失能GPIO上拉功能。

三、GPIO输出高低电平涉及寄存器

      GPIO的寄存器分为三大类,第一类是控制寄存器,主要由功能选择寄存器GPxMCUn[控制是否是普通输入输出功能]、方向控制寄存器GPxDIR[控制是作输出用还是输入用]、上拉控制寄存器GPxPUD,x代表A、B、C,n代表1或者2。

图2 GPIO控制寄存器

      第二类为数据寄存器,主要由数据寄存器GPxDAT、置位寄存器GPxSET、清除寄存器GPxCLEAR和状态翻转寄存器GPxTOGGLE等组成。用于控制GPIO作输出时候引脚高低电平控制,或者GPIO作输入时读引脚电平用。

图3 GPIO数据寄存器

四、DSP28335的GPIO作输出使用点亮LED灯例子

 硬件原理图如下:

图4 硬件原理图

      LED灯接在GPIO75引脚上,只要将该引脚设置为低电平,LED灯就会亮。

编程步骤:

  1. 将GPIO配置为作通用GPIO用,而不是复用为其他功能(PWM,ADC),只做输入输出用;

  2. 将GPIO作为配置为输出用;

  3. 将GPIO配置为上拉;

  4. 将GPIO75设置为低电平;

其中步骤1对应19行,步骤2对应20行,步骤3对应21行,步骤4对应23行。

主函数用调用该函数就可以点亮一个LED灯了。

     主函数中InitSysCtrl()是对处理器时钟的初始化,芯片的时钟是芯片的心脏。下一篇文章介绍一下DSP28335芯片的心脏。

     至此DSP28335的GPIO做普通高低电平输出用已经讲完。

五、总结

      本篇文章介绍了DSP28335的GPIO的输出高低电平功能,从GPIO结构框图到GPIO做普通输出寄存器做了相关介绍,并手把手教怎么写控制一个LED灯,通过本章的学习,可以掌握DSP28335的GPIO功能。

更多精彩内容请关注“电机人生”微信公众号

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值