chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

一個(gè)帶有USB和藍(lán)牙的手工「焊」接Python鍵盤(pán)的代碼

strongerHuang ? 來(lái)源:機(jī)器之心 ? 2020-09-07 17:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

這是一個(gè)內(nèi)部運(yùn)行 Python 的開(kāi)源鍵盤(pán),可根據(jù)個(gè)人需求定制鍵盤(pán)映射。從此以后,「窮苦玩家」也能在 MOBA 游戲里一鍵放連招了,不知這樣算不算硬件外掛?「氪金玩家」請(qǐng)出門(mén)右轉(zhuǎn)購(gòu)買(mǎi)宏編程鍵盤(pán)。

近日,一位中國(guó)開(kāi)發(fā)者在 GitHub 上開(kāi)源了一個(gè)帶有 USB藍(lán)牙的手工「焊」接 Python 鍵盤(pán)的代碼。該項(xiàng)目使用了 AdaFruit 的人員開(kāi)發(fā)的 CircuitPython(衍生自 MicroPython)的特定實(shí)現(xiàn),該實(shí)現(xiàn)可以在容納 256K 的代碼空間和 16K 的 RAM 的虛擬機(jī)上運(yùn)行。

這一 Python 鍵盤(pán)可以讓用戶輕松地使用 Python 編寫(xiě)控制板。 項(xiàng)目地址:https://github.com/makerdiary/python-keyboard 下面我們就來(lái)看下這個(gè) Python 鍵盤(pán)的具體操作和實(shí)現(xiàn)細(xì)節(jié)。 操作步驟 在 GitHub 上,作者詳細(xì)描述了制作這個(gè) Python 鍵盤(pán)的操作步驟,總結(jié)起來(lái)包括: 1. 手工「焊」接鍵盤(pán) 下面這些圖展示了作者對(duì)這些鍵盤(pán)內(nèi)部結(jié)構(gòu)的改造。

去掉鍵盤(pán)帽扣,作者用焊絲把關(guān)聯(lián)按鍵連接起來(lái),達(dá)到下圖這樣的效果。

最后,作者把一個(gè)能夠運(yùn)行 Python 的開(kāi)源控制板連接到鍵盤(pán)上。最終圖示如下。

2. 編程 Pitaya Go 第二步是對(duì)上圖中紅色設(shè)備的編程。作者在 Github 中編寫(xiě)了詳細(xì)的指南,對(duì) Pitaya Go 進(jìn)行編程并燒寫(xiě)到 Flash CircuitPython 固件上。 3. 下載 CircuitPython 庫(kù) 接下來(lái),下載兩個(gè) CircuitPython 庫(kù):adafruit-ble 和 adafruit-hid,并將它們放入名為 CIRCUITPY 的 USB 驅(qū)動(dòng)器里的 lib 目錄中,如下圖所示。

4. 復(fù)制代碼 最后一步是將 Python 的代碼復(fù)制到 code.py。重新加載 code.py 后,我們就可以獲得一個(gè)帶有 USB 以及藍(lán)牙的鍵盤(pán)了。 完整代碼作者也開(kāi)源到 Github 項(xiàng)目中。 生產(chǎn)力升級(jí) 60%(61 鍵)的鍵盤(pán)缺少 F1~F12、方向鍵、PgUp、PgDn 等鍵位。該項(xiàng)目加入了 tmk_keyboard 項(xiàng)目中的鍵位映射功能,同時(shí)參考了 Toward a more useful keyboard 項(xiàng)目對(duì)于鍵位設(shè)置上的優(yōu)化理念,使得小鍵盤(pán)更具生產(chǎn)力「折騰才有樂(lè)趣,就是不買(mǎi)全鍵盤(pán)」!

tmk_keyboard 項(xiàng)目地址:https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/doc/keymap.md

Toward a more useful keyboard 項(xiàng)目地址:https://github.com/jasonrudolph/keyboard

由于使用了 Python 編寫(xiě)鍵位映射,我們可以很方便地對(duì)鍵位進(jìn)行個(gè)性化定制「以后誰(shuí)還需要宏編程鍵盤(pán),大霧」。該項(xiàng)目自帶 Tap-key 功能,即按住一個(gè)鍵不放可激活替代功能模式,在 60% 鍵盤(pán)上擴(kuò)展出更多鍵位。我們只需將 keyboard.py 與 keycodes.py 復(fù)制到 CIRCUITPY 目錄下,之后修改 code.py 導(dǎo)入新鍵盤(pán),即可將按鍵 D 用作導(dǎo)航。

當(dāng)僅想要輸出 D 時(shí)快速敲擊即可,而按住 D 不放則激活導(dǎo)航功能,變化后的鍵位如下圖所示。

此時(shí) H、J、K、L 鍵分別被映射為上下左右方向鍵,而 U 與 N 則被映射為 PgUp 和 PgDn。

另外還支持同時(shí)按住兩個(gè)鍵(間隔小于 25 毫秒)激活替代功能模式,以及按住「;」鍵作為 Ctrl。 為什么要用 Python 寫(xiě)? 這個(gè)項(xiàng)目在 hackernews 和 twitter 上都引來(lái)了不少人圍觀。多數(shù)人認(rèn)為這是一個(gè)非常有創(chuàng)意的想法,之前沒(méi)見(jiàn)過(guò)這種操作。

但鑒于作者在項(xiàng)目中用的語(yǔ)言是 Python,大家不免擔(dān)心起速度問(wèn)題。對(duì)此,作者回復(fù)稱,「確實(shí)有點(diǎn)慢,現(xiàn)在掃描一次矩陣需要 4 毫秒,但優(yōu)化之后速度會(huì)有提升?!?

既然用 Python 速度慢,那為什么不用 C 語(yǔ)言寫(xiě)呢?也沒(méi)有多復(fù)雜啊。作者表示,「項(xiàng)目中的硬件包含一個(gè) QSPI 閃存,它是一個(gè) USB 存儲(chǔ),用來(lái)保存 Python 源代碼,你可以直接改 Python 代碼。而且,使用 Python 為快速驗(yàn)證硬件產(chǎn)品的創(chuàng)意提供了一個(gè)新的方式?!?

除此之外,也有人幫作者補(bǔ)充了使用 Python 的好處。ta 指出,這個(gè)項(xiàng)目用到的 CircuitPython 實(shí)現(xiàn)使用一個(gè)非常不同的 VM 運(yùn)行,雖然不能指望它接近 C 的性能,但相比 Cpython 要輕量化得多。整個(gè)開(kāi)發(fā)過(guò)程也會(huì)簡(jiǎn)單得多。

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

    關(guān)注

    3

    文章

    4368

    瀏覽量

    46455
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4977

    瀏覽量

    74402
  • python
    +關(guān)注

    關(guān)注

    58

    文章

    4888

    瀏覽量

    90322

原文標(biāo)題:自己「焊」鍵盤(pán):使用Python編寫(xiě)

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    低功耗BLE應(yīng)用三模鍵盤(pán)模塊方案

    在無(wú)線外設(shè)市場(chǎng),鍵盤(pán)產(chǎn)品正加速向多?;?、低功耗方向演進(jìn)。針對(duì)廠商對(duì)低功耗BLE應(yīng)用的迫切需求,基于CH592芯片的三模鍵盤(pán)模塊方案提供了USB/BLE/2.4G體化解決思路。三模
    的頭像 發(fā)表于 04-14 17:20 ?422次閱讀
    低功耗BLE應(yīng)用三模<b class='flag-5'>鍵盤(pán)</b>模塊方案

    [VirtualLab] 使用Python運(yùn)行VirtualLab Fusion光學(xué)仿真

    使用代碼編輯器Visual Studio Code(VS Code),因?yàn)樗峁┝?b class='flag-5'>一個(gè)用戶友好的安裝工作流程*。當(dāng)然,如果需要,也可以使用其他Python編輯器。 對(duì)于使用VS Cod
    發(fā)表于 03-31 09:39

    如何在 VisionFive 上使用 Python 包?

    VisionFive Fedora 下的本地目錄,請(qǐng)?jiān)谠?b class='flag-5'>代碼目錄下執(zhí)行以下命令: 提示:源代碼可從以下位置下載:愿景五.gpio. sudo yum install python
    發(fā)表于 03-30 08:28

    如何讓藍(lán)牙 USB 加密狗正常工作?

    我想讓藍(lán)牙 (bluez) 運(yùn)行。所以我需要個(gè) USB 藍(lán)牙加密狗。 有人成功讓藍(lán)牙
    發(fā)表于 03-19 07:18

    文讀懂 SMT 貼片與手工焊接的區(qū)別

    Technology)貼片技術(shù)是種自動(dòng)化電子組裝工藝,通過(guò)貼片機(jī)將表面貼裝元件精確放置在 PCB 板上,再通過(guò)回流完成焊接。這種工藝具有高精度、高效率、高可靠性的特點(diǎn),特別適合大批量生產(chǎn)。SMT 技術(shù)可以處理微小
    發(fā)表于 03-16 09:21

    BLE藍(lán)牙水表藍(lán)牙芯片方案

    代碼與多平臺(tái)APP工具,助力開(kāi)發(fā)者快速完成產(chǎn)品落地。藍(lán)牙芯片方案橋芯片搭載自研虛擬化串口技術(shù),讓藍(lán)牙功能集成像操作串口樣簡(jiǎn)單。部分型號(hào)無(wú)
    的頭像 發(fā)表于 03-10 16:03 ?218次閱讀

    探析手工貼片打樣的優(yōu)勢(shì)

    手工貼片打樣技術(shù)是種傳統(tǒng)的電子制造技術(shù),它是制造小批量電路板的理想解決方案,通過(guò)手工貼片的方式,可以快速有效地驗(yàn)證原型電路板設(shè)計(jì)的準(zhǔn)確性,從而降低制造成本和減少設(shè)計(jì)中的錯(cuò)誤。本文將會(huì)針對(duì)手工
    的頭像 發(fā)表于 01-08 12:48 ?280次閱讀
    探析<b class='flag-5'>手工</b>貼片打樣的優(yōu)勢(shì)

    手工到自動(dòng):球剪切測(cè)試的技術(shù)演進(jìn)與科學(xué)原理

    在現(xiàn)代微電子制造領(lǐng)域,引線鍵合的質(zhì)量檢測(cè)經(jīng)歷了從手工操作到自動(dòng)測(cè)試的重要演進(jìn)。早期,技術(shù)人員僅使用鑷子等簡(jiǎn)單工具進(jìn)行球剪切測(cè)試,這種手工方法雖然直觀,但存在操作致性差、測(cè)試精度低等
    發(fā)表于 12-31 09:12

    DA14535 USB開(kāi)發(fā)套件硬件解析:開(kāi)啟低功耗藍(lán)牙開(kāi)發(fā)新征程

    USB開(kāi)發(fā)套件(型號(hào)610 - 12 - A),為開(kāi)發(fā)者提供了個(gè)低成本且功能豐富的開(kāi)發(fā)平臺(tái),助力藍(lán)牙相關(guān)項(xiàng)目的快速落地。今天,我們就來(lái)深入剖析這個(gè)開(kāi)發(fā)套件的硬件設(shè)計(jì)與特性。 文件下
    的頭像 發(fā)表于 12-29 11:00 ?1195次閱讀

    Termux中調(diào)試圣誕樹(shù)Python代碼

    在Termux中調(diào)試Python代碼(以圣誕樹(shù)立例)非常簡(jiǎn)單,核心分為環(huán)境準(zhǔn)備、代碼編寫(xiě)、運(yùn)行調(diào)試三個(gè)步驟,下面步步教你操作:
    發(fā)表于 12-09 09:02

    Python調(diào)用API教程

    個(gè)不同系統(tǒng)之間的信息交互。在這篇文章中,我們將詳細(xì)介紹Python調(diào)用API的方法和技巧。 、用Requests庫(kù)發(fā)送HTTP請(qǐng)求 使用Python調(diào)用API的第
    的頭像 發(fā)表于 11-03 09:15 ?1198次閱讀

    通孔焊接還用手工?選擇性波峰才是降本增效的智慧之選!

    、為什么通孔焊接需要選擇性波峰? 傳統(tǒng)波峰(整板浸錫)的痛點(diǎn): 浪費(fèi)錫料:僅 10% 通孔需要焊接,其余 90% 盤(pán)被冗余覆蓋 熱損傷風(fēng)險(xiǎn):電容、晶振等熱敏元件耐溫<260℃,
    的頭像 發(fā)表于 08-27 17:03 ?1017次閱讀

    【HZ-T536開(kāi)發(fā)板免費(fèi)體驗(yàn)】4、使用藍(lán)牙模塊讀取小米溫濕度計(jì)的數(shù)據(jù)

    雖然設(shè)備上沒(méi)有藍(lán)牙模塊,我們依舊可以通過(guò)USB的星閃模組實(shí)現(xiàn)藍(lán)牙ble相關(guān)的功能,例如讀取小米溫濕度計(jì)的數(shù)據(jù)。 首先需要加載對(duì)應(yīng)的模塊,這些模塊在前面
    發(fā)表于 08-25 22:16

    【正點(diǎn)原子STM32MP257開(kāi)發(fā)板試用】2.USB攝像頭使用

    ) (usb-482f0000.usb-1.3): /dev/video7 /dev/video8 /dev/media2 最后個(gè)(UVC Camera)就是設(shè)備,要記下是video多少,后期opencv-
    發(fā)表于 06-16 19:16

    帶有USB C的便攜式設(shè)備可以通過(guò)USB C轉(zhuǎn)USB A電纜連接到計(jì)算機(jī)的USB A嗎?

    我有個(gè)問(wèn)題:我們有臺(tái)帶有 USB B 和 FTDI FT232RNL 和(8 位 MCU)的便攜式設(shè)備,由適配器供電。 多虧了歐盟,我們
    發(fā)表于 05-27 06:29