<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=8&amp;t=7933&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-07-30T10:11:44+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=7933&amp;mode</id>
<entry>
<author><name><![CDATA[Alan Bejnarowicz]]></name></author>
<updated>2014-07-30T10:11:44+01:00</updated>
<published>2014-07-30T10:11:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89441#p89441</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89441#p89441"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89441#p89441"><![CDATA[
Dziękuję. Moja ciekawość została zaspokojona:)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2551">Alan Bejnarowicz</a> — 30 lip 2014, o 10:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-30T07:57:29+01:00</updated>
<published>2014-07-30T07:57:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89426#p89426</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89426#p89426"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89426#p89426"><![CDATA[
<div class="quotetitle">antos napisał(a):</div><div class="quotecontent"><br />Jednak jest tam dopisek, że alternatywnie można podłączyć komparator analogowy, ale nie wyjaśniają<br /></div><br /><br />wyjaśnią wyjaśnią, wystarczy zajrzeć do opisu bitów rejestrów komparatora analogowego, masz tam napisane:<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Analog Comparator Control<br />and Status Register – ACSR<br /></div><br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />• Bit 2 – ACIC: Analog Comparator Input Capture Enable<br />When written logic one, this bit enables the Input Capture function in Timer/Counter1 to<br />be triggered by the Analog Comparator. The comparator output is in this case directly<br />connected to the Input Capture front-end logic, making the comparator utilize the noise<br />canceler and edge select features of the Timer/Counter1 Input Capture interrupt. When<br />written logic zero, no connection between the Analog Comparator and the Input Capture<br />function exists. To make the comparator trigger the Timer/Counter1 Input Capture interrupt,<br />the TICIE1 bit in the Timer Interrupt Mask Register (TIMSK) must be set.<br /></div><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 2 minutach ]</span></strong><br /><br />Więc jak widzisz chodzi o wewnętrzny komparator w procku, który w pełni można przełączyć / podłączyć jako źródło przechwytywania ...<br /><br />Natomiast nie dziw się, że w nocie nikt ci nie podaje do czego to można wykorzystać czy tam jak można to wykorzystać, to jest nota PDF a nie książka z przepisami na różne zastosowania różnych mechanizmów procka. Bo jak to teraz zobaczysz to też zapewne zrozumiesz, że pomysłów na zastosowanie może być miliard - ich ilość zależy tylko od wyobraźni.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 lip 2014, o 07:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[antos]]></name></author>
<updated>2014-07-30T06:38:30+01:00</updated>
<published>2014-07-30T06:38:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89421#p89421</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89421#p89421"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89421#p89421"><![CDATA[
Nie chciałbym być upierdliwy, ale chyba czegoś nie potrafię zauważyć w nocie katalogowej. O Input Capture Unit oczywiście jest poświęcony rozdział, ale to chyba za mało.<br />Rozumiem po co tam jest ICPn i jak działa. Jednak jest tam dopisek, że alternatywnie można podłączyć komparator analogowy, ale nie wyjaśniają co to daje i jak to wykorzystać. Chyba, ze ja coś opacznie zrozumiałem i tu chodzi o zewnętrzny komparator napięcia jako fizyczny układ, to wtedy owszem - od samego początku zakładałem, że sygnał wejściowy będzie pochodził z analogowego komparatora napięcia. <br />Bo jeżeli miałoby tu chodzić o jakiś wewnętrzny komparator, który znajduje się wewnątrz procesorka, to wtedy nie bardzo wiem o co chodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4865">antos</a> — 30 lip 2014, o 06:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-28T22:08:08+01:00</updated>
<published>2014-07-28T22:08:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89298#p89298</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89298#p89298"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89298#p89298"><![CDATA[
ICP działa w taki sposób, że jeśli Timer1 (tylko tam występuje taka funkcjonalność) jest ustawionu na jego obsługę to licznik timera liczy sobie zgodnie z preskarelem. W chwili gdy pojawia się zbocze na ICP wartość rejestru TCNT1 jest kopiowana do rejestru IRC1. Oczywiście można wyzwolić przerwanie. Jeśli w tym przerwaniu zmienimy zbocze wyzwalające na przeciwne to następne przerwanie nastąpi gdy impuls się zakończy. Dzięki temu złapiemy jego długość w jednostkach którymi posługuje się Timer1.<br />Można zamiast ICP podpiąć do tego komparator. Jest taka opcja w rejstrze, nie pamiętam z głowy a nie mam noty przed sobą. Ale tryb capture Timera1 to jest chyba dosłownie 2 strony w nocie.<br />Co do zmiennych 16 bitowych. To raczej nie stanowią one przoblemu.  Owszem, w programie głównym dobrze jest potraktować je jako operacje atomowe, jeśli zachodzi możliwość wyzwolenia przerwania w trakcie operacji na takich zmiennych. Ale dotyczy to ogólnie wszystkich takich operacji. <br />Zresztą możesz preskaler ustawić tak by wartosci TCNT1 i ICR1 miesciły się zawsze w młodszym bajcie, choć wtedy będziesz miał rozdzielczośc tylko 8 bitową. Ale nie wiem czy jest sens.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 28 lip 2014, o 22:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[antos]]></name></author>
<updated>2014-07-28T18:27:15+01:00</updated>
<published>2014-07-28T18:27:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89277#p89277</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89277#p89277"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89277#p89277"><![CDATA[
<div class="quotetitle">Alan Bejnarowicz napisał(a):</div><div class="quotecontent"><br />Zapytam się z ciekawości. Czy piszesz program do obsługi ultradźwiękowego czujniki odległości???<br /></div><br /><br />Nie, ale blisko. Piszę coś co ma obsłużyć linijkę CCD. Mam rozpracowane sterowanie tej linijki, teraz pozostaje mi akwizycja danych. Okazuje, się, że sygnał wyjściowy jest dość dziwny, bo natężenie światła przetwarza na impuls czasowy taki jak ten:<br /><a href="http://forum.atnel.pl/_obrazki/o/4865/00b0adec09ccf228a4a9db0b2c73dedd.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/4865/00b0adec09ccf228a4a9db0b2c73dedd.jpg" alt="Obrazek" /></a><a href="http://forum.atnel.pl/_obrazki/o/4865/be346e79b9025a386ba0b90a5048a9ea.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/4865/be346e79b9025a386ba0b90a5048a9ea.jpg" alt="Obrazek" /></a><br />Jeden z obrazków prezentuje pojedynczy pixel który jest całkowicie nieoświetlony, a drugi pokazuje pixel który jest oświetlony świałem dziennym. Dlatego przepuszczam to przez komparator o chcę to odczytywać. Myślę, że zaspokoiłem twoją ciekawość. <br /><br /><br />@sq8dsr<br />Nie jestem do końca pewien, czy Cię dobrze zrozumiałem. Ja początkowo chciałem podawać sygnał na złącze INT0 lub INT1. Pojawienie się zbocza narastającego na tym wyprowadzeniu powodowałoby generację przerwania. W tym przerwaniu uruchomiłbym licznik i zmierzył jak dlugo trwa te przerwanie. Martwiłem się tylko, czy starczy mi na wszystko czasu. <br />Twój pomysł wydaje się lepszy. Rozumiem, że wystarczy odpowiednio skonfigurować timer. Podać sygnał na ICP1 (PB0) i po pojawieniu się zbocza on policzy ile ono trwało i wynik zapisz do rejestru. Pytanie jak szybko może on być wyzwalany? I jak to wygląda od strony dostępu do 16 bitowego rejestru. Nie potrzebuję dużej dokładności dlatego wolałbym czytać tylko 8 bitów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4865">antos</a> — 28 lip 2014, o 18:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-28T09:04:34+01:00</updated>
<published>2014-07-28T09:04:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89221#p89221</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89221#p89221"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89221#p89221"><![CDATA[
Timer1  i jego funkcja ICP w związku komparatorem analogowym. <br />ICP służy do pomiaru długości impulsów. Można tego używać jako wejścia ICP, ale można też ustawić, że źródłem jest porównanie komparatora.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 28 lip 2014, o 09:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Alan Bejnarowicz]]></name></author>
<updated>2014-07-28T09:02:14+01:00</updated>
<published>2014-07-28T09:02:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89219#p89219</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89219#p89219"/>
<title type="html"><![CDATA[Re: Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89219#p89219"><![CDATA[
Zapytam się z ciekawości. Czy piszesz program do obsługi ultradźwiękowego czujniki odległości???<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2551">Alan Bejnarowicz</a> — 28 lip 2014, o 09:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[antos]]></name></author>
<updated>2014-07-28T07:51:52+01:00</updated>
<published>2014-07-28T07:51:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89217#p89217</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89217#p89217"/>
<title type="html"><![CDATA[Pomiar długości trwania impulsu na uC Atmega 8A]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7933&amp;p=89217#p89217"><![CDATA[
Witam<br /><br />Chciałbym się dowiedzieć zanim się wezmę do roboty, bo sam nie potrafię tego wywnioskować. Potrzebuję przede wszystkim mieć wyprowadzony na zewnątrz zegar taktujący 10KHz, do tego celu użyje licznika T1, który będzie generował sygnał na złączu ocie1.<br />Do tego chciałbym tym samym mikrokontrolerem odczytywać długość trwania stanu wysokiego pewnego przebiegu (sygnał z komparatora). Rozumiem, że tutaj musiałbym podać ten sygnał na wyprowadzenie INT0 lub INT1 i momencie wykrycia zbocza wysokiego uruchamiać któryś timer (t1 mam zajęty). Po zmierzeniu długości impulsu musiałbym przesłać wynik po UART do komputera (wysyłka nie musi być natychmiast - mogę najpierw te dane zapisywać do pamięci i wysłać paczką po iluśtam pomiarach).<br />Czy jest to możliwe do realizacji na AVR? Nawet taką metodą powiedzmy nie najbardziej optymalną.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4865">antos</a> — 28 lip 2014, o 07:51</p><hr />
]]></content>
</entry>
</feed>