test upload STMicroelectronics L6470

Dependents:   test L6470exaple

Files at this revision

API Documentation at this revision

Comitter:
Brid
Date:
Wed Mar 05 06:22:03 2014 +0000
Parent:
1:bb4bb05904cb
Commit message:
ver1.1

Changed in this revision

L6470.cpp Show annotated file Show diff for this revision Revisions of this file
L6470.h Show annotated file Show diff for this revision Revisions of this file
--- a/L6470.cpp	Tue Dec 25 02:46:32 2012 +0000
+++ b/L6470.cpp	Wed Mar 05 06:22:03 2014 +0000
@@ -63,13 +63,12 @@
 }
 
 
+
+
 int L6470::GetParam(int param){
     int value = 0;
     int n = (param>>8)/8;
     int m = (param>>8)%8;
-//        pc.printf("palam = %x\n",param);
-//        pc.printf("n = %x\n",n);
-//        pc.printf("m = %x\n",m);
     if(m==0){
         unsigned char temp[n+1];
         for(int i = 0; i < n+1; i++){
@@ -92,6 +91,7 @@
             value |= (int)temp[n] << 8*n;
         }
     }
+    
 return(value);    
 }
 
@@ -188,28 +188,29 @@
 
 void L6470::Resets(){
     SoftStop();
-    SetParam(ABS_POS,RH_ABS_POS);
-    SetParam(EL_POS,RH_EL_POS);
-    SetParam(MARK,RH_MARK);
-    SetParam(SPEED,RH_SPEED);
-    SetParam(ACC,RH_ACC);
-    SetParam(DEC,RH_DEC);
-    SetParam(MAX_SPEED,RH_MAX_SPEED);
-    SetParam(MIN_SPEED,RH_MIN_SPEED);
-    SetParam(KVAL_HOLD,RH_KVAL_HOLD);
-    SetParam(KVAL_RUN,RH_KVAL_RUN);
-    SetParam(KVAL_ACC,RH_KVAL_ACC);
-    SetParam(KVAL_DEC,RH_KVAL_DEC);
-    SetParam(INT_SPD,RH_INT_SPD);
-    SetParam(ST_SLP,RH_ST_SLP);
-    SetParam(FN_SLP_ACC,RH_FN_SLP_ACC);
-    SetParam(FN_SLP_DEC,RH_FN_SLP_DEC);
-    SetParam(K_THERA,RH_K_THERA);
-    SetParam(OCR_TH,RH_OCR_TH);      
-    SetParam(STALL_TH,RH_STALL_TH);
-    SetParam(FS_SPD,RH_FS_SPD);
-    SetParam(STEP_MODE,RH_STEP_MODE);
-    SetParam(ARARM_FN,RH_ARARM_FN);
-    SetParam(CONFIG,RH_CONFIG);            
+    ResetDevice();
+    SetParam(ABS_POS,INI_ABS_POS);
+    SetParam(EL_POS,INI_EL_POS);
+    SetParam(MARK,INI_MARK);
+    SetParam(SPEED,INI_SPEED);
+    SetParam(ACC,INI_ACC);
+    SetParam(DEC,INI_DEC);
+    SetParam(MAX_SPEED,INI_MAX_SPEED);
+    SetParam(MIN_SPEED,INI_MIN_SPEED);
+    SetParam(KVAL_HOLD,INI_KVAL_HOLD);
+    SetParam(KVAL_RUN,INI_KVAL_RUN);
+    SetParam(KVAL_ACC,INI_KVAL_ACC);
+    SetParam(KVAL_DEC,INI_KVAL_DEC);
+    SetParam(INT_SPD,INI_INT_SPD);
+    SetParam(ST_SLP,INI_ST_SLP);
+    SetParam(FN_SLP_ACC,INI_FN_SLP_ACC);
+    SetParam(FN_SLP_DEC,INI_FN_SLP_DEC);
+    SetParam(K_THERA,INI_K_THERA);
+    SetParam(OCR_TH,INI_OCR_TH);      
+    SetParam(STALL_TH,INI_STALL_TH);
+    SetParam(FS_SPD,INI_FS_SPD);
+    SetParam(STEP_MODE,INI_STEP_MODE);
+    SetParam(ARARM_FN,INI_ARARM_FN);
+    SetParam(CONFIG,INI_CONFIG);            
 }
 
--- a/L6470.h	Tue Dec 25 02:46:32 2012 +0000
+++ b/L6470.h	Wed Mar 05 06:22:03 2014 +0000
@@ -8,7 +8,44 @@
 #define FORWARD     1
 #define REVERSE     0
 
+//
+//INI = ResetHex
+//My specification for Initial value
+#define INI_ABS_POS     0    //Current position         
+#define INI_EL_POS      0    //Electrical position
+#define INI_MARK        0    //Mark position
+#define INI_SPEED       0    //Current speed
+#define INI_ACC         0x8A    //Acceleration
+#define INI_DEC         0x8A    //Deceleration
+#define INI_MAX_SPEED   0x20    //Maximum speed
+#define INI_MIN_SPEED   0    //Minimum speed
+#define INI_KVAL_HOLD   0xFF    //Full step speed
+#define INI_KVAL_RUN    0xFF    //
+#define INI_KVAL_ACC    0xFF    //
+#define INI_KVAL_DEC    0xFF    //
+#define INI_INT_SPD     0x408   //
+#define INI_ST_SLP      0x19    //
+#define INI_FN_SLP_ACC  0x29    //
+#define INI_FN_SLP_DEC  0x29    //
+#define INI_K_THERA     0x0    //
+//         ADC_OUT     ReadOnly
+#define INI_OCR_TH      0xF      
+#define INI_STALL_TH    0x7F
+#define INI_FS_SPD      0x27
+#define INI_STEP_MODE   0x7
+#define INI_ARARM_FN    0xFF
+#define INI_CONFIG      0x2E88    
+//      INI_STATUS      ReadOnly
+
+
+
+
+
+
+
+
 // name         (length<<8)+address
+//
 #define ABS_POS      ((22<<8)+0x01)    //Current position         
 #define EL_POS        ((9<<8)+0x02)    //Electrical position
 #define MARK         ((22<<8)+0x03)    //Mark position
@@ -37,32 +74,6 @@
 
 
 
-//RH = ResetHex
-#define RH_ABS_POS     0    //Current position         
-#define RH_EL_POS      0    //Electrical position
-#define RH_MARK        0    //Mark position
-#define RH_SPEED       0    //Current speed
-#define RH_ACC         0x8A    //Acceleration
-#define RH_DEC         0x8A    //Deceleration
-#define RH_MAX_SPEED   0x20    //Maximum speed
-#define RH_MIN_SPEED   0    //Minimum speed
-#define RH_KVAL_HOLD   0xFF    //Full step speed
-#define RH_KVAL_RUN    0xFF    //
-#define RH_KVAL_ACC    0xFF    //
-#define RH_KVAL_DEC    0xFF    //
-#define RH_INT_SPD     0x408   //
-#define RH_ST_SLP      0x19    //
-#define RH_FN_SLP_ACC  0x29    //
-#define RH_FN_SLP_DEC  0x29    //
-#define RH_K_THERA     0x0    //
-//         ADC_OUT     ReadOnly
-#define RH_OCR_TH      0xF      
-#define RH_STALL_TH    0x7F
-#define RH_FS_SPD      0x27
-#define RH_STEP_MODE   0x7
-#define RH_ARARM_FN    0xFF
-#define RH_CONFIG      0x2E88    
-//      RH_STATUS      ReadOnly