using System; using System.Text; using System.Linq; using System.Drawing; using System.Diagnostics; using System.Windows.Forms; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using Tango.PMR.Stubs; using Tango.Stubs.UI; include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\Software\Stub_scripts\Tango_Defines_Basic.cs" public void OnExecute(StubManager stubManager) { //var response10 = stubManager.Run("StubFpgaWriteRegRequest" ,0x60000222, 0x3800); //Thread.Sleep(10000); //var response11 = stubManager.Run("StubFpgaWriteRegRequest" ,0x60000220, 0x0000); var response_swid = stubManager.Run("StubReadEmbeddedVersionRequest" , true); stubManager.Write("\nTIVA MCU SW Version (Major, Minor, Patch, Build, Version String): ("); stubManager.WriteHex(response_swid.VerMajor,4); stubManager.Write(", "); stubManager.WriteHex(response_swid.VerMinor,4); stubManager.Write(", "); stubManager.WriteHex(response_swid.VerPatch,4); stubManager.Write(", "); stubManager.WriteHex(response_swid.VerBuild,4); stubManager.Write(", "); stubManager.Write(response_swid.Version); stubManager.Write(")\n"); //F1 Version and test register var response = stubManager.Run("StubFpgaReadRegRequest" ,FPGA1); stubManager.Write("\nFPGA_1 Version #ddmm: "); stubManager.WriteHex(response.Value,4); response.Value = 0; response = stubManager.Run("StubFpgaReadRegRequest" ,FPGA1 + 0x10); stubManager.Write("\nFPGA_1 Version #yyvv: "); stubManager.WriteHex(response.Value,4); response.Value = 0; stubManager.Write("\nFPGA_1 Test register, write 0xCAFE, expects 0x3501: "); var response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x600003f0, 0xCAFE); response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x600003f0, 0xCAFE); response = stubManager.Run("StubFpgaReadRegRequest" ,0x600003f0); response.Value = response.Value & 0xffff; stubManager.WriteHex(response.Value,4); response.Value = 0; //F2 Version and test register response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000400); stubManager.Write("\n\nFPGA_2 Version #ddmm: "); stubManager.WriteHex(response.Value,4); response.Value = 0; response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000410); stubManager.Write("\nFPGA_2 Version #yyvv: "); stubManager.WriteHex(response.Value,4); response.Value = 0; stubManager.Write("\nFPGA_2 Test register, write 0xCAFE, expects 0x3501: "); response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x600007f0, 0xCAFE); response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x600007f0, 0xCAFE); response = stubManager.Run("StubFpgaReadRegRequest" ,0x600007f0); response.Value = response.Value & 0xffff; stubManager.WriteHex(response.Value,4); response.Value = 0; //F3 Version and test register response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000800); stubManager.Write("\n\nFPGA_3 Version #ddmm: "); stubManager.WriteHex(response.Value,4); response.Value = 0; response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000810); stubManager.Write("\nFPGA_3 Version #yyvv: "); stubManager.WriteHex(response.Value,4); response.Value = 0; stubManager.Write("\nFPGA_3 Test register, write 0xCAFE, expects 0x3501: "); response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x60000bf0, 0xCAFE); response_tmp = stubManager.Run("StubFpgaWriteRegRequest" ,0x60000bf0, 0xCAFE); response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000bf0); response.Value = response.Value & 0xffff; stubManager.WriteHex(response.Value,4); response.Value = 0; } /* Example Script Output 18:49:16.20: Executing script 'Read_SW_FPGA_Version.cs'... TIVA MCU SW Version (Major, Minor, Patch, Build, Version String): (#0001, #0000, #0000, #0001, Tango01 May 7 2018 16:38:08) FPGA_1 Version #ddmm: #0905 FPGA_1 Version #yyvv: #1801 FPGA_1 Test register, write 0x1234, expects 0xEDCB: #EDCB FPGA_2 Version #ddmm: #0905 FPGA_2 Version #yyvv: #1801 FPGA_2 Test register, write 0x1234, expects 0xEDCB: #EDCB FPGA_3 Version #ddmm: #0805 FPGA_3 Version #yyvv: #1802 FPGA_3 Test register, write 0x1234, expects 0xEDCB: #0000 */