找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4286|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

嵌入式s5p6818裸機led源代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:391753 發(fā)表于 2018-8-30 20:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
s5p6818最基本的 GPIO控制---led實例


1、查看電路原理圖,找到控制led對應(yīng)管腳對應(yīng)名稱

2、查看數(shù)據(jù)手冊,選擇管腳功能.或者直接在電路圖中查看

3、編程
   
   3.1、查看管腳配置寄存器定義管腳地址(數(shù)據(jù)手冊GPIO章節(jié)查找)
   
   3.2、配置管腳功能 (1、配置為輸出功能;2、配置為輸出模式)
   
   3.3、控制GPIOCOUT指定輸出狀態(tài)

4、編譯 (前提是已經(jīng)編譯好makefile,已提供)
   4.1、直接make。注:是在源程序和makefile所在目錄下
   4.2、復(fù)制生成的文件到tftpboot目錄,格式如下:
        cp led.bin /tftpboot
   4.3、查看是否復(fù)制成功.   ls /tftpboot    顯示led.bin則成功

5、下載配置(配置虛擬機和超級終端)
   5.1、連接好串口線、網(wǎng)線、電源線(*千萬注意:電源線連接到擴展板DC12V,不能連底板5V)
   5.2、連好線以后在給系統(tǒng)上電,上電倒數(shù)讀秒階段迅速按回車鍵,避免進入linux系統(tǒng)
   5.3、虛擬機端配置
   例:ifconfig eth0 192.168.137.1 (本地址網(wǎng)段要與實體電腦網(wǎng)段一致)
       可以在實體電腦:開始---cmd--ipconfig  查看本地連接--ipv4
   5.4、超級終端配置網(wǎng)絡(luò)(輸pri查看)
        配置格式
        setenv severip 192.168.137.xx
        setenv ipaddr 192.169.137.xxx
        setenv gateway 192.168.137.xxxx
        
        saveenv  (保存以上配置)
   
6、下載
    tftp 0x40000000  led.bin    (注:led.bin 名字與編譯出來名字一樣)
   
7、運行
    go 0x40000000
   
8、結(jié)果驗證:查看是否實現(xiàn)led燈控制   
   
  1. //D7---E13, D8---C17, D9---C8,  D10---C7,  D11---C12
  2. //GPIOCOUT    --->0xC001C000 ---設(shè)置引腳的輸出數(shù)值
  3. //GPIOCOUTENB --->0xC001C004 ----設(shè)置引腳是輸入引腳還是輸出引腳:1為輸出引腳,0位輸入引腳.
  4. //GPIOCALTFN0 --->0xC001C020設(shè)置[15:0]引腳的功能:00--input or output
  5. //GPIOCALTFN1 --->0xC001C024設(shè)置[31:16]引腳的功能:2.3 GPIO function description

  6. #define  GPIOCOUT     *(volatile unsigned int *)0xc001c000  
  7. #define  GPIOCOUTENB  *(volatile unsigned int *)0xc001c004
  8. #define  GPIOCALTFN0  *(volatile unsigned int *)0xc001c020



  9. void main(void)
  10. {
  11.         GPIOCALTFN0 &= ~(3<<24);
  12.         GPIOCALTFN0 |= (1<<24);
  13.         GPIOCOUTENB |= (1<<12);
  14.         while(1)
  15.         {
  16.                
  17.                 GPIOCOUT ^= (1<<12);
  18.                 delay(0x4000000);
  19.         }
  20. }

  21. void delay(int val)
  22. {
  23.         volatile int i;
  24.         for(i=0;i<val;i++);
  25. }
復(fù)制代碼

全部資料51hei下載地址:
1led.rar (4.29 KB, 下載次數(shù): 12)

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

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表