logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak ustawić poprawny baudrate w BASCOM dla ATMEGA16 i kwarcu 11,0592MHz?

wdowa79 04 Kwi 2005 20:17 2744 5
REKLAMA
  • #1 1376008
    wdowa79
    Poziom 11  
    Posty: 17
    Ocena: 2
    Moj problem polega na ustawianiu baudrate'u dla rs232 od strony BASCOM'a
    Mam ATEMGE16 i chce wyslac dane zczytane z ADC do Pceta - wszystko dziala calkiem sprawnie. Szkopuł w tym ze wpisuje w bascomie bauda np. 115200 a wychodzi mi w rzeczywistosci tyle razy mniejszy jaki mam kwarc:/

    wyglada to tak:

    baud(rzeczywisty) = baut(ustawiony w bascomie) / (wartość kwarcu /1 000 000)

    oczywiscie moge pisywac wiekszy baud w bascomie ale bascom blokuje powyzej pewnej wartosci tak ze nie moge osiagnac nawet 28800b/s
    dla kwarcu 12MHz(stosowalem 12MHz) to ladnie moge to policzyc ale juz dla 11,0592MHz(dla tego kwarcu nie ma bledów) to juz wychodza wyniki z przecinkami:/
    np:

    baud(ktory chce miec) = baud(wpisany w bascomie) / kwarc (tj. 11,0592)
    19200b/s = 212336,64 / 11,0592

    czy istnieje jakas szansa na zrobienie tego poprawnie w bascomie czy musze się wdawac w wojne z asm ??


    druga sprawa tyczy się przesylania danych z AVR'a - wychodza zawsze w postaci STRING wolalbym przeslac gotowe dwa bajty wyniku.
    Przesyłam za pomoca PRINT
    komenda serout nie chce dzialc:(

    zalaczam listing



    $baud = 106168
    $crystal = 11059200

    Config Adc = Single , Prescaler = Auto

    Start Adc

    Dim W As Word
    Dim W2 As Word
    Dim Kanal1 As Byte
    Dim Kanal2 As Byte

    Kanal1 = 0
    Kanal2 = 1

    Baud = 53084

    Do
    W = Getadc(kanal1)
    Print W

    W2 = Getadc(kanal2)
    Print W2

    Loop

    End


    dane odbieram w kompie za pomoca LABVIEW

    prosze o pomoc
  • REKLAMA
  • Pomocny post
    #2 1376038
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    A moze to nie jest kwestia Bascoma tylko tego ze Atmega nadal chodzi na wewn. oscylatorze 1MHz. Z objawow by tak wynikalo ze tak wlasnie jest. Przestawiales fusebity na prace z zewnetrznym kwarcem ??
    Pozdro
    Dexter
  • REKLAMA
  • #3 1376133
    wdowa79
    Poziom 11  
    Posty: 17
    Ocena: 2
    tzn nie bardzo znam sie na tych fusbitach a przestudiowalem juz opcje szukaj i ewentualnie bylo opisywane jak ustawic fusebity do kwarcu max 8MHz:(

    zalaczam screena z isp programmer ktorego uzywam
    fusbity sa ustawione jak w medze z "półki"

    a z pdf'a nie bardzo moge sie zdecydowac co mam powlaczac:/
    Załączniki:
    • Jak ustawić poprawny baudrate w BASCOM dla ATMEGA16 i kwarcu 11,0592MHz? Nowy-1.jpg (25.73 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #4 1378289
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    Na 16 MHz ustawiasz tak samo jak na 8MHz i jeszcze dodatkowo programujesz bit "CKOPT" Nie rozumiem podejścia "a ja się nie znam" - albo ciebie coś interesuje i starasz się to poznać, albo sobie odpuść...
    Light-I
  • REKLAMA
  • #5 1379094
    wdowa79
    Poziom 11  
    Posty: 17
    Ocena: 2
    nie bardzo moge sobie pozwolic na eksperymenty po 16 zl za probe (spiesze sie bo musze sie skupic na LABVIEW i magisterce a mega to tylko ma byc jako przyzadzik i nie wymagam od niej zbyt wiele - tylko ADC->RS232)
    nie mam czasu na konstruowanie programatora rownoleglego i innych gadzetow zeby naprawiac cos co zle poustawialem bo sie nie spytalem

    przeczytalem chyba wszystkie posty na temat fusebitow i w zadnym nie ma nic konkretnego jak je ustawic

    pony pokazuje odwrotnie jak isp prog (tego do konca tez nie wiem ktory jak pokazuje), w pdfie stoi o "1" i "0" a pod tabelka piszą ze 1 to nie zaprogramowany - troche mozna sie pogubic
    mnie w technikum uczyli inaczej:/ (wtedy nie bylo bascoma i dyplom robilem w asm ale na 89c51 i nie bylo mowy o zadnych fusbitach bo zawsze trzeba bylo stosowac kwarc)

    jak juz bede po obronie to sobie poesperymentuje bo musze jakies sterowanie do moich wzmakow porobic + korektor cyfrowy

    w zwiazku z tym mam Wielką prosbe o pomoc w skonfigurowaniu "fusóf" a postaram sie w wolnej chwili zamiast walic gdzies w knajpie browara zrobic dokladny opis ustawien "fusów" w zaleznosci od softu do programowania dla nastepnych ktorzy beda tak upierdliwi jak ja (wowczas beda mieli wszystko czarno na bialym)
  • #6 1379150
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    W pdf-ie jest czarno na białym na stronie 23. Osobiście programuję fusy własnym równoległym programatorem i programem, więc nie wypowiadam się w kwestii, jak inne programy interpretują "0" (programmed) w "fusebits". Ja mam kontrolki "PUSHLIKE" i zaprogramowany jest wciśnięty. A dlaczego "0" to zaprogramowany ? Bo w 99.9...% przypadków jak wyczyszczony flash/EEPROM, to mamy 1. Teraz rozumieć ? ;)
    P.S. A ustawienia CKSEL wszystkich to 1 + 0 dla CKOPT dla 16MHz
    P.S. 2 Look there too...
    Light-I
REKLAMA