@xDriver - это на гайверовском коде?
Ну почти так же, как у меня - это на аддоне Attiny10core из сообщения 13
#define __ticks_dc ((F_CPU) / 1e6) // clock ticks for 1us
uint16_t note[7] = {1911, 1432, 1517, 1432, 956, 956, 1911};
uint8_t i = 0;
void _delay_us(uint32_t __us)
{
while (__us) {
__builtin_avr_delay_cycles(__ticks_dc);
__us--;
}
}
void setup() {
DDRB |= (1 << PB2);
}
void loop() {
uint16_t ms = 0;
do {
PORTB |= (1 << PB2);
_delay_us(note[i]);
PORTB &= ~(1 << PB2);
_delay_us(note[i]);
ms += (note[i]/100) * 2;
} while (ms < 5000);
if (++i == 7) {
_delay_us(500000);
i = 0;
}
}
только мне пришлось свою функцию __delay_us() писать, потому что в том аддоне ее нет
Теперь у ТС есть простор для тестов - два новых кода на двух разных аддонах