Kodutöö taimer. Sissejuhatus digitaaltehnikasse
CCPR1L = PR2/2;
CCP1X = 0;
CCP1Y = 0;
// 4. VÄLJUNDI SEADISTUS
// PWM-lüli väljundi seadistus
// et väljund jõuaks klemmile, selleks nullitakse
// registris TRISC bit number 2
TRISC &= ~Q_buzz;
while (1){
// Kordus - loop
}
}
Gaudeamus
Programm töötab eelnevalt ära määratud helitugevusel. Programm ei kordu, vaid lugu algab
algusest peale, kui programm iga kord uuesti tööle panna. Helisagedused võetakse tabelist
Nooditabel ning pausi ja noodi pikkused tabelist Noodid. Lugu on eelnevalt ära määratud tabelis
gaudeamus.
#include
#define Q_buzz 0b0100 //(1<<2)
unsigned long n;
unsigned int m;
unsigned char nooditabel[]={
// Do, Re, Mi, Fa, Sol, La, Si
// 251, 237, 224,211, 199,188, 178,168, 158,
149,141, 133,126, 119, 112,106, 100,94, 89,84, 79,
75,70, 67,63, 59, 56,53, 50,47, 44,42, 40,
37,35, 33,31, 30, 28,26, 25,24, 22,21, 20
};