Я пытаюсь прочитать данные с периферийного устройства, но иногда возникают ошибки, даже когда я помещаю его в блок try / catch, что останавливает выполнение во время выполнения.
const ina219 = require('ina219')
const DELAY_MS = 15
try {
let getVoltage = ina219.calibrate32V1A(() => {
let int = setInterval(() => {
ina219.getShuntVoltage_mV((volts) => {
console.log(volts)
})
}, DELAY_MS)
})
}
catch (error) {
console.log(error)
if(conditionIsMet) {
// exit try-catch
} else {
getVoltage // restart getVoltage
}
}
/ home/pi/Documents/node_modules/i2c-bus/i2c-bus.js:355 return i2c.readI2cBlockSync (периферийная синхронизация (this, addr), cmd, длина, буфер);
Ошибка: ошибка связи при отправке
Я хотел бы продолжать перезапуск, пока не будет выполнено условие.
Как я могу перехватить эту ошибку и перезапустить getVoltage
при появлении ошибки?