WinAVR + AD9851
- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50
- Реклама
40 бит без библиотеки никак не заслать?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50
Подскажите с примером. как проинициализировать AD9851 и как в нее послать данные частоты
Так а что ДШ говорит?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50
- Реклама
- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50
Вот пример, но он к arduino
Код: Выделить всё
#define DDS_CLOCK 180000000
byte LOAD = 8;
byte CLOCK = 9;
byte DATA = 10;
byte LED = 13;
void setup()
{
pinMode (DATA, OUTPUT); // sets pin 10 as OUPUT
pinMode (CLOCK, OUTPUT); // sets pin 9 as OUTPUT
pinMode (LOAD, OUTPUT); // sets pin 8 as OUTPUT
pinMode (LED, OUTPUT);
}
void loop()
{
// Do a frequency sweep in Hz
for(unsigned long freq = 10000000; freq < 10001000; freq++)
{
sendFrequency(freq);
delay(2);
}
}
void sendFrequency(unsigned long frequency)
{
unsigned long tuning_word = (frequency * pow(2, 32)) / DDS_CLOCK;
digitalWrite (LOAD, LOW); // take load pin low
for(int i = 0; i < 32; i++)
{
if ((tuning_word & 1) == 1)
outOne();
else
outZero();
tuning_word = tuning_word >> 1;
}
byte_out(0x09);
digitalWrite (LOAD, HIGH); // Take load pin high again
}
void byte_out(unsigned char byte)
{
int i;
for (i = 0; i < 8; i++)
{
if ((byte & 1) == 1)
outOne();
else
outZero();
byte = byte >> 1;
}
}
void outOne()
{
digitalWrite(CLOCK, LOW);
digitalWrite(DATA, HIGH);
digitalWrite(CLOCK, HIGH);
digitalWrite(DATA, LOW);
}
void outZero()
{
digitalWrite(CLOCK, LOW);
digitalWrite(DATA, LOW);
digitalWrite(CLOCK, HIGH);
}- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50
Все разбрался, сам ни чего сложного в єтом нет.
Остался маленький вопрос по схеме включения ножка reset AD9851 ghb последовательном программировании вист в воздухе или подключена к земле?
Остался маленький вопрос по схеме включения ножка reset AD9851 ghb последовательном программировании вист в воздухе или подключена к земле?
В воздухе её оставлять нельзя, там обычный КМОП вход.geniusbsd писал(а):ножка reset AD9851 ghb последовательном программировании вист в воздухе или подключена к земле?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Сообщения: 82
- Зарегистрирован: Ср авг 19, 2009 09:34:50


