[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
На C++ надо использовать базовый класс, от которого базируются все классы.
Что-то вроде того:
class TPhereperial
{
virtual Init() = 0;
virtual Run() = 0;
virtual SysTick() = 0;
virtual Tick100ms() = 0;
};
class TUART : public TPhereperial
{
Init();
...
};
class TSPI : public TPhereperial
{
Init();
}
TUART UART;
TSPI SPI;
TPhereperial PH[] = {
UART, SPI, ...
};
Init()
{
TPhereperial * ph;
for(ph = PH[0] ; ph < sizeof(PH) ; ph++)
ph->Init();
}
Run()
{
TPhereperial * ph;
for(ph = PH[0] ; ph < sizeof(PH) ; ph++)
ph->Run();
}
E-mail: info@telesys.ru