-
Thread
AVR-Mikrocontrollertechnik-Kursus in Assembler besprechung Gesperrt
Zweierkomplement arbeitet, würde ich sagen wird das H-Flag immer dann gesetzt, wenn ein Übertrag an das High-Nibble erfolgt, also ein Überlauf des Low-Nibble. Bei der Subtraktion ist es wahrscheinlich so, das das H-Flag immmer dann gesetzt wird, wenn ein Borgen vom High-Nibble erfolgt, also ein Unterlauf
#3940910: > kann man dies dann nicht so betrachten, das das H-Flag nur dann > gesetzt wird wenn das Low-Nibble größer ist als das H-Nibble ? NEIN das Low-Nibble kann niemals höher sein als das High-Nibble schaue er auf die Tabelle mit * und # . um es jetzt mal total zu übetreiben im DEZ einer
-
Thread
BME280 verbraucht zuviel Strom
schrieb im Beitrag #5817419: > Ich hatte mal einen Sensor, da musste ich die beiden Leitungen auf Low > Pegel setzen. Das klingt für I2C ungewöhnlich. Ich hätte den Bus HIGH als sparsamer eingeschätzt.
package, designed for low current consumption (3.6 μA @1Hz), long term stability and high EMC robustness. </zitat> Quelle: https://www.bosch-sensortec.com/bst/products/all_products/bme280
-
Thread
AT89C40551 und PCF8574 am verzweifeln:-)
Zum Problem: So schreiben alle in Foren und auch Datenblätter: 1. START (SCL und SDA beide HIGH, dann SDA auf LOW, danach SCL auf LOW) 2. Adresse (0100 0000) scheint zu funktionieren, den darauffolgende ACKN-bit ist LOW, wenn der 9. Takt kommt 3. Data (1001 1001) scheint auch zu funktionieren, den ACKN-bit ist LOW,wenn ich 9. Takt sende 4.STOP (SCL auf HIGH, SDA auf HIGH) super :-) so habe ich das auch realisiert. Nach START - Adresse - ACKN - Data - schalte ich SDA auf HIGH, danach SCL auf HIGH PCF
-
Thread
Erklärung des Sinn des Pointers
ldi R16, 0xFF out DDRB, R16 ; Port B: Ausgang ldi ZL, LOW(daten*2) ; Low-Byte der Adresse in Z-Pointer ldi ZH, HIGH(daten*2) ; High-Byte der Adresse in Z-Pointer lpm ; durch Z-Pointer adressiertes Byte
[avrasm] ldi ZL, LOW(welche_Daten_ins_LCD*2) ldi ZH, HIGH(welche_Daten_ins_LCD*2) lpm R0, Z+ ;usw ldi ZL, LOW(Eingang_Text*2) ldi ZH, HIGH(Eingang_Text*2)
-
Thread
CP/M auf ATmega88
<RXEN0) sts ucsr0b,temp ldi temp, (1<<UCSZ01) | (1<<UCSZ00) sts ucsr0c,temp ldi temp, HIGH(UBRR_VAL) sts ubrr0h,temp ldi temp, LOW(UBRR_VAL) sts ubrr0l,temp [/avrasm]
über Makros aufbauen würde. Z.B. so: [code] ; instr fetch, op, store ; .macro instr .db low(@2), low(@1), high(@1), low(@0) .endm ;-------------------------------------------------- instr do_fetch_DIR16, do_nop, do_store_BC ;01 nn nn ;LD BC,nn instr do_fetch_DIR8, do_op_CPFA
-
Thread
RS232 --> TTL Wandler Unterschied
W.S. schrieb im Beitrag #6500703: > TTL heißt, alles unter 0.8 V ist low, alles über 2.4 V ist high. > > So war und ist das. Der eigentliche Umschaltpunkt bei TTL war so etwa > 1.6 V Na ja, CMOS (4000-er) und Low Power Schottky TTL (74LS00) könnte gerade soeben noch
> TTL heißt, alles unter 0.8 V ist low, alles über 2.4 V ist high. Bei In-Pegel sind es 0,8 / 2,0 V. Auch einige (3,3V)PLDs halten sich noch da dran.
-
Thread
CRC32 mit stm32
irgendwas schneller machen oder weglassen. uint32_t u32RevByte(uint32_t u32RevValue) { uint8_t HighWordLoNibble, HighWordHighNibble, LowWordLoNibble; unint8_t LowWordHighNibble; /* Copy orignial bytes to temp variables */ HighWordHighNibble = (uint8_t)((u32RevValue>>24)&0xFF); HighWordLoNibble
u32 data) { rbit r0, r0 bx lr } uint32_t u32RevByte(uint32_t u32RevValue) { uint8_t HighWordLoNibble, HighWordHighNibble, LowWordLoNibble; uint8_t LowWordHighNibble; /* Copy orignial bytes to temp variables */ HighWordHighNibble = (uint8_t)((u32RevValue>>24)&0xFF); HighWordLoNibble
-
Thread
Anfängerfrage - Müssen bei 74HCT unbenutze Teile auf Masse
Einen offenen Eingang wird das IC als Low intepretieren irgendetwas in der Nähe konnte das aber stören und da der Eingang wie eine Antenne ist wird das IC dann evtl. als High reagieren. Da ein Eingang keinen Strom liefert ist es wurscht ob
Leider gibt es mit dem pullup ein Problem. Sobald der Eingang unbelegt > ist würde der Pullup ja ein high erzeugen was aber unlogisch ist. Also > muss wohl doch ein pulldown her. Was genau ist daran unlogisch? 90% der Steuerleitungen in der Digitaltechnik sind low-aktiv, also im Ruhezustand high.
-
Thread
Demultiplexer an AVR doch ist active=LOW (74hct154)
2) Du kannst den HCT154 ansteuern, wie du willst, es ist trotzdem immer nur einer der Ausgänge Low und alle anderen High (falls du das meinst mit Active=Low).
2) Du kannst den HCT154 ansteuern, wie du willst, es ist trotzdem immer > nur einer der Ausgänge Low und alle anderen High (falls du das meinst > mit Active=Low). Danke für deine schnelle Antwort, macht natürlich sinn! Sehe gerade im datenblatt dass bei Input sowieso HIGH=active gilt, nur beim
-
Thread
74HC595 Verständnisfrage
und das Stromäquvalent für Dauerein liegt bei 0,8mA (20mA/100*4) und damit wird vermutlich auch eine LOW-Current nicht mal glimmen. Die Ansteuerung steht doch eh im Datenblatt: Initialisierung: MR auf Low, warten MR auf High OE auf Low Shift auf Low Strobe auf Low DS auf Low wenn du nun ein byte ausgeben willst: for i = 1 to 8 if (byte and 1) = 1 then DS = High else DS = Low end if Shift = High Shift = Low byte = byte / 2 // um ein bit nach rechts schieben next i Strobe = High strobe = Low grüsse leo9
-
Thread
Timer2 Obergrenze einstellen
Also kann ich dort nur den fast pwm Mode nutzen sprich ich kann sagen 0-ocr2 ist high Und von Ocr2 bis 255 ist low Aber ich kann nicht sagen von 0-Ocr2 high Und von ocr2 - zähle nur bis 130. Hab ich das richtig verstanden.
denk ich mal auf 100us pro interrupt und dann per if Anweisung von 0-10 zählen und nur bei 0 auf high bei 1 auf low und bis 10 nix machen.
-
Thread
Pic Assembler Pseudo-Befehl DA?
;###### Macros ###### Print macro Text_Label banksel PMADRH ; Bank 2 movlw high Text_Label ; high-Adresse von Text (Program Memory) movwf PMADRH movlw low Text_Lebel ; low-Adresse von Text (Program Memory) movwf PMADR call LCD_Text endm Print_P
] movlw high Text_Label movlw low Text_Lebel [/code] Das 'high' und das 'low' sind Assembler Direktiven. Beim Kompilieren wird das entsprechende low- bzw. high-Byte des Labels eingesetzt. Um Daten aus dem
-
Thread
Display funktioniert nur mit angeschlossener ISP
8Bit müsste doch mit > [c] > HI_EN; > long_delay(); > DATA = 0x30; > long_delay(); > LOW_EN; > long_delay(); > [/c] > > gemacht werden oder? Nö, das ist nur ein E-high-Puls. Die 3 Delays erzeugen doch keine Pulse? Peter
for(i=0;i<3;i++) { HI_EN; long_delay(); DATA = 0x30; long_delay(); LOW_EN; long_delay(); delayms(6); } [/c] Hier steckt auch noch eine Unschärfe drin. Der Ruhepegel von ENA ist LOW. Du hälst ihn aber auf HIGH! Das kann mal schief gehen. Mach es wie im
-
Thread
Taster abfragen und Remote Betätigung
HildeK schrieb im Beitrag #5815346: > Wie groß ist die Spannung bei HIGH an einem Ausgang deines > Arduino? Spielt keine Rolle, er soll ja nur den LOW Pegel nutzen. Das ist natürlich wichtig, sende nicht versehentlich einen High Pegel! Eventuell kannst du sicherheitsheitshalber
cool, danke für die Info, habe jetzt eine Port-pin verwendet und lese in eine. Wenn Low dann Info per Serial raus, ja die 2,8 werden bei 5V noch als High erkannt. Habe eine 220 Widerstand eingebaut und es geht, per Serial In und den Port auf Low Ausgang geht auch, Cool, Danke
-
Thread
NRF24L01 SPI Problem bringt mich noch zum Wahnsinn!
Ende.... später dann etwas Müll.... for (uint16_t i = 0; i <100; i++) { CSN_LOW; SPI_TransferByte(0xff); CSN_HIGH; }
'Note: The 3 bit pipe information in the STATUS register is updated during the IRQ pin high to low transition. The pipe information is unreliable if the STATUS register is read during an IRQ pin high to low transition.' Dann kommt der 'Müll' evtl. daher?
-
Thread
MSP430 und LCD
GPIO P5SEL = 0x00; //Port 5 als GPIO } void LCD_INI(void) { P5OUT = 0x01; //E auf High und RS auf Low __delay_cycles(32000); //warte 20ms P4OUT = 0xF0; //Kommando '0000 1111'r __delay_cycles(32000); //warte 20ms P5OUT = 0x02; //E auf Low, RS auf High __delay_cycles
Simulator (http://www.dinceraydin.com/djlcdsim/djlcdsim.html) kann man das auch nachprüfen (D0-D3 auf High; E auf High dann wieder Low)
-
Thread
Problem Codesegment
, CRC_High LDI CRC_High, 0x00 LDI ZH, HIGH(CRC16_Table_Low) MOV ZL, TempLow LPM EOR CRC_Low, R0 LDI ZH, HIGH(CRC16_Table_High) MOV ZL, TempLow LPM EOR
Hi >LDI ZH, HIGH(CRC16_Table_Low) * 2 Wenn schon, dann LDI ZH, HIGH(CRC16_Table_Low * 2) oder LDI ZH, HIGH(CRC16_Table_Low<<1) MfG Spess
-
Thread
suche Name für Device (ähnlich einem Gatter)
in Bezug auf alle Eingänge und den Ausgang gleichermaßen gefragt. Von "Low" und "High" spricht er nur in Bezug auf den Eingang 2 und einen bestimmten Zustand des Ausgangs. Allerdings ist meine erste Antwort auch nicht davon ausgegangen, das an Eingang 1 ein High/Low-Signal
Er meint wohl ein Latch mit Preset=HIGH und einem aktive-low OE
-
Thread
Unterschied zwischen Low-Level Triggered, pegel- und flankengesteuerten IRQs
Low-Level sowie High-Level Interrupts sind pegelgesteuerte Interrupts. Der Untschied: Beim flankengesteuerten Interrupt löst der Interrupt beim Wechsel von High-auf Low, oder / und beim Low-High Wechsel aus. Und nur dann! Der pegelgesteuerte Interrupt löst bei High, oder Low-Signal aus. Wenn Du ein flankengesteuerten Interrupt verlässt, wird er erst bei der n. Flanke wieder betreten. Beim pegelgesteuerten Interrupt hingegen wird der Interupt nach dem verlassen
-
Thread
Schieberegister über zwei Ports
memory[i]>>j) & 1) //Bits jeweils mit 1 verunden SR_PORT |= (1<<SR_1); //wenn Bit=1 SR_1 auf HIGH else SR_PORT &= ~(1<<SR_1); // wenn Bit=0 SR_1 auf LOW SR_PORT |= (1<<SR_0); //HIGH Flanke => schieben SR_PORT &= ~(1<<SR_0); //LOW } }
]>>j) & 1) //Bits jeweils mit 1 verunden SR_PORT |= (1<<SR_DATA); //wenn Bit=1 SR_1 auf HIGH else SR_PORT &= ~(1<<SR_DATA); // wenn Bit=0 SR_1 auf LOW SR_PORT |= (1<<SR_CLOCK); //HIGH Flanke => schieben SR_PORT &= ~(1<<SR_CLOCK); //LOW } } [/C] Und noch
-
Thread
Input - Output
machen. *Wenn* ein Pin als Ausgang geschaltet ist, dann kannst du mit sbi(PORTA,0) den Pin 0 auf High schalten, mit cbi(PORTA,0) schaltest du das auf Low. Oder PORTA=0x03 setzt Bit 0 und 1 auf High, alles andere auf Low. Ist z.B. Pin 7 als Eingang geschaltet, kannst du mit x=PINA & 0x70 ihn
Ausgang definiere, dann setzt das Board die LEDs bei CBI auf eingeschaltet (dementsprechend 1 oder High) und bei SBI auf low. Meines wissens aber sollte er sie bei SBI auf high setzten und bei cbi auf low.(danke auch nochmal an Fritz) Habe ich jetzt einen Denkfehler oder macht das Board die ganze sache
-
Thread
RX-Interruptroutine wird fälschlicherweise ständig durchgelaufen
des UART-RX ist ja H-pegel. ja stimmt so wie du es meint. aber bei mir bleibt der RX-leitung auf Low, was total unnormal ist. Wenn ich Reset drücke, gehen zuerst beide(Tx,Rx) auf Low dann bleibt Tx ständig auf High. RX erzeug nur eine kleine Implus von ca 10ms dann bleibt ewig weiter auf LOW.
Pull-Up , und Pin B ein 470Ohm Pull-down dran gehängt. damit wenn nichts ankommt , die Rx-Leitung auf High bleibt. Das bringt aber kein ergebnis. Die RX-Leitung ist immerhin LOW.
-
Thread
UART Zeichen Empfangen und nutzen
Hallo zusammen, ich möchte per UART ein Zeichen als String empfangen und je nach Zeichen einen Pin High oder Low setzen. Leider funktioniert mein Programm nicht und ich weiß nicht warum. UART selbst funktioniert, da ich an mein Terminalprogramm testweise Strings senden konnte. Wo liegt der Fehler
speichern habe ich gerade keine elegante Idee. Wie realisiert man es elegant, wenn man verschiedene Pins low oder high setzten will und die ihren Status behalten sollen, solange der Status nicht explizit geändert wird? Vielen Dank :-)
-
Thread
SCK durchgehend erzeugen
: CPHA=1 und CPOL=1 CPHA=0: Daten werden mit der ersten Flanke des Taktsignals übernommen (HIGH) CPOL=0: Ist der Takt im Ruhezustand auf LOW-Pegel, die erste Flanke ist eine steigende Flanke(HIGH) CPHA=1: Daten werden bei fallender Taktflanke eingelesen, bei steigender ausgegeben CPOL=1: Takt ist invertiert, ruhe HIGH, ein Wechsel auf LOW zählt als steigende Taktflanke Hab ich das soweit richtig wieder gegeben?
-
Thread
String über UART an LCD
. [avrasm] receive: cli SBI PORTC,3 push temp1 push zl push zh ldi zl, low(text) ldi zh, high(text) warten: sbis UCSRA, RXC rjmp warten in temp1, UDR st Z+, temp1 out UDR,temp1 rcall senden cpi temp1, 0x0D ;
ist(20 Zeichen) kann man auch mit .dseg .org 0x60 text: .byte 20 st Z+, temp1 CPI Zl,(low(text)+20) prüfen und dann die Zeile komplett ausgeben. Übrigens: > ldi r22,0 > ldi zl, low(text) > ldi zh, high(text) >string_1: > inc r22 >
-
Thread
Atmega8 fusebit´s
kommt mit dieser Einstellung raus L 0x6f h 0xc7 Bzw L 0x7f h 0xc7 Und wieviel Mhz entsprechen low mid oder highfrequenz? Ich meine im vergleich,mit 16Mhz wär das ja eher low oder mid? .Ich muss mich noch mehr einlesen Jedenfalls habe ich mir heut Nachmittag ne Platine gemacht von dieser Seite
>> Und wieviel Mhz entsprechen low mid oder highfrequenz? Ich meine im >>vergleich,mit 16Mhz wär das ja eher low oder mid? .Ich muss mich noch >>mehr einlesen Hab ich mich auch immer gefragt, zumal da nix besonders hohes angeboten
-
Thread
LCD Probleme
BYTE high_nibble, low_nibble; outp(0xf0, DDR); outp(0x1f, PORT); //High und Lownibble ermitteln high_nibble = data>>4; low_nibble = data; //unnötige daten auf null setzten high_nibble
daten auf null setzten high_nibble = 0x0f; low_nibble = 0x0f; //RS-Bit setzten high_nibble |= 1<<RS_PIN; low_nibble |= 1<<RS_PIN; //High Nibble ausgeben outp(high_nibble, PORT); lcd_enable();
-
Thread
AVR mit mehr als 26 I/O Ports
versuchen erstmal alles auf Eingang (P0 und P1 mit Pullup) zu setzen. Anschließend P7 als Ausgang auf Low. Dann sehe ich an P0 und P1 ob sie High oder Low sind (in deinem Fall beide Low). Anschließend P7 wieder Eingang und P6 als Ausgang auf Low. Wieder P0 und P1 checken und da sollte dann P1 auf Low sein
> Anschließend P7 wieder Eingang und P6 als Ausgang auf Low. Wieder > P0 und P1 checken und da sollte dann P1 auf Low sein und P0 immer > noch High, da hier keine Verbindung geschlossen wurde. Doch, wurde sie. Die Verbindung geht von P6 zu 5. Der schließt
-
Thread
Atmega8 stop nach wenigen sec.
Bei PWM fehlt dir immer 1 Wert, je nach PWM Einstellung kannst du entweder ganz an also immer auf high aber dafür nie ganz auf low (bleibt immer ein Spike von einem Taktzyklus) oder eben ganz auf low aber dafür nie auf ganz high.
Laut Datenblatt "Active Low Output Enable". Also würde ich sagen auf LOW legen und die LED müssten leuchten (wenn vom Controller aktiviert). HIGH wird wohl die LEDs abschalten.
-
Thread
STM32 HAL_SPI Problem: MOSI immer HIGH
MISO = Mast In Slave Out -> Wird vom Slave bedient. Solange der STM den nicht high zwingt (abstecken probiert ?) hat der relativ wenig einfluss auf den traffic...
falsch. Kontrolliere mal, ob irgend wer irgendwann im Register I2C_CR1 die Bits 20, 21 oder 22 auf High setzt.
-
Thread
Frage zu 74HC244
Also das ich das jetzt Richtig verstehe. Sapnnung und Strom gibt er aus wenn A angeschlossen und HIGH ist. Wenn ich A Low setze und OE low ist Y auch low. Wenn OE HIGH ist wird er hochohmig. Viel Ahnung bis jetzt noch nicht! Gibt es da eine empfehlenswerte Website darüber?
Also das ich das jetzt Richtig verstehe. Sapnnung und Strom gibt er aus > wenn A angeschlossen und HIGH ist. > Wenn ich A Low setze und OE low ist Y auch low. > Wenn OE HIGH ist wird er hochohmig. Trenne doch erst mal die Funktionalitäten. /OE (bzw. /G1 oder /G2) ist eine andere Welt. Sozusagen
-
Thread
74LS55 UND Gatter, wie verschalten
welche anliegen sollen, damit ich auf einem Ausgang > auch ein Signal bekomme. Du meinst: In1 = HIGH und In2 = HIGH dann Out = HIGH, sonst Out = LOW? Das geht mit dem eh nicht. Der liefert dann Out = LOW und sonst HIGH. Da nimmt man ein AND-Gatter, wie z.B. den 74HC08. Davon sind vier in einem
betreiben. Ja, ist möglich. 1. Baustein: An A und B kommen deine Signale, C und D müssen auf HIGH. An E,F,G,H wird LOW (GND) angelegt. 2. Baustein: An A kommt der Ausgang vom ersten, B,C,D müssen auf HIGH. E-H wieder auf LOW. Aber zwei so Eumel für eine läppische UND-Verknüpfung: das tut
-
Thread
CAN-Bus mit Arduino auswerten
ein CAN-Interface > brauche. Ich möchte ja nur Daten abgreifen. Die Daten bestehen ja nur > aus High oder low Naja, in dem Fall eher dominanz und rezessiv... Also einen Transceiver würde ich Dir zumindest schon empfehlen um auf High und Low zu kommen. Und dann ist da noch die Bitrate. Highspeed
Mhz einstellen :D? Kann ich dir erst heute abend sagen... > Grundsätzlicher Ablauf: An CAN High und CAN LOW jeweils einen 120 Ohm > Widerstand hängen. Nicht jeweils, je einen R120 von High nach Low an beiden Enden des Busses, evtl sitzt ja schon einer im Steuergerät. Aber nimm doch einfach
-
Thread
I2C RTC+EEPROM mit ESP8266. Mal funktionierts mal nicht
bleibt der BUS auch nachdem die Platine stromlos war in diesem Zustand. SCL geht dann zwar mit auf LOW aber sobald die Strom drauf kommt geht nur SCL auf HIGH. SDA bleibt weiterhin auf LOW. Erst wenn man die Batterie entfernt und alles Stromlos ist geht SDA auch wieder mit auf HIGH. Ich kann mir dieses
//SDA for(int i = 0; i < 9; i++) { //9 clock pulse @ 500Hz digitalWrite(5, LOW); delay(1); digitalWrite(5, HIGH); delay(1); } digitalWrite(5, LOW); //SCL Low delay(1); digitalWrite(4, LOW); //SDA Low
-
Thread
(Wahrscheinlich) Pointer Problem
//////////////////////////////////////////////////////////// void Pulse595Clock() { CLOCK595_high(); CLOCK595_low(); } void Pulse165Clock() { CLOCK165_low(); CLOCK165_high(); } //////////////////////////////////////////////////////////////////// void Pulse595Rclock() { RCLOCK595_high(); RCLOCK595_low(); } void Pulse165Parallel() { PARALLEL165_low(); PARALLEL165_high(); } //////////////////////////////////////////////////////////////////// void ShiftOut(uint8_t
-
Thread
Atemega328p - schaffst du das?
steht immer noch: Marc V. schrieb im Beitrag #4605078: >> 1) PinX INPUT schalten, PinY OUTPUT HIGH, 1ms >> PinX OUTPUT High schalten, PinY INPUT, 25 ms > > Was ist das genau ?
I R3 I GND So, wird aber anders gemacht nur durch Output low und high schalten, dient mir zu asynchronen Stromwechsel.
-
Thread
Schieberegister Letzter Pin immer 1
Pulserzeugung nicht so über den Code zu verstreuen. Ein Puls, das ist immer von einer Ausgangslage (low oder High), geht die Leitung in den anderne Zustand und dann wieder zurück. Die Ausgangslage beim 595 nehm ich normalerweise als Low an (der 595 reagiert an und für sich nur auf die Flanke) (und
i < 8; i++) { digitalWrite(PIN_IC_DATA, test[i]); digitalWrite(PIN_IC_SHIFT, HIGH); digitalWrite(PIN_IC_SHIFT, LOW); } digitalWrite(PIN_IC_STORE, HIGH); digitalWrite(PIN_IC_STORE, LOW); .... [/c] Wenns weiterhin Probleme gibt, dann würde ich halt
-
Thread
Arduino Keypad und Multitasking
aktStatus(); break; case '1': if(digitalRead(pumpe) == HIGH) {digitalWrite(pumpe, LOW);} else{digitalWrite(pumpe, HIGH);}; aktStatus(); break; case '2': if(digitalRead(injektor) == HIGH) {digitalWrite(injektor, LOW);} else{digitalWrite(injektor, HIGH);}; aktStatus(); break; case '3': if(digitalRead(v_pneumatik) == HIGH) {digitalWrite(v_pneumatik, LOW);} else{digitalWrite
-
Thread
Fusebits - tiny2313 mit 4 MHz Quarz
#SP12_Programmer http://palmavr.sourceforge.net/cgi-bin/fc.cgi?P_PREV=ATtiny2313&P=ATtiny2313&V_LOW=DC&V_HIGH=DF&V_EXTENDED=FF&M_LOW_0x3F=0x1C&M_LOW_0x40=&M_LOW_0x80=&M_HIGH_0x01=&M_HIGH_0x0E=0x0E&M_HIGH_0x10=&M_HIGH_0x20=0x00&M_HIGH_0x40=&M_HIGH_0x80=&M_EXTENDED_0x01=&B_SUT1=P&B_SPIEN=P&B_CKSEL1=
selbst ausdenken, wie die Kommunikation laufen soll: In welcher Reihenfolge sind welche Pins auf High oder Low zu ziehen um bestimmte Zustände anzuzeigen.
-
Thread
Zeitverzögerung von 800ms einbauen (Assembler)
einbauen. Desweiteren soll das Programm auch erst dann mit dem Ablauf weiter machen, wenn die Flanke von High auf Low am Eingang (Taster) gewechselt hat. Verwirklichen möchte ich mit meinem Programm ein D-Flip-Flop. Taster drücken, LED an, Taster wieder drücken, LED wieder aus. Ich bitte um leicht verständliche
>> ldi TMP1, (0<<LED) >> out PORTB, TMP1 ; Setz Ausgang auf low. Die LED müsste leuchten > >> ldi TMP1, (0<<LED) >> out PORTB, TMP1 ; Setz Ausgang auf High- Die LED müsste erlöschen Also für auf high setzen würde ich auch nicht 0<<LED in den Port
-
Thread
Arbeitet ihr lieber mit SPI oder I2C Bauteilen?
von Microchip. Habe ich noch nie benutzt. nach Datenblatt: - SPI bis 7,5MHz - Chip-Select ist High-Activ - SPI Mode 0 oder 2 - multi-byte Lesen geht, Adresse wird decrementiert Code: io_init() // CS pin auf Ausgang und low setzen spi_init() // SPI einstellen auf Master, Mode 0, 4MHz, Pins
SPI.DATA.reg = 0x00; while((SERCOM0->SPI.INTFLAG.reg & SERCOM_SPI_INTFLAG_TXC) == 0); temperature_high_byte = SERCOM0->SPI.DATA.reg; SERCOM0->SPI.DATA.reg = 0x00; while((SERCOM0->SPI.INTFLAG.reg & SERCOM_SPI_INTFLAG_TXC) == 0); temperature_low_byte = SERCOM0->SPI.DATA.reg; PORT->Group[0].OUTCLR.reg
-
Thread
Attiny85 EEprom verliert Daten
EEMEM; uint16_t EEPROM_power_address EEMEM; uint16_t EEPROM_power_command EEMEM; uint16_t EEPROM_lower_protocol EEMEM; uint16_t EEPROM_lower_address EEMEM; uint16_t EEPROM_lower_command EEMEM; uint16_t EEPROM_higher_protocol EEMEM; uint16_t EEPROM_higher_address EEMEM; uint16_t EEPROM_higher_command
Ferbedinung Config uint16_t power_protocol; uint16_t power_address; uint16_t power_command; uint16_t lower_protocol; uint16_t lower_address; uint16_t lower_command; uint16_t higher_protocol; uint16_t higher_address; uint16_t higher_command; void check_config (void) { if (power_protocol =
-
Thread
Programm zählt Variable hoch wenn Taster gedrückt, wie unterbinden?
(StandlichtL, HIGH); digitalWrite (StandlichtR, HIGH); digitalWrite (AbblendlichtL, LOW); digitalWrite (AbblendlichtR, LOW); AM=0; } if (SM==2 && AM==0) {
if (SM==3) { digitalWrite (AbblendlichtL, HIGH); digitalWrite (AbblendlichtR, HIGH); digitalWrite (StandlichtL, HIGH); digitalWrite (StandlichtR, HIGH);
-
Thread
deklaration mit define,wie richtig, so doch nicht oder?
void) { lcd_ini(); #define Eingabeport PINB DDRB=0x00; //als Eingang PORTB=0xff; // auf high gesetzt lcd_gotoline(2);lcd_writezahl(result); while(1) { if (!(Eingabeport &(1<<0))) //Wenn PIN low wird, dann erhöhe um 1 und gib das Ergebnis aus { result=result+1; lcd_gotoline
normal, dass sich der Atmega32 am PORTC nicht ganz normal verhält? Wenn ich die Datenrichtung auf high und ausgang setze, dann sind dennoch nciht alle auf high, genauso, wenn ich die auf Eingang setze, alle scheinen nicht zu funktionieren. hier eine konkrete messung Alle auf low geschaltet,
-
Thread
LCD HD44780 CG Ram Adresse per Arduino
4 address set_HighLowToggle(lcd_db5, "low"); set_HighLowToggle(lcd_db4, "high"); set_HighLowToggle(lcd_db3, "high"); set_HighLowToggle(lcd_db2, "low"); set_HighLowToggle(lcd_db1, "low"); set_HighLowToggle
6 address set_HighLowToggle(lcd_db5, "high"); set_HighLowToggle(lcd_db4, "low"); set_HighLowToggle(lcd_db3, "high"); set_HighLowToggle(lcd_db2, "low"); set_HighLowToggle(lcd_db1, "low"); set_HighLowToggle
-
Thread
Windrichtungserkennung mit Hall Sensor
433E6 // LoRa Frequenz void setup() { pinMode(LED, OUTPUT); digitalWrite(LED, LOW); analogReference(INTERNAL); // ADC Referenz auf interne 1.1V keep_ADCSRA = ADCSRA; loop_counter = 0; digitalWrite (2, HIGH); // PullUp einschalten, Timer-Elko aufladen meas[0] =
, res, 100); } res = Val; digitalWrite(LED, HIGH); delay(10); digitalWrite(LED, LOW); } void send_LoRa() { if (res >= 0 && res < 361) // sicherheitshalber den Bereich eingrenzen, falls es beim ausmitteln falsche Werte gibt {
-
Thread
Gibt es solch eine fertige Digitalschaltung? (serial clock to parallel output)
Das sowieso. Aber schau dir das Diagramm nochmal ganz genau an. Die Ausgänge sollen immer nur dann High sein, wenn am Clock-Eingang auch ein High ansteht. Zwischendurch gibt's auch immer ein Low!
sowieso. Aber schau dir das Diagramm nochmal ganz genau an. Die > Ausgänge sollen immer nur dann High sein, wenn am Clock-Eingang auch ein > High ansteht. Zwischendurch gibt's auch immer ein Low! Ich vermute der TO hat nur versucht es bildlich darzustellen, ohne das Timing genau so zu meinen wie
-
Thread
schmitt-trigger funktion 74hc14/74hc04
Spannungspegel sind im Kapitel 9 für den HC04 angegeben. Für dich relevant sind die beiden ersten Angaben "HIGH-Level Input Voltage" und "LOW-Level Input Voltage". Blöderweise fehlen konkrete Zahlen für Vcc=5V. Dann nimmst du halt die Zahlen für 4,5V: High = mindestens 3,15 V Low = maximal 1,3 V Dein High pegel (1,93 V) ist also für diesen Chip zu niedrig. Beim HCT04 sind die Zahlen anders: High = mindestens 2,0 V Low = maximal 0,8 V Passt auch nicht zu deinen 1,9V. Damit liegst du immer noch in der "verbotenen" Zone zwischen High und Low. Im Schaltplan wird hingegen der 74ACT04 genannt
-
Thread
PWM mit BASCOM auswerten Gesperrt
Wenn ich dies nun richtig interpretiere, ist das High-Signal 2ms lang bei einem dazwischenliegenden Low von 12ms. Also eine Gesamtdauer von 14ms. Das Low-Signal am PWM-Kanal ist hingegen nur 1ms lang und zwischen 2 High-Pegeln liegen ganze 17ms, wodurch
Maik Schulze schrieb im Beitrag #3383697: > Wenn ich dies nun richtig interpretiere, ist das High-Signal 2ms lang > bei einem dazwischenliegenden Low von 12ms. Also eine Gesamtdauer von > 14ms. > > Das Low-Signal am PWM-Kanal ist hingegen nur 1ms lang und zwischen 2 > High-Pegeln liegen
-
Thread
Problem: AVR m8A/m8535 mit TG12864B-03 in Assembler
auf high (read from display) oder low (write to display) setzen E auf high ziehen 8-10 nops CS1/2 (nach Belieben) auf high ziehen (high = aktiv) 8-10 nops E auf low ziehen 8-10 nops CS1/2 auf low ziehen
(high = aktiv) >8-10 nops >E auf low ziehen >8-10 nops >CS1/2 auf low ziehen >8-10 nops Die TC12864 Displays haben anscheinend KS108 (-kompatible) Controller. Der fordert für einen E-Impuls (Low/High