USART ATMega32 and Linux

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Hur gör man om man vill skicka data till porten då? Jag försökte med
> code: echo "test" >> /dev/ttyS0
> i ett annat terminalfönster, utan resultat.

Vilket "resultat" förväntar du dig ?
Användarvisningsbild
simon78
Inlägg: 1091
Blev medlem: 8 juni 2004, 11:05:51
Ort: Vinninga/Lidköping
Kontakt:

Inlägg av simon78 »

Resultatet jag förväntade mig var att tecknen t,e,s och t skulle skickas via serieporten till atmegan, som där tog emot dem och ekade tillbaka dem till det terminalfönster som jag lyssnade på porten i.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK, och du är 100% säker på att det som atmegan skall göra är 100% felfritt ?
Användarvisningsbild
simon78
Inlägg: 1091
Blev medlem: 8 juni 2004, 11:05:51
Ort: Vinninga/Lidköping
Kontakt:

Inlägg av simon78 »

Nej.

Ville bara försäkra mig om att jag verkligen skickade tecken. Man måste ju börja någonstans...
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Ville bara försäkra mig om att jag verkligen skickade tecken.

Men *skicka* tecken kan du ju göra även om du inte får något *tillbaka* !?
Hur menar du igentligen ??

> Man måste ju börja någonstans...

Jag skulle börja med att haka på något annat än atmegan för att kolla om det kommer ut något från porten, t.ex en annan PC eller Linux burk, sen haka på atmegan när jag *vet* att det i alla fall kommer fram något *till* den.

Du försöker testa för många länkar i kedjan på en gång...
Användarvisningsbild
speakman
Inlägg: 4838
Blev medlem: 18 augusti 2004, 23:03:32
Ort: Ånge

Inlägg av speakman »

Alternativt; haka på en scopemeter och se efter hur signalen ser ut. Jämför med den fungerande.

Mvh
speakman
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Ett sätt är ju att loopa tillbaka den sända signalen, d.v.s koppla ihop pin 2 & 3 i DSUB:en och se om du får eko tillbaka utan din mikrokontroller. Får du då inte någonting tillbaka så kolla handskningssignalerna.
Användarvisningsbild
simon78
Inlägg: 1091
Blev medlem: 8 juni 2004, 11:05:51
Ort: Vinninga/Lidköping
Kontakt:

Inlägg av simon78 »

Japp. Min debuggningsteknik är att ta de enklaste sakerna först. Sedan ta ett "steg" i taget, så att man hittar felet. Jag har suttit alldeles för många dagar med att man har gjort skitsimpla fel, och trott att det var jättehitechfel som man felsökt.

Hursomhelst, vann precis ett skåp på tradera, så nu blire mäta av!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Japp, de flesta fel är skitfel... :-)
Skaffa gärna en prob till, att kunna köra båda kanalerna mot varanda är ofta mycket användbart...
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Nu förstår jag bättre vad du menade, simon78, om hur cat beter sig. Jag tolkade dig precis tvärtom. Körde cat på en linux här precis och den blockar _inte_ när det är tomt utan fortsätter mata ut radbrytningar, null eller något annat jams. Det blir ju lite halvjobbigt att debugga på det viset! :-)

Kör minicom istället. Den fanns redan installerad på min FC3 iallafall. Mycket enklare.

Tittade först nu på inkopplingen som länkades till och såg att en del av handskakningssignalerna var med där. Även DCD (pin1) borde dock vara inkopplad (till pin 4/6) för att vara säker på att den inte blir blockad.
Skriv svar