-
Thread
MSP430 I2C Ansteuerung - Veratändnis Probleme
// Assign I2C pins to USCI_B0 Die Selektion Register sind ja dafür zuständig, in welchem Modus die I/O Ports arbeiten sollen. Ich habe bisher nicht herausfinden können, warum diese Zeile für I2C sein soll. Beim
das Programm dort hängen bleibt, wurde dementsprechend kein Startbit gesendet, warum auch immer. 5) Im Idle Modus, also nach dem Initialisieren des I2C messe ich am SDA Pin eine Spannung von ca. 3,5V aber beim SCL Pin eine Spannung von ca. 2V. Irgendwo scheint beim SCL Pin der Wurm zu liegen. Der
-
Thread
miniLa Software
Xilinx JTAG-Programmer). Dort wäre dann: Programmer CPLD TCK = E1 ------ E7 TCK (Pin 67) TDO = E2 ------ E5 TDO (Pin 122) TDI = E3 ------ E6 TDI (Pin 63) TMS = E4 ------ E8 TMS (Pin 65) Du kannst natürlich auch mit dem farbigen Verbindungskabel die Pins tauschen. Wigbert
Hallo Wigbert, jein, Pin1, Pin5 und Pin9 an K1 sind korrekt. Pin3 ist unbenutzt (Clk_o kann nicht an Pin 26 des CPLD umegelegt werden). Auch X8 ist bisher ungenutzt. CLK_o findet sich nur an Pin3 von K8. Eventuell kann
-
Thread
DAC mit I2C Port
Ich brauche einen 8Bit DAC mit I2C-Interface UND(!) einstellbarer Adresse. Mit fester Adresse bring mir nix weil ich mehrere an den gleichen I2C Bus hängen will. Gibts welche wo man die extern einstellen kann (z.B. mit Pins die man an GND oder VDD legt)? thx
-
Thread
AVR-Pin als Eingang+Ausgang beschalten
den ganzen Port so bauen und Lochraster verwenden -> 3-Pin-Jumper = doof 2. damit kann ich mich immernoch verjumpern und dem AVR warme gefühle bescheren.. ;) @Peter: Du nutzt dann interne Pull-Up? Mh.. löst natürlich
Test-Software auf dem µC. -> eig. auch Pull-Up nicht voraussetzbar 3. LED soll Pegel anzeigen (HIGH=Licht) -> Schaltung von VCC gegen Pin suboptimal 4. Zustand der LED bei Input-Nutzung nicht soo wichtig ;) Daher
-
Thread
Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus
ganz klar. Lt. dem weiter oben angegebenen Datenblatt sind die LCD Anschlüsse 1 FRAME -> FLM 2 LOAD -> ? 3 CP -> ? 4 VDD -> 5V 5 VSS -> GND 6 VEE -> VLCD 7 D0 -> D0 8 D1 -> D1 9 D2 -> D2 10 D3 -> D3 11 ONOFF 12 NC Für Pin 2+3 bleiben noch "M" und "PCLK" und der nicht beschriftete
Hallo Benedikt, ich habe die Schaltung aus den Original Datenblätter von ST. Hier wird der SwE (Pin 2) ebenfalls auf GND gelegt . Siehe Link auf Seite 10 Bild 2 http://www.datasheetcatalog.net/de/datasheets_pdf/M/C/3/4/MC34063.shtml Die beiden internen Transistoren Q1 und Q2 sind in dieser Darstellung
-
Thread
Bresser 5in1 umbau auf eigene Platine
XX000000 337,5 Bei NNW bzw. STATE 0XX00000 heißt also das WIND_R2 und WIND_R3 LOW sind.
vorsichtig sein. Denn einfach kein PullUp oder PullDown widerstand zu schalten, kann heißen offene Pins. Die neigen dann zum Rauschen, was wieder die Stromaufnahme des µC erhöht! Nehmen wir an du hättest die Windrichtungs Pin am Port P2 des MSP430. Als beispiel einen kurzen Assembler Programmauszug
-
Thread
ESP32-C3 will nicht so richtig
IDE noch auf platformio habe ich es hinbekommen. Hochladen funktioniert aber. platform.ini [c][env:esp32-c3-devkitm-1] platform = espressif32 board = esp32-c3-devkitm-1 framework = arduino monitor_speed = 1152000 build_flags = -D ARDUINO_USB_MODE=1 -D ARDUINO_USB_CDC_ON_BOOT=1 upload_port
nicht richtig gelesen. Schau mal hier: https://docs.espressif.com/projects/esp-idf/en/stable/esp32c3/api-reference/peripherals/gpio.html Da ist GPIO 2, 8, 9 ein Strapping Pin, die du am Mosfet auf GND ziehst.
-
Thread
Conrad I2C LCD Modul
Unter http://www.google.de/#biw=1143&bih=687&sclient=psy-ab&q=C-Control+I%C2%B2C-LC-Display-Modul&oq=C-Control+I%C2%B2C-LC-Display-Modul&gs_l=hp.12...0.0.1.349.0.0.0.0.0.0.0.0..0.0....0...1c..21.psy-ab.iHl3rTbPe-c&pbx=1&bav=on.2,or.r_qf.&bvm=bv.49478099%2Cd.ZWU%2Cpv.xjs.s.en_US.c75bKy5EQ0A.O
PDF-Download auf der verlinkten Produktseite von Conrad gibt. Das LCD wird über einen einfachen I2C Portexpander (PCF8574) angesteuert. P0 -> D4 P1 -> D5 P2 -> D6 P3 -> D7 P4 -> R/W P5 -> RS P6 -> E P7 -> Backlight (0=ein) Die Initialisierung/Ansteuerung entsprechen der eines HD44780-kompatiblen
-
Thread
STM32 F3 Discovery Probleme mit SPI und receive Interrupt
/pull gpio_pin_config(MISO_PORT,MISO_PIN,AF|PP); //spi miso to alternate function push/pull CLK_PORT->AFR[1] |= (5<<((CLK_PIN-8)*4)); //AF5 (SPI2 CLK) MISO_PORT->AFR[1] |= (5<<((MISO_PIN-8)*4)); //AF5 (
,AF|PP); //spi miso to alternate function push/pull CLK_PORT->AFR[1] |= (5<<((CLK_PIN-8)*4)); //AF5 (SPI2 CLK) MISO_PORT->AFR[1] |= (5<<((MISO_PIN-8)*4)); //AF5 (SPI2 MISO) RCC->APB1ENR |= RCC_APB1ENR_SPI2EN; //enable clock for spi2 SPI2->
-
Thread
Schieberegister (74HCT595) in C
PORT_com74hc595 |= (1<<PORT_RCK); } [/c] ist die zentrale Ausgabefunktion. Man kann da mal ein paar delay_ms einbauen, zb mit 1000ms und dann ein paar LED an die 3 wichtigen 595 Leitungen klemmen.
> es müsste doch jetzt aber doch 8 x die Daten Led leuchten oder nicht ??? > > com74hc595_setPort(01010101); setPort [C] void com74hc595_setPort( unsigned char Port, unsigned char Bits ) [/c] will 2 Argumente. Port könnte man als die Nummer des Bausteins ansehen (bei dir 0 oder 1), Bits
-
Thread
Fragen zu Peter Dannegger's RC5 Beispiel
A1| A0| C5| C4| C3| C2| C1| C0| +---+---+---+---+---+---+---+---+---+---+---+---+---+---+ mit 0x3F verunden +---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 1 |-C6| T | A4| A3| A2| A1| A0
---+---+---+---+---+ | 0 | C6|-T |-A4|-A3|-A2|-A1|-A0|-C5|-C4|-C3|-C2|-C1|-C0| +---+---+---+---+---+---+---+---+---+---+---+---+---+---+ danach um 7 Stellen nach rechts schieben: +---+---+---+---+---+---+---+---+---+---
-
Thread
PIC: I2C mit Master und Slave
= 0b.0000.0000; // Alle Pins des Port B auf low schalten // RC0 und RC5 sind ungenutzte Pins // RC1 und RC2 sind PWM-Ausgänge zur Geschwindigkeitsregelung der Motoren // RC3 und RC4 sind I2C-Leitungen // RC6 ist der serielle Ausgang // RC7 ist der serielle Eingang TRISC = 0b.1001.1000; // Alle Pins bis auf RC3, RC4 und RC7 als Ausgänge definiert // RC3 = I2C, RC4 = I2C PORTC = 0b.0000.0000; // Alle Pins des Port C auf low schalten delay100(40); //
-
Thread
Wie schnell ist euer uC
wrote: > Nur zum Bleistift: > > ein AVR 8-bit benötigt fürn setz, lösch Befehl eines Portpins > 2 Takte. Vosichtig damit, die neuen AVRs können einen Port auch mit nur einem Befehl "toggeln", nämlich indem man ins PIN-Register schreibt.
Möchte euch folgendes Schema vorgeben. 1. Kann ich die Frage nach wieviel Takte benötigt mein uC um den Portpin zu toggeln, mit 1,2,3,4,5,6.... beantworten? true, false 2. Will ich das beantworten? true, false Wie ich diese Information verwerte, überlasst bitte mir.
-
Thread
2,1 A aus USB-Port?
In dem PDF-Datasheet steht definitiv, PC-USB-Port (http://2direct.de/i-sell2u/images/datenblatt/AA0045.pdf). Ist mir auch neu, dass man mehr als 0,5A kriegen kann, nur 1A mit 'nem Y-Kabel. Könnte das PC-Netzteil Stress machen oder das Mainboard?
Pin 5. Kaputt gehen tut da nichts. Bei meinen Board sind 2,6A Polyfuses für USB 2.0 und USB 3.0 drauf. Wenn man den Adapter natürlich an ein billiges China-Ladegerät was nur für 500mA ausgelegt ist
-
Thread
PPS5330 Labor-Netzteil hack
mess_time -= 5800; // = offset bei 0.0 Grad float result = ((float)mess_time / 34.5); char buf[5]; sprintf(buf,"%2.1f\n",result); // format result in string SPI_wr2(0x4B); // print temp "xx.xC" SPI_wr2(0x5C); SPI_wr2(buf[3]+32); SPI_wr2(
t)meas_time - calib_offset_temp) * calib_factor_temp) >> 16; [/c] Kaltstart ohne Last T1 = 20.7 C Me = 20.5 C T2 = 20.0 C Nach 60 Minuten ohne Last T1 = 27.8 C Me = 28.3 C T2 = 34.0 C
-
Thread
Atmega/C: eine Funktion aus einer Funktions heraus aufrufen
main(void) { //mein code while(1) { Sende_alle_Ziffern(1,2,3,4,5,6); } } [/c] Danke und Grüße, 006
Segment-Anzeige // Input : Dezimalzahl typ uint8_t // Output : Code für 7-Segment Anzeige // Pin Zuordnung // Qn: Schieberegister Ausgang Nr. n // n: 7-Segment-Anzeige Balken Nr. n // Q0 -> nc // Q1 -> 6 -> b // Q2 -> 7 -> a // Q3 -> 4 -> c // Q4 -> 2 ->
-
Thread
LCD +Bascom zeigt 1. Zeile Nix 2. Zeile voll
8L $crystal = 4000000 'Quarz: 4 MHz Config Lcd = 20 * 2 Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0 , E = Portd.4 , Rs = Portd.5 Config Portd = &11111111 Config Lcdbus = 4 Config Lcdmode = Port Cls Lcd "
folgender Text zur Definition und Initialisierung eingegeben Config Portc = Output Config Lcd = 16 * 2 Config Lcdpin = Pin , R = Portc.7 , E = Portc.5 , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 Config Lcdbus = 4 Config Lcdmode = Port Initlcd danach: Cls Lcd "Message."
-
Thread
PIC18F4620, PICDEM2 Plus und LCD
[c] #include <p18F4620.h> void main(void) { #define RW_PIN LATDbits.LATD5 /* PORT for RW */ #define TRIS_RW TRISDbits.TRISD5 /* TRIS for RW */ #define RS_PIN LATDbits.LATD4
6); // wait 24ms DATA_PORT = 0x03; E_PIN = 1; // E-Leitung Pulsen lassen Delay10TCYx (1); E_PIN = 0 ; Delay1KTCYx(13); // wait 5,2ms DATA_PORT = 0x03; E_PIN = 1; // E-Leitung Pulsen lassen Delay10TCYx (1); E_PIN
-
Thread
AVR32 grasshopper patch für ATMEL buildroot 2.3.0
00000000 93817200 00000000 00000000 93816c2c 5ea0: 93817200 9002daa0 939f5ea8 939f5ea8 00000000 00000000 00000000 003d08bb 5ec0: 64e53700 003d08bb 00000080 9023a3d8 901a9e56 939f5efc 9023a3a0 93817200 5ee0: 901a9f3c 939f5efc 9023a3a0 938f2c00 00000080 90053d2e 939f5f18 939e9c80 5f00: 938f2c00 00000000 939f5f3c 000a835c 000a834c 939f5fb8 90056964 939f5f44 5f20: 80000000 939f4008 00000000 7fffffff 000a835c 000a834c 939f5fb8 00000000 5f40: 00000000 90056a28
-
Thread
Hilfe bei Z80 Opcodes
(0CFF1H) 1 0 Port A (0CFF2H) 1 1 Control-Port (0CFF3H) [/c]
nicht auf eine der 7-Segment-Anzeigen). Damit sieht das Datentelegramm so aus: [pre] Bit 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 … 34 high ? 1A 1B 1C 1D 1E 1F 1G 1. 2A 2B 2C 2D 2E 2F 2G 2. 3A 3B 3C 3D 3E 3F 3G 3. … [/pre] Das Startbit muss immer high sein
-
Thread
Dip-Schalter an Port-Pins abfragen?
einzelnen Portpins sind DDR = 0 definiert. Die Schalter wollte ich in ein Struct ablegen, etwa so. [c] struct dipbits{ byte b0 : 1; byte b1 : 1; byte b2 : 1; byte b3 : 1; byte b4 : 1; byte b5 : 1; byte b6 : 1; byte b7 : 1; } __attribute__((_packed_)); #define DIP_BIT(port, bitnummer) (((volatile struct dipbits *)&port)->b##bitnummer) #define DIP1 DIP_BIT(PORTB, 6) #define DIP2 DIP_BIT(PORTB, 7) #define DIP3 DIP_BIT(PORTG, 3) #define DIP4 DIP_BIT(PORTG, 4) [/c] und im Main dann quasi den Hex-Wert der Schalter
-
Thread
AVR Videogenerator, 40x25 Zeichen, nur 60% CPU Auslastung !
(PB5 MOSI) zum Signal 1k Ohm von Pin5 (PB4 SS) zum Signal eine Brücke von Pin4 (PB3) zu PB5 Alles noch son bischen zusammengebastelt aufm Lochraster.
holen 2 CP r1,r2 ;Mit Wert für Zeile vergleichen LD r3,r4 ;r4 enthält Farbe für ungleich Skip_if_equal ;Zu faul Befehl zu suchen, evtl breq oder sowas LD r3,r5 ;Farbe für gleich OUT ,r3 Das schreibst
-
Thread
Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?
Platine wäre "geritzt" und würde folgende Glyphen enthalten: E: 18 mal S: 8 mal I: 17 mal T: 5 mal N: 14 mal D: 5 mal H: 6 mal A: 4 mal L: 4 mal B: 2 mal R: 9 mal V: 3 mal C: 3 mal Z: 7 mal W: 3 mal U: 5 mal Ö: 1 mal F: 6 mal Ü: 2 mal G: 4 mal M: 2 mal O: 1 mal P: 1 mal J:
, // 5 = "5_DUMMY" = "" [/c] Besser: [c] enum WordPos { WP_DUMMY, // 0 = "0_DUMMY" = "" WP_ES, // 1 = "1_ES" = "ES" WP_IST, // 2 = "2_IST" = "IST" WP_VIERTEL_1, // 3 = "3_VIERTEL" = "VIERTEL" WP_DUMMY
-
Thread
ATXMega128 - Erste Erfahrungen
selbst auslesen. Alt: 00:A0:00:00:4C:A5, Neu: 00:b0:00:00:09:f3
>braucht man gerade noch 6*CLK_PER2 Takte um 2Byte Daten bereitzustellen. >Macht 3*CLK_CPU !!! Ich denke das deine zahlen nicht stimmen können. Nimmt man SRAM mit 10ns am EBI und betrachtet den 3-Port SRAM mit ALE12 dann kann man bis
-
Thread
Audio ausgeben mit µC
für Wave-Tabelle zu berechnen: 16' = 480, 8' = 240, 5 1/3' = 160, 2/3' = 20): [c] // main.h #ifndef MAIN_H #define MAIN_H 1 #ifndef F_CPU // Quarz 20 MHz. #define F_CPU 20000000UL // CPU_F fuer Verzoegerungen #endif #ifndef FLAGG
SPI_init(); TIMER0_init(); FLAG_REG = (1<<F_GED16)|(1<<F_PR8)|(1<<F_GED8)|(1<<F_PR4)|(1<<F_FL4)|(1<<F_QU3)|(1<<F_PR2)|(1<<F_QU1_2); while(1){ signed int aa=0; unsigned int bb; if( FLAGG & (1<<F_PULS) ){ FLAGG &= ~(1<<F_PULS); // Flag fuer Puls = 0 SPI_PORT |= (1<<SPI_SS); ton_0
-
Thread
arduino und dfplayer spielt einfach nichts ab
code der "irgendwie" funktioniert, führt früher oder > später zu Fehlern. Ich habe den PIR an 5V angeschlossen und den Signal Pin gemessen. Sobald der PIR Strom bekommt (ohne Bewegung), geht der Signal Pin für ca 20 Sekunden auf 3,3V. Daher spielt der DFPlayer auch sofort los. Erst nach diesen
Gio B. schrieb im Beitrag #7542174: > Ich habe den PIR an 5V angeschlossen und den Signal Pin gemessen. Sobald > der PIR Strom bekommt (ohne Bewegung), geht der Signal Pin für ca 20 > Sekunden auf 3,3V. Da hätte ich 2 Lösungen: 1. Wenn der Arduino und
-
Thread
Encoder (Drehgeber) über den I2C Bus auslesen
wo ist dein Problem? I2C ist etwas lahm dafür während ich Tasten locker mit 10ms Timer am I2C auslese (PCF8574 o. a) Entprellung nach Dannegger war der Encoder etwas lahm, ich habe sie direkt am Port mit 1ms Timer. OK man kann natürlich mit 400kHz I2C (schafft der PCF8574) auch pollen 2,5µs, das sollte doch reichen, man kann natürlich mit dem /INT auch einen IRQ triggern, aber ich denke das muss man nicht. also alle 1ms im Timer den I2C abfragen
-
Thread
mega32u2, Port lässt sich nicht schalten
Testboard, mit einem Mega32 funktioniert alles (UART, LEDs...) Der 32u2 sitzt auf einem Adapter und lässt sich anstandslos Programmieren -Spannung ist wählbar 5V oder 3,3V. Der Mega32 läuft natürlich mit 5V, der 32u2 mit 3,3V, aber auch bei 5V tut sich nicht -Programer
Hardwarefehler schließe ich aus. Versorgungsspannung ist 3,264V am Pin vom µC, der 32u2 hat ja nur einen. Das ganze sitzt auf einem ZIF 40 Sockel, der Mega32 funktioniert Tadellos - sprich UART, LED's etc gehen. Auf der vorherigen Version meines Test-Boards
-
Thread
ATMEL ARM SAMD ohne Framework programmieren
(0x3) const uint32_t pin2portConnectionTable[]= { 0, // pin 0 0, // pin 1 0, // pin 2 0, // pin 3 0, // pin 4 0, // pin 5 0, // pin 6 0, // pin 7 0, // pin 8 0, /
> Man muss statt dessen den I/O Multiplexer so konfigurieren, dass die > UART-Peripherie an die Pins angeschlossen wird. Yep. SERCOM5 pad 2 und 3 sind PB22/23, die du nehmen willst, und zwar auf Funktion D. [c] PORT->Group[1].PMUX[22 / 2].bit.PMUXE = PORT_PMUX_PMUXE_D_Val; PORT->Group
-
Thread
Schieberegister: Abfrage von mehreren Tastern
checken ob das Schieberegister (SR) so funktioniert, wie ich mir das vorstelle. Dazu würde ich 2, besser 3 LED an den Pins PD5, PD6 und PD7 brauchen. LED mit Vorwiderstand (220 Ohm, ist nicht kritisch, ich bin nicht auf Helligkeit aus) gegen Vcc verschalten. [code] µC-Pin --------|<
define NR_SR 2 // Schieberegister MC14021 #define SR_DDR DDRB #define SR_PORT PORTB #define SR_PIN PINB #define SR_PS PB0 #define SR_C PB1 #define SR_DATA PB2 #define SET_BIT(p,b) p |= (1<
-
Thread
Bistabiles Relais mit 2Spulen umschalten?
(über einen Transistor, wenn der Strom des µC nicht reicht) an einen Pin des µC-Ports. Da komst du mit 2 von den vorhandenen 8 Pins aus. Oder wenn du wirklich umpolen willst (beide oder nur eine Spule?), dann hängst du die Spule zwischen zwei Pins
Rel1 sind 3.3V vom uC...
-
Thread
Atmel Ice MK2 Com Port?
www.reichelt.de/index.html?ACTION=446&LA=0 https://www.conrad.de/de/Search.html?gclid=EAIaIQobChMIn7yN3cnI2AIV1DLTCh3hOgHWEAAYASAAEgIG2PD_BwE&search=atmel%20ice&insert_kz=NA&hk=SEM&WT.srch=1&searchType=REGULAR&externalsearch=yes&s_kwcid=AL!222!3!108776538921!p!!g!!atmel%20ice&ef_id=Wei7iQAAAAea61lm:20180108142814
schrieb im Beitrag #5272311: > Du hast was vergessen: > - Controller Typ auswählen. > - Com Port auswählen. Im Progtool kann man auch die Spannung von 5 auf 3,3v umstellen <3
-
Thread
schnelles Pin Toggeling
Hallo zusammen, ich möchte Pine eines Mikrocontrollers möglichst schnell setzen und rücksetzten. Nun habe ich diverse Mikrocontroller, vom 8051(20 mhz + 5 PLL) zum AVR(20 Mhz) bis zum CortexM3(10 mhz + 5 PLL) versucht und keiner
Stefan wrote: > Nun habe ich diverse Mikrocontroller, vom 8051(20 mhz + 5 PLL) zum > AVR(20 Mhz) bis zum CortexM3(10 mhz + 5 PLL) versucht und keiner von > denen konnte ein PIN mit einer geschwindikeit schneller als 5 MHZ > bewegen. Laut Datenblatt benötigen die Silabs
-
Thread
Bascom 2 Pineingänge an 1 Ausgang
ersetzen will habe ich eben Kabel C.5 an PinC.5, Kabel C.4 an PinC.4 und Kabel C.1 An PinC.1 des Atmega angeschlossen und wollte die 3 Schaltzustände mit dem Atmega machen. Es funst mit Befehl 1 oder 2 bestens, nur eben nicht mit 3 (also
ersetzen will habe ich eben Kabel C.5 an PinC.5, Kabel C.4 an PinC.4 und Kabel C.1 An PinC.1 des Atmega angeschlossen und wollte die 3 Schaltzustände mit dem Atmega machen. Es funst mit Befehl 1 oder 2 bestens, nur eben nicht mit 3
-
Thread
PROFET mit uC ansteuern
Hallo, ich will mit einem uC Infineon C515C einen Infineon Profet BTS50080 ansteuern. http://www.infineon.com/dgdl/BTS50080-1TEA_DS_v10.pdf?folderId=db3a304314dca389011537739e37155f&fileId=db3a30431ce5fb52011d7264d7916f32
vermutlich hunderttausende Male in HTML geklont worden. Ja ist richtig, im External-Mode wird ein Port dauerhaft strong geschaltet. Man kann sogar die Pins für RD und WR sowie die seriellen Pins RxD und TxD am Port 3 gleichzeitig als Port und Funktionspin benutzen. Ich bin für die Dinger leider Experte
-
Thread
EA DOGXL160 an Atmega328 über I2C / twi Bus ansteuern!?
Danke Spess, für die schnelle Antwort! Laut I2C - Bus Spezification ist der Bus für 3mA ausgelegt. Daher müssen die Pull-Up Widerstände größer gleich 3,3V/0,003A = 1,1k Ohm haben. Nur ändern andere Pullup's leider nichts an diesem Problem, habe ich
(SPI1, SPI_I2S_FLAG_BSY) == SET); GPIO_SetBits(SPI1_DISPLAY_CONTROL_PORT,PIN_DISPLAY_CS); } [/c] Gruß Tom
-
Thread
LED-Blitzer mit Bascom und ATtiny13
default) oder 4,8 dies kannst du wahlweise noch teilen lassen (default: 8) der standardtakt ist also 1,2Mhz. wird aber nicht dein Problem sen. [c] > Config Portb.1 = Output 'Ein Pin wird aus Ausgang konfiguriert PC0 (also Pin0 von Port C) > Led =
Ich kenn bascom nicht, aber das kommt mir komisch for: Config Pind.5 = Output sicher dass es Pind.5 und nicht Portd.5 oder Ddrd.5 heißen muss? AVR hat für IO-Ports jeweils 3 register: DDR[A|B|C|D] - hier stellt man ein , ob ausgang oder eingang (standard: eingang
-
Thread
C-Programmieren LED & Schalter
soll sich LED 8 einschalten. Wenn der Taster gedrückt wird, soll der Timer resetet werden. Pin belegung: LED1 Port D 0x08 LED2 Port D 0x10 LED3 Port D 0x20 LED4 Port D 0x40 LED5 Port B 0x01 LED6 Port B 0x02 LED7 Port B 0x04 LED8 Port B 0x08 LED9 Port B 0x10
dir den Zustand des Taster zuverlässig zurückgibt, am einfachsten über True und False. > LED1 Port D 0x08 > LED2 Port D 0x10 > LED3 Port D 0x20 > LED4 Port D 0x40 > LED5 Port B 0x01 > LED6 Port B 0x02 > LED7 Port B 0x04 > LED8 Port B 0x08 > LED9 Port B 0x10 Nun
-
Thread
5000 LEDs über I2C dimmen
braucht (insgesamt 2 Widerstände, nicht nennenswert) und nur 2 IO-Pins verbraucht (der 12F1840 hat nur 6 und 3 davon brauch ich schon für die RGB-Ansteuerung. Natürlich ist I2C nicht ganz ohne, aber da ich wiegesagt Koaxkabel
Wie immer, kaum wird ein I2C Bus über mehr als 5cm vorgeschlagen, schon machen sich alle in die Hose :) Halten wir mal fest: I2C über 2,5m ist absolut kein Problem. Zumindest wenn man ihn nicht mit 1MHz fahren will. Eine eigene
-
Thread
Rückwandbus mit I2C
Ethernet-Phy eingebaut? Die AT32UC3C haben auch 2 CANs, Ethernet und USB, die gibt es mit 64/100/144 Pins in 0,5mm Pitch - also mit 64 Pins so gross wie ein Mega644. Nur, ein AVR32 ist eben kein AVR...
verursacht. Es gibt keine billigere Möglichkeit, einen Ethernet-Knoten zu realisieren. > Die AT32UC3C haben auch 2 CANs, Ethernet und USB, die gibt es mit > 64/100/144 Pins in 0,5mm Pitch - also mit 64 Pins so gross wie ein > Mega644. Bestreite ich auch nicht. Nur hat der Mega 644 nur 40/44 Pins
-
Thread
Programmierung C515C
sbit CS1 = P4^0; // bitdefenition sbit SI = P4^2; sbit SO = P4^3; sbit CS2 = P4^4; sbit CS3 = P4^5; sbit CS4 = P1^0; sbit CS5 = P1^1; sbit CS6 = P5^0; sbit CS7 = P5^1; sbit DMS1 = P5^2; sbit DMS2 = P5^3; sbit DMS3 = P5^4; sbit DMS4
C515C und C515, 80C5xx waren nicht pin-kompatibel. Der C515C ist auch in einer anderen Technologie gefertigt als die anderen 80C5xx und C515 war. Die ganzen abgekuendigten waren im 68-pin Gehaeuse, den
-
Thread
2 LEDs in Reihe trotz Transistor schwach wenn am AVR
Daniel St. schrieb im Beitrag #3760989: > Da man den attiny ja nicht mit 2 ultrahellen LEDs belasten sollte Die Helligkeit ist dem AVR sowas von schnurz. Ihn interessiert nur der Strom. Bei 3V sind mindestens 5mA garantiert.
http://www.mikrocontroller.net/articles/Transistor#PNP.2FNPN_als_Schalter.2C_wohin_mit_der_Last.3F davon nimmst Du also die linke Schaltung.
-
Thread
2x16 LCD in C initialisieren
bekomme nicht raus wieso nicht. Ich hab die Leitungen vom display bis µC durchgemessen, alles korrekt, ich hab den ATmega163 im Makefile eingetragen und im lcd.h die Displayzeilenzahl auf 2 gesetzt. Ich benutze die selben Pins und den gleichen Port wie da beschrieben. Nur
oder anders formuliert: ich hab die Hardware entsprechend der Software angeschlossen: 1- GND 2- VCC 3- Kontrastpoti 4- RS - Port C4 5- Rw - Port C5 6- E - Port C6 7- D0 - GND 8- D1 - GND 9- D2 - GND 10-D3 - GND 11-D4 - Port C0 12-D5 - Port C1 13-D6 - Port C2 14-D7 - Port C3
-
Thread
Port wechseln für LCD-Display
PORTC notwendig ist, ist mir schon klar. Ich hatte angenommen, wenn ich als erstes PORTD und DDRD auf C umstellen, zus. zu PD2 - 4 auf PC2 - 4 (hatte mich vertan, ist PD2 - 4, nicht 3 - 5), dann ist das i.O. Offenbar aber nicht. Bitte mal den für Pete geposteten Code ansehen. @ Pete K. hier mal der
Die Routinen scheinen OK. Hier für EN an PORTC PC3, RS an PORTC PC2 und Daten 4-7 an PORTC PC 4-7. wenn die verdrahtung stimmt sollte es gehn. (JTAG ist ja aus) [c] // LCD DB4-DB7 <--> PORTC Bit PC4-PC7 #define LCD_PORT PORTC #define
-
Thread
32 Relais am Raspi um 5 Volt bei 3 Ampere zu schalten
. /Nacheinander/ schon, aber nicht /gleichzeitig/. > 32 Relais am Raspi um 5 Volt bei 3 Ampere zu schalten Warum schaltest du die 5V/3A nicht einfach mit ein paar Mosfets? (*) https://datasheet.lcsc.com/szlcsc/Ningbo-Keke-New-Era-Appliance-HK3FF-DC24V-SHG_C98127.pdf
keine 2.3A treiben, wenn alle Relais an sein sollen)
-
Thread
PORT-BIT Verwendng mit define
[c] #include "sbit.h" #define IN_A PIN_D2 #define OUT_A PORT_D5 #define OUT_A_oe DDR_D5 int main(void) { OUT_A_oe = 1; while(1) { if(IN_A) OUT_A =
so: [c] #define SBIT2(port,pin) ((*(volatile struct bits*)&(port)).b##pin) #define SBIT(port,pin) SBIT2(port,pin) [/c] dann funktionierts. Macro Magic :-)
-
Thread
Zeigt her Eure Kunstwerke! Gesperrt Bilder
Im Anhang eine uC Platine mit 96-Pin DIN Steckerleiste. Auf der Platine sind ein PIC18F8722, LM4132-2.5V, 1Mb EEPROM, TMP101, DS13307 RTC, 2x 12-bit DACs, 2x RS232 und 1x RS485, 8 LEDs(TPIC2810) und ein I2C(PCA9554) LCD
So dann geh ich auch mal unter die Poser :-) 1) WL-CSP25-0.5er pitch, 2x QFN mit 36 Pin & 0.5er pitch, 125 Orange 0402er LEDs, 3x RGB Sideleds, Hirose Standard Connector, 4 Layer, 0.6mm Printstärke, keine gepluggten Vias 2) 2x Lautsprecher, eingänge, Ausgänge
-
Thread
Arduino Custom Firmware für Fitness Armband mit NRF52
Hier scheint das Pin Mapping für die F18 zu sein: https://github.com/espruino/Espruino/commit/d334d0a92ab9c10a76949b846f2def7977f6b4c1
uD831 ist ein 8 bit I2C GPIO PortExpander - aehnlich NXP (a-la Phillips, I2C 'Erfinder') PCA6408A (oder modernere Variante A9###) - https://www.nxp.com/docs/en/data-sheet/PCA6408A.pdf ( https://www.nxp.com/docs/en/brochure
-
Thread
3,3V-Mikrocontroller-Pin über Widerstand mit 5V verbinden: Was passiert?
Hallo zusammen, ich habe folgenden Aufbau: - Mikrocontroller-Pin (STM32F103C8T6) - Widerstand - 5V-Leitung Was passiert nun, wenn der Mikrocontroller versucht den Pin auf sein Vcc=3,3V hoch zu ziehen? Welche Spannung liegt am µC-Pin an? Wird dieser beschädigt
einen AVR über ein Pin am Laufen halten wenn > die Betriebsspannung mal ausfällt... Und wenn der 3,3V µC sich schlafen legt und kaum Strom verbraucht kann Vdd versucht sein, in Richtung 5V zu wandern.
-
Thread
Kleines C-Prog geht nicht
Ja mit PORTA &= ~(1<<PA0); funktioniert es und mit PORTA = ~(1<<PA0); blinken die LEDs 0 und 2,3,4,5,6,7 abwechselnd. 3 bleibt ein! Trinke erst mal einen Kräuter! Danke
ICh weiß ja nicht welchen Controller du verwendest. Eigentlich sollte [c] PORTA = 3; _delay_ms(500); PORTA &= (0<<PA0); _delay_ms(500); [/c] funktionieren. Möglicherweise liegt so etwas vorkonfiguriertes wie JTAG auf dem Pin?