<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于MINI2440開發(fā)板的LED流水燈實驗(含init.s)

          基于MINI2440開發(fā)板的LED流水燈實驗(含init.s)

          作者: 時間:2016-11-20 來源:網絡 收藏
          晚上看完了S3C2140A的GPIO開發(fā)部分,然后對著2440的數(shù)據(jù)手冊寫了個LED的小程序,總結下,程序如下:
          初始化部分程序: Init.s
          IMPORT Main
          CODE32
          AREA Init,CODE,READONLY
          ENTRY
          ldr r0, =0x53000000;關門狗
          mov r1, #0x0
          str r1, [r0] ;關閉關門狗
          ldr sp, =1024*4 ;設置堆棧,由于main函數(shù)里調用了其他函數(shù),所以一定要設置堆棧

          bl Main
          main_loop
          b main_loop
          END
          主程序:mian.c


          #define GPBCON (*(volatile unsigned *)0x56000010)
          #define GPBDAT (*(volatile unsigned *)0x56000014)
          #define GPBUP (*(volatile unsigned *)0x56000018)

          void delay(unsigned int dly);

          void Main()
          {
          GPBCON= 0x15400;
          GPBUP=0xFFFF;
          while(1)
          {
          GPBDAT&=~0x20;
          delay(120);
          GPBDAT&=~0x60;
          delay(120);
          GPBDAT&=~0xE0;
          delay(120);
          GPBDAT&=~0x1E0;
          delay(120);
          GPBDAT|=0x20;
          delay(120);
          GPBDAT|=0x60;
          delay(120);
          GPBDAT|=0xE0;
          delay(120);
          GPBDAT|=0x1E0;
          }
          }
          void delay(unsigned int dly)
          {
          unsigned int i;
          for(;dly>0;dly--)
          for (i = 0;i < 1000; i++);
          }
          這里有個要注意的是,在VIVI里下載到SDRAM運行時,因為VIVI設置了系統(tǒng)時鐘,發(fā)型程序運行異常時,可以將延時函數(shù)的參數(shù)設置大些,延長延時程序。反過來如果在SDRAM里運行正常,而用VIVI下載到NAND Flash里運行時異常,那是因為外部時鐘相對要慢很多,可以將延時程序的參數(shù)設置小些,減少延時程序時間。


          關鍵詞: MINI2440LED流水

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();