-
Thread
Ports beim 8051
Warum muss am Pin High Pegel(3-5V) anliegen, das der Port als Input gilt? Und warum muss am Pin Low Pegel anliegen, das der Port als Output gilt? Read-modify-write: Vom Port lesen, Wert verändern, zurückschreiben
er offen oder? Ja. Aber das gilt für alle Ports. > Warum muss am Pin High Pegel(3-5V) anliegen, das der Port als Input > gilt? Nein, muss nicht. Nur der FET muss abgeschaltet sein (d.h. Latch=1), damit das externe Signal, das man am Eingang
-
Thread
USB Typ C D+ D- vs CC1 CC2
Wenn du nur USB "kleiner 3" über den USB-C-Stecker benutzen willst, musst du auch nur die D+/D- - Pins verwenden. Die in der Mitte.
Ich kann ansonsten noch die Korean Hroparts TYPE-C-31-M-12 Buchse [0] empfehlen. Bei der fehlen die USB 3.0 Anschlüsse, aber die USB 2.0 D+/D- Leitungen und die CC-Pins sind herausgeführt. Dadurch lässt sie sich problemlos mit einem Lötkolben und etwas
-
Thread
STM32F 5V Eingänge auch ohne Vorwiderstand 5V tolerant?
Schaltung, versorgt mit 5V vom USB (welche an PA9 anliegen, PA ist auch der Port wo SWD drauf hängt), der Controller selbst ist über Linearregler mit 3V3 versorgt, 100nF dicht an jedem VDD Pin. Ich bekomme aber über SWD keine
An die VCAP müssen normalerweise jeweils 2,2µF, sonst wird der µC nicht laufen. Die Kondensatoren sind für die internen Regulatoren, wenn du die Pins auf GND hattest dann hast du die Regulatoren kurzgeschlossen. Vermutlich sind sie dann hinüber
-
Thread
STM32F401 Initialisirung USART2 bare metal
USART_CR3_IREN)); USART2->CR1 |= (USART_CR1_UE); //enable USART2 /* Enbale GPIOA clock */ RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; /* Configure GPIOA pin 5 as output */ GPIOA->MODER |= (1 << (LED_PIN << 1)); /* Configure GPIOA pin 5 in max speed */ GPIOA->OSPEEDR |= (3 << (LED_PIN << 1)); __enable_irq(); /* Turn on the LED */ LED_ON(); for(;;){ ; } } [/c]
-
Thread
Ansteuern eines LCD über ATmega16
LCD_RW_PIN PD6 #define LCD_RS_PIN PD5 #define LCD_E_PIN PD7 void putchar( char c ) { LCD_CTRL_PORT |= (1<<LCD_RS_PIN); LCD_CTRL_PORT &= ~(1<<LCD_RW_PIN); LCD_DATA_PORT = c;
(5); LCD_CTRL_PORT |= (1<<LCD_E_PIN); LCD_DATA_PORT = command; LCD_CTRL_PORT &= ~(1<<LCD_E_PIN); _delay_ms(70); } etc..... [/C] erstens wird der Code dadurch sehr viel besser verständlich
-
Thread
PIC18F4550 - PIC macht "nix"
// TRISE = 0x00; // ADCON1 = 0x0F; // Alle Port Pins auf Digital gesetzt // GLCD_Init(); // Setup_ADC(); while(1); { LATAbits.LATA2 = 1; // LATEbits.LATE0 = 1; // LATAbits.LATA4 = 1; // } } [/c
Target Datei im Anhang wer Target nicht hat ich beantworte auch alle Anfragen. Zu 1. Habe den MCLRE Pin über 20K und 1N4148 auf Vdd. Zu 2. Wie gesagt habe schon auf 4Mhz gewechselt und damit 30pF, hilft nicht. Zu 3. Gut zu wissen! Zu 4. Danke! Zu 5. Kann ich dann die Verbindungen bei behalten oder
-
Thread
Wie verbindet man STM32 über I2C und HAL mit AD7746?
(&hi2c3, 0x91, &aTxBuffer, 32) { } void HAL_I2C_MasterRxCpltCallback(I2C_HandleTypeDef *I2cHandle) { if (HAL_I2C_Master_Receive_IT(&hi2c3, 0x90, &aTxBuffer, 32) == HAL_OK) { HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); //HAL_Delay(100); } } [/c] Fehler: [code] ..\Src\main.c:97:40: error: expected ')' before numeric constant void HAL_I2C_Master_Transmit_IT(hi2c3, 0x91, aTxBuffer, 1); [/code]
-
Thread
Programmierung eines FPGAs durch µC
, isolationstest und wieder verbaut. Soll sich aber ja durch das Projekt ändern. Zu den TriCore Pins die Signale sind folgenden Pins zugewiesen... TDI -> P7.0 TDO -> P7.1 TCK -> P7.2 TMS -> P7.3 So ich hoffe, ich bin Bernds ansprüchen gerecht geworden. Ich komme selber mehr aus der Hardware
Begriff. In dem oben von mir genannten Verzeichnis findest du die Variante der Software für den JTAG Port und nicht die Variante für den von Bernd erwähnten SSPI Port. Anzupassen ist hardware.c Da ihr in der gleichen Chain auch 2 weitere PLDs habt, muss das im svf File berücksichtigt werden. Wenn
-
Thread
Lauflicht Riesenrad
$swstack = 16 $framesize = 32 Dim N As Byte Config Rainbow = 1 , Rd0_len = 8 , Rd0_port = Portd , Rd0_pin = 0 Config Rainbow = 2 , Rd1_len = 8 , Rd1_port = Portd , Rd1_pin = 1 Dim Color(3) As Byte R Alias Color(_base
$swstack = 16 $framesize = 32 Dim N As Byte Config Rainbow = 1 , Rd0_len = 8 , Rd0_port = Portd , Rd0_pin = 0 , Rd1_len = 8 , Rd1_port = Portd , Rd1_pin = 1 Dim Color(3) As Byte R Alias Color(_base) : G Alias Color(_base + 1) : B Alias Color(_base + 2) Rb_selectchannel
-
Thread
MSP430 Aufkündigung?
> Woher kommt diese Erkentniss? Quellen? Studien? Wie misst man das? > Speicher, Geschwindigkeit, Pin-Nutzung? Bitte erläutere uns das mal > genauer. Das interessiert mich. Wenn ich folgende Schnittstellen habe: 3 x ADC, 2 x DAC, 2 x DMA, 2 x I2C 5 x USART 3 x SPI, 2 x I2S, 3 x CAN 1 x
Die STM32 µC haben viele 5V tolerante I/O Pins. Die können mit Hilfe eines Pulls-Up Widerstandes sogar 5V ausgeben. Aber das ist nur selten nötig weil nahezu alle 5V IC's auch 3,3V oder wenigstens 3,6V tolerant sind
-
Thread
VGA Grafikkarte mit AVR und 8MB SDRAM
Hier das Foto von der Unterseite. PortA0-7 -> D0-7 und D8-15 und an A0-7 über HC573 PortC0-7 -> A8-15 PortB0-4 -> A16-20 PortD5 -> Reset PortD6 -> WR\ PortD7 -> RD\ PortE0 -> MR PortE2 -> CS
Auswahl ermöglicht. Dann sind folgende Pixeltakte in MHz möglich (zumindest bei CRT, bei LCD fallen die 2/3 Optionen weg): 33 33MHz 25,4 25,4MHz 22 33MHz*2/3 17,734 17,734475MHz 16,933 25,4MHz*2/3 16,5 33MHz/2 12,7 25,4MHz/2 11,823 17,734475MHz*2/3 11 33MHz/3 8,86724 17,734475MHz/2 8,4667
-
Thread
Nokia 3310 LCD mit Bascom
in meine Zip-Dateien gepackt. Genau so ist es, für meinen M103 habe ich es dan so ausgeführt Pin 1 VDD - VCC 3,3 V Pin 2 SCLK - SCK Pin11-M103 Pin 3 SDIN - MOSI Pin12-M103 Pin 4 D/C - DREQ anderer Möglich, bei mirPB7Pin17-M103/Pin 5 SCE - SS Pin10
, die ich auch benutze: LCD pin - AVR Port.pin SCLK(2) - PortB.7 SDIN(3) - PortB.5 D/C(4) - PortB.0 SCE(5) - PortB.2 RESET(8) - PortB.3 Am Reset messe ich 0,73 V. Ich habe jetzt noch mal den Mega16 durch den 8515
-
Thread
ATMega8 funktioniert super, aber KEINE spannung an i/o-ports
Ich hätte da noch drei Vorschläge: 1. probier es mal ohne LED 2. verbinde AREF mit +5V (mußte ich schon mal machen, da ich sonst PortC (als Eingang geproggt) nicht vernünftig Abfragen konnte) 3. setze zwischen +5V und GND vom Mega8 einen 100n Kondensator
1. interner takt? also ich habe die fuses wieder auf lieferzustand gestellt, heißt: sut0, cksel1-3. 2. ja 3. referenz-spannung von 5V am ausgang, wenn auf masse geschaltet? ja!
-
Thread
IC für RC5 Code
werden, was für 1-2cm bei weitem ausreichen sollte. Pin3 bleibt unbelegt. Pin4 an Masse, Pin8 an Vcc, von Vcc nach Masse ein Stützkondensator, die Pins 1,4,5,6,7,8 werden als Pads auf dem Board nach ausssen geführt da darüber
Hallo Stimmt so nicht " Also braucht man doch mindestens 2 * 3,5 ms + 3,4999999 ms um sicher immer 2 Packete empfangen zu können. Das ergibt dann 10.499 ms, bei 1,5 cm = 5,1 km/h." Müsste so besser passen zu früh Start 3,49 ms + 700
-
Thread
Grasshopper Inbetriebnahme
installieren, es ist kein JTAG-Adapter nötig. Zur Überprüfung der Integrität der Datei kann der MD5-Hash (ermittelbar mit md5sum) dienen: 9fb4c85cbf3d71d69d6e07cd8a2faffe u-boot.bin Wer den Source-Code von U-Boot verändern möchte: Es sind zwei Zeilen in board/in-circuit/icnova/flash.c hinzuzufügen
13fa0ec8 r12: 13fa2000 r11: 13fb91e0 r10: 13fa1000 r9: 13fa1000 r8: a0000000 r7: 13fb91c0 r6: 13ff9984 r5: 13fa0fa0 r4: 00000000 r3: 13fb91f0 r2: fff01800 r1: 00000000 r0: 13ffa58c Flags: qvnzC Mode bits: hrje....g CPU Mode: Supervisor Stack: (0x13fa0ec8 to 0x13fa0fa0
-
Thread
AVR Ausgänge mit "Dauerfeuer" belegen
DDRC #define OUT_PORT PORTC #define OUT1 0 #define OUT2 1 #define OUT3 2 #define OUT4 3 #define OUT5 4 #define OUT6 5 #define ALL_OUT
pgm_read_byte(&Pattern[nKeyPress][2]); if(!(KEY_PIN & 0x08)) // Wenn Taste PortB.3 auf HIGH Summe |= pgm_read_byte(&Pattern[nKeyPress][3]); if(!(KEY_PIN & 0x10)) // Wenn Taste PortB.4 auf
-
Thread
Glühwürmchen in Rotkohlglas gefangen
Pins PB1,PB2,PB5. Also 3 LEDs können gleichzeitig leuchten. In der Timer0 Overflow ISR wird also PB0 auf High Ausgang gesetzt und nun anhand der nötigen Dutycycle der 3 LEDs in Richtung PB1,PB2,PB5 die DDRB
sol_volt = ADC; if ((sol_volt > bat_volt) && (sol_volt >= BATTERY_OK)) flags |= FLAG_ISNIGHT; [/c] bat_volt wird zuerst gelesen, von ADC3 (=PB3 = pin2 = BAT+ beim tiny45) sol_volt danach, von ADC2 (=PB4 = pin3 = SOL- beim tiny45) Ok soweit. Nun wird sol_volt > bat_volt getestet: Das kapier
-
Thread
3x4 Tastenmatrix
#3022266: > Auf den Foto kommt es mir vor als steckt der 4. gelbe in AVCC. Jo, sehe ich auch so. PB2 ist normalerweise Pin 16, dann geht es weiter mit 17,18 und 19, resp. PB3 bis PB5.
, danke für die vielen Antworten. Bei der Verkabelung war wirklich ein Fehler. Habe nun PB2-TastaturPin4 PB3-TastaturPin5 PB4-TastaturPin6 und PB5-TastaturPin7 verkabelt wie es gehört. Leider hat es an dem Problem nichts verändert. Die Ziffern 1,2,3 bleiben immer noch ohne Funktion.
-
Thread
C, Enums mit preprocessor
) \ if(device==DAC_SS_0) PIN_DAC_CS0 = BIT_SET \ if(device==DAC_SS_1) PIN_DAC_CS1 = BIT_SET \ if(device==DAC_SS_2) PIN_DAC_CS2 = BIT_SET \ if(device==DAC_SS_3) PIN_DAC_CS3 = BIT_SET \ [/c] Aufruf: Es gibt
dürfte wohl der Port Nummer 3 sein und die 2 stehen für den Pin an diesem Port. Ist es möglich, die 2 variabel zu gestalten? Also sowas in der Art P3^PinNr = 0; wobei PinNr sagen wir mal ein unsigned char ist
-
Thread
Frage zu 8574 I2C I/O-Expander
Hallo, ich möchte gerne 3 Pins des PCF8574 als Ausgang benutzen und 5 Pins als Eingang. An den Eingängen soll ein fertiges Modul gehängt werden, welches definiert High (5V) und Low (0V) liefert, also kein Tristate. An die Ausgänge
Hat bei mir bestens geschnurpelt. Ich hatte das Problem mit der I/O-Zuweisung derart, daß ich 3 + 5 brauchte. Da der \INT dann nur noch von wirklichen Eingängen ausgelöst wird, vereinfacht sich die SW leicht (die hatte ich allerdings wegen Blödheit nicht selbst gemacht - war zu umfangreich).
-
Thread
ESP8266, Arduino 5V Spannungsquelle
den ESP8266 passend regel. Im Datenblatt ist als Betriebsspannungsbereich angegeben: min 2.5 V, typ. 3.3 V und max. 3.6 V" Dem ist nichts hinzu zu fügen.
B08693ZP89/ref=sr_1_1_sspa?dchild=1&keywords=level+shifter&qid=1604528432&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExVktKWDkwSE1VN1pLJmVuY3J5cHRlZElkPUEwNDQyODk1MjgxNFJUQTRPVzFGQyZlbmNyeXB0ZWRBZElkPUEwMzEzNDYzM0pYMDdITDA1NEw2VSZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU
-
Thread
Zehntel springt von 4 wieder auf 2. Warum?
Ich hab mir mal den Code angeschaut. Deine Lesen und Schreiben auf den Port ist nicht ganz korrekt. Beispiel: [c]if(PIND == 0x01)[/c] Du vergleichst hier den ganzen Port D. Drückt dein Benutzer beide Tasten gleichzeitig, dann hat PIND aber den Wert 0x03. Besser: [c]if(PIND & 0x01)[/c] Das selbe gilt auch für das Schreiben auf PORTA bzw. PORTB, wenn du noch andere Pins an den Ports hängen hast. Beispiel, wenn PORTA nur 3 Bits für die Displayübertragung benutzt (ich kenne deine
-
Thread
Atmega 328p & PCF PCF8574: I2C Adresssuche
kompiliert: 2017/01/19_13:46:48 CPU Takt : 16,000 MHz set I2C SCL = 400 kHz compile 2017/01/19_13:46:48 -> Scanning... I2C device found at address 0x3C; 0111100x; << 0x78; 01111000 I2C OLED Arduino = 105, auf nanoV3 oder proMINI auf 328p File: A5_nan_Nok_RTC_EEP_DHT22
nur SCL an PD5 und SDA an PD4 anschließen müssen und schon wäre es gelaufen. Oder eben den Port und Pins in der.S umgestellt. Oder die i2cmaster.h überhaupt nicht erst eingebunden, dann hättest Du Hard-I2C auf den
-
Thread
port lesen wenn es als ausgang konfiguriert ist
Danke für die zahlreichen Antworten! was ich machen will ... ich habe am Port D 2 Taster und 2 LEDs angeschlossen. #define TASTE1 2 #define TASTE2 3 #define LED1 5 #define LED2 6 dementsprechend habe ich auch DDRD = 0xFF; DDRD &= ~(1<<TASTE1); DDRD &= ~(1<<TASTE2);
Ich denke die Verwirrung bei daniel legt sich, wenn er weiss, dass der Port auch 'mischkonfiguriert' werden kann. Es ist völlig ok, wenn du am Port die Pins 2 und 3 aus Ausgang konfigurierst und die Pins 5 und 6 als Eingang. Es ist nicht so, dass alle Portpins gleich konfiguriert
-
Thread
DCF-Empfänger probleme (erhalte kein high-signal am pin)
/* PD2 als Eingang fuer Button 1 */ BUTTON_1_REGISTER &= ~(1<<BUTTON_1_PIN); // PD2 als Eingang BUTTON_1_PORT |= (1<<BUTTON_1_PIN); // Interner Pull-up einschalten /* PD3 als Eingang fuer Button 2 */ BUTTON_2_REGISTER &= ~(1<<BUTTON_2_PIN); // PD3 als Eingang BUTTON_2_PORT |= (1<<BUTTON_2_PIN); // Interner Pull-up einschalten /* PD7 als Ausgang fuer DCF (PON) */ DCF77_PON_REGISTER
-
Thread
ATxmega8E5 ADC_Problem
. detection*/ PORTA.DIRCLR = PIN2_bm; /*Pinout Port D*/ // 5: Status LED green -OUTPUT // 6: Status LED red -OUTPUT // 7: Status LED blue -OUTPUT /*Status LED green*/ PORTD.DIRSET = PIN5_bm
beim zweiten > '1000' das ist genau das was ich machen will denn laut Datenblatt ist Bitnummer 4 Pin 1 und Bitnummer 3 Pin2. An PortA Pin 1 und Pin 2 liegen genau meine Spannungen an die ich einlese. Falk B. schrieb im Beitrag #4652516: >> (*Channel).MUXCTRL = (Pin << 3); //selection of ADC-Pin
-
Thread
100 solenoids steuern? 16×2=32 i2c Ports x 4 releais =128 Aber klappt nicht!
auch anderer Meinung... Der i2c Port expander funktioniert wirklich sehr gut und fehlerfrei... Und ich könnte von diesem Board (andere können noch mehr) 7 Stück hintereinander schalten und hätte 112 Ports zur Verfügung ohne mulitplexen
und baue es dreimal auf (33 + 33 + 34 = > 100). Das war auch angangs so geplant. Ich wollte 7 i2c Boards verwenden. Hab noch 5 Stück da. Aber dann hatte ich die Idee es zu multiplexen um mir die 5 Boards zu ersparen. Aber jetzt läuft's ja wirklich gut.
-
Thread
I2C am ATmega16 geht nicht mit beliebigen Pins
_lcd_e = 128 Cls Locate 1 , 3 Lcd "1234567890" End [/code] Wenn ich jetzt nur die I2C Pins auf PC.4 & PC.5 ändere und das LCD umklemme, funktioniert es leider gar nicht mehr. PullUps sind vorhanden. [code] $regfile
MWS schrieb im Beitrag #2430950: > Ohne einbinden der i2c_TWI.lib nimmt Bascom Soft-TWI, welches mit allen > geeigneten Pins arbeitet. Ah, danke für den Hinweis. Gruss Uwe
-
Thread
Cortex M3 - Wie funktioniert das mapping eines Pins zum ADC-Channel
Welcher Pin zu welchen Kanälen gehört findet man im Datasheet: ADC_Channel_11: PC1 ADC_Channel_12: PC2 ADC_Channel_13: PC3 Hinter PA3/4/5 stecken ADC_Channel_3/4/5 Datasheet Seite 27: http://www.st.com
; GPIO_Init(GPIOB, &GPIO_InitStructure); /* ADC Channel Mapping Port C Pin C4: Temperature LOW SIDE --> ADC Channel 14 Pin C5: Current Phase B --> ADC Channel 15 */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
-
Thread
Welche AVR besitzen die PIN Toggle Fähigkeit?
soll eine für Arduinos geeignete Lib werden. Im Anhang der jetzige Zustand der Lib Das Problem: [c]digitalWrite(13,!digitalRead(13));[/c] Dieses braucht viele Takte. Manchmal zu viele. Ich möchte eher sowas wie: [c] #ifdef FAST_TOGGLE_PIN_OPTION PINB = _BV(5); #endif #ifndef FAST_TOGGLE_PIN_OPTION
#4672731: > Schneller als so geht es sowieso nicht. > > Arduino F. schrieb: >> #ifndef FAST_TOGGLE_PIN_OPTION >> PORTB ^= _BV(5); >> #endif Das braucht 4 Takte, oder so. PINB = _BV(5); Kommt mit 2 Takten hin, wenn es denn der µC kann...
-
Thread
20 PINs umschalten ?
"Drahtverhau". Etwas eleganter ließe sich das mit Programmierbaren Bausteinen erledigen, also µC oder CPLD. Wobei die Bausteine dann aber 5V vertragen können müssen was bei den größeren Gehäusen über 40 Pin im Bereich der µC schon selten geworden ist und CPLD in 5V Technik ist mittlerweile noch
verwendet wird. Und > die sind definitiv Hotplugfähig... Das stimmt leider nicht, da die Joystick-Ports ebenfalls direkt an die CIAs gehen. Es gibt eine gewisse Chance, dass z.B. beim Umstecken eines Joysticks von Port 1 auf Port 2 während der C64 eingeschaltet ist anschließend der CIA im Eimer ist.
-
Thread
Inbetriebnahme des I2C bei einem STM8 Board
(sEE_I2C_SCL_GPIO_PORT, sEE_I2C_SCL_PIN, GPIO_MODE_OUT_OD_LOW_SLOW); GPIO_Init(sEE_I2C_SDA_GPIO_PORT, sEE_I2C_SDA_PIN, GPIO_MODE_OUT_OD_LOW_SLOW); TIM3_DeInit(); TIM3_TimeBaseInit(TIM3_PRESCALER
); GPIO_WriteLow(GPIOB, GPIO_PIN_0); } while (TIM3_GetCounter() >= 5) { GPIO_WriteHigh(sEE_I2C_SCL_GPIO_PORT, sEE_I2C_SCL_PIN); GPIO_WriteLow(sEE_I2C_SDA_GPIO_PORT, sEE_I2C_SDA_PIN); GPIO_WriteHigh
-
Thread
C_CAN Device: LPC11C24/301
ToDo: LPC 1754 M3 ARM Kernel lesen... JTAG oder SWI (Serial-Wire-Interface) Hacks mit FLASHMAGIC Tool & HEX2BIN.exe lesen Features: Der Pin''/RESET in Verbindung mit Port:_0_$03 via H/L Level ist ein Feature für
NULL-Zero-Nada why ??? a STATIC REZESSIVHIGH LEVEL.--IDLE no Phy-Connected. Like REALTEC NE2000 3-Lopp-Bk Modes. Devide by Zero/throw Exeption IRQ Trap-Vector ??? Pin-IRQ Port_Px 3 is 'Hack ??Self-Stimulate a Datagramm. --------------------------- [c] #include <cr_section_macros.h> #include
-
Thread
Virtueller COM Port beim Arduino Uno R3
und kurz nach Programmstart ein paar UART-Ausgaben erledigt. Die kommen auch am Hilfs-AVR MEGA16U2 (U3) an. Ein erneutes Reflow Löten von U3 brauchte keine Besserung, ebenso 100pF am Reset von U3. Letztendlich wurde der Fehler gefunden. C5! Dieser Koppelkondensator mit 100nF soll nur eine AC-Kopplung
eine Verbindung zum COM-Port hat! Ohne die blockiert U3 nicht! Lösung: Die Lötbrücke RESET-EN neben C5 ist im Layout mittels Leitung kurzgeschlossen! Wer baut so einen Unsinn? Also mit dem Skalpell trennen. Und siehe da, man
-
Thread
Warum geht das nicht ?
column 0 0b 1100 0000 #define LCDPORT PORTC // define port with LCD attached #define LCDDDR DDRC // and its data direction // define pins of LCD port #define LCD_PIN_RS 2 #define LCD_PIN_E 3 #define LCD_PIN_D4 4 #define LCD_PIN_D5
dec B brne wait_display ; Display DB [7:4] liegt auf PortB [3:0] ; sonst könnte man nicht RS = PB5, Enable = PB4 ; im 4 bit mode vom PortB aus bedienen ldi C,0b00000011 ;8bit mode, out LCD_PORTB, C ; rcall lcd_enable ;1, rcall
-
Thread
OLED zeigt nur wirre Pixel am I2C
. Nach langer Fehlersuche bin ich dann auf Arduino IDE (RPI Pico/RP2040 by Earle F. Philhower 2.5.2) mit den passenden Parametern (Bord: Generic RP2040, FS: 16MB, CPU-S:133Mhz,USB-Stack: Pico-SDK) umgestiegen. Spannungsversorung und Pins habe ich schon kontrolliert 12.7V + 3.3V liegen korrekt am
height, in pixels #define OLED_RESET 3 // Reset pin # (or -1 if sharing Arduino reset pin) #define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT
-
Thread
pollin kamera au-85
muß der Takt "von Hand", durch Hin- und Herschalten eines Ausgangs erzeugt werden. EXCLK (Pin 5 von Port C) und OC2 (Pin 7 von Port D) sind verbunden, eines von beiden muß immer hochohmig (Tristate) sein. ReadImage ist die Funktion zum Auslesen des Bildes. Es wird gewartet, bis HSYNC positiv
aus main(): [c] /* Open Timer2 with Period register value */ OpenTimer2(T2_ON, T2_PS_1_1 | 0x10); //10 = 5 MHz; /* Enable OC | 32 bit Mode | Timer2 is selected | Continuous O/P | OC Pin High ,
-
Thread
AD-Wandler Problem
So, nun der nächste Test mit ADC auf PIN C 3. MFG Dieter
ADC Ports koennen also maximal die Referenzspannung messen ... Also AREF = 2.5 V ... ADC0 8 V Das geht nicht!!! Der µC kann schaden nehmen und kannst die Spannung nicht messen.... Bau ein Spannungsteiler davor
-
Thread
C# werte über serielle schnittstelle an Atmega8 AVR
Oder noch simpler: [C] #include <avr/io.h> #define F_CPU 3686400L //Quarz = 3.6864 Mhz int main(void) { DDRD |=(1<<PD2); while(1) { _delay_ms( 250 ); PORTD |= (1<<PD2); _delay_ms
frame format: 8data, 2stop bit*/ UCSRC = (1<<URSEL)|(1<<USBS)|(3<<UCSZ0); } [/c] kann es sein das du den falschen Pin als ausgang setzt? Du setzt PD2... TxD ist aber PD1 / RxD ist PD0 Oder ist PD2 für was anderes gut
-
Thread
Tastenenprellung Deluxe P. Dannegger
= PORT_OPC_PULLUP_gc; PORTD.PIN1CTRL = PORT_OPC_PULLUP_gc; PORTD.PIN2CTRL = PORT_OPC_PULLUP_gc; PORTD.PIN3CTRL = PORT_OPC_PULLUP_gc; // Pin3 mit Pull-Up beschalten PORTD.PIN4CTRL = PORT_OPC_PULLUP_gc
; PORTD.PIN2CTRL = PORT_OPC_PULLUP_gc; PORTD.PIN3CTRL = PORT_OPC_PULLUP_gc; // Pin3 mit Pull-Up beschalten PORTD.PIN4CTRL = PORT_OPC_PULLUP_gc; PORTD.PIN5CTRL = PORT_OPC_PULLUP_gc; PORTD.PIN6CTRL
-
Thread
I/O Ports ATmega16
An PortC ist zwar die JTAG-Schnittstelle, die beinflusst aber Pin7 nicht. Wann legst Du denn Deine 0V an Pin7 an und wann sendet Dein UART? Wenn Du nämlich erst nach 3 Sekunden die 0V oder so anlegst, hat
hallo, ich habe mal den atmega getauscht und lese jetzt an dem gesamten port c eine 0x00. nur leider sollte jetzt (mit oszi gemessen) an bein 3,4 und 6 ein "high" anliegen. da sind nämlich schönste 5V zu messen. Das wäre nach meiner Rechnung eine 0xB2. Trotzdem behauptet der
-
Thread
PCINT: Flag Register für die Pins?
In/Out (out) PA0,PA1 - Out1,Out2 DDRD = 0b00111100; // Set In/Out (out) PD2,PD3,PD4,PD5 - Out3-5 //Registersettings GIMSK = 0b00100000; //Ex Vec: PCINT enabled PCMSK = 0b00000111; //PCINT Mask
AVR z.b. PinChangeInterrupts an mehreren Ports hat (PortC, PortD....) dann hat jeder eigene Port seinen Interrupt Vector. Das hat nichts mit den PortPins (PB1, PB2...PE1,PE2....) zu tun. Karl H. schrieb im Beitrag
-
Thread
LCD-Modul TC1602E-01 von Pollin ansteuern
Ich habe im Endeffekt das Gleiche Problem. Ich habe das besagte LCD über einzelne Testkabel an den Port C menes ATmega32 (16 MHz Quarz) wie folgt angeschlossen: Pin 1 (Vdd) -> +5V Pin 2 (Vss) -> GND Pin 3 (V0) -> Poti Pin 4 () -> PortC0 Pin 5 () -> PortC1 Pin 6 () -> PortC2 Pin 7 () -> GND Pin 8 () -> GND Pin 9 () -> GND Pin 10() -> GND Pin 11() -> PortC4 Pin 12() -> PortC5 Pin 13() -> PortC6 Pin 14() -> PortC7 Pin 15(A) -> hängt in der Luft Pin 16(K) -> hängt in der Luft Die Pins der Hintergrundbeleuchtung
-
Thread
Projekt Fußtreter
[c] if ((bit_is_clear ( PIND,3)) && ( j <= 4)) { j = 1; buildPort ^= (1<<0); } else j = 5; buildPort ^= (1<<4); } warten_ms(200); [/c] Sascha
[c] if (bit_is_clear ( PIND,3) { if ( j <= 4) { j = 1; buildPort ^= (1<<0); } else //wenn j>4 j = 5; buildPort ^= (1<<4); } warten_ms
-
Thread
CH340G meldet sich nicht als serielle Schnittstelle am PC (Windows)
Pin 16 VCC geht bei dir zu 3.3V? Muss eigentlich an 5V/VBUS Edit: Du hast Pin 4 3V und Pin 16 VCC verbunden, das geht nicht Edit 2: ich nehme es zu Aus dem Datenblatt: "Connect to VCC to
>UART Adapterplatinen nicht mehr aber ich meine der sah relativ ähnlich zu meinem aus nur das dort 2 Dioden für 5V auf 3.3V verwendet wurden.
-
Thread
12V Relais mit 5V ansteuern
Amateur aber habs nach besten Gewissen eingetragen A) Du hast eine Quelle, deine Signalquelle. A1) 5V A2) bis zu 500mA aus dem USB Port A3) DC A4) Frequenz <1Hz B) Du hast eine Last B1) 12V B2) 100mA (Magnetventil) B3) DC B4) Frequenz <1Hz C) Netzteil des Computers - PSU (ist auch im
meinem Fall vom USB-Port mit Strom versorgt. Wenn also Pin5 vom Paralellport Signal gibt wird auf dem zugewiesenen Ausgang der Strom vom USB Port abgegeben. Diese Ansteuerung erfolgt automatisch und/oder manuell 3) Ja, sämtliche
-
Thread
Induktiver Sensor antwortet nicht auf I2C
Jonatan schrieb im Beitrag #8059042: > Logic_Analyzer.png Im Datenblatt steht zur I2C-Adresse: "I2C Address selection pin: when ADDR=L, I2C address = 0x2A, when ADDR=H, I2C address = 0x2B." Wie hast du den Address selection pin (ADDR) beschaltet und warum verwendest du für
(3); LPI2C0->MFCR = LPI2C_MFCR_TXWATER(0) /* Transmitter Water mark set to 0*/ |LPI2C_MFCR_RXWATER(3); /* Receiver Water mark set to 3*/ LPI2C0->MCR |= LPI2C_MCR_MEN_MASK
-
Thread
8051: An Port 1 nur 3.5V anstatt 5V ?
Hallo, ich habe ein Problem: Ich benutze einen AT89C51ed2 von Atmel. Ich gebe (und das sind die einzigsten Befehle) nur an Port 1 an irgend einem Pin, oder an allen eine 1 aus. Mit dem Messgerät allerdings kann ich dort dann nur 3.5-3.8 Volt messen
Hallo Sebastian! Da die Ports 1,2,3... mit Pull-ups haben kannst Du nicht erwarten das Du 5V und vieleicht noch ein Ampere ziehen kannst. Über den Pull-Up Widerstand fällt ja ne Spannung ab und der Strom wird stark begrenzt.
-
Thread
MAX7219: 3-Segment-Anzeige macht Probleme
1); max7219_hex (4, 2); max7219_hex (0, 3); long_delay (100); max7219_hex (16, 1); max7219_hex (5, 2); max7219_hex (0, 3); long_delay (100); max7219_hex
(1, 1); max7219_hex (0, 2); max7219_hex (0, 3); long_delay (100); } return 0; } [/c]
-
Thread
A2DP Bluetooth Modul China eBay
Hi all, i successfully dumped the i2c flash. (Attached) Pin and Device-ID is included in clear text. Will change this and flash back to check. Pin at 0x1BF-0x1C2 ID at 0x1C7-0x1CE Regards. Edit: Works! Successfully changed Bluetooth-ID and Pin to my needs. To read/write you either need to desolder the whole IC or, if you'll be really careful lift the 2 i2c pins (SCL/SDA).