diff --git a/data/chips/STM32WL54CC.json b/data/chips/STM32WL54CC.json index 9bf6afb..7b2daf8 100644 --- a/data/chips/STM32WL54CC.json +++ b/data/chips/STM32WL54CC.json @@ -346,6 +346,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -392,6 +397,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", @@ -2908,6 +2918,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -2954,6 +2969,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WL54JC.json b/data/chips/STM32WL54JC.json index 04d475f..0a0174c 100644 --- a/data/chips/STM32WL54JC.json +++ b/data/chips/STM32WL54JC.json @@ -358,6 +358,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -409,6 +414,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", @@ -3171,6 +3181,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -3222,6 +3237,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WL55CC.json b/data/chips/STM32WL55CC.json index a9544a3..a2d45ee 100644 --- a/data/chips/STM32WL55CC.json +++ b/data/chips/STM32WL55CC.json @@ -352,6 +352,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -398,6 +403,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", @@ -2914,6 +2924,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -2960,6 +2975,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WL55JC.json b/data/chips/STM32WL55JC.json index c624241..a40290b 100644 --- a/data/chips/STM32WL55JC.json +++ b/data/chips/STM32WL55JC.json @@ -364,6 +364,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -415,6 +420,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", @@ -3177,6 +3187,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -3228,6 +3243,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4C8.json b/data/chips/STM32WLE4C8.json index bdcdc69..957d3ce 100644 --- a/data/chips/STM32WLE4C8.json +++ b/data/chips/STM32WLE4C8.json @@ -165,6 +165,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -211,6 +216,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4CB.json b/data/chips/STM32WLE4CB.json index 136e785..a841314 100644 --- a/data/chips/STM32WLE4CB.json +++ b/data/chips/STM32WLE4CB.json @@ -165,6 +165,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -211,6 +216,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4CC.json b/data/chips/STM32WLE4CC.json index 62e7e07..53fe605 100644 --- a/data/chips/STM32WLE4CC.json +++ b/data/chips/STM32WLE4CC.json @@ -340,6 +340,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -386,6 +391,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4J8.json b/data/chips/STM32WLE4J8.json index b167774..59b2ce4 100644 --- a/data/chips/STM32WLE4J8.json +++ b/data/chips/STM32WLE4J8.json @@ -177,6 +177,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -228,6 +233,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4JB.json b/data/chips/STM32WLE4JB.json index 5294bea..b6a8e25 100644 --- a/data/chips/STM32WLE4JB.json +++ b/data/chips/STM32WLE4JB.json @@ -177,6 +177,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -228,6 +233,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE4JC.json b/data/chips/STM32WLE4JC.json index dd1519e..60f51e6 100644 --- a/data/chips/STM32WLE4JC.json +++ b/data/chips/STM32WLE4JC.json @@ -352,6 +352,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -403,6 +408,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5C8.json b/data/chips/STM32WLE5C8.json index 1b75247..b555968 100644 --- a/data/chips/STM32WLE5C8.json +++ b/data/chips/STM32WLE5C8.json @@ -340,6 +340,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -386,6 +391,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5CB.json b/data/chips/STM32WLE5CB.json index 935e9a1..432910e 100644 --- a/data/chips/STM32WLE5CB.json +++ b/data/chips/STM32WLE5CB.json @@ -340,6 +340,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -386,6 +391,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5CC.json b/data/chips/STM32WLE5CC.json index e8c1eaa..8f9490f 100644 --- a/data/chips/STM32WLE5CC.json +++ b/data/chips/STM32WLE5CC.json @@ -340,6 +340,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -386,6 +391,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5J8.json b/data/chips/STM32WLE5J8.json index 028485c..03de0eb 100644 --- a/data/chips/STM32WLE5J8.json +++ b/data/chips/STM32WLE5J8.json @@ -352,6 +352,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -403,6 +408,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5JB.json b/data/chips/STM32WLE5JB.json index 43031c8..2e66a43 100644 --- a/data/chips/STM32WLE5JB.json +++ b/data/chips/STM32WLE5JB.json @@ -352,6 +352,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -403,6 +408,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/chips/STM32WLE5JC.json b/data/chips/STM32WLE5JC.json index 0388cb5..131a2d8 100644 --- a/data/chips/STM32WLE5JC.json +++ b/data/chips/STM32WLE5JC.json @@ -352,6 +352,11 @@ { "name": "COMP1", "address": 1073807872, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA0", @@ -403,6 +408,11 @@ { "name": "COMP2", "address": 1073807876, + "registers": { + "kind": "comp", + "version": "v3", + "block": "COMP" + }, "pins": [ { "pin": "PA10", diff --git a/data/registers/comp_v3.json b/data/registers/comp_v3.json new file mode 100644 index 0000000..306f776 --- /dev/null +++ b/data/registers/comp_v3.json @@ -0,0 +1,175 @@ +{ + "block/COMP": { + "description": "Comparator.", + "items": [ + { + "name": "CSR", + "description": "Comparator control and status register.", + "byte_offset": 0, + "fieldset": "CSR" + } + ] + }, + "fieldset/CSR": { + "description": "control and status register.", + "fields": [ + { + "name": "EN", + "description": "Enable", + "bit_offset": 0, + "bit_size": 1 + }, + { + "name": "PWRMODE", + "description": "Power Mode.", + "bit_offset": 2, + "bit_size": 2, + "enum": "PWRMODE" + }, + { + "name": "INMSEL", + "description": "Input minus selection bits.", + "bit_offset": 4, + "bit_size": 3 + }, + { + "name": "INPSEL", + "description": "Input plus selection bit.", + "bit_offset": 7, + "bit_size": 2 + }, + { + "name": "POLARITY", + "description": "Polarity selection bit.", + "bit_offset": 15, + "bit_size": 1, + "enum": "POLARITY" + }, + { + "name": "HYST", + "description": "Hysteresis selection bits.", + "bit_offset": 16, + "bit_size": 2, + "enum": "HYST" + }, + { + "name": "BLANKING", + "description": "Blanking source selection bits.", + "bit_offset": 18, + "bit_size": 3, + "enum": "BLANKING" + }, + { + "name": "BRGEN", + "description": "Scaler bridge enable.", + "bit_offset": 22, + "bit_size": 1 + }, + { + "name": "SCALEN", + "description": "Voltage scaler enable bit.", + "bit_offset": 23, + "bit_size": 1 + }, + { + "name": "INMESEL", + "description": "Input minus extended selection bits.", + "bit_offset": 25, + "bit_size": 2 + }, + { + "name": "VALUE", + "description": "Output status bit.", + "bit_offset": 30, + "bit_size": 1 + }, + { + "name": "LOCK", + "description": "Register lock bit.", + "bit_offset": 31, + "bit_size": 1 + } + ] + }, + "enum/BLANKING": { + "bit_size": 3, + "variants": [ + { + "name": "NoBlanking", + "description": "No blanking.", + "value": 0 + }, + { + "name": "TIM1OC5", + "description": "TIM1 OC5 selected as blanking source.", + "value": 1 + }, + { + "name": "TIM2OC3", + "description": "TIM2 OC3 selected as blanking source.", + "value": 2 + } + ] + }, + "enum/HYST": { + "bit_size": 2, + "variants": [ + { + "name": "None", + "value": 0 + }, + { + "name": "Low", + "value": 1 + }, + { + "name": "Medium", + "value": 2 + }, + { + "name": "High", + "value": 3 + } + ] + }, + "enum/POLARITY": { + "bit_size": 1, + "variants": [ + { + "name": "NotInverted", + "description": "Output is not inverted.", + "value": 0 + }, + { + "name": "Inverted", + "description": "Output is inverted.", + "value": 1 + } + ] + }, + "enum/PWRMODE": { + "bit_size": 2, + "variants": [ + { + "name": "HighSpeed", + "description": "High speed / full power.", + "value": 0 + }, + { + "name": "MediumSpeed", + "description": "Medium speed / medium power.", + "value": 1 + }, + { + "name": "LowSpeed", + "description": "Low speed / low power.", + "value": 2 + }, + { + "name": "VeryLowSpeed", + "description": "Very-low speed / ultra-low power.", + "value": 3 + } + ] + } +} \ No newline at end of file