在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > OK6410裸機程序---leds

            OK6410裸機程序---leds

            作者: 時間:2016-11-09 來源:網(wǎng)絡 收藏
            今天寫一下OK6410裸機中的led燈,led是差不最簡單的裸機驅動了吧。詳細的說一下,以便梳理自己的知識。

            我們首先看一下OK6410的LED連接圖:

            本文引用地址:http://www.biyoush.com/article/201611/317818.htm

            其中NLED1234,和s3c6410的GPIO引腳相連,如圖:

            其實LED發(fā)光的原理很簡單的,就是把LED連接到s3c6410的GPIO引腳,通過改變s3c6410的GPIO上的電平來控制LED發(fā)光。

            這樣的話就很清楚了,我們來看下s3c6410 datasheet上關于GPIO引腳的設置:

            首先是GPMCON寄存器:

            因為我們要控制GPIO的電平,所以要把對應的GPIO引腳設置為Output,即:0001

            像我們這個就是:GPMCON &=0xffff fff1;

            把這個引腳設置好后,我們可以通過改變GPMDAT的值來改變引腳上的電平。下面是GPMDAT:

            可以看出來我們只要把對應的位設置為0或1,就可以控制LED了。簡單吧?

            下面看下源程序:

            1. void(*printf)(char*,...)=0xc7e11650;
            2. #defineGPMCON(*(unsignedlongvolatile*)0x7F008820)
            3. #defineGPMDAT(*(unsignedlongvolatile*)0x7F008824)
            4. #defineGPMPUD(*(unsignedlongvolatile*)0x7F008828)
            5. /*
            6. *NLED1GPM0
            7. *NLED2GPM1
            8. *NLED3GPM2
            9. *NLED4GPM3
            10. */
            11. voidset_gpio(void);
            12. voidudelay();
            13. intmain(void)
            14. {
            15. set_gpio();
            16. printf("%2x/n",GPMDAT);
            17. GPMDAT=0x00;
            18. inti;
            19. while(1){
            20. for(i=0;i<=3;i++)
            21. {
            22. GPMDAT=(1<
            23. udelay();
            24. }
            25. }
            26. return0;
            27. }
            28. /*
            29. *delay
            30. */
            31. voidudelay()
            32. {
            33. unsignedlongi=0;
            34. for(i=0;i<1000000;i++);
            35. }
            36. voidset_gpio(void)
            37. {
            38. GPMCON&=0xffff1111;
            39. }

            這樣,leds就交替亮了。



            關鍵詞: OK6410裸機程序led

            評論


            技術專區(qū)

            關閉