一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

基于RT-Thread和N32G457的迷你鍵盤設(shè)計(jì)方案

冬至子 ? 來源:Blues_Jiang ? 作者:Blues_Jiang ? 2023-08-07 16:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

應(yīng)用背景

機(jī)械鍵盤在最近幾年發(fā)展迅猛,功能也逐漸豐富,在開源環(huán)境中也存在幾個(gè)發(fā)展迅猛的開源項(xiàng)目,比如QMK。這些項(xiàng)目對(duì)STM32之類的芯片雖然有所支持,但是相關(guān)資料也會(huì)少很多,所以項(xiàng)目之初我是希望可以將QMK作為一個(gè)軟件包接入RT-Thread,但是由于對(duì)其了解不夠深入,最后項(xiàng)目變成了完成鍵盤為主(主要PCB已經(jīng)畫回來了)。

本次作品,是希望借實(shí)現(xiàn)一個(gè)小鍵盤接觸QMK之類的開源項(xiàng)目,并將其接入RT-Thread,這樣對(duì)于機(jī)械鍵盤這個(gè)行業(yè)而言,主控芯片的選擇會(huì)豐富很多。

實(shí)現(xiàn)功能

本項(xiàng)目主要為一個(gè)通過USB HID協(xié)議對(duì)電腦進(jìn)行通信的機(jī)械鍵盤(30左右鍵+3個(gè)編碼器),添加WS2812的燈珠,添加1.14寸OLED顯示屏,均完成基礎(chǔ)功能編寫測(cè)試(存在部分不穩(wěn)定的bug)。通過RT-Thread為每一個(gè)設(shè)備建立線程,實(shí)現(xiàn)了互相通訊,實(shí)現(xiàn)了部分互動(dòng)特效。

開發(fā)板和RT-Thread使用情況概述

本次設(shè)計(jì)對(duì)鍵盤部分設(shè)計(jì)了PCB以及頂部定位板的PCB,使用40P的FPC排線將所有所需引腳引出,通過杜邦線連接到主控板,使用的主控板為國(guó)民技術(shù)提供的N32G457開發(fā)板,將所有IO引出,考慮之下,作為前期項(xiàng)目,采取了杜邦線的形式。

在設(shè)計(jì)PCB的時(shí)候,考慮到整體鍵盤一體性,有做額外設(shè)計(jì),將主控部分放置于頂層定位板處,床層PCB通過FPC排線進(jìn)行連接。當(dāng)然由于時(shí)間與資源關(guān)系并沒有完成該部分,定位板只做定位板使用,是便于調(diào)試的選擇。

在軟件層面該程序使用RT-Thread 4.1.0為主控系統(tǒng),部分內(nèi)容通過對(duì)軟件包的修改完成。

硬件框架

如圖:

1.jpg

實(shí)裝了OLED,WS2812b,和鍵盤本體,通過FPC排線接到轉(zhuǎn)接板,通過杜邦線連接到開發(fā)板。
對(duì)于機(jī)械鍵盤部分,原理圖如下。

1.jpg

軟件框架說明

1.jpg

針對(duì)每一個(gè)外設(shè)都有做線程,USB接收的信息有CapsLock和NumsLock,這類事件通過Event公告。

keyboard線程是10ms掃描一次,先掃描矩陣鍵盤,再掃描旋轉(zhuǎn)編碼器。

當(dāng)發(fā)現(xiàn)有按鍵需要發(fā)送出去,在線程內(nèi)先打包好,然后通過消息隊(duì)列發(fā)送出去。

軟件模塊說明

由于N32G45X的BSP并不支持USB設(shè)備,在移植嘗試進(jìn)行了一些時(shí)間后,由于本身并未研究過USB設(shè)備,在仍然希望最終結(jié)果相對(duì)完整的前提下,選擇了另一種方法。根據(jù)國(guó)民技術(shù)提供的N32G457的庫函數(shù),內(nèi)部包含了部分使用USB向電腦發(fā)送數(shù)據(jù)的例程,本次項(xiàng)目將該部分例程魔改,并未初始化USB的device,但對(duì)USB設(shè)備分配了一個(gè)線程,使用RT-Thread的方法進(jìn)行橋接,發(fā)送所需數(shù)據(jù)到例程中設(shè)備向USB主機(jī)發(fā)送設(shè)備的位置,最終實(shí)現(xiàn)了成功枚舉HID設(shè)備并正常進(jìn)行打字輸入。

現(xiàn)階段軟件在打字部分已經(jīng)比較完善,ws2812b部分存在bug,會(huì)出現(xiàn)顏色偏差。

對(duì)SPI部分驅(qū)動(dòng)后續(xù)有進(jìn)行小修復(fù),驗(yàn)證通過,后續(xù)會(huì)提交PR。

聲明:本文內(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)投訴
  • PCB布線
    +關(guān)注

    關(guān)注

    22

    文章

    472

    瀏覽量

    42764
  • OLED顯示屏
    +關(guān)注

    關(guān)注

    6

    文章

    218

    瀏覽量

    31608
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1412

    瀏覽量

    42000
  • STM32芯片
    +關(guān)注

    關(guān)注

    0

    文章

    38

    瀏覽量

    4627
  • N32G457
    +關(guān)注

    關(guān)注

    0

    文章

    18

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    基于N32G457 RT-Thread的設(shè)計(jì)作品集分享

    1、基于RT-ThreadN32G457的智能工業(yè)網(wǎng)關(guān)的設(shè)計(jì)方案基于RT-Thread系統(tǒng)和N32G457開發(fā)板,簡(jiǎn)單的實(shí)現(xiàn)了modbus
    發(fā)表于 03-11 17:49

    作品分享-基于RT-Thread系統(tǒng)和N32G457開發(fā)板開發(fā)的電子圍欄設(shè)計(jì)

    基于RT-Thread系統(tǒng)和N32G457開發(fā)板開發(fā)的電子圍欄設(shè)計(jì),主要采用的是N32G457開發(fā)板,并搭載AIR724 4G模塊作為數(shù)據(jù)傳輸模塊,通過采集GPS的數(shù)據(jù),并將該設(shè)備的經(jīng)
    發(fā)表于 03-14 14:25

    基于RT-ThreadN32G457迷你鍵盤

    推出N32G457 RT-Thread設(shè)計(jì)大賽期間作品。由于疫情影響加上其他各種原因,本應(yīng)在3月25日結(jié)束的比賽在今日終于完成了一個(gè)比較完整的作品,無論是否可以參賽,還是希望對(duì)大家有所幫助。先放個(gè)圖
    發(fā)表于 04-18 14:49

    求一種基于RT-ThreadN32G457的室內(nèi)互聯(lián)控制系統(tǒng)設(shè)計(jì)方案

    1、基于RT-Thread系統(tǒng)和N32G457開發(fā)板開發(fā)的一室內(nèi)互聯(lián)控制系統(tǒng)基于RT-Thread系統(tǒng)和N32G457開發(fā)板開發(fā)的一室內(nèi)互聯(lián)控制系統(tǒng);硬件部分由ESP8266WIFI模
    發(fā)表于 06-15 15:36

    分享一種基于RT-ThreadN32G457的運(yùn)動(dòng)姿態(tài)解算設(shè)計(jì)

    1、基于RT-ThreadN32G457的運(yùn)動(dòng)姿態(tài)解算基本框架如上圖所示,設(shè)計(jì)框架由硬件和軟件兩部分組成,其中硬件主要包括N32G457主控板和MPU6050模塊,軟件部分主要包括eMPL的移植(
    發(fā)表于 06-23 10:24

    基于RT-ThreadN32G457的測(cè)距雷達(dá)采集顯示的設(shè)計(jì)方案

    1、基于RT-ThreadN32G457的測(cè)距雷達(dá)采集顯示功能介紹采集測(cè)距雷達(dá)數(shù)據(jù),經(jīng)過開發(fā)板處理后,將數(shù)據(jù)在LCD顯示屏上顯示,同時(shí)在串口輸出距測(cè)距信息。硬件框圖**軟件框圖原作者:TLLED
    發(fā)表于 07-05 16:08

    基于RT-ThreadN32G457的繼電器控制加熱設(shè)備制作方案

    1、基于RT-ThreadN32G457的繼電器控制加熱設(shè)備制作此項(xiàng)目是移植現(xiàn)有的加熱設(shè)備程序到RT-Thread 框架,主要是基于RT-Thread框架及對(duì)應(yīng)的軟件包(bottom
    發(fā)表于 08-26 15:55

    基于RT-ThreadN32G457的智能字符識(shí)別系統(tǒng)設(shè)計(jì)方案

    1、基于RT-ThreadN32G457的智能字符識(shí)別系統(tǒng)  應(yīng)用背景:提高文本信息錄入效率  實(shí)現(xiàn)功能:通過對(duì)需要錄入信息進(jìn)行拍照,對(duì)照片進(jìn)行OCR,實(shí)現(xiàn)錄入信息快速錄入  硬件框架  軟件框架  原作者:panshi
    發(fā)表于 09-02 15:41

    基于RT-ThreadN32G457的數(shù)字氣壓表設(shè)計(jì)相關(guān)資料分享

    1、基于RT-ThreadN32G457的數(shù)字氣壓表設(shè)計(jì)  基于RT-Thread系統(tǒng)和N32G457的數(shù)字氣壓表的設(shè)計(jì)。氣壓傳感器使用國(guó)產(chǎn)的華普HP5806氣壓傳感器,RTC時(shí)鐘使
    發(fā)表于 10-11 16:44

    基于RT-ThreadN32G457的電子墨水屏電子鐘設(shè)計(jì)方案

    1、基于RT-ThreadN32G457的電子墨水屏電子鐘設(shè)計(jì)本方案可以用于桌擺時(shí)鐘及定時(shí)器,用于倒計(jì)時(shí)提醒,查看時(shí)間等場(chǎng)景。定時(shí)器功能同時(shí)顯示了倒計(jì)時(shí)時(shí)長(zhǎng)已經(jīng)定時(shí)到達(dá)時(shí)間,方便設(shè)置預(yù)期的提醒時(shí)間
    發(fā)表于 10-28 17:29

    基于RT-ThreadN32G457的溫度氣壓顯示系統(tǒng)設(shè)計(jì)方案

    1、基于RT-ThreadN32G457的溫度氣壓顯示系統(tǒng)設(shè)計(jì)  此次基于RTT和N32G457開發(fā)實(shí)現(xiàn)u8g2 spi 硬件驅(qū)動(dòng)顯示及bmp280 傳感器驅(qū)動(dòng)?! ≌w架構(gòu)如下:原
    發(fā)表于 10-31 17:35

    基于RT-ThreadN32G457的嵌入式目標(biāo)識(shí)別系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

    1、基于RT-ThreadN32G457的嵌入式目標(biāo)識(shí)別系統(tǒng)設(shè)計(jì)  本演示示例移植蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院王宜懷教授團(tuán)隊(duì)的金葫蘆嵌入式人工智能:物體認(rèn)知系統(tǒng)中的代碼在N32G457上實(shí)現(xiàn)。可以識(shí)別單獨(dú)的英文字母A B C
    發(fā)表于 11-30 11:36

    N32G457系列通用MCU RT_Thread設(shè)備注冊(cè)應(yīng)用筆記

    N32G457系列通用MCU RT_Thread設(shè)備注冊(cè)應(yīng)用筆記
    發(fā)表于 11-10 19:51 ?3次下載
    <b class='flag-5'>N32G457</b>系列通用MCU <b class='flag-5'>RT_Thread</b>設(shè)備注冊(cè)應(yīng)用筆記

    N32G457系列通用MCU RT_Thread使用指南

    N32G457系列通用MCU RT_Thread使用指南
    發(fā)表于 11-11 21:50 ?0次下載
    <b class='flag-5'>N32G457</b>系列通用MCU <b class='flag-5'>RT_Thread</b>使用指南

    求一種基于RT-ThreadN32G457的便攜測(cè)距模塊設(shè)計(jì)方案

    背景:基于RT-Thread系統(tǒng)和N32G457開發(fā)板開發(fā)的一款便攜測(cè)距小模塊;
    發(fā)表于 08-07 16:30 ?723次閱讀
    求一種基于<b class='flag-5'>RT-Thread</b>和<b class='flag-5'>N32G457</b>的便攜測(cè)距模塊<b class='flag-5'>設(shè)計(jì)方案</b>