到lego乐高的网站上下载了所有的文档和源代码,结构差不多清楚了。
最新版的NXT, 用的是ARM + AVR 作为主控。 也就是32位MCU + 8 位MCU的构架.
用两个MCU的主要原因是ARM中没有跑实时操作系统, 只用了一个软件轮询的状态计. 这样,如果在语音合成的同时进行传感器和步进电机的处理,系统速度跟不上,因此在ARM 之外又加了一个AVR进行传感器和执行器的管理.
原理图是开放的,电机的信号线是清楚地, 但是没有给出驱动时序.看上去就是简单的PWM, 电机的6根线中有两根是反馈信号, 粗粗看了一下,好像只能反馈顺时针/逆时针这种简单的信息, 位置反馈应该没有.
下一步工作就是用Spartan3E生成PWM,驱动一下电机. 有可能要搭一点模拟电路满足lego的电机的电器性能要求.