樂高Mindstorms RCX
RCX是乐高RCX系列机器人的控制核心,是一个可编程控制器,MindStorms系统的一个组件。 RCX有三个版本,分别为:1.0、1.5、2.0,為第一代可程式及可組裝的機器人玩具
面板
RCX使用的微型控制器,是日立H8/3292系列的H8/300单片机,属于H8/3297系列。芯片具有计算机的三个主要功能:处理器、存储器和输入/输出。它们通过芯片内的地址/数据/控制总线连接在一起。
RCX主要参数
H8/300 CPU(8位)。工作频率16 百萬赫,有八个通用16 位寄存器(r0 - r7, r7 作为堆栈指针(sp) 使用), 16 位程序寄存器(pc),和一个8位状态寄存器(cc) 。状态寄存器显示算术状态(如进位,溢出,和零)和中断屏蔽与使能。指令集包括暂存器-暂存器运算,如16 位加法、16 位减法、8位乘法和16 位/8 位除法),及常见的逻辑操作如「异或」、「或」、「与」、「非」、「移位」、「位操作」、「子程序」的调用与返回和使RCX进入节电模式的「sleep指令」。数据类型包括「位」、「4位BCD码」、「字节」和「字」(2 个字节)
储存器
RCX的H8/3292芯片拥有32K的RAM,但是实际能使用的仅有10K左右(因为固件本身也要占用一定的内存)。整个RCX内只能储存5个编译程序(即使程序占用内存不到10K),另外,如果程序较大,则可能实际储存不足5个编译程序。
输入/输出
RCX支持的输入设备(传感器)有:「接触传感器」、「光感传感器」、「角度传感器」、「温度传感器」以及「火焰传感器」。但是在没有安装固件时传感器将不能工作,也不能执行编译的程序。仅可以运行固化在硬件内的默认程序。输出接口只能接到LEGO专用马达(标准马达和微型马达)以及扬声器。RCX可以同时控制所有输入/输出设备
电源供应
RCX使用6节5号电池,安装于背部凹槽。也可以使用9~12伏的外接直流电。当RCX没电时,其内部储存的所有数据都会消失,包括固件和已编译的程序。位于顶部的红外线数据接口是RCX唯一的数据来源,RCX与外界一切通讯都通过此接口与LEGO专用红外线接收器(接口分别为COM和USB)进行数据交换,通讯频率为38500Hz。
程式語言
樂高支援的語言:
熱門的第三方語言:
- BrickOS,以前叫 LegOS之下使用C語言和C++
- 在leJOS或TinyVM之下使用Java
- NQC,類似C
- pbFORTH,延伸自Forth語言
- pbLua,一個為了Lua語言的NXT API
- Visual Basic
- RobotC,NXT適用的新語言
- Interactive C,一個用在機器人比賽中類似C的語言
- XSLisp,專用於RCX (1 + 2)與NXT
參見
参考文献
- RCX手册,Ole Caprani