DSP28335 gpio_read+flash

今日头条

1094人已加入

描述

GpioCtrlRegs.GPBMUX2.bit.GPIO60 = 0;   // 设置是外设还是io模式     0:IO

GpioCtrlRegs.GPBDIR.bit.GPIO60 = 0;    //设置输入还是输出        0:输入

GpioDataRegs.GPBDAT.bit.GPIO60 表示数据,例如输出:GpioDataRegs.GPBDAT.bit.GPIO60 =1

输入:x=GpioDataRegs.GPBDAT.bit.GPIO60 

固化到flash时,先删除源工程中的28335——RAM_lnk.cmd

然后添加MEMCOPY.C,在程序中加入

MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);  InitFlash();

Init_LedGpio();

全部程序为:

#include "DSP28x_Project.h"

#define LED1_ON GpioDataRegs.GPADAT.bit.GPIO0 = 1 //LED D10 点亮

#define LED2_ON GpioDataRegs.GPADAT.bit.GPIO0 = 0 //LED D10 点亮

void Init_LedGpio(void);

void delay_loop(void);

void delay_loop(void)

{

    volatile long i;

    for (i = 0; i < 1000000; i++) {}

}

void Init_LedGpio(void)

{

EALLOW;

//LED D10

GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0;   // 表示是IO模式,或者为外设

GpioCtrlRegs.GPADIR.bit.GPIO0 = 1;    // 0输入1输出

GpioCtrlRegs.GPBMUX2.bit.GPIO60 = 0;   // GPIO11 = GPIO

GpioCtrlRegs.GPBDIR.bit.GPIO60 = 0;    // GPIO11 = output

GpioCtrlRegs.GPBPUD.bit.GPIO60 = 0;

EDIS;

}

void main(void)

{

//MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);  InitFlash();

//Init_LedGpio();

while(1)

{

if(GpioDataRegs.GPBDAT.bit.GPIO60==1 )

LED1_ON;

else

LED2_ON;

}

}


现象:按下SW4灯亮,或者不亮。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分