【cc2541历程】按键发送键值到APP端

xiaoxiao2021-02-27  359

一、简介

本文在工程SimpleBLEPeripheral的基础上,实现按键发送相应的键值到手机APP端.

二、开发平台

编译环境:IAR820.02 协议栈:BLE-CC254x-1.4.0 程序编辑器:Source Insight 3.5 APP:Smart 硬件平台:SmartRF开发板 三、编写声明 淘宝小店:https://item.taobao.com/item.htm?spm=a1z10.3-c-s.w4023-16306486995.5.hdKUUO&id=548576956486 四、实验前提 1)先实现以下历程: 【cc2541历程】按键:http://blog.csdn.net/wangjiawu7/article/details/71075395 五、相关电路 1)独立按键 2)五向按键 六、实验过程: 1)将simpleBLEPeripheral_HandleKeys函数(simpleBLEPeripheral.c)修改为: static void simpleBLEPeripheral_HandleKeys( uint8 shift, uint8 keys ) { (void)shift; // Intentionally unreferenced parameter uint8 SK_Keys = keys; HalLcdWriteStringValue( "key = 0x", keys, 16, HAL_LCD_LINE_2 ); // smartRF开发板上的S1 对应我们源码上的HAL_KEY_SW_6 if ( keys & HAL_KEY_SW_6 ) { HalLcdWriteString( "HAL_KEY_SW_6", HAL_LCD_LINE_3 ); } if ( keys & HAL_KEY_UP ) { HalLcdWriteString( "HAL_KEY_UP", HAL_LCD_LINE_3 ); } if ( keys & HAL_KEY_LEFT ) { HalLcdWriteString( "HAL_KEY_LEFT", HAL_LCD_LINE_3 ); } if ( keys & HAL_KEY_RIGHT ) { HalLcdWriteString( "HAL_KEY_RIGHT", HAL_LCD_LINE_3 ); } if ( keys & HAL_KEY_CENTER ) { HalLcdWriteString( "HAL_KEY_CENTER", HAL_LCD_LINE_3 ); } if ( keys & HAL_KEY_DOWN ) { HalLcdWriteString( "HAL_KEY_DOWN", HAL_LCD_LINE_3 ); } SK_SetParameter( SK_KEY_ATTR, sizeof ( uint8 ), &SK_Keys );//发送相应的键值 } 2)在SimpleBLEPeripheral_Init函数(simpleBLEPeripheral.c)添加: SK_AddService( GATT_ALL_SERVICES ); // Simple Keys Profile 3)添加相应的头文件(simpleBLEPeripheral.c)中: #include "simplekeys.h" 4)修改连接间隔时间,时间越短,接收数据越多 // Minimum connection interval (units of 1.25ms, 80=100ms) if automatic parameter update request is enabled #define DEFAULT_DESIRED_MIN_CONN_INTERVAL 8//80间隔时间 // Maximum connection interval (units of 1.25ms, 800=1000ms) if automatic parameter update request is enabled #define DEFAULT_DESIRED_MAX_CONN_INTERVAL 8//800间隔时间 5)设置IAR编译环境: 1、在IAR工程中的option选项 添加相应的keys文件路径: 设置IAR的option选项(protect->c/c++Compiler->preprocessor)添加 $PROJ_DIR$\..\..\Profiles\keys 2、相应的头文件simplekeys.h和simplekeys.c被隐藏了,在编译环境IAR中设置它们为显示,否则会编译出错。。 1)在编译环境右边的Workspace中选择PROFILES文件,下拉列表选择选择simplekeys.c(simplekeys.h同理). 接着右键选择option选项把左上角Exclude from buil 的勾去掉,然后选择确定。 3、编译无误,下载。连接APP,手机APP接收到了板子相应的键值。实验ok。

作者:爱已oО欠费

相关CC2541群:606444519

转载请注明原文地址: https://www.6miu.com/read-5087.html

最新回复(0)