欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

嵌入式問題之(數組定義)

作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月10日   【字體:

    今天調出來了跑馬燈用數組和指針實現。
    之前出現過幾個問題:
    程序描述:s3c2440addr.h中定義了LED1_ON,LED2_ON,LED3_ON和LED4_ON;將他們放入數組中這樣定義:unsigned char const arrange[]={LED1_ON,LED2_ON,LED3_ON,LED4_ON};然后調用數組中的值是,led第三和第四個等一直是亮的,沒有實現跑馬燈的效果,而且在數組處出現了警告。于是定義了一個指針,看看是數組出了問題還是函數體里出了問題;指針式這樣定義的,unsigned char *p,p=arrange;此時出現錯誤(原因是沒有const,因為定義數組時有一個const,將指針改成unsigned char const *p沒有錯誤依然是數組處有4個警告);后來發現,我的LED1_ON等都是數字而數組定義的卻是字符,于是將數組定義為:unsigned int arrange[]={LED1_ON,LED2_ON,LED3_ON,LED4_ON}4個警告消失,程序運行成功。
#include"s3c2440addr.h"
//unsigned char const arrange[]={LED1_ON,LED2_ON,LED3_ON,LED4_ON}; //這里的char用錯了
//可以這樣定義 unsigned int const  arrange[]={LED1_ON,LED2_ON,LED3_ON,LED4_ON};
//但是指針就要這樣定義:unsigned int const *p;
unsigned int  arrange[]={LED1_ON,LED2_ON,LED3_ON,LED4_ON};
void delay(unsigned int x)
{
 unsigned int i,y;
 for(i=x;i>0;i--)
 for(y=10000;y>0;y--);
}
void main()
{
 int num;
 unsigned int  *p;
 p=arrange;
 GPBCON=0x1DD7FC;
 while(1)
 {
  //for(num=0;num<4;num++)
  //{ 
   if(p==arrange+5)
   {
    p=arrange;
   }
   GPBDAT=*p;
   delay(5000);
   p++;


  //}
 }
}
   

關閉窗口

相關文章