DSP入门:GPIO

这篇博客介绍了初学者如何入门DSP,重点讲解了TMS320F28335的GPIO模块。GPIO模块拥有88个复用引脚,分为A、B、C三组。内容详细阐述了GPIO的各种寄存器,如GPxMUX、GPQSEL、GPxCTRL等的用途,并给出了GPIO操作的C语言例程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚开始接触DSP,使用TMS320F28335进行学习。
GPIO模块共有88个双向、复用的引脚。A组(32个),B组(32个),
C组(24个)。每个引脚最多可复用4个功能:GPIO,外设1、2、3,具体由复用控制器GPxMUX1/2配置。

GPIO寄存器:

1.GPxMUX1复用控制器(GPIO 0-15)
    GPxMUX2复用控制器(GPIO 16-31);GPAMUX1(GPIOA 复用1)

2.GPQSEL1量化选择寄存器(GPIO 0-15):输入量化功能
    GPQSEL2量化选择寄存器(GPIO 16-31)

3.GPxCTRL 控制寄存器:控制采样周期(主要配合GPQSEL1/2,实现I/O去噪)

4.GPxDIR方向寄存器(1为输出,0为输入)

5.GPxPUD上拉禁止寄存器(1禁止上拉,0允许上拉)

6.GPxDAT数据寄存器(1输出高电平,0输出低电平)
        常使用的是下面3个寄存器
7.GPxSET(置1)

8.GPxCLEAR(清0)

9.GPxTOGGLE(反转)

例如:
GpioDataRegs.GPADAT.all = 0x0000;//GPIO端口A所有引脚均输出低电平
GpioDataRegs.GPASET.bit.GPIO24 = 
PIO(General-Purpose Input/Output)——通用输入/输出口;       DSP28335 GPIO模块分为三类IO口:PORTA(0-31),PORTB(32-63),PORTC(64-87) 对GPIO模块的设置主要通过三类寄存器来完成,分别是:控制寄存器、数据寄存器、中断寄存器。 1、控制寄存器   GPxCTRL;    // GPIO x Control Register (GPIO0 to 31)               //设置采样窗周期T=2*GPXCTRL*Tsysclk;   GPxQSEL1;   // GPIO x Qualifier Select 1 Register (GPIO0 to 15)(32-47)               GPxQSEL2;   // GPIO x Qualifier Select 2 Register (GPIO16 to 31)(48-63)               //每两位控制一个引脚,确定是3周期采样还是6周期采样或者不用采样   GPxMUX1;    // GPIO x Mux 1 Register (GPIO0 to 15)(32-47)(64-79)   GPxMUX2;    // GPIO x Mux 2 Register (GPIO16 to 31)(48-63)(80-95)               //配置各个引脚的功能,0:I/O功能,1:外设功能。   GPxDIR;     // GPIO x Direction Register (GPIO0 to 31)(32-63)(64-95)               //配置每个引脚是输入还是输出,0:数字量输入;1:数字量输出。   GPxPUD;     // GPIO x Pull Up Disable Register (GPIO0 to 31)(32-63)(64-95)               //使能或禁止内部上拉 0:开启上拉,1:禁止上拉 2、数据寄存器   GPxDAT;     // GPIO Data Register (GPIO0 to 31)(32-63)(64-95)   GPxSET;     // GPIO Data Set Register (GPIO0 to 31)(32-63)(64-95)——置位   GPxCLEAR;   // GPIO Data Clear Register (GPIO0 to 31)(32-63)(64-95)   GPxTOGGLE;  // GPIO Data Toggle Register (GPIO0 to 31)(32-63)(64-95)—反转
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值