# QEIV2 ABZ Encoder ## Overview **Qeiv2 ABZ Encoder** project demonstrates configuring the ABZ encoder and obtaining its data, then printing the data through a serial console. ## Configurations - Install the serial terminal, view [board information](lab_board_overiew), and configure the serial terminal parameters - This program uses the **BLM57050-1000** brushless motor of "Leisai Intelligence", refer to the [Leisai Intelligence](https://leisai.com/) website for the specific parameters of the motor. - Click [DRV-LV50A-MP1907 Motor Driver Board](lab_drv_lv50a_mp1907) section and configure ## Running the Demo - Power on, open the serial terminal, log as following: ```console ---------------------------------------------------------------------- $$\ $$\ $$$$$$$\ $$\ $$\ $$\ $$ | $$ |$$ __$$\ $$$\ $$$ |\__| $$ | $$ |$$ | $$ |$$$$\ $$$$ |$$\ $$$$$$$\ $$$$$$\ $$$$$$\ $$$$$$$$ |$$$$$$$ |$$\$$\$$ $$ |$$ |$$ _____|$$ __$$\ $$ __$$\ $$ __$$ |$$ ____/ $$ \$$$ $$ |$$ |$$ / $$ | \__|$$ / $$ | $$ | $$ |$$ | $$ |\$ /$$ |$$ |$$ | $$ | $$ | $$ | $$ | $$ |$$ | $$ | \_/ $$ |$$ |\$$$$$$$\ $$ | \$$$$$$ | \__| \__|\__| \__| \__|\__| \_______|\__| \______/ ---------------------------------------------------------------------- qeiv2 abz encoder example z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 z: 0x64, phase: 0x1f4 ``` - Rotating the motor will trigger an interrupt in the encoder's calculation of speed, then printing the following information. ```console cycle0 --- pulse_snap0: 0x2, cylce_snap0: 0x1686b6d, spd : 1 deg/s cycle0 --- pulse_snap0: 0x3, cylce_snap0: 0x16627c4, spd : 1 deg/s cycle0 --- pulse_snap1: 0x2, cylce_snap1: 0x1686b6d, spd : 1 deg/s cycle0 --- pulse_snap0: 0x3, cylce_snap0: 0x24dd73, spd : 19 deg/s cycle0 --- pulse_snap0: 0xd, cylce_snap0: 0x25a71f, spd : 82 deg/s cycle0 --- pulse_snap1: 0x3, cylce_snap1: 0x24dd73, spd : 19 deg/s cycle0 --- pulse_snap0: 0xc, cylce_snap0: 0x2315c9, spd : 82 deg/s cycle0 --- pulse_snap1: 0xd, cylce_snap1: 0x25a71f, spd : 82 deg/s cycle0 --- pulse_snap0: 0x3, cylce_snap0: 0x176666, spd : 30 deg/s cycle0 --- pulse_snap1: 0xc, cylce_snap1: 0x2315c9, spd : 82 deg/s cycle0 --- pulse_snap1: 0x3, cylce_snap1: 0x176666, spd : 30 deg/s cycle0 --- pulse_snap0: 0x22, cylce_snap0: 0x90d929, spd : 53 deg/s cycle0 --- pulse_snap1: 0x3, cylce_snap1: 0x16627c4, spd : 1 deg/s cycle0 --- pulse_snap0: 0x1, cylce_snap0: 0x1986a2, spd : 9 deg/s cycle0 --- pulse_snap1: 0x1, cylce_snap1: 0x1986a2, spd : 9 deg/s cycle0 --- pulse_snap0: 0x2, cylce_snap0: 0x25e74f, spd : 12 deg/s cycle0 --- pulse_snap0: 0x2, cylce_snap0: 0x1a119d, spd : 18 deg/s cycle0 --- pulse_snap1: 0x2, cylce_snap1: 0x25e74f, spd : 12 deg/s cycle0 --- pulse_snap0: 0x8, cylce_snap0: 0x160b51b, spd : 4 deg/s cycle0 --- pulse_snap1: 0x22, cylce_snap1: 0x90d929, spd : 53 deg/s cycle0 --- pulse_snap1: 0x2, cylce_snap1: 0x1a119d, spd : 18 deg/s cycle0 --- pulse_snap0: 0x1, cylce_snap0: 0x14aa84, spd : 11 deg/s cycle0 --- pulse_snap0: 0x2, cylce_snap0: 0x1f9b08, spd : 15 deg/s cycle0 --- pulse_snap1: 0x1, cylce_snap1: 0x14aa84, spd : 11 deg/s cycle0 --- pulse_snap0: 0x3, cylce_snap0: 0x25bfd0, spd : 18 deg/s cycle0 --- pulse_snap1: 0x2, cylce_snap1: 0x1f9b08, spd : 15 deg/s ```