Отговори на тема  [ 21 мнения ]  Отиди на страница Предишна  1, 2
Проблем на честотомер с Атмега32 
Автор Съобщение
Ранг: Популярен
Ранг: Популярен

Регистриран на: Сря Яну 25, 2006 12:47 pm
Мнения: 305
Местоположение: Varna
Мнение Re: Проблем на честотомер с Атмега32
Да tgi, прав си.
Идеята беше да се спре процеса на обновяване на таймера. В случая трябва да спре/забрани таймера или тактуващата му честота, което му е най - бързо и лесно.
А това вече направо ще закове попа :)


Вто Апр 03, 2012 6:04 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение Re: Проблем на честотомер с Атмега32
:D попа да си гледа литургиите той :D

Стандартният метод, който постнах по-горе практически няма недостатък, когато е
приложим (т.е. горният байт се върти достатъчно бавно, което е практически винаги
случаят с таймерите вътре в процесор някакъв, нали са наклочени като ядрото и надолу).

Всеки power процесор чете сума ти пъти в секунда така timebase регистрите си
(които са 32-бита всеки но принципът и проблемите са същите), та това не е новост
от поне две десетилетия насам (а едва ли е за пръв път въведено в power).

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Вто Апр 03, 2012 6:10 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юли 31, 2007 2:55 pm
Мнения: 1792
Местоположение: София
Мнение Re: Проблем на честотомер с Атмега32
Другият вариант който се практикува е latch-ване на таймера при четене на едната половина, и след това другата половина се чете от latch-а.


Вто Апр 03, 2012 6:45 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение Re: Проблем на честотомер с Атмега32
Да, и това помня, че съм го виждал някъде ама не се сещам къде беше ...

[edit] Спмоних си май, така трябва да беше в 6840 - таймерът от 68xx фамилията...
Над 20 години не съм програмирал такъв та не беше лесно сещане къде съм го виждал.
Там това беше и предимство, спестяването на няколко цикъла можеше да значи
възможна срещу невъзможна реализация на немалко неща. [/edit]

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Вто Апр 03, 2012 6:50 pm
Профил WWW
Ранг: Популярен
Ранг: Популярен

Регистриран на: Сря Яну 25, 2006 12:47 pm
Мнения: 305
Местоположение: Varna
Мнение Re: Проблем на честотомер с Атмега32
woody написа:
Другият вариант който се практикува е latch-ване на таймера при четене на едната половина, и след това другата половина се чете от latch-а.


Мисля че в някои от контролерите на Microchip е направено, но все пак това е хардуер.
Колегата, обаче има проблем и трябва да намери решение.

Ние му посочихме плевника, нека той сега да си намери вратата. :)


Вто Апр 03, 2012 10:54 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран
Аватар

Регистриран на: Пон Яну 09, 2006 11:32 am
Мнения: 276
Местоположение: Kozloduy
Мнение Re: Проблем на честотомер с Атмега32
The TCNT1, OCR1A/B, and ICR1 are 16-bit registers that can be accessed by the AVR
CPU via the 8-bit data bus. The 16-bit register must be byte accessed using two read or
write operations. Each 16-bit timer has a single 8-bit register for temporary storing of the
high byte of the 16-bit access. The same temporary register is shared between all 16-bit
registers within each 16-bit timer. Accessing the low byte triggers the 16-bit read or write
operation. When the low byte of a 16-bit register is written by the CPU, the high byte
stored in the temporary register, and the low byte written are both copied into the 16-bit
register in the same clock cycle. When the low byte of a 16-bit register is read by the
CPU, the high byte of the 16-bit register is copied into the temporary register in the
same clock cycle as the low byte is read.

На всички компилатори (позвам CodeVision и GCC) си има дефиниран 16 битов регистър TCNT1 и си го четеш като хората count = TCNT1; а той компиатора си знае това горното и всичко е ок само Микроелектроника са с някакви такива трески.


Сря Апр 04, 2012 10:22 am
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 21 мнения ]  Отиди на страница Предишна  1, 2

Кой е на линия

Потребители разглеждащи този форум: Google [Bot] и 31 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни