项目描述
这个教程会告诉你如如何将 mbed LPC114FN28连入AXEDA服务,实现物联网!
mbed LPC1114FN28
合作平台: Switch-Science
mbed LPC1114FN28需要运行在48MHz的CPU主频下。LPC1114FN28拥有高达32KB的Flash存储空间,高达4KB的数据存储空间,一个快变模态I2C总线接口,一个RS-485/EIA-485 UART接口,一个带SSP的SPI接口,4个通用计数器/定时器,一个10位的ADC,还有22个通用I/O引脚。
注意:由于flash的大小限制,LPC1114FN28不支持RTOS。请不要把mbed-rtos库引入你的工程。
mbed LPC1114FN28已经非常限制了存储空间,而且无网络连接。另外,LPC114EN28不支持RTOS及以太网接口。
如果你先要把这个板子连接到AXEDA(一个物联网云服务),我们怎么办呢?
答案就是WIZ550io。
WIZ550io 是一个自动配置的以太网控制器模块,包含一个W5500(嵌入全硬件TCP/IP芯片TCP/IP及PHY),一个变压器及RJ45。支持SPI(主接口)。因此,即使主系统没有以太网接口或者TCP/IP软件协议栈(包含在RTOS中),主系统也可以轻松连接到网络。
http://developer.mbed.org/components/WIZ550io/
软件连接:mbed LPC1114FN28 + WIZ550io
- WIZ550io: 以太网连接
引脚名称 | LPC1114FN28 | 方向 | WIZ550io |
miso | dp1 | J1:3 | |
sck | dp6 | —> | J1:5 |
scs | dp26 | —> | J1:6 |
RSTn | dp25 | —> | J2:3 |
- 电位计:
引脚名称 | LPC1114FN28 | 方向 | 电位计 |
AnalogIn | dp13 | <— | 2(OUT) |
软件 – AxedaGo-mbedNXP + W5500Interface
1. 进入AxedaGo-mbedNXT
- 点击并进入这个程序 : AxedaGo-mbedNXP
- 将平台变为mbed LPC1114FN28。已经为LPC1768做了软件。因为我们要使用LPC1114FN28,所以你必须在编译器中选择LPC1114EN28。
2. 在AxedaGo-mbedNXP_WIZ550io上删除以太网及mbed-rtos接口
3. 入口W5500接口
- 点击并进入这个程序:W5500接口
4. 移植 main.cc: 用于WIZ550io,以太网接口初始化。需要做以下更改:
#if defined(TARGET_LPC1114)
SPI spi(dp2, dp1, dp6); // mosi, miso, sclk
EthernetInterface eth(&spi, dp25, dp26); // spi, cs, reset
AnalogIn pot1(dp13);
#else
EthernetInterface eth;
AnalogIn pot1(p19);
AnalogIn pot2(p20);
#endif
* AnalogIn端口也应该根据平台类型进行配置。
AXEDA
1. 参考:用于mbed NXP LPC1768原型版的Axeda Go套件/网站链接:
http://developer.axeda.com/Instructions/axeda-go-kit-mbed-NXP-LPC176
2. Axeda上的仪表盘
- 点击”AXEDA READY”
- 选择mbed LPC1768并键入设备名称
- 复制串口号
- 在代码中输入串口号(main.cc)
1 |
char *SERIAL_NUM = “SerialNumber”; |
尽享 LPC1114FN24 + WIZ550io在AXEDA的乐趣
点击页面顶部“编译”按钮并在你的平台上下载.bin文件
- 串口终端日志:检查你的DHCP IP地址,电位计值,通过串口终端发送调试信息。
initializing Ethernet
- Ethernet ready
Ethernet.connecting
- connecting returned 0
Trying to get IP address..
- IP address:192.168.13.53 //<— DHCP IP address
Sending Value for well1 0.00 //<— Potentiometer value
Received 36 chars from server: //sending message
HTTP/1.1 200
Content-Lengtved 36 chars from server:
HTTP/1.1 200
Content-Length: 0
Sending Value for well1 0.14 //<— Potentiometer value
Received 36 chars from server: //sending message
HTTP/1.1 200
Content-Length: 0
Sending Value for well1 0.27
Received 36 chars from server:
HTTP/1.1 200
Content-Length: 0
Sending Value for well1 0.29
Received 36 chars from server:
HTTP/1.1 200
Content-Length: 0<span style=”font-family: Georgia, ‘Times New Roman’, ‘Bitstream Charter’, Times, serif; font-size: 16px; line-height: 1.5; background-color: #ffffff;”>
</span>
- Axeda开发工具箱:你的mbed现在已经连接到了Axeda工具箱账户下。
- 在你的仪表盘中打开mbed小工具
- 在数据项中,可以通过线图来检查来自LPC1114FN24 + WIZ550io的电位器值。
LPC1768及mbed LPC1114FN28 在Axeda上的比较
如上图所示,LPC1768(使用RTOS)占用了66.8KB大小的Flash空间。是LPC1114 & WIZ550io占用20.8KB的两倍还多。
获取代码
http://developer.mbed.org/users/embeddist/code/AxedaGo-mbedNXP_WIZ550io/