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

實驗分享丨迅為IMX6ULL開發(fā)板點亮第一個led燈

發(fā)布時間:2021-9-6 12:06    發(fā)布者:落風
本章內容對應IMX6ULL開發(fā)板視頻講解鏈接(在線觀看):

我們學 linux 、單片機的第一個操作硬件就是點亮第一個 led 燈。
在單片機上我們點亮一個 led 燈非常的簡單,直接操作引腳就可以了。雖然 linux 聽著比較高大上,但是點亮一個 led 燈是非常容易的。我們甚至不用去寫驅動,直接命令操作就可以了,因為 linux 系統(tǒng)本身有好多成熟的驅動框架,使用這些框架的好處就是當我們更換平臺的時候,比如換到 RK3399 平臺,我們應用程序可以不用做任何改變,就可以直接在新的平臺上運行。但是如果你在單片機上寫一個點燈程序,比如說我在 32 上寫了一個點燈我現(xiàn)在想把它移植到 51 上那這個移植過程是比較麻煩的,如果說用寄存器寫的就要改寄存器,如果說用庫函數(shù)寫的移植到 51 上也要寫對應的庫函數(shù),這就比較麻煩了,但是在 linux 上直接使用命令就可以了。對于 led 設備,linux 提供的是 led 子系統(tǒng)框架。
31.1 前置知識
1. 怎么控制 led 燈的亮滅?
以 IMX6ULL 終結者開發(fā)板為例,原理圖如下圖所示,我們給管腳 GPIO_3 低電平,電路導通,led2 亮,給 GPIO_3 高電平,電路不導通,led2 滅。R80 為限流電阻,保護 led 燈不被燒毀。


2. echo > 重定向命令
舉例:
echo hello > test.txt
將字符串輸出重定向,當前目錄沒有 test.txt,則創(chuàng)建 text.txt ,并將字符串輸出到 test.txt 文件中。和直接使用 vi 編輯器打開 test.txt 然后輸入 hello 的效果是一樣的。如下圖所示。


31.2 led 子系統(tǒng)的使用
我們在超級終端上使用命令 “cd /sys/class/leds/”即可進到被 led 子系統(tǒng)所展現(xiàn)的設備下。在這個目錄下面都是以 led 設備命令的設備。其中 sys-led 就是我們要操作的用戶燈,對應底板的 led2。如下圖所示。

然 后 我 們 進 到 sys-led 這 個 具 體 的 設 備 下 面 。 如 圖 31.2.2 所 示 , 在 這 個 圖 中 , 我 們 需 要關心”brightness”, ”trigger”這幾個參數(shù),分別對應亮度,觸發(fā)方式。

開發(fā)板上的 led2 默認的觸發(fā)方式是 heartbeat,我們可以使用 cat 命令來查看,用”[]”圈出來的則為當前的觸發(fā)方式。如下圖所示。

我們使用命令 “echo none > trigger” 可以把觸發(fā)方式設置成沒有觸發(fā),led2 也就熄滅了。如下圖所示。

點亮 led2 我們只需要設置 brightness 參數(shù)就可以了,設置為 1,則打開 led2 ,設置為 0,則關閉 led2。
打開 led2:
echo 1 > /sys/class/leds/sys-led/brightness
關閉 led2:
echo 0 > /sys/class/leds/sys-led/brightness


使用 led 子系統(tǒng)我們可以很方便的控制 led 燈,不管是什么平臺,包括 3399 、4418/6818 、i.MX6ull都可以使用這個方法,這個方法是通用的。在單片機上是使用程序來控制的,我們在這里使用命令,其實我們也可以使用程序來控制,因為我們有的時候是在程序上點燈,而不是需要我們去手動輸入命令。

31.3 使用 c 語言調用 shell 命令控制 led 燈
用命令來控制 led 燈沒有感覺,那可以使用程序來控制,讓程序幫我們輸入這些命令,我們可以使用system 函數(shù)來完成。
頭文件:#include
格式:system(要執(zhí)行的命令)

代碼實現(xiàn):
#include
void main(void)
{
system(“echo none > /sys/class/leds/sys-led/trigger”);//設置觸發(fā)方式
while(1)
{
system(“echo 1 > /sys/class/leds/sys-led/brightness”);//點亮 led2
sleep(5);
system(“echo 0 > /sys/class/leds/sys-led/brightness”);//關閉 led2
sleep(5);
}
}
我們來寫一下這個程序,我們進到 samba 指定的這個路徑下,我們在這個路徑下創(chuàng)建 c 程序,名為 led.c,然后用 source insight 打開這個文件,因為這個程序非常簡單,我直接復制程序,我們在進入 while 循環(huán)之前先設置了下 led 觸發(fā)方式,把它設置成沒有觸發(fā),這個就有點類似于 32 單片機上對管腳的初始化,也就是我們先初始化一下管腳,我們再進行管腳的操作,然后我們進入到 while 循環(huán),我們不斷的給 led2 進行置 0 置 1 ,我們把這個延遲改小一點,改成 1 秒,然后保存,如下圖所示。


打開 ubuntu,進到 samba 指定的這個路徑下,我們就可以在 samba 這個路徑看到 .c 文件了,如下圖所示。


然后我們把 .c 文件從 samba 指定的目錄把它考到 ubuntu 的目錄下,然后我們進到這個目錄,如下圖所示。


我們直接使用交叉編譯器編譯下 led.c ,因為是在開發(fā)板上運行的,所以就不能使用 gcc 了。我們使用靜態(tài)編譯,這樣就得到了 led 這個可執(zhí)行的程序。如下圖所示。


把這個可執(zhí)行文件拷貝到開發(fā)板,我們可以使用 U 盤或者 TF 卡也可以使用 NFS ,這個依據(jù)自己的習慣來就可以了,我這里使用 nfs 。進到開發(fā)板的控制終端,然后給開發(fā)板連下網,我先配置下無線密碼,然后聯(lián)網,因為我這里要使用 nfs, 然后我們來掛載下這個目錄,然后我們把 led 這個可執(zhí)行文件拷貝到 nfs共享的目錄,這樣就可以在開發(fā)板上看到 led 這個可執(zhí)行文件了,我這里給他拷貝到開發(fā)板上,進到 opt 這個目錄下,如下圖所示。


ls 看一下,如下圖所示。

我們來運行下這個可執(zhí)行文件,如下圖所示。

可以看到開發(fā)板現(xiàn)在 led2 這個燈的狀態(tài),來執(zhí)行下這個可執(zhí)行文件,這個燈就是一閃一閃的了,如下圖所示。


使用 ctrl+c 打斷這個程序的運行,這個燈現(xiàn)在已經不亮了,如下圖所示。

然后我們在運行下,這樣我們就使用程序成功控制了一個燈并實現(xiàn)了一個閃燈的程序,其實這個程序里面的方法和我們直接使用命令的方法是一樣的,只不過我們是使用 c 語言來調用我們的 shell 命令來實現(xiàn),就不用再人為的輸入了。
在 led 設備的這個目錄下,還有一個叫 beep 的蜂鳴器設備,蜂鳴器我們也可以使用這個方法來打開和關閉蜂鳴器,這就作為一個作業(yè)大家自己來試下,方法和點亮一個 led 燈方法是一樣的,我們可以先用命令來試下,然后再用 system 調用 shell 命令用程序實現(xiàn)。


更多內容:嗶哩嗶哩搜索北京迅為即可看更多實戰(zhàn)內容。
本文地址:http://m.qingdxww.cn/thread-773803-1-1.html     【打印本頁】

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

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區(qū)
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人精品在线视频 | 麻豆精东 | 欧美日韩一级二级三级 | 日本国产欧美 | 二级片免费观看 | 99爱在线精品视频免费观看9 | 免费人成在线观看网站品爱网日本 | 日本va视频| 古典武侠二区 | 岛国片免费在线观看 | 日本中文字幕一区 | 成年免费大片黄在线观看一 | 天堂在线中文 | 大伊香蕉精品视频一区 | 色福利视频导航 | 欧美色v| 成人动漫久久 | 亚洲欧美综合乱码精品成人网 | 国产情侣一区二区 | 日本四虎影视 | 99在线热播 | 麻豆国产在线观看免费 | 侠盗高飞免费完整版国语在线播放 | 91在线播放免费不卡无毒 | 中文字幕中国女同互慰视频 | 色播五月激情五月 | 青青草伊人网 | 国产麻豆视频网站 | 久久久男人天堂 | 日本免费a视频 | 国产乱弄视频在线观看 | 久久激情五月丁香伊人 | 欧美成人免费看片一区 | 天天干天天操天天玩 | 日本成人精品 | 国产在线观看一区二区三区 | 六月综合激情 | 亚洲精品91 | 91成人在线播放 | 国产精品久久久久久久成人午夜 | 色综合天天综久久久噜噜噜久久〔 |