Czy ktos moze pomoc ?
Szczerze mówiąc nie brałbym się za I2C slave w BASCOMIE jak już to wstawka w ASM, pozatym nie trzeba bufora trzystanowego bo wyjścia AT89C2051 sa typu OD plus rezystor do zasilania. Juz jest podobny post, zajrzyj do niego "I2C + Atmel 89Cxx51 jako Slave". Przeczytaj i napisz co postanawisz. POZDRAWIAM :multi: patryk
Witam. Mam problem z obsłużeniem bibliotek Atmela do magistrali TWI dla mikrokontrolerów z rodziny Xmega. Próbuje odebrać dane z Mastera. Master to Atmega, która jest na pewno skonfigurowana poprawnie, gdyż dane odbierałem na innej atmedze. Problem pojawia się gdy chcę je odebrać na Xmedze, ze względu na moje początki z tym mikrokontrolerem. Może ktoś...
Potrzebujesz jakiś zasad komunikacji(protokół,ramka,itp) , które zależą od ... wielu rzeczy :) Np. master->slave - adres,typ,ile bajtów danych,dane,crc (ramka) slave->master - adres i/lub crc (ack) jeśli typ - nie spodziewam sie odpowiedzi ->koniec transmisji jeśli typ - spodziewam się odpowiedzi , to: slave->master - adres,typ,ile bajtów danych,dane,crc...
W przykładowych programowych znajdujących się w Internecie do obsługi programowej mastera 1-Wire nie znalazłem obsługi zgłoszenia alarmu/przerwania od slave. Co gorsza, programy te w takiej sytuacji zaczynają wysyłać dane na magistralę uznając zgłoszenie jako sygnał presece. Co gorsza AN atmela opisujący użycie USARta do obsługi 1-Wire przemilcza ten...
I2C to protokół asynchroniczny jeśli dobrze pamiętam, więc prędkości procków nie specjalnie mają znaczenie (ale ustawiłbym 12MHz) Natomiast znaczenie ma maksymalna szybkość transmisji I2C, która (wg. datasheet Atmela str.170) nie powinna przekraczać 400kbps, oraz Slave operation does not depend on Bit Rate or Prescaler settings, but the CPU clock frequency...
Zmienna _a1 to pomost pomiędzy biblioteką a programem użytkownika. Tak, to zawartość tej zmiennej odczyta lub zapisze układ Master. Procedura I2C_master_needs_data wykona się, jeśli kod z biblioteki wykryje operację odczytu z magistrali (zostanie zaadresowany Twój Mega8). Jeśli zatem w treści tej procedury zapiszesz cokolwiek do zmiennej _a1 to ta wartość...
Fakt, masz rację. Ale i tu jest rozwiązanie - ten układ ma tryb szeregowy z dwoma wyjściami DOUT - wtedy się wyrobi czasowo. Na jednej masz kanały 0-3, na drugiej 5-7. Poskładać to prosto - potrzebujesz master SPI realizowany np. przy pomocy USART i slave SPI. Łączysz SCK z mastera z SCK konwertera i wejściem SCK slave SPI z XMEGA. W ten sposób jeśli...
Niestety biblioteki są ale tylko dla AVR-ów. Ja potrzebuję coś takiego na 89C2051. Myślałem nad procedurką w asemblerze ale zabardzo nie wiem jak ten problem złamać. Może ktoś ma jekieś ciekawe pomysły jak zmusić Atmelka do pracy w trybie slave?
Po przeczytaniu odpowiedzi(która się przydała) zrobiłem następujące rzeczy: *sprawdziłem tym programem czy adres czujnika jest ok i czy go widzi. [syntax=vbnet]$crystal = 1000000 $hwstack = 40 $swstack = 16 $framesize = 32 Config Scl = Portb.1 Config Sda = Portb.2 I2cinit Config I2cdelay = 10 Dim I As Byte Do Cls Lcd "Trwa odczyt:" Wait 1 For I = 0...
Rozumiem, że czas nie pozwala na ręczne przepychanie bitów, choć każdy slave toleruje zmienną częstotliwość zegara, czyli przerwanie zegarowe magistrali i2c może mieć niski priorytet. pomocą może być zewnętrzny kontroler I2C, 8 bitów danych, kilka sterujących, czyli spora część tego co mamy, ale coś za coś, typu kości nie pamiętam, jakiś PCF, szukał...
tiny2313 ma USI który da się zaadoptować do tego co potrzebujesz. ze strony atmela ap avr310 i avr312 ale jeżeli nie czytasz biegle po angielsku to raczej będzie kiepsko. Chyba jakaś polska książka o avr traktuje o tym jak wykorzystać usi jako i2c slave ale nie pamietam która (raczej było to w asm niz w czym innym)
witam. poszukuje zrodel jak w temacie. wiem ze jest doc atmela ze zrodlami w asm ale niestety nie znam assemblera na avr i nie dok konca rozumiem te zrodla. sporo szukalem po sieci ale nie znalazlem wiele w temacie slave'a.
Jeśli zdecydujesz się na AT90S ... czyli Atmela, to zajrzyj na na ich stronę z aplikacjami, masz tam wszystko... no za wyjatkiem BASCOM'a ;), potem na avrfreaks.net
Witam, Mógłbyś użyć magistrali I2C na 3.3V, ale z datasheetów atmela wynika, że Vih dla TWI to min. 0.7*Vcc = 3.5V dla zasilania procka 5V - czyli tak Ci to nie zadziała. Zobacz artykuł Pozdrawiam, Dr.Vee
Witam. Chciałbym podłączyć przetwornik AD1877 ( www.analog.com/static/imported-files/dat... ) do mikroprocesora AT91SAM7SE256 ( www.atmel.com/dyn/resources/prod_documen... ), szczęśliwie procesor ten potrafi bez problemu skomunikować po I2S, więc komunikacja, gdy MK jest w SLAVE mode, a ADC w MASTER mode nie jest dużym problemem....
Dzień dobry. Po instalacji Win 10 (choć może być, że to tylko zbieg okoliczności) miałem mnóstwo trudności z Dragonem - nie był widoczny ani w AS6 (właściwie żadnej wersji), ani AS7. Po zastosowaniu rady z jednego z wątków (manewry z kopiowaniem plików między katalogami i już nie pamiętam czym jeszcze) wydawało się, że jest dobrze. Przez kilka tygodni...
Jezeli to jest overclocking to jest to bandytyzm, wtedy trzeba wymienić sprzęt. Overclockować można w domu ale nie w pracy Jak rozwiąże problem to uprzedzę klienta, że można tanio ale jest pewne ryzyko. Klient zadecyduje co zrobić, ryzykować jakieś tam problemy czy wyłożyć kasę i czas jak prawie za nowy projekt i problemów (pewnie) nie będzie. 10 lat...
Poczytaj sobie (dokładnie) specyfikację AD7922 bo żeby się z nim dogadać nie wystarczy oprogramować samo SPI. :) przecież SPI działa łancuchowo SPI - to synchroniczna dwukierunkowa transmisja szeregowa (full-duplex). Jak sama nazwa waskazuje jest to interfejs a nie protokół (czyli jakie dane, w jakim czasie i do kogo (master slave).
Witam, Zlecę napisanie programu w środowisku Atmel Studio v6.2 Więcej szczegółów na priv. Pozdrawiam Ed
Poza tym event system - o ile SAM i XMEGA go mają to inne ARMy już zazwyczaj nie. Licznik w trybie IC nie potrzebuje Event System, ponieważ ma dedykowane piny ICx. ADC nie potrzebuje Event System, ponieważ konwersja, zarówno podstawowa jak i dodatkowa (injected) może być wyzwalana z 1 z 6 liczników (w tym jeszcze poszczególne moduły IC/OC) lub pinów...
Witajcie! Robię bibliotekę mającą w zamyśle być modułem do I2C slave, z użyciem atmegi 128A. Wyizolowałem najmniejszą możliwą część błędu który doświadczyłem, może ktoś z Was będzie miał pomysł co może być przyczyną. Żebyśmy wiedzieli o czym dyskusja, kod programu: avr-g++ -O0 -std=gnu++1y -Wall -Wextra -Winline -mmcu=atmega128a Testowałem również z...
Czyli tak - dajesz Atmelka zależnie od potrzeb ATTiny2313, ATMega8 lub ATMega16 /8515/8535 itp...(portów hohohoho), do PC łączysz się przez: 1. SPI/USI<>LPT (wersja nie wymagająca dodatkowych elementów), PC pracuje jako MASTER, ATMEL jako SLAVE (ten układ składa się TYLKO z procesora, jakiegoś kondensatorka odsprzęgającego zasilanie) 2. UART<>RS232...
Tą notę miałeś na myśli? Lecz jeżeli steruje tylko jednym tranzystorem to opłaca się używać AWeX? Jakoś mam wrażenie że bardzo słabo opisali je w dokumentacji. AWeX ma własne liczniki czy korzysta z tych zwykłych?
Programator umożliwia: programowanie i zrzucanie zawartości pamięci mikrokontrolerów jednoukładowych Atmel AT89 C X051 programowanie i zrzucanie zawartości pamięci EEPROM I2C AT24C02 komunikację z urządzeniami slave 1-wire generowanie sygnału zegarowego dla Atmela, wystawianie i pobieranie wartości portów (coś jakby zalążek interfejsu debuggera) Programator...
Używam 16bitowego koloru, nie mam systemu operacyjnego, problem z jakim się borykam jest raczej opisany w podanym przez Ch.M. pdfie na str.14 pod tytułem "7.2 Priority-Based Arbitration" dokładnie to zdanie "image on the screen is shifted vertically/horizontally." tak się to zachowuje. I faktycznie aby naprawić problem robię : "To resynchronize the...
Witam. Chciałbym zaprezentować rezultat pracy dyplomowej magisterskiej wykonanej przeze mnie i kolegę, studentów Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Kierunek: Elektronika i Telekomunikacja, Specjalność: Cyfrowe Systemy Sterowania. Głównym celem pracy było wykorzystanie czujników inercyjnych w procesie sterowania robotem...
Witam. Tworzę projekt urządzenia wskazującego opartego na żyroskopie Bosch BMG160 i XMega32a4u. Wykorzystuję interfejs I2C do komunikacji. Odebrane dane z żyroskopu są przekształcane na ruchy kursora. Komunikacja z PC za pomocą sprzętowego USB. Cały projekt tworzę korzystając z frameworku Atmela ASF w Atmel Studio 6.2. Mam taki problem, że przy próbie...
Próbuje skomunikować dwa zestawy Stk500 Atmela (Atmega8515) po SPI. W teorii ładnie, pięknie a w praktyce lipa ;/ Nie mam pojęcia co może być nie tak. Wszystko robię zgodnie z dokumentacją jednak po stronie slave-a zero odpowiedzi czyli albo gdzieś się walnąłem w banalnym kodzie slave-a albo SPDR od Mastera przychodzi pusty. Liczę na pomoc ;) Master...
Ja bym to zrobił tak: PCF co 1s wysyła sygnał przerwania do ATMega8 i wtedy ATMega8 odczytuje czas. ATtiny2313 jest skonfigurowany jako slave. To da się zrobić w Bascomie- nie wiem jak teraz ale parę lat temu można było dokupić programik do zrobienia procesora jako slave. ATMega po odczycie czasu z PCF wysyła aktualny czas do ATtiny. Wtedy ATtiny nie...
Witam. Tworzę projekt oparty na mikrokontrolerze ATTINY414. Powstaje on w środowisku Microchip (Atmel) Studio. Program ma wyświetlać aktualną temperaturę z czujnika oraz średnią kroczącą temperatury z ostatnich 24 godzin. Dane chciałbym wyświetlić na małym wyświetlaczu OLED, 128 x 32, sterownik SSD1306 (komunikacja przy pomocy I2C). Mikrokontroler ma...
Zapewne nie wczytałeś się zbyt dokładnie w dokumentację do SPI, mianowicie jeśli pin SS jest wejściem i panuje na nim stan niski, to SPI kasuje bit MSTR. Jeśli pin SS jest wyjściem, to bit MSTR nie jest nigdy modyfikowany. -- edit: 19.3.2 Master Mode When the SPI is configured as a Master (MSTR in SPCR is set), the user can determine the direction of...
Szanowni Forumowicze, mam problem z przeniesieniem pewnego kodu napisanego pod atmegę328 na xmegę128A3. Chodzi tutaj o obsługę czujnika LSP25H, magistrala I2C. Oto kod pod atmegę328: [syntax=c]#define F_CPU 16000000UL #include <util/delay.h> #include <avr/io.h> #include "uart.c" //set up stdout and stdin static FILE mystdout = FDEV_SETUP_STREAM(uart_putchar,...
Cos się nie dogadujemy. Masz rację, bo ja piszę o tym konkretnie projekcie, a Ty chyba mocno teoretyzujesz na temat bardziej rozbudowanych projektów. Nie teoretyzuję. Piszę procedurę raz a dobrze i staram sie reagować a każdą możliwą sytuacje awaryjną. Nie zakładam, że sprzęt jest niezawodny w 100%. Dlatego jak w zasilaczu dałem DS18B20 to gdy nie...
ISP to "In System Programing". W AVR ISP może być po SPI (Serial Peripheral Interface) jak i JTAG (inne procki czasem maja też po USART i nie chodzi tu o bootloader). Nie wiedzieć czemu, przejęło się, ze ISP to SPI. To jedna nieścisłość. Kolejna to to, ze ISP po SPI ma kilka atandardów, 6-pin Atmela, 10 pin sa dwa (jeden to Kanda). JTAG to 10 pin. Mam...
tmf napisał: LChucki napisał: Możesz przez UART skonfigurować VID, PID, deskryptor, funkcje LED, dostac się do EEPROM w FTDI? Ale po co? Nigdy w żadnym projekcie nie potrzebowałem takiej możliwości i trudno mi sobie wyobrazić sensowny powód dla którego miałbym to zmieniać w gotowym układzie. Nigdy nie używałeś FT_PROG? Nigdy nie zmieniałeś funkcji...
mam dość niecodzienny problem a dotyczy on 2 szt atmega pracujących we wspólnym układzie. "mały" atmel coś tam sobie robi i jego zadaniem jest na żadane "duzego" wysyła informacji po SPI. Tak więc pracuje on w trybie slave i jedyne czym jest prodłaczony do drgiego układu są : masa,mosi,miso,sck,cs. Do testów zasilan ten układ z innego żródła zasilania....
Nota Atmela- 310 dla master i 312 dla slave. I przykłady W IAR- trzeba przerobić dla gcc- ale niezbyt skomplikowane.
Mam kilka mikrokontrolerowych urządzeń w swoim akwarium. Każde z nich ma swój wyświetlacz, przyciski itd. Chciałem przeprojektować to wszystko w ten sposób, żeby było kontrolowane z jednej "centralki". Generalnie używam mikrokontrolerów atmela. Jaka magistrala danych, dała by się łatwo zaimplementować do tego celu? Założenia, które wymyśliłem do tej...
Akurat mam GARSC prockow AVR i to ATMega8 :) wiec do czegos wypadaloby je wykorzystac. Co do uC to naprawde atmele sa ODPORNE NA WSZYSTKO :D [kiedys mialem przypadek zasilenia atmegi32 napieciem 12v, zagrzal sie, niby nie chodzil, polezal dwa dni, i jedyne co sie stalo to szlak trafil pamiec flash a procek chodzi bezblednie] Procesor w samochodzie:...
Witam. Właśnie jestem na etapie wyboru rodziny procesorów ARM. Do tej pory miałem do czynienia z mikrokontrolerami AVR. Teraz jednak możliwości AVR-a z typowo harwardzką architekturą się wyczerpały. Potrzebuje uC który umożliwi wykonanie kodu z pamięci ram, będzie miał co najmniej 65 linii I/O z czego 56 5V tolerant , USB device, oraz bogaty zestaw...
Witam, Jestem w fazie projektowania prostej stacji meteo. Projekt podzieliłem sobie na 2 części. Pierwsza część wykonuje pomiary (temperatura otoczenia, prędkość i kierunek wiatru) i zapisuje je na karcie SDC/MMC. Druga część wyświetla pomiary na wyświetlaczu LCD i umożliwia komunikację z PC przez RS-232. Obie część będą znajdowały się w odległości...
8051 nie ma możliwości konfiguracji poszczególnych wyjść a poza tym ma inną obciążalność wyjść (i ich charakterystyką prądowo napięciową). A może problem jest w tym sprawdzaniu wejść, bo skoro usunąłeś funkcje if i problem zniknął, to problem jest z czytaniem wejść A jeszcze sprawdź czy masz zgodne wersje oprogramowania, bo może tu się gryzie: Known...
O filtrze i ograniczeniu czasu narastania coś namieszałeś, nawet się to kłóci z cyfrową ideą tego wyjścia!. Ograniczenie jest w postaci źródła prądowego. Oj chyba nie masz racji. Schemat blokowy modułu I2C w AVR'ach Atmela. Slave (i w ogóle starsze procki) lubią dawać tylko stan niski (zwierane przez wewnętrzny tranzystor), wysoki stan podawany jest...
Zgodnie z dokumentację na stronie 4: Przerwanie generowane jest gdy: The TWINT Flag is set in the following situations: After the TWI has transmitted a START /REPEATED START condition After the TWI has transmitted SLA+R/W After the TWI has transmitted an address byte After the TWI has lost arbitration After the TWI has been addressed by own...
Witam, Czytalem wiele postow na ten temat, skorzystalem z wielu kodow i dalej nie moge uruchomic komunikacji pomiedzy dwoma atmega8. Siedze nad tym od dobrych paru dni i nie wiem czy to wina sprzetu czy programu?? (miedzy innymi bazowalem na kodzie z postu #include <avr/io.h> #include <avr/interrupt.h> #include <stdlib.h> #include...
Zgodnie z zapowiedzią sprzed paru tygodni powiem tylko pokrótce: udało mi się zaprząc stadko SAM7S256 + CS8406(jako I2S master receiver) + 4060 i po podłączeniu do sprzętu grającego po SPDIF optycznym - zagrało. Ten ostatni układ to do generowania zegara dla CS8406 (on wymaga zegara co najmniej 128*Fs) z kwarcu, z czym było trochę problemów. Również...
Witam, korzystam z gotowych "driverów" atmela do SPI, PMC i PIO. #define AT45_CS 0 #define AT45_SPI AT91C_BASE_SPI0 #define SSD2119_CS 1 #define SSD2119_SPI AT91C_BASE_SPI0 /// SPI MISO pin definition (PA16). #define PIN_SPI0_MISO {AT91C_PA16_MISO0, AT91C_BASE_PIOA, AT91C_ID_PIOA, PIO_PERIPH_A, PIO_PULLUP} /// SPI MOSI pin definition...
Z tego co piszesz to najwyraźniej nie rozumiesz ani jednego ani drugiego, sorki, ale taka prawda. Przejrzyj noty aplikacyjne Atmela, masz tam ładnie opisane I2C master i slave. Zrobienie tego sprzętowo jest o tyle prostsze, że ATMega sama wygeneruje właściwe sygnały, robiąc to programowo nie będziesz wiedział czy problem leży w samej transmisji, czy...
Czy stosowaliście jakieś protokół rutingu? Czy może to był ruting statyczny albo węzeł "master" widział wszystkie slave-y? ;) Pozdrawiam :) W zastosowanej aplikacji wymagana była tylko komunikacja wszystkich węzłów z jedną stacją bazową. Wszystkie węzły są odpytywane indywidualnie, a oprócz tego zaimplementowany jest broadcast grupowy. Tak więc kontrolerem...
Witam posiadam procesor AT91SAM7S128 - ARM Atmela chciałem go połączyć z ADC LTC1407 W nocie kat przetwornika możemy wyczytać:"3-Wire Serial Interface" z czego jedna linia to CONV(inicjujące konwersje) druga SCK(zegar) a trzecia SDO(wyjście danych) na str 16 możemy przeczytać ,że na wejście SCK należy podawać zegar.... myślałem to połączyć do atmelowskiego...
A tak na marginesie...czysto softowa interpretacja I2C jest o wiele prostsza niż uruchomienie USI w trybie TWI. Co za idiota to wymyślił :/ Jaki idiota??? taka wypowiedź świadczy tylko o tobie - niestety. Już wcześniej ktoś tu ci napisał, że procki ATtiny i nie tylko są wyposażone w moduły USI. Są one na tyle uniwersalne, że można nieco większym nakładem...
Po wysłaniu jednego bajtu (i sprawdzeniu SPIF) trzeba ręcznie wyzerować SPIF przed następną transmisją. Poza tym SS (ten od mikrokontrolera, nie od DAC) powinien być ustawiony jako wyjście przed włączeniem SPI (ustawieniem bitu SPE), bo jak nie to mikrokontroler będzie przechodził w tryb slave. Poza zaznaczonymi fragmentami pozmieniałem trochę rejestry...
aktualizował się raz gdy go podłączyłem pierwszy raz, w zakładce Tool information znalazłem to: AVR Dragon Debug host127.0.0.1 Debug port49752 Serial number00A20003622A Connectioncom.atmel.avrdbg.connection.ju... Master Firmware Version7.21 Slave Firmware Version7.21 Hardware Version17 Wygląda na to ze nie jest najnowszy, nie bardzo wiem jak zmusić...
Zadeklarowałeś: adxl_init() w której wysyłasz bufor do ADXL345: ...ponieważ już podczas wysyłania pierwszego bajtu danych z konfiguracją ( adxl_init() ) program zawiesza się nie wychodząc z pętli TWI_stop(), co zaznaczyłem w kodzie programu. Jak sprawdzasz, że akurat ta linijka sprawia problem? Sam fakt wpisania odpowiednich wartości do TWDR i TWCR...
Szukaj informacji o mapowaniu pinów w XMega. Twoja wersja (A3) obsługuje mapowanie pinów portu SPI, co może ułatwić Ci zaprojektowanie PCB. Na blogu niestety nie ma artykułu na ten temat. Remapowanie wyjść IO Niektóre mikrokontrolery XMEGA (serii A3, C, E) posiadają związany z portem IO specjalny rejestr REMAP. Rejestr ten umożliwia zmianę przyporządkowania...
Cześć. Taki problem - mam kilka płytek z prockami Atmega8, które wyposażone są też w układ do komunikacji przez RS485. Piszę też prosty program na Windows (w Visual Studio, język C#) który będzie stanowił mastera, a moduły z atmegami będą robić za Slave-y. Mam też konwerter RS232 na RS485 (swojego wykonania), który wpięty będzie w komputer. Procki Atmela...
Hmm... A co ma cena procesora do ceny In-circut debuger-a ? Procesory kupuje się wielokrotnie, a debuger raz, po za tym dla AVR istnieją tańsze, nieoryginalne wersje - sam JTAG, bez obsługi DebugWire, już za trochę więcej niż 100PLN (np. na www.propox.com ) - również na USB. ATmega8 - 7-9PLN, możliwości : • Advanced RISC Architecture – 130...
REPEATED START Nie służy do ponawiania transmisji pomimo mylacej nazwy. Ma on na celu zachowanie kontroli nad magistrala po zakonczeniu poprzedniej opeacji ( z reguly w innym trybie) np. wysyłasz komende do ukladu i chcesz odpowiedz . Jezeli uklad nie potwierdził nalezy zakonczyc transakcje sygnalem STOP zwalniając magistrale. Proponowałbym następnym...
Witam, Jak zwykle pod latarnią jest najciemniej... Nota aplikacyjna [url=]AVR311 - "Using the TWI module as I2C slave". Kod drivera w języku C jest w [url=]materiałach uzupełniających. Pozdrawiam, Dr.Vee
Co do OT to prędkość jest różna więc trzeba będzie zrobić pomiar w module slave zmostkować rx i tx zasilić go i postawić 100m od odbiornika na atmelku napisać program który wysyła bajt i mierzy czas od momentu wysłania bajtu do zgłoszenia przerwania o odebraniu takiego samego. i będzie wiadomo otrzymaną wartość podzielić przez dwa i po problemie
czy ktos probowal polaczyc dwa atmele przez I2C w praktyce i ma dzialajacy program? bo rozumiem ze musze znac zasade dzialania magistrali I2C i to ma wygladac tak, ze master wysyla cos do urzadzenia o jakims adresie a slave udaje to urzadzenie?
Potrzebuję oprogramować w bascom'ie 4 procki ATMega16 połączone przez SPI. Naturalnym w tym przypadku wydaje się być tryb multislave, 1 master, 3 slave'y. Poczytałem specyfikację SPI Atmela, zajrzałem do helpa w bascomie i nadal nie wiem jak to ugryźć. O tym do którego procka są adresowane dane decyduje linia SS (slave select) ale nie wiem jak skonfigurować...
Sterownik do montaż paralaktycznego z napędem w dwóch osiach. Wygląd teleskopu z montażem (ze strony producenta - docelowa wygląda nieco inaczej, gdyż została "ulepszona" przez mojego kolegę - zapalonego astronoma, to właśnie on "zmusił" mnie do wykonania sterownika :) niestety nie mam jej fotek) - - - - - - - - - - - - - - - - - - - - - - - - - -...
Witam szanowne grono forumowiczów. Od pewnego czasu borykam się z problemem konfiguracji SPI. Mam połączoną jedną atmegę8 jako master i 4 jako slave w sprzętowym SPI. Cztery atmegi pracujące w trybie slave zajmują się obsługą wyświetlaczy ledowych (dla każdej atmegi 4 8 segmentowe wyświetlacze obsługiwane multiplekowo). Obsługa samych wyświetlaczy działa...
Witam, ostatnio próbuje doprowadzić do komunikacji między dwoma atmegami 8 ( pierwsza jako master transmiter druga jako slave receiver) slave receiver ma podłączoną diode do PB0 obie atmegi taktowane są 8Mhz , rezystory pull-up : 1kΩ Posługując się dokumentacją atmela stworzyłem oto taki kod który niestety nie działa (dioda się nie zapala) Prosiłbym...
Czy (tak w 2 słowach) - ten protokół (MIPI) dałoby się wykorzystać z "mniejszymi" MCU w rodzaju 8 bitowych Atmeli AVR ? Moim zdaniem - nie, choć może znajdą się jacyś magicy (jak np. gość od USB na AVR) i to zrobią... Dodano po 1 Witam, z opisu scalaka do obsługi sprzętowej konwersji HDMI -> RGB888 widze że to jest konwersja w jednym kierunku. Istnieją...
Witam, próbuję odczytać wartość ciśnienia za pomocą czujnika mpl3115a2, a następnie wartość tą wyświetlić na wyświetlaczu lcd - hd44780. Jednak jedyne co mi się wyświetla to pojedynczy znak zakodowany w ASCII. Ciśnienie w tym czujniku o ile się nie mylę jest reprezentowane przez 20 bitową liczbę, więc chyba pomijając fakt, że nie wyświetla mi decymalnej...
A tak z ciekawości zapytam dlaczego nie zrobisz drugiego i2c programowego? Bedziesz miał interfejs sprzętowy do radia wylacznie, a programowy do LCD. i nic Ci się nie pogryzie. ponizej kod Petera Fleury. [syntax=avrasm];************************... ; Title: I2C (Single) Master Implementation ; Author: Peter...
(at)tmf - odnośnie podpięcia zewnętrznie do GND to masz przecież w notce AVR1300: Unsigned Mode In unsigned mode the conversion result from the ADC is: TOP V VV RES REF INP * Δ+ = VINP is the single ended input and ΔV = VREF x 0.05. TOP is the top value given by the configured resolution. For 12-bit mode TOP is 4096 and 8-bit mode TOP is...
Po kilku tygodniach zmagań udało się ukończyć projekt wzmacniacza wraz ze sterownikiem. Mimo, że podczas realizacji tego projektu nie "odkryłem Ameryki", a wykorzystana technologia ma już swoje lata, to i tak temat wydał mi się być na tyle ciekawy, że postanowiłem go "na nowo" zgłębić, dodając małe drobiazgi jak programowanie pilota czy funkcje "fadeIN"...
Co kto lubi. Jeśli ktoś chce ciągnąć (druta) RS485 czy CAN na drodze 10 cm niech se ciągnie. Do transmisji w obrębie urządzenia czy płytki wymyślono standard I2C. Przy dużych prędkościach transferu idealnym rozwiązaniem jest SPI przy czym faktycznie trzeba zadbać o oddzielne dociągnięcie czy przełączanie biorących udział w programowaniu ISP linii RESET....
Wiem o tym. Dla STM32 program piszę na ślepo jak dla AVRów i debuguję printfem, oscyloskopem lub innymi metodami. Bez JTAGa też da się uruchamiać systemy, ale z JTAGiem może być trochę łatwiej. Zależy od poziomu złożoności programu w połączeniu z doświadczeniem i sprytem programisty. Debuggowanie przez terminal (bo chyba o takim właśnie piszesz) sprawdza...
Witam, od kilku dni "męczę" się w dosłownym tego słowa znaczeniu z implementacją KEELOQ'a w swoim urządzeniu. Pomęczył bym się jeszcze kilka dni ale gonią mnie terminy i dlatego chciałbym poprosić o pomoc bardziej doświadczonych kolegów. Buduję układ z sercem Atmela gdyż z tymi procesorami miałem do tej pory najwięcej do czynienia. Niestety nie mam...
Witam. Proszę o podpowiedź, gdzie szukać problemu. Na Atmega32 pracującej jako Slave I2C mam wyświetlacz GLCD. Fragment kodu : [syntax=c] if(BUF_status.st_ready) { switch(Buf[0]) { case 'c': GLCD_ClearScreen(); break; case 'l': GLCD_DrawLine(Buf[1],Buf[2] , Buf[3], Buf[4], Cz); break; case 'g':GLCD_GotoXY(Buf[1], Buf[2]); break; case 't':GLCD_Puts(&Buf[1]);...
Zegar SCK już zmniejszałem. Najlepiej działał przy 10 kHz, tak jak pokazywałem. Przy wyższych niemal od razu staje. Chciałbym zauważyć, że sposób obliczania wartości TWBR przedstawiony w pierwszym poście jest nieprawidłowy, w związku z czym nie uzyskasz zakładanej częstotliwości 100kHz na magistrali, tylko dużo niższą. W ogóle przy taktowaniu F_CPU=1MHz...
Pierwszy raz Ambiq Micro zaprezentowało mikrokontroler Apollo w 2015 roku. Miał on oferować wydajność, jak Cortex-M4 przy poborze prądu na poziomie rdzenia M0+. Wszystko dzięki nowej technologii optymalizacji pracy, która pozwolić miała na pracę systemu przy bardo niskim napięciu - poniżej 0,5 V. Kolejnym krokiem była prezentacja następcy tego układu....
Motywacją do wykonania sterownika przedstawionego w tym temacie była chęć doprowadzenia do ładu kilku starszych wzmacniaczy, które wykonałem a niektóre z nich także pokazywałem na elektrodzie. Są to m. in.: - - Wzmacniaczom postanowiłem dodać selektory wejść oraz regulację głośności. Niby proste ale nie chciałem robić jeszcze większej "druciarni" od...
:) Witam wszystkich :) Zastanawiam się czy AT89C2051 da radę emulować w 100% PCF8574 CPU musiał by pracować w trybie SLAVE To tylko pomysł :roll: :roll: Napiszcie Co o tym Myślicie i jak Byście to zrobili :?: :?: :?: Pozdrawiam Darek Panowie NIE chodzi o aspekty finansowe O sensowność zagadnienia Jest Problem czyli I2c w CPU serii 80C51 w trybie Slave...
Jesli moge zapytac to co to za nowy sygnal /SS. Mi sie wydaje ze wymienilem wszystkie? Slave Select - używana przy magistarli z kilkama urządzeniami podrzędnymi, uaktywnia odbiór/nadawanie tylko w wybranym urządzeniu podrzędnym, reszta urządzen podrzędnych wystawia na swoje linie MISO stan wysoki . Kolorem czerwonym zaznaczyno nieprawdziwe twierdzenie....
OK spokojnie. Żywym tekstem w dokumentacji nie ma nigdzie napisane że załaczenie opcji oc rozłacza całkowicie sterowanie z rejestru port. Nie jest o tym wspomniane ani przy opisie wyboru trybu oc ani w opisie samej końcówki. Dopiero jak zacząłem przeglądać obrazki ze schematami portu to mozna wywnioskowac ze stan >0 dla trybu oc odłacza sterowanie z...
Witam Poszukaj biblioteki do sprzetowego TWI na stronie Atmela w dziale z aplikacjami - bardzo ladnie zrobione dla slave jak i dla mastera z opisem i z przyladami. I na pewno dziala.
Dlaczego komplikujesz sobie życie?? Nie lepiej wziąść sprzętowo zrobić obsługę I2C?? Po to wynaleźli sprzętówkę. Porównujesz status tylko i robisz obsługę w przerwaniu i śmiga. Mam to w asm napisane i działa jak nigdy w trybie master. Bawiłem się kiedyś slave i też działa. Arbitraż dla 2 master też jest extra. Spróbuj to machnąć w Twoim C - ile to pamięci...
Moim zdaniem SPI jest tutaj idealne. Poniewaz bity DATA są czytane na zboczu CLK (4 rodzaje kolejnosci do wyboru) czas zegara nie ma znaczenia - np. 7 bitów możesz odczytać w 10us a ósmy za godzinę. Wtedy przerwanie po odbiorze 16 zboczy zareaguje i czytasz bajt. Istotna jest synchronizacja - moze byc czasowa np. przerwa pomiedzy bajtami lub pierwszy...
wiesz co jakoś nie chce mi się wierzyć że wina stoi po stronie konfiguracji Fuse-ów. jeśli chodzi o SPI to w fusach można jedynie wł/wył programowanie uC przez SPI (czego nie radzę:P). nie przypominam sobie żeby były tam jakieś inne ustawienia odnośnie SPI. natomiast... otwarłem sobie teraz dokumentację atmegi8. Nie wiem czy dobrze myślę po intensywnym...
O ATme'dze nie pisałeś wcześniej :) Rozumiem że jest slave'm - możesz napisać co robi? Pytam bo też chciałem zrobić slave'a na Atmel'u. Tak, jak Kolega pisze - ATmega jest slave'm. Wcześniej współpracowała z ATmegą128 i nie było problemów z komunikacją - pojawiły się po przesiadce na ARMa i Linuksa. ATmega wraz z kilkoma dodatkowymi elementami jest...
Cześć Może ktoś będzie potrafił wyjaśnić moje wątpliwości w sprawie trybu open-drain w kontrolerach AT32UC3A. Otóż, w dokumencie Each I/O line of the GPIO features: ... Open Drain mode enabling sharing of an I/O line between the MCU and external components. Następnie (24.2): To enable the TWI, the programmer must perform the following steps: Program...
Ale przecież LIN to prosta magistrala, którą można realizować całkowicie programowo, lub semisprzętowo przy pomocy USART/USI. Zgadza się, dla kogoś kto w tym już troche siedzi jest to z pewnością bardzo proste :) Jak dla mnie to jest w tym jeszcze troche magii, więc jak pisałem już wcześniej wolałbym uniknąć implementacji protokołu w kontrolerze (programowo)...
O, widzę, że ktoś oprócz mnie również ma ten problem :D Przede wszystkim musisz uwzględnić ten pin SS, o którym wspomniałeś, bez tego ani rusz. Za każdym razem gdy coś wysyłasz po SPI musisz ustawiać SS na zero, a po wysłaniu SS na 1. Warto również zajrzeć do bibliotek, które udostępnia Atmel, jest to nota AVR319, do pobrania stąd [url=]Link ,przy nocie...
Witam Nie zaglądałem do driverów Atmela ale czy nie powinieneś używać funkcji: TWI_MasterWriteRead(&twiMaster, SLAVE_ADDRESS, &sendBuffer[0], 1, 2);
Witam wszystkich Elektrodowiczów! Potrzebuję podłączyć do uC NXP LPC117xx zewnętrzną pamięć EEPROM ATMELa AT24C256 po I2C do przechowywania pewnych danych. Z tego co widzę, to NXP sugeruje, żeby wykorzystać przerwanie od I2C do celu wysyłania i odbierania danych po I2C. No i ok. Zainicjalizowałem I2C w trybie Master Transmit Mode z bitratem 100 kbps....
Bootloader to naprawdęnic skomplikowanego, niepotrzebnie się obawiasz. Atmel też wydał parę własnych bootloaderów i noty do nich. Jak wygląda transmisja po RS485? Masz jakieś ramki, to jest transmisja master-slave, czy multimaster? Jeśli to proste master-slave, odpowiednik RS232, to cały bootloader zmieści się w <1kB. Transmisja master-slave na...
Cieszę się, że ci to działało, ale wystarczy zaglądnąć do noty procesora i zrobić parę prosty obliczeń, żeby przekonać się, że ci USART taktowany wewnętrznym generatorem w ATMega działał wyłącznie przez przypadek. Tak na szybko ja znalazłem dwa przykłady obliczeń: Stabilność oscylatora RC rzędu 1% wydaje się aż za nadto dobra w komunikacji z komputerem...
Znów mam problem z VirtualBox na Debianie i proszę o pomoc. * Debian Jessie - master, * VirtualBox 5.0.10_Debian r104061 (z backportów), * Windows 10 - slave, * VirtualBox Guest Additions 5.0.10r10461. * karta graficzna Nvidia Quadro FX3700, NVIDIA Driver Version: 340.65. Kłopot polega na dziwnym zachowaniu grafiki w Windows 10. Na przykład, przy przewijaniu...
hmm. No właśnie tego rozwiązania chciałem uniknąć, też na to wpadłem ale sieć chciał bym by miała potencjał do przyjęcia choć 20 slave-ów na przyszłość a to już 5 pinów i grubszy kabel. Możesz użyć multipleksowania, lub rejestru równoległo-szeregowego - np. na I2C - masz 8 wejść, a tylko dwoma pinami łączysz z MCU. Można też kodować analogowo - np....
Pokażę tu wnętrze starego przemysłowego kontrolera Moeller Easy621-DC-TC, oferującego wyświetlacz LCD, 12 wejść cyfrowych (w tym dwa z opcją analogowego wejścia), 8 wyjść do sterowania przekaźnikami oraz wbudowany zegar czasu rzeczywistego (godzina, minuta i też dzień tygodnia). Spróbuję go też uruchomić, ale nie wiem czy się uda - trafił do mnie ze...
Z noty katalogowej ATmega8515 (pierwsza strona): • Peripheral Features – One 8-bit Timer/Counter with Separate Prescaler and Compare Mode – One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode – Three PWM Channels – Programmable Serial USART – Master/Slave SPI Serial Interface – Programmable...
Zdjęcia nic nie powiedzą . Sam obecnie zgłębiłem się w standarty 232 i 485 . Przejście między standartami można zrobić na różne sposoby lub stwożyć własny . Jeśli własny to bieżesz po uwagę np takie rzeczy jak kolizja transmisji , wybór urządzenia itp. Nie znam Linuxa lecz pewnymi rzeczmi zarządzi Bios . Rs232 pozostaninie nim czy to jest linux czy...
To "pogrzeb" jeszcze w notach aplikacyjnych . Co prawda większość użytecznych przykładów jest w C (master i slave), ale widać po kolei, jakie rejestry są użyte, więc z adaptacją do asm nie powinno być problemu.... ;)
Bespośrednie podłączenie sieci do AVRa (ale tylko protokół UDP): (AVR)_eng.htm?PHPSESSID=0e5e859000fd664f... Co do kart USB. Trzeba zrobić HOSTA USB (nie HUBA). Jeszcze niedawno było to ciężkie zadanie. Można zrobić HOSTA bespośrednio w AVRku ale tylko w trybie LOW-SPEED: Jest także stary układ Cypressa SL811HS Obecnie można użyć AVRka...