• R/O
  • SSH
  • HTTPS

Commit

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

PJSC(Pump Jet Solenoid Controller)はArduinoを使用したバイク用燃料噴射コントローラです。このプロジェクトは、オープンソースECUプロジェクト『Speeduino』をベースにしています。


Commit MetaInfo

Revision28 (tree)
Time2019-02-12 23:32:25
Authormaharu

Log Message

Preparing for dual fuel load.

Change Summary

Incremental Difference

--- branches/Ver1.00_base/reference/PJSC.ini (revision 27)
+++ branches/Ver1.00_base/reference/PJSC.ini (revision 28)
@@ -53,6 +53,7 @@
5353 algorithmNames = bits, U08, [0:2], $loadSourceNames
5454 ;algorithmUnits = bits, U08, [0:2], $loadSourceUnits
5555 algorithmUnits = bits, U08, [0:2], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID"
56+ algorithmUnits2 = bits, U08, [3:5], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID" ;[PJSC v1.10] For Secondary Fuel
5657 algorithmLimits= array, U16, [8], "", 1.0, 0, 0, 511, 0, noMsqSave
5758 #define all_IO_Pins = "Board Default", "INVALID", "INVALID", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "INVALID"
5859 #define IO_Pins_no_def = "INVALID", "INVALID", "INVALID", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "INVALID"
@@ -318,22 +319,19 @@
318319 pjscFreq = scalar, U08, 70, "Hz", 2.0, 0.0, 10, 511, 0 ;[PJSC]
319320 exValvePosMin = scalar, U08, 71, "ADC", 1.0, 0.0, 0.0, 255.0, 0 ; |
320321 exValvePosMax = scalar, U08, 72, "ADC", 1.0, 0.0, 0.0, 255.0, 0 ; |
321- exTrigHysteresis = scalar, U08, 73, "deg", 1.0, 0.0, 0.0, 255.0, 0 ; |
322- squirtDeviceType = bits, U08, 74, [0:0], "Injector", "Solenoid valve" ; |
323- multiVEmapEnabled = bits, U08, 74, [1:1], "No", "Yes" ; |
324- exTrigModeSelect = bits, U08, 74, [2:3], "Disable", "Spark timing capture", "MAP select switch", "INVALID" ; |
325- externalTrigEdge = bits, U08, 74, [4:4], "Rising", "Falling" ; |
326- exValveCaptureEnabled = bits, U08, 74, [5:5], "Disable", "Exhaust Valve Position capture" ; |
327- dutyPulseCaptureEnabled = bits, U08, 74, [6:6], "Disable", "PWM input" ; |
328- dutyPulseCaptureEnabled2 = bits, U08, 74, [7:7], "Disable", "PWM input" ; |
329- dutyPulseOnLevel = bits, U08, 75, [0:0], "High", "Low" ; |
330- dutyPulseOnLevel2 = bits, U08, 75, [1:1], "High", "Low" ; |
331- exValveCalibrationMode = bits, U08, 75, [2:2], "Off", "On" ; |
332- unused2-73-3 = bits, U08, 75, [3:3], "None", "None" ; |
333- unused2-73-4 = bits, U08, 75, [4:4], "None", "None" ; |
334- unused2-73-5 = bits, U08, 75, [5:5], "None", "None" ; |
335- unused2-73-6 = bits, U08, 75, [6:6], "None", "None" ; V
336- unused2-73-7 = bits, U08, 75, [7:7], "None", "None" ;[PJSC]
322+ exTrigHysteresis = scalar, U08, 73, "deg", 1.0, 0.0, 0.0, 255.0, 0 ; V
323+ squirtDeviceType = bits, U08, 74, [0:0], "Injector", "Solenoid valve" ;[PJSC]
324+ multiVEmapEnabled = bits, U08, 74, [1:2], "Disable", "Separate", "Switching", "Dual Fuel Load" ;[PJSC v1.10] For Dual Fuel Load
325+ exTrigModeSelect = bits, U08, 74, [3:4], "Disable", "Spark timing capture", "MAP select switch", "INVALID" ;[PJSC]
326+ externalTrigEdge = bits, U08, 74, [5:5], "Rising", "Falling" ; |
327+ exValveCaptureEnabled = bits, U08, 74, [6:6], "Disable", "Exhaust Valve Position capture" ; |
328+ dutyPulseCaptureEnabled = bits, U08, 74, [7:7], "Disable", "PWM input" ; |
329+ dutyPulseCaptureEnabled2 = bits, U08, 75, [0:0], "Disable", "PWM input" ; |
330+ dutyPulseOnLevel = bits, U08, 75, [1:1], "High", "Low" ; |
331+ dutyPulseOnLevel2 = bits, U08, 75, [2:2], "High", "Low" ; V
332+ exValveCalibrationMode = bits, U08, 75, [3:3], "Off", "On" ;[PJSC]
333+ algorithm2 = bits, U08, 75, [4:6], $loadSourceNames ;[PJSC v1.10] For Dual Fuel Load
334+ secondaryFuelUsage = bits, U08, 75, [7:7], "additive", "multiplicitive" ;[PJSC v1.10] For Dual Fuel Load
337335 veMapSelection1 = bits, U08, 76, [0:7], "VE Table 1","VE Table 2","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
338336 veMapSelection2 = bits, U08, 77, [0:7], "VE Table 1","VE Table 2","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
339337 veMapSelection3 = bits, U08, 78, [0:7], "VE Table 1","VE Table 2","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
@@ -1051,7 +1049,7 @@
10511049 ; name = scalar, type, offset, units, scale, translate, lo, hi, digits
10521050 veTable2 = array, U08, 0, [16x16],"%", 1.0, 0.0, 0.0, 255.0, 0
10531051 rpmBinsVE2 = array, U08, 256, [ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0
1054- fuelLoadBins2 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , algorithm) }, 2.0, 0.0, 0.0, {fuelLoadMax}, 0
1052+ fuelLoadBins2 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits2 , algorithm2) }, 2.0, 0.0, 0.0, {fuelLoadMax}, 0
10551053
10561054 ;-------------------------------------------------------------------------------
10571055
@@ -1341,7 +1339,7 @@
13411339 ;[PJSC] subMenu = sparkTbl, "Spark Table", 2
13421340 subMenu = veMapSelectDialog, "VE Table select" ;[PJSC]
13431341 subMenu = veTable1Dialog, "&VE Table 1", 0 ; V
1344- subMenu = veTable2Dialog, "&VE Table 2", 0, { multiVEmapEnabled == 1 } ;[PJSC]
1342+ subMenu = veTable2Dialog, "&VE Table 2", 0, { multiVEmapEnabled <= 1 } ;[PJSC]
13451343 subMenu = afrTable1Tbl, "AFR Table", 5
13461344 subMenu = std_separator
13471345 subMenu = inj_trimad, "Sequential fuel trim", 9
@@ -1888,7 +1886,10 @@
18881886 panel = veMapSelectionSet2 ; |
18891887 ; |
18901888 dialog = veMapSelectDialog, "VE Table select" ; |
1891- field = "Multi VE Table", multiVEmapEnabled ; V
1889+ field = "Multi VE Table", multiVEmapEnabled ; |
1890+ field = "Primary Fuel Load", algorithm ; |
1891+ field = "Secondary Fuel Load", algorithm2 ; |
1892+ field = "Secondary Fuel", secondaryFuelUsage, { algorithm2 <= 2 } ; V
18921893 panel = veMapSelectionDialog ;[PJSC v1.10]
18931894
18941895 ;[PJSC] dialog = veTableDialog_north, ""
@@ -3479,7 +3480,7 @@
34793480
34803481 ochGetCommand = "r\$tsCanId\x30%2o%2c"
34813482 ;[PJSC] ochBlockSize = 90
3482- ochBlockSize = 106 ;[PJSC v1.10] Extend block size for Test mode
3483+ ochBlockSize = 108 ;[PJSC v1.10] Extend block size for Test mode
34833484
34843485 secl = scalar, U08, 0, "sec", 1.000, 0.000
34853486 status1 = scalar, U08, 1, "bits", 1.000, 0.000
@@ -3589,6 +3590,7 @@
35893590 dutyRatio2 = scalar, U16, 101, "%", 1.000, 0.000 ;[PJSC]For capturing duty pulse
35903591 testCnt = scalar, U16, 103, "", 1.000, 0.000 ;[PJSC v1.10]For test mode
35913592 afr2 = scalar, U08, 105, "O2", 0.100, 0.000 ;[PJSC v1.10]
3593+ fuelLoad2 = scalar, S16, 106, { bitStringValue( algorithmUnits2 , algorithm2 ) }, 1.000, 0.000
35923594
35933595
35943596 #if CELSIUS
--- branches/Ver1.00_base/speeduino/comms.h (revision 27)
+++ branches/Ver1.00_base/speeduino/comms.h (revision 28)
@@ -15,7 +15,7 @@
1515 #define ve2SetPage 12 //[PJSC] Config Page 12
1616
1717 //[PJSC]#define SERIAL_PACKET_SIZE 90 //Must match ochBlockSize in ini file
18-#define SERIAL_PACKET_SIZE 106 //[PJSC v1.10] Extend serial packet block size for Test mode
18+#define SERIAL_PACKET_SIZE 108 //[PJSC v1.10] Extend serial packet block size for Test mode
1919
2020 byte currentPage = 1;//Not the same as the speeduino config page numbers
2121 bool isMap = true;
--- branches/Ver1.00_base/speeduino/globals.h (revision 27)
+++ branches/Ver1.00_base/speeduino/globals.h (revision 28)
@@ -455,6 +455,7 @@
455455 byte nSquirts;
456456 byte nChannels; //Number of fuel and ignition channels
457457 int16_t fuelLoad;
458+ int16_t fuelLoad2; //[PJSC v1.10] For Secondary Fuel Load
458459 int16_t ignLoad;
459460 bool fuelPumpOn; //The current status of the fuel pump
460461 byte syncLossCounter;
@@ -610,22 +611,20 @@
610611 byte dutyPulseCaptureEnabled: 1; // | For capturing duty pulse ch1
611612 byte dutyPulseCaptureEnabled2: 1; // | For capturing duty pulse ch2
612613 byte dutyPulseOnLevel: 1; // | For capturing duty pulse ch1, 0: high, 1: low
613- byte dutyPulseOnLevel2: 1; // | For capturing duty pulse ch2, 0: high, 1: low
614- byte exValveCalibrationMode: 1; // | Support Exhaust Valve calibrationmode
615- byte unused1_74_3: 1; // | Place holder
616- byte unused1_74_4: 1; // | Place holder
617- byte unused1_74_5: 1; // | Place holder
618- byte unused1_74_6: 1; // | Place holder
619- byte unused1_74_7: 1; // V Place holder
614+ byte dutyPulseOnLevel2: 1; // V For capturing duty pulse ch2, 0: high, 1: low
615+ byte exValveCalibrationMode: 1; //[PJSC] Support Exhaust Valve calibrationmode
616+ byte fuelAlgorithm2: 3; //[PJSC v1.10] For Secondary Fuel Algorithm
617+ byte secondaryFuelUsage: 1; //[PJSC v1.10] For Secondary Fuel Algorithm
618+ byte unused1_74_7: 1; //[PJSC] Place holder
620619 byte veMapSelection[4]; //[PJSC]
621620 byte veMapSelection2[4]; //[PJSC v1.10] For MAP switching
622621 byte dutyFreqTst[4]; //[PJSC v1.10] For test mode
623622 byte dutyRatioTst[4]; // |
624- byte testop_fp: 1; // |
625- byte testop_inj: 2; // |
626- byte testop_coil: 2; // |
627- byte testsel_inj: 2; // |
628- byte testsel_coil: 1; // |
623+ byte testop_fp: 1; // |
624+ byte testop_inj: 2; // |
625+ byte testop_coil: 2; // |
626+ byte testsel_inj: 2; // |
627+ byte testsel_coil: 1; // |
629628 uint16_t testint; // |
630629 uint16_t testpw; // |
631630 uint16_t testinjcnt; // |