پاسخ : نمونه کدهایی برای XMEGA
من و یکی از دوستان اون -200 بغل کالیبر رو حذف کردیم تا درست جواب داد
پس چجوری شما جواب گرفتید
نوشته اصلی توسط NAO_ROBOT
پس چجوری شما جواب گرفتید
i2c_start(); i2c_write(0xC0); i2c_write(0x01); i2c_write(0xC1); deg=i2c_read(0); i2c_stop();
#define CPU_SPEED 32000000 #define BAUDRATE 400000 uint8_t twitest1[1]={0xC0},twitest2[1]={0x01},twitest3[1]={0xC1}; TWI_Master_t twiMaster; #define SLAVE_ADDRESS 0xC0 #define TWI_BAUD(F_SYS, F_TWI) ((F_SYS / (2 * F_TWI)) - 5) #define TWI_BAUDSETTING TWI_BAUD(CPU_SPEED, BAUDRATE)
GLCD_GoTo(0,0); GLCD_WriteString(buf); TWI_MasterInit(&twiMaster,&TWIE,TWI_MASTER_INTLVL_LO_gc,TWI_BAUDSETTING); TWI_MasterWriteRead(&twiMaster,SLAVE_ADDRESS,twitest1,1,0); while (twiMaster.status != TWIM_STATUS_READY); TWI_MasterWriteRead(&twiMaster,SLAVE_ADDRESS,twitest2,1,0); while (twiMaster.status != TWIM_STATUS_READY); TWI_MasterWriteRead(&twiMaster,SLAVE_ADDRESS,twitest3,1,1); while (twiMaster.status != TWIM_STATUS_READY); for(unsigned char i=0;i<8;i++)buf[i]=('0'+twiMaster.readData[i]); GLCD_GoTo(0,1); GLCD_WriteString(buf);
ISR(TCD1_OVF_vect) :redface: { if(step_r==0) { if(mm1) { m10on; m11on; m12off; m13off; } if(mm2) { m20on; m21on; m22off; m23off;} step_r=1; goto a; } if(step_r==1) { if(mm1=) { m10off; m11on; m12on; m13off; } if(mm2) { m20off; m21on; m22on; m23off; } step_r=2; goto a; } if(step_r==2) { if(mm1) {m10off; m11off; m12on; m13on;} if(mm2) { m20off; m21off; m22on; m23on; } step_r=3; goto a; } if(step_r==3) { if(mm1) {m10on; m11off; m12off; m13on; } if(mm2) { m20on; m21off; m22off; m23on; } step_r=0; goto a; } a: }
دیدگاه