• 28335外部中断


    /*****************************************************************************
    Copyright: 2014,Tkai
    File name: main.c
    Description:28335外部中断测试
    Author:
    Version: v1.0
    Date: 2014.05.27
    History: 无
    *****************************************************************************/
    #include "DSP2833x_Device.h"
    #include "DSP2833x_Examples.h"

    /*************************************************
    Function: gpio_init()
    Description: IO的初始化
    Calls: NO
    Called By: main()
    Table Accessed: 无
    Table Updated: 无
    Input: void
    Output: NULL
    Return: void
    Others: NO
    *************************************************/
    void gpio_init(void)
    {
     EALLOW;
     GpioCtrlRegs.GPAMUX1.all=0x0000;//IO做为GPIO
     GpioCtrlRegs.GPADIR.all=0xffff;//GPIO输出使能
     EDIS;
    }

    /*************************************************
    Function: Ext_isr()
    Description: 外部中断服务程序
    Calls: NO
    Called By: Ext_init()
    Table Accessed: 无
    Table Updated: 无
    Input: void
    Output: NULL
    Return: void
    Others: NO
    *************************************************/
    interrupt void Ext_isr(void)
    {
     GpioDataRegs.GPATOGGLE.all=0xffff;//IO状态转换
     PieCtrlRegs.PIEACK.all=0xffff;//开所有中断
     
    }
    /*************************************************
    Function: Ext_init()
    Description: 外部中断的初始化
    Calls: NO
    Called By: main()
    Table Accessed: 无
    Table Updated: 无
    Input: void
    Output: NULL
    Return: void
    Others: NO
    *************************************************/
    void Ext_init(void)
    {
     InitSysCtrl();
     InitPieVectTable();
     InitPieCtrl();
     EALLOW;
     GpioCtrlRegs.GPAMUX1.bit.GPIO15=0; //IO15设为GPIO
     GpioCtrlRegs.GPADIR.bit.GPIO15=0;  //GPIO15设为输入
     GpioCtrlRegs.GPAPUD.bit.GPIO15=1;  //GPIO15内部上拉
     PieVectTable.XINT1=&Ext_isr;       //中断服务程序指定 
     GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL=15;//GPIO15设为外部中断
     XIntruptRegs.XINT1CR.bit.ENABLE=1;  //INT1打开
     XIntruptRegs.XINT1CR.bit.POLARITY=1;//下降沿有效
     EDIS;
     DINT;
     IER=0x0000;
     IFR=0x0000;
     PieCtrlRegs.PIEIER1.bit.INTx4=1;  //INTx4 外部中断号
     PieCtrlRegs.PIECTRL.bit.ENPIE=1;  //打开中断
     IER=M_INT1;     //打开中断
     EINT;
     
    }
    /*************************************************
    Function: main()
    Description: 主函数
    Calls: gpio_init(),Ext_init()
    Called By: NO
    Table Accessed: 无
    Table Updated: 无
    Input: void
    Output: NULL
    Return: void
    Others: NO
    *************************************************/
    void main(void)
    {
     gpio_init();
     Ext_init();
     GpioDataRegs.GPADAT.all=0x0000;
     while(1);
    }

  • 相关阅读:
    32-Ubuntu-用户权限-03-修改文件权限
    31-Ubuntu-用户权限-02-ls输出信息介绍
    hdu2084 数塔
    hdu 1058 humble number
    HDU_2050 折线分割平面
    HDU_1030 Delta-wave 常数时间
    HDU_1021 Fibonacci Again 一些推论
    Gated Recurrent Unit(GRU)
    循环神经网络模型
    Bellman-Ford algorithm
  • 原文地址:https://www.cnblogs.com/luxiaolai/p/3755918.html
Copyright © 2020-2023  润新知