TMC2209步進驅動芯片基本配置及使用

TMC2209是用於兩相步進電機的超靜音電機驅動器IC。
TMC2209與許多傳統驅動器以及TMC2208引腳兼容。
TRINAMICs先進的StealthChop2斬波器可確保電機無噪音運行,實現最高效率和最佳電機扭矩。其快速的電流調節和抑制共振功能組合可實現高動態運動。
StallGuard用於無傳感器回原點,防止堵轉。
內置功率MOSFET可處理高達2A RMS的電機電流,
具有保護和診斷功能,可實現穩定可靠的運行。
TMC2209的具體使用
1、Step/Dir獨立模式引腳配置

使用簡單的Step/Dir模式,只需要外部脈衝控制。
細分的話根據MS1和MS2兩個引腳進行配置,最高64細分。
2、使用UART串口配置

1、硬件連接

 

 2、串口發送和接受數據格式

 

 

 

 UART發送指令採用的CRC_8校驗碼:

static void prvTMCCal_CRC8(uint8_t *pucData, uint8_t ucDataLength)
{
     int i,j;
     
    unsigned char *crc = pucData + (ucDataLength - 1);
 
    unsigned char currentByte;
 
    *crc = 0;
 
    for(i = 0; i < (ucDataLength - 1);i++)
    {
        currentByte = pucData[i];
        for(j = 0; j < 8; j++)
        {
            if((*crc >> 7) ^ (currentByte & 0x01)){
                *crc = (*crc << 1) ^ 0x07;
            }else{
                *crc = (*crc << 1);
            }
            currentByte = currentByte >>1;
        }
    }
}
3、使用StallGuard技術無傳感器回原點
1、UART連接時,ENN必須為電平並且MS1、MS2必須懸空;
2、 配置內部採樣電阻。具體在GCONF中internal_Rsens = 1;
3、電機電流設置,配置IHOLD_RUN寄存器;
4、設置失速電流閾值TCOOLTHRS;
5、 設置靈敏度SGTHRS。
6、調節電機的實際運動電流需要看CONFIG寄存器的第一位,若選擇外部電流需要Vref參與。