值得指出的是借助CAPCOM6E,用户可通过软件建立任何块交换表(或状态机),同时由硬件生成相应的PWM输出信号。这样可以非常灵活地实现任何控制要求。下面的例子是以定义自制
的块交换表的源代码。数组下标HALL_PATTERNS_NUMBER 从0至5。
// Hall patterns
ubyte HallPatterns [HALL_PATTERNS_NUMBER]=
{
0x25, // Current="100" Expected="101"
0x29, // Current="101" Expected="001"
0x0b, // Current="001" Expected="011"
0x1a, // Current="011" Expected="010"
0x16, // Current="010" Expected="110"
0x34, // Current="110" Expected="100"
};
ubyte PWMPatterns[ HALL_PATTERNS_NUMBER]=
{
0x18, // U="0" V=- W=+ COUT62/CC62=01 COUT61/CC61=10 COUT60/CC60=00
0x12, // U=- V="0" W=+ COUT62/CC62=01 COUT61/CC61=00 COUT60/CC60=10
0x06, // U=- V=+ W="0" COUT62/CC62=00 COUT61/CC61=01 COUT60/CC60=10
0x24, // U="0" V=+ W=- COUT62/CC62=10 COUT61/CC61=01 COUT60/CC60=00
0x21, // U=+ V="0" W=- COUT62/CC62=10 COUT61/CC61=00 COUT60/CC60=01
0x09 // U=+ V=-W=0 COUT62/CC62=00 COUT61/CC61=10 COUT60/CC60=01
};