-
Thread
8 mal 1bit zu einmal 3bit zusammenfassen
256x3bit LUT...
kompliziert, Wiki-Artikel mit Look-Ahead Adder etc lesen und verstehen. Im Prinzip nur Adder von 8x1bit. Letzte Stelle XOR/Parität (bit 7-0) 2. Stelle XOR/Parität (AND(bit0-1), AND(bit3-2), AND(bit5-4), AND(bit7-6)), Quasi XOR/Parität vom Übertrag/AND von je 2 bits 3. Stelle, die AND(bit0-1), AND
-
Thread
400 Outputs
Und wie willst du so jedes einzelne Bit individuell setzen? Geht das? Wär ja cool...
glaube wir reden aneinander vorbei. > Ich baue eine Matrix aus 6 Schieberegistern auf. 2 Stück (16 bit) > Spalten und 4 Stück (32 bit) Zeilen. Auf diese Weise kann ich sehr wohl > jedes Bit Welches Bit den? Ich will doch an den Kreuzungspunkt keinen Speicher setzen. Da sitzen vielleicht Relais
-
Thread
Befehlssatz der bo8-CPU - was ist gut, was ist schlecht
ersetzen durch XOR, nur selten > musste ich bisher Negation nach NOR verwenden. OR wird zum Setzen, AND zum Löschen und XOR zum Toggeln von Bits verwendet, wobei IMHO das Toggeln deutlich seltener benötigt wird als das Setzen und Löschen. Andere Frage: Manche Befehle enthalten einen (J.. sogar
häufig geht einem /OR nn/ ein /AND nn/ voraus. Man muss dann bei AND nur nn so wählen, dass die Bits, die man mit OR setzen will, Null werden, und kann dann OR durch XOR ersetzen. /NOR nn/ ist nützlich zum Testen, ob mehrere Bits gesetzt sind.
-
Thread
Hilfe ADC ATMEGA8
sollte, die bit zu setzen.
kann Spess das mit Sicherheit > selber) das es für externe referenzspannung ist ? wenn ich kein bit setze.
-
Thread
Bits einen Namen geben
programmiere grad einen atmege8 (assembler) und wollte wissen ob ich die Pins vordefinieren bzw. den Bits in Registern Namen geben kann, da ich zum Ansteuern ein Statusregistern angelegt habe und die Pin belegung sicher noch einige male ändern werde. Es geht mir nur darum, dass ich nicht immer die Bits
weitermachen wo ich aufgehört habe. Außerdem wäre dann der Code um einiges übersichtlicher wenn direkt beim Bits setzen/löschen klar ist welche Funktion betroffen ist. also -> SBI state, funktion1 (das wäre optimal) hoffe mir kann da einer weiterhelfen. MfG Hannes
-
Thread
Reservierte LockBits/FuseBits
Tatsächlich, man kann keine reservierten Fuse Bits einstellen.
Nur fragt deine Frage etwas anderes als das was du eigentlich wessen wolltest: >reservierte LockBits bzw. FuseBits auswählen Ein Bit ist eben ein Bit, also ein achtel eines Bytes, z.B. Bit 0, Bit 1, Bit 2 usw. Somit ging also jeder davon aus, du meinst die Bits die keinerlei Funktion haben und
-
Thread
2 Bit und 6 Bit zu 1 Byte zusammenführen
mit folgender Reihenfolge: PD2-PD3-PD4-PD5-PD6-PD7-PB0-PB1 natürlich könnte ich die einzelnen Bits getrennt voneinander abfragen und ggf. im Ergebnis-Byte setzen, aber so viel Zeit hab ich nicht ^^ (außerdem muss es da doch eine schönere Lösung geben) mfg, Johannes
Dafür gibt es keine wirklich schöne Lösung. Das Hauptproblem ist, dass du die Wertigkeit der Bits umgedreht haben willst (oder hast du dich nur ungeschickt ausgedrückt, da oben). Wenn PD2 als Bit7 gesetzt werden soll, bleibt nicht viel übrig außer ABfragen und Bit setzen. Wnn dem nicht so
-
Thread
Fusebits bei ATmega 88 setzen.
noch mit den internen Tackt arbeiten und nicht mit den 20 MHz Quarz. Wie kann ich die Fusebits setzen und sicher gehen dass ich den Mikrocontroller mit den falschen setzen der Bits nicht zerstöre? Ich habe diesen Fusebit Rechner nicht verstanden. http://www.engbedded.com/fusecalc/ MfG Marcel
achten, dass nicht mehr als 4 Volt anliegen, sonst gibts Fehler. Erkennt man daran, dass nach dem setzen der Fusebits auf einmal alle Lockbits gesetzt sind. für extenen 20 Mhz Betrieb mit Standardquarz folgende Fusebits setzen (Ponyprog): BOOTSZ1, BOOTSZ0, EESAVE, SUT0 alle anderen aus Ehrhardt
-
Thread
Atmega168 Fuses setzen?
jemand noch ein anders Tool mit dem ich die Fuses beim ATmega168 komfortabel setzen kann (außer PonyProg)?
Hallo, ich bitte um eure Hilfe. Ausversehn habe ich den FuseBits des ATMega168 verstellt und damit den Controller lahm gesetzt. wie kann ich mit BASCOM bzw. mit Boot Loader den Controller wieder zum Leben erwecken. Danke Tan Thai
-
Thread
Logamatic 2107 Schnittstelle
sollte hat die MC10/BC10 auch schön zu leiden. Soweit ich weiss reicht es einfach nur den Die Bits in den Registern zu entsprechend zu setzen. Das tauschen müsste aber auch gehen... Wenn überhaupt musst du die richtige Taktfrequenz eingeben und die Baudrate wird automatisch korrigiert. Soweit
Bit(bit=0) ändert toggelt sich beim CRC das vierte Bit(bit=3) bit1 -> bit4 bit2 -> bit5 bit3 -> bit6 bit4 -> bit7 und noch x x x x x x x x i 2 1 0|
-
Thread
Suche Assembler für 32-bit ARM
Architektur der Cortexe ist eine völlig andere als bei AVR. Das hat dann z.B. zur Folge, dass das das Setzen eines Bits im Port noch lange nicht sofort am Hardwareausgang erscheint. Auch das Zählen von Assemblerbefehlen um Laufzeiten zu bestimmen funktioniert hier nicht problemlos. Besonders schön ist es,
werden mit Controllern gemacht, die keinen Cache haben, sondern lediglich mit einem intern 64..256 bit breitem Flash. Das hilft schon, jaja. Trotzdem sind hie und da Waitstates angesagt. Der große Vorteil der 32 Bit Controller gegenüber den alten kleinen 8 Bit Architekturen liegt woanders, nämlich
-
Thread
ATTiny45 Lockbits setzen und gleichzeitig ISP deaktiveren
. Blöderweise ist der INT0 auch gleichzeitig der SCK für den ISP. Nun möchte ich die Lockbits setzen sodas das Programm nicht ausgelesen werden kann. Zum Setzen der Bits muss ja das ISP eingeschaltet sein. Schreibe ich nun die passenden Lockbits, kann ich aber die Fuse zum Deaktivieren der ISP
ISP kannst Du nur mit HV-Programming deaktivieren. Setze Debugwire deaktiviert und die Lockbits. Auf INT0 hat das alles keinen Einfluß.
-
Thread
PIC: Bit aus Byte an PORT ausgeben
bit 3 setzen also: IORWF h'06',1 ; setzte bit 3 xxxx x1xx in Port B Gruß Bernhard
@Bernhard einzelne Bits setzen/löschen geht so bsf PORTB,3 ; setze Bit 3 am Portb und bcf PORTB,3 ; löschen Bit 3 am Portb Reiner
-
Thread
Wie setze ich Ausgänge mit einer for-Schleife?
blaha schrieb im Beitrag #2425152: > Ich müsste jetzt wissen wie der Syntax ist um PortD[i] zu setzen. Du kannst nicht PortD[i] setzen. Aber du kannst einen Ausgang setzen, indem du mit einem Bitmuster veroderst. Das Bitmuster sagt aus, welcher/welche Pins zu setzen sind. Dieses Bitmuster kannst
} [/c] Ich wollte aber ungern für jeden Ausgang eine If Bedingung machen in der ich das einzelne Bit setze bzw. Rücksetze. ich finde es in einer for Schleife eleganter und vor allem weniger arbeit. Wenn es allerdings nur so geht werde ich wohl für jeden Eingang eine If Anweisung schreiben müssen.
-
Thread
Byte bitweise und als ganzes zugreifen als Datentyp in c
mir in C Projekten definitiv mal anwenden. Bisher hatte ich mir enumerationen erstellt und einzelne Bits über Bitoperatoren verändert. uint8_t var enum{ Bit0 = 1, Bit1 = 2 } Bit setzen: var |= (1<<Bit0) Bit löschen dann var &= ~(1<<Bit0) Ist auch ok und funktioniert halt auch genau so in
Johannes schrieb im Beitrag #7946624: > uint8_t var > enum{ > Bit0 = 1, > Bit1 = 2 > } > Bit setzen: var |= (1<<Bit0) > Bit löschen dann var &= ~(1<<Bit0) Hmm. Interessante Defintion für "Bit0". Welchen Wert hätte in Deinem /enum/ der Wert "Bit7"?
-
Thread
ILI9341 langsam Verbesserungsvorschläge?
so funktionierts ohne probleme und ist auch viel viel schneller, als setzen einzelner bits. [c] void FillScreen(int color) { SetCol(0,239); SetPage(0,319); SPI_Transmit_Command(0x2c); int k; for(k=0;k<2;k++) { unsigned int i; for(i=0;i<38400
der Schöpfer dieses Codes) setzt brutal einen gesamten Port auf Output obwohl er ja nur ein Reset-Bit setzen will. Kann im Einzelfall schon mal unerwünschte Nebenwirkungen haben.
-
Thread
nur bestimmte Bits übertragen ohne Änderung
Da du nicht weißt welche Bits du setzen willst, musst du die unteren 4 Bit zuerst löschen und dann die neuen setzen: Unteren 4 Bits löschen: PORTD &= ~(0x0F); bzw. PORTD &= 0xF0; Unteren 4 Bits setzen: PORTD |= neueBits
IS P. schrieb im Beitrag #4579237: > Da du nicht weißt welche Bits du setzen willst, musst du die unteren 4 > Bit zuerst löschen und dann die neuen setzen: > > Unteren 4 Bits löschen: > PORTD &= ~(0x0F); > bzw. > PORTD &= 0xF0; > > Unteren 4 Bits setzen:
-
Thread
ADC nimmt die falsche Vref obohl richtig eingestellt.
Im Datenblatt steht das ich das bit auf 0 setzen muss hab ich gemacht und funktioniert wieder ned :(
Simon Roith schrieb im Beitrag #1689889: > Im Datenblatt steht das ich das bit auf 0 setzen muss > hab ich gemacht und funktioniert wieder ned :( Mit welcher Anweisung denn?
-
Thread
Maskieren modern?
Bitnummer 3 generiert (und sich über einen Semantikfehler erbricht, wenn jemand versucht, mehr als ein Bit im Operanden zu setzen). Hat man aber nicht. Also schieben wir beim AVR fröhlich die Bitnummern herum. :-)
Naja, Bitfield-structs für IO-Register gibt es ja durchaus (und die lösen das potenzielle Setzen von Bits in falschen Registern genauso), beispielsweise bei vielen Cortex-M. Beim AVR hatten wir das mal beim ATmega128RFA1 (und Nachfolgern) gemacht, aber dort hat das seitens Atmel und dann Microchip
-
Thread
Meteotime Crypt Gesperrt
PIC keinen konstanten Wert DIREKT schreiben kann. Darum werden sie die Speicherstelle erst auf 0 setzen und dann die einzelnen Bits die sie brauchen per OR setzen. Warum man das dann allerdings in so vielen Schritten macht anstatt in einem ist mir noch ein Rätsel. Es werden auch nicht jedes mal alle
dass der Flash so aufgeteilt ist. Man muss bei bestimmten Sprüngen/Befehlen ja auch ein bestimmtes Bit setzen, falls das Sprungziel in der oberen Hälfte liegt oder so.
-
Thread
SAM4S2A geht nicht zu main()-Breakpoint
Disassembly), bei Adresse 0x00800E7A ist Rücksprung. Ich habe schon gesehen, dass es in den GPNVM Bits eine Boot Mode Einstellung gibt. Wenn ich mit Tools-Device Programming diese Bits auslese, stehen sie auf 0x00. Wenn ich in die Checkbox "Value" ein Häkchen setze, wird darunter im Feld GPNVMBITS
Bit, das willst du jetzt nicht setzen, sonst kannst du weder auf den µC schreiben noch lesen. Dann bleibt nur ein Erase mit dem Pin. GPNVM1 sorgt dafür das entweder aus dem Flash gebootet wird oder der
-
Thread
AVR TTiny 461 Pullup nicht aktiv?
//Speicher D // Unterprogramme // ADC 1 auslesen uint8_t ADC1(void) { loop_until_bit_is_clear (ADCSRA, ADSC); // warte bis das Bit ADSC gelöscht wird ADMUX = 39; // setze den Mux auf ADC 7 ADCSRA |= (1<<ADSC); // starte die Wandlung loop_until_bit_is_clear
ADSC gelöscht wird ADMUX = 40; // setze den Mux auf ADC 8 ADCSRA |= (1<<ADSC); // starte die Wandlung loop_until_bit_is_clear (ADCSRA, ADSC); // warte bis das Bit ADSC gelöscht wird return ADCH;
-
Thread
Timer Interrupt Anfängerprobleme
Ja stimmt. Da muss ich das WGM-Bit setzen, sonst klappt es nicht. Also TCCR1A |= (1<<WGM11); muss bleiben, sonst kein CTC-Mode. Steht auch so im Datenblatt. Aber die CS-Bits brauch ich nicht setzen. Wenn ich mich da an das Datenblatt
Damit ist dann auch klar, warum der CTC-Mode nicht geklappt hat. Vorher alles löschen, dann Bits richtig setzen, klappt. Fall gelöst.
-
Thread
ATmega324a lässt sich nicht mehr programmieren nach Fuse setzen
Setz mal den Programmiertakt auf <= 32 kHz.
läuft, sendet auf UART einen Buchstaben. F_CPU steht auf 3120000UL Baudrate steht auf 100UL Ein Bit dauer ca. 2,19s. Hilft das irgendwie weiter?
-
Thread
Fehler bei Bit manipulation
neuen Beitrag geschrieben, da das Thema von gestern nichts mit zu tun hat. Habe ein Problem bei der "Bit Manipulation". Habe ein kurzer Hand einen Test-Sourcecode geschrieben. Das Problem bleibt bestehen. Wenn ich Bit 7 setze/lösche, wird die nachfolgende Adresse auf 0xFF/0x00 gesetzt. #if
Siegfried Saueressig schrieb: > Das Problem bleibt bestehen. > Wenn ich Bit 7 setze/lösche, wird die nachfolgende Adresse auf 0xFF/0x00 > gesetzt. Ist korrekt bei diesem Code: > #define SET_BIT(var,bit) ( (var) |= (1<<(bit)) ) > #define DEL_BIT(var,bit) ( (var)
-
Thread
Einbrennen von RAM bits?
wieder anlegt. Also auch wenn der Speicher gelöscht wurde, könnte man immer noch fest stellen ob das 1-bit mehr ausgeleiert ist, als das 0-bit. Das bleibt auch ohne Spannung ewig so, bis eben das umgekehrte bit auch so lange von der Zelle gehalten wurde. Wie realitätsnah eine Angriffsmethode auf diese
Experimente. Wenn man den Chip stark abkühlt, kann man Minuten bist Stunden später noch Ladungsreste in den Bits abtasten. Der Effekt ist umso größer, je länger das Bit zuvor fest auf einem Wert gestanden hat.
-
Thread
4-bit miteinander vergleichen
: 15) Das Ergebnis hab ich mir am LCD-Display anzeigen lassen. Nun möchte ich am PORTD ebenfalls 4-Bit einlesen (PD0...PD3) und ebenfalls in einer 8-Bit variable (uint8_t) abspeichern. Diese beiden 8-bit Variablen möchte ich gerne miteinander vergleichen und bei Bedingung (==) einen Ausgang setzen. Das
) setze_ausgan(); [/c] Hier werden jeweils die oberen 4 Bits /ausmaskiert/ und /verglichen/, nachdem der am Port 4 eingelesene Wert /zurechtgerückt/ wurde...
-
Thread
hd44780 initialisierung
)); // Bits setzen LCD_PORT |= (1<<LCD_EN); // Enable auf 1 setzen _delay_us( 2 ); // kurze Pause LCD_PORT &= ~(1<<LCD_EN); // Enable auf 0 setzen _delay_us
)); // Bits setzen LCD_PORT |= (1<<LCD_EN); // Enable auf 1 setzen _delay_us( 2 ); // kurze Pause LCD_PORT &= ~(1<<LCD_EN); // Enable auf 0 setzen _delay_us
-
Thread
AVR64EA28: PIT-Interrupt
aber speziell für Sie aus dem Preliminary Data Sheet AVR64EA28/32/48: IN[7:0] Input Value This bit field shows the state of the PORTx pins when the digital input buffer is enabled. Writing a ‘0’ to bit n in this bit field has no effect. Writing a ‘1’ to bit n in this bit field will toggle the corresponding
auch ganz ohne /sleep/. Eine Sache ist mir noch aufgefallen: MC zerlegt in der Beschreibung das Setzen der Periode und des Enable-Bits in zwei Schritte (und impliziert damit vermutlich auch eine zwischenzeitliche Abfrage bezüglich des Sync-State). Du hingegen schreibst in einem Rutsch beides und
-
Thread
STM32: To HAL or not to HAL
Zum Bits setzen / löschen bietet sich bei der STM32-Familie das BSRR-Register an. Damit kann man atomar beliebig viele Pins eines Ports setzen UND/ODER löschen: GPIOx_BSRR (x = A..I/J/K) In den oberen
, aber ich setzte die Bits in den ersten 16bit und lösche in den letzten 16bit. Aber vielleicht ist mein STM32F411 ja anders...
-
Thread
Wieso Wert nicht gleich auf 0 setzen?
Nabend, Wieso verundet man das Register mit 0? Was macht das für einen Sinn? [c] // a interrupt is only generated if a message was transmitted or received if (CANSTMOB & (1 << TXOK)) { // clear MOb CANSTMOB &= 0; CANCDMOB = 0; } [/c]
-
Thread
Einfachste USART ansteuerung funktioniert nicht.
LED dann 1 mal/Sekunde blink, ist der Takt genau 16Mhz. Kannst du mir sagen, wie ich die fuse bits genau setzen muss?
dann 1 mal/Sekunde blink, ist der Takt genau 16Mhz. > > Kannst du mir sagen, wie ich die fuse bits genau setzen muss? Liege ich in der Annahme richtig, wenn ich die Fuse Bits wie folgt setze: CKSEL = 1111 SUT = 11
-
Thread
eigenartiges Verhalten nach setzen eines Fusebits
Hallo Com, ich habe ein Problem. Vorweg genommen- ich bin absoluter Mikrokontroller-Neuling, also nicht böse sein wenn das jetzt ne dumme Frage ist... Also ich möchte einen ATmega8535 mit externem Takt betreiben, dazu habe ich ein 4MHz Quarzoszillator. Also habe ich mit meinem AVRISP MKII über das AVR Studio das Fuse-Bit SUT_CKSEL auf 'Ext.Crystal/Resonator High Freq.;start up time 16k CK +64 ms' gestellt. Das hat nun Folgende Effekte: 1. Ich kann nicht mehr auf den Controller zugreifen, und 2. das Programm läuft nur wenn ich den Ozillatorausgang nicht an XTAL1 anschliesse (das wundert
-
Thread
Problem => UCSR0C-Register beim Mega162 setzen
remain in the serial Shift Register (see Figure 75) if the Buffer Registers are full, until a new start bit is detected. The USART is therefore more resistant to Data OverRun (DOR) error conditions." und "The Receiver starts data reception when it detects a valid start bit. Each bit that follows the start bit will be sampled at the baud rate or XCK clock, and shifted into the Receive Shift Register until the first stop bit of a frame is received. A second stop bit will be ignored by the Receiver. When the
-
Thread
Linux wird nicht wirklich akzeptiert, woran liegt das ?
Joachim B. schrieb im Beitrag #6394673: > und wie lange wurde Gimp für 16-bit angekündigt? > mittlerweile soll es das ja geben In welchem Jahrhundert lebst du? Meines läuft mit 64bit...
Codo schrieb im Beitrag #6394681: > In welchem Jahrhundert lebst du? > Meines läuft mit 64bit... pro RGB Kanal, ich denke du hast ein Leseverständnisproblem. Was interessiert mich das OS, mich interessieren seit Jahren nur die RGB Bits und die waren mit 3x8-bit lange Zeit zu knapp und 3x16
-
Thread
4bit ladbarer Zähler
Hey, also ich will sowas machen, wie einen 4 bit Zähler, bei dem man anfangs einstellen kann, bei welchem Startwert er beginnen soll. Achso, muss dazu sagen, ich arbeite mit Quartus II 9.0 sp2. Ich hab dort ein Problem bei der Simulation damit. Denn
dazu: das Ergebnis soll auf nem 7-Segmenter in hex ausgegeben werden. Deswegen hat der Output nur 7 bits. Und diesen count_muxer braucht ihr glaub ich nich beachten. Der setzt einfach nur die Ausgaben auf dem 7-Segmenter.
-
Thread
Library für EA-DOGM Grafikdisplays inkl. Font-Generator
benutze für die Ansteuerung des LCD ausschließlich den PORTB den ich vor der Display-Init auf Ausgang setze.
rechts, und dann irgendwann aus dem Bild raus. Jemand eine idee wie ich ihn wieder an den Anfang setze?
-
Thread
Encoder macht zu viele Schritte
rechts KEIN_SCHRITT // 11->11 keine Änderung }; void Drehgeber_abfragen(void) { //Bit 3: letzter Zustand PHASE_A //Bit 2: letzter Zustand PHASE_B //Bit 1: aktueller Zustand PHASE_A //Bit 0: aktueller Zustand PHASE_B tabindex._bit._2=tabindex._bit._0; //letzten
abgeänderten Abfragerutine Und die Interrupstrutine [c] SIGNAL (SIG_OVERFLOW0){ //Bit 3: letzter Zustand PHASE_A //Bit 2: letzter Zustand PHASE_B //Bit 1: aktueller Zustand PHASE_A //Bit 0: aktueller Zustand PHASE_B tabindex._bit._2=tabindex._bit._0; //letzten
-
Thread
AD Converter Timing Problems
Hm, ich weiß nicht. Auch da laufen die 14 Bit ADCs im 16 Bit Modus. Der blöde 14 Bit auf 1 Leitung Modus wie ihn dein ADC hat. Ich hab aber im Datenblatt auch nix gefunden, wie man den in einen sinnvollen modus schalten kann.
Genau, und das BitSlip darf immer nur ein Takt des DIVCLK auf High sein, dann eine Weile warten, dann erst bei Bedarf wieder genau einen Takt setzen. Einfach gesetzt lassen klappt nicht. Daher die FSM in der XAPP.
-
Thread
Einfacher und billiger Webserver mit AtMega32
Hi, das ist ja komisch - anscheinend findet der Compiler die u.a. Makros zum Setzen (sbi) und Löschen (cbi) von Bits nicht. Keine Ahnung daran das liegt. Da das Compilieren nicht fehlerfrei war, gibt es auch keine HEX-Datei. Der einzige Unterschied ist, das ich 'avr-gcc (GCC)
Datenbereich, der word-, byte- und bitweise adressiert werden kann (sowohl beim Ausgeben, als auch beim Setzen von Werten). Adressierung: als Word: "wN": Word an 16bit-Adr. N als Byte: "bN": Byte an 8bit-Adr. N als Bit: "bN.M": Bit M von Byte an 8bit-Adr. N Tag-Format in LFO-Dateien: {wN:FORMAT}
-
Thread
Bit auf Bitbreite weiten
soll Bit 0 von vect auf 8 Bit vergrößert werden" uint8_t output = input & gate; Ich weiß, dass man das über eine if-Abfrage nach dem gesetzten Bit machen könnte. Ich möchte hier aber ein explizites Gate
bit-te schrieb: > Hallo, > > kann mir bitte jemand sagen, wie man in C (gcc) ein Bit eines Vektors > auf eine bestimmte Bitbreite weitet? > Sinn ist ein Bit eines Vektors zu extrahieren, dass als
-
Thread
ATTINY2313 + Uhr
es 2 wichtige Register für den Timer 1 gibt: TCCR1A und TCCR1B Beschreibe mal in Worten welche Bits in diesen beiden Registern du setzen willst und vor allem: Warum.
auf Seite 108 hat die folgenden Bits: COM1A1 COM1A0 COM1B1 COM1B0 -- -- WGM11 WGM10 (unten = niedrigwertestes Bit) Wir wollen sämtliche Bits auf 0 setzen (wegen den oben definierten Bedingungen), die korrekte Zeile lautet also
-
Thread
ATMEL ARM SAMD ohne Framework programmieren
"even" und "odd"-Subregistern unterscheiden muss (oder über das Gesamtregister gehen statt die Bits). Du musst in der SERCOM auch noch die Pinzuordnung passend setzen, damit auch wirklich Pad 2 und 3 benutzt werden. Das passiert im CTRLA. [Edit: bei PORT_PMUX_PMUXO_D_Val hatte ich mich
funktioniert: http://www.mikrocontroller.net/topic/392380#4503462 Der Grund: man muss das INEN-Bit in dem zu dem Pin zugehörigen PINCFG-Register setzen, sonst wird das Bit nicht "gesampled". Sehr Ihr einen Grund, warum man INEN nicht immer eingeschaltet lassen soll?
-
Thread
AVR Studio - Programmlänge angeblich zu groß
Beitrag #3108087: > wie kann > ich aber gezielt den Interrupt auf nur einen PIN, nämlich PC0 setzen? Im PCICR das Bit PCIE1 setzen (Pin Change Interrupt Enable 1) Im PCMSK1 das Bit PCINT8 setzen (Pin Change Enable Mask 8) Interrupts generell erlauben Auswerteroutine bei Interruptvektor PCINT1
Wie soll ich denn bits in registern setzen, was ich kann, ich kann sie sogar auslesen, wenn ich nicht weiß wie sie heißen???
-
Thread
AT89C51SND1C
springt, dazu ist nicht zwingend die Betätigung des ISP-Schalters nötig, sondern man kann auch ein SFR-Bit setzen. Vielleicht führt FLIP diese Anweisung falsch aus... Ist aber nur so ne Idee... Gruß Ralf
. Ausserdem füllt er die restlichen 8 Bit pro Kanal mit 0 auf. Das bedeutet bei einem 16 Bit stereo Signal schickt er ein 8 Bit mono Signal (natürlich nicht mehr korrektes Signal) raus. Normalerweise sollte er doch bei diesem Signal die
-
Thread
Open source Autoradio
dafür einsetzen, dass es qnutconf auch als binary irgendwo gibt. Ich kann es aktuell aber nur für 32bit win anbieten. Ich habe kein 64bit System.
(32 bit).
-
Thread
Tiny26 PWM Problem mit Setzen des Compareregisters ?
Du hats dem Compiler auch nicht gesagt wieviel Bit dein PWM haben soll Und den Port als ausgang sehe ich auch nicht. Probier mal das: ================================= Dim A As Byte Dim B As Byte A = 200 B = 100 Ddrb.1 = 1 '
vorab schonmal danke, jedoch: der tiny 26 hat nur eine 8bit pwm - gebe ich den befehl in die zeile mit ein, kommt unknown config parameter [pwm]. wegen data direction: Config Portb = Output 'LED´s / ISP stand weiter
-
Thread
DA Wandler mit Wenig bit
einstellbare Spannungen mir richtig Saft erzeugen lassen. Man nehme einen Festspannungswandler und setze dessen GND auf einen DA-Port. Ich hab das mal mit nem netten LM*** gemacht und es hat prima geklappt.
benötigt nur 2 Pins am Controller. Der Wandler bietet 8 Kanäle, hat aber leider nur eine Auflösung von 6 Bit. Gruß Markus http://www.elektronik-projekt.de/
-
Thread
Verständnissproblem LCD 4-Bit Mode
zum Laufen bekommen, doch nun habe ich nen kleinen Black out. Das LCD ist an Port C PC0-PC3 4-Bit Datenbus PC4-PC7 Steuerbits und Backlight So weit alles gut und schön. Inn allen Sourcêcode beispielen findet mann, das die Bits geschoben werden und dann auf den Port Kopiert. Ist ja net, aber
einlesen kann. Außerdem nutze ich immer die gleiche Reihenfolge: Port ist immer Ausgang, Daten setzen, RW setzen, RS passend setzen, E oder CS-Puls, RW zurück auf Lesen. Beim Lesen Portrichtung ändern, RS passend setzen, E oder CS aktivieren, Daten einlesen, E oder CS inaktiv, Daten auswerten.
-
Thread
LED Matrix Zeile für Zeile leuchten lassen
| +---+---+---+---+---+---+---+---+---+--- ... Bit 1 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 2 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 3 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 4 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 5 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit