|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2024 12 27, 20:06. Visos datos yra GMT + 2 valandos.
|
|
|
|
Forumas » Mikrovaldikliai » AVR UARTas
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 11, 10:55 |
|
|
|
Sveiki. Kazko uzstrigau su rysiu tarp pc ir atmegos. Visaip bandau, bet kazkodel nepareina i pc kas reikia. Imetu paprasta koda, kuris manau turi veikti, bet nepasiduoda jis man.
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>
#include <inttypes.h>
#include <avr/iom32.h>
#define F_OSC 16000000
#define UART_BAUD_RATE 19200
#define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC) ((F_OSC)/((UART_BAUD_RATE)*16l)-1)
void usart_putc(unsigned char c) {
while(!(UCSRA & (1 << UDRE)));
UDR = c;
}
void init(void) {
UBRRH = (uint8_t)(UART_BAUD_CALC(UART_BAUD_RATE,F_OSC)>>8 );
UBRRL = (uint8_t)UART_BAUD_CALC(UART_BAUD_RATE,F_OSC);
UCSRB = (1 << RXEN) | (1 << TXEN) | (1 << RXCIE);
UCSRC = (1 << URSEL) | (3 << UCSZ0);
}
SIGNAL (SIG_UART_RECV) {
unsigned char c;
c = UDR;
usart_putc('[');
usart_putc(c);
usart_putc(']');
}
int main(void) {
init();
sei();
while (1) {}
return 0;
}
Kodas yra ir dar vienas paveiksliukas. Kazkodel pradedu galvoti, kad gelezis kalta, nors pertikrinta kelis kartus.
Kas pareina atgal |
|
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 11, 19:04 |
|
|
|
Jei tarp pc ir plokstes, tai gnd sujungta. Tiesa prie maxo ne elektrolitai sustatyti. Gali buti cia suo pakastas? |
|
Paskutinį kartą redagavo Irmantukas, 2009 03 11, 19:33. Redaguota 1 kartą |
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 11, 21:03 |
|
|
|
Citata: |
#define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC) ((F_OSC)/((UART_BAUD_RATE)*16l)-1) |
ką reiškia tas "*16l" ? gal turėtų būti tiesiog "*16" ? |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 11, 21:42 |
|
|
|
Atradau ir as kad kazkas su UBRR negerai. Nes terminale uzstacius 600 pradejo dirbti. Kontroleri ant 9600 pasidares buvau. |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 11, 21:54 |
|
|
|
UBRR tiesiai priskiriu reiksme, bet visviena terminalas tik prie 600 teisingai sukramto Kvarcas 16Mhz. Prie 9600 gaunasi 103. Ar ne taip skaiciuoju? |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 09:05 |
|
|
|
16 mhz kvarcas netinka
todel kad prie ligiu kvarcu atsiranda paklaida
noaudok kreiva kvarca ir dirbs t.y11.059 ir t.t. |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 11:42 |
|
|
|
Nu man ties 19200 baudrate nebūna klaidų su 16 MHz... Atkreipčiau dėmesį, kad su MAX232A eina atrodo 100nF kondensatoriai. |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 12:03 |
|
|
|
As ir galvociau kad gaunantis (prie 16Mhz ir baud 9600 ) teoriskai paklaidai 0,2% tokiu skirtumu negaletu buti. Na vakare bandysiu pakeisti kvarca i kazka, kad butu po kablelio. Konderiai? Na galvoju, jei veikia prie mazesnio baudrate, tai maxas manyciau dirbantis, Na reix ir ta gal pabandyti. Bet vakar pries miega imeciau i atmega normalu hex ir bandziau prie 600 pakontaktuot su plokste - s.. gavosi. Tai taip ir palikau. Vakare sesiu toliau kankintis. |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 12:13 |
|
|
|
Is cia matyti kad jei baudreitas 600 ir UBRR 103 kvarco daznis lygus 1Mhz. Gal kvarcas blogai uzstampuotas? Vakar dar gerai paziurejau ar tikrai 16Mhz, bet atspausta 16. |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 15:13 |
|
|
|
O tai gal nuo vidinio 1MHz dirba... |
|
|
|
|
|
AVR UARTas |
Parašytas: 2009 03 12, 19:45 |
|
|
|
Aciu Sneikaz. Taip ir buvo. Viskas sukas. |
|
|
|
|
|
|
Google paieška forume |
|
|
Naujos temos forume |
|
|
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
|
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
|
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
|
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
|
LEGO
Mänguköök,
mudelautod,
nukuvanker |
|
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope |
|
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
|
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
|
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
|
GTA 6 Weapons
GTA 6 Characters,
GTA 6 Map,
GTA 6 Vehicles |
|
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
|
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
|
|
|