LinkIt Smart 7688 运行的是openWrt,支持 C/C++、python以及JavaScript(Node.js)。
7688 开发架构图如下:
以上大致看了一下 LinkIt 7688 整体的软硬件架构,以及开发的语言。
本文,先介绍一下用python开发Application。
LinkIt 7688 的openWrt操作系统中已经预装了python程序,
可以简单的进行开发,通过编写python 脚本。
在/IoT/examples 目录下,有一个写好的python 脚本,控制LED闪烁。
import mraa
import time
x = mraa.Gpio(44) // 初始化 IO 口
x.dir(mraa.DIR_OUT) //设置为输出
while True:
x.write(1) //输出高电平
time.sleep(0.2) //延时 0.2 s
x.write(0) // 输出低电平。
time.sleep(0.2)
上面的程序是使用的Libmraa 进行的开发,再LinkIt 7688 的镜像中预装了 Mraa 库文件。
import mraa
print (mraa.getVersion())
上面的代码可以常看 mraa 的版本。
关于Mara 的API 可以参考这里(http://iotdk.intel.com/docs/master/mraa/python/mraa.html).
GPIO, UART, SPI, and PWM 等这些简单的模块在mara 中有相应的函数。
一个简单的PWM 使用范例:
import mraa
pin = mraa.Pwm(18) # initialize on GPIO18 (pin P26)
pin.period_ms(2)
pin.enable(True)
pin.write(0.25)
# set PWM frequency to 500Hz (2ms period) # enable PWM output
# set duty cycle to 25%
IIC 使用范例:
import mraa
i2c = mraa.I2c(0)
# Grove - 3-Axis Digital Accelerometer(+-16g) # is a ADXL345 configured to I2C address 0x53. i2c.address(0x53)
# The device ID should be
if 0xE5 == i2c.readReg(0x00):
print "Grove - 3-Axis Digital Accelerometer found on I2C Bus" else:
print "Grove - 3-Axis Digital Accelerometer not found"
|