Étape 9: Que faire ensuite ? Que peut faire cette chose ?
Ainsi, il s’agit d’un exemple simple de comment vous pouvez utiliser le microcontrôleur Atmel XMega pour générer des ondes sinusoïdales. Voici quelques choses que vous pouvez faire avec des modifications mineures au firmware :1) aller plus haut! La fréquence maximale est limitée par la forme d’onde sinusoïdale du sample et les 1Méch 50 CAD. Vous pouvez modifier la fonction LoadSineWave() et définir le nombre d’échantillons à dire 10 : LoadSineWave(10). Cela fera 5 x plus de cycles. Maintenant, vous pouvez utiliser SetWaveFreq() pour aller au-delà de 20KHz à 100KHz !
2) des formes d’ondes arbitraires. LoadSineWave() charge une sinusoïde simple. Mais vous pouvez mettre toute forme d’onde souhaitée dans array données12. En C, vous pouvez faire cela dans la déclaration :
int données12 [10] = {1,2,3,4,5,6,7,8,9,10} ;
3) varier amplitude. La forme d’onde de sortie est de 0-3.3V, mais vous pouvez faire cela plus petits en redimensionnant les données chargées dans [données12].
4) augmenter la résolution de potentiomètre de réglage Freq. Le code de stock utilise le connecteur Active Directory en mode 8 bits (256 paramètres de fréquence discrète). Vous pouvez changer cela en 12 bits et laisser 2 ^ 12 = 4096 différentes fréquences