Нужна помощ в написание софта для данной связки.
Нужно с посощью меги управлять ДДС-ом, тоесть изменять частоту по последовательной шине!
Помогите плиз написать софт для этого дела, желательно под CodeVision!
Спасибо всем кто откликнется.
int PIN_RESET = 13;
int PIN_FREQ_UPDATE = 12;
int PIN_CLOCK = 11;
int PIN_DATA = 10;
void AD9850Reset() {
digitalWrite(PIN_FREQ_UPDATE, 0);
digitalWrite(PIN_RESET, 0);
digitalWrite(PIN_RESET, 1);
digitalWrite(PIN_RESET, 0);
digitalWrite(PIN_CLOCK, HIGH);
digitalWrite(PIN_CLOCK, LOW);
digitalWrite(PIN_FREQ_UPDATE, 1);
digitalWrite(PIN_FREQ_UPDATE, 0);
}
//frequency in Hertz
void AD9850Update(double frequency) {
unsigned char i, w;
long int tuningWord;
tuningWord = frequency* 4294.967296f / 125.0f;
shiftOut(PIN_DATA, PIN_CLOCK, LSBFIRST, tuningWord);
shiftOut(PIN_DATA, PIN_CLOCK, LSBFIRST, tuningWord >>
shiftOut(PIN_DATA, PIN_CLOCK, LSBFIRST, tuningWord >> 16);
shiftOut(PIN_DATA, PIN_CLOCK, LSBFIRST, tuningWord >> 24);
shiftOut(PIN_DATA, PIN_CLOCK, LSBFIRST, 0x0);
digitalWrite(PIN_FREQ_UPDATE, 1);
digitalWrite(PIN_FREQ_UPDATE, 0);
}
Вот примерный код под аурдино, как можно его переписать под CodeVision?
Тактовая частота ДДС -125 МГц.
