-
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
Msp430 einzelne Bit´s im Register setzen
Hallo Community bin neu hier und ärger mich gerade so ein bisschen mit meinem Script rum. XD Es geht dadrum einzelne Bit´s eines registers zu besetzen. mit bic.w bis.w nun setht im Script Beispiel 1 -------------------------------------------------------- bic.w #0x0002,r4 <-im Script steht Bit 1 wird auf 0 gesetz sollte aber nicht das 2 Bit auf 0 gesetz werden? xxxxxx0x x steht jetzt für keinen Wert weder 0 noch 1 -------------------------------------------------------- 2Beispiel --------------------------------------------------------- bis.w #0x0020,r5
-
Thread
Data Direction Register per Macro setzen
Hallo, mit diesen Macros kann man komfortabel Ein-und Ausgänge lesen bzw. setzen/rücksetzen: [c] #define SETBIT(ADDRESS, BIT) (ADDRESS |= (1<<BIT)) #define CLEARBIT(ADDRESS, BIT) (ADDRESS &= ~(1<<BIT)) #define FLIPBIT(ADDRESS, BIT) (ADDRESS ^= (1<<BIT)) #define CHECKBIT(ADDRESS,BIT) (ADDRESS & (1<<BIT)) #define ADDRFROMCOMB(x, y) x #define BITFROMCOMB(x, y) y #define SET(comb) SETBIT(ADDRFROMCOMB(comb), BITFROMCOMB(comb)) #define CLEAR(comb) CLEARBIT(ADDRFROMCOMB(comb
-
Thread
Frequenzzähler 1Hz - 40MHz
fx = --------- Nx Nref Nref [/c] Wir betrachten nun noch die 64-Bit Arithmetik: "fref * Nx": 32-Bit * 32-Bit liefert ein 64-Bit Ergebnis. "fref" ist ~F_CPU "Nx" setzt sich nun aus einen 16-Bit Software Zähler in Timer0 und den 9-Bits aus HC590 und dem einen Bit HC7474 zusammen. "Nref" setzt sich nun aus einen 16-Bit Software Zähler in Timer1 und aus 16-Bit des Timer1 zusammen. Die nachfolgende Division einer 64-Bit Zahl "fref * Nx" durch eine 32-Bit
-
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
GNUBLIN www.gnublin.org
das Parsen im Modul, andererseits das Erzeugen des Strings im Anwenderprogramm. Jetzt kommt ein 16bit-Hex-Wert rein, in der README.txt die Auflistung der Bits für die config. Beispiele: echo "0900" > /dev/lpc3131_adc # setze ADC auf 10bit, CH0, 75 messungen cat /dev/lpc3131_adc Das 0x als Prefix
setzen der Auflösung klappt noch nicht, kommen immer 10bit bei raus.
-
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
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
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
Altes EPROM auslesen Intersil 6654A (2xCE) mit Arduino
anschaulich sieht, ja. Also die Zahl einfach nacheinander mit allen zweierpotenzen verunden, bei treffer, Bit setzen, wenn nicht, portbit nicht setzen. Auch blöd erklärt. Aber: erklärt.und man kann die Arduino-Nummerierung verwenden und muss sich um das interene Mapping nicht scheren. Zeit genug ist ja für
Armin schrieb im Beitrag #7397655: > Da die CPU aber 12 bit ist, müssen die opcodes passen. Nö, die CPU bastelt sich erst intern die 12 Bit zusammen. Entweder aus 2 Bytes und schmeißt je 4 Bit weg. Oder je 2 Befehle aus 3 Bytes. Welche CPU ist das denn
-
Thread
Eigene CPU: Architektur?
>16-Bit Opcode, bestehends aus 5 Bit Opcode und 8 Bit Wert/Adresse. 5+8=13 ;-)
Nur um die Sammlung der CPUs etwas zu erweitern.. Hier gibt es die Bauanleitung für eine 1-Bit CPU: http://laughtonelectronics.com/Arcana/One-bit%20computer/One-bit%20computer.html
-
Thread
24 Einzelne Bits zu 3 Byte zusammen fügen in c++?
geschrieben "value|=(0<<32); geht ja leider nicht" Frage gibt es eine Verknüpfung die sowohl ein Bit als 0 aus 1 setzen kann?
> gibt es eine Verknüpfung die sowohl > ein Bit als 0 aus 1 setzen kann? Nochmal auf deutsch bitte.
-
Thread
Webserver zur Temperaturmessung
zur Dekodierung kannst Du hier nachlesen: avr.xn--brke-5qa.de/Funksteckdosen.htm Es werden 12 "BITS" übertragen. Jedes dieser "BITS" hat drei Zustände, die als 00, 01 und 11 abgebildet werden. So kommt man auf 24 Bit, die in drei aufeinanderfolgenden Byte abgelegt sind. Die ersten 10 Bit werden mit
t.htm laufen aber. Planst du eigentlich den Softwareumstieg auf den ATmega 644? Die 2 Fuses-Bits muss ich doch in PonyProg setzen (Also Haken dahin machen) oder? Wenn ich die NICHT setze dann kriege ich immer Write successful sonst immer Write failed. Woran kann das liegen? Cu Stefan
-
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
[C] Bitwert in einer Zustandsmaschine abfragen und setzen/löschen
Hallo, habe folgendes Problem: Programmiere grad an einem Projekt mit einem Tinkerforge µC. Ich habe eine Zustandsmaschine programmiert. Diese bekommt von einer Funktion einen Wert "*bit" mit 1 oder 0. Nun möchte ich mit dem Wert *bit verschiedene Bedingungen durchlaufen. Je nach dem ob er 1 oder 0 ist. Funktioniert auch soweit nur ein Problem taucht auf was ich bis jetzt nicht lösen konnte: In einer If-Schleife soll der Wert 8 mal (für 1 Byte) aufgerufen werden und je nach dem ob 1 oder 0 ist mit 1 oder 0 ausgegeben und abgespeichert werden. Meine bisherige Lösung fragt ja nur einen
-
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
Universelles CAN Interface; MCP2515: Probleme beim Filter setzen
siehe FILTER/MASK TRUTH TABLE im Datenblatt). Ohne Lib kann kann man im Register RXBnCTRL die Bits RXM1 und RXM0 "1" setzen; dann werden die Masken und Filter nicht ausgewertet und _alle_ Nachrichten werden empfangen. Aber das hilft Dir leider bei der Lib auch nicht wirklich weiter ...
mcp2515_write_register einzustellen. Leider ohne Erfolg. Dabei habe ich schon darauf geachtet, das EXIDE-Bit im den Filter Registern zu setzen, da wir ja mit dem Extended ID Format arbeiten. Phili
-
Thread
UART 9 Bit Modus
UCSR0C |= ( 1 << UCSZ02 ) | ( 1 << UCSZ01 ) | ( 1 << UCSZ00 ); // 9n1 for doing [/c] Diese Bits sind nicht alle in einem Register.
Jetzt bleibt nur noch die Frage, warum muss ich zum Aktivieren des TX-Interrupts immer ein UDR0 = 0 setzen? Danke und Gruß Frank
-
Thread
Wieso spricht man bei den 8 Bit-AVRs von RISC?
genauso wie reiner CISC schlecht ist. (ein reiner RISC ist ja zu blöd, 'draussen' im Speicher ein Bit zu setzen)
M32C - R32C, sind alles aufsteigende Serien. (keine dieser Serien ist zu blöd 'drausen' atomic ein Bit zu setzen oder 32 Bits auf ungerade Speicher-Adressen zu verteilen oder INT-Ebenen zu haben) Der R32C stellt den 68k in den Schatten! Beim RX (neuer) ist man da z.T wieder zurück gerudert; der
-
Thread
dsPIC30F6014 using 2 CAN-Module
Wie verhält sich das mit dem TXREQ Bit? Wenn ich das setze, dann sende ich die nachricht. ist der buffer leer, dann wird das bit automatisch gecleared? weil request ist doch die anfrage/anforderung, dann muss ich doch eigentlich aus
Transmission nachfolgend zwei Auszüge daraus: Tom wrote: > Wie verhält sich das mit dem TXREQ Bit? > "To initiate transmitting the message, the TXREQ bit (CiTXnCON<3>) must be set" > Wenn ich das setze, dann sende ich die nachricht. ist der buffer leer, > dann wird das bit automatisch gecleared
-
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
STM32F4 Portpins mit Variabler setzen in C
[c] GPIOx->ODR = PortVal; [/c] Wobei GPIOx dein Port ist wo du die Bits setzen willst und PortVal das Bitmuster als INT mit 16 Bits ist. Heisst also, du musst deine 8 Bit INT in eine passende mit 16 Bit packen. Wobei ich mir gerade nicht sicher bin ob du weisst, dass
[c]if (key & 0x01) GPIO_SetBits(OPB0_Port , OPB0_Pin); else GPIO_ResetBits(OPB0_Port , OPB0_Pin); if (key & 0x02) GPIO_SetBits(OPB1_Port , OPB1_Pin); else GPIO_ResetBits(OPB1_Port , OPB1_Pin); ......
-
Thread
Assembler oder C
Bytes mehr rein? Jörg Wunsch schrieb im Beitrag #2180587: > UCSR0A = (1 << MPCM0) /* | andere Bits hier, die du setzen willst */; Das ist eben was völlig anderes. Ich will ja nicht irgendwelche Bits setzen, sondern nur eins ändern. Der Rest soll so bleiben. Also: erstmal einlesen, dann ändern,
nicht drauf zu. > Jörg Wunsch schrieb im Beitrag #2180587: >> UCSR0A = (1 << MPCM0) /* | andere Bits hier, die du setzen willst */; > > Das ist eben was völlig anderes. Ich will ja nicht irgendwelche Bits > setzen, sondern nur eins ändern. Der Rest soll so bleiben. Du hast es nach wie vor nicht
-
Thread
vergleich der inputs am bort (8Bit)
cnt with starting values void External_ISR()org 0x0003 ilevel 0 { // Interrupt rutine EA_bit = 0; // Disable all Interrupts tmp = 1; // Set variable tmp EA_bit = 1; // Enable all Interrupts }
Karl Heinz schrieb im Beitrag #3976294: > dass ich P1 auf Ausgang > setze Das gibt es bei den OC-Pins eines 8051 garnicht. Georg
-
Thread
Out vector teilweise open setzen
std_logic_vector(25 downto 0); Beim instanzieren nur bin 0 bis 20 abzugreifen und die restlichen auf open zu setzen? Hoffe ihr versteht was ich meine. lg Mike
wegoptimiert werden. Manchmal ganz nützlich wenn man Module mehrfach nutzt, aber nicht jedesmal alle Bits benötigt. (klar, nur sinnvoll bei internen Modulen nicht tatsächlichen Pins, aber Mike schrieb ja das es nur ein Beispiel ist) Meiner Erfahrung nach unterstützt Quartus das, ISE jedoch nicht (
-
Thread
4 Bit Vergleicher
irgendjemand erklären, was genau in welche Zeile eigentlich passieren soll? A ist mein Eingang mit 4 Bits. Ich verstehe das Programm so: Ich schreibe zuerst in meine Variable sum die Zahl null. Da die Variable 16 bit groß ist, habe ich 16 mal die null. Dann öffne ich eine Schleife mit der Variblen i. Danach
> type int16 is range 0 to 15; Matze1992 schrieb im Beitrag #3406803: > Da die Variable 16 > bit groß ist, habe ich 16 mal die null. Das ist leider falsch. Die Variable ist nicht 16 bit groß, sie kann nur 16 verschiedene Zustände speichern. Das bedeutet, es sind log(16)bit=4 bit. Im Übrigen
-
Thread
Honeywell Rondostat HR20E per AVR steuern und konfigurieren
Reading signature.. 0x1E 0x94 0x05 ..OK Leaving programming mode .. OK Nur bei: Reading fuse bits (low to high).. FAILED! Beim Setzen der FUSE bits bin ich mir aber unsicher, sieht bei mir ganz anders aus als bei \hr20\doc\fuses wir verwenden doch alle die Version 4.13 Build 571
Hier die LockBits
-
Thread
[V] Bausatz für Giess-o-mat Sensor
Hallo Tobias, ich verschiebe nichts am ausgelesenen Wert, die Bit-Operationen setzen und löschen nur Register-Werte des Timers. Du könntest dein Programm zum Auslesen mal zeigen, dann kann man dir sicher bei der Messung helfen. Gruß
Periodendauern sind ziemlich klein und der Messfehler dadurch recht groß. Ich habe da also einen 14 Bit Zähler IC angeschlossen. Das 14. Bit resettet den Zähler und das 13. Bit verwende ich für die Auswertung, sprich der ESP misst die Periodendauer von 13. Bit. Das sind so 26 ... 2000 ms, also eher gemütlich
-
Thread
µC von 0 auf lernen. ASM oder C?
verstanden hat, wie ein µC funktioniert. Die Zeit die man dafür verwendet, kann man mit Lehrgeld gleich setzen. Als kleines Beispiel: Wenn ich aus ASM komme (AVR), dann weis ich/habe ich gelernt, dass sich der controller mit allem größer 8 bit schwer tut und float sehr komplex (ohne FPU) und resourcen fressend
ASM besser bedient sein. Soll doch mal einer von den C Kennern schreiben, wie lange es dauert ein Bit eines Portes zu setzen, bei einem Takt von 20MHz mit einem PIC16F887. Datenblätter lesen solltet ihr ja können ;)
-
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
4 Bit Synchronzähler
0 0 0 1 | 0 0 1 0 usw... 1 1 1 1 | 0 0 0 0 Das währe ein normaler 4-Bit Zähler, vielleicht hilft das weiter. Ob das ein Synchronzählers ist oder nicht kann man nicht aus der Zustanstabelle erkennen
Einen normalen 4-Bit Zähler bekomme ich ja hin, ab wie ich es hinbekomme das der zähler bei 5 beginnt und nach 2 wieder zurückgesetzt wird, das ist mein großes Problem. mfg David
-
Thread
MPLAB IPE + Snap + AVR-Asm, wie Fuses setzen?
Hallo allerseits, ich verzweifle gerade an der (selbst gestellten) Aufgabe, mein MPLAB Snap mittels der MPLAB IPE und einer per avrasm2 erzeugten Hex-Datei dazu zu bringen, Fuse-Bytes auf einem angeschlossenen ATtiny3227 zu schreiben. Was ich bisher versucht habe: [code] .dseg .org FUSE_BODCFG .db 0x40 ; 2.6 V .org FUSE_OSCCFG .db 0x7D ; 16 MHz .cseg [/code] am Anfang der Assembler-Quelldatei; avrasm2 warnte, die Adressen seien außerhalb des SRAM-Bereichs; das erzeugte Hex habe ich mittels MPLAB IPE in den tiny3227 geladen, allerdings ohne Erfolg, die Taktfrequenz (mittels aktiviertem
-
Thread
Nokia 6100 Ansteuerung in C
ich in der V0.5 ein bischen rumgespielt: void n6100SendCommand(uint8_t cmd) { // CS auf Low setzen PORTB &= ~(0x01 << CS); // 1. Bit (Command/Data) per Software erzeugen PORTB &= ~(0x01 << SCLK); PORTB &= ~(0x01 << SDATA); // logisch 0 für Command //asm volatile ("nop");
0x01<<CPOL)|(0x01<<CPHA); SPDR = cmd; // Auf Übertragung warten und CS wieder auf High setzen while(!(SPSR & (0x01 << SPIF))); PORTB |= 0x01 << CS; // CS wieder auf 1 SPCR = 0x00; // SPI wieder disablen } erstmal hab ich das CPHA bit gesetzt. dann kamm ein bild mit der
-
Thread
reihenfolge der bits in einem byte umdrehen
ror outreg bnc loop (bnc = branch if carry not set) fertig setze das 8 Bit im Ausgangsregister alle anderen löschen nach 8 Schiebevorgängen wandert dieses Bit in Carry Ende !!!!
7 mit 2 Tausche Bit 6 mit 3 Tausche Bit 5 mit 4 Kürzer gänge es dann nicht mehr
-
Thread
C Programcode für Motorsteurung
wunderbar mit eigenem Spannungsversorgung, nun habe ich eine Code geschrieben um PWM als Ausgang PIN zu setzen, allerdings weiß ich nicht welche Bits ich auf 1 setzen soll. #include <avr/io.h> #include <avr/interrupt.h> #include <inttypes.h> #include <stdbool.h> #include <avr/pgmspace.h> #define F_CPU
> allerdings weiß ich nicht welche Bits ich auf 1 setzen soll. Wo willst du ein Bit auf 1 Setzen, warum und welcher Pin ist denn der gewünschte PWM Ausgang?
-
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
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
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
welcher Debugger für 8bit Controller (AVR etc.) ?
zeitkritische Abschnitte "hinwegspringen" und Breakpoints auf fehlerhafte Codeabschnitte danach setzen. Auch innerhalb zeitkritischer Abschnitte kann man einen Breakpoint setzen, den Zustand analysieren, den alten Breakpoint löschen, einen neuen Breakpoint auf später setzen und neu starten. So kann
Transistor abrauchen lassen. Ich habe daher Funktionen, die in der Mainloop Werte ausgeben oder setzen können, ohne daß die Applikation nennenswert ausgebremst wird.
-
Thread
Elektroniker Stammtisch Nähe München
einfach mal...... Dienstag den 24.6. Sag mal Heinz. ... gibt es eine Möglichkeit mit einem Befehl bits in eiben Register zu setzen, wi man das Bit mut Nummer definiert? Also CBR oder SBR scheiden aus, da man eine Konstante angeben muss und nicht 0-7.... Ne Idee?
invertieren. Das verstehe ich nicht wirklich. Wenn ich ein andi-Befehl mit einer "geschobenen" '0' setze, ist doch das Bit gelöscht, da bei "andi" beides eine 1 haben muss.
-
Thread
MMC SD library FAT16 FAT32 read write
schreiben will und dann einen bit zurück senden will wann der nächste gesendet werden soll
config.h eingebunden. nun habe ich dort das problem das er mir das hier anmeckert loop_until_bit_is_set(SPSR,SPIF); Error: mmc.c(418), included from: Neu.c: undefined symbol 'loop_until_bit_is_set' MFG: Andre
-
Thread
LED Matrix Zeile für Zeile leuchten lassen
| +---+---+---+---+---+---+---+---+---+--- ... Bit 1 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 2 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 3 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 4 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit 5 | | | | | | | | | | +---+---+---+---+---+---+---+---+---+--- ... Bit
-
Thread
1 Bit ändern?
Hy wie kann ich in C nur 1 Bit ändern ohne die anderen zu verändern? z.B.: aus 0b00010001 soll 0b00000001 will hier das 4.Bit von 0 auf 1 setzen... klar ich kann i=0x01 zuweisen aber dann werden alle anderen auch
-0 oder? WAS MACHT DAS ENTSCHLÜSSELT? i &= ~(1<<4); wofür ist die Negation? heißt die 1 setze auf 1? die 4 steht für die 4 Stelle?
-
Thread
AVR asm - Befehl nur jedes 2. mal ausführen
gesetzt, dann Flags löschen und zurück zum Mainloop ldi r17,1 ; Statusflag "jedes zweite Mal" setzen ldi r18,1 ;Ausrechnen set ; T-Bit setzen; wird für folgende Anweisung gebraucht bld r25,7 ; die oberen 2 Bits werden nicht gebraucht, bld r25,6 ; müssen aber im nächsten
gesetzt, dann Flags löschen und zurück zum Mainloop ldi r17,1 ; Statusflag "jedes zweite Mal" setzen ldi r18,1 ;Ausrechnen set ; T-Bit setzen; wird für folgende Anweisung gebraucht bld r25,7 ; die oberen 2 Bits werden nicht gebraucht, bld r25,6 ; müssen aber im nächsten Schritt
-
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
Visual c++ CLI Daten zusammen setzen aus chars
Du bist sicher, daß du 8 Bit überträgst (bei RS232 könnten es auch 7 sein)?
stück für stück übertragen wird. ja 'b' und '1' kommen korrekt an. ja bin mir sicher dass er 8 Bit überträgt.
-
Thread
mysteriöse NoName 2 TB SSD mit sehr komischen Verhalten
Käuferkonto löschen, und weitere Lieferungen an deine Empfängeradresse auf eine Exklusionsliste setzen.
Wirtschaftsmathematik". Soso, ergo ein Mathematiker, na denn prost- Viel Spaß mit Deinen Mega-TINY BITS wünsch ich Dir!
-
Thread
Assembler Schleifen Tricks
Trick aus der Praxis: Zu einer unsigned Variablen 128 dazuaddieren: Einfach das hoechstwertige Bit (im 8 Bit Register) setzen. Natuerlich nur sinnvoll auf Architekturen mit schnellen und kurzen Bitbefehlen.
Trick aus der Praxis: > Zu einer unsigned Variablen 128 dazuaddieren: > Einfach das hoechstwertige Bit (im 8 Bit Register) setzen. > Natuerlich nur sinnvoll auf Architekturen mit schnellen und > kurzen Bitbefehlen. Unsignd8: 127 | (1<<7) -> 255 128 | (1<<7) -> 128
-
Thread
Universelles Eingabegerät mit Drehencodern
elektrischer Sicht in einer Reihe arbeiten und wieviele in einer Spalte. Z.B. könnte man jeweils 8 Bit parallel über ein Byte schreiben und damit in nur 8 Takten alle LEDs setzen, was insbesondere für langsame Controller günstiger wäre. Die Encoder möchte ich eigentlich direkt von hinten anschliessen
für die Phasen für 0 und 1 - in manchen Datenblättern auch 1/4 zu 3/4. Rausgeschoben werden alle Bits seriell für alle LEDs in der Kette ohne Pause. Es sind jeweils 8 Bit für die 3 Farben in der Reihenfolge R.G.B. mit jeweils MSB first. Also die ersten 24 Bit für die erste LED, die zweiten 24 Bit für
-
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.