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

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

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

3天內不再提示

匯編驅動IMX6ULL LED燈

華仔的編程隨筆 ? 來源:華仔的編程隨筆 ? 作者:華仔的編程隨筆 ? 2023-05-01 09:19 ? 次閱讀

今天開始學習編寫正點原子阿爾法開發板的LED匯編

1、打開vscode新建led.s

代碼如下:

/**************************************************************
Copyright ? lugl.
文件名 : led.s
作者 : 劉建華
版本 : V1.0
描述 : 裸機實驗 1 匯編點燈
 使用匯編來點亮開發板上的 LED 燈,學習和掌握如何用匯編語言來
 完成對 I.MX6U 處理器的 GPIO 初始化和控制。
其他 : 無
日志 : 初版 V1.0 2023.5.1 學習左中凱老師例程
**************************************************************/
.global _start  /* 全局標號 */

/* 
*描述: _start函數,程序從此函數開始,執行此函數完成時鐘使能、
*      GPIO初始化、最終控制GPIO輸出低電平來點亮LED燈
*/
_start:
ldr r0, = 0x020c4068   @寄存器CCGR0
ldr r1, = 0xFFFFFFFF  
str r1, [r0]           @寫入CCGR0寄存器

ldr r0, =0x020C406C    @寄存器CCGR1
str r1, [r0]

ldr r0, =0x020C4070   @寄存器CCGR2
str r1, [r0]

ldr r0, =0x020C4074   @寄存器CCGR3
str r1, [r0]

ldr r0, =0x020C4078   @寄存器CCGR4
str r1, [r0]

ldr r0, =0x020C407C  @寄存器CCGR5
str r1, [r0]

ldr r0, =0x020C4080  @寄存器CCGR6
str r1, [r0]

/*  初始化時鐘結束 */

/* 開始設置GPIO1_IO03的IO屬性
*bit 16:  0 HYS關閉
*bit [15:14]: 00 默認下拉
*bit [13]: 0 kepper 功能
*bit [12]: 1 pull/kepper 使能
*bit [11]: 0 關閉開路輸出
*bit [7:6]: 10 速度100 MHz
*bit [5:3]: 110 R0/6驅動能力
*bit [0]  : 0 低轉換率
0b0 0001 0000 1011 0000
0x00 00 10 B0
*/

ldr r0, = 0x020e02f4  @ 寄存器SW_PAD_GPIO1_IO03_BASE
ldr r1, = 0x000010b0  @ 配置寄存器值
str r1, [r0]          @ 寫入GPIO的配置值

/* 設置 GPIO1——IO03 為輸出*/
ldr r0, = 0x0209c004  @ 寄存器GPIO1——GDIR
ldr r1, = 0x00000008 
str r1, [r0]

/* 打開LED0 */
ldr r0, = 0x0209c000 @ 寄存器GPIO1_DR
ldr r1, = 0
str r1, [r0]

loop:
    b loop

2、保存后,再編寫makfile

led.bin:led.s
	arm-linux-gnueabihf-gcc -g -c led.s -o led.o
	arm-linux-gnueabihf-ld -Ttext 0X87800000 led.o -o led.elf
	arm-linux-gnueabihf-objcopy -O binary -S -g led.elf led.bin
	arm-linux-gnueabihf-objdump -D led.elf > led.dis
clean:
	rm -rf *.o led.bin led.elf led.dis

3、然后把這兩個文件拷貝到虛擬機新建好的linux-tool下面

image.png

4、拷入一個正點原子專用的燒寫工具imxdownload,并且修改他的執行權限:chmod 777 imxdownload

5、插入一個SD,我這里用的是《雷龍發展提供的CS創世SD NAND》

e933aa242325438b4029f849b7eeac9.jpg

fc6c9845ca7898f75ed16246d54c95c.jpg

用ls /dev/sd*查看是否加載好:

image.png

因為我用的Nflash卡,所以不象教程里面說的SDD卡,我這里是sdb。

327ac5c95e2512627b64fc8394bce30.jpg

6、執行燒寫

lugl@lugl-virtual-machine:~/linux/tool$ ./imxdownload led.bin /dev/sdb
I.MX6ULL bin download software
Edit by:zuozhongkai
Date:2019/6/10
Version:V1.1
log:V1.0 initial version,just support 512MB DDR3
    V1.1 and support 256MB DDR3
file led.bin size = 144Bytes
Board DDR SIZE: 512MB
Delete Old load.imx
Create New load.imx
Download load.imx to /dev/sdb  ......
記錄了6+1 的讀入
記錄了6+1 的寫出
3216字節(3.2 kB,3.1 KiB)已復制,0.0111069 s,290 kB/s

顯示燒寫成功。

7、把卡插到開發板上,上電,稍等一會,就看到開發板的DS0燈亮了。

97de0d9cf206803300e53a446b4af2b.jpg

審核編輯 黃宇

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

    關注

    242

    文章

    23712

    瀏覽量

    671005
  • 開發板
    +關注

    關注

    25

    文章

    5531

    瀏覽量

    102369
  • 匯編
    +關注

    關注

    2

    文章

    214

    瀏覽量

    26420
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    iMX6ULL上設置MAC地址,啟動后無法獲得相同的mac id?

    我正在開發基于 imx6ull 的定制板。在 U Boot with Fuse Prog Command 中,我編寫了 mac id,但是在啟動后我無法獲得相同的 mac id。還需要任何其他程序
    發表于 04-10 06:02

    如何在i.MX6ULL睡眠時停止刷新LCD?

    為了更好的 EMC,我們需要在 i.MX6ULL 進入睡眠狀態時停止 LCD 刷新。 能否實現 ? 平臺: i.MX6ULL 系統: Linux
    發表于 04-03 07:14

    如何維護i.MX6ULL的安全內核?

    為 5.15.158。 因此,我們想知道:是否有可能基于這個 BSP 平臺實現安全的 i.MX 6ULL 系統?您會推薦上游的 linux-fslc 還是 linux-imx (BSP) 內核樹?顯然,linux-fslc 和上游內核在安全性方面具有優勢,但缺少什么呢?
    發表于 04-01 08:28

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-開發板適配之LED

    imx6ull_elf1_defconfig然后在源碼根目錄下使用make menuconfig命令,搜索LEDS_GPIO,看到LEDS_GPIO [=y]說明此驅動已經編譯進內核:elf@ubuntu:~/work
    發表于 01-24 09:40

    飛凌嵌入式ElfBoard ELF 1板卡-開發板適配之LED

    imx6ull_elf1_defconfig然后在源碼根目錄下使用make menuconfig命令,搜索LEDS_GPIO,看到LEDS_GPIO [=y]說明此驅動已經編譯進內核:elf@ubuntu:~/work
    發表于 01-23 10:49

    imx6ull 和 lan8742 工作起來不正常, ping 老是丟包

    采用 imx6ull 默認的設備樹, 和 lan8742通信, MAC的配置如下: pinctrl_enet2: enet2grp { fsl,pins = <
    發表于 01-09 14:51

    【迅為電子】i.MX6UL和i.MX6ULL芯片區別與開發板對比

    【迅為電子】i.MX6UL和i.MX6ULL芯片區別與開發板對比
    的頭像 發表于 11-28 14:31 ?1221次閱讀
    【迅為電子】i.MX<b class='flag-5'>6</b>UL和i.MX<b class='flag-5'>6ULL</b>芯片區別與開發板對比

    imx6ull裸機編程,使用宏定義無法驅動,使用指針就可以驅動

    當我使用宏定義來訪問imx6ull的寄存器,控制GPIO5_IO3輸出高低電平控制LED時,程序燒錄進去后沒有反應。但是當我使用指針來訪問寄存器,LED可以正常驅動,請問這是什么原因?
    發表于 11-04 17:59

    索尼_imx678_19DV500驅動源碼

    hi3519dv500_IMX678驅動源碼
    發表于 11-01 10:36 ?5次下載

    使用TPS6521815 PMIC為NXP i.MX 6ULL6UltraLite供電

    電子發燒友網站提供《使用TPS6521815 PMIC為NXP i.MX 6ULL6UltraLite供電.pdf》資料免費下載
    發表于 09-13 09:44 ?1次下載
    使用TPS6521815 PMIC為NXP i.MX <b class='flag-5'>6ULL</b>、<b class='flag-5'>6</b>UltraLite供電

    低壓線性恒流LED恒流驅動芯片:用于洗墻和線條

    洗墻和線條是兩種常見的LED照明產品,它們都需要使用LED恒流驅動芯片來確保穩定、可靠的電流供應,從而保證
    的頭像 發表于 08-16 10:04 ?1667次閱讀

    達林頓管驅動繼電器電路為什么要加LED

    在達林頓管驅動繼電器電路中,加入LED是一種常見的設計方法。LED的加入可以帶來許多好處,包括提高電路的穩定性、減少功耗、提高安全性等。
    的頭像 發表于 07-15 09:59 ?1996次閱讀

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-在NXP源碼基礎上適配ELF 1開發板的按鍵功能

    imx6ull_elf1_defconfigelf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ make menuconfig找到以下位置,Keyboards驅動默認已經編譯進內核
    發表于 07-04 09:11

    飛凌嵌入式ElfBoard ELF 1板卡-在NXP源碼基礎上適配ELF 1開發板的按鍵功能

    imx6ull_elf1_defconfigelf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ make menuconfig找到以下位置,Keyboards驅動默認已經編譯進內核
    發表于 07-03 09:07

    AC-DC LED日光球泡驅動芯片NU311

    時,NU311輸出引腳電壓被夾在 約15V。 NU311提高了性能并降低了成本 LED驅動程序。這是一個6針的軟體26包。 應用場景: ?E26/27,T5/T8LED
    發表于 06-19 16:23
    主站蜘蛛池模板: 欧美猛妇色xxxxxbbbb | 亚洲黄网在线 | 中日韩黄色大片 | 国产精品久久久久久一级毛片 | 特级毛片视频在线 | 在线免费观看色片 | 色噜噜狠狠色综合中文字幕 | 又色又爽又黄视频 | 色婷婷激婷婷深爱五月小说 | 好爽好深太大了再快一点 | 精品女同| 在线观看中文字幕第一页 | 国产综合视频在线观看 | 日韩精品视频免费在线观看 | 日本xxxxxxx69xx| 碰免费人人人视频 | 毛片在线播放网址 | 亚洲一区二区视频在线观看 | 成 年 人 视频在线播放 | 屁股趴过来欠打高h | 天天操伊人 | 美女很黄很黄是免费的·无遮挡网站 | 国产精品福利一区 | 日本一区二区精品88 | 亚洲va中文字幕 | 日韩高清毛片 | 亚洲黄色高清视频 | 年轻的护士3在线观看 | 久久国产精品免费看 | 欧美黑人巨大日本人又爽又色 | 日韩大尺度视频 | 欧美性猛交ⅹxxx乱大交免费 | 不卡一级毛片免费高清 | 天天干天天拍天天射天天添天天爱 | 丁香狠狠色婷婷久久综合 | 国产精品理论片在线观看 | 天堂视频在线免费观看 | 日日噜噜噜噜人人爽亚洲精品 | 韩国电影天堂 | 亚洲综合五月天欧美 | 在线播放国产不卡免费视频 |