|
Так устроит?
/*
Описание работы с микросхемой управляемого генератора частоты AD9834.
Версия 07.03.
Вариант с управлением только по 3 проводам.
Работа только с регистрами 0.
File AD9834.c
Можаров Евгений Эдуардович mozharov@yahoo.com
*///--------------------------------
// Запись 16 бит в AD9834
void WriteAD ( unsigned int Word )
{
unsigned char i;
SetBit ( ADCSO, ADCSB );
SetBit ( ADClockO, ADClockB );
ClrBit ( ADCSO, ADCSB );for ( i = 0; i < 16; i++ )
{
if ( Word & 0x8000 ) SetBit ( ADDataO, ADDataB );
else ClrBit ( ADDataO, ADDataB );
Word <<= 1;
ClrBit ( ADClockO, ADClockB );
SetBit ( ADClockO, ADClockB );
}
SetBit ( ADCSO, ADCSB );
} // WriteAD//--------------------------------
// Задать частоту генерации
void SetFreq ( float Freq )
{
float F;
unsigned long L;
// Reset
// Записываем частоту
F = Freq;
F *= 0x4000;
F *= 0x4000;
F /= AD_MClkFreq;
L = floor ( F );
// Пишем в регистр контроля
WriteAD ( AD_ControlWord );
// Данные
WriteAD ( 0x4000 | ( L & 0x3FFF ) );
WriteAD ( 0x4000 | ( ( L >> 14 ) & 0x3FFF ) );
} // SetFreq
E-mail: info@telesys.ru