70 lines
950 B
C++
70 lines
950 B
C++
#include "selftest.h"
|
|
|
|
void testAll(void)
|
|
{
|
|
testBEBA0();
|
|
testBEBA1();
|
|
testDAC0();
|
|
testDAC1();
|
|
testMirror();
|
|
}
|
|
|
|
void testBEBA0(void)
|
|
{
|
|
for(uint8_t i = 0; i < 9; i++)
|
|
{
|
|
beba0.writePortA(_BV(i));
|
|
|
|
if(i < 8)
|
|
_delay_ms(200);
|
|
}
|
|
}
|
|
|
|
void testBEBA1(void)
|
|
{
|
|
for(uint8_t i = 0; i < 9; i++)
|
|
{
|
|
beba1.writePortA(_BV(i));
|
|
|
|
if(i < 8)
|
|
_delay_ms(200);
|
|
}
|
|
}
|
|
|
|
void testDAC0(void)
|
|
{
|
|
for(uint16_t i = 0; i < 1024; i++)
|
|
{
|
|
dac0.setValue(i);
|
|
_delay_ms(1);
|
|
}
|
|
_delay_ms(100);
|
|
dac0.setValue(0);
|
|
}
|
|
|
|
void testDAC1(void)
|
|
{
|
|
for(uint16_t i = 0; i < 1024; i++)
|
|
{
|
|
dac1.setValue(i);
|
|
_delay_ms(1);
|
|
}
|
|
_delay_ms(100);
|
|
dac1.setValue(0);
|
|
}
|
|
|
|
void testMirror()
|
|
{
|
|
// deaktiviere WDT
|
|
wdt_disable();
|
|
|
|
// Endlosschleife
|
|
while(1)
|
|
{
|
|
dac0.setValue(adu.getValue(0));
|
|
dac1.setValue(adu.getValue(1));
|
|
beba0.writePortA(beba0.readPortB());
|
|
beba1.writePortA(sw.readPortB());
|
|
}
|
|
}
|