在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嵌入式技術之GPIO控制LED工作原理

454398 ? 來源:博客園 ? 作者:wanglinwei ? 2020-09-24 10:59 ? 次閱讀

基本概念:

1.GPIO--通用IO口,通過芯片針腳來控制或讀取外設的數據。

2.GPIO口的使用原理,通過設置GPXXCON, GPXXDAT, GPXXPUL等寄存器來設置GPIO口的狀態。

原理圖:

跟硬件相關的部分,一定要閱讀原理圖,然后通過查找SoC的用戶手冊來查找相應的寄存器設置即可。

底板電路圖:

核心板電路圖:

可知在OK6410上4個LED燈是通過GPM這一組的GPIO口控制的,分別是GPM0-GPM3四組。

然后打開S3C6410X User's Manual,查找GPM相關的寄存器:

通過上面內容找到:

GPMCON 地址 0x7F008820

GPMDAT 地址 0x7F008824

由于LED連接著GPM0-GPM3,所以通過上面的內容可以知道,GPMCON設置的值應該為0x00001111,意思是將GPM0-GPM3設置為輸出,這樣通過設置GPMDAT[5:0]來控制響應針腳的高低電平,使LED亮或滅。

代碼:(以下代碼參考了友善之臂Tiny6410的匯編代碼,并非原創

匯編代碼:

start.S

Makefile:

1 led.bin: start.o

 2         arm-linux-ld -Ttext 0x50008000 -o led.elf $^
 3         arm-linux-objcopy -O binary led.elf led.bin
 4         arm-linux-objdump -D led.elf > led_elf.dis
 5 %.o : %.S
 6         arm-linux-gcc -o $@ $< -c
 7 
 8 %.o : %.c
 9         arm-linux-gcc -o $@ $< -c 
10 
11 clean:
12         rm *.o *.elf *.bin *.dis  -rf

然后make,可以得到led.bin,通過tftp下載到開發板中:

然后就可以看到OK6410板上的四個LED燈開始一起閃爍。

總結:

1.GPIO口的使用其實是SoC外設控制中最簡單的,只要抓住GPIO的幾個寄存器,將他們的值設置正確,就可以完成相應的控制功能。

2.一定要學會查看SoC的User's Manual的方法,這樣當SoC換成其他品牌時,可以以不變應萬變。

3.使用ld來鏈接.o文件時,一般會指定-Ttext選項,表示該代碼會在內存的哪個地址加載,通過查看User's Manual,你可以決定這個地址的范圍,如下圖,0x50000000-0x6FFFFFFF地址區間映射到DRAM上,所以絕大部分的資料中,S3C6410中的內存地址都是0x5xxxxxxx類似的地址。也有一些0xcxxxxxxx類似的地址,這是打開SoC中的MMU后進行物理地址和虛擬地址映射后的結果,如果打開了MMU,就可以使用0xcxxxxxxx這樣的地址,否則無法使用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led燈
    +關注

    關注

    22

    文章

    1592

    瀏覽量

    108182
  • 嵌入式技術
    +關注

    關注

    10

    文章

    360

    瀏覽量

    36355
  • GPIO
    +關注

    關注

    16

    文章

    1214

    瀏覽量

    52215
收藏 人收藏

    評論

    相關推薦

    GPIO嵌入式系統中的作用

    在現代電子系統中,嵌入式系統因其小型化、低成本和高效率而變得越來越流行。這些系統廣泛應用于從簡單的家用電器到復雜的工業自動化設備。在這些系統中,GPIO(通用輸入/輸出)接口是連接微控制器與外部世界
    的頭像 發表于 01-09 09:45 ?98次閱讀

    為什么嵌入式驅動開發工程師可以拿高薪?

    。 為什么嵌入式驅動開發工程師可以拿高薪? 嵌入式驅動開發工程師屬于技術密集型工作,不僅需要深入了解硬件的工作原理,還需掌握各種編程語言
    發表于 01-07 16:56

    嵌入式好找工作嗎?

    功能穩定且智能化運行,再到工業領域里的自動化生產線,靠嵌入式設備精準控制生產流程,還有醫療設備中那些輔助診斷、精準治療的儀器等。可以說,它橫跨了消費電子、汽車、工業、醫療等眾多行業,行業覆蓋面如此
    發表于 12-16 15:43

    新手怎么學嵌入式?

    的基礎上增加了面向對象編程的特性,有助于編寫更復雜的嵌入式程序。 3. 學習硬件知識 嵌入式技術與硬件緊密相關,因此你需要了解一些基本的硬件知識。比如微控制器(MCU)、微處理器(
    發表于 12-12 10:51

    什么是嵌入式人工智能

    嵌入式人工智能是指將人工智能技術應用于嵌入式系統中的一種技術嵌入式系統是嵌入到其他設備或系統中
    的頭像 發表于 12-11 09:23 ?353次閱讀
    什么是<b class='flag-5'>嵌入式</b>人工智能

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統的核心組件,是一種用于控制和數據處理的計算機硬件,其設計旨在嵌入特定設備中執行專門任務。嵌入式主板如同是設備
    的頭像 發表于 09-30 10:05 ?667次閱讀

    嵌入式linux開發板芯片的工作原理

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺,它廣泛應用于工業控制、智能家居、智能交通、醫療設備等領域。 嵌入式Linux開發板概述
    的頭像 發表于 09-02 09:07 ?425次閱讀

    適合初學者的嵌入式項目有哪些?

    輸出引腳(GPIO)來控制LED燈的狀態。通過編寫簡單的C語言代碼,你可以實現LED燈的各種控制效果,如呼吸燈、流水燈、彩虹燈等。這個項目可
    發表于 07-11 10:23

    嵌入式系統怎么學?

    嵌入式系統之間或與外部設備的數據通信。 7、傳感器和執行器:了解各種傳感器(如溫度傳感器、加速度傳感器等)和執行器(如電機、舵機等)的工作原理和接口方式,以實現對外部環境的感知和控制。 8、
    發表于 07-02 10:10

    如何提升嵌入式編程能力?

    /C++:大多數嵌入式系統使用C或C++編程語言,因此深入學習這兩種語言是非常重要的。 8. 理解操作系統:學習嵌入式操作系統(如FreeRTOS, VxWorks, Zephyr等)的工作原理
    發表于 06-21 10:01

    嵌入式系統軟硬件基礎知識大全

    嵌入式系統是現代科技發展的一個重要分支,廣泛應用于工業控制、消費電子、醫療設備、汽車電子等領域。本文試圖全面解析嵌入式系統的軟基礎知識,以期讓讀者對這一技術有更深入的了解。
    發表于 05-09 14:12

    如何成為一名嵌入式C語言高手?

    的特性和工作原理對于嵌入式C語言編程至關重要。你應該學習如何與外設進行交互、如何配置寄存器和控制器等。閱讀相關設備的數據手冊和技術文檔,參加硬件相關的課程,可以幫助你更好地理解
    發表于 04-07 16:03

    如何成為一名嵌入式C語言高手?

    的特性和工作原理對于嵌入式C語言編程至關重要。你應該學習如何與外設進行交互、如何配置寄存器和控制器等。閱讀相關設備的數據手冊和技術文檔,參加硬件相關的課程,可以幫助你更好地理解
    發表于 03-25 14:12

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術集成到嵌入式系統中的一種解決方案。嵌入式系統是一種為特定應用而設計的計算機系統,它通常包括處理器、內存、外設接口等組件,并且被
    的頭像 發表于 03-15 14:29 ?1307次閱讀

    嵌入式工程師需要掌握哪些技術?

    嵌入式工程師需要掌握哪些技術? 嵌入式系統是當今科技領域中的重要組成部分,它們存在于我們生活的方方面面,從智能手機到汽車控制系統,從家電到醫療設備。因此,對于那些想要進入
    發表于 03-04 16:38
    主站蜘蛛池模板: 天天干天| 婷婷六月激情| 黄乱色伦| 波多野结衣50连精喷在线| 亚洲啪啪免费视频| 中文字幕在线一区二区三区| 2022年永久免费观看| 日本一级高清不卡视频在线| 国产成人精品三级在线| 一区二区三区国模大胆| 婷婷六月丁香| 欧美精品一区二区三区视频| 激情五月综合婷婷| 播五月婷婷| 天天干视频网站| www.夜夜骑| 日本不卡1| 性做久久久久久久免费看| 日韩天堂在线观看| 靓装爱神12丝袜在线播放| 丁香六月 久久久| 天天操精品视频| 永久免费看的啪啪网站| 亚洲精品亚洲人成毛片不卡| 国产午夜免费| 激情六月丁香| 月夜免费观看完整视频| 三级天堂| 视频在线色| 涩涩高清无乱码在线观看| 免费在线色视频| 噜噜噜噜私人影院| 啊用力太猛了啊好深视频免费| 五月天婷婷社区| 天天操天天插| 日本xxxxxx69| 伊人草| 欧美精品综合一区二区三区| 成人a级特黄毛片| 狠狠干夜夜操| 免费大片看黄在观看|