91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

ElfBoard開(kāi)源項(xiàng)目|“智慧教室”開(kāi)源項(xiàng)目技術(shù)文檔

ElfBoard ? 2024-09-11 10:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

“智慧教室”項(xiàng)目的目標(biāo)是實(shí)現(xiàn)實(shí)時(shí)采集環(huán)境中的溫度、濕度及光照信息,并將這些數(shù)據(jù)可視化地呈現(xiàn)在Qt圖形界面上。用戶(hù)既可以選擇手動(dòng)控制風(fēng)扇與窗簾的開(kāi)關(guān),也可以設(shè)置系統(tǒng)根據(jù)所采集的環(huán)境參數(shù)自動(dòng)調(diào)節(jié),以達(dá)到舒適的室內(nèi)環(huán)境。接下來(lái),將和各位小伙伴深入探討這一項(xiàng)目的具體實(shí)現(xiàn)方式。

一、 功能特性

1、數(shù)據(jù)監(jiān)測(cè)與顯示:實(shí)時(shí)監(jiān)測(cè)室內(nèi)溫度、濕度和光照強(qiáng)度,并直觀(guān)地顯示在Qt界面上。

2、手動(dòng)/感應(yīng)控制:用戶(hù)可以通過(guò)切換界面按鈕選擇手動(dòng)控制風(fēng)扇和窗簾的狀態(tài),或者根據(jù)實(shí)時(shí)監(jiān)測(cè)到的環(huán)境數(shù)據(jù),自動(dòng)的調(diào)節(jié)風(fēng)扇和窗簾的狀態(tài),以提供最佳的舒適度和能源利用效率。

3、節(jié)能優(yōu)化:自動(dòng)調(diào)節(jié)功能可實(shí)時(shí)調(diào)整設(shè)備狀態(tài),以減少能源消耗并提高設(shè)備壽命。

二、 環(huán)境說(shuō)明

1、開(kāi)發(fā)環(huán)境操作系統(tǒng):Ubuntu18.04 64位版

2、交叉編譯工具鏈:arm-poky-linux-gnueabi-gcc 5.3.0

3、開(kāi)發(fā)板使用Bootloader版本:u-boot-2016.03

4、開(kāi)發(fā)板內(nèi)核版本:linux-4.1.15

5、開(kāi)發(fā)板移植QT版本:qt5.6.2

三、 硬件連接

1、風(fēng)扇與板卡的連接

wKgaombg_OCACyXdAAJECmwSncQ098.png

2、步進(jìn)電機(jī)與板卡的連接

wKgZombg_MqAMZdKAANO_8WH06Y162.png

四、 內(nèi)核適配

ELF 1開(kāi)發(fā)板已集成溫濕度傳感器與光線(xiàn)傳感器,實(shí)現(xiàn)環(huán)境溫度、濕度和光照強(qiáng)度的采集。為支持智慧教室系統(tǒng)的其它功能,需要對(duì)內(nèi)核源碼進(jìn)行以下適配步驟。

1、實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)動(dòng)的功能

風(fēng)扇采用pwm的方式來(lái)控制,需要在設(shè)備樹(shù)中進(jìn)行pwm7的復(fù)用。

(1)拷貝ELF1開(kāi)發(fā)板資料包\02-Linux 源代碼\02-0 出廠(chǎng)內(nèi)核和uboot源碼\內(nèi)核源碼\linux-4.1.15-elf1.tar.bz2內(nèi)核源碼到開(kāi)發(fā)環(huán)境/home/elf/work/目錄下解壓。

elf@ubuntu:~/work$ tar -xvf linux-4.1.15-elf1.tar.bz2

(2)修改頂層設(shè)備樹(shù)文件arch/arm/boot/dts/imx6ull.dtsi

elf@ubuntu:~/work$ cd linux-4.1.15-elf1/ elf@ubuntu:~/work/linux-4.1.15-elf1$ vi arch/arm/boot/dts/imx6ull.dtsi

wKgZombg_S2AQLlfAAXVGkRy0_s628.png

(3)修改設(shè)備樹(shù)文件arch/arm/boot/dts/imx6ull-elf1-emmc.dts

elf@ubuntu:~/work/linux-4.1.15-elf1$ vi arch/arm/boot/dts/imx6ull-elf1-emmc.dts

添加pwm7設(shè)備節(jié)點(diǎn)

&pwm7 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm7>; status = "okay"; };

wKgZombg_WWAPSD4AAN9HPriB70074.png

在iomux節(jié)點(diǎn)下面添加pwm7引腳復(fù)用

pinctrl_pwm7: pwm7grp { fsl,pins = < MX6UL_PAD_CSI_VSYNC__PWM7_OUT 0x110b0 >; };

wKgaombg_h2AMQC5AASICkuEBUU451.png

取消其它用到csi功能的地方

wKgZombg_kSAFRXUAAOZ4JatwUs726.pngwKgaombg_lqAewehAAQSkZ0lfVo466.png

至此pwm7已經(jīng)復(fù)用完成。

2、實(shí)現(xiàn)控制窗簾開(kāi)合的功能

該項(xiàng)目選用28BYJ-48步進(jìn)電機(jī)實(shí)現(xiàn)窗簾的開(kāi)合操作,28BYJ-48電機(jī)需要4個(gè)GPIO來(lái)控制,需要在設(shè)備樹(shù)中進(jìn)行GPIO的復(fù)用并在內(nèi)核中添加電機(jī)驅(qū)動(dòng)。(1)修改設(shè)備樹(shù)文件arch/arm/boot/dts/imx6ull-elf1-emmc.dts。

elf@ubuntu:~/work$ cd linux-4.1.15-elf1/ elf@ubuntu:~/work/linux-4.1.15-elf1$ vi arch/arm/boot/dts/imx6ull-elf1-emmc.dts

添加設(shè)備節(jié)點(diǎn)

mymotor { compatible = "motor"; pinctrl-names = "default"; pinctrl-0 = <&mymotor>; status = "okay"; motorA-gpios = <&gpio4 21 GPIO_ACTIVE_HIGH>; motorB-gpios = <&gpio4 22 GPIO_ACTIVE_HIGH>; motorC-gpios = <&gpio4 23 GPIO_ACTIVE_HIGH>; motorD-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>; };

wKgaombg_qOAZJOaAATRxK0wbnY310.png

在iomux節(jié)點(diǎn)下面添加引腳復(fù)用

mymotor: mymotorgrp { fsl,pins = < MX6UL_PAD_CSI_DATA00__GPIO4_IO21 0x10b0 MX6UL_PAD_CSI_DATA01__GPIO4_IO22 0x10b0 MX6UL_PAD_CSI_DATA02__GPIO4_IO23 0x10b0 MX6UL_PAD_CSI_DATA03__GPIO4_IO24 0x10b0 >; };

wKgaombg_saAUrGWAATV-6ALB6k044.png

(2)添加電機(jī)驅(qū)動(dòng)

拷貝motor.c到內(nèi)核源碼的drivers/gpio目錄下,修改drivers/gpio目錄下的Makefile文件,添加如下內(nèi)容:

obj-y += motor.o

wKgZombg_veAfTYvAAmxUaLDuDg818.png

3、編譯并替換設(shè)備樹(shù)和內(nèi)核

(1)執(zhí)行環(huán)境變量

elf@ubuntu:~/work/linux-4.1.15-elf1$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

(2)編譯設(shè)備樹(shù)和內(nèi)核

elf@ubuntu:~/work/linux-4.1.15-elf1$ make imx6ull_elf1_defconfig elf@ubuntu:~/work/linux-4.1.15-elf1$ make dtbs elf@ubuntu:~/work/linux-4.1.15-elf1$ make zImage

(3)將arch/arm/boot/路徑下的zImage和arch/arm/boot/dts/路徑下的imx6ull-elf1-emmc.dtb放到U盤(pán),通過(guò)U盤(pán)拷貝到開(kāi)發(fā)板。

root@ELF1:~# cp /run/media/sda1/imx6ull-elf1-emmc.dtb /run/media/mmcblk1p1/ root@ELF1:~# cp /run/media/sda1/zImage /run/media/mmcblk1p1/

(4)保存并重啟開(kāi)發(fā)板

root@ELF1:~# sync root@ELF1:~# reboot

五、基于Qt界面的數(shù)據(jù)采集和控制

1、程序設(shè)計(jì)

wKgZombhAlaAMEpfAAKabUVYMOU641.png

主函數(shù)的實(shí)現(xiàn)main.cpp

int main(int argc, char* argv[]) { QApplication a(argc, argv); if(!ControllerHandler::instance()->startController()) { return 0; } a.setStyle("Fusion"); QFont f = a.font(); f.setPointSize(20); f.setPixelSize(16); a.setFont(f); MWainWindow w; w.setWindowFlags(Qt::FramelessWindowHint); if(a.primaryScreen()) { w.resize(a.primaryScreen()->size()); } w.show(); int ret = a.exec(); return ret; }

設(shè)置顯示的時(shí)間的樣式和位置

void MWainWindow::showtime() { /* 實(shí)例化與設(shè)置顯示的位置大小*/ lcdNumber = new QLCDNumber(this); QScreen *screen = QGuiApplication::primaryScreen(); // 獲取屏幕分辨率的大小 QSize screenSize = screen->size(); int screenWidth = screenSize.width(); int screenHeight = screenSize.height(); // 根據(jù)屏幕分辨率的大小執(zhí)行不同的操作 if (screenWidth == 1024 && screenHeight == 600) { lcdNumber->setGeometry( 850, 9, 100, 40); } else if (screenWidth == 800 && screenHeight == 480) { lcdNumber->setGeometry( 650, 9, 100, 40); } else { qDebug() << "Performing other operation";} /* 設(shè)置顯示的位數(shù) 8 位 */ lcdNumber->setDigitCount(8); /* 設(shè)置樣式 */ lcdNumber->setFrameStyle(QFrame::NoFrame); /* 設(shè)置 lcd 顯示為當(dāng)前系統(tǒng)時(shí)間 */ QTime time = QTime::currentTime(); /* 設(shè)置顯示的樣式 */ lcdNumber->display(time.toString("hh:mm:ss")); lcdNumber->setStyleSheet("color: black"); }

設(shè)置顯示的圖片的大小和位置

void MWainWindow::showphoto() { /* 設(shè)置大小與位置 */ this->setGeometry(0, 0, 1024, 600); /* 使用資源里的文件時(shí)格式是 :+前綴+文件路徑 */ QPixmap pixmap(":images/res.png"); labelImage = new QLabel(this); QScreen *screen = QGuiApplication::primaryScreen(); // 獲取屏幕分辨率的大小 QSize screenSize = screen->size(); int screenWidth = screenSize.width(); int screenHeight = screenSize.height(); // 根據(jù)屏幕分辨率的大小執(zhí)行不同的操作 if (screenWidth == 1024 && screenHeight == 600) { labelImage->setGeometry(14, 61, 343, 524); } else if (screenWidth == 800 && screenHeight == 480) { labelImage->setGeometry(14, 61, 343, 403); } else { qDebug() << "Performing other operation"; } /* 設(shè)置圖像 */ labelImage->setPixmap(pixmap); /* 開(kāi)啟允許縮放填充 */ labelImage->setScaledContents(true); }

獲取設(shè)備的狀態(tài)

void MWainWindow::readData() { /* 當(dāng)定時(shí)器計(jì)時(shí) 1000 毫秒后,刷新 lcd 顯示當(dāng)前系統(tǒng)時(shí)間 */ QTime time = QTime::currentTime(); /* 設(shè)置顯示的樣式 */ lcdNumber->display(time.toString("hh:mm:ss")); ControllerHandler* pInstance =ControllerHandler::instance(); float value=-100; int curtainstate = targetCurtainState; pInstance->getValue(TEMPERATURE_SENSOR,value); ui->widget_temp->setData("溫度", QString::number(value) +"°"); if(bOpen==1) { if(value > 31) { ControllerHandler::instance()->setValue(FAN, 10, ' ', ' '); } else { ControllerHandler::instance()->setValue(FAN, 0, ' ', ' '); } } pInstance->getValue(HUMIDITY_SENSOR,value); ui->widget_hum->setData("濕度", QString::number(value) +"%"); pInstance->getValue(LIGHT_SENSOR,value); ui->widget_light->setData("亮度", QString::number(value) +" lt"); if(bOpen==1) { if (value >= 0 && value < 100) { if (curtainstate == 0) { printf("Automatic curtain opening!!!\n"); //ControllerHandler::instance()->setValue(MYMOTOR, ' ', 'R', 2048); targetCurtainState = 1; } } else if (value >= 100 && value < 500) { if (curtainstate == 1) { printf("Automatic curtain closing!!!\n"); //ControllerHandler::instance()->setValue(MYMOTOR, ' ', 'L', 2048); targetCurtainState = 0; } } } if(bOpen==0) { if(bOpen2==1) { //printf("Fan open!!!\n"); ControllerHandler::instance()->setValue(FAN, 10, ' ', ' '); } if(bOpen2==0) { //printf("Fan close!!!\n"); ControllerHandler::instance()->setValue(FAN, 0, ' ', ' '); } } if(bOpen == 0){ if (isFirstCheck) { lastbOpen3 = bOpen3; isFirstCheck = false; } else if (bOpen3 != lastbOpen3) { if(bOpen3 == 1){ printf("Curtain open!!!\n"); //ControllerHandler::instance()->setValue(MYMOTOR, ' ', 'R', 2048); } else { printf("Curtain close!!!\n"); //ControllerHandler::instance()->setValue(MYMOTOR, ' ', 'L', 2048); } lastbOpen3 = bOpen3; } } }

設(shè)置界面樣式

void MWainWindow::Style() { QString qssFileName; qssFileName = ":/green.qss"; QFile file(qssFileName); if(file.open(QFile::ReadOnly| QFile::Text)){ QString qss =file.readAll(); QApplication *app = dynamic_cast(qApp); if(!qss.isEmpty()){ app->setStyleSheet(qss); } file.close(); } }

2、應(yīng)用編譯

(1)拷貝smartclassroom.tar.bz2到開(kāi)發(fā)環(huán)境/home/elf/work目錄下解壓

elf@ubuntu:~/work$ tar xvf smartclassroom.tar.bz2

(2)執(zhí)行環(huán)境變量

elf@ubuntu:~/work/adc$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

(3)編譯

elf@ubuntu:~/work$ cd smartclassroom/ elf@ubuntu:~/work/smartclassroom$ qmake elf@ubuntu:~/work/smartclassroom$ make

(4)壓縮

elf@ubuntu:~/work/smartclassroom$ cd ../smartclassroom_output/release/ elf@ubuntu:~/work/smartclassroom_output/release$ tar -cjvf smartclassroom.tar.bz2 *

(5)拷貝smartclassroom.tar.bz2壓縮包到開(kāi)發(fā)板/home/root路徑下解壓

root@ELF1:~# cp /run/media/sda1/smartclassroom.tar.bz2 ./ root@ELF1:~# tar xvf smartclassroom.tar.bz2 root@ELF1:~# chmod 777 * root@ELF1:~# cp lib* /usr/lib root@ELF1:~# sync

六、項(xiàng)目測(cè)試

1、確保開(kāi)發(fā)板已正確連接風(fēng)扇、步進(jìn)電機(jī)和屏幕

2、執(zhí)行應(yīng)用

root@ELF1:~# export DISPLAY=:0.0 root@ELF1:~# ./app

應(yīng)用執(zhí)行成功后,Qt界面顯示如下,此時(shí)可以通過(guò)切換按鈕選擇手動(dòng)控制或者感應(yīng)控制風(fēng)扇開(kāi)關(guān)以及窗簾開(kāi)合。

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

    關(guān)注

    6076

    文章

    45501

    瀏覽量

    670759
  • 嵌入式
    +關(guān)注

    關(guān)注

    5200

    文章

    20470

    瀏覽量

    334413
  • 開(kāi)源代碼
    +關(guān)注

    關(guān)注

    0

    文章

    41

    瀏覽量

    3975
  • 學(xué)習(xí)開(kāi)發(fā)板

    關(guān)注

    0

    文章

    10

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    摩爾線(xiàn)程正式開(kāi)源TileLang-MUSA項(xiàng)目

    近日,摩爾線(xiàn)程正式開(kāi)源TileLang-MUSA項(xiàng)目,實(shí)現(xiàn)對(duì)TileLang編程語(yǔ)言的完整支持。該項(xiàng)目已成功在摩爾線(xiàn)程多代全功能GPU上完成功能驗(yàn)證與特性開(kāi)發(fā),旨在通過(guò)高層抽象與編譯器優(yōu)化,大幅降低開(kāi)發(fā)門(mén)檻,為國(guó)產(chǎn)算力平臺(tái)提供更
    的頭像 發(fā)表于 02-11 16:57 ?1296次閱讀

    TCL首款基于開(kāi)源鴻蒙的智慧健康空調(diào)發(fā)布

    。會(huì)上,開(kāi)源鴻蒙項(xiàng)目群工作委員會(huì)執(zhí)行主席、華為終端BG軟件部副總裁章曉峰發(fā)表《開(kāi)源鴻蒙賦能TCL空調(diào)智慧健康新體驗(yàn)》的主題演講,分享了開(kāi)源
    的頭像 發(fā)表于 12-25 09:33 ?466次閱讀

    開(kāi)源鴻蒙項(xiàng)目順利孵化畢業(yè)

    2025年11月21日,2025開(kāi)放原子開(kāi)發(fā)者大會(huì)在北京隆重啟幕。作為本次大會(huì)的重磅環(huán)節(jié)和核心焦點(diǎn)之一,在大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)(以下簡(jiǎn)稱(chēng)“基金會(huì)”)宣布開(kāi)源鴻蒙項(xiàng)目達(dá)成開(kāi)源
    的頭像 發(fā)表于 11-27 14:36 ?570次閱讀

    開(kāi)源歐拉項(xiàng)目達(dá)成開(kāi)源孵化目標(biāo)順利畢業(yè)

    11月21日,2025開(kāi)放原子開(kāi)發(fā)者大會(huì)在北京隆重啟幕。作為本次大會(huì)的重磅環(huán)節(jié)和核心焦點(diǎn)之一,在大會(huì)開(kāi)幕式上,開(kāi)源歐拉項(xiàng)目達(dá)成開(kāi)源孵化目標(biāo)、順利畢業(yè)。
    的頭像 發(fā)表于 11-25 17:40 ?1131次閱讀

    開(kāi)源鴻蒙項(xiàng)目達(dá)成開(kāi)源孵化目標(biāo)順利畢業(yè)

    11月21日,2025開(kāi)放原子開(kāi)發(fā)者大會(huì)在北京隆重啟幕。作為本次大會(huì)的重磅環(huán)節(jié)和核心焦點(diǎn)之一,在大會(huì)開(kāi)幕式上,開(kāi)源鴻蒙項(xiàng)目達(dá)成開(kāi)源孵化目標(biāo)、順利畢業(yè),這是項(xiàng)目
    的頭像 發(fā)表于 11-25 17:36 ?1170次閱讀

    開(kāi)放原子開(kāi)源基金會(huì)與11個(gè)項(xiàng)目完成捐贈(zèng)簽約

    11月21日,在2025開(kāi)放原子開(kāi)發(fā)者大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)與11個(gè)開(kāi)源項(xiàng)目完成捐贈(zèng)簽約,涵蓋人工智能、量子計(jì)算、機(jī)器人、操作系統(tǒng)、物聯(lián)網(wǎng)等多個(gè)關(guān)鍵技術(shù)方向。此舉既是基金會(huì)完
    的頭像 發(fā)表于 11-25 17:26 ?899次閱讀

    開(kāi)源鴻蒙和開(kāi)源歐拉成為開(kāi)放原子開(kāi)源基金會(huì)首批畢業(yè)項(xiàng)目

    11月21日,在2025開(kāi)放原子開(kāi)發(fā)者大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)宣布旗下開(kāi)源鴻蒙(OpenHarmony)與開(kāi)源歐拉(openEuler)成為首批畢業(yè)項(xiàng)目。
    的頭像 發(fā)表于 11-25 17:22 ?850次閱讀

    【置頂公告】視美泰開(kāi)源鴻蒙系列產(chǎn)品業(yè)務(wù)咨詢(xún)與商務(wù)合作通道正式開(kāi)啟!

    設(shè)計(jì)。 生態(tài)解決方案整合智慧政務(wù)、智慧醫(yī)療、智慧園區(qū)、智慧教育、智慧安平、工業(yè)物聯(lián)網(wǎng)等領(lǐng)域鴻蒙化系統(tǒng)集成與場(chǎng)景落地。
    發(fā)表于 10-20 16:23

    deepin IDE入選Gitee最有價(jià)值開(kāi)源項(xiàng)目

    近日,deepin IDE 成功入選 Gitee 最有價(jià)值開(kāi)源項(xiàng)目(GVP)!
    的頭像 發(fā)表于 10-14 18:10 ?1304次閱讀

    開(kāi)放原子開(kāi)源基金會(huì)發(fā)布150余個(gè)開(kāi)源項(xiàng)目應(yīng)用案例

    近日,在2025開(kāi)放原子開(kāi)源生態(tài)大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)發(fā)布了150余個(gè)開(kāi)源項(xiàng)目應(yīng)用案例,涵蓋中國(guó)南方電網(wǎng)、中國(guó)移動(dòng)、京東集團(tuán)、安貞醫(yī)院、南京郵電大學(xué)、螞蟻密算等100余家單位
    的頭像 發(fā)表于 07-28 17:10 ?1187次閱讀

    開(kāi)放原子開(kāi)源基金會(huì)與新一批開(kāi)源項(xiàng)目完成捐贈(zèng)簽約

    近日,在2025開(kāi)放原子開(kāi)源生態(tài)大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)與新一批開(kāi)源項(xiàng)目完成捐贈(zèng)簽約,涵蓋人工智能、具身智能、基礎(chǔ)軟件、區(qū)塊鏈等多個(gè)技術(shù)
    的頭像 發(fā)表于 07-28 17:04 ?1015次閱讀

    普華基礎(chǔ)軟件榮膺優(yōu)秀開(kāi)源項(xiàng)目獎(jiǎng)

    近日,2025上海開(kāi)源創(chuàng)新菁英獎(jiǎng)評(píng)選結(jié)果正式揭曉。普華基礎(chǔ)軟件開(kāi)源安全車(chē)控操作系統(tǒng)小滿(mǎn)EasyXMen憑借在開(kāi)源技術(shù)創(chuàng)新與產(chǎn)業(yè)應(yīng)用實(shí)踐方面的突出表現(xiàn),榮獲“優(yōu)秀
    的頭像 發(fā)表于 07-28 16:48 ?941次閱讀

    RT-Thread榮獲2025優(yōu)秀開(kāi)源項(xiàng)目 | 新聞速遞

    6月底,RT-Thread睿賽德受邀參與由上海開(kāi)源信息技術(shù)協(xié)會(huì)主辦的2025上海開(kāi)源創(chuàng)新精英薈。上海市商委副主任張杰出席會(huì)議并致辭。RT-Thread嵌入式操作系統(tǒng)項(xiàng)目憑借其卓越的
    的頭像 發(fā)表于 07-04 09:04 ?2668次閱讀
    RT-Thread榮獲2025優(yōu)秀<b class='flag-5'>開(kāi)源</b><b class='flag-5'>項(xiàng)目</b> | 新聞速遞

    RISC V 開(kāi)源芯片項(xiàng)目:OpenTitan 詳細(xì)解讀

    OpenTitan 是由 Google 主導(dǎo)的開(kāi)源安全芯片項(xiàng)目,旨在為硬件系統(tǒng)提供 可信的硬件信任根(Root of Trust, RoT)? ,通過(guò)透明化設(shè)計(jì)和開(kāi)源協(xié)作提升硬件安全水平。以下是其
    的頭像 發(fā)表于 04-09 14:45 ?4498次閱讀
    RISC V <b class='flag-5'>開(kāi)源</b>芯片<b class='flag-5'>項(xiàng)目</b>:OpenTitan 詳細(xì)解讀

    Open Echo:一個(gè)開(kāi)源的聲納項(xiàng)目

    開(kāi)源硬件項(xiàng)目,Open Echo 致力于構(gòu)建高精度聲吶系統(tǒng),主要應(yīng)用于水文測(cè)繪與科研探測(cè)領(lǐng)域。項(xiàng)目遵循完全開(kāi)源協(xié)議,目前已在GitHub平臺(tái)公開(kāi)全部
    的頭像 發(fā)表于 03-20 11:14 ?2661次閱讀
    Open Echo:一個(gè)<b class='flag-5'>開(kāi)源</b>的聲納<b class='flag-5'>項(xiàng)目</b>