乐高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