樂高Mindstorms RCX

RCX乐高RCX系列机器人的控制核心,是一个可编程控制器MindStorms系统的一个组件。 RCX有三个版本,分别为:1.0、1.5、2.0,為第一代可程式及可組裝的機器人玩具

面板

RCX使用的微型控制器,是日立H8/3292系列的H8/300单片机,属于H8/3297系列。芯片具有计算机的三个主要功能:处理器存储器和输入/输出。它们通过芯片内的地址/数据/控制总线连接在一起。

第一代RCX机器人控制面板

CPU

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专用红外线接收器(接口分别为COMUSB)进行数据交换,通讯频率为38500Hz

程式語言

樂高支援的語言:

  • RCX Code,包含在玩具版本
  • ROBOLAB塔夫斯大學基於LabVIEW所開發

熱門的第三方語言:

  • BrickOS,以前叫 LegOS之下使用C語言C++
  • leJOSTinyVM之下使用Java
  • NQC,類似C
  • pbFORTH,延伸自Forth語言
  • pbLua,一個為了Lua語言的NXT API
  • Visual Basic
  • RobotCNXT適用的新語言
  • Interactive C,一個用在機器人比賽中類似C的語言
  • XSLisp,專用於RCX (1 + 2)與NXT

參見

参考文献

    1. RCX手册,Ole Caprani
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.