72 lines
2.8 KiB
Plaintext
72 lines
2.8 KiB
Plaintext
% var nameOfModule = "adcsafetycheckertile";
|
|
% var module = system.modules['/driverlib/' + nameOfModule + '.js'];
|
|
% let Common = system.getScript("/driverlib/Common.js");
|
|
% var nameOfPeripheral = module.peripheralName;
|
|
% var device_driverlib_peripheral = system.getScript("/driverlib/device_driverlib_peripherals/" + Common.getDeviceName().toLowerCase() + "_adc.js");
|
|
%%{
|
|
if(["F28P65x"].includes(Common.getDeviceName())){
|
|
var staticModule = system.modules['/driverlib/adcsafetychecker.js']
|
|
var stat = staticModule.$static
|
|
}
|
|
var varDelay = 500
|
|
var refMode = ""
|
|
var refVoltage = ""
|
|
%%}
|
|
//*****************************************************************************
|
|
//
|
|
// ADC Safety Checker Configurations
|
|
//
|
|
//*****************************************************************************
|
|
void `nameOfPeripheral`_init(){
|
|
%if (module != null)
|
|
%{
|
|
% for(var i = 0; i < module.$instances.length; i++) {
|
|
% var instance = module.$instances[i];
|
|
% var baseName = instance.$name + "_BASE";
|
|
`instance.$name`_init();
|
|
% }
|
|
}
|
|
|
|
% for(var i = 0; i < module.$instances.length; i++)
|
|
% {
|
|
% var instance = module.$instances[i];
|
|
% var baseName = instance.$name + "_BASE";
|
|
void `instance.$name`_init(){
|
|
//
|
|
% if(instance.enableSafetychecker){
|
|
//
|
|
// Enables the ADC result safety checker module.
|
|
//
|
|
ADC_enableSafetyChecker(`baseName`);
|
|
% }
|
|
% else{
|
|
//
|
|
// Disables the ADC result safety checker module.
|
|
//
|
|
ADC_disableSafetyChecker(`baseName`);
|
|
% }
|
|
% for(var rptrIndex in device_driverlib_peripheral.ADC_SafetyCheckInst){
|
|
% var currentRPTR = device_driverlib_peripheral.ADC_SafetyCheckInst[rptrIndex].name
|
|
% var rptrNumber = (currentRPTR).replace(/[^0-9]/g,'')
|
|
% var socName = "ADC_SOC_NUMBER"+(instance["safetycheck"+rptrNumber+"usedSOC"]).replace(/[^0-9]/g,'') ;
|
|
//
|
|
//! Configures the safety checker result for a selected SOC.
|
|
// scBase : `baseName`
|
|
// socNumber : `instance["safetycheck"+rptrNumber+"usedSOC"]`
|
|
// scInput : `instance["safetycheck"+rptrNumber+"inputSource"]`
|
|
ADC_configSOCSafetyCheckerInput(`baseName`,`socName`,`instance["safetycheck"+rptrNumber+"inputSource"]`);
|
|
//
|
|
// Configures the safety checker module.
|
|
// scBase : `baseName`
|
|
// SafetyCheckerInstant : `rptrNumber`
|
|
// ADCInstant : `instance["safetycheck"+rptrNumber+"ADC"]`
|
|
// adcResultInst : `instance["safetycheck"+rptrNumber+"ResultSelect"]`
|
|
ADC_configureSafetyChecker(`baseName`, ADC_SAFETY_CHECK`rptrNumber`,`instance["safetycheck"+rptrNumber+"ADC"]`,`instance["safetycheck"+rptrNumber+"ResultSelect"]`);
|
|
//! Configures the tolerance allowed between safety check results.
|
|
// scBase : `baseName`
|
|
// tolerance : `instance["safetyCheckTolerance"]`
|
|
ADC_setSafetyCheckerTolerance(`baseName`,`instance["safetyCheckTolerance"]`);
|
|
% }
|
|
}
|
|
% }
|
|
% } |