一个定制的可编程无线控制器的硬件评估:WiCard
2018年6月1日通过m .马赫迪k Kanan本文还探讨了方案设计和智能beplay体育下载不了可编程无线控制器的基本功能模块设计:WiCard。
本文将探讨设计元素,挑战,和功能的自beplay体育下载不了定义可编程无线控制器。WiCard这里有一个导游,单词的设计师。
WiCard我创建的是一个智能可编程无线控制器模块来支持各种各样的功能。而与JTAG模块可以被编程,我设计了它在空气(OTA)接收更新从本地计算机或一个中央服务器上。WiCard模块可以配置一个IDE,像Visual Basic,允许我“控制盒”与一个简单的拖放界面模块。本文还探讨了方案设计和我的beplay体育下载不了基本功能模块。
WiCard通过wi - fi连接到用户控制面板或应用程序,允许系统设计师来访问它的特性。我设计的模块不需要初始编程后一个JTAG的程序员。相反,WiCard模块可以离线编程模块的热点,或在线WiCard.Net帐户。这个模块的集成开发环境(IDE)像Visual Basic,我最舒服,GUI和代码生成可以在访问WiCard模拟器。
在模拟器上,我可以做一个控制箱的模块,并访问模块的控制箱模块热点(通过模块的无线访问点),该模块IP(通过端口转发),和WiCard.Net账户面板。
我创建模块以这样一种方式,它通过更新WiCard.Net服务器自动和组装需要案板,三个集成电路,各种无源元件。
部分 | 描述 | 更多的信息 |
---|---|---|
ATMega8A | 16兆赫单片机AVR家庭核心(PCI) | 数据表 |
ESP8266EX | 高速无线网络控制器和处理器与Xtensa核心 | 数据表 |
W25Q32F | 32位闪存固件 | 数据表 |
wi - fi核心控制wi - fi事务,读取闪存,并执行我的计划。一种总线标准核心控制外围组件。最初的JTAG程序员编程需要的地方标准。为简单起见,我设计了所有后续固件升级发生无线通过WiCard无线(OTA)升级过程。
Xtensa核心使用外部26 MHz晶体振荡器和AVR的核心有一个内部配置。
WiCard模块和销配置
WiCard模块有30针,包括两个3.3 V电流,接地,22 GPIOs 3状态led,保留一个销为未来的特性。针分为两个15针。我可以把这个模块的中心试验板,用它来我的不同的实验。
模块有一个50Ω天线位于底部的PCB。
销的配置
下图概述我的WiCard销配置模块。
关于示意图
我的目标在设计WiCard模块是尽可能简单。最后,我把它所以ESP8266EX连接到W25Q32 ATMega8A,和ATMega8A单片机连接到销头。
WiCard模块原理图。点击放大。
我的原理图中使用的电阻和电容值测试,所以我推荐这些值。然而,我已经设计好了所以改变组件的值和足迹可以自定义PCB布局或简化生产过程。
C5和L1形成天线的匹配网络,将不同布局布局。基于芯片的阻抗(39 + 6 j)Ω,C5的电容值= 0.7 pF和一个电感L1的价值= 1 nH提供1:1的理论电压驻波比(0%反射损失)。单个5-10pF串联电容器(电感完全省略),提供了一种电压驻波比为1.34:1(~ 2%反射损失)。我最初实验的目的,我确保单个电容器充分天线和芯片之间的阻抗匹配,允许98%的芯片的功率转移到天线。
在生产环境中,C5和L1与网络分析仪测定实验和应用到所有相同的董事会。
PCB布局
我下面所示的PCB组装0603 -大小的组件。对于生产,我使用0402 - 12 kΩ电阻大小的去耦电容C8,制备过程、C10,和C11可以放置接近ICs。
机载天线我选择了是扑鼻Inverted-F天线(MIFA)(PDF)。我选择这个天线,因为它被设计为2.4 GHz信号与150 - 250 MHz带宽范围在20毫升(0.5 - -1.6毫米)厚,双面的多氯联苯。当我测试了机载天线的工作距离这个模块,我到达170英尺(50米)。
这张照片显示的总体布局的上部WiCard模块。
固件和Flash编程
组装PCB上的部分后,我最初的固件编程上的两个核心,确保程序前的ESP8266EX ATMega8A。
编程的ESP8266EX
我跟着ESP8266EX编程的标准步骤,这是与USB-to-UART转换器ESP Flash下载工具,并使用以下连接:
销/测试点 | 连接到 |
---|---|
去往B15 | 3.3 v Vcc |
B14 | 接地 |
TP1 | ESP Tx (COM端口RX) |
TP2 | ESP Rx (COM端口TX) |
TP3 | 220Ω下拉(地面) |
TP4 | 220Ω拉电阻器(+ 3.3 v) |
有两种方法编程模块的固件:WiCard-specific程序员我创建或一个标准USB-to-UART程序员,等FT232RL FTDI TTL串行适配器。
这近距离显示了测试点连接的初始编程WiCard模块。
ESP Flash下载工具截图显示我建议设置编程芯片。
我提供了所有必要的. zip中的文件在本文的结尾,也让他们从WiCard的访问试用页面。
固件ESP8266EX包括6文件:
- ESP8266EX_0x000000:必须复制在地址0 x0 32 mbit闪存。这个文件包含了一些最初的系统设置。
- ESP8266EX_0x001000:必须复制在地址0 x1000 32 mbit闪存。这个文件包括固件程序数据。
- ESP8266EX_0x0FE000:必须复制在地址0 xfe000 32 mbit闪存。这是一个4 kb空白文件系统设置。
- ESP8266EX_0x300000:应该复制在地址0 x300000 32 mbit闪存。这个文件包括内部网页数据。
- ESP8266EX_0x3FC000:应该复制在地址0 x3fc000 32 mbit闪存。这个文件包含了一些初始无线/无线设置。
- ESP8266EX_0x3FE000:应该复制在地址0 x3fe000 32 mbit闪存。这是一个空白的文件系统设置。
编程的ATMega8A
ATMega8A编程时,我知道我可以使用SPI程序员或者一个高电压的程序员(并行编程模式)。对于SPI模式,我把针根据下表:
A1 | 5 v Vcc |
A2 | 接地 |
A6 | 莫西人 |
A7 | 味噌 |
A8 | SCK |
A9 | XTAL1 |
A10 | 重置# |
我没有连接其他别针。我设置了“融合高字节”0 xd8 0 xa4“融合低字节”,和“锁位字节0 xfc - SPI的所有必要的设置程序正确。SPI编程需要拉销A10(如10 kΩ)在使用的模块。
编程模块高压模式不同于编程SPI模式。对高电压模式(并行编程模式),我把针如下所示:
A1 | 5 v Vcc |
A2 | 接地 |
A3 | 数据0 |
A4 | 数据1 |
A5 | 数据2 |
A6 | 数据3 |
A7 | 数据4 |
A8 | 数据5 |
A9 | XTAL1 |
A10 | 重置# |
B3 | BS2 |
B4 | 数据7 |
B5 | 数据6 |
B6 | 由此 |
B7 | 最后 |
B8 | XA0 |
B9 | BS1 |
B10 | 或者说是# |
B11 | OE # |
垫B | RDY / BSY # |
再一次,我没有连接其他别针。我发现C7、C8 C9, C10以某种方式干扰高压程序员和需要安装在最初的flash编程过程。
我设置了“融合高字节”0 x78 0 xa4“融合低字节”,和“锁位字节0 xfc。没有需要使用一个上拉电阻A10-this销作为一个正常的输入工作。
我设计的WiCard这样编程的ATMega8A高压模式允许注册的新模块WiCard.Net服务器和服务器访问。或者,如果用户决定去SPI编程模式的路线,我让它升级模块在空气和使用所有的试验特性除非任何关于销A10,如PCInt 7。
电路使用
很重要我确保WiCard模块适用于工业无线控制、物联网设备、家用电器、家庭自动化、安全系统、智能插座和灯,红外遥控控制器、传感器网络。这使得用户可控的产品将这个模块添加到现有的电路,从而控制各种设备通过计算机或智能手机。
编程和使用这个模块只需要一个稳定的3.3 V电源和兼容的无线网络的笔记本电脑,电脑或手机。WiCard IDE软件仍然是一个进展中的工作。现在,如果你有兴趣给模块一试,你可以使用模拟器页面随着模块的编译器。
模拟器上的页面,有一个编译器,控制箱制造商与一些可视化工具,和一个WiCard模拟器。一个图形用户界面允许编程不学习底层language-simply拖动物品到控制箱,通过双击编辑销项。
我的程序可以在调试模式下进行编译,它允许重新编程的模块,并释放模式,这需要一个密码解锁和程序模块。我还可以使用模块作为一个产品控制器(通常为公共产品)。控制器的产品,我只是需要编译在发布模式下,用户无法编辑或删除我的任何其他现有项目。
这是编程选项:
- 使用一个WiCard.Net账户
- 上传程序通过模块IP(端口转发)
- 上传程序通过路由器IP(线下)
- 通过IP地址192.168.4.1上传程序(使用模块wi - fi热点来创建一个自组网)
- 导出程序文件并上传模块通过模块内部托管服务器页面
上传程序后,该模块将自动执行和运行程序,和控制箱中都提供了WiCard.Net账户面板和模块的内部页面。注册模块和创建一个帐户WiCard.Net服务器没有必要使用和编程模块。帐户只提供服务器访问和一些额外的特性。免费版本的模块不会连接到服务器,除非固件更新按钮被点击模块内部页面,从而检查最新的免费软件版本更新。如果你决定连接到服务器,默认密码为“0123456789”。
示例项目
我的示例项目的原理很简单。针A1和去往B15一直连接到3.3 V VCC,和固定针A2和B14已经连接到接地。销A3(端口位0)被连接到一个LED系列470Ω电阻。
编译器会自动生成源代码。下面的视频展示了WiCard在行动。
结论
总的来说,我和我的团队创造了WiCard为了让产品智能、可控,wi - fi兼容。我相信对初学者很容易使用,同时提供一个广泛的功能为专业系统设计师。你需要一个程序员不知道如何编写和上传一个程序,因为用户友好的GUI生成所需的代码。
酷。
在线旅行社将是一个很棒的考虑。
你们卖董事会的地方吗?
现在看起来像模拟器:https://wicard.net/simulator/