久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4838|回復: 0
打印 上一主題 下一主題
收起左側

DSP實現流水燈樣式的源碼

[復制鏈接]
跳轉到指定樓層
樓主
給需要的朋友 這也是第一次發帖 望支持!


單片機源程序如下:
  1. /*
  2. * main.c
  3. *
  4. *  Created on: 2018年8月18日
  5. *      Author: LYJCD
  6. */

  7. //###########################################################################
  8. //
  9. // FILE:    Example1_2833xGpioLED.c
  10. //
  11. // TITLE:   用DSP點亮發光二極管實驗
  12. //
  13. //
  14. //    根據在RAM中調試的需要,這個項目配置成"boot to SARAM".2833x引導模式
  15. //    表如下顯示. 常用的還有"boot to Flash"模式,當程序在RAM調試完善后就
  16. //    可以將代碼燒進Flash中并使用"boot to Flash"引導模式.
  17. //
  18. //       $Boot_Table:
  19. //
  20. //         GPIO87   GPIO86     GPIO85   GPIO84
  21. //          XA15     XA14       XA13     XA12
  22. //           PU       PU         PU       PU
  23. //        ==========================================
  24. //            1        1          1        1    Jump to Flash
  25. //            1        1          1        0    SCI-A boot
  26. //            1        1          0        1    SPI-A boot
  27. //            1        1          0        0    I2C-A boot
  28. //            1        0          1        1    eCAN-A boot
  29. //            1        0          1        0    McBSP-A boot
  30. //            1        0          0        1    Jump to XINTF x16
  31. //            1        0          0        0    Jump to XINTF x32
  32. //            0        1          1        1    Jump to OTP
  33. //            0        1          1        0    Parallel GPIO I/O boot
  34. //            0        1          0        1    Parallel XINTF boot
  35. //            0        1          0        0    Jump to SARAM            <- "boot to SARAM"
  36. //            0        0          1        1    Branch to check boot mode
  37. //            0        0          1        0    Boot to flash, bypass ADC cal
  38. //            0        0          0        1    Boot to SARAM, bypass ADC cal
  39. //            0        0          0        0    Boot to SCI-A, bypass ADC cal
  40. //                                              Boot_Table_End$
  41. //
  42. // 功能描述:
  43. //
  44. //   程序編譯下載成功后,運行程序時LED燈組會一直閃爍
  45. //
  46. //
  47. //###########################################################################
  48. // 釋放日期: 2013.11.11
  49. //###########################################################################

  50. #include "DSP2833x_Device.h"     // DSP2833x 頭文件
  51. #include "DSP2833x_Examples.h"   // DSP2833x 例子相關頭文件


  52. #define D8 GpioCtrlRegs.GPBDAT.bit.GPIO60  //D8代表GPIO60
  53. #define D9 GpioCtrlRegs.GPBDAT.bit.GPIO61  //D9代表GPIO61
  54. #define D10 GpioCtrlRegs.GPCDAT.bit.GPIO64  //D10代表GPIO64
  55. #define D11 GpioCtrlRegs.GPCDAT.bit.GPIO65 //D11代表GPIO65
  56. #define D12 GpioCtrlRegs.GPCDAT.bit.GPIO66  //D12代表GPIO66
  57. #define D13 GpioCtrlRegs.GPCBAT.bit.GPIO67  //D13代表GPIO67
  58. #define D14 GpioCtrlRegs.GPCDAT.bit.GPIO68  //D14代表GPIO68




  59. // 使用前,聲明本文件中的相關函數;
  60. void delay_loop(void);
  61. void Gpio_select(void);

  62. void main(void)
  63. {

  64. // 步驟 1. 初始化系統控制:
  65. // 設置PLL, WatchDog, 使能外設時鐘
  66. // 下面這個函數可以從DSP2833x_SysCtrl.c文件中找到..
  67.    InitSysCtrl();

  68. // 步驟 2. 初始化通用輸入輸出多路復用器GPIO:
  69. // 這個函數在DSP2833x_Gpio.c源文件中被定義了
  70. // 這個函數使GPIO控制類寄存器初始化到默認狀態
  71. // InitGpio();  // 本例不用此子函數

  72. // 本例使用下面的GPIO配置
  73.    Gpio_select();

  74. // 步驟 3. 清除所有中斷初始化中斷向量表:
  75. // 禁止CPU全局中斷
  76.    DINT;

  77. // 初始化PIE控制寄存器到他們的默認狀態.
  78. // 這個默認狀態就是禁止PIE中斷及清除所有PIE中斷標志
  79. // 這個函數放在DSP2833x_PieCtrl.c源文件里
  80.    InitPieCtrl();

  81. // 禁止CPU中斷和清除所有CPU中斷標志
  82.    IER = 0x0000;
  83.    IFR = 0x0000;


  84. //初始化PIE中斷向量表,并使其指向中斷服務子程序(ISR)
  85. // 這些中斷服務子程序被放在了DSP280x_DefaultIsr.c源文件中
  86. // 這個函數放在了DSP2833x_PieVect.c源文件里面.
  87.    InitPieVectTable();


  88. // 步驟 4. 初始化片內外設:
  89. // 這個函數可以在DSP280x_CpuTimers.c源文件中找到
  90. //   InitCpuTimers();   // 這個例子僅初始化了Cpu定時器

  91. // 步驟 5. 用戶特定的代碼



  92.    for(;;)
  93.    {
  94.            //*******讓燈先從D8到D14逐一亮******//
  95.            GpioDataRegs.GPBDAT.bit.GPIO60=0;
  96.            delay_loop();
  97.            GpioDataRegs.GPBSET.bit.GPIO60=1;
  98.            delay_loop();
  99.            GpioDataRegs.GPBDAT.bit.GPIO61=0;
  100.            delay_loop();
  101.            GpioDataRegs.GPBSET.bit.GPIO61=1;
  102.            delay_loop();
  103.            GpioDataRegs.GPCDAT.bit.GPIO64=0;
  104.            delay_loop();
  105.            GpioDataRegs.GPCSET.bit.GPIO64=1;
  106.            delay_loop();
  107.            GpioDataRegs.GPCDAT.bit.GPIO65=0;
  108.            delay_loop();
  109.            GpioDataRegs.GPCSET.bit.GPIO65=1;
  110.            delay_loop();
  111.            GpioDataRegs.GPCDAT.bit.GPIO66=0;
  112.            delay_loop();
  113.            GpioDataRegs.GPCSET.bit.GPIO66=1;
  114.            delay_loop();
  115.            GpioDataRegs.GPCDAT.bit.GPIO67=0;
  116.            delay_loop();
  117.            GpioDataRegs.GPCSET.bit.GPIO67=1;
  118.           delay_loop();
  119.            GpioDataRegs.GPCDAT.bit.GPIO68=0;
  120.            delay_loop();
  121.            GpioDataRegs.GPCSET.bit.GPIO68=1;


  122.       /******讓燈從D14到D8返回*****///
  123.            GpioDataRegs.GPCDAT.bit.GPIO68=0;
  124.            delay_loop();
  125.            GpioDataRegs.GPCSET.bit.GPIO68=1;
  126.            delay_loop();
  127.            GpioDataRegs.GPCDAT.bit.GPIO67=0;
  128.            delay_loop();
  129.            GpioDataRegs.GPCSET.bit.GPIO67=1;
  130.            delay_loop();
  131.            GpioDataRegs.GPCDAT.bit.GPIO66=0;
  132.            delay_loop();
  133.            GpioDataRegs.GPCSET.bit.GPIO66=1;
  134.            delay_loop();
  135.            GpioDataRegs.GPCDAT.bit.GPIO65=0;
  136.            delay_loop();
  137.            GpioDataRegs.GPCSET.bit.GPIO65=1;
  138.            delay_loop();
  139.            GpioDataRegs.GPCDAT.bit.GPIO64=0;
  140.            delay_loop();
  141.            GpioDataRegs.GPCSET.bit.GPIO64=1;
  142.            delay_loop();
  143.            GpioDataRegs.GPBDAT.bit.GPIO61=0;
  144.            delay_loop();
  145.            GpioDataRegs.GPBSET.bit.GPIO61=1;
  146.            delay_loop();
  147.            GpioDataRegs.GPBDAT.bit.GPIO60=0;
  148.            delay_loop();
  149.            GpioDataRegs.GPBSET.bit.GPIO60=1;
  150.            delay_loop();
  151.            /******GPCSET(設置寄存器)是GpioData(數據寄存器)下的一個小寄存器
  152.            GpioDataRegs.GPBDAT.bit.GPIO60=0;
  153.            delay_loop();
  154.            GpioDataRegs.GPBSET.bit.GPIO60=1; 這兩個數是要配套使用不然起不到流水燈流水作用,
  155.            delay_loop();**/
  156. /*  D8=0;
  157.    D9=1;
  158.    D10=0;
  159.    D11=1;
  160.    D12=0;
  161.    D13=1;
  162.    D14=0;*/

  163.     }




  164. }
  165. //延遲子函數
  166. void delay_loop()
  167. {
  168.     Uint32      i;
  169.         Uint32      j;
  170.         for(i=0;i<32;i++)
  171.     for (j = 0; j < 100000; j++) {}
  172. }
  173. //GPIO初始化函數
  174. void Gpio_select(void)
  175. {


  176.     EALLOW;
  177.         GpioCtrlRegs.GPBMUX2.bit.GPIO60=0;  // GPIO0 = GPIO0 通用的I/0  GPIO48到GPIO口63是要選擇GPIOB選擇寄存器2
  178.         GpioCtrlRegs.GPBDIR.bit.GPIO60=1;  // GPIO0配置為輸出口
  179.         GpioCtrlRegs.GPBMUX2.bit.GPIO61=0;  // GPIO0 = GPIO0 通用的I/0
  180.         GpioCtrlRegs.GPBDIR.bit.GPIO61=1;  // GPIO0配置為輸出口
  181.         GpioCtrlRegs.GPCMUX1.bit.GPIO64=0;  // GPIO0 = GPIO0 通用的I/0   GPIO64到GPIO79是要選擇GPIOC選擇寄存器1
  182.         GpioCtrlRegs.GPCDIR.bit.GPIO64=1;  // GPIO0配置為輸出口
  183.         GpioCtrlRegs.GPCMUX1.bit.GPIO65=0;  // GPIO0 = GPIO0 通用的I/0
  184.         GpioCtrlRegs.GPCDIR.bit.GPIO65=1;  // GPIO0配置為輸出口
  185.         GpioCtrlRegs.GPCMUX1.bit.GPIO66=0;  // GPIO0 = GPIO0 通用的I/0
  186.         GpioCtrlRegs.GPCDIR.bit.GPIO66=1;  // GPIO0配置為輸出口
  187.         GpioCtrlRegs.GPCMUX1.bit.GPIO67=0;  // GPIO0 = GPIO0 通用的I/0
  188.         GpioCtrlRegs.GPCDIR.bit.GPIO67=1;  // GPIO0配置為輸出口
  189.         GpioCtrlRegs.GPCMUX1.bit.GPIO68=0;  // GPIO0 = GPIO0 通用的I/0
  190.         GpioCtrlRegs.GPCDIR.bit.GPIO68=1;  // GPIO0配置為輸出口





  191.     EDIS;

  192. }
  193. //===========================================================================
  194. // No more.
  195. //===========================================================================
復制代碼

所有資料51hei提供下載:
newprojectLED1.rar (197.78 KB, 下載次數: 26)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩中文欧美 | 成人免费在线视频 | 99精品国产一区二区三区 | 国产精品高潮呻吟久久 | av黄色在线 | 国产精品揄拍一区二区 | 99精品免费| 国产精品久久久久久久免费大片 | 午夜在线 | 日韩免费视频 | 91不卡| 51ⅴ精品国产91久久久久久 | 秋霞电影院午夜伦 | 91精品在线观看入口 | 国产成人免费视频网站高清观看视频 | 男人天堂社区 | 免费av直接看 | 一级特黄网站 | 91在线看片 | 在线观看亚洲 | 九九九久久国产免费 | 超碰人人人人 | 日韩一区二区在线免费观看 | 91精品免费| 久久天堂 | 在线视频成人 | 中文字幕亚洲一区二区三区 | 国产成人99久久亚洲综合精品 | 拍拍无遮挡人做人爱视频免费观看 | 欧美 日韩 视频 | 91在线看片| 一区二区三区四区av | 欧美一区视频 | 亚洲视频一区 | 视频1区2区 | 天天色影视综合 | 美女久久视频 | 亚洲精品成人av久久 | 精品国产一区二区三区四区在线 | 日本不卡一区二区三区在线观看 | 国产资源视频 |