国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

玩轉ARM基本功

發布時間:2014-8-25 17:11    發布者:看門狗
作者:Machinnneee

  我是稀里糊涂的走上了嵌入式開發的道路,回想起來,多虧了身邊的幾位朋友,是在與他們的閑侃中慢慢的走上了這條道路:從最早的電路設計,PCB打板,電路調試,模擬仿真單片機開發到后來的ARM開發,回想起來,心里也是誠惶誠恐,如履薄冰。

  我開始做電子是用的AVR單片機,從I/O、按鍵…到內存、外設玩了一通。工作之后,才開始玩ARM。在項目中逐漸對ARM開發有了一些感悟。

  學習ARM有兩個目的,看你是那種:1、長見識,順便玩玩;2、工作需要,從事ARM開發。這就要分開對待了。

  如果是長見識,隨便玩玩,為日后的工作做準備,那么就應該挑選市場上很成熟的ARM7、ARM9等資料比較多,玩的人比較多,出現問題容易解決;如果是工作需要,就沒有這么多選擇,必須按照功能要求,開始征服特定的片子。

  不管哪種目的,學習起來步驟我感覺差不多,先裸板,后上操作系統:



  之所以這么安排,是因為聽了很多大牛的建議和意見。正所謂“萬丈高樓平地起”,基礎很重要。在上操作系統之前,一定要對底層代碼特別是裸板程序有一定的認識。這樣,對于操作系統中涉及底層的問題就會少很多。

  現在以我學習ARM11(s3c6410-1176JZF)的經歷介紹寫一些基本功。

  首先:要有一定的電子基礎。

  這不是廢話嗎,既然玩ARM當然都是懂電子的呀。其實不然!電子基礎可深可淺,怎么是個頭?會IC放大器,搭建信號處理電路,這是信號處理中的基本功。對于ARM開發來說,我感覺重點在信號走線、濾波、穩壓和保持片子性能穩定上(分析一個ARM板子就會明白這些道理)。

  我談下我的見解:明白ARM板子中除集成IC之外的元器件的作用,最常見的是電容作用、驅動LED呀、揚聲器呀、串口連接、存儲器連接、LCD屏幕連接等等。看到串口,想起怎么連接;看到按鍵,想起怎么識別……基本上在硬件上可以將整個系統連接起來。

  其次,有一定的英文閱讀能力。

  我在開發的時候以Linux應用完全開發手冊、6410手冊和ARM1176jzf內核手冊為基礎。這三個文檔一個中文,兩個英文,頁數總和有2500頁。如果沒有耐心,想盡快完成開發,這無異于緣木求魚。6410的手冊是對ARM11芯片的介紹和寄存器的總體介紹:包括GPIO設置,相機接口、Nandflash控制器、DRAM控制器等。1176jzf是對1176jzf處理器的設置的介紹。



對于簡單的GPIO設置,我們可以查閱6410的GPIO章節,



  從中可以看出各組管腳的功能:各組管腳是混合復用(除了GPI和GPJ兩組),依據單片機知識,如果是管腳復用,必須通過相應寄存器設置才能達到相應要求,這時,我們需要看GPIO的寄存器設置章節:

  對于GPA組,



  可以看出端口A具有讀寫功能,并且有相應的地址,從存儲器映射圖中可以看出,端口A可以通過配置相應寄存器(也就是相應的地址)為合適的數值,就能完成相應的操作。



  對于GPA0管腳來說,通過配置其為0000或者0001或者0010將其定義為輸入、輸出或者串口模式,具體操作及分如下:



  通過三個操作,可以講GPA0設置為輸出功能,如果外界LED,可以實現LED燈的控制。

  此外,還有數據寄存器,上拉控制寄存器,配置休眠和上拉休眠等寄存器,其操作原理一樣,將相應的寄存器地址放入一寄存器,寫入數值,即完成相應配置。

  第三、要有一點匯編和c語言的基礎。

  為什么這么說呢,首先看下配置I/O口為簡單輸入輸出的ARM的啟動代碼:



  在6410的啟動代碼中,需要以匯編語言的形式設置、配置寄存器,現在將這部分進行簡單的分析:

  在寫裸板程序的起始,需以 .globl 為開始,通過



  將外設地址映射到外設地址,通過



  將存儲器大小設置為256M,具體怎么實現的呢,查看1176jzf手冊:





  有此可見,6410手冊和1176jzf手冊對于裸板程序是一利器。

  第四、舉一反三,融會貫通,利用網絡。

  一個6410手冊有1378頁,一個1176jzf有972頁,看完是一項可望不可及的任務,因此善于舉一反三,融會貫通是必須的。另外還需要有Google大神的幫助。在開發過程中,如果碰到新功能,新接口沒有使用過,這時,Google大神就可以發揮其大神的作用,帶領你完成任務。

  如在寫堆棧操作中,需要將各寄存器的數值進行保存,需要使用stmdb指令,如果不熟悉,可以用Google大神進行幫助。

  通過介紹,可以明白具體的操作。

  雖然ARM更新速度很快,但是也不是出來一個新產品就讓我們從頭開始學習新技術,只要熟悉掌握了一種MCU,通過舉一反三,可以將技術擴大到應有的領域。

  最后借用孔老夫子的一句話“學而不思則罔,思而不寫則殆”來表達嵌入式開發者——至少我是這樣的心情。
本文地址:http://m.qingdxww.cn/thread-132279-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产在线精品一区二区高清不卡 | 日韩欧美中文字幕在线视频 | 男女免费网站 | 手机在线观看a | 第一毛片 | 国产91香蕉视频 | 精品伊人网 | 在线精品国产 | 欧美1819| h肉动漫在线观看免费资源 h肉动漫在线观看高清 | 两个人在线观看完整版 | 青青草手机在线观看 | 1024香蕉国产在线视频 | 韩国美女爽快一级毛片黄 | 91网站免费在线观看 | 久久国产免费福利资源网站 | 青草视频入口 在线观看 | 色在线视频网站 | 牛牛影视成人午夜影视 | 免费二级c片在线观看a | 精品国产一区二区 | 欧美成人一区二区 | 野花手机免费观看7 | 成人性一级视频在线观看 | 最新亚洲人成网站在线影院 | 啪啪91视频 | 久久91视频| 一级片日韩 | 成人黄色在线播放 | 在线成人免费观看国产精品 | 日韩免费视频播放 | 第一福利视频 | 成年女美黄网站大全免费播放 | 精品国内一区二区三区免费视频 | 欧美69色 | 国产高清在线观看 | 久色中文 | h视频国产 | 四虎精品久久久久影院 | 国产日韩精品一区二区 | www.日本在线视频 |