This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

通用I/O ,矢量中断,实时中断模块介绍

Other Parts Discussed in Thread: HALCOGEN

Hercules的GIO有两个端口,GIOA和GIOB,每个端口都包含8个双向I/O口, 并且每个引脚都可以按位操作。其中GIOA 具有外部中断触发功能,可以根据需 要选择单边沿触发或双边沿触发,单边沿触发时的触发极性可以需要配置为上升 沿或下降沿,并且外部中断触发功能具有可编程的中断优先级;对于所有的GIO 都可以进行常规的输入 / 输出方向设置,可以设置输出高电平还是低电平,配置 引脚是否需要上拉、下拉或漏极开路。

上图是 GIO 的方框图,所有通用的 IO口都可以根据需要配置成输入 / 输出 或中断方式,当然也可以根据需要选择内部上拉或下拉,如果使能I/O口中断, 则一旦有设定的边沿发生的话,产生的中断信号会被直接送入VIM模块,进行相 应的中断响应处理。GIO 的基本结构,像现在大家看到的这样,通用 I/O 的功能 可以通过下方表格中所列的各个寄存器分别进行配置。

GIOPSL可以用来选择是要内部上拉还是内部下拉;GIOPULDIS用于使能或 禁止上下拉功能;GIOPDR 用来配置引脚的漏极开路设置;GIODOUT用来配置 引脚的输出电平状态;GIODIN则表示外部引脚输入的电平状态;GIODIR可以 用来配置引脚是作为输入引脚使用还是作为输出引脚使用。 GIOA 的中断可以通过GIOENASET来使能,通过GIOENACLR 来禁止。

图中有效的设置方式,必须对规定的寄存器写“1”才能完成相应的设置,而 不是通过常规的对每一个寄存器的置位或清除来使能或禁止。对于外部中断的 极性配置同样请按照下图示例的方式进行设置,可以根据你的需要配置成上升沿 或下降沿中断,或者在双边沿都产生中断。

对于 GIO 通用 I/O口的外部连接有一些设计上需要注意的地方,当GIO 作 为输出引脚使用的时候,在 2mA 驱动能力下,可以保证输出的高电平电压一定 大于 0.8VCCIO,而输出的低电平电压一定是小于 0.2VCCIO 的。输出能力为为 2mA,最大箝位电流是20mA,对于引脚上的负载电容约在15pF—150pF这样 的范围之内。

当 GIO 作为输入引脚使用的时候,如果可能存在输入引脚电压大于 VCC+0.5V的水平,或者输入电压可能会小于 GND 情况的话,就必须在输入信号 和MCU引脚之间串联一个电阻,以达到限流的目的,防止芯片由于注入电流的 伤害而受到损伤。考虑到引脚噪声和ESD防护的需要,当然可以在输入引脚上对 地接一个电容,以获得更好的输入信号质量。

上图可以比较清楚地看到 GIO 的基本结构。除了之前提到的上拉、下拉等部 分外,在GIO输入的红色ESD部分可以放大到如下面所示的一部分ESD防护电路, 采用这样的dV/dT限幅方式,可以有效地提高引脚的ESD性能。在输入部分带 有滞回电路,以保证读到的输入数据的稳定可靠。它的设置也可以在HALCoGen 中完成,可以通过GIO这个标签进入配置界面,在这个界面可以完成输入输出选择, 初始化输出值设定,漏极开路设置,上拉 / 下拉选择和外部中断配置。

  • 说起来这个系列一般是比较贵的,不过TI为了开发者也提供了低成本的开发套件,Launchpad.

    Hercules RM 微控制器提供多种有助于加速开发的硬件平台。从低成本 LaunchPad 和 USB 记忆棒到用于电机控制的全功能应用开发者平台,Hercules RM MCU 提供了一系列旨在帮助开发并使客户产品更快推向市场的硬件开发工具。

    Hercules RM42 LaunchPad 是一种价格低廉的评估平台,旨在帮助用户使用 Hercules 安全微控制器平台进行评估和开始开发。此 LauchPad 采用 USB 供电,拥有用于编程和调试的板载仿真功能、板载按钮、LED 和环境光线传感器。此产品具有与 BoosterPack 兼容的标准 40 引脚扩展头,旨在支持多种多样的插件模块以增加显示等功能。