raac09 Skrevet 14. november 2013 Del Skrevet 14. november 2013 Hei, kan noen hjelpe oss med følgende oppgave? Vi bruker mikrokontroller ATmega32 Problemstilling: I denne oppgaven skal mikrokontrolleren programmeres slik at vi kan kommunisere med den fra PC. Kommunikasjonen kan testes ved hjelp av ”Coolterm”. Resultatet av en slik test kan for eksempel bli som vist i utskriften til høyre. Programmet skal virke slik: 1. Ved oppstart / restart av mikrokontrolleren skal denne sende de to tegnene ”>>” til PCen. Tegnene skal være et klarsignal for at vi kan skrive inn tegn fra PCens tastatur. 2. Vi skriver nå en vilkårlig tekst – avsluttet med punktum (”.”) 3. Mikrokontrolleren repeterer den samme teksten på ny linje. Deretter gir den klarsignal (”>>” på ny linje) for at vi kan skrive inn en ny tekst. Følgene tekst skal stå >>Hei, Her er jeg. Hei, Her er jeg. >>Hvordan har du det?. Hvordan har du det?. I oppgaven skal vi også gjøre dette: Lag en subrutine som gir start på ny linje (sender tegnene CR og LF til PC-en ). Foreløpig har vi gjort dette, men nå står vi fast: .list .include "m32def.inc" .nolist ;----------------------------Assemblerdirektiv .def temp=R16 .def char=R17 ;------------------------------------------------ .org 0 rjmp start ;.org 20 ;start ;------------------------------stack peker ldi temp,high(ramend) out sph, temp ldi temp,low(ramend) out spl,temp ;----------------------------------------- ldi temp, (1<<RXEN) | (1<<TXEN) ;Slår på mottakeren og senderen når de er 1 ;ldi temp, 0B00011000 out UCSRB,temp ;Send og motta ldi temp,23 ;Setter baud rate = 9600 out UBRRL,temp ;UBRR: Baud rate register - 8 bit, lsb clr temp ;Low=L/High=H Out UBRRH,temp ;4 biter, msb Vi setter utrolig pris på hjelp. På forhånd takk! Lenke til kommentar
Giddion Skrevet 14. november 2013 Del Skrevet 14. november 2013 Hei, Siden dette trolig er en skole opg. skal jeg prøve å være pedagogisk, men hjelpende. Min assembler er veldig rusten (mest c/c++ på meg) så mulig jeg ikke er helt med på koden. Hvorfor står dere fast? Hvor står dere fast? Har dere sett i manualen? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå