32 lines
676 B
Python
32 lines
676 B
Python
|
from abc import ABC, abstractmethod
|
||
|
from enum import Enum
|
||
|
|
||
|
|
||
|
class Programmer(ABC):
|
||
|
def __init__(self):
|
||
|
pass
|
||
|
|
||
|
class RunMode(Enum):
|
||
|
Run = "run"
|
||
|
Stop = "stop"
|
||
|
|
||
|
@abstractmethod
|
||
|
def reset(self, mode: RunMode = RunMode.Run) -> bool:
|
||
|
pass
|
||
|
|
||
|
@abstractmethod
|
||
|
def flash(self, address: int, file_path: str, verify: bool = True) -> bool:
|
||
|
pass
|
||
|
|
||
|
@abstractmethod
|
||
|
def option_bytes_validate(self, file_path: str) -> bool:
|
||
|
pass
|
||
|
|
||
|
@abstractmethod
|
||
|
def option_bytes_set(self, file_path: str) -> bool:
|
||
|
pass
|
||
|
|
||
|
@abstractmethod
|
||
|
def otp_write(self, address: int, file_path: str) -> bool:
|
||
|
pass
|