欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

3天內(nèi)不再提示

I.MX6ULL官方SDK驅(qū)動LED燈

華仔的編程隨筆 ? 2023-05-03 20:53 ? 次閱讀

官方SDK簡介

I.MX6ULL官方提供了裸機SDK包,使得學習上手冊很。I.MX6ULL的SDK包在NXP官網(wǎng)下載https://www.nxp.com/search?keyword=i.MX%25206ULL%2520SDK&start=0&category=software

9307d6fc6f838e6b206f4a507577ae20ae19084379e6172bb46e96245bd60fff.png

當然原子在資料盤中也給我們提供了,在目錄L:\\baidudownloads\\【正點原子】阿爾法Linux開發(fā)板(A盤)-基礎資料\\【正點原子】阿爾法Linux開發(fā)板(A盤)-基礎資料\\07、I.MX6U參考資料\\03、I.MX6ULL SDK包目錄下面:

c88fe0500e157ab0f2c77fb872c412cb9a4fe01e06595812db44d55940512818.png

雙擊安裝程序,在目錄選擇時,指定目錄,好在以后需要時找得到

f07c4c158a184c15364346a923496915873760a4c8a4f7288029936ceb6b43a6.png

安裝好后,文件夾如下:

77f0d7ae24bb5b845803e75b0f3296cafdaae2c781ae8ad9c7cb59206e0a33bc.png

我們裸機開發(fā)的話用到以下三個文件:

fsl_common.h:位置為 SDK_2.2_MCIM6ULL\\devices\\MCIMX6Y2\\drivers\\fsl_common.h。

fsl_iomuxc.h: 位置為 SDK_2.2_MCIM6ULL\\devices\\MCIMX6Y2\\drivers\\fsl_iomuxc.h。

MCIMX6Y2.h: 位置為 SDK_2.2_MCIM6ULL\\devices\\MCIMX6Y2\\MCIMX6YH2.h。

整個 SDK 包我們就需要上面這三個文件,把這三個文件準備好,我們后面移植要用。

41b0d34f6e94f082bb0106c780b717242e053a36126d88ca579a18a5b878d749.png

98a18e4ddac692bdbb1bab3b645d14d11ade44ec5a79295edc2e3c319353135b.png

我們把這三個文拷到一個文件夾,以備以后開發(fā)使用。

b0cfb64bc30566012cb92a4af6eb00b543ac032d70606b4b3567e74bc1fbb02f.png

編寫實驗程序

  1. 新建一個名為cc.h的頭文件,cc.h中存放著一些SDK庫文件需要使用的數(shù)據(jù)類型,如下所示:
/***************************************************************
Copyright ? lugl.
文件名 : main.h
作者 : 劉建華
版本 : V1.0
描述 : 有關變量的類型定義,nxp官方SDK的一些移植文件會用到。
其他 : 此程序?qū)W習左中凱老師課程
日志 : 初版 2023/5/3 劉建華修改
**************************************************************/
/************************************************************

* 
* 自定義一些數(shù)據(jù)類型供庫文件使用
* 
* /
  */
  #define __I    volatile
  #define __O    volatile
  #define __IO   volatile

#define ON  1
#define OFF 0

typedef signed char          int8_t;
typedef signed short   int   int16_t;
typedef signed         int   int32_t;
typedef unsigned       char  uint8_t;
typedef unsigned short int   uint16_t;
typedef unsigned       int   uint32_t;
typedef unsigned long long   uint64_t;
typedef signed   char        s8;
typedef signed   short int   s16;
typedef signed   int         s32;
typedef signed   long long int s64;
typedef unsigned char        u8;
typedef unsigned short int   u16;
typedef unsigned int         u32;
typedef unsigned long long int u64;

#endif /* __CC_H */
  1. start.S:
/***************************************************************
Copyright ? lugl.
文件名 : start.s
作者 : 劉建華
版本 : V1.0
描述 : I.MX6U-ALPHA/I.MX6ULL 開發(fā)板啟動文件,完成 C 環(huán)境初始化,
C 環(huán)境初始化完成以后跳轉(zhuǎn)到 C 代碼。
其他 : 此程序?qū)W習左中凱老師課程
日志 : 初版 2023/5/3 劉建華修改
**************************************************************/
.global _start       @全局標號

/*

* 描述:_start函數(shù),程序從此函靈敏開始執(zhí)行,
* ```
  此函數(shù)主要功能是設置C運行環(huán)境

*/

_start:

/*  進入SVC模式 */
mrs r0, cpsr
bic r0, r0, #0x1f    @ 將r0的低5位清零,也就是cpsr的M0-M4
orr r0, r0, #0x13    @ r0或上0x13,表示使用SVC模式
msr cpsr, r0         @ 將r0 的數(shù)據(jù)寫入到cpsr_c中

ldr sp, =0x80200000  @ 設置棧指針
b main               @ 跳轉(zhuǎn)到main函數(shù)(再也不用回來了)
  1. main.c
/***************************************************************
Copyright ? lugl.
文件名 : main.c
作者 : 劉建華
版本 : V1.0
描述 : 使用C語言來點亮開發(fā)板的LED燈,基于官方的SDK來開發(fā)。
學習掌握如何用c語言來完成對I.MX6U的GPIO初始化和控制
其他 : 此程序?qū)W習左中凱老師課程
需要使用到的文件有fsl.common.h、fsl_iomuxc.h、MCIMX6Y2.h
日志 : 初版 2023/5/3劉建華修改
**************************************************************/

#include "fsl_common.h"
#include "fsl_iomuxc.h"
#include "MCIMX6Y2.h"

/***

* @description :使能I.MX6ULL所有外設時鐘
* @param       :無
* @return      :無
* 

***/
void clk_enable(void)
{
CCM->CCGR0 = 0xFFFFFFFF;
CCM->CCGR1 = 0xFFFFFFFF;
CCM->CCGR2 = 0xFFFFFFFF;
CCM->CCGR3 = 0xFFFFFFFF;
CCM->CCGR4 = 0xFFFFFFFF;
CCM->CCGR5 = 0xFFFFFFFF;
CCM->CCGR6 = 0xFFFFFFFF;
}

/***

* @description :初始化LED對應的GPIO
* @param       :無
* @return      :無
* 

*/
void led_init(void)
{
/* 初始化IO 復用 */
IOMUXC_SetPinMux(IOMUXC_GPIO1_IO03_GPIO1_IO03,0);
/* 配置 IO的屬性 */
IOMUXC_SetPinConfig(IOMUXC_GPIO1_IO03_GPIO1_IO03, 0x10b0);
/* 初始化GPIO 設置GPIO1_IO03  為輸出*/
GPIO1->GDIR |= (1<<3);
/* 設置GPIO1——IO03為低電平,打開LED0 */
GPIO1->DR &= ~(1<<3);
}

/************************************************************

* @descriptions: 打開LED燈
* @param       : 無
* @return      : 無
  *************************************************************/
void led_on(void)
{
/*
  * 將GPIO1_DR 的bit3清零,打開led0燈
    */
    GPIO1->DR &= ~(1<<3);
    }

/************************************************************

* @descriptions: 關閉LED燈
* @param       : 無
* @return      : 無
  *************************************************************/
void led_off(void)
{
/*
  * 將GPIO1_DR 的bit3置1,關閉led0燈
    */
    GPIO1->DR |= (1<<3);
    }

/************************************************************

* @descriptions: 短時間延時函數(shù)
* @param -n    : 要延時循環(huán)次數(shù),模式延時
* @return      : 無
  *************************************************************/
  void delay_short(volatile unsigned int n)
  {
  while (n--)
  {
  ;
  }
  }

/************************************************************

* @descriptions: 延時函數(shù),在396MHz的主頻下延時時間大約為1ms
* @param -n    : 要延時的ms數(shù)
* @return      : 無
  *************************************************************/
  void delay(volatile unsigned int n)
  {
  while (n--)
  {
  delay_short(0x7ff);
  }

}

/************************************************************

* @descriptions: main函數(shù)
* @param       : 無
* @return      : 無
  *************************************************************/
  int main(void)
  {
  clk_enable();  //使能所有時鐘
  led_init();    //初始化LED
  
  while (1)
  {
  led_on();   //打開LED
  delay(500); //延時
  led_off();  //關閉LED
  delay(500);
  }
  return 0;
  }
  1. lds、makefile 拷貝前面的就OK,
  2. 把文件放到虛擬機上,運行make,就得到ledc.bin文件,燒寫到SD卡

06725e846809d30cc9c26c158f351d857296e903dcf5017b1021362457fe6ad2.png

5dd6650983ad8c4b13699cee3c783f91f12640f33acf307b87f1dfc80e9ac81b.png

經(jīng)驗

教程上說,三個SDK文件需要做相應的修改,我們在編譯時,根據(jù)錯誤提示修改就行了。這次的實驗主要體驗SDK在裸機開發(fā)方面所提供的方便。特別是宏定義來一給一些固定的參數(shù)

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

    關注

    242

    文章

    23375

    瀏覽量

    663384
  • NXP
    NXP
    +關注

    關注

    60

    文章

    1290

    瀏覽量

    185549
  • 開發(fā)板
    +關注

    關注

    25

    文章

    5124

    瀏覽量

    98276
  • SDK
    SDK
    +關注

    關注

    3

    文章

    1045

    瀏覽量

    46297
  • i.MX6
    +關注

    關注

    1

    文章

    37

    瀏覽量

    16359
收藏 人收藏

    評論

    相關推薦

    i.MX6ULL 驅(qū)動開發(fā)7—按鍵輸入捕獲與GPIO輸入配置與高低電平讀取

    本篇主要介紹了i.MX6ULL的按鍵檢測的使用,主要的知識點是設備樹的修改,以及GPIO的輸入配置與高低電平的讀取。
    的頭像 發(fā)表于 05-24 09:11 ?6346次閱讀
    <b class='flag-5'>i.MX6ULL</b> <b class='flag-5'>驅(qū)動</b>開發(fā)7—按鍵輸入捕獲與GPIO輸入配置與高低電平讀取

    使用i.MX6ULL開發(fā)板進行Linux根文件系統(tǒng)的完善

    上一篇推文講了怎么移植根文件系統(tǒng),并在i.MX6ULL開發(fā)板中運行起來,但是會出現(xiàn)一些提示,現(xiàn)在來進行根文件的完善。
    發(fā)表于 10-17 11:13 ?834次閱讀

    移植NXP官方linux 5.4內(nèi)核到i.MX6ULL開發(fā)板

    本文描述移植NXP官方 linux 5.4 內(nèi)核到i.MX6ULL開發(fā)板。
    發(fā)表于 12-19 11:10 ?2123次閱讀

    迅為I.MX6ULL終結(jié)者開發(fā)板支持JTAG調(diào)試

    i.MX6ULL SDK開發(fā)包NXP官方提供了i.MX6ULLSDK開發(fā)包, 這個SDK包提供
    發(fā)表于 05-06 14:09

    i.MX6ULL開發(fā)板硬件資源

    迅為i.MX6ULL 終結(jié)者開發(fā)板硬件資源非常豐富,幾乎將 i.MX6ULL 芯片的所有資源都擴展引出到底板上了,底板提供了豐富的外設接口,開發(fā)板的尺寸是 190mm*125mm,充分考慮了人性化設計,整體顯得十分大。
    發(fā)表于 12-29 06:18

    初識 i.MX6ULL 寄存器

    裸機開發(fā)_L1_匯編LED實驗0. 本節(jié)目標1. 硬件層電路2. 初識 i.MX6ULL 寄存器2.1 i.MX6ULL 時鐘控制寄存器2.2 i.MX6ULL IO復用寄存器2.3
    發(fā)表于 12-20 07:13

    關于i.MX6ULL配置GPIO

    正如學習C語言時寫的第一段代碼都是“HelloWorld!”,接觸一款新的處理器時往往是從點亮一個LED開始;而點亮一個LED,則需要操作這款芯片的GPIO外設。那么作為廣受歡迎的i.MX6ULL
    發(fā)表于 08-05 10:37

    I.MX6ULL UART傳輸問題求解

    I.MX6ULL UART傳輸問題
    發(fā)表于 04-21 08:09

    飛凌i.MX6ULL開發(fā)板的評測,再次進階擁有更高的性價比

    處理器MCIMX6Y2開發(fā)設計,采用先進的ARMCortex-A7內(nèi)核,運行速度高達800MHz。i.MX6ULL應用處理器包括一個集成的電源管理模塊,降低了外接電源的復雜性,并簡化了上電時序。 i.MX6ULL
    發(fā)表于 10-27 11:55 ?1511次閱讀
    飛凌<b class='flag-5'>i.MX6ULL</b>開發(fā)板的評測,再次進階擁有更高的性價比

    基于NXP i.MX6ULL處理器的FETMX6ULL-C核心板

    “性價比高,功能接口豐富,資料齊全,穩(wěn)定性強”這是許多用戶對飛凌FETMX6ULL-S核心板的評價。作為NXP公司一顆經(jīng)典的MPU,i.MX6ULL的市場認可度無需多言。而作為NXP公司的金牌
    發(fā)表于 04-11 15:05 ?1174次閱讀
    基于NXP <b class='flag-5'>i.MX6ULL</b>處理器的FETMX<b class='flag-5'>6ULL</b>-C核心板

    i.MX6ULL驅(qū)動開發(fā)4——點亮LED(寄存器版)

    本篇主要介紹了如何通過操作寄存器來點亮i.MX6ULL開發(fā)板上的led,通過編寫LED對應的驅(qū)動程序和應用程序,實現(xiàn)程序設計的分層。
    的頭像 發(fā)表于 05-21 21:26 ?3035次閱讀
    【<b class='flag-5'>i.MX6ULL</b>】<b class='flag-5'>驅(qū)動</b>開發(fā)4——點亮<b class='flag-5'>LED</b>(寄存器版)

    基于i.MX6ULL點亮LED

    都說入門一款芯片的第一步是點亮LED,但是i.MX6ULL入門門檻比較高,特別是通過自學入門的,這個系列已經(jīng)寫了好久了,最近打算在項目不急的時候加快一下學習進度,現(xiàn)在就開始學習一下怎么點亮一個LED
    的頭像 發(fā)表于 03-06 09:09 ?897次閱讀

    【北京迅為】i.MX6ULL開發(fā)板移植 Debian 文件系統(tǒng)

    【北京迅為】i.MX6ULL開發(fā)板移植 Debian 文件系統(tǒng)
    的頭像 發(fā)表于 02-10 15:34 ?1239次閱讀
    【北京迅為】<b class='flag-5'>i.MX6ULL</b>開發(fā)板移植 Debian 文件系統(tǒng)

    基于i.MX6ULL的掉電檢測設計與軟件測試

    基于i.MX6ULL的掉電檢測設計與軟件測試基于i.MX6ULL平臺設計實現(xiàn)掉電檢測功能,首先選擇一路IO,利用IO電平變化觸發(fā)中斷,在編寫驅(qū)動時捕獲該路GPIO的中斷,然后在中斷響應函數(shù)中發(fā)
    的頭像 發(fā)表于 11-09 10:40 ?927次閱讀
    基于<b class='flag-5'>i.MX6ULL</b>的掉電檢測設計與軟件測試

    【迅為電子】i.MX6UL和i.MX6ULL芯片區(qū)別與開發(fā)板對比

    【迅為電子】i.MX6UL和i.MX6ULL芯片區(qū)別與開發(fā)板對比
    的頭像 發(fā)表于 11-28 14:31 ?593次閱讀
    【迅為電子】<b class='flag-5'>i.MX6</b>UL和<b class='flag-5'>i.MX6ULL</b>芯片區(qū)別與開發(fā)板對比