TMS320F28335的GPIO
F28335有三种32位的I/O口,依次PORTA(GPIO0-GPIO31), PORTB(GPIO32-GPIO63), PORTC(GPIO64-GPIO87),这些口都可以配置为普通的数字IO口同样也能被配置为外部接口。这样涉及到了IO的寄存器,IO口共有三类寄存器:控制寄存器、数据寄存器和中断控制寄存器。下面依次介绍这些寄存器。
struct
GPIO_CTRL_REGS {
union GPACTRL_REG GPACTRL; // GPIO A Control Register (GPIO0 to 31)
union GPA1_REG GPAQSEL1; // GPIO A Qualifier Select 1 Register (GPIO0 to 15)
union GPA2_REG GPAQSEL2; // GPIO A Qualifier Select 2 Register (GPIO16 to 31)
union GPA1_REG GPAMUX1; // GPIO A Mux 1 Register (GPIO0 to 15)
union GPA2_REG GPAMUX2; // GPIO A Mux 2 Register (GPIO16 to 31)
union GPADAT_REG GPADIR;
// GPIO A Direction Register (GPIO0 to 31)
union GPADAT_REG GPAPUD; // GPIO A Pull Up Disable Register (GPIO0 to 31)
Uint32 rsvd1;
union GPBCTRL_REG GPBCTRL; // GPIO B Control Register (GPIO32 to 63)
union
GPB1_REG GPBQSEL1; // GPIO B Qualifier Select 1 Register (GPIO32
to 47)
union GPB2_REG GPBQSEL2;
// GPIO B Qualifier Select 2 Register (GPIO48 to 63)
union GPB1_REG GPBMUX1;
// GPIO B Mux 1 Register (GPIO32 to 47)
union GPB2_REG GPBMUX2;
// GPIO B Mux 2 Register (GPIO48 to 63)
union GPBDAT_REG GPBDIR; // GPIO B Direction Register (GPIO32 to 63)
union GPBDAT_REG GPBPUD; // GPIO B Pull Up Disable Register (GPIO32 to 63)
Uint16 rsvd2[8];
union GPC1_REG GPCMUX1;
// GPIO C Mux 1 Register (GPIO64 to 79)
union GPC2_REG GPCMUX2;
// GPIO C Mux 2 Register (GPIO80 to 95)
union GPCDAT_REG GPCDIR; // GPIO C Direction Register (GPIO64 to 95)
union
GPCDAT_REG GPCPUD; // GPIO C Pull Up Disable Register (GPIO64
to 95)
};
其中GPXCTRL寄存器的作用是设置采样窗周期T=2*GPXCTRL*Tsysclk;GPxQSEL中每两位控制一个引脚,确定是3周期采样还是6周期采样或者不用采样;GPxMUX的功能很简单就是配置各个引脚的功能,或者是数字IO口,或者是外部接口。同样是两位控制一个引脚;GPxDIR是控制每个引脚的输入或是输出,0是输入,1是输出。还有一个GPxPUD寄存器,是用来使能或禁止指定接口的内部上拉。以上这些就是属于IO口的控制寄存器。下面的是IO数据类寄存器所有集合
struct GPIO_DATA_REGS {
union GPADAT_REG GPADAT; // GPIO Data Register (GPIO0 to 31)
union GPADAT_REG GPASET; // GPIO Data Set Register (GPIO0 to 31)
union GPADAT_REG GPACLEAR; // GPIO Data Clear Register (GPIO0 to 31)
union GPADAT_REG GPATOGGLE; // GPIO Data Toggle Register (GPIO0 to 31)
union GPBDAT_REG GPBDAT; // GPIO Data Register (GPIO32 to 63)
union GPBDAT_REG GPBSET; // GPIO Data Set Register (GPIO32 to 63)
union GPBDAT_REG GPBCLEAR; // GPIO Data Clear Register (GPIO32 to 63)
union GPBDAT_REG GPBTOGGLE; // GPIO Data Toggle Register (GPIO32 to 63)
union GPCDAT_REG GPCDAT; // GPIO Data Register (GPIO64 to 95)
union GPCDAT_REG GPCSET; // GPIO Data Set Register (GPIO64 to 95)
union GPCDAT_REG GPCCLEAR; // GPIO Data Clear Register (GPIO64 to 95)
union GPCDAT_REG GPCTOGGLE; // GPIO Data Toggle Register (GPIO64 to 95)
Uint16
rsvd1[8];};这些寄存器就是为了写数据,读数据用的。再下面就是中断寄存器struct GPIO_INT_REGS {
union GPIOXINT_REG GPIOXINT1SEL; // XINT1 GPIO Input
Selection
union GPIOXINT_REG GPIOXINT2SEL; // XINT2 GPIO Input
Selection
union GPIOXINT_REG GPIOXNMISEL; // XNMI_Xint13 GPIO Input Selection
union GPIOXINT_REG GPIOXINT3SEL; // XINT3 GPIO Input
Selection
union GPIOXINT_REG GPIOXINT4SEL; // XINT4 GPIO Input
Selection
union GPIOXINT_REG GPIOXINT5SEL; // XINT5 GPIO Input Selection
union GPIOXINT_REG GPIOXINT6SEL; // XINT6 GPIO Input
Selection
union GPIOXINT_REG GPIOXINT7SEL; // XINT7 GPIO Input
Selection
union GPADAT_REG GPIOLPMSEL; // Low power modes GP I/O input select
};
以上就是IO口的外部中断寄存器,我们可以对上面GPIO0-GPIO63进行外部中断配置。
分享到:
相关推荐
基于TMS320F28335的34个例程,导入CCS以后可以直接运行,内容全面,有GPIO TIMER LCD AD MOTOR等模块的程序
DSP tms320f28335开发板原理图,包括GPIO口分布、蜂鸣器、D/A、LED、按键
针对超声波流量计中高速数据采集的需求,采用32位浮点实时MCU 芯片 TMS320F28335和高速A/D转换器ADS805E设计了一种12位分辨率,20MSPS的高速数据采集电路。数据接口通过外部扩展接口Xintf扩展,使用DMA高速读取转换...
用DSP TMS320F28335读取AD7606模块的值,采用GPIO轮询的方法。 其中AD模块-DSP接线:D7-IO16;BUSY-IO17;RD-IO18;CS-IO19;CA-IO20;OS-GND;D15-GND;
TMS320F2833x TMS320F2823x DSC .................................................................................. 10 1.1 特性 ..............................................................................
改变点亮灯顺序,一个灯亮其余全灭,由上到下再由下到上,反复; 改变点亮灯顺序,一个灯亮其余全灭,由中心扩散到边缘再回到中心,反复; 重复上述实验,改变灯的移动速度和点亮方式(全亮和闪烁)。
DSP通用IO控制LED灯闪烁程序,已经在TMS320F28335开发板上通过
TMS320F28335外设资料,包括ADC,INT、XINTF、SPI、DMA、UART、GPIO等
I2C(芯片间)总线接口连接微控制器和串行 I2C 总线。它提供多主机功能,控制所有 I2C 总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式。而TMS320F2812并没有I2C模块,所示需要难过GPIO进行模拟I2C的功能。
TMS320F28069的GPIO口配置程序,在CCS4.1.2中建立,可以直接试用
TMS320F2837xD技术参考手册-第7章:通用输入输出口(GPIO) TMS320F2837xD技术参考手册-第8章:交叉开关 TMS320F2837xD技术参考手册-第9章:模拟子系统 TMS320F2837xD技术参考手册-第10章:模数转换器(ADC) TMS320...
DSP编程,TMS320F2812芯片例程,GPIO翻转输出
TMS320F28335 DSP开发板基础实验例程50例CCS4.2工程文件,包括:adc_dma adc_seqmode_test adc_seq_ovd_test adc_soc cpu_timer dma_ram_to_ram dma_xintf_to_ram ecan_a_to_b_xmit ecan_back2back ecap_apwm ecap_...
28027芯片 基于ccs6.0 适合初学ccs和28027型号的入门朋友 gpio口的配置简单易懂
改程序详细介绍了如何使用TMS320F2812通过GPIO对LED灯进行控制,可以说实现LED亮灭,循环点亮,循环流水灯。
TMS320F28027 例程 SCI AD EPwm TIMER SPI GPIO简单例程,很适合初学者入门
TMS320F2837xD技术参考手册-第5-6章:控制率加速器(CLA) TMS320F2837xD技术参考手册-第7章:通用输入输出口(GPIO) TMS320F2837xD技术参考手册-第8章:交叉开关 TMS320F2837xD技术参考手册-第9章:模拟子系统
1 TMS320F2833x,TMS320F2823x DSC .................................................................................. 10 1.1 特性............................................................................
TMS320F28027_课件_第2章_GPIO
TMS320F2812GPIO功能入门介绍