假如有大兄弟使用HAL_KEY的按鍵超過了8個(gè),建議按照下面的方法。

之所以出現(xiàn)這個(gè)的原因就是key只定義到uint8,所以只能響應(yīng)8個(gè)按鍵。你得將他修改為uint16,主要修改的點(diǎn)

key.h文件

第一處

typedef void (*halKeyCBack_t) (uint16 keys, uint8 state);

第二處

typedef struct

{

? tmos_event_hdr_t hdr;

? uint8? state; // shift

? uint16? keys;? // keys

} keyChange_t;

第三處

void HalKeyCallback ( uint16 keys, uint8 state );


key.c

第一處

static uint16 halKeySavedKeys;? ? ?/* 保留按鍵最后的狀態(tài),用于查詢是否有鍵值變化 */

static uint16 KeyConfigFlag;? ? /* 按鍵是否配置標(biāo)志位 */

第二處

uint8 OnBoard_SendKeys( uint16 keys, uint8 state )

第三處

void HalKeyCallback ( uint16 keys, uint8 state )

第四處

uint8 HalKeyRead ( void )

{

? uint16 keys = 0;

第五處

void HAL_KeyPoll (void)

{

? uint16 keys = 0;

第六處

然后再是你的主程序邏輯文件

第一處

static void Peripheral_HandleKeys( uint8 shift, uint16 keys );

第二處

static void Peripheral_HandleKeys( uint8 shift, uint16 keys )


不錯(cuò)


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频