[原创] 【挑战Energia-ID0302A】 Energia详解

北方   2018-3-28 14:57 楼主
3.4 Energia的安装和使用
详见导引。这里有下载链接,最新版的18版本是直接解压就可以使用。使用launchpadG2553的Energia如下,
捕获.JPG
使用这个和arduino的区别,首先是pin map,各个引脚的定义需要查表和对照的,
LaunchPads-MSP430G2-—-Pins-Maps-13-42.jpeg
注意是从1-20都有定义的,和arduino的差别是比较大的。

3.5 基本概念和理解
首先需要理解电学和电子元件的原理,然后理解微处理器的构成,时钟,数字/模拟输入输出,PWM,传感器,内存等定义。
编程部分虽然比较简单,也要理解变量,函数,库,通讯协议等,不过其中的流程图部分就比较简单了。
在安装完和理解清楚后,就可以把10个大类的范例逐个读一遍,理解外设,还有wifi等。
因为语言和自然语言比较接近,即使不是很清楚编程,也是可以读出程序的逻辑和链路关系的。

3.6 程序开发详解
3.6.1 程序结构
Program Structure这两个是基本结构,已经讲述过了。



3.6.2 流程控制
Control Structures
虽然大的循环已经由Energia定义,但是实现功能所需要的分支判断和循环,还是要自己定义的。
3.6.3 标记和分隔符
Further Syntax  这里最重要的是分号,每句必须以分号结束。
其次是大括号,成对出现,标记每一个需要的程序段,你可以把括号里的当做一句语句来理解。


3.6.4 基本的运算和运算符号
Arithmetic Operators
  • = (assignment operator)
  • + (addition)
  •   (subtraction)
  • * (multiplication)
  • / (division)
  • % (modulo)

Comparison Operators
  • == (equal to)
  • != (not equal to)
  • < (less than)
  • > (greater than)
  • <= (less than or equal to)
  • >= (greater than or equal to)Boolean Operators
    Pointer Access Operators
    Bitwise Operators
    • & (bitwise and)
    • | (bitwise or)
    • ^ (bitwise xor)
    • ~ (bitwise not)
    • << (bitshift left)
    • >> (bitshift right)

    Compound Operators
    • ++ (increment)
    • (decrement)
    • += (compound addition)
    • -= (compound subtraction)
    • *= (compound multiplication)
    • /= (compound division)
    • &= (compound bitwise and)
    • |= (compound bitwise or)
这些符号和C++中的用法基本一致,也不用奇怪,因为底层的Energia就是用C++来写的,连语法都不变。
基本可以理解Energia就是在C++上的高级库。最初的原版arduino据说只用了3个月就开发出来了,这里arduino的逻辑设计就很重要。


3.6.5 数据类型
Constants
这是确定的常量。
Data Types对于数据类型之间的转换和变化,也有对应的语句

Conversion
Variable Scope & Qualifiers
Utilities

3.6.6 函数

Digital I/OAdvanced I/O
这个是高级的I/O接口,和中断等都联合起来,使用更方便。
Time
时间函数,都是从程序启动开始的时钟计数,然后转换成的时间格式。在使用的时候是没有方法计算语句所占用的时钟周期,这个是Energia的一个弱项,不过,如果你的计算是毫秒,哪怕是微秒,那么语句的时钟周期就可以不计了。
Math
Trigonometry
Random Numbers
Bits and Bytes
这些都是计算函数,也很好用。
3.6.7 中断函数
External Interrupts
Interrupts
这个扩展了Energia的应用,不过,可选的参数就没有那么丰富了。.
3.6.8 通讯函数
Communication
在众多的好用中,最好用的就是这些通讯函数。基本上不需要理解这些协议就可以直接使用。
如wifi的设置,直接定义基本变量,
char ssid[] = "energia";
char password[] = "launchpad";

然后启动就可以了。
WiFi.begin(ssid, password);
发出http 请求 GET,只需要
client.println("GET /hello.html HTTP/1.1");
就可以了。
3.6.9 充分理解这些程序后,只需要简单了解,就可以立刻上手,开始编程之旅。



此内容由EEWORLD论坛网友北方原创,如需转载或用于商业用途需征得作者同意并注明出处




回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复