Update repo
This commit is contained in:
@@ -0,0 +1,106 @@
|
||||
%%{
|
||||
var module = system.modules['/driverlib/interrupt.js'];
|
||||
var module_sys_err = system.modules['/driverlib/interrupt/interrupt_sys_err.js'];
|
||||
let interrupt_common = system.getScript("/driverlib/interrupt/interrupt_common.js");
|
||||
var module_wake = system.modules['/driverlib/interrupt/interrupt_wake.js'];
|
||||
let Common = system.getScript("/driverlib/Common.js");
|
||||
var nameOfModule = "interrupt";
|
||||
var nameOfPeripheral = "INTERRUPT";
|
||||
let device_driverlib_peripheral =
|
||||
system.getScript("/driverlib/device_driverlib_peripherals/" +
|
||||
Common.getDeviceName().toLowerCase() + "_interrupt.js");
|
||||
%%}
|
||||
//*****************************************************************************
|
||||
//
|
||||
// INTERRUPT Configurations
|
||||
//
|
||||
//*****************************************************************************
|
||||
void `nameOfPeripheral`_init(){
|
||||
%%{
|
||||
if (module != null)
|
||||
{
|
||||
for(var i = 0; i < module.$instances.length; i++) {
|
||||
var instance = module.$instances[i];
|
||||
let owner = instance.$ownedBy;
|
||||
//console.log("Interrupt OWNER")
|
||||
//console.log(owner.$name);
|
||||
//while(owner.$ownedBy)
|
||||
//{
|
||||
// //console.log("OWNER's Owner:")
|
||||
// owner = owner.$ownedBy;
|
||||
// //console.log(owner.$name);
|
||||
//}
|
||||
var driverlibInt = instance.driverlibInt;
|
||||
if (instance.pinmuxPeripheralModule)
|
||||
{
|
||||
let ownerSolution = owner[instance.pinmuxPeripheralModule].$solution;
|
||||
var ownerPeripheral = ownerSolution.peripheralName;
|
||||
ownerPeripheral = interrupt_common.renameInterrupt(instance.pinmuxPeripheralModule, ownerPeripheral)
|
||||
driverlibInt = driverlibInt.replace("#", ownerPeripheral);
|
||||
}
|
||||
var interruptInfo = device_driverlib_peripheral.interrupts.find((input) => {
|
||||
if (driverlibInt == input.int_define_name)
|
||||
return input
|
||||
})
|
||||
var interupt_ack_group = "INTERRUPT_ACK_GROUP" + interruptInfo.int_group_number;
|
||||
var interrupt_handler = instance.interruptHandler
|
||||
|
||||
var interrupt_enable_disable = instance.enableInterrupt? "Interrupt_enable" : "Interrupt_disable";
|
||||
%%}
|
||||
|
||||
// Interrupt Settings for `instance.interruptName`
|
||||
// ISR need to be defined for the registered interrupts
|
||||
Interrupt_register(`instance.interruptName`, &`interrupt_handler`);
|
||||
`interrupt_enable_disable`(`instance.interruptName`);
|
||||
%%{
|
||||
}
|
||||
}
|
||||
if (module_sys_err != null)
|
||||
{
|
||||
let device_driverlib_sysctl =
|
||||
system.getScript("/driverlib/device_driverlib_peripherals/" +
|
||||
Common.getDeviceName().toLowerCase() + "_sysctl.js");
|
||||
|
||||
for(var i = 0; i < module_sys_err.$instances.length; i++) {
|
||||
var instance = module_sys_err.$instances[i];
|
||||
var interrupt_enable_disable = instance.enableInterrupt? "Interrupt_enable" : "Interrupt_disable";
|
||||
var interrupt_handler = instance.interruptHandler
|
||||
|
||||
var sysErrSources = device_driverlib_sysctl.SYSCTL_STATUS_SYS_ERR
|
||||
var sysErrSourcesConfig = [];
|
||||
var enableSysErrors = [];
|
||||
for (var sysErrSourceIndex = 1; sysErrSourceIndex < sysErrSources.length; sysErrSourceIndex++)
|
||||
{
|
||||
if (instance["sysErrSource_" + sysErrSources[sysErrSourceIndex].name])
|
||||
{
|
||||
enableSysErrors.push(sysErrSources[sysErrSourceIndex].name);
|
||||
}
|
||||
}
|
||||
%%}
|
||||
|
||||
// Interrupt Settings for `instance.interruptName`
|
||||
// ISR need to be defined for the registered interrupts
|
||||
Interrupt_register(`instance.interruptName`, &`interrupt_handler`);
|
||||
`interrupt_enable_disable`(`instance.interruptName`);
|
||||
% if (enableSysErrors.length > 0){
|
||||
SysCtl_setInterruptStatusMask(`enableSysErrors.join(" | ")`);
|
||||
% }
|
||||
%%{
|
||||
}
|
||||
}
|
||||
if (module_wake != null){
|
||||
for(var i = 0; i < module_wake.$instances.length; i++) {
|
||||
var instance = module_wake.$instances[i];
|
||||
var interrupt_enable_disable = instance.enableInterrupt? "Interrupt_enable" : "Interrupt_disable";
|
||||
var interrupt_handler = instance.interruptHandler
|
||||
%%}
|
||||
|
||||
// Interrupt Settings for `instance.interruptName`
|
||||
// ISR need to be defined for the registered interrupts
|
||||
Interrupt_register(`instance.interruptName`, &`interrupt_handler`);
|
||||
`interrupt_enable_disable`(`instance.interruptName`);
|
||||
%%{
|
||||
}
|
||||
}
|
||||
%%}
|
||||
}
|
||||
Reference in New Issue
Block a user