Skocz do zawartości

thyrgat

Użytkownicy
  • Zawartość

    12
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O thyrgat

  • Ranga
    2/10

Informacje

  • Płeć
    Mężczyzna
  1. Tam gdzie jest +5V to jest tam podawane 5V ze stabilizatora. z moich pomiarów wychodzi, że na tej dobrej płytce (ze sklepu) na pinie atmegi AREF jest ~1,4-1,6 V, natomiast w mojej płytce jest ~0,01 V czyli prawie nic. Doszedłem również do wniosku, że wszystkie pozostałe piny prócz PD0 działają poprawnie. Jedynie PD0 nie chce się uaktywnić w mojej płytce. Ktoś może się domyśla dlaczego tak się dzieje? W nocie katalogowej wyczytałem o funkcji tych dwóch pinów (PD0 oraz PD1), że zmieniają swoją funkcję jeśli korzystamy z USART. Wtedy pin PD1 staje się wyjściem, natomiast PD0 wejściem co uniemożliwiłoby wystawienie jakiegokolwiek sygnału. Czy jest możliwe, aby były te piny ustawione na transmisje USART ? Problem rozwiązany. Moja wina z kodem programu. Stało się ponieważ działałem na dwóch różnych płytkach z jednym układem i po prostu pomieszały się piny. Pozdrawiam
  2. sprawdziłem i wg mnie jest OK. Nie rozumiem dlaczego na jednym pinie normalnie wystawia się '1', a już na drugim nie. Nie wiem co może być tego powodem.
  3. Czy mógłby ktoś powiedzieć lub wskazać gdzie można znaleźć informacje na temat tego kwarcu 8MHz w schemacie? Kiedy jest on wymagany, a kiedy można go nie stosować? Pytam ponieważ zrobiłem swoją płytkę z ATMEGA8 i mostkiej H L293DNE. Mam przerobione serwo(steruje jak normalnym silniczkiem DC). Dzieją się dziwne rzeczy ponieważ jeśli układ podepnę na płytce testowej (na której jest standardowo zamontowany kwarc 8MHz) to wszystko działa. Natomiast jeśli przepnę ATMEGE do mojej płytki, wówczas silnik nie chce obracać się w drugą stronę (nie chce się wystawić "1" na jednym z pinów). Czy to jest związane z tym kwarcem? Innych różnic nie widzę w płytce testowej (kupnej), a mojej. Pozdrawiam
  4. Wrzucam poprawiony przeze mnie schemat oraz płytkę PCB. Czy jest ona wykonana na tyle poprawnie aby układ zadziałał? Wiem, że wyprowadziłem więcej pinów z atmegi, ale docelowo będzie sterowanie tylko jednym przerobionym serwem. Czy w takim układzie można zasilać serwo z tego samego zasilania stabilizowanego co resztę układu? //Edit Płytka wytrawiona i przetestowana. Działa jak należy
  5. Ok, rozumiem pouczenie. Czy jeśli w tym układzie na wejście mikrokontrolera wchodzi sygnał z przekaźnika to powinno się stosować jakieś zabezpieczenia programowe przed drgającymi stykami?
  6. A czy można trochę jaśniej wytłumaczyć? Gdzie dokładnie szukać i w czym konkretnie jest problem w tym kodzie?
  7. Chodzi ogólnie aby to był jedynie moduł z mikrokontrolerem ATMEGA8. Nic więcej. Nie proszę o pomoc przy tworzeniu większego schematu tylko konkretnie o samą płytkę zawierającą w sobie atmegę. Takie mam wymagania w moim projekcie. Czy cewka L1 (10uH) jest potrzebna w tym układzie? Schemat był tworzony na podstawie znalezionych w sieci. Czy chcąc sterować serwem przerobionym muszę uwzględnić montaż dodatkowego kwarcu ?
  8. Kolego lepiej odpuść sobie na odpisywanie na moje wątki. Forum uważam, za miejsce w którym szuka się pomocy, a nie mądruje jak nie wiadomo kto. Nie będę z Tobą prowadził dyskusji na takim poziomie publicznie dlatego jeśli chcesz porozmawiać o problemach jakiejkolwiek natury to zapraszam na PW. Panu podziękuję! Czy ktoś inny potrafiłby mi pomóc z tym kodem?
  9. Witam, postanowiłem napisać kod do obsługi serwomechanizmu. Na wstępie dodam, że póki co zamiast serwa jest zwykły silniczek DC (w celach testu). W układzie chodzi o to, że w momencie kiedy na jedno wejście atmegi8 (pin B1) będzie sygnał, wtedy na wyjściu (pin B0) powinien zostać wystawiony sygnał na 4 sekundy. Sygnał na wejście atmegi jest z przekaźnika. Problem jest taki, że w momencie kiedy wyłączy się przekaźnik przed zgaśnięciem wyjścia B0 to wyjście pozostaje w stanie wysokim cały czas. W czym może być problem? W drganiu styków w przekaźniku? #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void) { DDRB |= 1 << PINB0; //wyjście pin B0 DDRB &= ~(1 << PINB1); //wejście pin B1 PORTB |= 1 << PINB1; while (1) { if (bit_is_clear(PINB, 1)) { PORTB ^= 1 << PINB0; _delay_ms(4000); PORTB ^= 0 << PINB0; } else { PORTB ^= 0 << PINB0; } } }
  10. 1. Posiadam własny moduł stabilizatora 2. Cewka sterująca tzn. w innym module jest przekaźnik, który albo załączy te +5V na dany pin atmegi lub rozłączy 3. elementem wykonawczym będzie mikroserwo (ale to akurat w tej kwestii nieistotne) 4. Nic więcej nie będę zasiał z tych +5V 5. Program wpisuję na osobnej płytce do programowania (w tym module atmega będzie zamocowana nie na stałe) 6. Poznam po zachowaniu układu, który wiem jak ma działać w całości 7. Ogólnie cały program będzie prosty (JEŚLI 1 na pinXX TO załącz 1 na pinXX) Zadałeś dużo pytań, lecz nie wszystkie są istotne. ALe to może moja wina ponieważ nie do końca wyjaśniłem sprawę. Chodzi o to, że ta płytka TYLKO z atmegą jest jednym z modułów całego układu. Wiem, że z reguły robi się wszystko na jednej płytce (stabilizaator itp.), lecz w moim projekcie robię to inaczej. Ogólny projekt dotyczy wykorzystania RFID. Jeśli skończę go to oczywiście pochwalę się na forum.
  11. Witam, zamieszczam swój projekt schematu płytki PCB, w której zasada działania miała być docelowo następująca: - wejście zasilania z wcześniej ustabilizowanego napięcia 5V - na płytce główny element ATMEGA8 z wyprowadzonymi pinami do obsługi wejść/wyjść - dodatkowe piny +5V oraz GND dla cewki sterującej elementem wykonawczym Czy ta płytka wg Was jest poprawna do działania atmegi?
  12. mam taki problem, schemat został stworzony, potem zacząłem rysować ścieżki na PCB i okazało się, że zapomniałem o jednym połączeniu na pierwszym schemacie. Czy istnieje taka opcja (aktualizacja) schematu aby to połączenie zapomniane było widoczne na schemacie PCB ?
×
×
  • Utwórz nowe...