Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

I2C prędkość BASCOM. Jak zmienić prędkość w trakcie programu?

goliat2 26 Kwi 2006 15:31 1353 2
  • #1 26 Kwi 2006 15:31
    goliat2
    Poziom 9  

    Witam wszystkich

    Mam takie pytanie,jak wtrakcie programu zmieniać prędkość magistrali I2C?chciałbym badać przebiegi magistrali za pomocą oscyloskopu(takie mam zadanie)pewne parametry transmisji wybiera sobie użytkownik za pomocą programu na PC,między innymi jest to prędkość,jedna z kilku do wyboru i teraz miałem nadzieje że poleceniem Config I2cdelay bedę mogł sobie zmieniać ją w trakcie programu,niestety można go użyc tylko na początku programu i zadanie mi się skomplikowało.Wydaje mi się że mam dwa wyjścia,jako że mam w procesorze(atmega16) TWI to mógłbym użyć sprzętowej biblioteki i2c_TWI.lbx tyle że nie wiem jakie polecenia służą do zmiany prędkości,wpisuje TWBR = liczba i przy różnych liczbach prędkość pozostaje ta sama,używam bascoma w wersji 1.11.7.4 , drugie wyjście jeszcze trudniejsze to skorzystać ze wstawek asemblera jako że moje zadanie sprowadza się do wysłania jednego bajtu dokładnie na układ PCF8574 to mógłbym się o to pokusić ale to jest ostateczne wyjście,moje pytanie jest jak zmieniać tą prędkość w trakcie programu w najprostszy sposób???
    I jeszcze mnie ciekawi czy gdybym musiał zrobić to w asemblerze to mając pewną daną w zmiennej np Predkosc w bascomie,którą odebrałbym sobie z komputera to czy mogę tą zmienna użyć w asemblerze póżniej?
    dziękuje

    0 2
  • #2 26 Kwi 2006 20:41
    pawelworwa
    Poziom 10  

    Witam!
    Używam demo programu Bascom 2.0.10.0 na 8051 i w nim mogę używać config i2cdelay kilka razy w programie i parametrem może być zmienna, co w Twoim przypadku ułatwia sprawę.
    Nie stosowałem tego nigdzie, ale przed chwilą sprawdziłem i przy kompilacji nie ma żadnych błędów, więc powinno działać.

    Co do zmiennej to na pewno można użyć zmiennej z Bascoma w wstawkach asemblerowych. Z pewnością jest to opisane w helpie (w „moim” Bascomie podaje się zmienną w nawiasach { } np. Mov {zmienna},A)
    Pozdrawiam!

    0
  • #3 27 Kwi 2006 21:06
    goliat2
    Poziom 9  

    Cześć
    Rzeczywiście przy kompilacji nie pojawiaja się informacja o błędzie,ale program niestety nie działa poprawnie spowodu jedynie użycia jeszcze raz tego polecenia,gdyż po usunięciu go wszystko wraca do ładu.Poza tym w helpie do Bascoma,przy haśle CONFIG są wypisane polecenia które można użyć jednokrotnie i wielokrotnie i niestety to można tylko raz.

    Ciekawi mnie czy ktoś może używa tej biblioteki do TWI i z jakich poleceń do niej można korzystać i jak w ogołe obsluguje się sprzętowe I2C w Bascomie?

    dziękuję

    0