Morgen, ich bin eigendlich nur auf der suche nach den beispiel codes (driver) von Atmel, wo bekomm ich die den ... ich suche zb die usart_driver.c und .h das wäre schon sher schön die mal da zu haben... mfg Sascha
Zu finden sind sie hier -> http://atmel.com/dyn/products/app_notes_v2.asp?family_id=607 die USART_driver -> http://atmel.com/dyn/resources/prod_documents/AVR1307.zip die PDF dazu -> http://atmel.com/dyn/resources/prod_documents/doc8049.pdf
danke, mal ne andere frage wo finde ich die abkürtzungen wie: SPI_MODE_3_gc SPI_PRESCALER_DIV4_gc (1<< SPI_CLK2X_bp) (1<< SPI_ENABLE_bp) (1<< SPI_MASTER_bp) um mal ein par aus der spi init als beispiel zu zeigen?
die stehen in der Header-Datei, die zu deinem verwendeten Controller gehört. Für den XMega128A1 ist das z.B. die iox128a1.h
dann noch mal danke und auf eine nächste dumme Frage^^ wie funktioniert den das hier?
1 | void DAC_DualChannel_Enable( volatile DAC_t * dac, |
2 | DAC_REFSEL_t convRef, |
3 | bool leftAdjust, |
4 | DAC_CONINTVAL_t sampleInterval, |
5 | DAC_REFRESH_t refreshInterval ) |
6 | {
|
7 | dac->CTRLB = ( dac->CTRLB & ~DAC_CHSEL_gm ) | DAC_CHSEL_DUAL_gc; |
8 | dac->CTRLC = ( dac->CTRLC & ~( DAC_REFSEL_gm | DAC_LEFTADJ_bm ) ) | |
9 | convRef | |
10 | ( leftAdjust ? DAC_LEFTADJ_bm : 0x00 ); |
11 | dac->TIMCTRL = (uint8_t) sampleInterval | refreshInterval; |
12 | dac->CTRLA |= DAC_CH1EN_bm | DAC_CH0EN_bm | DAC_ENABLE_bm; |
13 | }
|
ich fang mal an die zu verlegen... wie haben ein void Funktion mit den eingangs variablen: DAC_t * dac was macht das denn? DAC_t "MAL" dac ? der Rest ist soweit klar. aber dann ?_? dac->CTRLB = ( dac->CTRLB & ~DAC_CHSEL_gm ) | DAC_CHSEL_DUAL_gc; ich nehme an wenn ich der variable "dac" DACA drin steht macht er das: DACA.CTRLB oder? der Rest ist von der Zeile auch klar. interessant ist das hier: leftAdjust ? DAC_LEFTADJ_bm : 0x00 was macht ein "?" und was macht der ":" ? sry wenn ich so blöd Frage aber bis jetzt habe ich diese Operatoren noch nie benutzt für meine alten AtMega :-| mfg Sascha
Ich empfehle Dir den Kauf eines C-Buches. Vorzugsweise den, mit Recht, wie ich finde, so berühmten Kernighan & Ritchie. Deine Fragen, das soll keine Kritik sein, betreffen absolutes Basiswissen.
Falls Du nicht warten willst, kannst Du hier http://de.wikibooks.org/wiki/C-Programmierung nachlesen.
ja danke ich nehm das auch keinem bösse... bis jetzt musste ich mir alles selbst aneignen und das es diese möglichkeit gibt war mir nicht klar... Bedingungsoperator Der Bedingungsoperator liefert abhängig von einer Bedingung einen von zwei möglichen Ergebniswerten. Er hat drei Operanden: Die Bedingung, den Wert für den Fall, dass die Bedingung zutrifft und den Wert für den Fall dass sie nicht zutrifft. Die Syntax ist bedingung ? wert_wenn_wahr : wert_wenn_falsch ist natürlich sau cool... amcht einem das leben einfach nur hätte ich das als eine if () { } else { } gemacht
Nova schrieb: > nur hätte ich > das als eine > > if () > { > } > > else > { > } > > gemacht So? Dann versuche damit mal eine Variable zu initialisieren. IF ist eine Anweisung während ?: ein Ausdruck ist, den Du einer Variablen zuweisen kannst. Anders ausgedrückt hat IF keinen Ergebniswert, während ?: einen hat. Zugegeben, es lassen sich immer Formulierungen mit temporären Variablen finden, die ein ?: überflüssig machen, aber so kann man sich kurz und elegant ausdrücken.
ja das ist mir auch aufgefallen ... ich bin halt erst am anfang ... eigendlich bin ich mehr der hardware mensch ... d.h. ich kann dir ein layout machen ... naja studium fängt bald an .... ich hoffe da lernt man acuh ein wenig c++ und vorallem vhdl...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.