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

CoX:讓你在ARM編程時得心應手

發布時間:2012-4-15 18:58    發布者:sandy2012
關鍵詞: 編程 , ARM
隨著ARM的發展越來愈快,應用越來越廣泛,現在ARM Cortem M系列已經基本走向取代8位、16位MCU的時代。正式因為這樣,推出ARM Cortem M系列CPU的廠商如雨后春筍一般迅速增加。廠商在推出自己產品是無益會在自己的產品中增加各種差異化、特色化功能,然而,這就讓開發的工程師,在開發產品時變得比較困難。特別是在產品需要優化和升級,更換硬件平臺時。軟件的更換也會變得相當復雜,所以,ARM也推出一些軟件設計方面的標準-CMSIS,CMSIS統、一了啟動和內核相關的代碼,給出了一個規范的標準,然而,這遠遠不夠,一個系統會用到CPU的各種各樣的外設,而這些外設,CMSIS還沒給出明確的標準,雖然,在CMSIS 1的后期版本里面做過相關工作,最后也無疾而終!

幸好CooCox 推出了一個完善的標準——CoX標準。深入了解并研究代碼后發現,CoX不僅很好的實現了廠商的特性,還提出了所有的共性。下面從我體驗RTC來說說CoX給我們帶來的方便!

首先,我從github上面clone了整個的CoX倉庫,關于git的用法等,這個里面有幫助鏈接,這里就不詳細去介紹了。

Clone完了之后發現有許多分支,選擇了NUC1xx的分支,由于我要做個簡單的萬年歷,于是開始研究RTC方面的代碼,發現API很簡單,發現就需要先做一個初始化配置并使能相關中斷就可以用來讀寫時間了,芯唐的RTC實現了一個完整的萬年歷系統,可以直接從寄存器讀出年月日時分秒,還有星期。甚至連是否是瑞年也會有標志位。用起來很方便!xRTC也是這么定義的,在xtTime的結構體中,包含了年月日時分秒和星期這些元素。但是,我以前用過ST芯片,發現STM32F1xx系列的RTC只有一個32位數據計數器,應該是不能和xtTime所定義的標準相兼容的,正當我有此疑惑的時候,我看到另外一個配置宏以及對應的兩個API,static unsigned long

xRTCConvertTimeToCounter(xtTime *xtTime) 和static void xRTCConvertCounterToTime(xtTime *xtTime, unsigned long ultimeCounter)。這兩個API的用途就是實現xtTime結構體和數據計數器之間的相互轉換的。有了這兩個API,所有的RTC都可以統、一成一種通用的標準——即用統、一的API,用固定格式的數據結構(參數統、一)。于是,我輕松的寫完了一個簡單的例程,對比,CooCox在組件里面上傳的例程,大同小異,不同的是,我全部用CoX接口實現。很簡單的代碼。

在用CoX庫寫代碼時,首先,第一件事情就是配置系統時鐘:
xSysCtlClockSet(48000000, xSYSCTL_OSC_MAIN | xSYSCTL_XTAL_12MHZ);
這個函數有兩個參數,第一個就是最終需要得到的系統時鐘,第二個參數是對應的配置,如果使用,內部時鐘就選xSYSCTL_OSC_INT,使用外部晶振就選xSYSCTL_OSC_MAIN,并“與”上開發板實際的晶振值。
其次,就是使能和復位外設:
xSysCtlPeripheralReset(xSYSCTL_PERIPH_RTC);
xSysCtlPeripheralEnable(xSYSCTL_PERIPH_RTC);
如果有管腳的話,就配置相關管腳:
xSPinTypeUART(UART0RX,PB0);

xSPinTypeUART(UART0TX,PB1);
RTC一般沒有相關外部管腳,這一步沒有,上面的是以串口為例說明的。
再次,調用外設的初始化函數、外設使能函數、中斷使能和中斷回調配置等:
xRTCTimeInit();
初始化RTC外設
xRTCIntCallbackInit(xRTCCallback);
初始化回調函數
xRTCIntEnable(xRTC_INT_SECOND);
在外設層使能中斷
xIntEnable(INT_RTC);
在內核層使能中斷
對于RTC的話,還要配置一個初始時間,這個就可以通過xRTCTimeWrite(&tTime1, xRTC_TIME_CURRENT)函數實現。至此,只用在每次發生中斷是,用xRTCTimeRead(&tTime1, xRTC_TIME_CURRENT)讀出當前的時間就行了!
研究完了RTC代碼發現,CoX代碼真的將各個廠商的差異和共性變現的一覽無余。于是,RTC在應用時變得很方便快捷。從一個系列的MCU換到另外一個系列,只需修改基本配置就行了!當然RTC只是一個很簡單的外設,要統、一很簡單,下面我會進一步研究其他代碼,一步步揭開CoX的神秘面紗!
本文地址:http://m.qingdxww.cn/thread-90244-1-1.html     【打印本頁】

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

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲第成色999久久网站| 亚洲 欧美 中文 日韩 视频| 日韩免费观看一级毛片看看| 亚洲国产精品一区二区三区久久| 亚洲啪啪免费视频| 日韩欧美视频在线一区二区| 四虎四虎| 99这里只有是精品2| 精品国产九九| 诱人的女邻居9中文观看| 亚洲精品国产自在久久出水| 亚洲第一黄网站| 一区二区免费观看| 九九热视频免费| 色性综合| 青娱乐视觉盛宴在线视频| 中文伊人| 2021久久99国产熟女人妻| 欧美成人国产| 日韩毛片网| 日本极品另类| 四虎影院在线| 北原夏美 快播| 谁有成人网站地址| 精品国产在线亚洲欧美| 嘴巴舔着她的私处插| 青榴视频在线| 糖心免费视频观看| 俄罗斯性xxxx| 亚洲呦女专区| 欧美一级黄色带| 亚洲www| 一区视频在线观看| 蜜桃传媒视频| 香蕉国产一区二区| 天堂8中文在线| 天堂网在线.www天堂在线资源| mxgs-877痉挛媚药按摩| 天美传媒在线完整免费观看网站 | 亚洲精品一线二线三线| 久久精视频|