-
Thread
PIC Entwicklungsboard Eigenbau
Bisher brauchte ich für jedes Projekt einen anderen PIC. Der eine hat kein USB, der andere kein I2C, der dritte kein EEPROM, der vierte kann bei 3,3Volt nur 1MHz.... Früher hatten die PICs einheitliche PIN-Belegung. Man brauchte nur eine Platine mit 3 Fassungen. Geht heute auch nicht mehr.
habe ich mir vor Jahren auf einer Lochraster Europaplatine mit einem 16F877 zusammen gelötet. Alle Ports auf 10 Pin Pfostenstecker (also mit 5V und GND). Hab das Teil dann bald in die Ecke gepfeffert da ich hier die AVR kennengelernt habe (billige Flash µC mit kostenlosem C-Compiler – das war neu). Das
-
Thread
LCD weigert sich seine Pflicht zu tun
Also gut, da will ich mal sehen: Pin 1 an Masse Pin 2 an +5V Pin 3 an den Schleifer eines 10K-Potentiometers eine Seite des Potis an Masse die andere an +5V (zur Kontrasteinstellung) Pin 4 an PortD.2 Pin 5 an PortD.1 Pin 6 an PortD.3 Pin 7 bis 11 freilassen Pin 12 an PortD.4 Pin 13 an PortD.5 Pin 14 an PortD.6 Pin 15 an PortD.7 Da dieses Display 2 Controller hat, hat es auch 2 Enable-Eingänge (E1 und E2) Im Moment ist jetzt
-
Thread
Atmega8A: loop über Ports/Pins funktioniert nicht
Mal eben" ist jetzt zwei Tage her und ich bin ausreichend frustriert, um hier nachzufragen: m8a_Pin-Test.c funktioniert, m8a_Pin-Test2.c funktioniert nicht. Warum? Hintergrund: Ich hatte die Idee einen Array für die Port-Pins anzulegen und in der Timer-ISR über die einzelnen Pins zu gehen und
_BV(PB0) }, ... [/c] und dann in der ISR: [c] const PinDesc *pin = &testPins[currentPin]; ... *(pin->ddr) |= pin->mask; // DDRx = 1 → output *(pin->port) &= ~pin->mask; // PORTx = 0 → drive
-
Thread
AVR Project – Relay Timer with ATmega8 AVR MCU
Ja die Ports und Pins stimmen soweit, nur bei [c] #define LS_BLINK 0B00000001 #define LS_ULINE 0B00000010 [/c] bin ich mir unsicher.
() LCDCmd(0b00000010); //geändert aud 0b00000000 [/c] ohne Erfolg. LCD.c [c] ... //Now the LCD is in 4-bit mode LCDCmd(0b00001100|style); //geändert auf ohne |style LCDCmd(0b00101000); //function set 4-bit,2 line 5x7 dot format
-
Thread
PIC 18 mit 3V auf 5V and MOSFET
Moin zusammen, ich versuche mit einem PIC18F25J10 (Ausgang PortC.4) eine MOSFET zu schalten. Da der MOSFET (IRFBE30) erst bei 5 Volt voll durchsteuert, habe einen Pull-Up-Wiederstand zwischen µC-Ausgang und FET an +5V auf dem Board gelegt (s.h. Anhang). Laut Datenblatt
Made Mueller schrieb im Beitrag #2092268: > Kann mir jemand erklären, was hier passiert? Der Port ist offenbar nicht 5V-kompatibel. Der Strom fliesst durch die Schutzdiode ab. Miss mal nach, was bei dem 1K-Widerstand am Controller als Vcc anliegt, mit etwas "Glück" sind das dann 3,5V, d.h. der Controller
-
Thread
LM75 funktioniert nicht
/ Port C initialization // Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In // State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In // State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T PORTD=0x00; DDRD=0x00; /
-
Thread
IR Empfänger mit Attiny85/45 funktioniert nie
Compiler sagen, was IN, was OUT sein soll, obwohl es mich wundert, woher der Compiler wissen soll, ob PortA, PortB, oder PortC gemeint sind. >> pinMode(4,OUTPUT); Relais??? >> pinMode(2,INPUT); IR-Receiver??? aber weiß das damit auch deine IR-Library?? >> case 0xFFA25D: digitalWrite(4,HIGH
denn der hat nur Port B0 bis PortB4 (PortB5 ist der Reset pin und ein Sonderfall. Stell das mal auf die richtigen Sachen um - also z.B. auf IRMP_BIT_NUMBER 4.
-
Thread
LCD Display zeigt nur 2 Striche stats Text (Atmega8)
Data, MSB 15 - - frei (siehe EA DIP122-5N) 16 - - frei (siehe EA DIP122-5N) 17 A - LED-Bel. + (RV erford.) 18 C - LED-Bel. - Verlötet. D4/D0 an Portd.0 D5/D1 an Portd.1 D6/D2 an Portd.2 D7/D3 an Portd.3 D8/D4 an Portd.4 E an Portd
(z.B. PORTD.2) LCD-Pin 5 (R/W) --> GND LCD-Pin 6 (E) --> an einen Pin des ATmega8 (z.B. PORTD.3) LCD-Pin 7 (D0) --> im 4-Bit Modus nach GND schalten LCD-Pin 8 (D1) --> im 4-Bit
-
Thread
"Überspannung" an PIC-Eingängen
Erfolg einen NPN-Transistor als Emitterfolger geschaltet verwendet. Den KolleKtor habe ich mit der 5 (oder 3,3) V Versorgung des Prozessors verbunden. Den Emitter an den Port führen und den Arbeitswiderstand nach GND legen. (Damit wird das LOW-Potential um die 0,5 V der Basis-Emitterstrecke niedriger
Damit wird sichergestellt, daß die Eingangsspannung am Pin RA2 nicht über die PIC-Versorgungsspannung 5,5V liegt. Deren Erhöhung wie bei einer Klemmdiode wird ebenfalls nicht erfolgen. Eine inverse Schottky vom Eingangspin RA2 nach Masse ist nicht erforderlich
-
Thread
Programmierbare Relaiskarte - Konfigurationsdaten Lesen/Speichern/Übertragen
OUT_PORT PORTC #define OUT_DDR DDRC #define OUT_1 PC0 #define OUT_2 PC1 #define OUT_3 PC2 #define OUT_4 PC3 #define OUT_5 PC4 #define OUT_6 PC5[/c] Zum testen habe
1) | (1 << OUT_2) | (1 << OUT_3) | (1 << OUT_4) | (1 << OUT_5) | (1 << OUT_6)); OUT_PORT |= ((1 << OUT_1) | (1 << OUT_2) | (1 << OUT_3) | (1 << OUT_4) | (1 << OUT_5) | (1 << OUT_6)); _delay_ms(1500); OUT_PORT
-
Thread
Welche ARM Modelle eignen sich für Anfänger?
breadboard taugliche, Evalboards mit Debugger (!), letzterer auch für beliebige andere LPC Arm uC verwendbar 2. Mit dem LPC1114FN28 und dem Lpc800 gibt es zwei DIP ICs 3. Es gibt zum LPCXPRESSO eine sehr gute, kostenlose (auf 512 Kb Binary beschränkt) und sofort funktionsfähige IDE auf Basis von
// PG 13 (green LED), PG 14 (red LED) PIN 128, 129 STM32F429ZIT6 GPIOG_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; // Port_G speed (2, 25, 50, 100 MHz) GPIOG_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
-
Thread
ATMega 8 über Arduino Software programmieren, technische Probleme
eine Fehlkonstruktion. Laut Datenblatt aller AVR darf die Spannung an sämtlichen I/O Pins nicht höher sein, als die Versorgungsspannung. 3,3V Versorgung und 5V Signale passen daher nicht zusammen.
Unterschied zwischen 3.3 und 5 V verursacht hat.
-
Thread
TFT_ILI9163C mit Arduino richtig verbinden
anschließen? Bei A0 steht: [c] DC or RS pin (3v3 level!) [/c] Also wäre da z.B. der Pin PC0 möglich? SCK müsste dann demnach an Pin PB5 angeschlossen werden? Könnt ihr da etwas Licht ins Dunkel bringen?
das Display zum laufen zu kriegen. Die Verbindungen sehen wie folgt aus: LCD / Board SCK / PB5 [SCK] SDA / PB3 [MOSI] A0 / PC0 RST / 3.3V (PD2) CS / PB2 [SS] Vcc / 3.3V RST hab ich an PD2 da mein Arduino nur einen 3.3V Ausgang hat. Programm sieht wie folgt aus: [c] void SPI_init(){
-
Thread
Atmega 328 Timer 2: Hilfe für Frequenzerzeugung
. [c] /* Startet oder stoppt den Timer 2 */ void Timer2Enable(bool stat) { /* OC2B Pin = INT 1 Pin (PD 3) OC2A Pin = MOSI Pin (PB 3) */ cli(); if (stat) { OCR2A = 50;
Christian J. schrieb im Beitrag #5783578: > Ja, es funzt,. mit 20.3 khz :-) Mein Fehler, für 40KHz am OC2A muss der Pin alle 12,5us toggeln, nicht alle 25us. Demzufolge muss OCR2A 99 und nicht 199 sein.
-
Thread
SSD1306/1309 Library zum Darstellen von Text auf OLED Displays
) PC3 // ----------------- I2C ----------------- // A4 (ADC4/SDAglb) PC4 #define PIN_SDA 4 //PC4 -> A4 // A5 (ADC5/SCLgrn) PC5 #define PIN_SCL 5 //PC5 -> A5 // D12 #elif
> Theoretisch müsste es aber auch mit deinem AVR funktionieren. Es funktioniert auch, auf den Pins D4 und D5. Also ist es eine SoftI2C-OLED-Lib
-
Thread
MachXO2 - Ausgang schwingt
Pinkonfiguration verschiedene Modis einstelle, z.B. Pullup/-down eingestellt. Das Bild ist mit LVCMOS33 auf Pin D1 "PL3B/PCLKC3_2" aufgenommen. Oszi ist ein HP54615B und Tastkopf PML711A (500MHz) von PMK. Ich kann andere Signale ohne Probleme messen, an diesen Teilen liegt es also nicht. Was muß ich tun
. Zuvor waren da 2.5V eingestellt, und da gibt es dann in den Port Assignments eine Möglichkeit für Slew Rate, die es bei 3.3V nicht mehr gibt. Fühl mich aber mit der 3.3V-Einstellung irgendwie wohler... Übrigens ändert
-
Thread
STM32F1 Brushless Motor Steuerung
(HALL_GPIO_CLK | RCC_APB2Periph_AFIO, ENABLE); GPIO_InitStructure.GPIO_Pin = H1_GPIO_PIN | H2_GPIO_PIN | H3_GPIO_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(HALL_GPIO_PORT, &GPIO_InitStructure); /* Setup Hall Interrupt */ /* Connect EXTI0 Line to Hall1 GPIO Pin */ GPIO_EXTILineConfig(HALL_EXTI_PORT_SOURCE, HALL1_EXTI_PIN_SOURCE); GPIO_EXTILineConfig(HALL_EXTI_PORT_SOURCE, HALL2_EXTI_PIN_SOURCE); GPIO_EXTILineConfig(HALL_EXTI_PORT_SOURCE, HALL3_EXTI_PIN_SOURCE
-
Thread
STM32 und usart1/2 Initialisierung
* RCC_APB1Periph_USART2, RCC_APB1Periph_USART3, RCC_APB1Periph_USART4, * RCC_APB1Periph_USART5, RCC_APB1Periph_I2C1, RCC_APB1Periph_I2C2, * RCC_APB1Periph_USB, RCC_APB1Periph_CAN1, RCC_APB1Periph_BKP
= GPIO_Pin_5; GPIO_Init(GPIOD, &GPIO_InitStructure); /* Remap USART, as USART2 is used as alternate pins on PD5/6*/ GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE); // USART initialize USART_ClockStructInit
-
Thread
AVR ATmega8TestBoard
programmieren? die ISP Stecker (10-polige Stecker) hat folgende Belegung: Beschreibung Pin Pin Beschreibung MOSI 1 2 VREF 3 4 GND RST 5 6 GND SCK 7 8 GND MISO 9 10 GND MISO MOSI und
das Problem sein?? zweite: egal was ich auf dem Controller lade (auf dem Atmega8) sind auf dem Pin 10 (PB7 XTAL2/TOSC2) immer 5V. bzw wenn ich von der Pin auf ein Pin von ULN2803A gehe oder direkt auf ein Pin von JP3 (BarGraf Anzeige) drauf setze leuchtet ein LED von BarGraf !! habe zum Beispeiel
-
Thread
Dynamische PIN Zuordnung
PIN Zuordnung würde ich softwareseitig (z.B per I2C) ansteuern wollen. Beispiel: Stecker Pin1 -> Anwendung A PB2 ; Anwendung B PB3 Stecker Pin2 -> Anwendung A PB3 ; Anwendung B PB4 Stecker Pin3 ->
Arrays". Du packst Deine Anschlusspins in ein Array und greifst je nach Anwendung drauf zu: [c] byte AnwendungA_Pins[]={PB2, PB3, PB4, PB5}; byte AnwendungB_Pins[]={PB3, PB4, PB5, PB6}; byte* Anwendungspin=AnwendungA_Pins; // oder Anwendungspin=AnwendungB_Pins; [/c] Zugreifen auf die Pins
-
Thread
STM32-407 DIY-MORE Doku?
BOOT1 ist offen. +5V kommen vom ST-LINK USB Modul und liefern die Versorgung für das Board. +3,3V liegen am Pin des ST-LINK USB Modules als Quelle an.
Erfolgsmeldung! [c] $ arm-none-eabi-gdb GNU gdb (GNU Tools for Arm Embedded Processors 8-2018-q4-major) 8.2.50.20181213-git Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later
-
Thread
EA DOGL 128x64 will nicht
DDB7 #define DD_LGHT DDD2 #define DD_A0 DDD3 #define DD_RST DDD5 #define DD_CS DDD6 #define P_MOSI PB5 #define P_SCK PB7 #define P_LGHT PD2 #define P_A0 PD3 #define P_RST PD5
parallel oder seriell, ich habe gewählt seriell. Programmierumgebung: BASCOM version 2.0.7.5 Anschlüsse: CS1=PORTB.2, A0=PORTB.4, Si=PORTB.1, Sclk=PORTB.0, Rst=PORTB.3 Baudrate: 19200 Libs: glcdeadogm128x6.lbx, glcd.lbx, glcdsed.lbx Initialisierung: $40, $B0, $10, $A1, $C8, §A6, $2F
-
Thread
Linux und (immer noch) C
Helloworld“ im Embedded-Bereich ist nun mal die blinkende LED. Für einen AVR könnte der Code in C ungefähr so aussehen: [c] #include <avr/io.h> #define F_CPU 1E6 #include <util/delay.h> #define LED1 B, 7 #define CONCAT(x, y) x ## y #define LEDINIT_(port, pin) CONCAT(DDR, port) |= (1 << (pin)) #define LEDINIT(led) LEDINIT_(led) #define LEDSET_(port, pin) CONCAT(PORT, port) |= (1 << (pin)) #define LEDSET(led) LEDSET_(led) #define LEDCLR_(port, pin) CONCAT(PORT, port) &= ~(1 << (pin))
-
Thread
A/D Beim Atmega16
Datenleitungen 1-1 gepolt so kann die Widerstand Messung beginnen, der Sender Brückt intern die Adern 1-2 , 3-4 , 5-6 , 7-8 und im Empfänger werden die Wechselkontakte vom Relai K10 Betätigt. Die Port's PC1, PC3, PC5, PC7 werden auf Masse geschaltet und mit Hilfe von K1 , K2 , K3 , K4 kann der Empfänger
Testprogramm 1: Schaltet die Relais einzeln durch alle 100ms (ohne Probleme) Testprogramm 2: Schaltet alle Relais gleichzeit (ohne Probleme) Testprogramm 3: Setz alle pins vom PORTB auf 0V (ohne Probleme) Testprogramm 4: Setz alle pins vom PORTB auf 5V (ohne Probleme) aber
-
Thread
C8051F020 P1 als Ein- und Ausgang
Also... alles an P1 ist GPIO... (wobei man die LED drehen sollte...) P0.0 und P0.1 ist Eingang P0.2 bis P0.5 ist Ausgang P0.6 und P0.7 setzen wir mal als Ausgang... lt. AN101 The Crossbar MUST be enabled in order to use any Port 0, Port 1, or Port 2 port pins as outputs. The output mode
P0: P0MDOUT = 0xD0; weil: P0.0,P0.2,P0.3 als Ausgang. P0.1 als Eingang. P1: P1MDOUT = 0x3C; OpenDrain ist = 0, PushPull = 1 Die LED zu drehen bringt wohl nur was wenn man sie auch gegen VCC schaltet. Mit AN101 meint er
-
Thread
Arduino Genuino 101 - Erfahrungen?
hier mal den Kern der Loop-Schleife rein. Darin ist alles enthalten, was Problem machen kann: [c] void loop() { if (zaehler_sensoren==0) { if (digitalRead(pin_sensor1)==LOW) sensordurchgang1=millis(); if (digitalRead(pin_sensor2)==LOW) sensordurchgang2=millis
() { latest_interrupted_pin=PCintPort::arduinoPin; durchgang_steuerbord = micros(); } [/c] Gruß Xenophon
-
Thread
Interrupt springt nicht in die Serviceroutine MKL26z128
(GPIO) LED blau PORTC->PCR[3]|=PORT_PCR_MUX(1); //Pin PTC 3 auf ALT01(GPIO) taster ///////////AUSGÄNGE SETZEN//////////////// PTD->PDDR|=(1<<5); //Pin PTD 05 auf Ausgang PTE->PDDR|=(1<<29); //Pin PTA 29 auf Ausgang PTE->PDDR|=(1<<31); //Pin PTA 31 auf Ausgang /////Taster und Interrupt//// PORTC->PCR[3]= (PORT_PCR_MUX(1) |PORT_PCR_PE_MASK |PORT_PCR_IRQC(5)); NVIC_EnableIRQ(PORTC_PORTD_IRQn);
-
Thread
R2R Netzwerk Problem
) #define S2STATUS (PINC & (1<<PC1)) // PortB Bit3 lesen (high-aktiv) #define S3INIT (DDRC &=~(1<<PC2)) // DDRB Bit2 löschen (als Eingang konfigurieren) #define S3STATUS (PINC & (1<<PC2)) // PortB Bit2 lesen (high-aktiv) #define S4INIT (DDRC &=~(1<<PC3)) // DDRB Bit3 löschen (als Eingang konfigurieren) #define S4STATUS (PINC & (1<<PC3)) // PortB Bit3 lesen (high-aktiv) #define S5INIT
-
Thread
RFM 01 empfängt nicht
{ sbi(RF_PORT, SCK); asm("nop"); cbi(RF_PORT, SCK); } c=0; for (j=0; j<8; j++) { c<<=1; if (RF_PIN&(1<<SDO)) c|=1; sbi(RF_PORT, SCK); _delay_us(0.2
#define LED1_TRG() PORT_LED^=(1<<4) unsigned char RF_RXBUF[3]; [/c]
-
Thread
Probleme mit stm32f4 Discovery
Und weiter geht die fragerei ;-) 1.)Wie kommt es, dass ich an den Ausgängen knapp 3V messe? Da müssten doch eigentlich 5V oder zumindest 3.3V rauskommen? 2.) Wieso schaltet folgende Zeile den Ausgang nicht auf HIGH? GPIOD -> BSRRL = GPIO_Pin_0;
-> IDR & 0x0001){ GPIOC -> BSRRL = GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3; } else{ GPIOC -> BSRRH = GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3; } return 0; } } void init_app(void){ RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA
-
Thread
Wieder mal Tastenabfrage geht das auch so?
> Da kann man alle Tastenvariablen auf uint16_t aufbohren und beide Ports > zu einem 16Bit-Wert kombinieren. > > Oder sparsamer, die entsprechenden Bits mit AND/OR/SHIFT auf einen > 8Bit-Wert kombinieren. > 4 Pins von einen Port und einer vom anderen, da ist der
die Drehgeschwindigkeit möglich sind. http://www.mikrocontroller.net/articles/Drehgeber#Solide_L.C3.B6sung:_Beispielcode_in_C Peter
-
Thread
Serielle Schnittstelle µC
(void); void DelayPORXLCD(void); void DelayXLCD(void); void LED1(void); void LED2(void); void LED3(void); void LED4(void); void LED5(void); . . . void LED25(void); void Muster1(void); void Muster2(void); void Muster3(void); void Muster4(void); void Muster5(void); void
=1; PORTBbits.RB2=1; PORTBbits.RB3=1; PORTBbits.RB4=1; PORTCbits.RC0=1; PORTCbits.RC1=1; PORTCbits.RC2=1; PORTD=0xFF; PORTE=0xFF; } void main() { init(); TRISA = 0x00; TRISBbits.TRISB0=0;
-
Thread
Atmega8 - Pin Nummer dynamisch?
78: 08 95 ret case 1: PORTB |= (1<<1); 7a: 29 9a sbi 0x05, 1 ; 5 break; 7c: 08 95 ret case 2: PORTB |= (1<<2); 7e: 2a 9a sbi 0x05, 2 ; 5 break; 80: 08 95 ret case 3: PORTB |= (1<<3); 82: 2b 9a sbi 0x05, 3 ; 5 break; 84: 08 95 ret case 4: PORTB |= (1<<4); 86: 2c 9a sbi 0x05, 4 ; 5 break; 88: 08 95 ret case 5: PORTB |= (1<<5); 8a:
-
Thread
PS/2 Keyboard
Dein Problem "könnte" hier liegen: [c] if(kbd_bit_n > 0 && kbd_bit_n < 10) // Ignore start, parity & stop bit { if(!bit_is_clear(KBD_DATA_PIN, KBD_DATA_BIT)) kbd_buffer |= (1 << (kbd_bit_n - 2)); } else if(kbd_bit_n
{ kbd_queue_scancode(kbd_buffer); kbd_buffer = 0; kbd_bit_n = 0; } [/c] Die "Nutzdaten" sind in Bit 3 bis Bit 10?! Wenn ihr aber wirklich die Parity, Start und Stop Bits ignorieren wollt, dann müsste es heißen: [c] if(kbd_bit_n > 1 && kbd_bit_n < 10) [/c]
-
Thread
Infineon XC888: Daten einlesen mit PORT
Nein, habe kein DS1820 dran, aber IO-Ports gehen. Bei mir funktioniert folgender Code: [c] void main(void) { // USER CODE BEGIN (MAIN_Main,2) ubyte ubTest; // USER CODE END MAIN_vInit(); // USER CODE BEGIN (MAIN_Main
Also ohne DS1820 und ohne 4,7Kohm Widerstand verhält sich der Port folgendermaßen: Wenn ich den Pin0 von Port4 mit P4_DIR = 0x00 auf Eingang stelle, dann steht für kurze Zeit am Pin0 eine 1^also +5V. Nach drei vier Sekunden geht der Zustand dann auf Null zurück
-
Thread
Schaltplancheck erbeten - ATtiny & MAX485
(R3...R5) wird nur am Anfang und Ende bestückt. Die "Spannung Okay" LED D2 nur am Ende.
http://de.farnell.com/recom-power/rof-78e5-0-0-5smd-r/dc-dc-converter-2-5w-5v-0-5a/dp/2459240 3 Euro. -25% zu Conrad. Bei 10 Stück ist der Unterschied bald 10 Euro.
-
Thread
74HC595 wie steuert man das latch an?
also so? Daten: --1---2---3---4---5---6---7---8---1---2---3---4---5---6---7 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ SH_CP: _|1|_|2|_|3|_|4|_|5|_|6|_|7|_|8|_|1|_|2|_|3|_|4|_|5|_|6|_|7|_
Drehzahl | Aa Ab ----------+------------- 0 | 0 8 1 | 1 7 2 | 2 6 3 | 3 5 4 | 4 4 5 | 5 3 6 | 6 2 7 | 7 1 8 | 8 0 finden. Also 'Drehzahl' vorgegeben
-
Thread
Atmega Ports "durchzählen"
[code] uint8_t p; uint8_t t; uint8_t i; uint8_t *ports[3]; ports[0] = &PORTA; ports[1] = &PORTB; ports[2] = &PORTC; for (p = 0; p < 3; p +=1) { t = 1; for (i = 0; i < 8; i++){ t <<= 1; *ports[p] = t; //punkt // *ports[p] |= t; //band
K. schrieb im Beitrag #1842498: [code][code] uint8_t p; uint8_t t; uint8_t i; uint8_t *ports[3]; ports[0] = &PORTA; ports[1] = &PORTB; ports[2] = &PORTC; for (p = 0; p < 3; p +=1) { t = 1; for (i = 0; i < 8; i++){ t <<= 1; *ports[p] = t; //punkt // *ports[p]
-
Thread
Parallelport
sind das für Werte? Und meine Nächste Frage, wie Filter ich aus dem Data Register an welchem Data Pin des Sub 25 Steckers das Eingehende Signal Liegt? Pin 2 = Data0 Pin 3 = Data1 Pin 4 = Data2 Pin 5 = Data3 Pin 6 = Data4 Pin 7 = Data5 Pin 8 = Data6 Pin 9 = Data7
("Die Messung erfolgte an Pin " +pin); Neingp2->Checked=0; Neingp3->Checked=0; Neingp4->Checked=0; Neingp5->Checked=0; Neingp6->Checked=0; *****************************************************************
-
Thread
uC Selbstbau, bitte um Hilfe
http://www.reichelt.de/?;ACTION=3;LA=2;GROUP=C195;GROUPID=3258;ARTICLE=35274;START=0;SORT=artikel.artnr;OFFSET=16;SID=32xs3ddqwQASAAAEsNPzI3584ab17e4fd3bacfadd7770bca674d8 so ein Stecker solls werden
>> uC >> >http://www.reichelt.de/?;ACTION=3;LA=2;GROUP=A363;... > >Tolles Produktbild ;) Ist das ein AVR mit debug-Fenster?
-
Thread
MIDI over WIFI ( RF Bluethoot Dect USB ) Homemade Interface
-) Seite 2.. power supply 3.3V or 5V .. 3.3 V...vierter Pin von rechts ( Seite 4 ) .. Du kannst aber auch anstatt Signal Rx / Signal Tx die TTL Pegel nehmen... das Modul unterstützt alle drei!
Referenzdesign handelt, immerhin...in der Doku stehts beschrieben. > Fazit: Ich will das mit dem 2-Port FTD2232 Chip machen. > (2-Ser-Port JIG ). Nur der FTDI2232 is absolut "nicht" 5V tolerant. Um den letzten Zweifel auszuheben, hängs an 3,3 v, miss den pegel an TTL,.. ;-) > Alternativ
-
Thread
Linux LPT Port als Eingang
(port,3,1)!=0) { fprintf(stderr,"kein Zugriff. Muss als root laufen !\n"); exit(1); } int auslesewert=inb(port); ioperm(port,3,0); return auslesewert; } die Frage ist nun welche
Bit 5 heißt Bit 5, nicht 4; also 0,1,2,3,4,5; Wenn du die 1 mit << schiebst, dann mit 5 (nicht 4).
-
Thread
Schalten von 1,8V Spannungsversorgung mit 3,3V Steuerspannung
Gegenteil. Man braucht nur einen pnp-Transistor, dessen Basis über einen (1k-) Widerstand an den 3V3-GPIO-Pin geht. Emitter an die 1V8, in die Kollektorleitung dann die Last nach Masse.
#5955809: > Man braucht nur einen pnp-Transistor, dessen Basis über einen (1k-) > Widerstand an den 3V3-GPIO-Pin geht. Emitter an die 1V8, in die > Kollektorleitung dann die Last nach Masse. Hier noch ein Bildchen dazu. Die Schaltzeiten sind unter 100ns und nur 2 Bauteile.
-
Thread
C-Biroperationen
nicht PINC1 um 1 nach links verschoben, sondern 1 um PINC1 nach links: 1 << 1 = 00000010 bzw: [c] PINC0 = 0 PINC1 = 1 PINC2 = 2 PINC3 = 3 PINC4 = 4 PINC5 = 5 PINC6 = 6 PINC7 = 7 1 << PINC0 = 00000001 1 << PINC1 = 00000010 1 << PINC2 = 00000100 1 << PINC3 = 00001000 1 << PINC4 = 00010000
falschrum Interpretiert, die Maske baust du dir mit (1<<PINC1), PINC selbst besteht aus dem was an PortC anliegt. Also wenn z.B. High an Pin3 und Pin1 anliegt wäre PINC = 00001010.
-
Thread
Diskussion zum Artikel "Batteriewächter" 2. Mikrocontroller.net Artikelwettbewerb
Matthias Sch. schrieb im Beitrag #3075038: > Da du, glaube ich, alle Ports belegt hast Wenn man genau hinschaut sind 2 Pins am Programmierstecker frei: http://www.mikrocontroller.net/articles/Datei:BMON_1048_PIC.PNG Der VPP-Pin = RE3, und RB7 jedenfalls solange man
Tolles Projekt ist auf meiner TO DO Liste. Aber eine Frage habe ich zu U4 L200 ist es da richtig das PIN 2 Out ist und LIM (SEN) Pin 5.
-
Thread
Atmel ist unter "Profis" nicht gerade beliebt - Warum?
0x5a <main+0x10> for (;;) { _delay_ms(200); PORTB |= (1 << LEDBIT); /* setzt Bit 4 an PortB auf 1 */ 5e: c4 9a sbi 0x18, 4 ; 24 */ void _delay_loop_2(uint16_t __
<< LEDBIT); /* loescht Bit 4 an PortB */ 68: c4 98 cbi 0x18, 4 ; 24 6a: f5 cf rjmp .-22 ; 0x56 <main+0xc> 0000006c <_exit>: 6c: ff cf rjmp .-2 ; 0x6c <_exit> [/avrasm] Alles unter
-
Thread
Dog-M Display füllt weitere Zeile mit selbst kreierten Zeichen
** #define F_CPU 8000000UL //Clockspeed in Hz #define DDR_SPI DDRB // DD-Register des SPI-Ports #define DD_MOSI DDB3 // Port/Pin des MOSI #define DD_SCK DDB5 // Port/Pin des SCK #define DD_RS DDRB // DDR von RS #define PORT_RS PORTB // Port an dem RS ist #define PIN_RS PB1 // Pin an dem RS ist #define DD_CSB DDRB // DDR von CSB #define PORT_CSB PORTB // Port an dem CSB ist #define PIN_CSB PB0 // Pin an dem CSB ist #define VOLTAGE 5 // Voltage auf 5 oder 3 Volt
-
Thread
"Syntaxbefehl" erstellen
io.h> // Access bits like variables: struct bits { uint8_t b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1; } __attribute__((__packed__)); #define SBIT_(port,pin) ((*(volatile struct bits*)&port).b##pin) #define SBIT(x,y) SBIT_(x,y) #ifdef PORTA #define PORT_A0 SBIT( PORTA, 0 ) #define PORT_A1 SBIT( PORTA, 1 ) #define PORT_A2 SBIT( PORTA, 2 ) #define PORT_A3 SBIT( PORTA, 3 ) #define PORT_A4 SBIT( PORTA, 4 ) #define PORT_A5 SBIT( PORTA, 5 ) #define PORT_A6 SBIT
-
Thread
DCF77 Problem mit Ausgangspegel
ein 3-faches Ib von 200µA. Die 200µA ergeben ein R3 von R3=5V/200µA= 25k Kann das funktionieren?
zwischen T1 Emitter und 10K. Dort auch über einen 10K auf Basis T2 BC547, Emitter auf GND. +5V -> LED -> 390 Ohm auf Collector T2. Über 3 adriges Kabel ca 30-40cm an Microcontoller ATmega8 angeschlossen. Die Bauteile sind aus der 13 Jahre alten Grabbelkiste.
-
Thread
5V beim starten am Port ist das Normal?
ist durchgehend angeschlossen. Jedes mal wenn ich den Schalter umlege bekomme ich für ca.100ms 5V auf den PORT D Pin0 denn ich als Ausgang geschaltet gabe. Kann mir jemand sagen was da falsch ist? Ist da irgend eine wichtige einstellung in den Fuse Bits die das verürsachen könnte? Mit freundlichem
Daniel schrieb: > Jedes mal wenn ich den Schalter umlege bekomme ich für ca.100ms 5V auf > den PORT D Pin0 denn ich als Ausgang geschaltet gabe. Den solltest Du nicht als Ausgang setzen, da er fest mit dem MAX232-Ausgang verbunden ist. D.h. es kämpfen 2 Ausgänge miteinander und