Так и не осилил я в протеусе 4 битный режим для дисплея,переделал на 8 битный и откомпилировал хекс для схожих процессоров. Комп мой не потянул работу с резисторной сборкой и поэтому исключил ее ,глюк проявляется в виде отсутствия реакции на нажатие клавиш.DimAlt писал(а):timer32 Спасибо, начал разбираться, понравился блок на асм.kotovasiya писал(а):to DimAlt
Алгоритм Билдер плохо дружит с протеусом, или я с протеусом ,вылазят ошибки но в железе работает без проблем.
Да я в курсе про протеусПоэтому и остановился на версии 6,95. Если не трудно, скомпилируйте для 16 меги.
DDS генератор на AVR
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
- Вложения
-
- dds_prot.zip
- (140.97 КБ) 791 скачивание
-
DimAlt
- Вымогатель припоя
- Сообщения: 576
- Зарегистрирован: Пт май 19, 2006 05:39:11
- Контактная информация:
Спасибо!
Извините, что лезу со своими советами не понимая программы.
Я в буилдере ноль, но вроде у вас там такой алгоритм
вывести данные в порт
Е_1
nop
E_0
задержка
Протеус любит, да и в жизни, помоему, когда строб Е уст до вывода данных.
Но все это чисто моё мнение. Еще были проблеммы, без тестирования флага BV когда посылал коману "очистка дисплея" и раньше времени начинал писать в лсд.
kotovasiya писал(а):Так и не осилил я в протеусе 4 битный режим для дисплея,переделал на 8 битный
Извините, что лезу со своими советами не понимая программы.
Я в буилдере ноль, но вроде у вас там такой алгоритм
вывести данные в порт
Е_1
nop
E_0
задержка
Протеус любит, да и в жизни, помоему, когда строб Е уст до вывода данных.
Код: Выделить всё
SIG_E_1;
if (data&_BV(7)) DB7_1;
if (data&_BV(6)) DB6_1;
if (data&_BV(5)) DB5_1;
if (data&_BV(4)) DB4_1;
_delay_us(3);// 3us
SIG_E_0; Но все это чисто моё мнение. Еще были проблеммы, без тестирования флага BV когда посылал коману "очистка дисплея" и раньше времени начинал писать в лсд.
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
DimAlt писал(а):Спасибо!kotovasiya писал(а):Так и не осилил я в протеусе 4 битный режим для дисплея,переделал на 8 битный
Извините, что лезу со своими советами не понимая программы.
Я в буилдере ноль, но вроде у вас там такой алгоритм
вывести данные в порт
Е_1
nop
E_0
задержка
Протеус любит, да и в жизни, помоему, когда строб Е уст до вывода данных.Код: Выделить всё
SIG_E_1;
if (data&_BV(7)) DB7_1;
if (data&_BV(6)) DB6_1;
if (data&_BV(5)) DB5_1;
if (data&_BV(4)) DB4_1;
_delay_us(3);// 3us
SIG_E_0;
Но все это чисто моё мнение. Еще были проблеммы, без тестирования флага BV когда посылал коману "очистка дисплея" и раньше времени начинал писать в лсд.
Спасибо за помощь!
Все банально просто,надо было отдельным вариантом инициализацию прописать,теперь и 4 битный вариант
- Вложения
-
- dds_prot2.zip
- (64.73 КБ) 931 скачивание
Efimozi писал(а):Не могли бы выложить Ваш вариант, если в процессе провери у меня возникнут вопросы, я Вам обязательно сообщу.
Заранее признателен.
Вот. Переделал на дискретные резисторы, так как сборка у меня уж очень специфическая.
- Вложения
-
- генератор.rar
- (23.78 КБ) 1421 скачивание
Если долго мучиться, что-нибудь... сломается.
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
Andruha писал(а):повторюсь может кто нибуть помочь у меня вопрос а можно ли все это хозяйство на МЕГЕ8 сделать для одно строчного дисплея ?
Вот,но ниже восьмерки у меня уже не получится
- Вложения
-
- dds_M8.zip
- (49.67 КБ) 1183 скачивания
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
Andruha писал(а):спасибо kotovasiya а схема какая или это еще не рабочий вариант
?
Проверена только в протеусе
- Вложения
-
- ddsM8.jpg
- (169 КБ) 1644 скачивания
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
Efimozi писал(а):В целях ликвидации моей безграмотности, подскажите какие сопроты R1 - R16 применять - разброс значения сопротивлений критичен, если критичен то на сколько?
Резисторный ЦАП должен быть R2R,тоесть 1ком к 2ком или 10ком к 20ком .Если в связке будут резисторы с разными номиналами то это отобразится на качестве пилы и синусоиды.
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
- kotovasiya
- Опытный кот
- Сообщения: 757
- Зарегистрирован: Пт мар 30, 2007 12:11:23
-=SY=- писал(а):Чё-то не катит.
Частота стробов E на порте PD1 слишком уж низкая (1 мсек.). Ну и LCD соответственно не шуршит... В чём мот быть дело?
По умолчанию в М8515 стоит внутренний генератор на 1 мгц.Но и с этой частотой дисплей должен работать,может хекс запортился,прошивайте dds.hex из этого архива.
- Вложения
-
- m8515.rar
- (44.56 КБ) 834 скачивания