查看: 4217|回复: 3

[原创] 【KL27 mini Board 开发】+蓝牙控制KL27 led

[复制链接]
  • TA的每日心情
    奋斗
    2025-5-7 09:07
  • 签到天数: 353 天

    连续签到: 1 天

    [LV.8]以坛为家I

    141

    主题

    8056

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5785
    最后登录
    2025-5-7
    发表于 2016-4-5 11:19:34 | 显示全部楼层 |阅读模式
    本帖最后由 wambob 于 2016-4-5 14:00 编辑

    一:透传蓝牙模块的傻瓜式体验
    硬件准备:                           1. HC-05 主从机一体无线蓝牙串口透传模块
           2 USB转串口或带虚拟串口的ST-Link等。
           3.KL27 mini 板
    软件:
            1.串口助手
            2. 蓝牙串口助手
    目的:在AT模式下修改串口波特率,使用蓝牙串口发送数据测试模块,然后控制KL27
            模块原理图:
    111.JPG
    连线:硬件1:VCC、GND、RX、TX--->硬件2:VCC、GND、TX、RX
    上电后,按住原理图上S1对应模块的按键,发送查询命令AT+UART?,我已经改为115200,1停止位,无校验了
    222.JPG
    蓝牙APP发送数据 Screenshot_2016-04-04-22-40-50.png
    串口助手显示
    333.JPG
    二:KL27 板与蓝牙模块的通讯
    是用手机APP端控制KL27板上的小灯。中断接收使用例程UART-echo稍作修改
    主代码
    1. #include <stdio.h>
    2. #include <string.h>

    3. #include "common.h"
    4. #include "lpuart.h"
    5. #include <stdio.h>

    6. #include "gpio.h"
    7. #include "dma.h"


    8. #define LED0_PORT   HW_GPIOC
    9. #define LED0_PIN    3
    10. #define LED1_PORT   HW_GPIOA
    11. #define LED1_PIN    1
    12. #define LED2_PORT   HW_GPIOE
    13. #define LED2_PIN    0
    14. #define LED3_PORT   HW_GPIOA
    15. #define LED3_PIN    2
    16. int main(void)
    17. {
    18.     int i, ret;
    19.     DelayInit();
    20.     GPIO_QuickInit(LED0_PORT, LED0_PIN, kGPIO_Mode_OPP);
    21.     GPIO_QuickInit(LED1_PORT, LED1_PIN, kGPIO_Mode_OPP);
    22.     GPIO_QuickInit(LED2_PORT, LED2_PIN, kGPIO_Mode_OPP);
    23. GPIO_QuickInit(LED3_PORT, LED3_PIN, kGPIO_Mode_OPP);
    24.     /* UART */
    25.     LPUART_QuickInit(LPUART1_RX_A18_TX_A19, 115200);
    26.     LPUART_ITDMAConfig(HW_LPUART1, kUART_IT_Rx, true);
    27.     printf("UART echo start!\r\n");
    28.     while(1)
    29.     {

    30.     }
    31. }

    32. void LPUART1_IRQHandler(void)
    33. {
    34.     uint8_t ch;
    35.     LPUART_ReadByte(HW_LPUART1, &ch);
    36.     printf("%c", ch);
    37.     switch(ch)
    38.             { case 0x30: GPIO_ToggleBit(LED0_PORT, LED0_PIN);break;
    39.                 case 0x31: GPIO_ToggleBit(LED1_PORT, LED1_PIN);break;
    40.                 case 0x32: GPIO_ToggleBit(LED2_PORT, LED2_PIN);break;
    复制代码
    1. default: break;}
    2.    DelayMs(100);
    3. }
    复制代码


    需要注意的是,能够识别的是一个ASCII码,0的ASCII是0x30.如果需要深一步学习,需要写串口协议了

    评分

    参与人数 1NXP金币 +20 收起 理由
    小七 + 20 赞一个!

    查看全部评分

    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-1-12 00:23
  • 签到天数: 745 天

    连续签到: 1 天

    [LV.9]以坛为家II

    27

    主题

    1万

    帖子

    26

    金牌会员

    Rank: 6Rank: 6

    积分
    6868
    最后登录
    2020-7-15
    发表于 2016-4-5 12:09:18 | 显示全部楼层
    不错,学习了!
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-2-15 00:12
  • 签到天数: 969 天

    连续签到: 1 天

    [LV.10]以坛为家III

    175

    主题

    2843

    帖子

    34

    金牌会员

    Rank: 6Rank: 6

    积分
    7123
    最后登录
    2023-4-20
    发表于 2016-4-5 15:56:59 | 显示全部楼层
    不错,学习了!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2021-4-15 09:17
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    2

    主题

    219

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    445
    最后登录
    2024-8-28
    发表于 2016-4-22 18:37:03 | 显示全部楼层
    学习了 有APP不错
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-19 19:46 , Processed in 0.095513 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表