色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

通過linux A7核心實現(xiàn)python驅(qū)動OLED屏幕進(jìn)行顯示

電子森林 ? 來源:FPGA入門到精通 ? 作者:FPGA入門到精通 ? 2020-10-30 16:57 ? 次閱讀

Funpack第一期 - 好大一只榮哥哥自我介紹

姓名:好大一只榮哥哥

公司或?qū)W校:待業(yè),換工作過程中(前任職單位;成都伊利乳業(yè)有限責(zé)任公司)

職務(wù)或?qū)I(yè)及年級:待業(yè)人員(前任職單位:人力資源專員)

硬件介紹(控制器及外設(shè),應(yīng)用方向及應(yīng)用場景) ODYSSEY – STM32MP157C

設(shè)計思路(用板子的哪些模塊實現(xiàn)了什么功能)

通過M4核心通過GPIO控制呼吸燈。

通過linux A7核心實現(xiàn)python驅(qū)動OLED屏幕進(jìn)行顯示。

指定功能演示:

一、準(zhǔn)備工作:軟件:MobaXterm:可串口,可SSH,可以上傳文件到系統(tǒng)板。 WinSCP:管理文件比MobaXterm更為方便快捷。 Etcher:寫入固件到SD卡使用。 硬①系統(tǒng)板 ②USBtoTTL轉(zhuǎn)接線、面包線若干(公對公,公對母、母對母都有準(zhǔn)備) ③Type-C電源線(使用手機(jī)的充電器供電) ④LED三色燈 ⑤128*64 OLED屏幕 ⑥當(dāng)然還有PC端

固件寫入SD卡,通過TTL轉(zhuǎn)接線連接(com端口要按wiki設(shè)置正確),通電從SD卡啟動,修改啟動dtb為full,重啟后根據(jù)官方wiki進(jìn)行WiFi設(shè)置。 更新系統(tǒng)

sudo apt update 安裝 vim git ssh wget curl gcc make python3 python3-pip等常用工具:

sudo apt install vim ssh git wget curl gcc make -ysudo apt install python3 python3-pip -y 安裝對應(yīng)的內(nèi)核頭文件,可以直接在板上編譯應(yīng)用程序、內(nèi)核模塊、設(shè)備樹,避免了前期搭建交叉編譯環(huán)境的麻煩。

sudo apt install linux-headers-$(uname -r) -y

-----------------基礎(chǔ)工作基本完成 ---------------- 二、第一個指定功能: 驅(qū)動LED燈亮,使其實現(xiàn)呼吸燈的效果;//使用STM32CubeTDE調(diào)試其M4核心實現(xiàn)。 首先,查看wiki文檔,PA3引腳可設(shè)置PWM輸出,則將LED插入PA3引腳,IDE中引腳相關(guān)設(shè)置: PA3引腳配置為M4核心使用,配置為TIM2_CH4;配置TIM2的Channel4為PWM Generation CH4,Prescaler修改為64-1,CounterMode修改為Up,CounterPeriod修改為1000-1,其余保持默認(rèn)設(shè)置。

詳見圖片設(shè)置:

然后在main.c中進(jìn)行代碼的修改及編寫: main函數(shù)如下:

int main(void){ /* USER CODE BEGIN 1 */ uint16_t dutyCycle = 0;//定義dutyCycle變量,初始值為0 /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ HAL_Init(); /* USER CODE BEGIN Init */ /* USER CODE END Init */ if(IS_ENGINEERING_BOOT_MODE()) { /* Configure the system clock */ SystemClock_Config(); } /* Initialize all configured peripherals */ MX_GPIO_Init(); MX_TIM2_Init(); /* USER CODE BEGIN 2 */ HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_4);//PWM引腳輸出模式 /* USER CODE END 2 */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { while (dutyCycle < 1000) { dutyCycle++; __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_4,dutyCycle);//變量小于1000時,逐漸拉高 HAL_Delay(1); } HAL_Delay(100); while (dutyCycle > 0) { dutyCycle--; __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_4,dutyCycle);//變量大于0時,逐漸拉低 HAL_Delay(1); } HAL_Delay(400); /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */} 修改完成之后進(jìn)行編譯,在CM4/debug/目錄下或者 CM4/Binaries/目錄下均會生成相應(yīng)的.elf文件。 轉(zhuǎn)到MobaXterm進(jìn)行固件的上傳及啟動操作。ssh端進(jìn)入到 /lib/firmware/ 目錄下

cd /lib/firmware/ 再執(zhí)行:復(fù)制elf文件到此目錄:

cp /home/debian/ronggege1_CM4.elf . 通過echo命令將固件進(jìn)行啟動準(zhǔn)備:

echo ronggege1_CM4.elf > /sys/class/remoteproc/remoteproc0/firmware 下面兩條命令可開始或停止運行

echo start > /sys/class/remoteproc/remoteproc0/stateecho stop > /sys/class/remoteproc/remoteproc0/state 查看運行狀態(tài):

cat /sys/class/remoteproc/remoteproc0/state 三、第二個指定功能: 成功驅(qū)動SPI、I2CUART三個外設(shè)中的其中一個:驅(qū)動I2C -128*64 OLED屏幕,使其顯示內(nèi)容。 首先完成128*64 oled屏幕硬件連接,使用1,3,5,9引腳一對一連接:

安裝i2c相關(guān)工具:

sudo apt-get install -y python-smbussudo apt-get install -y i2c-tools 在終端輸入命令查看連接狀態(tài):

i2cdetect -y 1 安裝Adafruit_Python_SSD1306庫:

sudo apt-get updatesudo apt-get install build-essential python-dev python-pipsudo pip install RPi.GPIOsudo apt-get install python-imaging python-smbussudo apt-get install gitgit clone https://gitee.com/xingguangk/Adafruit_Python_SSD1306cd Adafruit_Python_SSD1306sudo python setup.py install

安裝Luma.oled庫:

sudo apt-get install python-dev python-pip libfreetype6-dev libjpeg-devsudo -H pip install --upgrade pipsudo apt-get purge python-pipsudo -H pip3 install --upgrade luma.oled

//luma.oled庫安裝較慢,需要多次重試。

安裝好后我們新建一個oled.py文件,并粘貼以下內(nèi)容(演示中是在Windows環(huán)境下創(chuàng)建好之后直接上傳到debian用戶根目錄下)

from luma.core.interface.serial import i2c, spifrom luma.core.render import canvasfrom luma.oled.device import ssd1306, ssd1325, ssd1331, sh1106 # rev.1 users set port=0# substitute spi(device=0, port=0) below if using that interfaceserial = i2c(port=1, address=0x3C) # substitute ssd1331(...) or sh1106(...) below if using that devicedevice = ssd1306(serial) while 1: with canvas(device) as draw: draw.rectangle(device.bounding_box, outline="white", fill="black") draw.text((10, 30,), "Funpack ronggege", fill="white")

//第10行需要修改為所使用的屏幕的芯片型號,此處為ssd1306型號。

//第16行兩位數(shù)字為左上角開始的坐標(biāo)位置,可根據(jù)內(nèi)容進(jìn)行調(diào)整;雙引號中為需要顯示的英文字符串。 從git上的庫中包含很多示例文件,可顯示當(dāng)前時鐘,一些小游戲,圖形等等。 在所在的目錄下通過

python3 example.py 命令即可運行相應(yīng)的程序進(jìn)行內(nèi)容顯示。

心得體會 Funpack此次活動剛開始其實有點猶豫,因為對電路及程序開發(fā)很有興趣,但是因為之前單只接觸過Arduino,但還是在朋友的鼓(song)勵(yong)下加入了進(jìn)來。可能更多的還是這塊板子的設(shè)計、架構(gòu)等和樹莓派等很像,可以實現(xiàn)智能家居等的確很吸引我。 作為一名人力資源從業(yè)者,這次跨行跨業(yè)加入這次活動,的確需要很大的勇氣,從最開始的一臉懵,到現(xiàn)在也可以進(jìn)行一些命令行操作,對linux和STM32開發(fā)也有了一個基礎(chǔ)的了解和認(rèn)知,雖然還是有一些程序的原理其實不是特別清楚,但是過程中遇到的很多問題可以從互聯(lián)網(wǎng)平臺尋找答案,眼前的濃霧在逐漸散開,也可以和朋友一起進(jìn)步,這種體驗真的很好! 最后,真的感謝硬禾的這次活動,能夠認(rèn)識到更多興趣相仿的朋友,也鍛煉自己的“跨界”的能力,希望后面可以逐漸搭建出相要的智能家居中心,但是這可能需要更多的時間,時間不停在前行,學(xué)習(xí)的腳步也不能停下來。

更多精彩視頻分享請移步至硬禾學(xué)堂BBS論壇(也歡迎大家在本論壇里展開交流):https://bbs.eetree.cn/forum.php?mod=forumdisplay&fid=53

往期精彩

1. Funpack第一期開始Fund Back了,成功的同學(xué)都奔走相告,分享喜悅吧!

2. Funpack第一期精彩之二:Argon帶你用mqtt連OneNET,漂移菌帶你跑Linux和驅(qū)屏幕

3. 看頂尖芯片公司工程師寫總結(jié)報告(Funpack第一期精彩之三)

責(zé)任編輯:xj

原文標(biāo)題:HR都能將興趣發(fā)揮極致,身為電子工程師的你還在猶豫什么(Funnpack第一期精彩之四)

文章出處:【微信公眾號:FPGA入門到精通】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    252

    文章

    775

    瀏覽量

    95678
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11336

    瀏覽量

    210097
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3374

    瀏覽量

    66374

原文標(biāo)題:HR都能將興趣發(fā)揮極致,身為電子工程師的你還在猶豫什么(Funnpack第一期精彩之四)

文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    蘋果計劃iPad全面采OLED屏幕

    2027年開始使用OLED技術(shù)。 相比LCD屏幕OLED具備自發(fā)光特性,每個像素點都能獨立控制發(fā)光,因此能夠提供更鮮艷、更精確的色彩顯示。 此外,由于
    的頭像 發(fā)表于 12-13 14:57 ?325次閱讀

    簡單認(rèn)識高通A7 Elite專業(yè)聯(lián)網(wǎng)平臺

    當(dāng)下,AI技術(shù)被廣泛應(yīng)用于各個領(lǐng)域,從智能手機(jī)、AI PC到智能家居、智能汽車等等,AI已經(jīng)融入到我們生活的方方面面。不久前,高通推出首個利用邊緣AI變革網(wǎng)絡(luò)連接的商用平臺——高通A7 Elite專業(yè)聯(lián)網(wǎng)平臺,通過賦能新型Wi-Fi聯(lián)網(wǎng)終端,助力人們開啟AI聯(lián)網(wǎng)新時代,讓
    的頭像 發(fā)表于 11-21 10:23 ?303次閱讀

    【RA-Eco-RA2E1-48PIN-V1.0開發(fā)板試用】(第二篇)串口打印+SPI_OLED顯示

    第一件事情 --實現(xiàn)回調(diào)函數(shù) 都完成后,就是寫OLED的初始化、字符顯示等功能了 最終hal_enty的代碼內(nèi)容就為下圖 其中oled_demo()
    發(fā)表于 11-09 01:30

    高通A7 Elite專業(yè)聯(lián)網(wǎng)平臺發(fā)布

    日前,高通技術(shù)公司宣布推出高通A7 Elite專業(yè)聯(lián)網(wǎng)平臺,這一開創(chuàng)性的無線聯(lián)網(wǎng)平臺通過邊緣AI的集成,變革人們體驗網(wǎng)絡(luò)的方式。基于具備40 TOPS NPU處理能力的AI協(xié)處理器,該平臺不僅提供更佳的Wi-Fi 7連接和網(wǎng)絡(luò)性
    的頭像 發(fā)表于 11-08 10:25 ?276次閱讀

    tft屏幕oled屏幕哪個更好一些

    屏,是一種主動矩陣式彩色液晶顯示技術(shù)。它利用薄膜晶體管來控制每個像素的亮度,通過改變電流來控制像素的開關(guān),從而實現(xiàn)圖像顯示。TFT屏幕需要背
    的頭像 發(fā)表于 10-21 16:48 ?2550次閱讀

    Linux設(shè)備驅(qū)動程序分類有哪些

    Linux設(shè)備驅(qū)動程序是操作系統(tǒng)與硬件設(shè)備之間的橋梁,負(fù)責(zé)實現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的通信和控制。Linux設(shè)備驅(qū)動程序的分類繁多,可以根據(jù)
    的頭像 發(fā)表于 08-30 15:11 ?649次閱讀

    【xG24 Matter開發(fā)套件試用體驗】物聯(lián)網(wǎng)密碼柜之驅(qū)動矩陣鍵盤和OLED顯示

    +circuitpython進(jìn)行開發(fā),矩陣鍵盤驅(qū)動為自行編寫,Oled驅(qū)動基于Adafruit SSD_1306庫。 到本階段為止已實現(xiàn)的功
    發(fā)表于 08-04 23:04

    請問STM32MP157的A7核可以裸跑Freertos嗎?

    請問MP157的A7核可以裸跑Freertos嗎
    發(fā)表于 05-24 07:23

    STM32MP157兩個A7核能跑兩個系統(tǒng)嗎?

    請問STM32MP157的兩個A7核,能像其它雙核CPU一樣運行AMP模式:一個核跑Linux、一個核跑RTOS(或禪機(jī))嗎?雖然有一個M4核可以跑RTOS,但計算能力有點弱,不能滿足需求。想再用一個A7核來跑實時計算任務(wù)。
    發(fā)表于 03-21 06:50

    告別LCD,新款iPhone SE將搭載OLED屏幕

    則是自發(fā)光屏幕通過發(fā)光材料層來完成顯示。和LCD相比,OLED有很多明顯的優(yōu)勢。 ? OLED屏幕
    的頭像 發(fā)表于 02-21 00:18 ?3188次閱讀

    盤點那些硬件+項目學(xué)習(xí)套件:STM32MP157 Linux開發(fā)板及入門常見問題解答

    Python。開發(fā)板配套教程用的版本是OpenCV 4.x,Python 3.x 10.MP1雙核是如何啟動的 mp1上電M4核心默認(rèn)不啟動,M4核心需要
    發(fā)表于 02-01 14:25

    如何使用linux下gdb來調(diào)試python程序

    如何使用linux下gdb來調(diào)試python程序? 在Linux下,可以使用GDB(GNU調(diào)試器)來調(diào)試Python程序。GDB是一個強(qiáng)大的調(diào)試工具,可以幫助開發(fā)者診斷和修復(fù)程序中的錯
    的頭像 發(fā)表于 01-31 10:41 ?2704次閱讀

    屏幕拼接顯示系統(tǒng):實現(xiàn)高效信息傳遞的策略

    顯示系統(tǒng)的核心策略,幫助讀者更好地理解和應(yīng)用這一技術(shù)。 一、明確信息傳遞目標(biāo) 在使用大屏幕拼接顯示系統(tǒng)之前,首先需要明確信息傳遞的目標(biāo)。是為了展示產(chǎn)品、宣傳品牌、還是
    的頭像 發(fā)表于 01-26 14:28 ?534次閱讀

    通過Python腳本實現(xiàn)WIFI密碼的自動猜解

    本文將記錄學(xué)習(xí)下如何通過 Python 腳本實現(xiàn) WIFI 密碼的自動猜解。
    的頭像 發(fā)表于 01-25 10:46 ?3586次閱讀
    <b class='flag-5'>通過</b><b class='flag-5'>Python</b>腳本<b class='flag-5'>實現(xiàn)</b>WIFI密碼的自動猜解

    什么是oled顯示oled屬于液晶屏幕

    顯示器中,每個像素都是一個發(fā)光二極管,可以獨立發(fā)光。這種技術(shù)提供了更高對比度、更快的響應(yīng)時間、更寬的視角和更低的能耗。 OLED顯示器與傳統(tǒng)液晶顯示器(LCD)有一些重要的區(qū)別。首先,
    的頭像 發(fā)表于 01-23 15:49 ?2644次閱讀
    主站蜘蛛池模板: 色哟哟tv| 蜜桃狠狠色伊人亚洲综合网站| 伊人热人久久中文字幕| 日本69xxxxx| 久久成人国产精品一区二区| 国产超嫩一线天在线播放| 18禁国产精品久久久久久麻豆| 午夜视频在线网站| 漂亮的av女演员| 在线观看qvod| 777久久人妻少妇嫩草AV| 天美麻豆成人AV精品| 嗯啊不要老师| 精品国产九九| 国产日韩在线欧美视频| 朝鲜美女bbwbbw撒尿| 俄罗斯bbbb| 999精品免费视频| 一本道高清不卡v免费费| 私人玩物在线观看| 青青草原国产在线| 男女作爱在线播放免费网页版观看 | 2021国产精品一卡2卡三卡4卡| 亚洲 欧美 国产在线视频| 色爱AV综合区| 人人在线碰碰视频免费| 欧美激情精品久久久久| 日本人娇小hd| 久久伊人免费| 精品国产精品人妻久久无码五月天| 囯产免费精品一品二区三区视频| 99久久蜜臀AV免费看蛮| 专干老肥熟女视频网站300部| 亚洲一区二区三区91| 亚洲精品成人无码区一在线观看 | 性夜a爽黄爽| 同居了嫂子在线观看| 日韩视频中文字幕精品偷拍| 漂亮的保姆3中文版完整版 | 野花高清在线观看免费3中文| 亚洲免费一|