本文介绍了 RA-Eco-RA6M4-100PIN-V1.0 开发板结合 DA16200 无线WiFi模块实现网络通信、数据上传和远程控制 LED 的项目设计。包括 DA16200 模块介绍、工程创建、调试、代码测试等。
https://bbs.elecfans.com/jishu_2496874_1_1.html
前言
瑞萨 U159-DA16200MEVZ DA16200 PMOD 板为配备 PMOD 扩展功能的套件或 MCU 板添加Wi-Fi功能。
该板为板载 Wi-Fi 模块提供标准 PMOD Type 3A(扩展UART)连接。
US159-DA16200MEVZ 设有 Type 3A PMOD 连接器,并集成了基于 DA16200 SoC 的 DA16200MOD 模块。
一、硬件连接
Type-C 数据线接串口并供电;
J-Link 连接 SWD 调试接口;
DA16200 模块连接 PMOD1 接口;
二、工程创建
打开 e^2^ studio 软件;
依次点击 文件 - 新建 - 瑞萨 C/C++ 项目 - Renesas RA ;
依次进行工程命名,路径设置,FSP版本,目标开发板选择,Device 选择 R7FA6M4AF3CFP ,工具链选择 GNU ARM Embedded ,调试器选择 J-Link 或 E2 Lite (ARM) ;
完成工程创建后,编译工程,确保 0 报错,0 警告 ;
三、工程配置
由开发板 PMOD1 引脚定义可知,串口号为 UART5,因此进入 FSP 配置界面,打开 Pins 标签页,选中串口引脚 P501 和 P502 并分别配置为 TXD5 和 RXD5 ;
配置外部中断:板载按钮 SW1 对应的引脚 P410 为 IRQ 模式,并在 Stacks 标签下添加对应的堆栈,并配置属性参数;
配置定时器,Pins 标签下配置引脚 P214 为 AGTO5;添加低功耗定时器堆栈,进行参数配置;
配置完成后,点击 Generate Project Content 按钮,生成工程代码。
四、工程代码
1) 打开 src/hal_entry.c 文件,添加如下代码:
#include"hal_data.h"#include"dialog_wifi_demo.h"#include"common_utils.h"
FSP_CPP_HEADERvoidR_BSP_WarmStart(bsp_warm_start_event_tevent);FSP_CPP_FOOTER
voidhal_entry(void){ /*TODO:add your own code here */
fsp_pack_version_tversion = {RESET_VALUE};
/* Version get API for FLEX pack information */ R_FSP_VersionGet(&version);
/* Example Project information printed on the Console */ APP_PRINT(BANNER_1); APP_PRINT(BANNER_2); APP_PRINT(BANNER_3,EP_VERSION); //APP_PRINT(BANNER_4,version.major, version.minor, version.patch); APP_PRINT(BANNER_4); APP_PRINT(BANNER_5); APP_PRINT(BANNER_6);
dialog_wifi_demo();#ifBSP_TZ_SECURE_BUILD /* Enter non-secure code */ R_BSP_NonSecureEnter();#endif}
2) 添加 Demo 例程中的 da16200_AT.c/h 文件至 src 文件夹,并修改 IP 地址
/* Set Country Code */ [ DA16200_AT_CMD_INDEX_AT_WFSAP] = { .p_cmd = (uint8_t*)"AT+WFSAP=Renesas_Wifi,3,1,12345678,1,CH\r\n", .p_success_resp = (uint8_t*)"OK", .max_resp_length = DA16200_STR_LEN_128, .retry = DA16200_RETRY_VALUE_5, .retry_delay = DA16200_DELAY_200MS },/* Set IP */ [ DA16200_AT_CMD_INDEX_AT_NWIP] = { .p_cmd = (uint8_t*)"AT+NWIP=1,192.168.8.1,255.255.255.0,192.168.8.1\r\n", .p_success_resp = (uint8_t*)"OK", .max_resp_length = DA16200_STR_LEN_64, .retry = DA16200_RETRY_VALUE_5, .retry_delay = DA16200_DELAY_1000MS },
3) 添加 Demo 例程中的 dialog_wifi_demo.c/h 文件至 src 文件夹,并修改 LED 引脚定义,注释 hs3001.h 相关代码
#ifndefDIALOG_WIFI_DEMO_H_#defineDIALOG_WIFI_DEMO_H_#include"hal_data.h"//#include "hs3001.h"/* Definition */#defineLED BSP_IO_PORT_02_PIN_14#defineBUTTON BSP_IO_PORT_00_PIN_05
/* structure */typedefstructdemo_data{ //hs3001_data_t hs3001_data; uint16_tkey_count; uint8_t led_blink_flag; uint16_tled_blink_count;
}demo_data_t;
/* External variable */externdemo_data_tg_demo_data;/* Subroutine */voiddialog_wifi_demo(void);
#endif/* DIALOG_WIFI_DEMO_H_ */
4) 添加 Demo 例程中的 http_server.c/h 文件至 src 文件夹,注释 hs3001.h 相关代码
#include"http_server.h"#include"da16200_AT.h"//#include "hs3001.h"#include"dialog_wifi_demo.h"#include#include
void http_update(uint8_t* http_ippt){ uint16_tlen; memset(user_buffer,0,2048); //hs3001_read(&g_demo_data.hs3001_data); sprintf((char*)user_buffer,(char*)my_get_contents_updated,(uint16_t)25,(uint16_t)56,g_demo_data.key_count);
len = (uint16_t)strlen((char*)user_buffer); sprintf((char*)temp_buffer,"HTTP/1.1 200 \r\nContent-Length: %d\r\nContent-Type: text/html\r\n\r\n", len);
http_server_send(http_ippt,temp_buffer, (uint16_t)strlen((char*)temp_buffer)); R_BSP_SoftwareDelay(50,BSP_DELAY_UNITS_MILLISECONDS); http_server_send(http_ippt,user_buffer, len); R_BSP_SoftwareDelay(200,BSP_DELAY_UNITS_MILLISECONDS);}
5) 添加 SEGGER_RTT 文件夹和 common_utils.h 文件至 src 文件夹。
6) 重新构建工程,确认无误后,调试并上传固件至开发板。
五、工程测试
1) 打开手机或电脑 WiFi ,扫描设备并连接 DA16200 模块对应的 HTTP 服务器
2) 浏览器输入网址 http://192.168.8.1/index.html 进入网页服务器页面
通过按钮可实现 LED 远程控制,并统计按钮 SW1 按下的次数。
六、总结
本文介绍了 RA-Eco-RA6M4-100PIN-V1.0 开发板结合 DA16200 无线WiFi模块实现网络通信、数据上传和远程控制 LED 的项目设计。包括 DA16200 模块介绍、工程创建、调试、代码测试等,为 Renesas 系列产品在物联网领域的开发设计和应用提供了参考。
声明:本文由电子发烧友社区发布,转载请注明以上来源。如需平台(包括:试用+专栏+企业号+学院+技术直播+共建社区)合作及入群交流,请咨询18925255684(微信同号:elecfans123),谢谢!
-
无线通信
+关注
关注
58文章
4772浏览量
145406 -
开发板
+关注
关注
25文章
5769浏览量
106426 -
RA6M4
+关注
关注
0文章
52浏览量
746
发布评论请先 登录
【RA-Eco-RA6M4开发板评测】——2.串口打印
【RA-Eco-RA6M4开发板评测】+初识篇
【RA-Eco-RA6M4开发板评测】+01+开箱测评+UART+PWM+LED
【RA-Eco-RA6M4开发板评测】uart调试二三事
【RA-Eco-RA6M4开发板评测】1、开发环境搭建和串口打印信息
【RA-Eco-RA6M4开发板评测】介绍、环境搭建、工程测试
【RA-Eco-RA6M4开发板评测】ADC 电压表
【RA-Eco-RA6M4开发板评测】——8.获取RA6M4开发板芯片内部温度传感器值
【RA-Eco-RA6M4开发板评测】DA16200 无线通信
【RA-Eco-RA6M4开发板评测】移植LVGL
RA-Eco-RA4M2-100PIN开发板
【 RA4M2 设计挑战赛 】RA4M2_ECO开发板Rthhread开发环境串口通信配置
【有奖试用14期】RA-Eco-RA4M2-100PIN开发板
活动 | RA生态工作室 & 电子发烧友RA4M2开发板试用活动来袭!!

评论