-
Thread
Problem mit unterschiedlichen Prescalern
>Dann funktionierts nicht Du hast immer noch die FOC (force output compare) bits gesetzt.
Lass die FOC bits bei ALLEN timern unangetastet.
-
Thread
ADC interne Funktionsweise
Hallo, Noch eine Frage: Nachdem ich das GO Bit setze, startet meine eingestellte Acquisition time in der der Kondensator aufgeladen wird. ABER, laut Datenblatt : "When the GO bit is set, the A/D module CONTINUES to sample the input for the selected
studentMax schrieb im Beitrag #4218127: > "The GO bit should not be set in > the same instruction that turns on the ADC." > Wieso? Damit der ADC Zeit zum Einschalten hat. Erst durch das Setzen des ADON bits wird der ADC überhaupt mit Strom versorgt.
-
Thread
Dual Zahlen für 7 Segment ausgabe umrechnen
RL A MOV R0,A MOV A,21h XRL A,R0 CPL A MOV R0,A 'Ende des Zusammen setzen des Register R0 So komme ich zu den 4 Bit in einem Register, und so soll es auch sein!
! Ok das Funktioniert auch und nun zählt er bis 255. Aber ich habe 20 bit ingesamt und bislang nur 8 bit verwendet. Meine Problemm ist nun, wie kann ich die noch verbleibenden 12 bit Verarbeiten. Den Ich habe doch nur ein 8bit register und diese ist mit den ersten 8 bit
-
Thread
40 Spannungen einlesen und an AtMega8 übertragen
Wie kommst Du auf 7s? 1,2kBit / 10 Bit / 40 = 0,4s Und niemand sagt, daß Du mit 1,2kBit senden mußt. Du kannst z.B. 50kBit nehmen. Peter
ausführbarkeit. Zuerst kann ich doch nur entweder auf eine postive oder negative Flanke einen Interrupt setzen, laut Tutorial zumindest. Und ich versteh auch nicht wie ich einen Timer so konfigurieren kann das er bei einem vergleichszahlenwert nur ein bit seines Registers auf 1 setzt zb. CTC macht ja einen
-
Thread
Fuse Bit FSTRT beim 2313
Hallo ich bin verzweifelt auf der Suche nach einer Programmiersoftware, bei der man das Fuse Bit FSTRT beim AT90S2313 setzen kann. Normalerweise verwende ich PonyProg, damit lassen sich bei dem Prozessor nur die Log-Bits verändern. Vorhin hab ich mir YAAP heruntergeladen auch hier finde ich keine Möglichkeit dieses verflixte FSTRT zu setzen. Das STK500 ist mir zu teuer ;( für das eine Bit Wer kann mir weiterhelfen und das geeignete Programm verraten? Vielen Dank für eure Antworten Gruß Xaver
-
Thread
ADC Channelauswahl
deine Hilfe. Das mit dem nur Kommentar ändern -> Oh gott.... Zum von dir zitierten: Die anderen Bits, für Ref.-Spg., setze ich in meiner adc_init Funktion. Ich dachte diese gesetzten Bits bleiben dann unberührt, wenn ich nur die MUX Bits ändere??? Den Rest probiere ich jetzt mal aus.
Mario schrieb im Beitrag #2678068: > Die anderen Bits, für Ref.-Spg., setze ich in meiner adc_init Funktion. > Ich dachte diese gesetzten Bits bleiben dann unberührt, wenn ich nur die > MUX Bits ändere??? Wenn du einem Register mittels Register
-
Thread
MEGA8 ADC Interrupt beeinflusst TWI Interrupt
integriere, habe ich keinen Zugriff mehr per I2C. Und wenn ich den ADC ohne Interrupt einlese also das Bit (1<<ADIE) nicht setze, dann stürzt er mir ab sobald ich eine Spannung am ADC anlegen habe. Wisst ihr weiter? Vielen Dank für eure Zeit [c] #include <stdlib.h> #include <avr/io.h> #include <avr
|= (1<<(BIT))) // set Bit #define cbi(ADDRESS,BIT) ((ADDRESS) &= ~(1<<(BIT))) // clear Bit #define toggle(ADDRESS,BIT) ((ADDRESS) ^= (1<<BIT)) // Bit umschalten #define bis(ADDRESS,BIT) (ADDRESS
-
Thread
LCD von Pollin ( mc1001aw-tgr ) 1*10 wie steuere ich die 2. displayhälfte an ?
& (1<<6))temp2|=(1<<LCD_DB6);//schiebt das bit von DB4 auf den platz LCD_DB4 if(temp1 & (1<<7))temp2|=(1<<LCD_DB7);//schiebt das bit von DB4 auf den platz LCD_DB4 LCD_PORT |= temp2; // setzen lcd_enable();
LCD_DB4 if(temp1 & (1<<2))temp2|=(1<<LCD_DB6);//schiebt das bit von DB4 auf den platz LCD_DB4 if(temp1 & (1<<3))temp2|=(1<<LCD_DB7);//schiebt das bit von DB4 auf den platz LCD_DB4 LCD_PORT |= temp2; // setzen lcd_enable();
-
Thread
EEPROM Schreibfrequenz auf eine Adresse
Micha schrieb im Beitrag #2144558: > mit EECR=0x06; setze ich EEMPE nicht zurück (0x06=0b00000110). Du schreibst damit einen 8Bit Wert, was bei EECR durchaus einen Unterschied macht im Gegensatz zum Setzen einzelner Bitz mit SBI/CBI, wie auch bei vielen
Nö, das Bit heißt beim Tiny26 nur anders als beim Tiny13...
-
Thread
mehrere Millis()
avr gcc und damit Arduino versteht sie. Mit diesen Bitmustern wird [[Bitmanipulation]] gemacht. Bits setzen, löschen, prüfen. Das wird in der Tastenentprellung benutzt, um die vier Tasten als einzelne Bits in einem Byte zu speichern und zu verarbeiten. Da ist sogar noch Platz für 4 weitere Bits bzw
muss. Und übersichtlich ist dann PORTA = (1<<PA0)|(1<<PA2)|(1<<PA5); Diese Befehle setzen alle 8 Bit des Ports, will man nur die drei setzen und die anderen unbeeinflusst lassen, dann muss man schreiben PORTA |= (1<<PA0)|(1<<PA2)|(1<<PA5);
-
Thread
Zugriff verweigert
Ralph B. schrieb im Beitrag #8063724: > Ich habe noch eine Reihe 16 Bit Programme weswegen ein 64Bit > Betriebssystem nicht in Frage kommt. Es gibt keine 32-Bit-Version von Windows 11. Es gibt zwar Hilfsmittel (Dosbox und andere) um 16-Bit-Programme ausfuehren zu
nebenbei. https://forum.classic-computing.de/forum/index.php?thread/29870-native-gw-basic-fuer-32bit-x86-und-64bit-x64/ ciao gustav
-
Thread
Attiny85 anfänger
ein ATTiny4 mit max. 10% seiner Ressourcen. > > Du kannst kein dabla lesen. > Der hat keinen 32 Bit Timer! > Keine Ahnung aber mitreden wollen🤮 Und Du kannst generell nicht lesen. Wo schrieb ich etwas von einem 32-Bit Timer? Einen 32-Bit Zähler setzt man aus 4 8-Bit Registern oder auch aus Ram
" flags MCUSR = 0; // allow changes, disable reset, clear existing interrupt WDTCR = bit (WDCE) | bit (WDE) | bit (WDIF); // set interrupt mode and an interval (WDE must be changed from 1 to 0 here) WDTCR = bit (WDIE) | bit (WDP3) | bit (WDP0); // set WDIE, and 8 seconds delay
-
Thread
AVR- C: Welche einfachen Projekte für den "Einstieg"?
(1 << 19); /* PA16: input with pullup */ PORT->Group[0].PINCFG[16].bit.INEN = 1; PORT->Group[0].PINCFG[16].bit.PULLEN = 1; PORT->Group[0].OUTSET.bit.OUTSET = (1 << 16); /* LED0 on XPlainedPro: PB30, active low */ PORT->Group[1].DIRSET.bit.DIRSET = (1 << 30
Microchip) Cortex-M0+ sehr ähnlich zu denen der XMega. Vorteilhaft ist, dass es separate Register zum Setzen und Löschen eines Bits gibt, sodass man kein read-modify-write braucht (SBI und CBI *sind* read-modify-write). Aber das hatte Atmel auch schon bei den Xmegas an Bord. (Warum das vorteilhaft ist merkt
-
Thread
Bedarf an eigenbau STM32F429 Evaluation Board ?
. Da ich Ethernet, externer USB-PHY ( High-Speed ) und 32MB SDRAM brauchte um einige Test's mit 32Bit Bus zu machen, ist das Teil so entstanden. Der TFT-BUS, 32Bit-FMC Bus und noch andere Siganle sind auf die unteren Stecker gelegt. Ich werde das Teil aber wieder auf 16Bit zurück bauen und nur noch
, G0..7, B0..7) - HSYNC, VSYNC, CLOCK, DATA_ENABLE praktisch wirst du eher nicht mit vollen 24 Bit Farbtiefe arbeiten wollen, sondern mit einem 65K Modus. Da hat sich der 565-Mikrosoft-Modus eigentlich als beste Variante durchgesetzt, also 5 Bit rot, 6 Bit grün, 5 Bit blau, macht 16 Bit an Daten
-
Thread
Anfängerfrage zu Assembler
Adresse vom RAM-Ende laden out spl,r16 ;Stackpointer auf out sph,r17 ;RAM-Ende setzen ldi r16,0b00000001 ;PortB: PB0 auf Ausgang out ddrb,r16 ;setzen clr r16 ;Datenwert für Ausgabe setzen ; loop: out portb,r16 ;Daten an PortB ausgeben rcall wait
wirklich klar warum man immer high und low hat (bei > pointern) Weil eine Speicheradresse aus 16 Bit besteht, die Register aber nur 8 Bit breit sind. Also muss man Manipulationen, die 16 Bit betreffen, in 2 Schüben machen. Einmal mit den höherwertigen 8 Bit, einmal mit den 8 niederwertigen Bits.
-
Thread
AVR: Zufallszahlengenerator - zufälliger Startwert
Bit stabil hin, das ist nun bei 10 bit auch alles andere als schwer.
zu verbrauchen - Clock Scaling - Verwende einen sicheren Cyphermode, kein AES-ECB. - Lock-bits setzen, um Auslesen des Flash zu verhindern. Wirkt allerdings nur begrenzt, da Decapping immer noch möglich. Bedenke bei alledem: AVRs sind *nicht für Sicherheit* gebaut. Sie haben keine symmetrischen
-
Thread
geeignetes LCD Punktmatrixdisplay
Kommandobytes, die im exakt so im Datenblatt stehen. Wenn man Leitungen sparen will, kann man auch den 4bit-Modus nutzen, dann muss man halt jedes Byte in zwei Schritten schreiben. Nachdem das Display initialisiert ist, sendet man "Set DD RAM Address", also setze "Display Data RAM"-Adresse, so dass man
sichtbar ist. Dann hat man schonmal fast alle Grundlagen gelegt. Im Programm dann einfach Daten auf 8Bit-Port, R/S-Leitung (Befehl oder Daten) setzen und kurz den Enable-Pin pulsen. Das dann für jedes zu sendende Byte. Wenn man den SPI-Mode nutzen will, muss man gucken, was da zu beachten ist (Controller-Datenblatt
-
Thread
XMega PIN setzen - anfängerfrage
SPI_PORT.OUTSET = (1<<SPI_SCK); hätte das hier die selbe funktion und würde NUR die entsprechenden Bits im OUT register setzen?
SPI_PORT.OUTSET = (1<<SPI_SCK); > > hätte das hier die selbe funktion und würde NUR die entsprechenden Bits > im OUT register setzen? Ja.
-
Thread
Scheibe für Drehgeber
Gray-Code-Scheiben-Generator in Postscript (697 bytes): einfach Radius (rad), Strichdicke (inc) und gewünschte Bitanzahl (bit)setzen, und los gehts. Umwandeln in PDF: gswin32 -dBATCH -sDEVICE=pdfwrite -sOutputFile=graycode.pdf graycode.ps Im Anhang ein Beispiel mit 11 Bits.
> Postscript (697 bytes): > einfach Radius (rad), Strichdicke (inc) und gewünschte Bitanzahl > (bit)setzen, und los gehts. > Umwandeln in PDF: > gswin32 -dBATCH -sDEVICE=pdfwrite -sOutputFile=graycode.pdf graycode.ps > > Im Anhang ein Beispiel mit 11 Bits. Hey, absolut genial! Nach 5 min
-
Thread
Timer ATMEGA 2560
CTC Modus aktiviert. Dazu muss man die richtigen Bits in den Registern TCCR5A und TCCR5B setzen. Mode 4: CTC WGM5[3:0] = 0100 Dann muss man auch OCR5A Register für den als TOP-Wert wählen. Auch passen bei 8MHz = 8*10⁶Hz mit einem Vorteiler von 8
Danke, Karl M. Und, Jörg Wunsch, ich komme zwar nie auf die Idee, ein und dasselbe Bit zweimal zu setzen, aber ich gebe Ihnen unumwunden zu, Ihr letztes Argument war sehr gut.
-
Thread
Per UART empfangenen String weiterverarbeiten
Programmiersprachen nicht. Du brauchst Literatur! PS2: Ist das richtig so, dass du nach jedem Bit-setzen mittels PB2 einen Puls generierst und nach allen 8 Bits noch einen Puls nachschiebst?
gesetzt ist. Ausserdem: Bit setzen und Bit löschen sind prinzipiell unterschiedliche Operationen. > (Ich habe halt in dem einen Beispiel für einen Pic gesehen, dass man da > die Ports so direkt setzen kann) Auch das mündet
-
Thread
sbr,cbr.sbrs,sbrc
aber wie kann ich denn nun z.B nur das Bit nummer 4 im register 16 (r16) setzen? ohne die anderen Bits zu beeinflussen?
,bit1 ;bit1=1 sbr temp,bit0 ;bit0=1 ich will die einzeln setzen und nicht zugleich ;Stimmt das nun so? oder ist das bit0 das bit1? bit_abfragen: sbrc temp,bmask_0 ;spring wenn bit0=0 rjmp end_frage
-
Thread
Atmega8 und I2C-Display startet nicht
nutze ich auch gerne. Wenn du, so wie ich, mit PonyProg flashst, kannst du die Häkchen genau so setzen, wie da zu sehen. Ansonsten das Hellgrau gedruckte lesen, die Bits sind invertiert... Edit: UPS... da war jemand schneller :p
funktionierte, hats nur 2 Zeilen gehabt. Im Datenblatt finde ich aber keinen Hinweis, wie ich Daten in 4Bit da reinschiebe (manuel, ohne Library). Hab auch schon ein paar Libs durchgeschaut, steige aber irgendwie nicht dahinter. Das Bit7 zum Beispiel ist ja zum setzen der DDR Ram Adresse, da komme ich
-
Thread
STM32 Programming Reference
Wenn ich nun z.B die Wortlänge auf 8bit setzen möchte, muss ich ja M1 und M0 in USART_CR1 zu 0 setzen. In AVR konnte ich ja direkt USART_CR1 &= ... In ARM aber muss ich nun USART_CR1_M abändern, doch wie setze ich diese beiden bits?
| USART_CR1_TE | USART_CR1_RE | USART_CR1_UE; [/c] Alle Bits haben Namen! Du kannst Dir auch die Auto-Vervollständigung zunutze machen: Wenn Du weißt daß du das TXEIE Bit in einem der USART config Register setzen willst (aber vergessen hast in welchem und wie
-
Thread
ENC28J60 (Mikro-)Web-Server die Nächste
als tip...DDR auch auf 1 setzen, damit die LED´s angehen ;-)
significant byte is 02 (hex). The binary is 00000010 and the second least significant bit is 1. Therefore, it is a locally administered address.[4] The bit is 0 in all OUIs. If the least significant bit of the most significant byte is set to a 0, the packet is meant to reach only one
-
Thread
Mikrocontroller lernen als E-Technik-Student: Assembler bzw 8 Bit noch sinnvoll?
auch 24-Bit µC.
Funktionen richtig anzuschließen. Z.B. P1_20 hat als GPIO FUNC0 und Bitnummer 15. P2_0 hat auch Bit 0 aber als GPIO muß man FUNC4 setzen. P1_19 wiederum kann kein GPIO sein. Da ist also keinerlei Regel dahinter, jeden einzelnen Pin muß man nachschauen.
-
Thread
Mikrocontroller Einstieg
ging ja schnell. Es ist heute einigermassen trivial einen Controller auf eine Leiterplatte zu setzen. Kennst du eigentlich den Unterschied zwischen C++, C, (hier weitere Hochsprachen einsetzen) und Assembler? Was laesst dich also glauben, dass C++ das Seligmachende ist? Gerade die einfachen Bit
(eines Treiber ICs, eines Displays,...) man gezielt "nachmessen" oder ein bestimmtes Bit setzen möchte... Erst später wenn es um das eigentliche "Produkt" geht erkennt man die Vorteile solcher fertigen Softwaremodule, den verstecken von Details usw. Falls die jetzt schon verwirrt
-
Thread
Timer run bit
Hallo, habe eine kleine Verständis frage. wenn ich das "Timer run bit" setzen, ist erst dann mein UC aktiv? bzw. für was benötige ich dies? hab damit noch kleine lücken danke im voraus
Gegenfrage: wie willst du das Bit setzen, wenn der Controller, den du nicht nennen willst, nicht läuft? Ingo
-
Thread
ATMega 64, ALL AVR, Anfänger Problem
mit 0b1110000 um k auf 0b111+Channel bits von i setze. 4. Ich verknüpfe das ADMUX mit k damit im ADMUX der Channel steht UND die vorher gesetzen Bits (Die 3 MSB) (Um die Ref spannung und das ADLAR nicht zurückzusetzen). grüße
[c] void PWM_T1(void) { TCCR1A = (1 << WGM10)|(1 << COM1A1)|(1 << COM1A0); // Bit WGM10 des Registers TCCR1A High setzen TCCR1B = (1 << CS11) | (1 << CS10); // Bit CS11 und CS10 des Register TCCR1B High setzen } [/c] Ein Beispiel für unnötige / schlechte
-
Thread
Attiny85: Brown-Out-Detection via Software ausschalten
Zeitverhalten beachten! [c]if (MCUCR & (1<<BODS)) { // ok MCUCR.BODS = 1 kann man setzen. } else { // fehler }[/c] *MCUCR – MCU Control Register* The MCU Control Register contains control bits for power management. • Bit 7 – BODS: BOD Sleep BOD disable functionality is available
Tobi X. schrieb im Beitrag #5249631: > auch wenn ich zuvor das Bit auf 1 gesetzt habe. Innerhalb von 3 Cycles nach dem Setzen des Bits wird es sowieso von alleine gelöscht. Wenn man es also lesen will, muss man das direkt nach der 'Enable BOD' Prozedur machen.
-
Thread
Define Makros in C
connections */ #define HD44780_RS C, 6 #define HD44780_RW C, 1 #define HD44780_E C, 0 /* The data bits have to be in ascending order. */ #define HD44780_D4 D, 2 [/c] hd44780.c hat dann: [c] #define GLUE(a, b) a##b /* single-bit macros, used for control bits */ #define SET_(what, p, m
für Pinset/-clear, da man zweimal auf den lahmen IO-Bus muss (erst Pinstatus einlesen, danach Setzen oder Löschen).
-
Thread
SPI mit Atmega8 zu PCM5142 klappt nicht!
Setzt du das CS selbst oder macht das der µC für dich? Soweit ich weiß sendet der nur 8 bit und setzt dann das CS wieder zurück. Der DAC will aber mehr als nur 8 bit mit einmal. Daher wirst du das CS selbst setzten und zurück setzten müssen.
Oder verstehe ich es falsch und der PCM5142 benötigt für die automatische Konfiguration auch noch den Bit-Takt, BCK?
-
Thread
4bits schnell hintereinander ausgeben
auch mal praktisch probieren. Das ganze soll eine Lichtsterung werden. Ich gebe am LPT Port ein 4bit Signal aus, mit dem ich 16 lampen ein und auschalten will. Wenns dann Funktioniert würde ich das ganze später gerne erweitern mit ner 7Segment anzeige oder LCD ;-) je nachdem wie ich das blicke *g*.
@niels: setzen, Sechs ;-). Asynchrone Übertragung hat im Gegensatz zu MFM/Manchester/... keinen Takt im Signal. Bei 0xFF kommt erst mal H (Ruhe), dann 1 Takt lang L als Startbit, dann 9 Takte lang H für Daten
-
Thread
Struct gut so?
Holger, was heisst sbi(DDRC,PB1); ?? Setze Bit PortB1 im DDRC?
>Holger, was heisst > >sbi(DDRC,PB1); ?? > >Setze Bit PortB1 im DDRC? Nö, setze in DDRC das Bit das mit der Konstanten PB1 definiert ist. Aufgelöst: DDRC |= 1<<1; oder DDRC |= 2;
-
Thread
ATMega: Reboot per Software auslösen?
Polyfuse in die VCC-Leitung, nen dicken Transistor, der VCC kurzschließt und die Brownout-Fuse setzen.
inistialiert - Durch den jmp 0 OHNE deaktivieren der Interrupts kann ein Interrupt zwischen dem 16-bit Writes auf SP stattfinden (das nennt man übrigens auch Race Condition) - Der Interrupt manipuliert den Stackpointer und überschreibt damit das Hilfsregiser für den 16-Bit Zugriff - Der 16-bit Write
-
Thread
UP/Down Zähler Schaltung mit Hilfe von Mikrocontroller
billiger und kleiner der grossere mit DIP-40 . Um 32 kleine Platine zu adressieren brauche ich 5 Bits, für die UP/down Tasten brauche ich jeweils 1 Bit, und 16 Bits bleiben übrig, 1 bis 2 Bits braucht man um Bus- extender anzusteuern, und 14 Bits bleiben Übrig für die Datenlänge und Leuchtdioden. Das
Kawous S. schrieb im Beitrag #6545352: > Um 32 kleine Platine zu adressieren brauche ich 5 Bits Ja, aber das sind bei einem I²C Bus seriell übertragene Bits, nicht dedizierte Leitungen (bzw I/O Pins).
-
Thread
STM32 RTC setzen und lesen per SWD
Damit die RTC laufen kann, musst du auch noch eine Menge RCC Bits setzen. Warum willst Du das ueber SWD machen?
- Breakpoint setzen - Firmware Init starten - Am BP: Die paar RTC Register setzen
-
Thread
ZX81 plus38 Clone
meines Computers, den ich damals mit Hilfe des ZX81 entwickelt habe und auf der noch die original 1kx4Bit RAMS meines ZX81 sitzen, da ich dort statt dessen ein 2kx8Bit RAM eingebaut hatte.
bits were the same. [/code]
-
Thread
Delay timing Problem
(120); DatenPort = 0b00110000; //Interface auf 8-Bit setzen Setup(); DatenPort = 0b00000000; _delay_us(120); DatenPort = 0b00110000; //Interface auf 8-Bit setzen Setup(); DatenPort = 0b00000000;
= 0b00110000; //Interface auf 8-Bit setzen Setup(); DatenPort = 0x00; _delay_us(120); DatenPort = 0b00110000; //Interface auf 8-Bit setzen Setup(); DatenPort = 0x00; _delay_us(120); DatenPort
-
Thread
Atmega 8 + dallas 18s20 + Neuling (never ending story)
delay_us(480+20); //minimum 480µs DDRC&=(1<<PC5); [/c] Hier setzt du in der ersten Zeile das bit PC5 in DDRC. Dann wartest du, und setzt in DDRC alle Bits auf 0, _ausser_ PC5. Das lässt du auf 1. Vermutlich wolltest du schreiben: [c] DDRC &= ~(1<<PC5); [/c] Wenn du ein Bit auf 0 setzen
>Wenn ich aber zwischen dem wr_byte ein printf setze bekomme ich diese >Information: ich meinte natürlich wr_bit.
-
Thread
AVR Assembler - IO Port-Switching-Zeiten nicht berechenbar
if (bla) PORTB = on; else PORTB = off; Das funktioniert auch alles soweit, solange ich 01010101 setze. Setze ich allerdings 00001111 fällt mir auf, dass er anscheinend so "klug" ist, bei den sich wiederholenden Bits weniger Zyklen zu brauchen als bei dauernd wechselnden Bits, als ob es intern so nach
Christian S. schrieb im Beitrag #4092499: > Das funktioniert auch alles soweit, solange ich 01010101 setze. Setze > ich allerdings 00001111 fällt mir auf, dass er anscheinend so "klug" > ist, bei den sich wiederholenden Bits weniger Zyklen zu brauchen als bei > dauernd wechselnden Bits, als ob es intern
-
Thread
Setzen einzelner Stellen eines std_logic_vector
Signal und treibt er es dauerhaft auf 0. Deswegen der Konflikt, sobald Prozess b das Signal auf 1 setzen will.
das passiert. Ja, ich wollte den Vektor bei einem Reset oder nach Signalende im Prozess a auf 0 setzen und in Prozess b wieder in den definierten Ausgangszustand bringen. Das auf 0 setzen konnte ich mir mit dem Konstrukt oben nun sparen und (fast) alles läuft wie es soll. Ich dachte, da nur RST
-
Thread
ARM7: Start geglückt aber noch Fragen
die Adresse CCR -> (*(volatile unsigned long *)0xE0024008) abbilden, so dass ich einzelne Bits mit CCR.CLKEN = 1 oder 0 setzen kann. Nicht ganz klar ist mir auch, ob "short" da oben richtig ist. Gruss, Christian
umzubauen. Nachteil ist ja, dass man auch mehr Code derzeugt, weil man keine zwei Bits gleichzeitig setzen kann, es sei denn man definiert das Register noch mit einem neuen Namen auf andere Art. Das Programm läuft auch so, nur ist es blöd, wenn das Problem anderswo wieder auftaucht
-
Thread
Diskretes "OTP-Bit" (Zustandsmerker)
E-Ink Kondensator 1 Bit eines antiken Magnetspeichers
die die Dinger angeblich halten. 2. Die Behauptung "unmöglich" halte ich für gewagt. Auch das Setzen eines einzigen Bits im EEPROM macht ein Rücksetzen unmöglich, wenn die Firmware es nicht erlaubt. Auch das Laden des Hexfiles ist ein Stück Software im Controller. Nur durch das Vorhandensein (mindestens
-
Thread
Zusammenfassen von Bits in IAR für AVR
unterschiedlichen Portpins angeschlossen sind leichter anpassen zu können, hab ich mir folgendes gedacht. Setzen mehrere LEDs mit einem Befehl: [c]Balkenanzeige = 0x83;[/c] Setzen der äußerst rechten LED (wobei die anderen unberührt bleiben): [c]Balkenanzeige.LED0 = 1;[/c] oder der 5ten LED: [c]Balkenanzeige.LED4
etwas unelegant. Kann man nicht irgendwie ein Pointerarray erstellen, welches auf die einzelnen Bits definiert wird? in der Art: [c] *Bit0 = PORTC.BIT0; [/c] ???
-
Thread
Bit Manipulationene
wert von uInteger als ein byte (unsigned char) betrachten (das vordere byte streichen). Für die Bit-Manipulation kannst du dir einfach folgendes merken: x |= (1 << n) "oder ist": setze bit n in variable x x &= ~(1 << n) "und ist" mit komplement ("~"): lösche bit n in variable x x ^= (1 << n) "xor ist": schalte bit n in variable x um (in den entgegengesetzten zustand) x & (1 << n) test, ob bit n in variable x gesetzt also nun ein beispiel: ~( 0101 1010) (0x5A) = 1010 0101 (0xA5) 0101
-
Thread
LCD Timings - SVGA - LPC2478
Das funktioniert nur, wenn ich Bit 12 setze. Genau wie meine Funktion. Noch Ideen, ansonsten warte ich auf das vorgesehene RAM.
Wenn ich Bit 12 nicht setze, dann habe ich nur Speicherfehler mit deiner Zeile.
-
Thread
PIC 10F200, Anfänger
Wenn beides passierte erst nach 3200ms wieder neu auf Ereigniss warten. loop und eingang 1 setze bit 1 und eingang 2 setze bit 2 bit 1 und bit 2 setze bit 3 undnicht bit 3 goto end warte 2000ms setze ausgang 1 warte 1000ms setze ausgang 2 warte 200ms reset bit 1 reset bit
Du es schaffts die passenden Register und Bitmuster mit Hilfe des Datenblattes zu finden und zu setzen. Geht sogar noch kompfortabler mit: MPLAB XC8 C Compiler User's Guide 5.3.5 Configuration Bit Access Ein wenig must Du Dich schon mit Toolchain und Device beschäftigen um weiterzukommen.
-
Thread
ASUS Eee PC 4G 701 Speichererweiterung
32-Bit-Systemen, bei so wenig Speicher wenig überraschend.
Speichercontroller mehr RAM adressieren kann und die CPU PAE* unterstützt. Oder das ist eh' ein 64-Bit-System, wobei dann die Frage ist, wieso man darauf unbedingt ein 32-Bit-OS laufen lassen muss. (Eine Begründung könnte eine auf PCs sehr, sehr seltene 32-Bit-UEFI-Firmware sein) Die Gurke aus
-
Thread
einzelne bits ändern in einem Array oder komplett anders ?
github.com/benwilliam/AVR/tree/master/LED in der LEDMatrix.c findest du funktionen um genau ein bit in einem array zu setzen [c]unsigned char setWorkingBufferBit(unsigned char x, unsigned char y, unsigned char value)[/c] in der canvas.c findest du etwas höhere graphik funktionen unter anderem
geht sie nicht > an ?! Die Funktionen LedAn und LedAus schalten nicht die LEDs selbst, sondern setzen nur im Array die korrespondierenden Bits. Wo ist Dein Code, der den Array-Inhalt per Multiplex an die LEDs ausgibt?