Atmega at90usb

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

Re: Atmega at90usb

Inlägg av sodjan »

> När jag kollade på skåpet...

Någon speciell anledning till att du inte har gjort det innan ?

> Vad jag förstår från manual,

Och vi har ju inte tillgång till manualen, bara din tolkning av den.
Det är bättre att länka till manualen så får vi göra våran egen tolkning.
snigelen
Inlägg: 815
Blev medlem: 8 maj 2009, 11:02:14
Ort: Lund

Re: Atmega at90usb

Inlägg av snigelen »

snigelen skrev:Du vill väl mäta hur länge pulsen är låg? Vänta i så fall tills den blir låg, börja därefter tidtagningen och mät tiden tills pinnen blir hög igen.
Det missuppfattade jag visst, jag ser nu i figuren i din länk att det är tiden från triggpuls tills svarspulsen kommer som skall mätas.
gripner
Inlägg: 1169
Blev medlem: 4 december 2007, 14:47:39
Ort: Lidingö

Re: Atmega at90usb

Inlägg av gripner »

Min första post innehåller länk till websida där jag köpt enheten. En kort beskrivning hur den fungerar, länk till likvärdig produkt.

Om någon vill ta på sig jobbet kan jag tillägga att det kommer ingå läsning av ADC, USB CDC och denna funktionalitet.
Koden för ADC samt USB CDC finns, behöver bara snyggas till och läggas ihopp med detta.
gripner
Inlägg: 1169
Blev medlem: 4 december 2007, 14:47:39
Ort: Lidingö

Re: Atmega at90usb

Inlägg av gripner »

verkligen ingen som vill tjäna lite kosing?
Användarvisningsbild
swesysmgr
Inlägg: 14960
Blev medlem: 28 mars 2009, 06:56:43
Ort: Göteborg

Re: Atmega at90usb

Inlägg av swesysmgr »

Tre ultraljudssensorer skall pollas och resultatet skickas ut på USB vad mer? Är det tvunget att använda de dyra AT90USB eller är det ok med någon billigare USB-kapabel AVR?

"Koden för ADC samt USB CDC finns, behöver bara snyggas till" är den från något väl beprövat, fungerande USB ramverk eller hittat på nätet? Skall det programmeras något på usb-hosten för att presentera mätdata?
gripner
Inlägg: 1169
Blev medlem: 4 december 2007, 14:47:39
Ort: Lidingö

Re: Atmega at90usb

Inlägg av gripner »

USB CRC standard för att atmegan sätts up som en usb-serieport är skapat av atmel, fungerar jättebra. Typ behöver 2-3 rader kod varav 1 är #include "usb_serial.h".

Kod: Markera allt


usb_init();
while (!usb_configured()) /* wait */ ;
_delay_ms(1000);

while(1) {
      if(usb_serial_available()>0) {
	ser_input = usb_serial_getchar();

	usb_serial_write((unsigned char *)"inkommande char var", 19);
              usb_serial_write((unsigned char *)ser_input, 1);
      }
}

Den delen är simpel

Mitt program behöver dock göra lite mer.

Kod: Markera allt


usb_init();
while (!usb_configured()) /* wait */ ;
_delay_ms(1000);

initiera adc

initiera 1 port som ingång (ej den där adc finns)
initiera 1 port som utgång (ej den där adc finns)

while(1) {
      if(usb_serial_available()>0) {
	ser_input = usb_serial_getchar();


funktion läs adc spara värdet i variabel (felkorrigering behövs så man får ett stabilt värde)
funktion läs ultraljuds mätarna, den funktionen mäter 2 tider kontrolerar och konverterar enligt känd formel. sparar i variabel
                 måste kontroleras och förslagsvis tas tiden med hjälp av inbyggd klocka för det.

	usb_serial_write((unsigned char *)"datan från tidigare mätningar", 19);
      }
}

Skriv svar