Курс: программирование AVR

 
1 2 3 4 5 6 7 12
RU termostat #31.03.2004 15:47
+
-
edit
 

Lioxa

втянувшийся
Вопрос для монстров AVR програмирования ;) как зажеч диод ?
Сорри , разобрался :) какой прогресс теперь я умею зажигать диодик ;)
 
Это сообщение редактировалось 01.04.2004 в 12:19

Lioxa

втянувшийся
Проблема !!! Termostat прогани программу у себя в VMLAB и есле есть возможность на hardware Mega8 или Mega16
Прикреплённые файлы:
 
 
Это сообщение редактировалось 05.04.2004 в 12:34

Alim

новичок
Привет всем
[SIZE=7]
Подскажите как скачать "Уроки по программированию AVR" в зип архиве, сколько не пытался пишет архив брокен, если у кого он есть пришлите пожалуйста на мыло lwwwmail.ru
заранее благодарен
 

Lioxa

втянувшийся
у меня на выходе с max232 вот такая белеберда

A line-status error occurred
38 00 C0 C0 38 38 00 00|8.ÀÀ88..

хотя такое ощющение кагбуд-то max232 ничего и неделает !!!!!!
 
RU termostat #05.04.2004 17:24
+
-
edit
 

termostat

аксакал

Блин! Ну неужели кто-то поймет из твоего сообщения в чем дело. Ты уж потрать время, напиши: что и куда шлет, какая прога какое включение, подробней...
RU termostat #05.04.2004 17:27
+
-
edit
 

termostat

аксакал

Alim, 05.04.2004 13:29:17 :
Привет всем
[SIZE=7]
Подскажите как скачать "Уроки по программированию AVR" в зип архиве, сколько не пытался пишет архив брокен
 


Толькл что попробовал на 1й странице, качается нормально. используй ReGet.com для закачек.

Lioxa

втянувшийся
Ок . Сначала программа настраивает UART на 9600 бпс.
.equ CLOCK = 3686400 ; частота кварца ПОМЕНЯЙТЕ если другая
.equ BAUD = 9600 ; скорость передачи данных
.equ UBRRVAL = CLOCK/(BAUD*16)-1 ; переменная UBRRVAL содержит число которое определяет скорость передачи данных

; Stackpointer initialisieren ; Инициализация StackPonter'a
ldi temp, LOW(RAMEND)
out SPL, temp
ldi temp, HIGH(RAMEND)
out SPH, temp

; Baudrate einstellen ; Устанавливаем Baudrate скорость 9600
ldi temp, LOW(UBRRVAL)
out UBRRL, temp
ldi temp, HIGH(UBRRVAL)
out UBRRH, temp

; Frame-Format: 8 Bit ; Формат передачи данных 8бит. 1 стоп бит.
ldi temp, (1<<URSEL)|(3<<UCSZ0)
out UCSRC, temp

sbi UCSRB,TXEN ; TX aktivieren ; активизируем TX то-есть передачу данных

ldi temp,(1<<DDB0) ; Потом зажигает диод на PB0 порту.
out DDRB,temp ; Чтобы было видно что контроллер работает !!!


loop: ldi temp, 'T' ; Эта функция циклически посылает слово Test! в
rcall serout ; TX дальше шлём в RS232 и читаем на Com порту
ldi temp, 'e'
rcall serout ; Unterprogramm aufrufen
ldi temp, 's'
rcall serout ; ...
ldi temp, 't'
rcall serout
ldi temp, '!'
rcall serout
ldi temp, 10
rcall serout
ldi temp, 13
rcall serout
rjmp loop

В VMLAB Можно посмотреть что он пошет в TX , Открой меню Vew --> Control panel , запусти программу и увидеш Test! ........ Test! ........

Проблема в том что у меня вместо Test! какаято фигня ..........
 
RU termostat #05.04.2004 23:40
+
-
edit
 

termostat

аксакал

по твоим сообщениям похоже ты не на ту ногу сигнал в КОМ порт подаешь

У меня не было проблем с ком портом, щас вот память отлаживал все нормально работает с первого раза. на Си правда пишу "по старинке".



eskey

новичок
не поскажите — как в VMLab вызвать внешнее прерывание (INT0/INT1)?
в панели регистров/флагов GIFR.7/GIFR.6 не получается менять.
возможности прямо перейти по вектору соотв. прерывания в прмяти програм я не нашел.

но ведь можно как-то проверить обработчик прерывания?
 
RU termostat #06.04.2004 08:08
+
-
edit
 

termostat

аксакал

Кнопки для этого есть, а можно "Патен генератор" использовать, можно другим выводом МК подключеным через резистор генерить прерывание на ИНТх. Способов куча.

Lioxa

втянувшийся
termostat, 05.04.2004 22:40:47 :
по твоим сообщениям похоже ты не на ту ногу сигнал в КОМ порт подаешь

У меня не было проблем с ком портом, щас вот память отлаживал все нормально работает с первого раза. на Си правда пишу "по старинке".
 


Да там вроде только одна нога для приёма данных 2-ая !
 

Lioxa

втянувшийся
Помойму нашёл в чём проблема !!!!!
У меня на XTAL1 и XTAL2 висит кварц на 3,6864 mHz осталось только сказать Mege что надо её использовать !
 
RU termostat #06.04.2004 11:07
+
-
edit
 

Lioxa

втянувшийся
Фуууууууффффф блин ну наконец-то ............ РАБОТАЕТ , проблема была в Fuse bits как только с ними разобрался всё заработало !!!!!!
 
RU termostat #07.04.2004 13:45
+
-
edit
 

Lioxa

втянувшийся
Странный (и неточный) метод. Более точный:
16-bit timer постоянно работает в режиме счёта. 8-бит таймер тикает 50 раз в секунду (или сколько нужно). При прерывании 8-бит таймера считываешь значение 16-бит таймера и сбрасываешь его. И вся математика, 50 раз в секунду получаешь значение частоты.
 


Не я наверное тупой ......... непонимаю а каким боком частота будет измерятся ????
 
+
-
edit
 

karlos

втянувшийся
Сигнал подаётся на ногу PD5, это и Т1 - вход счётчика Timer1. Ставим Timer1 в режим счётчика (биты 0-2 в TCCR1B), и периодически считываем эго 16-bit значение TCNT1 и сразу сбрасываем на 0. Считанное TCNT1 и есть частота сигнала, если умножить на частоту опроса. Сам опрос повешен на Timer0.
Конечно, при таком подходе необходима достаточно высокая частота сигнала, чтобы за время периода опроса насчиталось достаточно периодов сигнала для необходимой точности. За то не нужен внешний делитель.
 
Это сообщение редактировалось 07.04.2004 в 18:06
RU termostat #07.04.2004 18:59
+
-
edit
 

eskey

новичок
termostat, 07.04.2004 12:45:30 :
Закажите поскорей набор Zilog



МК с сетевым модулем бесплатно раздают. пригодится наверняка.
 


никак не могу разобратся с формой.
что, например, значит Mailing address: (We cannot ship to a P.O. Box.)
если не в почтовый ящик, то куда они доставляют?

не могли бы выложить хотя бы приблизительный пример заполнения этой формы? а то у меня в этом опыта никакого.
 
+
-
edit
 

karlos

втянувшийся
Алгоритм, используемый в задаче 4, не даёт по-моему точные резултаты и не оптимален по использованию ресурсов. Я сомневаюсь в точности результатов, так как для определения периода сигнала используется только один период сигнала из многих (а другие просто игнорируются). Такая выборочная оценка не может дать хорошых резултатов. Если на сигнал накладывается помеха или гармоника, то алгоритм может выдать что-то похоже на график Lioxa. Кроме того, для моего подхода не нужен внешний делитель частоты.
 
Это сообщение редактировалось 07.04.2004 в 20:16
RU termostat #07.04.2004 20:15
+
-
edit
 

termostat

аксакал

eskey, 07.04.2004 18:09:56 :
не могли бы выложить хотя бы приблизительный пример заполнения этой формы? а то у меня в этом опыта никакого.
 


На предыдущей странице на AVR KIT заполнение
RU termostat #07.04.2004 20:17
+
-
edit
 

termostat

аксакал

karlos, 07.04.2004 18:38:22 :
используется только один период сигнала из многих ... внешний делитель частоты.
 


А делитель разве не усредняет?
+
-
edit
 

karlos

втянувшийся
Если подумать, то усредняет :) Но всё-таки лучше же использовать ресурсы AVR - счётчик у него есть, и не надо терять время на while() циклов, ждя появления какого-то бита. При этом все периоды сигнала учавствуют в определении частоты.
 
AD Реклама Google — средство выживания форумов :)
+
-
edit
 
termostat, 30.03.2004 10:12:25 :
поставить галочки: "програм зе чип" и в окне фьюзов у "RSTDISBL=0"

нажать ОК.

теперь ресетится МК с наружи не будет. Должен затикать.
 


Если еще никто не понял: после программирования RSTDISBL=0 программатор STK200/300 работать не будет, потому и "чип DAMAGE", RTFM.
 
1 2 3 4 5 6 7 12

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru