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