zoukankan      html  css  js  c++  java
  • F28335 GPIO的配置————DSP TMS320F28335 学习笔记 (三)

    1 GPIO工作原理
    外界二进制信息(数字量)要被CPU处理,要给存储器存放,就需要外界信息源与两者之间的交换接口,这样的交换接口若用来进行通用目的数字量的输入输出,就被称为通用数字量输入/输出接口,简称GPIO。
    F28335的88路GPIO被分为3组

    A组:GPIO0 - GPIO31 只能配置INT1-INT3
    B组:GPIO32 - GPIO63 配置INT4-INT12
    C组:GPIO64 - GPIO87

    2 GPIO的寄存器
    2.1 GPIOMux(复用开关)寄存器 16位
    F28335 DSP有多达88个GPIO口,对应着芯片引出的88个引脚,随着芯片的封装与尺寸的确定,引脚数目是有限的,所以这88个引脚多数都是功能复用的,即可以灵活配置为输入引脚,也可以灵活配置为输出引脚,即可以作为通用I/O引脚,也可以作为特殊功能口(如SCI、SPI、ECAN等),非常灵活,用户根据需要,可以通过GPIOMUX(输入输出多路选择器,复用开关)寄存器来进行相关配置。

    GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 0 将GPIO54设为数字I/O功能
    GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 1 将GPIO54设为外设功能

    2.2 GPIODIR(方向)寄存器 32位
    如果将这些引脚选择数字量I/O模式,可以通过方向寄存器GPxDIR配置数字量I/O的方向,即是作为输入引脚还是作为输出引脚。

    GpioCtrlRegs.GPBDIR.bit.GPIO54 = 0 将GPIO54设为输入功能
    GpioCtrlRegs.GPBDIR.bit.GPIO54 = 1 将GPIO54设为输出功能

    2.3 GPxQUAL(量化)寄存器 32位
    在GPIO作为数字I/O且位输入模式时,就会涉及到采样准确与否的问题,如果在输入信号毛刺较多的情况下,如果直接读取很可能会得到错误的信号。因此我们需要对输入的信号进行量化采样。
    在这里插入图片描述

    上图就是一个只有信号保持6个系统时钟周期,才确认信号是高还是低电平的操作。
    所以我们通过结合实际需求来设置这个量化寄存器GPxQUAL,得到我们所需要的准确信号,一般与GPxQSEL配合使用。

    2.4 电平操作寄存器

    GPxDAT寄存器:用于对I/O口置1或0,但是反应速度比较慢,一般在信号输入的时候用,输出的时候用下面三个。
    GPxSET寄存器: 用于对I/O置1,速度快
    GPxCLEAR寄存器:用于对I/O清0
    注意这里的GPxSET和GPxCLEAR都只能置1,不能置0,置1功能有效
    GPxTOOGLE寄存器: 用于对I/O的电平翻转

    原文链接:https://blog.csdn.net/sy243772901/article/details/83015694

    作者:柒月
    Q群 :2122210(嵌入式/机器学习)
  • 相关阅读:
    Civil 3D 二次开发 创建Civil 3D 对象—— 01 —— 创建几何空间点
    Civil 3D 二次开发 创建Civil 3D 对象—— 00 ——
    Civil 3D 二次开发 创建AutoCAD对象—— 01 —— 创建直线
    Civil 3D 二次开发 新建CLR项目出现错误C2143
    Civil 3D 二次开发 创建AutoCAD对象—— 00 ——
    了解AutoCAD对象层次结构 —— 6 ——块表记录
    datepicker97使用
    使用angular 外接 templateUrl,使用ng-include
    angularJs 遮罩
    网上找的有关css兼容问题
  • 原文地址:https://www.cnblogs.com/Ph-one/p/14597681.html
Copyright © 2011-2022 走看看