-
Thread
ESP12 wird warm
in den Bootloader? War da > nicht etwas mit GPIO0+2+15? Also das heißt das ich noch GPIO0 auf high legen muss?
Dennis P. schrieb im Beitrag #7788219: > Also das heißt das ich noch GPIO0 auf high legen muss? Offen lassen geht auch. Du darfst ihn beim Start nur nicht auf LOW ziehen.
-
Thread
Arduino DRAM Ansteuerung
Schreibvorgang.. Serial.println("|"); Serial.print(x); for(i=0;i<=8;i++){ digitalWrite(die,LOW);//alle bits werden auf HIGH getzt digitalWrite(ras,HIGH); digitalWrite(cas,HIGH); PORTD=x; digitalWrite(ras,LOW); PORTD=0; digitalWrite(rw,LOW); PORTD=i; digitalWrite(cas,LOW); PORTD=0; digitalWrite(ras,HIGH); digitalWrite(cas,HIGH); digitalWrite(ras,LOW); digitalWrite(cas,LOW); } } for(x=0;x<=8;x++){//Lesevorgang...
-
Thread
Schrittmotor Pollin und PBL3717
Sense-Resistor 0,47Ohm verwenden müssen. Die Software sieht so aus, dass ich Die vier IO-Ports auf "low" gesetzt habe und die Phase immer Viertelperiodisch high und low setze. P1-Low P2 Low P1-High P2 Low P1-High P2 High P1-Low P2 High Jeweils 100ms Wartezeit zwischen den einzelnen Umschaltprozessen
dritte Frage: 3) Woher entnehme ich eigentlich, wieviel Strom das IC bei den drei Strom-Modi Low-Current Medium-Current High-Current bereitstellt?
-
Thread
Erkennen ob man in einer Interrupt Routine ist beim 8051
Hallo, der 8051 hat zwei Interrupt Prioritäten, low and high. Damit könnte es eine L1 Interrupt Rotuine mit low prio und eine zweite L2 Interrupt Routine mit high prio geben. Die L2 Interrupt Routine kann die L1 Interrupt Routine unterbrechen. Gibt
RTOS-Handler eingebunden, die die User-Handler aufrufen. Dies sollte wie gewünscht funktionieren, wenn der Low-Prio-Interrupt nur vom High-Prio-Interrupt unterbrochen werden kann und der High-Prio-Interrupt nicht unterbrechbar ist (eingeschränkte Interrupt-Verschachtelung). Wenn man die Flags zu Countern ausbaut
-
Thread
MCP23S18 I/O Expander
// für Zustandsentscheidung während der Laufzeit { if (state) setHigh(); else setLow(); } }; [/c] Ist kostenlos, ich hoffe das es nicht umsonst ist. :-)
Register festlegen. Also musst du sicher mal zu dem Register navigieren. und mit restart meine ich CS High und dan erneut Low und neu beginnen. Oder verstehe ich das falsch.
-
Thread
RFID HTRC110
letzten Bits in die Berechnung des neuen Bits mit einfließen lassen. Welche Zeiten mißt Du? Nur die Low- oder High-Zeit oder beide? Gruß, Markus_8051
Hi! >Allerdings gibt es lange High und lange >Low-Impulse. Bist Du sicher, dass du den richtigen erwischst? Ist egal: Nach einem langen Low-Impuls bin ich in der Bit-Mitte und habe eine steigende Flanke, d.h. eine Daten-0, nach
-
Thread
Mega32 mit VS1011 und SD-Karte -> Es will einfach nicht
(3000); //Kurze Verschnaufpause VS_PORT |= 1 << VS_RESET; //RESET geht auf HIGH while (count--) //Um zu sehen, ob DREQ erst LOW dann HIGH wird { if ( DREQ_PIN & (1 << VS_DREQ)) { uart_putc('~'); } else { uart_putc('_');
geht auf LOW _delay_us(3000); //Kurze Verschnaufpause VS_PIN |= 1 << VS_RESET; //RESET geht auf HIGH while (count--) //Um zu sehen, ob DREQ erst LOW dann HIGH wird {
-
Thread
ESP8266-1 mit Selbsthaltung
Strom von 0,07mA. Wenn ich die Trennstelle bei laufendem Modul schließe, dann ist ein ganz sauberer LOW- und HIGH-Pegel zu sehen und zu messen bei einem Strom von knapp 2mA. Das Modul läuft bei geschlossener Trennstelle nicht an. Auch nicht im Programmiermodus. Der Port will auf HIGH gehen (soll er
Du auf S.19 den entscheidenden Hinweis: [code] Work mode: GPIO0, GPIO2 and U0TXD should be kept high when powering on the chip. If it is not used, it could be left floating ( it has internal pull-up). MTDO should be kept low when powering on the chip." [/code] Ich hoffe, das hilft. Als
-
Thread
Wii Nunchuk + I2C + AtMega88
/A4 #define true 1 #define false 0 //!Pin definitions #define SDA_LOW DDRC |= (1<<PC4); // low, open drain #define SDA_HIGH DDRC &= ~(1<<PC4); // high, Z #define SCL_LOW DDRC |= (1<<PC5); // low, open drain #define SCL_HIGH DDRC &= ~(1<<PC5); // high, Z
SDA_HIGH else SDA_LOW SCL_HIGH data <<= 1; SCL_LOW } SDA_HIGH SCL_HIGH asm("nop"); // WICHTG, wegen der Eingangsverzögerung! if (SDA) cnt=0; else cnt=1;
-
Thread
PIC SPI mehrere Slaves
einfach den MISO Pin jedes Slaves einfach auf >>input zu setzten solange die entsprechende SS Leitung HIGH ist? > > Das macht das SPI-Modul in den Slaves eigentlich allein. Ok, also kümmert sich das SPI Modul darum, dass weder HIGH noch LOW auf die Leitung gelegt wird, wenn SS nicht LOW ist? Falk
@ Osccon (Gast) >Ok, also kümmert sich das SPI Modul darum, dass weder HIGH noch LOW auf >die Leitung gelegt wird, wenn SS nicht LOW ist? Das hoffe ich. Genaues kennt dein Datenblatt. >Aber angenommen es passiert, dass 5 Slaves MISO auf LOW haben und der 6. >auf HIGH
-
Thread
Serienwiderstand bei Hochfrequenz
bei unbrauchbarer Terminierung in den Pegelbereich gehen, in dem der Takteingang bereits wieder als LOW gesehen wird. Und dann wieder zurück auf HIGH und schon hat man eine doppelte Flanke. Übrigens: mit passender Serienterminierung gibt es kein Überschwingen sondern die Takte sehen aus, wie gemalt
Marc V. schrieb im Beitrag #4659788: > Dateneingang dagegen, hat einen Bereich garantiert HIGH und einen > Bereich garantiert LOW. > Alles dazwischen ist undefiniert, kann so oder so gelesen werden. > Deswegen reagieren Dateneingänge (im Gegensatz zu Takteingängen) > sehr empfindlich
-
Thread
Registerverständnisfrage
so dass noch viiel schlimmere Dinge passiert sind...... [avrasm] Beispiel: LCD_Tag: ldi zl,low(Wochentag*2) ldi zh,high(Wochentag*2) rjmp LCD_string LCD_Datum: ldi zl,low(Datum*2) ldi zh,high(Datum*2) rjmp LCD_string LCD_Zeit: ldi zl,low(Uhrzeit
zl,low(tempcopy) ldi zh,high(tempcopy) rjmp LCD_stringram LCD_Day: rcall LCD_2z ldi zl,low(DayCopy) ldi zh,high(DayCopy) rjmp LCD_stringram
-
Thread
Software I2C Problem - kein ACK
heute gekauft. Immer das gleiche Ergebnis. 4. Ja, vor der Start-Condition liegen SCL und SDA auf High. Eine Stop-Condition vor dem Start einzufügen hilft auch nicht.
Hi, @Oliver: ich schalte um zwischen Ein- und Ausgang, um den Bus auf HIgh oder Low zu ziehen. @Mike: Einen Screenshot vom Oszi kann ich leider nicht machen, weil ich den Oszi nicht mit dem Rechner verbinden kann. Die Zugriffsmethoden hab ich mal angehängt (sind leider
-
Thread
IOs umbenennen
PORTC, &DDRC, &PINC #define PORT_D &PORTD, &DDRD, &PIND #define L 0 // Output Low-Level #define H 1 // Output High-Level #define T 2 // Output Toggle-Level #define Z 3 // Input with High-Impedance #define P 4 // Input with Pullup
name) IO_DDR(type, name) |= (1<<IO_BIT(type, name) ) // set Port as output //#define IO_IS_HIGH(type, name) IO_DDR(type, name) |= (1<<IO_BIT(type, name) ) // ask if IO is high/VCC //#define IO_IS_LOW(type, name) IO_DDR(type, name) |= (1<<IO_BIT(type, name) ) // ask if IO is low/GND
-
Thread
Pin auf high setzen MKL26
Hallo zusammen, ich versuche gerade einen einfachen Pin auf High (MCU: MKL26xxx) zu setzten, leider funktioniert das irgendwie nicht so einfach wie bei den AVR's. Bin mir nicht sicher was ich falsch mache bzw. habe den Verdacht das ich generell irgendetwas bei ARM-Programmierung
0x0, array step: 0x4 */ __O uint32_t GPCLR; /**< Global Pin Control Low Register, offset: 0x80 */ __O uint32_t GPCHR; /**< Global Pin Control High Register, offset: 0x84 */ uint8_t RESERVED_0[24]; __IO uint32_t ISFR;
-
Thread
ESP8266 Micropython : I2C
Grenzbereich spielen hier sicher die konkreten Spannungspegel eine Rolle (Ab wann erkennt der MPU Chip High und ab wann erkennt er Low?), die du aber nur mit einem analogen Messgerät erfassen kannst.
github.com/micropython/micropython/blob/master/extmod/machine_i2c.c [c] STATIC void mp_hal_i2c_scl_low(machine_i2c_obj_t *self) { mp_hal_pin_od_low(self->scl); } STATIC int mp_hal_i2c_scl_release(machine_i2c_obj_t *self) { uint32_t count = self->us_timeout; mp_hal_pin_od_high(self
-
Thread
DOGM128 an MSP430
; //Y - Position auf Steuerbefehl addieren set[2] = set[2] + (x & 0x0f); //Low - Nibble auf Steuerbefehl addieren set[1] = set[1] + (x >> 4); //High - Nibble auf Steuerbefehl addieren transmit(set[0]); transmit(set[1]); transmit(set[2]); } void main
jetzt driket aus der Funktion rausgeschmissen und setzen ihn > vor der eigentlichen Übertragung auf low, wenn alle hex-Werte übertragen > sind setzen ich ihn wieder auf hi Und du hast wirklich nachgemessen das der CS erst NACH der übertragung der Daten high wird?
-
Thread
Attiny85 wie progamiere ich mit AVR eine SRV
sofort aus.) Ein ganz prima Sache wäre dann noch wenn man es hinbekommen könnte zusätzlich über ein High oder Low Signal am PB3 als (Schalter gesehen) das Programm wahlweise nur als Stromstoßschalter (selbe Funktion ohne Zeit) und als Stromstoßschalter mit Rückfallverzögerung. Ist das machbar mit
Wechsel den Ausgang (Timed Output) Ein- = High oder Ausschalten = Low. Bei einem Moduswechsel über "Mode Switch" bleibt der Zustand des Ausgangs (Timed Output) erhalten und man kann ihn immer mit betätigen von "OnOff Switch" wechseln. Die
-
Thread
Mehrere ADC-Pins bei Atmega8 benutzen
temp6 = r29 ; LCD-Routines .def temp7 = r30 ; LCD-Routines ldi temp1, LOW(RAMEND) ; LOW-Byte der obersten RAM-Adresse out SPL, temp1 ldi temp1, HIGH(RAMEND) ; HIGH-Byte der obersten RAM-Adresse out SPH, temp1 ldi
adhigh, high(-100) ; +100 ldi zehner, '0'-1 ; Ziffernzähler direkt als ASCII Code ret Z_zehner: inc zehner subi adlow, low(10) ; -10 sbci adhigh, high(10)
-
Thread
suche IC das arbeitet wie Stufenrelai
verstanden habe, ist das Schaltermodul ja auch ein Bausatz. Da das aktive Signal des Schaltermoduls Low ist, und mit dem Pullup-Widerstand am Clock-Eingang des 4017 High, wird der 4017 auch nicht beim Einschalten weiter zählen, sondern beim Ausschalten. Da ist unter Umständen noch eine Invertierung des
schalten auch bei einem synchronen Design die FlipFlops nicht schneller, da sie ja nicht immer bei jedem Low-High Taktflankenwechsel schalten (ja ich weiß, es gibt auch FlipFlops, die bei High-Low Taktflankenwechsel schalten). Bekanntlich haben CMOS-Logikbausteine beim Umschalten den größten "Energieverbrauch
-
Thread
Impulse zählen, PulseIn schnell genug?
der mir 12000 Impulse / Liter gibt (Bei jedem Impuls wechselt eine LED ihren Zustand (Toggeling) (High Low High Low High Low.. ihr wisst schon) Natürlich will ich die Durchflussmenge kontinuirlich berechnen und ausgeben, ist da PulseIn das richtige Command für, und schnell genug? Es gibt ja auch
mir 12000 Impulse / Liter gibt (Bei >jedem Impuls wechselt eine LED ihren Zustand (Toggeling) (High Low High >Low High Low.. ihr wisst schon) Und wie hoch ist die maximale Durchflußmenge und damit die maximale Pulsfrequenz? >Natürlich will ich die Durchflussmenge kontinuirlich berechnen und
-
Thread
I2C Slave Receiver Problem Arduino
{ a1 = a; a2 = a; if (a2 >= 128) { a2 = a2 - 128; digitalWrite(zuendung , HIGH); digitalWrite(batterie , HIGH); digitalWrite(regler , HIGH); } else { digitalWrite(zuendung , LOW); digitalWrite(batterie , LOW); digitalWrite(regler , LOW
if (a2 >= 16) { a2 = a2 - 16; digitalWrite(fernlicht , HIGH); } else { digitalWrite(fernlicht , LOW); } if (a2 >= 8) { a2 = a2 - 8; digitalWrite(blinkenlinks , HIGH); } else { digitalWrite(blinkenlinks , LOW
-
Thread
1" Full-Color-OLED
Heißt »Klappt nich« jetzt a) das Programm bleibt dort hängen (Bit wird nie low) b) das Programm verhält sich wie ohne Abfrage (Bit ist immer low) c) das Programm verhält sich noch anders (nämlich?) Meist ist es in solchen Fällen ja irgendein Mist, daß man den Pin versehentlich
- Kontrollieren - E Aus - E An - Kontrollieren oder wie? u.A. @ Philipp der Pin ist immer LOW. Es wird nicht gewartet. die internen Pullup sins nat. an!
-
Thread
AVR-GCC-Tutorial, ~ Operator vergessen
aufgefallen. Auf Seite 25 im pdf - File heißt es Der UART basiert auf normalem TTL-Pegel mit 0V (LOW) und 5V (HIGH). Die Schnittstellenspezifikation für RS-232 definiert jedoch -3V ... -12V (LOW) und +3 ... +12V (HIGH). Zudem muss der Signalaustausch zwischen AVR und Partnergerät invertiert werden. Ist LOW und HIGH in -3V ... -12V (LOW) und +3 ... +12V (HIGH) nicht vertauscht? Sollte es nicht besser heißen: Der UART basiert auf normalem TTL-Pegel mit 0V (LOW) und 5V (HIGH). Die Schnittstellenspezifikation
-
Thread
Retro Game Ping Pong modifizieren Atmega8
Wenn du einen Baisstrom fließen lässt (also eine positive Spannung > anlegst. Bzw. ein logisches HIGH), dann leuchtet die LED, weil dann der > Transistor durchsteuert. Ohne ULN würden die LEDs bei Low leuchten! Der Vorschlag von Karl Heinz ist die sinnvollste Lösung - einfach die Matrix umdrehen
Wenn du einen Baisstrom fließen lässt (also eine positive Spannung >> anlegst. Bzw. ein logisches HIGH), dann leuchtet die LED, weil dann der >> Transistor durchsteuert. > > Ohne ULN würden die LEDs bei Low leuchten! Der Vorschlag von Karl Heinz > ist die sinnvollste Lösung - einfach die Matrix
-
Thread
Beispiel - Portansteuerung PIC16f877A
Anmerkung: TRISD ist eigentlich auch high. Hab nur zwischendurch was ausprobiert - deshalb ist er hier auf low...
{ // UP LED0 TRISD=0b.0000.0000; // all outputs PORTD=0b.1111.1111; // all high } franz
-
Thread
SPI Verständnisproblem
eigentlich an den ChipSelect bzw. SlaveSelect Pin gedacht? Der muß vom Master vor dem Datentransfer auf low gesetzt werden und danach wieder auf high. Solange der Pin auf high liegt wird der SPI im Slave nichts empfangen. Gruß Dirk
die Übertragung zu Ende ist! Also einen Pin vom Master auf den SS Pin am Slave! Dieser ist immer high! Wenn du eine Übertragung startest dann legst du denn Pin vorher auf low, dann schreibst du in dein SPDR Register, daraufhin startet der AVR bei Hardware-SPI automatisch die Übertragung. Danach einfach
-
Thread
ESP8266 12e Reset beim nach dem Starten
mode:(1,2) wdt reset Meine Pins sind wiefolgt angeschlossen: VCC -> VCC GND -> GND IO15 -> LOW IO00 -> LOW EN -> HIGH Da das Flashen und ausführen des Blink Sketches tadellos funktioniert, liegt es an meinem Code. Dieser hatte aber bereits einmal auf einem anderen ESP (gleiches Modell) funktioniert
Johannes B. schrieb im Beitrag #5233153: > VCC -> VCC > GND -> GND > IO15 -> LOW > IO00 -> LOW > EN -> HIGH Nach dem Programmieren muss IO0 -> HIGH, beachtet?
-
Thread
Ablegen einer Kurve auf Mikrocontrollern
Vlad Tepesch schrieb im Beitrag #3175517: > sonst kann dein Mega nur Low oder High ausgeben. Und wo ist da das Problem? Bisher stand in den Anforderungen nirgends, daß er Analogwerte ausgeben möchte, im Gegenteil. Dies wurde sogar ausgeschlossen. Die hinterlegte Kurve
Arc Net schrieb im Beitrag #3177590: > Die drei/vier Teile des Signals: > - Low/Grundlinie > - Anstieg/Abfall > - High Kann man so zerteilen, ja. Ist dann hilfreich, wenn der Flash-Speicher knapp wird. Ich vermute aber eher nicht, dass das passieren wird. > Alle sind mit
-
Thread
Pin vom Mikrocontroller in Funktion mit variablen initialisieren
hin. Letztlich ; wird auf das Register immer in MMIO-Manier zugegriffen. set_ddr: subi ZL,Low($40) sbci ZH,high($40) brcs set_ddr_io subi ZL,Low(-$40) sbci ZH,high(-$40) st Z,Rxx ret set_ddr_io: subi ZL,Low(-$60) sbci ZH,high(-$60) st Z,Rxx ret Aufrufen tut man den Salat dann so: ldi Rxx,WasAuchImmer ldi ZL,Low(DDRA) ldi ZH,High(DDRA) rcall set_ddr sind dann natürlich etliche Takte mehr Rechenzeitverbrauch und auch etliche Befehlsworte mehr im Flashspace, aber am Ende hat man exakt das gleiche Ergebnis
-
Thread
Präprozess Makro >>> Fehler: undeclared
Kirsch schrieb im Beitrag #4421156: > Einfach so: > #define LED_LOW() (CLR_BIT(PORTB,PB1)) Funktioniert leider auch nicht! A. K. schrieb im Beitrag #4421158: > Was soll das darstellen? Vereinfachung der Abfolge LED/high aus, LED/mid aus, LED/low ein Alternative
du schreibst: while(1) { mit_wert = ADC_Read_Avg(3,64); if (mit_wert > OBER_BEREICH) { LED_HIGH; } if (mit_wert < UNTER_BEREICH) { LED_LOW; } else { LED_MID; } } Nach meinm Verständnis, wird "mit_wert" in einer Dauerschleife ausgewertet und danach den 3 Bedingungen zu geordnet. Was soll
-
Thread
WS2812 LED-Pixel immer weiss (Timing Problem)
. Für 0-Bits schalte ich den Ausgang ein und direkt wieder aus. Laut anderen Quellen spielt die Low-Dauer so gut wie keine Rolle. Für ein 1 füge ich zwischen ein- und ausschalten 2 NOP() Aufrufe ein. Beispiel: Low-Bit: Pin = 1; Pin = 0; High-Bit: Pin = 1; NOP(); NOP(); Pin = 0;
Kurt Immer schrieb im Beitrag #5215902: > Beispiel: > Low-Bit: > Pin = 1; > Pin = 0; > > High-Bit: > Pin = 1; > NOP(); > NOP(); > Pin = 0; So wird das nichts. Siehst du ja selbst. High: Out = 1 Long Delay Out = 0 Short Delay Low: Out
-
Thread
PIC ASM: obere Adressbytes in Code verwenden
beibringen, dass er das mittlere bzw. oberste Byte der 21bit-Flashadresse nehmen soll? Ich habe die low, high und upper-Operatoren in der Hilfe gefunden, aber diese funktionieren wohl nur in Relocatable Code.
Hast du es mal mit movlw HIGH sprungmarke movlw LOW sprungmarke movlw UPPER sprungmarke versucht. Zumindest funktionieren beim PIC16 HIGH und LOW.
-
Thread
auswertung einer reflexlichtschranke mit einem avr
Spannungen nimmt denn der Output an? Miß doch mal.. Vielleicht reicht es ja, damit der Controller high und low erkennt?
aussieht, auch was das fuers timing bedeutet kann ich mir nicht ausmalen. Ich kann Portregister high und low schalten, ich kann erkennen ob ein input pin high oder low ist und das ganze dann ueber der USART des avr ausgeben. ich kann ein wenig loeten und simple schaltungen nachbauen, weshalb ich
-
Thread
16 Kanal Encoder/Decoder
ein logic High oder Low ausgeben welches dann in einen Mikrocontroller eingespeist und ausgewertet wird. Quasi wie die HT12E und HT12D nur mit 16Ch/16 Data PINs
serielles Signal oder die Nummer des Eingangs (ein 4-Bit Wert), der - du musst dich entscheiden - low bzw. high geworden ist.
-
Thread
einfache Motorsteuerung Atmega und C
; //D0 high //warten bis Taster vom K?ltebad durch Motor gedr?ckt wurde while(!(PINC & (1<<PINC2))) //C2 low -> warten auf high {}
(1<<PINC0))) //C1 high && C0 low { //=> Motor Richtung W?rmebad fahren. PORTD |= (1<<PIND1); //D1 high } //
-
Thread
ESP8266, keine Verbindung herstellbar
GPIO0, Pull up an CH_PD und RSR# kurz auf low und die Firmware wird vom Flash in den Chip geladen und gestartet. Alternativ CH_PD statt RST# kurz auf low. Oder: Pull Down auf GPIO15, Pull up auf GPIO 2 *aber GPIO0 auf low*, Pull up an CH_PD
gekriegt. Es waren immer die Zustände der Pins falsch. Gerade gestern, falsch die Pins gezählt, GPIO15 high statt low, nix
-
Thread
Programmierstil so für Mikrocontroller OK? [C]
define OFF 0 void LampeSwitch(volatile uint8_t *port,volatile uint8_t *ddr, uint8_t pin, uint8_t lowOrHighActive, uint8_t OnOff); #endif /* LAMPE_H_ */ [/c] Lampe.c: [c] #include "Lampe.h" void LampeSwitch(volatile uint8_t *port,volatile uint8_t *ddr, uint8_t pin, uint8_t lowOrHighActive, uint8_t OnOff){ *ddr |= (1<<pin); if ((OnOff && lowOrHighActive) || (!OnOff && !lowOrHighActive)) { *port |= (1<<pin); } else { *port &= ~(1<<pin); } }; [/c] TimerTrigger.h: [c] #ifndef TIMERTRIGGER_H_ #define
-
Thread
STM32F103: Problem mit ChanFat und SD karte
Erstinitialisierung ist, letztere hat eine verdammt lange 0xFF Sequenz Host->Card am Anfang - allerdings mit CS=HIGH - was hier schenbar der Fall ist. Bei CS=LOW muss danach eigentlich am Anfang ein Kommando Byte kommen, das fängt mit einem Low Bit gefolgt von einem High Bit an (0x40). Das sehe ich hier nicht.
Da stimmt was nicht..... [c] SPI_8Bit(); FCLK_SLOW(); CS_LOW(); xchg_spi(0x11); xchg_spi(0x22); xchg_spi(0x33); xchg_spi(0x44); CS_HIGH(); CS_HIGH(); [/c] ergibt
-
Thread
Servo Zittert bei 180 grad
vala = digitalRead(BUTTON1); // liest den Input aus und cheked ob er gedrückt ist. if ((vala == LOW) && (old_vala == HIGH)) { statea = 1 - statea; delay(50); } valb = digitalRead(BUTTON2); // liest den Input aus und cheked ob er gedrückt ist. if ((valb == LOW) && (old_valb
Etwa so: [c] void setup() { pinMode(9,OUTPUT); } void loop() { digitalWrite(9,HIGH); delayMicroseconds(1800); // 1500 wäre die Mitte digitalWrite(9,LOW); delay(18); } [/c]
-
Thread
SPI Slave antwortet unregelmäßig
->DATA |= 0x01;//MOSI = 1 } else {LPC_GPIO2->DATA &=~0x01;//MOSI = 0 } high;//SCKL High b = LPC_GPIO2->DATA &0x04;//Liest Zustand des MISO Pins aus if(b)//Speichert Bit in Datenstring ab {data |=(1<<i);} low;//SCKL low } LPC_GPIO2
MC33972 gängige Praxis? Und wo sind "low" und "high" definiert?
-
Thread
Pause in AVR-Studio mit variable?
wl ;Variablen beschaffen push wh ldi wl,low(clock/200/25) ;Startwert setzen ldi wh,high(clock/200/25) ;(AVR-Takt/200Hz/25 Takte je Runde) rjmp wait1 ;weiter... wait10ms: ;wartet etwa 10 Millisekunden push wl ;Variablen beschaffen push wh ldi wl,low(clock/100/25) ;Startwert setzen ldi wh,high(clock/100/25) ;(AVR-Takt/100Hz/25 Takte je Runde) wait1: rcall waitend ;7 Takte trödeln rcall waitend ;7 Takte trödeln
-
Thread
Funktionsaufrufe mit Konstanten...
Das heisst Du musst auf output_high/low verzichten, und irgendwie anders an die Ports ran. Das geht m.E. sogar bei PICs, wenngleich indirekte Adressierung wirklich nicht zu deren Stärken zählt.
ansprechen. Dann wird's PORTB |= 1<<blinker; // statt output_high PORTB &= ~(1<<blinker)); // statt output_low Richtig schwierig wird es erst bei Bit von verschiedenen Ports.
-
Thread
AD5292 mit SPI des ATmega32 ansteuern
Wait } } int main(void) { SPI_INIT(); PORTB = PORTB & 0b11101111; // SS low SPI_DATA (0b00011000); // Command #6 SPI_DATA (0b00000011); SPI_DATA (0b00000110); // Command #1 SPI_DATA (0b00000000); PORTB = PORTB | 0b00010000; // SS high
); data_buf = 0x03; spi_transmit_sync(data_buf); // SS high PORTB = 0b00001000; // SS high PORTB = 0b00001000; // SS low --> falling edge PORTB = 0b00000000; // Command #1 --> wiper moves to 1/4 full-scale position data_buf = 0x50;
-
Thread
Attiny13 SoftSPI Slave
nach schieben wiederherstellen (Anwendungsspezifisch) } ISR(PCINT0_vect) { /*Wenn SS auf Low gezogen wird INT0 aktivieren, wenn SS auf HIGH gezogen wird INT0 deaktivieren und SPI() ausführen*/ if(PINB & (1 << SS)) { /*Wenn SS == HIGH --> SPI()*/ GIMSK &= ~(1 << INT0);
wiederherstellen (Anwendungsspezifisch) PORTB |= (1 << PB0); } ISR(PCINT0_vect) { /*Wenn SS auf Low gezogen wird INT0 aktivieren, wenn SS auf HIGH gezogen wird INT0 deaktivieren und SPI() ausführen*/ if(PINB & (1 << SS)) { /*Wenn SS == HIGH --> SPI()*/ GIMSK &= ~(1 << INT0);
-
Thread
Mosfets im Port
lag ich doch richtig. Für einen 80515, der teils eine ähnliche Portstruktur hat, fand ich bei High-Pegel einen Strom von maximal 10µA (müßte eigentlich 0 sein), bei Low kann er bis 300µA steigen.
Datenblatt fand ich jetzt auf die Schnelle nicht. Also, dann paßt es ja: 10µA bei 90% VCC, 80µA bei TTL High, 300µA bei Low.
-
Thread
Jitter bei optischem Encoder
ISC11)+(1<<ISC01) ;ExtInt setzen, je nach Encoderstand sbrs ENOLD,Pint1 ;prüfen auf ExtInt 1 high sbr TEMP1,1<<ISC10 ;wenn low, Trigger 1 auf rising Edge sbrs ENOLD,Pint0 ;prüfen auf ExtInt 0 high sbr TEMP1,1<<ISC00 ;wenn low, Trigger 0 auf rising Edge out MCUCR,TEMP1
ldi TEMP1,(1<<ISC11)+(1<<ISC01) ;ExtInt setzen sbrs ENNEW,Pint1 ;prüfen auf ExtInt 1 high sbr TEMP1,1<<ISC10 ;wenn low, Trigger 1 auf rising Edge sbrs ENNEW,Pint0 ;prüfen auf ExtInt 0 high sbr TEMP1,1<<ISC00 ;wenn low, Trigger 0 auf rising Edge out MCUCR,TEMP1
-
Thread
AVR Controller braucht zu viel Strom
im Bereich um VCC/2 bewegen, ein Zustand der sich bei offenem Pin gern einstellt. Zieh den Pin auf high oder low, und der Querstrom ist weg.
@ A. K. (prx) >geringen Gate-Leckströme gern einstellt. Zieh den Pin auf high oder low, >und der Querstrom ist weg. Sicher, das war aber gar nicht der Punkt. Es ging um die Aussage, dass ein interner Pull-Up angeblich schlechter ist als ein externer. Dem ist nicht so.
-
Thread
uC-I/O-Eingang >>> Spannungsregelung
Achim S. schrieb im Beitrag #5115753: > Lege die Spannungspegel high und Low fest Ist doch... Low = 0V und High = 8-20V. So wie ich das verstanden haben.
DraconiX schrieb im Beitrag #5115773: > Achim S. schrieb: >> Lege die Spannungspegel high und Low fest > > Ist doch... Low = 0V und High = 8-20V. So wie ich das verstanden haben. Naja, für eine "echte" Auslegung braucht man 2 Werte: a) die maximale Spannung, die sicher als 0 erkannt
-
Thread
70 Taster an Atmega
Na ja, so wie's da auf dem plan gezeichnet ist, klappts wohl nicht. Wenn an PB2 high is und dann an PB0 high liegt weis man ja nicht ob S11 oder S13 gedrückt ist. Nehme mal an Du hast es eh so gemeint wie's ich da nochmal (freihändig in paint!) hingebastelt hab. ;) Alle spalten der reihe nach auf High, und immer dann wenn eine spalte high ist, bei der zeile guckn ob high anliegt. ist denke ich (so wieviele andere vorposter auch) die einfachste variante. mik