查看: 693|回复: 0

【CypressBLE】4.远程点亮三色灯

[复制链接]
  • TA的每日心情
    奋斗
    2022-9-16 05:52
  • 签到天数: 1368 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2015-5-29 14:54:22 | 显示全部楼层 |阅读模式
    分享到:
    上一次通过编程已经把LED灯点亮了,不过那只是本地的,完全使用ARM的功能来控制。既然这个芯片主打功能是蓝牙,那么就要用远程的方式控制LED才算用到了主要功能。这次就来通过蓝牙远程连接,通过发送不同指令来控制各个LED的状态吧。
       
        和以前一样,也是只需要拖拖拉拉的配置就能完成大部分功能,代码量很少,快来体验下远程工程的实现。
        首先还是先启动PSoC Creator 3.1编辑环境,并且建立工程。这个操作和本地控制是一样的就不再重复了。
        打开工程后,同样熟悉的界面

       
        控制LED还是需要PinOut功能,从右边拖过来三个,分别对应RGB

       
        分别双击这三个Pin,为每一个IO口设置状态,和本地的设置方法是一样的

       
        关键的地方来了。因为需要使用蓝牙功能,那么蓝牙组件必不可少。同样从右边找到这个东西拖过来,后面就靠它来完成通讯了

       
        使用蓝牙组件之前需要做一些设置,先从最简单的开始,无任何加密等的限制,只为了方便联通。
        第一个Tab页里选择Find Me,可以通过其他设置找到这个蓝牙。比如手机、PC等,当然这里主要是为了让Debug板找到。还记得Debug板长的什么样子吗?

       
        第二个Tab里是整体设置的结果,没有需要设置的东西,所以跳过看第三个

       
        这个页里设置的东西比较多

       
        按照图片所示设置好


       
        最后一个设置,设置好后确定返回

       
        再来设置Pin和引脚的对应关系,这个设置和蓝牙的设置没有先后关系

       
        全部设置好后编译一下,自动生成所有需要的文件,Pin的、蓝牙的,方便调用

       
        编译通过,开始写代码。不要太懒,代码多少还是要写点的,不过不多,增加两个函数,一个是协议栈的事件,一个是接收到数据的事件。并且在接收到数据后进行处理,这里尽量不要做很耗时的操作。还有别忘了在main里添加一些初始化的代码

        代码写好好后重新编译,编译成功烧写到板子上,不再重复。
       
        接下来开始操作蓝牙另一边的东西,也就是Debug板,用于验证刚才的工程是否正确。
        将Debug板插入USB,等待驱动程序安装完毕,打开另一个软件,CySmart。程序启动后会弹出当前已连接的Debug板,如果这里没有显示出设备,请重新安装驱动程序等操作;如果显示为不支持的设备,一般是固件和软件不匹配造成的,升级到最新固件解决。

       
        选中后点击连接,出现主要的控制界面,在这里搜索可用的蓝牙设备

       
        所有搜到的设备在这里列出,如果找到其他的PC、手机之类的请忽略,根据刚才工程里设定的名称选择正确的设备

       
        连接成功可以跳转到这里,如果没有找到,请返回到刚才的工程看看是不是哪里设置或代码编写有错误,重新编译重新烧写

       
        点击探索所有的属性,支持的都会列在这里,找到0x000E这项选中,然后在右边的空白处输入工程中指定的关键字1、2、3等,点击Write

       
        如果全部工程都正确,这时就可以看到蓝牙板那边点亮熄灭LED了
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    手机版|小黑屋|与非网

    GMT+8, 2024-11-18 18:21 , Processed in 0.113204 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.