都说搞嵌入式不如搞互联网,工资高,前途好,很光鲜!嵌入式呢不管是单片机还是嵌入式Linux,永远都是在默默地藏在幕后,低调得令人发指。就像是如火如荼的Android上,嵌入式也就搞搞驱动,搞一搞BSP,吃力却并不讨好。
相比直接使用高级语言,学习嵌入式更容易理解从芯片到产品产生的过程,今天呢阿圆就带大家撩一撩现在火得不行的JavaScript(好像现在在前端大家也不直接写JavaScript了,开始写TypeScript,阿圆表示,要跟上互联网发展的节奏还是得努力一点),今天的主角就是开源的嵌入式JavaScript解释器—Espruino.
Espruino除了支持Espruino自己开发的开发板外(其实也是STM32),还支持芯片为STM32F1/F4系列的其它厂商的开发板,还包括ESP8266,ESP32等。像是STM32F1系列STM32,基本人手一个吧!像阿圆手上就有自己打样出来的STM32F103RBT6开发板。不过如果使用自己的开发板就要看自己开发板的硬件支持不支持Espruino里提供的接口了,比如SD卡,WIFI,LED,Button等。
好了,打开Espruino的官网, http://www.
根据官网的描述
可以发现OLIMEXINO-STM32使用的就是STM32F103RB的单片机,呆会我们就只要下这个单片机的binary烧录即可。
找到Espruino的官网,下载最新的Release v1.94,阿圆己经替大家找好下载链接啦 http://www./files/espruino_1v94.zip 关于烧录,如果用的是ST-Link V2那是比较简单,只要去官网下载最新的ST-Link Uitility就可以了 http://www./zh/development-tools/stsw-link004.html 阿圆用的是J-Link烧录起来还有点麻烦 首先要打开J-Link的 J-Flash,新建一个工程 然后在Options里打开Project Settings 点击Target Interface选择好烧录方式
在CPU里选择Device,再选择好所使用的STM32
设置好后点击Target Connect进行连接,如果连接成功会有提示。 打开File->Open Data File 选择espruino_1v94_olimexino_stm32.bin然后进行烧录即可。 烧录完后复位下正常就可以啦!
默认的Espruino使用的是STM32的USART1,波特率为9600 8N1
一切正常就可以进行到Espruino的Console啦 支持简单的Math库,字符串的拼接也是没有问题,再验证下函数的调用,也还不错,基本语法都是支持的。
让我们来试下复杂一点的JavaScript例子,尝试在Console不断地输出true/false
开始运行toggle函数,确实有按500ms的间隔打出来
如果想改变间隔可以用下面的命令 changeInterval(i, 200) 如果需要停止则执行下面的命令 clearInterval(i) 如果将演示用的print换成温度读取呀或者是传输数据到服务器,那就很有意义了。
用JavaScript搞单片机确实有点意思嘛~默认的Espruino内建函数也非常丰富,如以下
等等,还有许多没有列出来,队了自带的一些库,Espruino还支持使用require进行库的扩展,不过呢阿圆用的是自己的开发板,不能直接使用库函数。其支持的库函数还包括伺服电机控制,WIFI控制,SD卡文件系统,LCD显示屏等等,大家可以去购买一块官方的开发板来玩一玩或者根据现有的硬件对Espruino进行编译也未尝不可,因为他是完全免费开源的。不过一点要注意,销售出去的板子上默认是不能带Espruino的,记住了哟!
借此机会做嵌入式的小伙伴们也可以借机学习下JavaScript,同时呢还可以再了解下JavaScript是怎么跑起来的,是不是很不错?欢迎点选收藏关注! 转载原帖:http://www./internet/internet_233724.html |
|
来自: 昵称38434767 > 《Espruino》