【挑战Energia-ID0401A】 4 Energia开发
[复制链接]
4 Energia开发4.1 Energia的开发首先要进行功能设计。这个也是创意设计的阶段,根据需要,确定需要实现哪些功能。
从目前的功能,应该包括输入和输出部分。
输入部分,包括输入的控制信号,输入的外部变化参数,外部的通讯信号。这个输入,都要转换为电压或者电流的变化量,体现变化。变化量可以是数字量,这样需要对数字量编码,如常见的LED等亮设为1,灭设为0,当然也可以定义为其他数据;还可以是模拟量,如采样的电流值。
输出部分,输出数字模拟量,或者通信信号,如串行数据通信。
在确定了输入输出后,就可以设计实现的逻辑的,如何使这些逻辑执行起来。最简单的是亮灯,按开关就亮,再按一下就灭。
4.2 在功能设计完成后,要把功能转换为硬件设备的功能,并选择端口位置。如选择LED量灭,那么就可以选择MCU的DigitalWrite功能,对应DigitalWrite语句,需要查PinMap,选择是那个引脚实现,软件写入引脚,同时把LED的控制信号也连接在这个引脚上,实现软件和硬件的连接。需要选择的电流输入,其实都是转换成电压量的,这个也是需要考虑的。
这个过程,是需要对不同的硬件进行手册和资料的阅读,这样就可以知道自己需要提供几个引脚,是否硬件能够满足要求等。对于通讯,虽然Energia实现了封装和使用的方便性,可以在不理解协议的基础上完成开发,但是,对于协议的学习和框架的理解在开发阶段也是非常重要的。
4.3 就是程序开发阶段。按照程序流程图的方式,把输入输出都实现。从目前看,Energia仍然是只能对I/O进行操作,实现基本的自动化控制的底层功能,如果需要处理图形,图像,声音等数据流或者更大的输入量和计算量,Energia和Arduino一样,都是需要依赖外部的算力,如云端计算,DSP,FPGA等辅助实现。
4.4 硬件设计。在软件实现功能后,就是要硬件设计,选择合适的硬件,匹配包括电压电流等电气参数,和外形尺寸设计。同时在硬件设计中,还有电源部分需要仔细考虑,包括功率等多种参数。包括树莓派早期产品,在输出功率不足的情况下,接外接硬盘会导致自动重启就是硬件有缺陷,而硬件使用没有考虑的结果。
4.5 完成设计后就是综合调试的工作,调试成功,后还有考虑是否有优化的部分。这样才能完成完整的项目。
此内容由EEWORLD论坛网友北方原创,如需转载或用于商业用途需征得作者同意并注明出处
|