Перейти к содержанию
    

badik

Участник
  • Постов

    45
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о badik

  • Звание
    Участник
    Участник

Информация

  • Город
    Array
  1. Да речь про WinAVR. Подключил util/setbaud.h Задал: #define F_CPU 1000000UL #define BAUD 9600 Устанавил скорость void USART_Init( unsigned int UBRR_baud ) { UBRRH = UBRRH_VALUE; UBRRL = UBRRL_VALUE; ... Теперь что UBRR не знаю. STK500 fuse cтоит 1МГц. Передаю байты на PC Программa Terminal. На 9600 не работает. Стал в Terminal менять скорость. Заработала на 4800?
  2. Осваиваю ATmega16, с помощью STK500. Программирую USART. Взял пример из книги "Программирование микроконтроллеров Atmel на языке С", В.С. Прокопенко, 2012. Книга с диском. USART работает, но передает "тарабарщину". Что-то с инициализацией (я так думаю)? Много пытался задавать различные значения скорости: USART_Init( 0x05 );// 9600 TestUARTATmega16_.txt
  3. ATmega16: проект - test UART для STK500 – стартовый набор, принять/послать байт на UART. AVR Studio 4.18.700. Пока отлаживаю, неправильная скорость UBRR_baud, а так рабочий. TestUARTa16_.rar
  4. Прошу извинить про ШИМ. ATtiny13 имеет только Timer 0. Сверх компактный. Но по работе все так же. ПРИ инициализации PORTD заменить на PORTB, выход Timer 0 - PB0. В работе OCR1A на OC0A.
  5. ШИМ это много проще. Делаете в начале инициализацию к примеру Timer 1. DDRD= 0xFF; // ПОРТ D как выход, выход Timer 1. PORTD= 0x00; ICR1= <20мс>; Timer1_INIT(); // PWM и сама прога while (1){ if (!PINB.0) OCR1A = <1мс>; //Button pressed else OCR1A = <2мс>; //Button released } <20мс>, ... это константы, зависят от тактовой частоты. Можно инициализацию Timer взять готовую, интернет завален. Так делать лучше, меньше грузить проц.
  6. Разобрался сам. Как это обычно. Для ATMEGA16 16 МГц таймеры 0/1 по прикидкам (Fast PWM) макс. частота получится порядка 130 кГц. Хотя по док-и как я думал д.б. больше? Я использую ШИМ чисто как источник сигналов. Поэтому у ATMEGA16 можно использовать таймеры 0/1 режим СТС. Тогда частота получится сотни кГц.
  7. RTC - я имел в виду специальный таймер работающий от дополнительного своего "часового" кварца (32.ххх кГц). Такие таймеры RTC знаю есть в DSP (ADI). Их задача просто задание времени 1с, ... А даты DAY, MONTH, YEAR это потом программно.
  8. Начинаю работать с AVR. Микроконтроллер ATMEGA16. Вопрос RTC. Datasheet ATMEGA16. В свойствах есть Real Time Counter with Separate Oscillator (RTC). Далее в описании RTC найти не могу? Есть интерес иметь реальное время на борту.
  9. Начинаю работать с AVR. Есть опыт с Microchip. Приобрёл STK500. Микроконтроллер ATMEGA16. Вопрос ШИМ. Мне нужно иметь 2 ШИМ. Меня интересуют частоты до 300 кГц, десятки кГц. Попробовал таймеры 0 и 1. Тексты программы © не привожу, стандартные, есть готовые, работают нормально. Но пока у меня десятки кГц. У ATMEGA16 макс. частота 16 МГц. Для таймера 0 по формулам из док-и макс. (предделитель 1) = 16 МГц / 256 = 62.5 кГц. Как я понял таймер 0 это предел (Fast PWM)? Для таймера 1 есть ещё ICR1 (Phase Correct PWM), если им поиграть? Сделать предделитель 1, ICR1 как можно меньше - получу я частоты ШИМ первые сотни кГц?
  10. Была у меня подобная проблема с PIC - это железо. На PC посылаю всё без проблем. Обратно - С PC на PIC каша. Это контроллер не успевает. В проге на PC после посылки каждого байта вставил задержку и всё пошло. Возможно так.
  11. STK500 помощь подключение

    Начинаю работать с AVR. Есть опыт с Microchip и немного Analog Devices DSP. Приобрёл STK500, как доступное по деньгам на http://ru.farnell.com/atmel/stk500/starter...i-9b10-00001460 выйграл существенно. Микроконтроллеры ATMEGA16. Установил WinAVR, AVR Studio 4.18. AVR Studio с диска STK500. Начал для освоения с http://cst.psu.ru/atmegamanx/index.php/app...stprogramc.html Первая программа © - лампочки (LED) STK500. Идут нормальные сообщения, что определяется STK500, GCC Микроконтроллер прошивается без проблем, мигают лампочки как надо. Правда прошил через загрузку hex файла. Не получилось через "build & run" ? И не работает отладка на С? Как я понимаю у меня д.б. отладка на С? По кнопке "build & run" идут запросы Avr1_.jpg. Там нет в меню STK500, поэтому пробывал всё - результат ноль Avr2_.jpg. Перед этим в проекте STK500 подключается - Avr3_.jpg, Avr3a_.jpg. Из AVR Studio хорошо видно, что работа с STK500 и ATMEGA16 идёт нормально. Отрабатывает на STK500 лампочка "Status" как положено. Из AVR Studio выполнется "Erase" и т.д. Прошу подсказать новичку. Заранее благодарю.
  12. STK500 помощь подключение

    Начинаю работать с AVR. Есть опыт с Microchip и немного Analog Devices DSP. Приобрёл STK500, как доступное по деньгам на http://ru.farnell.com/atmel/stk500/starter...i-9b10-00001460 выйграл существенно. Микроконтроллеры ATMEGA16. Установил WinAVR, AVR Studio 4.18. AVR Studio с диска STK500. Начал для освоения с http://cst.psu.ru/atmegamanx/index.php/app...stprogramc.html Первая программа © - лампочки (LED) STK500. Идут нормальные сообщения, что определяется STK500, GCC Микроконтроллер прошивается без проблем, мигают лампочки как надо. Правда прошил через загрузку hex файла. Не получилось через "build & run" ? И не работает отладка на С? Как я понимаю у меня д.б. отладка на С? По кнопке "build & run" идут запросы Avr1_.jpg. Там нет в меню STK500, поэтому пробывал всё - результат ноль Avr2_.jpg. Перед этим в проекте STK500 подключается - Avr3_.jpg, Avr3a_.jpg. Из AVR Studio хорошо видно, что работа с STK500 и ATMEGA16 идёт нормально. Отрабатывает на STK500 лампочка "Status" как положено. Из AVR Studio выполнется "Erase" и т.д. Прошу подсказать новичку. Заранее благодарю.
  13. Маленькое уточнение модуль выход 1pps есть. http://www.wless.ru/technology/?tech=10 GPS сборки: LS20032, MC-1513-96, LS20031 ... интересуют подобные вещи. http://www.locosystech.com/product.php?zln=en&id=35 На LS20032, ... выход 1pps не попадался
  14. Главное речь идёт не о частоте выдачи навигационных сообщений - Update rate 1Hz default, up to 10Hz. Есть у GPS-модулей спец-й вывод TIMEPULSE или 1PPS. Это один импульс. Стандартно выдается: период 1с, длительность самого импульса 0.1с. Этот импульс у GPS-модулей можно перестраивать в довольно широких пределах: период, длительность. Видел период от 0.0001с до 60с. Цель импульса - для систем синхронизации времени. Он сам синхронизаван с UTC (мировое время). Диаграмма GPS - появляется импульс 1PPS (TIMEPULSE ) и далее с определённой задержкой после навигационные сообщения. У Вас, к примеру, есть ряд разнесённых устройств. Их синхронизацию можно сделать через GPS 1PPS/TIMEPULSE. Просто у GPS-модулей вывод 1PPS/TIMEPULSE не выводится. Он есть у микросхемы GPS, на которой построен GPS-модуль. Как думаю самому впаяться к микросхеме GPS. GPS-модуль с выходом 1PPS/TIMEPULSE не нашел. Прсто это мало кому нужно. Делать самим GPS-модуль от микросхемы для наших условий нереально - высокий монтаж. Что бы перестраивать импульс - нужна связь с PC. В http://www.u-blox.com/en/evaluation-tools-...r/u-center.html u-center GPS evaluation software u-center version 6.10 это через COM-порт. Потбирали соответсвующий GPS-модуль.
  15. Нужна консультация GPS. Интересует система синхронизации времени на основе сигналов навигационных спутников. В GPS есть такая возможность. Это выводы GPS-модулей TIMEPULSE или 1PPS. Стандартно выдаётя с частотой 1гц. Можно повышать эту частоту, нужно 10гц. Есть GPS-модули позволяющие это делать. выбрали LS20032 Можно узнать - можно программировать LS20032 на 10гц и как. Либо другое подходящее решение. Средсва программирования? Одно что знаем: http://www.u-blox.com/en/evaluation-tools-...r/u-center.html u-center GPS evaluation software u-center version 6.10 В проге u-center есть установки через Binary Protocol - Input. Есть Config для TIMEPULSE - можно изменять период от 1мс до десятки с (стоит 1с). Так же длительность самого импульса. Как понимаю это не - Update rate 1Hz default, up to 10Hz. Заранее спасибо.
×
×
  • Создать...