Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Computer ControlsComputer Controls
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[AVR/Atmega8] - Termometr bezprzewodowy - weryfikacja schematu

15 Jan 2014 16:04 2631 4
  • Level 9  
    Czy mógłbym poprosić szanownych forumowiczów o zweryfikowanie dwóch schematów?
    Pierwszy z nich w zamierzeniu ma umożliwiać bezprzewodową komunikację komputera z peryferiami. Został zbudowany w oparciu o:
    - mikrokontroler Atmega8 – odpowiedzialny za odbiór transmisji UART i przekazywanie jej do modułu komunikacji bezprzewodowej
    - układ FT231XS - odpowiedzialny za komunikację z komputerem
    - układ rfm12b – moduł bezprzewodowy
    - LDO – zamienia napięcie 5V z szyny USB na 3,3 potrzebne dla Atmegi i rfm12b
    Poniżej zamieszczam schemat:
    [AVR/Atmega8] - Termometr bezprzewodowy - weryfikacja schematu

    Drugi układ to bezprzewodowy termometr i barometr, który ma przesyłać dane do powyższego układu. Oparłem go o:
    - bliźniaczy rfm12b
    - Atmega 8 – odczyt temperatury i ciśnienia z czujników i wysyłanie ich przez rfm12b
    - TC74A0-3.3VAT - czujnik temperatury
    - HP01S1 – czujnik ciśnienia.
    - LDO 3,3v – zakładam zasilanie bateryjne, 4 popularne paluszki (AA). Pewnie można by mniej, ale akurat mam zbędny bank na takie baterie

    Poniżej zamieszczam schemat:
    [AVR/Atmega8] - Termometr bezprzewodowy - weryfikacja schematu

    I mam jeszcze parę pytań:
    - w obu układach używam rfm12b na 433Mhz, natomiast jeden jest obudowie SMD a drugi THT. Nie znalazłem w nocie informacji że mogą nie być kompatybilne, czy któryś z forumowiczów mógłby to potwierdzić?
    - w module podłączanym do PC przewidziałem docelowo wstawienie kwarcu, tak aby móc używać UART z większymi prędkościami (przy innych projektach), natomiast w chwili obecnej nie posiadam takowego i na początek chciałbym go nie wlutowywać (zakładam, że kondensatorów też w takim przypadku nie powinienem wlutowywać?). Czy może być z tym problem?
    - w module termometru założyłem, że będzie jeszcze istniała możliwość odłączenia rfm12 i korzystania z przewodowej transmisji po UART – takie wyjście do debuggingu. Ponieważ układ działa na 3.3V a posiadam przejściówkę USB<->UART na 5V, dla linii TX z komputera przewidziałem podzielnik napięcia. Czy dobrze dobrałem wartości i czy to wystarczy?

    Jest to mój pierwszy samodzielny projekt, a moja wiedza o elektronice i mikrokontrolerach w głównej mierze sprowadza się do przeczytania bloga mikrokontrolery.blogspot.com (świetna sprawa – polecam wszystkim początkującym) i oślej łączki z EP, więc proszę o wyrozumiałość.

    Z góry dziękuję za wszystkie uwagi.

    W załączeniu wrzucam też pliki z Eagle.
  • Computer ControlsComputer Controls
  • Helpful post
    Moderator on vacation ...
    Witaj.

    To może ja zacznę, skoro taka cisza w Twoim temacie :)

    1. Ta wersja mikrokontrolera nie może działać z 3,3V.
    2. Schematy generalnie wyglądają OK, choć mogłem coś przegapić.
    3. Kwarc o który pytasz powinieneś zastosować, by mieć pewność komunikacji. Jeżeli go nie wlutujesz to nie ma sensu tych kondensatorów dodawać, ale nie będą przeszkadzać, bo tych pinów i tak nie wykorzystujesz inaczej.
  • Computer ControlsComputer Controls
  • Helpful post
    Level 10  
    Tylko pamiętaj że atmega8 żeby chodziła na 3V3 musi mieć literkę L na końcu, ale wtedy jej max częstotliwosć to 8Mhz (1 strona datasheet'a atmegi). W sumie ciekawe jak by działała na np. 18,432Mhz
  • Level 9  
    Dziękuję bardzo za te cenne uwagi!

    dondu wrote:
    1. Ta wersja mikrokontrolera nie może działać z 3,3V.

    lodrex wrote:
    Tylko pamiętaj że atmega8 żeby chodziła na 3V3 musi mieć literkę L na końcu

    Racja, zapomniałem napisać że dysponuję Atmegami8L Niestety nie miałem odpowiedniego urządzenia w Eagle, żeby to zaznaczyć.
    dondu wrote:
    2. Schematy generalnie wyglądają OK, choć mogłem coś przegapić.

    To bardzo pokrzepiająca wiadomość :D
    dondu wrote:
    3. Kwarc o który pytasz powinieneś zastosować, by mieć pewność komunikacji. Jeżeli go nie wlutujesz to nie ma sensu tych kondensatorów dodawać, ale nie będą przeszkadzać, bo tych pinów i tak nie wykorzystujesz inaczej.

    OK, w takim razie powinienem jeszcze dodać identyczny kwarc po stronie termometru. Z datasheet rfm12b wynika, że maksymalna transmisja to 115.2 kbps, więc UART nie powinien szybciej działać (a zapewne nawet wolniej?). Czy w takim razie kwarc 7.3728MHz będzie odpowiedni? Widzę, że w tabeli "Examples of UBRR Settings for Commonly Used Oscillator Frequencies (Continued)" dla tej wartości % błędów jest równy 0 dla wszystkich prędkości poniżej 230.4k. Zakładam że dla 3,3V taki kwarc też jest ok?

    I mam jeszcze jedno pytanie: nie chciałbym przy okazji moich eksperymentów spalić portu USB w komputerze. W jaki sposób powinienem zabezpieczyć łącze? Do głowy przychodzi mi zastosowanie jakiegoś rodzaju bezpiecznika, ale jak zabezpieczyć linie danych?
  • Moderator on vacation ...
    s1875 wrote:
    Zakładam że dla 3,3V taki kwarc też jest ok?

    Tak co sprawdzisz na odpowiednim wykresie w dokumentacji: http://mikrokontrolery.blogspot.com/2011/04/SmartPIP-wybor-mikrokontrolera.html

    s1875 wrote:
    I mam jeszcze jedno pytanie: nie chciałbym przy okazji moich eksperymentów spalić portu USB w komputerze. W jaki sposób powinienem zabezpieczyć łącze? Do głowy przychodzi mi zastosowanie jakiegoś rodzaju bezpiecznika, ale jak zabezpieczyć linie danych?

    Możesz na czas eksperymentowania zastosować jakiś HUB za kilkanaście złotych :)
    Takie zabezpieczenie powinno wystarczyć + sprawdzanie czy nie ma zwarć przed podpięciem do HUB-u.
pcbway logo