社区导航

 

搜索
查看: 445|回复: 2

[分享] 【ATmega4809 Curiosity Nano测评】Wifi控灯(IoT Led后篇)

[复制链接]

45

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-10-30 22:31 | 显示全部楼层 |阅读模式

1. 简介

在前篇中,按照IoT设备的系统框图,我们完成了除通讯协议与通讯模块以外的IoT LED的功能(下图绿色部分),实现了一个可以用按键和UART控制的小型“照明设备”。本篇将结合Wifi模块和通讯协议实现IoT功能。

image.png

 

2. 通讯协议与通讯模块

通讯协议使用的是BP-SBP-S协议是BP协议的串口(Serial)辅助协议,旨在降低BP协议函数库对芯片的负载,从而使像C51、ATTiny之类的8位芯片也有能力实现。

通讯模块使用的是蜂信的BC2310BC2310是基于乐鑫官方WIFI模块ESP-WROOM-02(搭载ESP8266EX)的一款最小系统开发板,使用原生SDK开发,旨在充分展示和利用ESP8266EX的自身硬件资源。

 

3. 系统设计

基于前篇的内容,本文将在ATMega4809中集成BPS协议,然后在BC2310中烧录官方例程,激活信号0xE002作为LED信号。关于BC2310的程序部分,此处不做赘述,具体参考蜂信官网。以下我们将详述ATMega4809的代码部分。

image.png

4. 软件配置

(1)在前篇中MCC配置的基础上,使能TC0的通道1中断,该中断主要用于实现软件定时器。

image.png

(2)移植libbps函数库,定义宏BPS_CPU8支持8位CPU,定义宏BPS_USE_STD使用标准库使BPS库更高效。

image.png

(3)softTimer_XXX为软件定时器API,支持最多3个定时器,本工程只用了1个,其超时回调函数为

void bpsTimeoutCb(void *argv, BPS_UINT16 argc)

{

    setNetState(BPS_FALSE);

}

用于记录BPS通信超时。软件定时器内容主要参考自

https://blog.csdn.net/qq_26904271/article/details/83833168。

 

5. 结果演示

APP可以远程控制LED,ATMega4809按键信息也可以同步上传到APP。

最后附上工程压缩包。

 

繁絮至此,但求明细。

 

 

此帖出自单片机论坛

remoteLed.X.zip

542.09 KB, 下载次数: 1

IoTLed工程



回复

使用道具 举报

1786

TA的帖子

1

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

发表于 2019-10-31 09:03 | 显示全部楼层

可以可以,花式点灯,越点越有姿势。

点评

见笑见笑,捣腾着玩罢了  详情 回复 发表于 2019-10-31 21:19
人已离开,无事别找,找也找不到。


回复

使用道具 举报

45

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-10-31 21:19 | 显示全部楼层
freebsder 发表于 2019-10-31 09:03 可以可以,花式点灯,越点越有姿势。

见笑见笑,捣腾着玩罢了



回复

使用道具 举报

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

关闭

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

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2019-11-16 09:13 , Processed in 0.127704 second(s), 19 queries , Gzip On, MemCache On.

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