最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

基于KT6368A藍(lán)牙芯片開(kāi)發(fā)智能抖音翻頁(yè)翻頁(yè)筆總結(jié)

2023-01-04 18:50 作者:清月電子  | 我要投稿

一、功能簡(jiǎn)介

KT6368A藍(lán)牙芯片也是基于 HID 開(kāi)發(fā),主要用于瀏覽當(dāng)下火爆的抖音等小視頻的上下翻頁(yè)、左右菜單切換、暫停等操作。打開(kāi)手機(jī)藍(lán)牙進(jìn)行連接,進(jìn)入視頻瀏覽界面操作對(duì)應(yīng)按鍵即可。包含一個(gè)藍(lán)牙的指示燈,表示是否連接 。同時(shí)支持adkey按鍵,這個(gè)按鍵就可以根據(jù)需求來(lái)進(jìn)行裁剪。產(chǎn)品最終選用CR3032的電池,所以非常的在意功耗。

二、程序部分理解記錄

在 系 統(tǒng) 進(jìn) 行 初 始 化 的 過(guò) 程 中 , 根 據(jù) 以 下 信 息 進(jìn) 行 APP 注 冊(cè) 。 執(zhí) 行 的 大 致 流 程 為 :REGISTER_APPLICATION--->state_machine--->app_start()--->sys_key_event_enable();這條流程主要進(jìn)行

設(shè)備的初始化設(shè)置以及一些功能使能。

REGISTER_APPLICATION--->event_handler--->app_key_event_handler()--->app_key_deal_test();這 條流 程

在 event_handler 之下有多個(gè) case,上述選擇按鍵事件的處理流程進(jìn)行代碼流說(shuō)明,主要展示按鍵事件發(fā)生時(shí),程序的處理流程。


(2) APP 狀態(tài)機(jī)

狀態(tài)機(jī)有 create,start,pause,resume,stop,destory 狀態(tài),根據(jù)不同的狀態(tài)執(zhí)行對(duì)應(yīng)的分支。APP 注冊(cè)后進(jìn)行初始運(yùn)行,進(jìn)入 APP_STA_START 分支,開(kāi)始 APP 運(yùn)行。

1.? ? ?static int state_machine(struct application *app, enum app_state state, struct intent *it)

2.? ?{? ?switch (state) {

3.? ? ? case APP_STA_CREATE:

4.? ? ? ? break;

5.? ? ? case APP_STA_START:

6.? ? ? ? if (!it) {

7.break;? ? ? ? ?}

8.? ? ? ? switch (it->action) {

9.? ? ? ? case ACTION_TOUCHSCREEN:

10.? ? ?app_start();

進(jìn)入 app_start()函數(shù)后進(jìn)行對(duì)應(yīng)的初始化,時(shí)鐘初始化,模式選擇,低功耗初始化,以及外部事件使能。

1.? ?static void app_start()

2.? ?{

3.? ? ? log_info("=======================================");

4.? ? ? log_info("-----------------------------KEYPAGE------------------------");

5.? ? ? log_info("=======================================");

6.

? ? static int state_machine(struct application *app, enum app_state state, struct intent *it)

? ?{? ?switch (state) {

? ? ? case APP_STA_CREATE:

? ? ? ? break;

5.? ? ? case APP_STA_START:

6.? ? ? ? if (!it) {

7.? ? ? ? ? break;? ? ? ? ?}

8.? ? ? ? switch (it->action) {

9.? ? ? ? case ACTION_TOUCHSCREEN:

10.? ? ? app_start();

進(jìn)入 app_start()函數(shù)后進(jìn)行對(duì)應(yīng)的初始化,時(shí)鐘初始化,模式選擇,低功耗初始化,以及外部事件使能。

1.? ?static void app_start()

2.? ?{

3.? ? ? log_info("=======================================");

4.? ? ? log_info("-----------------------------KEYPAGE------------------------");

5.? ? ? log_info("=======================================");

6.


主體的還是以事件的形式進(jìn)行驅(qū)動(dòng),空閑時(shí)就睡眠,有按鍵或者藍(lán)牙協(xié)議棧的事件,則自己?jiǎn)拘讶缓笞龀鱿鄳?yīng)的動(dòng)作,如下是按鍵的動(dòng)作處理:


當(dāng) APP 注冊(cè)運(yùn)行后,有按鍵事件發(fā)生時(shí),會(huì)進(jìn)行對(duì)應(yīng)的數(shù)據(jù)發(fā)送,由于是 HID 設(shè)備,所以數(shù)據(jù)的發(fā)送形式從對(duì)應(yīng)的 HID 設(shè)備的描述符產(chǎn)生。用戶如需要對(duì)設(shè)備進(jìn)行功能自定義,可以結(jié)合 HID 官方文檔對(duì)下述描述符進(jìn)行修改。

暫停按鍵對(duì)應(yīng)的 HID 設(shè)備發(fā)送數(shù)據(jù)包,通過(guò)下圖的 hid_data_send_pt()進(jìn)行數(shù)據(jù)傳輸。

1.? ?log_info("point: %d,%d", point_cnt, point_len);

2.? ? ?if (point_cnt) {

3.? ? ? ? for (int cnt = 0; cnt < point_cnt; cnt++) {

4.? ? ? ?hid_data_send_pt(1, key_data, point_len);

5.? ? ? ? key_data += point_len;

6.? ? ? ?KEY_DELAY_TIME();

7.? ? ? ? }

8.? ? ?}

由描述符可知,設(shè)備一共有 5 個(gè)輸入實(shí)體 Input,一共組成 7byte 的數(shù)據(jù),所以對(duì)應(yīng)的暫停按鍵數(shù)據(jù)包由 7byte 的數(shù)據(jù)組成,前 2byte 表示識(shí)別是否有觸摸輸入,中間 2 個(gè) 2byte 分別表示 y 坐標(biāo)和x 坐標(biāo),最后 1byte 表示 contact count,不同的按鍵事件對(duì)應(yīng)不同的數(shù)據(jù)包,數(shù)據(jù)通過(guò) hid_data_send_dt

函數(shù)發(fā)送至設(shè)備。對(duì)應(yīng)的按鍵事件通過(guò)事件處理機(jī)制和數(shù)據(jù)發(fā)送實(shí)現(xiàn)對(duì)應(yīng)的功能。



三、實(shí)際開(kāi)發(fā)記錄--參數(shù)詳解

1、由藍(lán)牙芯片自己完成所有的事情,分兩個(gè)按鍵,一個(gè)按鍵短按開(kāi)機(jī),短按關(guān)機(jī) 。第二個(gè)IO口是外掛adkey

2、芯片的2腳LED,7腳【USB-DM】開(kāi)關(guān)機(jī)按鍵,8腳【USB-DP】外掛adkey ??臻e超過(guò)5分鐘就自動(dòng)關(guān)機(jī)

3、藍(lán)牙名:KT6368A-keypage


3.1 測(cè)試環(huán)境--KT6368A的測(cè)試demo板


1、采用3.3V供電,而不選擇用5V供電。直接進(jìn)去測(cè)試模塊的3.3V標(biāo)號(hào)

2、去掉原本測(cè)試板上面的ME6208A的LDO,因?yàn)樗矔?huì)產(chǎn)生功耗



3.2 功耗記錄 ---相對(duì)精度的電流測(cè)試儀器



3.3 實(shí)現(xiàn)的效果如下:

測(cè)試了抖音以及快手的相關(guān)app,實(shí)現(xiàn)上翻和下翻等等功能


基于KT6368A藍(lán)牙芯片開(kāi)發(fā)智能抖音翻頁(yè)翻頁(yè)筆總結(jié)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
阿鲁科尔沁旗| 天等县| 馆陶县| 斗六市| 灵川县| 咸阳市| 金昌市| 泉州市| 乐至县| 博野县| 鄂州市| 农安县| 邵东县| 高阳县| 玛多县| 莱阳市| 龙南县| 玛沁县| 措美县| 年辖:市辖区| 安陆市| 赞皇县| 北碚区| 南部县| 手游| 新巴尔虎右旗| 滕州市| 施秉县| 嘉善县| 葫芦岛市| 保亭| 隆安县| 德格县| 东山县| 新民市| 亳州市| 宣恩县| 武强县| 依兰县| 修水县| 红原县|