日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

LED裸機(jī)驅(qū)動(dòng)電路圖設(shè)計(jì)及編寫匯編代碼

454398 ? 來(lái)源:博客園 ? 作者:Suzkfly ? 2020-09-27 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 確定硬件連接

打開OK6410底板電路圖,找到LED,可以發(fā)現(xiàn)NLEDx為0時(shí)LED點(diǎn)亮。

找到LED的控制引腳,發(fā)現(xiàn)LED控制引腳通過連接器連到了核心板:

打開核心板電路圖,找到對(duì)應(yīng)的連接器中相同位置下的引腳,發(fā)現(xiàn)核心板上的命名與底板相同。

注意:設(shè)計(jì)者為了方便會(huì)將核心板與底板連接處的端口命名為相同的名字,但判斷兩者的連接位置與端口名其實(shí)是沒有關(guān)系的。從底板上可以看出4個(gè)LED所在的連接器引腳編號(hào)分別為47,49,46和39,因此在核心板上應(yīng)該找連接器上這幾個(gè)編號(hào)的引腳,核心板連接器上47,49,46和39號(hào)引腳才是與底板LED相連的引腳,只不過設(shè)計(jì)者為了方便,將核心板上這幾個(gè)引腳也命名為NLED1~4。

繼續(xù)在核心板上尋找,能找到NLEDx控制的引腳為GPM0~3

2. 確定GPM相關(guān)寄存器的地址和要寫入的值

打開6410的芯片手冊(cè),找到GPM相關(guān)寄存器

可以發(fā)現(xiàn)有3個(gè)寄存器與GPM相關(guān),三個(gè)寄存器的地址分別為0x7F008820、0x7F008824、0x7F008828,其中GPMCON用于配置引腳功能

我們要控制LED需要把GPM0~3都配置成輸出模式,因此GPMCON的位[15:0]應(yīng)為0x1111。GPMDAT用于控制引腳輸出電平

如果要控制LED全亮,則GPMDAT位[3:0]應(yīng)為0x0,全滅則為0xF。GPMPUD用于使能引腳的上下拉,一般會(huì)將LED控制引腳配置為上拉模式(注意區(qū)分信號(hào)的輸入輸出和電流的流入流出,GPMCON配置輸出指的是信號(hào)從6410輸出到外部,當(dāng)輸出信號(hào)為0的時(shí)候電流會(huì)流入6410芯片)。因此GPMPUD的位[7:0]應(yīng)為0xAA。

3. 編寫匯編代碼

編寫led.s

 1 .section .text
 2 .global _start
 3 _start:
 4     LDR R0, =0x7F008820        @GPMCON,也可以認(rèn)為是GPM寄存器基地值
 5 
 6     LDR R1, [R0]            @取出GPMCON的值
 7     LDR R2, =0xFFFF
 8     BIC R1, R1, R2
 9     LDR R2, =0x1111
10     ORR R1, R1, R2
11     STR R1, [R0]            @配置GPM0~3為輸出模式
12 
13     LDR R1, [R0, #4]        @取出GPMDAT的值
14     ORR R1, R1, #0xF    
15     STR R1, [R0, #4]        @GPMDAT低4位置1,所有LED關(guān)閉
16 
17     LDR R1, [R0, #8]        @取出GPMPUD的值
18     BIC R1, R1, #0xFF
19     ORR R1, R1, #0xAA
20     STR R1, [R0, #8]        @GPM0~3使能上拉
21 loop:
22     LDR R1, [R0, #4]
23     BIC R1, R1, #0xF
24     ORR R1, R1, #0xE
25     STR R1, [R0, #4]        @點(diǎn)亮第一個(gè)LED
26     BL delay
27     
28     LDR R1, [R0, #4]
29     BIC R1, R1, #0xF
30     ORR R1, R1, #0xD
31     STR R1, [R0, #4]        @點(diǎn)亮第二個(gè)LED
32     BL delay
33 
34     LDR R1, [R0, #4]
35     BIC R1, R1, #0xF
36     ORR R1, R1, #0xB
37     STR R1, [R0, #4]        @點(diǎn)亮第三個(gè)LED
38     BL delay
39 
40     LDR R1, [R0, #4]
41     BIC R1, R1, #0xF
42     ORR R1, R1, #0x7
43     STR R1, [R0, #4]        @點(diǎn)亮第四個(gè)LED
44     BL delay
45     B loop
46 delay:
47     LDR R2, =0x1000000
48 delay_loop:
49     SUB R2, R2, #1
50     CMP R2, #0
51     BNE delay_loop
52     MOV PC, LR
53 
54     .end

輸入命令:

arm-none-linux-gnueabi-gcc -c led.s -o led.o

arm-none-linux-gnueabi-ld -Ttext 0 led.o -o led.elf

arm-none-linux-gnueabi-objcopy -O binary led.elf led.bin

此時(shí)生成了可執(zhí)行文件led.bin

4. 下載文件

連接minicom,重啟后進(jìn)入U(xiǎn)-boot,輸入dnw 50008000

在虛擬機(jī)中輸入:sudo dnw led.bin

下載成功后在開發(fā)板中輸入:go 50008000

此時(shí)可以看到4個(gè)LED呈流水燈效果。

注意:我是利用U-boot下載程序,此時(shí)U-boot已經(jīng)運(yùn)行起來(lái)了,而U-boot已經(jīng)做了很多初始化工作了,如設(shè)置堆棧指針、關(guān)閉看門狗、指定外設(shè)基地址等,如果想要將程序燒寫進(jìn)Nandflash的0地址,則這些初始化工作必須自己做。

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

    關(guān)注

    244

    文章

    24740

    瀏覽量

    692906
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5622

    瀏覽量

    130512
  • 連接器
    +關(guān)注

    關(guān)注

    106

    文章

    16443

    瀏覽量

    148021
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    剛?cè)胄锌床欢?b class='flag-5'>電路圖怎么辦?

    剛?cè)胄锌床欢?b class='flag-5'>電路圖怎么辦?很多電子新手剛?cè)胄袝r(shí),面對(duì)密密麻麻的電路圖總會(huì)犯怵:“這么多元件和線路,到底從哪看起?”別慌!今天就帶大家拆解電路圖的核心邏輯,只要掌握這5大模塊,看懂電路圖
    的頭像 發(fā)表于 04-02 09:01 ?393次閱讀
    剛?cè)胄锌床欢?b class='flag-5'>電路圖</b>怎么辦?

    如何使用 VisionFive 的按鈕控制 LED

    這包括如何使用 VisionFive 的按鈕控制 LED。讀取 VisionFive GPIO 上的輸入。 這包括 Python 代碼。 電路圖、python 文件、github 鏈接和視頻的所有詳細(xì)信息都上傳在此鏈接上。
    發(fā)表于 03-26 07:40

    匯編給CH32寫了一個(gè)本機(jī)代碼FORTH實(shí)現(xiàn)

    匯編器,可以在線編寫匯編代碼用于編寫ISR或需要性能的場(chǎng)景(目前沒實(shí)現(xiàn)所有RV32EC指令,后面會(huì)實(shí)現(xiàn)完整RV32EC指令集) 專門優(yōu)化了
    發(fā)表于 03-19 10:47

    海信LED42T29GP電路圖資料

    海信LED42T29GP電路圖2
    發(fā)表于 03-12 14:52 ?1次下載

    海信LED42T29GP電路圖資料

    海信LED42T29GP電路圖1
    發(fā)表于 03-12 14:44 ?1次下載

    編寫簡(jiǎn)單高效單片機(jī)匯編程序

    的行數(shù)多并不一定意味著效率低。 關(guān)鍵在于寫代碼時(shí)避免冗余,靈活運(yùn)用模塊化設(shè)計(jì)和單片機(jī)資源。 最終程序既要高效運(yùn)轉(zhuǎn),又不失結(jié)構(gòu)清晰。 匯編語(yǔ)言的難點(diǎn)在于編寫簡(jiǎn)短而高效的代碼,需要理
    發(fā)表于 11-24 07:00

    LED驅(qū)動(dòng)電路失效分析及解決方案

    近年來(lái),隨著LED照明市場(chǎng)的快速擴(kuò)張,越來(lái)越多的企業(yè)加入LED研發(fā)制造行列。然而行業(yè)繁榮的背后,卻隱藏著一個(gè)令人擔(dān)憂的現(xiàn)象:由于從業(yè)企業(yè)技術(shù)實(shí)力參差不齊,LED驅(qū)動(dòng)
    的頭像 發(fā)表于 09-16 16:14 ?1364次閱讀
    <b class='flag-5'>LED</b><b class='flag-5'>驅(qū)動(dòng)</b><b class='flag-5'>電路</b>失效分析及解決方案

    3842充電器電路圖資料

    3842充電器電路圖詳解
    發(fā)表于 09-12 16:50 ?15次下載

    ATX電源芯片F(xiàn)SP3528電路圖資料

    ATX電源芯片F(xiàn)SP3528電路圖
    發(fā)表于 09-03 16:31 ?4次下載

    長(zhǎng)虹H14K8電路圖資料

    長(zhǎng)虹H14K8電路圖
    發(fā)表于 08-19 16:51 ?0次下載

    電路圖:求馬蘭士功放DA -J7MKII電路圖?

    跪求馬蘭士功放DA -J7MKII電路圖
    發(fā)表于 08-13 13:00

    如何看懂電子電路圖

    電子發(fā)燒友網(wǎng)站提供《如何看懂電子電路圖.pptx》資料免費(fèi)下載
    發(fā)表于 07-29 16:34 ?354次下載

    LED驅(qū)動(dòng)電路設(shè)計(jì)

    內(nèi)容提要本書以LED光源及其驅(qū)動(dòng)技術(shù)為主線,全面系統(tǒng)地介紹了LED的特性、LED驅(qū)動(dòng)電路及其相關(guān)
    發(fā)表于 07-18 15:26

    250種IC功放的電路圖

    250種IC功放的電路圖,部分資料內(nèi)容截?。? 純分享貼,有需要可以直接下載附件獲取完整資料! (如果內(nèi)容有幫助可以關(guān)注、點(diǎn)贊、評(píng)論支持一下哦~)
    發(fā)表于 05-20 15:19

    門老師教你快速看懂電子電路圖

    本文從最基本的電容電阻開講,包含模電數(shù)電,以及部分電氣知識(shí)點(diǎn),深入淺出。 資料介紹: 全文共分7課,以老師授課和師生交流的形式系統(tǒng)地介紹了電子電路識(shí)圖方面的基本知識(shí)和技能,包括電路圖的基本概念和要素
    發(fā)表于 05-16 15:17
    农安县| 历史| 正安县| 银川市| 宝应县| 洪泽县| 保山市| 周口市| 碌曲县| 绥棱县| 邢台县| 姚安县| 日照市| 资中县| 永胜县| 盖州市| 合肥市| 泽库县| 杨浦区| 衡南县| 新宁县| 桐庐县| 农安县| 庄河市| 鹤岗市| 荥阳市| 玛纳斯县| 陇西县| 马关县| 治多县| 栾城县| 郸城县| 伊宁县| 报价| 板桥市| 嘉鱼县| 积石山| 满洲里市| 甘德县| 昌宁县| 革吉县|