使用Scheme函数式编程语言的LambdaChip Alonzo STM32板

原文链接:Use Scheme functional programming language with LambdaChip Alonzo STM32 board 由Jean-Luc Aufranc撰写。

大多数基于MCU的嵌入式系统都带有汇编程序、C或C++编程的固件。 但正如2000年发表的一篇题为 “观点:Lisp作为Java替代品”文章所阐述的那样,与C/C++或Java相比,Lisp或Scheme等函数式编程语言可以缩短开发时间。

不同函数式编程语音的开发时间对比
不同函数式编程语音的开发时间对比

正是基于这一想法,LambdaChip就被创建出来了。它是一个轻量级的开源虚拟机,其目的就是为了能在资源有限的嵌入式系统上运行。例如,一个80MHz的微控制器或50KB的内存,都可以用Scheme多范式编程语言进行编程,这是一种广泛用于功能编程研究和教学的Lisp语言。

LambdaChip项目背后的公司,就是叫LambdaChip,他们不久前用LambdaChip Alonzo创造了自己的硬件。LambdaChip Alonzo是一块STM32 Cortex-M4开发板,有512KB闪存、128KB内存,而且带有蓝牙LE连接。

LambdaChip Alonzo板
LambdaChip Alonzo板

LambdaChip Alonzo板规格:

  • MCU – STMicro STM32F411CEU6 Arm Cortex-M4 MCU @ 100 MHz,带512KB闪存,128KB RAM;UFQFN48封装
  • 存储 – MicroSD卡插座
  • 连接 – 蓝牙4.0低能耗
  • 扩展 – 用于GPIO的2.54mm间距接头
  • 调试 – 用于外部调试器的10针编程接头
  • 其他 – RGB LED,白色LED,3个按钮(BOOT0,RST和用户)
  • 电源 – 通过USB-C端口的5V电压,或通过2针连接器的电池

这块板子其实并不独特,但它包括了LambdaChip所需要的功能,如一个microSD卡,在编译后生成的二进制文件被复制到这里,并由虚拟机自动加载。

LambdaChip Alonzo板套件
LambdaChip Alonzo板套件

你需要一个调试器来对电路板进行编程,这就是为什么该公司还提供了一个完整的套件,包括Saruman调试器、USB和调试器电缆、microSD卡、USB SD读卡器和一个丙烯酸外壳。

建议使用基于Linux的操作系统进行开发,但由于他们提供了一个docker镜像,所以也支持Windows和Mac OS。所有的事情都是通过Laco环境的命令行完成的,由Scheme编译器生成LEF字节码文件。这就是Scheme中的blinky样本的样子:


你可以在LambdaChip网站上下载原理图(仅限PDF格式),并在LambdaChip website 上阅读文档。下面的BLE演示展示了如何使用Laco环境对电路板进行编程,并向运行LightBlue应用程序的安卓手机传输一些信息。

相关视频链接,点击此处可查看

现在,LambdaChip Alonzon板可以在矽递科技Seeed Studio上找到,价格是29.00美元。但大多数对该项目感兴趣的人可能更愿意购买99.00美元的完整套件,这也能在矽递科技找到。

分享这篇文章
订阅评论
提醒
0 评论
内联反馈
查看所有评论