/cvi/apps/mergertest/arich_merger_rev01.bit |
Cannot display: file marked as a binary type.
|
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
## -1 +0,0 ## |
-application/octet-stream |
\ No newline at end of property |
Index: apps/mergertest/impact.bat |
=================================================================== |
--- apps/mergertest/impact.bat (revision 309) |
+++ apps/mergertest/impact.bat (nonexistent) |
@@ -1,3 +0,0 @@ |
-rem @C:\Xilinx\14.7\ISE_DS\ISE\bin\nt\impact.exe -batch %1 > %2 2>&1 |
-rem @C:\Xilinx\14.7\LabTools\LabTools\bin\nt\impact.exe -batch %1 > %2 2>&1 |
-@C:\Xilinx\14.7\LabTools\LabTools\bin\nt\impact.exe -batch %1 > %2 2>&1 |
\ No newline at end of file |
Index: apps/mergertest/TDraw.cxx |
=================================================================== |
--- apps/mergertest/TDraw.cxx (revision 309) |
+++ apps/mergertest/TDraw.cxx (nonexistent) |
@@ -1,75 +0,0 @@ |
-#include <stdlib.h> |
-#include <stdio.h> |
-#include <TCanvas.h> |
-#include <TGraph.h> |
- |
-int TDraw(const char *fname ){ |
- FILE *fp=fopen(fname,"r"); |
- if (!fp) return -1; |
- unsigned long t; |
- int type; |
- float temp0; |
- |
- TGraph *gr[3]; |
- |
- float f[10]; |
- int j=0; |
- int ndim=400; |
- char line[400]; |
- int colorTable[14] = { kBlack, kGray, kRed, kGreen, kBlue, kYellow, kMagenta, kCyan, kOrange, kSpring, kTeal, kAzure, kViolet, kPink }; |
- char SensorType[3][16]={"T","Tmin","Tmax"} |
- double time0; |
- int first=1; |
- TLegend *leg= new TLegend(0.85,0.8,1,0.95); |
- for (int i=0;i<3;i++) { |
- gr[i] = new TGraph(); |
- gr[i]->SetLineColor(colorTable[i%14]); |
- gr[i]->SetLineWidth(3); |
- gr[i]->SetMarkerColor(colorTable[i%14]); |
- gr[i]->SetMarkerStyle(20+i); |
- sprintf(line,"%s;t(s);T(deg.)",fname); |
- gr[i]->SetTitle(line); |
- sprintf(line,"%s",SensorType[i]); |
- leg->AddEntry(gr[i],line,"l"); |
- |
- } |
- |
- while (fgets(line,ndim,fp)!=NULL) { |
- printf("%d***********\n",j++); |
- printf("***%s\n", line); |
- sscanf(line,"%ul%d%f",&t,&type,&temp0); |
- if(first){ |
- time0=t; |
- first=0; |
- } |
- printf("%ul\t%d\t%f\n",t,type,temp0); |
- if (type<3 && type>-1) gr[type]->SetPoint (gr[type]->GetN(), t-time0, temp0); |
- } |
- fclose(fp); |
- |
- |
- TCanvas *c1 = new TCanvas("c1","Merger temperature",200,10,1400,1000); |
- c1->SetFillColor(kWhite); |
- c1->SetGrid(); |
- |
- //gr[0]->GetXaxis()->SetTimeDisplay(1); // The X axis is a time axis |
- //gr[0]->GetXaxis()->SetTimeFormat("%d.%m.%H:%M"); |
- gr[0]->GetYaxis()->SetLabelSize(0.02); |
- gr[0]->GetXaxis()->SetLabelSize(0.02); |
- gr[0]->Draw("AWL"); |
- gr[0]->GetYaxis()->SetRangeUser(0,80); |
- |
- for (int j = 0; j < 3; j++) { |
- gr[j]->Draw("LSAME"); |
- } |
- leg->Draw(); |
- c1->Modified(); |
- c1->Update(); |
- char picname[1024]; |
- |
- sprintf(picname,"%s.png",fname); |
- c1->SaveAs(picname); |
- |
- return 0; |
- |
-} |
\ No newline at end of file |
Index: apps/mergertest/mergertest.c |
=================================================================== |
--- apps/mergertest/mergertest.c (revision 309) |
+++ apps/mergertest/mergertest.c (nonexistent) |
@@ -1 +0,0 @@ |
- |
Index: apps/mergertest/mergerjtag.uir |
=================================================================== |
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/apps/mergertest/mergerjtag.uir |
Property changes: |
Deleted: svn:mime-type |
## -1 +0,0 ## |
-application/octet-stream |
\ No newline at end of property |
Index: apps/mergertest/mergerjtag.c |
=================================================================== |
--- apps/mergertest/mergerjtag.c (revision 309) |
+++ apps/mergertest/mergerjtag.c (nonexistent) |
@@ -1,270 +0,0 @@ |
-#include <ansi_c.h> |
-#include <utility.h> |
-#include <cvirte.h> |
-#include <userint.h> |
-#include "mergerjtag.h" |
- |
-static int panelHandle; |
- |
-void bin2hex (const char * str, char *target) |
-{ |
- char target0[0xFF],target1[0xFF]; |
- int i; |
- int end= strlen(str); |
- target0[0]=0; |
- if (end>32) strncpy (target0, &str[end-32-1] , 32); |
- target0[32]=0; |
- |
- end-=32; |
- |
- if (end>0) { |
- strncpy (target1, &str[0] , end); |
- target1[end-1] = 0; |
- } |
-// printf("==>%s %s\n==>%s\n", target1, target0, str); |
- sprintf(target,"0x%08X%08X",strtoul (target1, NULL, 2) ,strtoul (target0, NULL, 2) ); |
-} |
- |
-char impact_output[255]= "impact_merger.txt"; |
- |
-int jtagexecute(const char *impactcmd, int wait){ |
- char cmd[255]; |
- int jtagchainid = 1; |
- FILE *fp =fopen("impact.cmd","w"); |
- fprintf(fp,"setmode -bscan\n"); |
- fprintf(fp,"setcable -port usb21 -baud 3000000\n"); |
- fprintf(fp,"identify\n"); |
- fprintf(fp,"%s\n", impactcmd ); |
- fprintf(fp,"exit\n"); |
- fclose(fp); |
- sprintf(cmd,"impact.bat impact.cmd %s ", impact_output); |
- printf("%s\n",cmd); |
- if (wait) return system(cmd); |
- else return LaunchExecutableEx (cmd, LE_SHOWNORMAL, NULL); |
-} |
- |
-int loadbit( int wait){ |
- |
- const char impactcmd[255]="impact.cmd"; |
- char cmd[255]; |
- int jtagchainid = 1; |
- char bitfile[255]="arich_merger_rev01.bit"; |
- //GetCtrlVal(pnl, PANEL_BITFILE,bitfile); |
- char foutput[255]="impacttest_feb"; |
- |
- |
- |
- FILE *fp =fopen(impactcmd,"w"); |
- |
- fprintf(fp, |
- "setmode -bscan\n" |
- "setcable -port usb21 -baud 3000000\n" |
- "identify\n"); |
- |
- //fprintf(fp, "readdna -p %d\n", jtagchainid ); |
- fprintf(fp, "assignfile -p %d -file %s\n",jtagchainid, bitfile ); |
- fprintf(fp, "program -p %d -prog\n" ,jtagchainid ); |
-// fprintf(fp, "verify -p %d\n",jtagchainid ); |
- |
- fprintf(fp,"exit\n"); |
- fclose(fp); |
- |
- sprintf(cmd,"impact.bat %s %s ", impactcmd,impact_output); |
- printf("%s\n",cmd); |
- if (wait) system(cmd); |
- else LaunchExecutableEx (cmd, LE_SHOWNORMAL, NULL); |
- |
-return 0; |
- |
-} |
- |
-int ImpactOutputInspect( const char *fname, const char *opt){ |
- FILE *fout; |
- |
- const int ndim=400; |
- char buff[ndim]; |
- char fpgasn[0xFF], hexsn[0XFF]; |
- char impactout[255]; |
- char *ret; |
- char *ret0; |
- char *ret1; |
- char *ret2; |
- int downloadok=0; |
- int xc6slx45=0; |
- FILE *fp = NULL; |
- if (fname!=NULL) fp = fopen (fname, opt); |
- fout = fopen (impact_output, "r"); |
- while (fgets(buff,ndim,fout)!=NULL) { |
-// printf("%s",buff); |
- ret=strstr(buff, "INFO:iMPACT:188 - '1': Programming completed successfully."); |
- if (ret !=NULL){ |
- printf("Download OK!\n"); |
- //SetCtrlVal(pnl,firmware_control[febboard], 1); |
- downloadok=1; |
- } |
- ret=strstr(buff, "INFO:iMPACT:501 - '1': Added Device xc5vlx50t successfully."); |
- if (ret !=NULL){ |
- printf("Device xc5vlx50t found!\n"); |
- //SetCtrlVal(pnl,fpga_control[febboard], 1); |
- xc6slx45=1; |
- } |
- |
- ret=strstr(buff, "Temperature"); |
- for (int k=0;k<2;k++){ |
- if (ret !=NULL){ |
- |
- char t0[0xFF]=""; |
- printf("#%s#\n",ret); |
- for (int i=0;i<3;i++){ |
- ret=strstr(ret, "Reading:"); |
- if (ret!=NULL) { |
- ret=(ret+8); |
- sscanf(ret,"%s", t0); |
- printf("t=%ul sens=%d T=%s\n",time(NULL), i+k*2, t0); |
- if (fp){ |
- fprintf(fp, "%ul %d %s\n",time(NULL), i+k*2, t0); |
- } |
- } else break; |
- } |
- |
- if (k==0) { |
- fgets(buff,ndim,fout); |
- ret=strstr(buff, "Reading:"); |
- } |
- } |
- } |
- |
- |
- ret=strstr(buff, "'1': DNA ="); |
- if (ret !=NULL){ |
- sscanf(ret,"'1': DNA = '%s", fpgasn); |
- |
- bin2hex(fpgasn,hexsn); |
- printf("%s",hexsn); |
- //SetCtrlVal(pnl,target_control[febboard], hexsn); |
- } else { |
- sprintf(hexsn,""); |
- } |
- } |
- if (fp) fclose (fp); |
- fclose(fout); |
- |
- return 0; |
-} |
- |
- |
-FILE *fmon=NULL; |
-int main (int argc, char *argv[]) { |
- if (InitCVIRTE (0, argv, 0) == 0) |
- return -1; /* out of memory */ |
- if ((panelHandle = LoadPanel (0, "mergerjtag.uir", PANEL)) < 0) |
- return -1; |
- double tinterval; |
- GetCtrlVal(panelHandle, PANEL_TINTERVAL, &tinterval); |
- SetCtrlAttribute (panelHandle, PANEL_TIMER, ATTR_INTERVAL, tinterval); |
- TimerOnOffCB(panelHandle, PANEL_TIMERON, EVENT_COMMIT,NULL,0,0); |
- |
- DisplayPanel (panelHandle); |
- RunUserInterface (); |
- DiscardPanel (panelHandle); |
- if (fmon) fclose(fmon); |
- return 0; |
-} |
- |
-int CVICALLBACK ExitCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- switch (event) { |
- case EVENT_COMMIT: |
- QuitUserInterface (0); |
- break; |
- } |
- return 0; |
-} |
- |
-int CVICALLBACK ReadCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- switch (event) { |
- case EVENT_COMMIT: |
- jtagexecute("readTemperatureAndVoltage -p 1\n", 1); |
- ImpactOutputInspect("read_out.txt","w"); |
- break; |
- } |
- return 0; |
-} |
- |
-int CVICALLBACK LoadCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- switch (event) { |
- case EVENT_COMMIT: |
- loadbit(1); |
- ImpactOutputInspect("loadbit_out.txt","w"); |
- break; |
- } |
- return 0; |
-} |
- |
-int CVICALLBACK TimerOnOffCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) |
-{ |
- int state; |
- switch (event) |
- { |
- case EVENT_COMMIT: |
- GetCtrlVal(panel, control, &state); |
- if (state){ |
- printf ("Enabling timer....\n"); |
- ResumeTimerCallbacks(); |
- } else { |
- SuspendTimerCallbacks (); |
- printf ("Disabling timer....\n"); |
- } |
- break; |
- } |
- return 0; |
-} |
-int CVICALLBACK SetIntervalCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- double tinterval; |
- switch (event) { |
- case EVENT_COMMIT: |
- GetCtrlVal(panel, control, &tinterval); |
- SetCtrlAttribute (panel, PANEL_TIMER, ATTR_INTERVAL, tinterval); |
- break; |
- } |
- return 0; |
-} |
- |
- |
- |
-int CVICALLBACK TimerCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- switch (event) { |
- case EVENT_TIMER_TICK: |
- jtagexecute("readTemperatureAndVoltage -p 1\n", 1); |
- ImpactOutputInspect("merger_temperature.txt","a"); |
- break; |
- } |
- return 0; |
-} |
- |
-int CVICALLBACK DrawCB (int panel, int control, int event, |
- void *callbackData, int eventData1, int eventData2) { |
- switch (event) { |
- case EVENT_COMMIT:{ |
- |
- char name[MAX_PATHNAME_LEN]; |
-// char dfile[MAX_PATHNAME_LEN]; |
-// char efile[MAX_PATHNAME_LEN]; |
-// status = FileSelectPopup ("dat", "*.dat", ".dat", |
-// "Izberi datoteko s podatki", |
-// VAL_LOAD_BUTTON, 0, 0, 1, 0, efile); |
-// EscapeString(efile,dfile); |
- sprintf(name ,"C:/root/bin/root.exe TDraw.cxx(\\\"%s\\\")", "merger_temperature.txt"); |
- // sprintf(name ,"C:/root/bin/root.exe IUdraw.cxx"); |
- printf("%s\n",name); |
- LaunchExecutable(name); |
- break; |
- } |
- } |
- return 0; |
-} |