单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 48|回复: 0
收起左侧

DSP流水灯源程序

[复制链接]
799657583 发表于 2019-9-11 11:34 | 显示全部楼层 |阅读模式
  1. /*
  2. * main.c
  3. *
  4. *  Created on: 2019-9-2
  5. *      Author: CZQ
  6. */


  7. /*
  8. * GPxDAT   置1高电平            置0低电平
  9. * GPxSET    1---高            0---无效
  10. * GPxCLEAR  1---低             0---无效
  11. * GPxTolgole    1---翻转
  12. */


  13. #include "DSP2833x_Device.h"     // DSP2833x Headerfile Include File
  14. #include "DSP2833x_Examples.h"   // DSP2833x Examples Include File

  15. //声明函数
  16. void delay_loop(void);
  17. void Gpio_select(void);

  18. main()
  19. {
  20.    InitSysCtrl();

  21.    //GPIO配置
  22.    Gpio_select();

  23.    //清除所有中断,禁止CPU全局中断
  24.    DINT;

  25.    //初始化PIE控制寄存器到他们的默认状态
  26.    InitPieCtrl();

  27.    //禁止CPU中断和清除所有CPU中断标志
  28.    IER = 0x0000;
  29.    IFR = 0x0000;

  30.    //初始化PIE中断向量表,并使其指向中断服务子程序(ISR)
  31.    InitPieVectTable();

  32.    //用户代码,LED闪烁
  33.    GpioDataRegs.GPBDAT.all = 0x30000000;  //0x30000000   00  61-1  60-1
  34.    GpioDataRegs.GPCDAT.all = 0x00000007;  //0x00000007   000 68-0  67-0 66-1 65-1 64-1

  35.    for(;;)
  36.    {
  37.            GpioDataRegs.GPBDAT.all = 0x1000000;
  38.            GpioDataRegs.GPCDAT.all = 0x0000001F;
  39.            delay_loop();
  40.            GpioDataRegs.GPBDAT.all = 0x20000000;
  41.            GpioDataRegs.GPCDAT.all = 0x0000001F;
  42.            delay_loop();
  43.            GpioDataRegs.GPBDAT.all = 0x30000000;
  44.            GpioDataRegs.GPCDAT.all = 0x0000001E;
  45.            delay_loop();
  46.            GpioDataRegs.GPBDAT.all = 0x30000000;
  47.            GpioDataRegs.GPCDAT.all = 0x0000001D;
  48.            delay_loop();
  49.            GpioDataRegs.GPBDAT.all = 0x30000000;
  50.            GpioDataRegs.GPCDAT.all = 0x0000000B;
  51.            delay_loop();
  52.            GpioDataRegs.GPBDAT.all = 0x30000000;
  53.            GpioDataRegs.GPCDAT.all = 0x00000017;
  54.            delay_loop();
  55.            GpioDataRegs.GPBDAT.all = 0x30000000;
  56.            GpioDataRegs.GPCDAT.all = 0x0000000F;
  57.            delay_loop();






  58. //           delay_loop();
  59. //           GpioDataRegs.GPBTOGGLE.all = 0x30000000;
  60. //           GpioDataRegs.GPCTOGGLE.all = 0x00000007;
  61. //
  62. //           delay_loop();
  63. //           GpioDataRegs.GPBTOGGLE.all = 0x30000000;
  64. //           GpioDataRegs.GPCTOGGLE.all = 0x00000007;

  65.    }
  66. }

  67. //延时子函数
  68. void delay_loop()
  69. {
  70.         Uint32 i;
  71.         Uint32 j;
  72.         for(i=0;i<32;i++)
  73.     for(j=0;j<100000;j++){}
  74. }

  75. //GPIO初始化函数
  76. void Gpio_select(void)
  77. {
  78.    EALLOW;
  79.    GpioCtrlRegs.GPAMUX1.all = 0x00000000;  //ALL GPIO
  80.    GpioCtrlRegs.GPAMUX2.all = 0x00000000;
  81.    GpioCtrlRegs.GPBMUX1.all = 0x00000000;
  82.    GpioCtrlRegs.GPBMUX2.all = 0x00000000;
  83.    GpioCtrlRegs.GPCMUX1.all = 0x00000000;
  84.    GpioCtrlRegs.GPCMUX2.all = 0x00000000;

  85.    GpioCtrlRegs.GPADIR.all = 0xFFFFFFFF;   //ALL outputs
  86.    GpioCtrlRegs.GPBDIR.all = 0xFFFFFFFF;
  87.    GpioCtrlRegs.GPCDIR.all = 0xFFFFFFFF;

  88.    EDIS;
  89. }
复制代码

源程序打包: DSP-流水灯.rar (151.17 KB, 下载次数: 0)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51Hei单片机16群 联系QQ:125739409;技术交流QQ群7344883

Powered by 单片机教程网

快速回复 返回顶部 返回列表