-
Thread
Mega8 Port.Pin Zustand abfragen wenn gegen GND vs.VCC
Hi Spess, So sind die Pins angelegt. //Definition der Port Aliase Relais1[@PortD,5] : Bit; Relais2[@PortD,6] : Bit; Relais3[@PortD,7] : Bit; Relais4[@PortB,0] : Bit; //ACHTUNG RelaisStatus muß negiert werden
= 128; SysLedBlink = 30; {SysTicks} SysLedBlink0 = PortD, 4, high; SwitchPort1 = PinD, $0C; //D2+D3 PolarityP1 = $00; // polarity TickTimer = Timer1, pinout; // use Timer.COMPA and its PortPin Implementation {$IDATA
-
Thread
Arduono Mega Pin ID 'Programm`
übersetzen möchtest? > Aus diesem Grund suche ich ein einfaches Programm, welches für jeden > Arduono Pin die 'Funktion' (also z.B. 'D3 oder A8) per Software-Seriell > ausgibt. Wenn du "auf" Arduino laut Arduinopinnummerierung sagst Pin 5, dann ist das D5, wobei man das 'D' weglässt. Also was möchtest
"D0"; const char d1[] PROGMEM = "D1"; const char d2[] PROGMEM = "D2"; const char d3[] PROGMEM = "D3"; const char* const tableName[] PROGMEM = {d0, d1, d2, d3}; struct PinDaten { char name[3]; // maximale Textlänge + 1 }; PinDaten pinname
-
Thread
Mehrere Signale über eine Leitung
so mega toll :-) Also ich muss da irgendwo einen Wurm drin haben. Was mir aufgefallen ist, alle Pins von Port C sind high, außer Pin 26 (PC4), der liegt bei ca. 0,12V. Woran kann das liegen? Habe schon drei neue uC ausprobiert, überall das gleiche Bild. Auch schon aufm STK500 ist das so. Wieso?
> Also ich muss da irgendwo einen Wurm drin haben. Was mir aufgefallen > ist, alle Pins von Port C sind high, außer Pin 26 (PC4), der liegt bei > ca. 0,12V. Woran kann das liegen? ohne den Code jetzt angesehen zu haben... JTAG deaktiviert? Gruß Christian
-
Thread
MCP23017 und UDN2981A
(SPI_MOSI, OUTPUT); // TO U2/U4 DATA pinMode(SPI_MISO, INPUT_PULLUP); // FREE pinMode(SPI_SCK, OUTPUT); // U2/U4 CLK pinMode(U2U4XFR, OUTPUT); // HC595 RCK and delayed G- action [/c] Pin Setups
Moin, hier ist noch ein Beispiel, wo ich gleich sechs solcher Käfer ansteuere: [c] enum HC595_REGS { U2_595, U1_595, U12_595, U6_595, U31_595 , U4_595, Last_SR}; enum U2_Bits { U2_Bit0, U2_Bit1, U2_Bit2, U2_Bit3, U2_Bit4, U2_Bit5, U2_Bit6, U2_Bit7 }; uint8_t HC595_Data[Last_SR
-
Thread
Probleme mit AVRStudio 5
C Assembler "C:\Program Files (x86)\Atmel\AVR Studio 5.1\extensions\Atmel\AVRGCC\3.3.1.27\AVRToolchain\bin\avr-gcc.exe" -Wa,-gdwarf2 -x assembler-with-cpp -c -mmcu=atmega168a -o"CombineToLong.o
" ... ".././CheckPins.c" 5.1\extensions\Atmel\AVRGCC\3.3.1.27\AVRToolchain\bin\avr-gcc.exe" ... ".././ReadCapacity.c" 5.1\extensions\Atmel\AVRGCC\3.3.1.27\AVRToolchain\bin\avr-gcc.exe" ... ".././Transistortester.c
-
Thread
Probleme mit High- und Low-Eingängen Arduino Nano
Danke für eure Tipps. Der Arduino-Code: ```cpp #include <Adafruit_NeoPixel.h> #define PIN 6 //LED-Stripe #define NUMPIXELS 66 #define SENSORPIN1 A3 //Schalter hell #define SENSORPIN2 A5 //Schalter dunkel Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRBW + NEO_KHZ800); int Sensorstatus1
r24 ; 5 while(1){} d8: ff cf rjmp .-2 ; 0xd8 <main+0x14> [/c]
-
Thread
3-Kanäle PWM messen
L->H Flanke von Kanal 2 fällt mit der H->L Flanke von Kanal 1 zusammen und die H->L Flanke von Kanal 2 mit der L->H Flanke von Kanal 3. Es reicht also, steigende und fallende Flanken von Kanal 1 und Kanal 3 auszumessen. Kanal
? Dieser muss ja auch separat abgefangen werden Nein, muß er nicht. Schrieb ich oben schon. [c] #include <stdio.h> int main() { unsigned short t1= 0xFFF0; unsigned short t2= 0x0100; printf("zwischen Zählerstand %hu und %hu liegen %hu Ticks\n", t1, t2, t2-t1); } [/c]
-
Thread
Port-Ausgang puffern für hohe Stromimpulse
Das wären bei einem 1000µF Elko etwa 13mJ Verlust (1/2*C*U^2 bei U=5V). Das entspräche im Mittel einen "Stromverlust" von 0.1µA (U*I*t = 1/2*C*U^2 bei U=5V und t=8*3600s). Der Watchdog bei einem ATTINY benötigt viel mehr (etwa 5µA). Sieht doch eigentlich
Utraschallmoduls über pnp-Transistor an einem Port-Pin (dabei >=16ms power-on boot time berücksichtigen - experimentell ermittelter Wert, das Datenblatt schweigt sich aus) - Kollektor von Q2 auf dem Board des Ultraschall-Moduls von den +5V des Moduls
-
Thread
Suche alternatives Bauteil - 2SB865
@Thomas , kein Problem ! Der Q130 liegt an der Base vom Q131 das wundert mich ja da da dann 13,3 V anliegen Der IC4 Controller gibt nur 0.7 V an Pin (56) viel zu wenig ! Er bekommt auch nur 2.4 V Spannungsversorgung anstatt 5 V. ( Pin 64 )
, dann schau ich mir jetzt mal die Reset-Schaltung genauer an , > wie > gesagt die Diode ist ok 5.7 auf der einen 5 auf der anderen Seite. Und am µC dennoch nur 2,4V?
-
Thread
Pollin LCD1602 keine Anzeige
3686400 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 Config Lcdbus = 4 Cls Locate 1 , 1 Lcd "test" Pins 5,7,8,9,10 sind auf GND gelegt
Hi! Das schaut auf den ersten Blick nicht schlecht aus, aber In Bascom: >Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , >Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 In ASM >.equ PIN_E = 6 >.equ PIN_RW = 5 >.equ PIN_RS = 4 Wo haste denn jetzt Pin_E ? Viel
-
Thread
Frage zu Endschalter an zwei µC
Danke für deine Ausführliche Antwort. Also der Endschalter ist nur 2-polig angeschlossen an den Microcontroller vom 3D-Printer. Im Prinzip so: http://www.printme3d.com/ulitmaker-endstoppack.html Sind die nicht einfach zwischen einem Digitalen Pin und Ground? Und
des Prozessors, und Arduino ändert daran nichts. > Außer, wenn du Wire nutzt, dann werden für die Pins die Pullups > aktiviert. Aber doch nur an den entprechenden I2C Pins/Leitungen, oder? Die Sache ist nämlich die, dass an dem Arduino den ich verwenden möchte dafür noch andere Sensoren über I2C
-
Thread
LCD mit 2 Controllern via Assembler ansteuern klappt nicht.
PD4 ;; ;; E: PD5 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .equ LCD_PORT = PORTD .equ LCD_DDR = DDRD .equ PIN_E = 5 .equ PIN_E2 = 6 .equ PIN_RS = 4 .equ XTAL =
; 2 rcall delay5ms rcall lcd_enable ; und 3! rcall delay5ms ldi temp1, 0b00000010 ; 4bit-Modus einstellen out LCD_PORT, temp1
-
Thread
Arduino Sleepmode mit DS3231
ein bisschen Code zusammenkopiert. Kann das denn gehen oder habe ich da grundlegende Fehler drin? [c]#include <DS3232RTC.h> #include <Streaming.h> #include <Time.h> #include <Wire.h> #include "TSIC.h" #include <SPI.h> #include <SD.h> #define SQW_PIN 3 TSIC Sensor1(4, 2); uint16_t temperature
Joachim B. schrieb im Beitrag #4461685: > auch den Thread nicht gelesen? > > er hat doch 5V, Auch den Thread nicht gelesen? Lukas D. schrieb im Beitrag #4458402: > ich benutze einen Akkupack aus 3 > AAA-Akkus mit je 1,2V also 3,6V. 5V sehen anders aus.
-
Thread
ATmega Reset Pin
Die Schaltung wird von einer Batterie versorgt und liegt bei > 3V mit einem 8MHz Quarz. Wenn gesendet wird, fällt die Spannung kurz auf 2,7V, was laut Datenblatt des ATmega aber im grünen Bereicht ist (8MHz bis 2,4V).
recommended in noisy environments. The components should be located physically close to the RESET pin of the AVR. Figure 2-1 shows the recommended circuit on the RESET line.
-
Thread
Pin dauerhaft auf 4,33V
JTAG liegt auf C2-5, passt hier also nicht.
linke Leitung --> 5V 1,2 KOhm rechte Leitung --> 5V 2,11 KOhm linke Leitung --> rechte Leitung 3,3 KOhm linke Leitung --> GND 1,28 rechte Leitung --> GND 2,22 das alles natürlich ohne angeklemmte Versorgungsspannung
-
Thread
LED 3x blinken dann LED permanent ON
angeschaut (soweit das nun mal moeglich ist). Wenn ich das richtig sehe, ist auf dem Steckbrett Pin 1 (RA2) und Pin 4 (RA5/MCLRE) mit R10k verbunden, RA5 ist jedoch mit R=10kOhm nach +Vdd zu verbinden! vgl. Link unten Von Pin 1 fuehrt ein rotes Kabel zur Steckleiste nach (?? +Vdd??) Sollte
klar-. Pinbelegung (Irrtum vorbehalten) so wie das fuer mich sichtbar / bzw. zu vermuten ist: · Pin 1 (RA2) ist offensichtlich ueber 10kOhm mit Pin 4 RA5/MCLRE/Vpp) verbunden – m.E. FEHLER · Pin 1 ist mit dem roten Kabel vermutlich mit +5V verbunden (nicht sicher erkennbar) – m.E. FEHLER
-
Thread
Port Konfigration zur Laufzeit festlegen
Das einzige was mir einfällt ist, dass du mehr mit Pointern arbeitest [C] struct portConfig { volatile uint8_t * ddr; volatile uint8_t * port; volatile uint8_t * pin; uint8_t pinMask; }; #define MAX_CHANNELS 2 struct portConfig outputConfig[MAX_CHANNELS
Beitrag #2419047: > Das einzige was mir einfällt ist, dass du mehr mit Pointern arbeitest > > [C] > struct portConfig > { > volatile uint8_t * ddr; > volatile uint8_t * port; > volatile uint8_t * pin; > uint8_t pinMask; > }; > [/C] So hab ich halt 7 (3*2+1) Byte Speicher
-
Thread
Arduino hängt sich auf - Relais und I2C Kommunikation
Watchdog eingebaut habe, allerdings bleibt der Arduino auch dort "hängen". Am Arduino Nano liegen auch 5V an, wenn er hängen bleibt. Das Relais wird über den Pin 3 bzw. 5 gesteuert. Der Arduino Nano, wieauch der Arduino Mega werden über denselben Step-Down Converter versorgt mit 5V versorgt. Ich benutze
dann beim Schalten an die 50% der AVR Versorgungsspannung in der AVR Pin Ausgangsstufe abfallen ( also ist messen angesagt ). Das Relais kriegt also nur zwischen 2-3V. Ist das genug? Gruß, Gerhard
-
Thread
LCD ausgabe mit AVR Studio
#define LCD_DATA3_PORT LCD_PORT #define LCD_DATA0_PIN 4 #define LCD_DATA1_PIN 5 #define LCD_DATA2_PIN 6 #define LCD_DATA3_PIN 7 #define LCD_RS_PORT
/**< pin for 4bit data bit 1 */ #define LCD_DATA2_PIN 2 /**< pin for 4bit data bit 2 */ #define LCD_DATA3_PIN 3 /**< pin for 4bit data bit 3 */ #define LCD_RS_PORT LCD_PORT
-
Thread
AVR als 3Phasen Oszillator
von Timer3 und auf diesem dann 3 PWMs generieren mit leicht verschobenen OCR-Registern (3 Ticks pro Cicle, da 3 Eingangspulse => OCR1C = OCR1B+1 = OCR1A+2) Hardwareverodern per 3xD und 1xR: OC1A --------|
erste Variante (wenn sie denn umsetzbar wäre) bedeutet bereits: an IRQ-Adresse und zurückspringen Pin schreiben Die Alternative ist noch um einiges übler. Bei 16MHz und 3 Phasen a 0.7Mhz bleibt nicht viel Luft: weniger als 8 uC-Cicles pro Compare-Event Wenn in diesen 5-7 Cicles hin und hergesprungen
-
Thread
Atmega32, Pin0 des PortC funktioniert nicht richtig
das JTAG hängt beim ATMEGA32/16 beim PortC an den Pins 2,3,4,5(an 0,1,6,7 nicht)
um JTAG auszuschalten musS Bit 7 des MCUCSR innerhalb 4 zyklen 2 mal auf 1 gesetzt werden z.B. assembler: ldi r16, 0x80 out MCUCSR, r16 out MCUCSR, r16 C: MCUCSR=0x80 MCUCSR=0x80 danach funktioniert port c aber JTAG und somit der interne debugger
-
Thread
Ports terminieren
Hallo, ich will zwischen 2 Controllern eine Kommunikation machen und zwar mit Bit-Bang... Echt simpel. Damit die Datenleitung und die "Clock" einigermassen niederohmig sind, will ich beide Leitungen zwischen den Controllern jeweils mit 1KOhm gegen Masse/Gnd abschließen. Wer wann sendet oder empfängt macht die Software. Frage, ist das gut so oder überflüssig? Oder machen mir die Controller beim Hochfahren nach Reset da Probleme? Gruß Rainer
-
Thread
I2C und STM8
#define I2C_DR *(unsigned char*)0x5216 #define I2C_SR1 *(unsigned char*)0x5217 #define I2C_SR2 *(unsigned char*)0x5218 #define I2C_SR3 *(unsigned char*)0x5219 #define I2C_ITR *(unsigned char*)0x521A #define
_PE ( 1 << 0 ) #define I2C_CR1_NOSTRETCH ( 1 << 7 ) #define I2C_CR2_START ( 1 << 0 ) #define I2C_CR2_STOP ( 1 << 1 ) #define I2C_CR2_ACK ( 1 << 2 ) #define I2C_CR2_POS ( 1 << 3 ) #define I2C_CR2
-
Thread
Stromaufnahme atmega8 zu hoch??
Darko Dragojevic schrieb im Beitrag #3944182: Verbrauch des atmega8 2,3 mA brauchen. Datasheet: ~6mA bei 3,6MHz und 5V fur den ATmega8, ~3,5mA für den ATmega8A.
der 250 Seiten langen beschreibung des AT mega auseinandergesetzt. Dort stand drin, dass man die Ports C0 bis C5 nur als ausgang definieren kann. Ich hatte aber überlesen, dass das die alternate functions, also die Zusatzfunktionen. Ok, sollte das klappen, dass man c0 bis c3 als eingang definieren
-
Thread
Xilinx USB schematic jetzt verfügbar
Die board is ztex http://cgi.ebay.de/USB-Modul-EZ-USB-FX2-Board_W0QQitemZ270411765712QQcmdZViewItemQQptZWissenschaftliche_Ger%C3%A4te?hash=item3ef5cc17d0&_trksid=p3286.c0.m14&_trkparms=65%3A12|66%3A2|39%3A1|72%3A1229|240%3A1318|301%3A1|293%3A1|294%3A50
I was thinking about combining these two The Ztex board http://cgi.ebay.de/USB-Modul-EZ-USB-FX2-Board_W0QQitemZ270411765712QQcmdZViewItemQQptZWissenschaftliche_Ger%C3%A4te?hash=item3ef5cc17d0&_trksid=p3286.c0.m14&_trkparms=65%3A12|66%3A2|39%3A1|72%3A1229|240%3A1318|301%3A1|293%3A1|294%3A50 And
-
Thread
Wer hat 5 min zeit mein server zu testen?
base board will match the ones on the web page. This program is adapted from \Samples\TCPIP\ssi.c. Jumper settings (Digital I/O board) ----------------------------------- JP7 2-4, 3-5 1 o o 2 | 3 o o 4 | 5 o o 6 7 o o 8 JP5 1-2, 3-4, 5-6, 7-8 JP8 1-2, 3-4, 5-6, 7-8 2 4 6 8 o o o o | | | | o o o o 1 3 5 7 Instructions
-
Thread
SRAM auslesen der von einer anderen CPU genutzt wird
code_457: ; CODE XREF: code_400+52j code:0457 mov R3, A code:0458 mov B, R6 ; B-Register code:045A xch A, R7 code:045B mov R5, A code:045C mov A, R2 code:045D
; CODE XREF: code_920+207p code:067C ; code:1904p ... code:067C mov P2, #0 ; Port 2 code:067F code:067F code_67F: ; CODE XREF: _pcopy_To_R0
-
Thread
STM32: PWM auf falschem Pin
5 (der 32 Bits hat!) im PWM-Modus laufen lassen, Eventuell kann man Timer 5 (als Master) und Timer 3 (als Slave) intern kaskadieren und einen passenden Modus für Timer 3 finden. Da muss man sich aber
nicht Jitter frei ;) und die Frage ob das in einer Bit Band Area liegt wahrscheinlich bei weiteren Pins die auf dem Port verwendet werden essenziell.
-
Thread
AtTiny2313 <-> FoxBoard G20 mit I2C
Problem" bzw ein Verhalten, dass ich nicht verstehe. Zunächst mal der Code vom Master: [code] i2c_buffer[0] = 3; i2c_buffer[1] = 6; i2c_buffer[2] = 40; i2c_buffer[3] = 50; i2c_buffer[4] = 152; I2C_WriteToDevice(); //------------ void I2C_WriteToDevice(void) { if (write(i2c_fd,
DDRB #define PORT_USI PORTB #define PIN_USI PINB #define PORT_USI_SDA PORTB5 #define PORT_USI_SCL PORTB7 #endif volatile uint8_t COMM_STATUS = NONE; //uint8_t tmp1[2];
-
Thread
3 Drähte parallel ungeschirmt
Wie verhindert man bei 3 Drähten ein "Übersprechen"? Also die Situation ist wie folgt: Ein uC hat an 2 Ausgängen je einen langen Draht angeschlossen, ein dritter ist die Masse. 10m weiter gehen die 2 Drähte auf den Eingang
3 Adern gucken aus der Wand) kann ich nichts ändern.. Ich will so im 5ms-Takt Signale übertragen.. S1----- ... -------------+ | S2----- ... ------c1--+ c2
-
Thread
BASCOM und 2*16-LCD - geht nicht?
framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 8000000 $baud = 9600 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6 Config Lcdbus = 4 Cls Locate 1 , 1 Lcd "hallo welt" End angeschlossen ist das display wie folgt: 01 GND 02 Vcc 03 GND 04 Port B6 05 GND 06 Port B5 07 offen 08 offen 09 offen 10 offen 11 Port B1 12 Port B2 13 Port B3 14 Port B4 Wo ist mein Fehler? Hardware? Software? Würde mich freuern, wenn mir da jemand helfen
-
Thread
Teensy 2.0 (atmega32u4) Mikrocontroller sterben in Schaltung
Andy Williams schrieb im Beitrag #4352039: > Die Treiberstufe wird jetzt mit 5V > statt 24V versorgt. Das macht keinen Unterschied, die Gatespannung ist weiterhin max 4,3V. Lediglich die Verlustleistung in Q2 ist geringer. Wozu sind C3 und C2, damit Q1 sie immer schön kurzschließen
nehme die aber auch mal sicherheitshalber raus. Im Anhang noch mal die aktualisierte Schaltung mit 5V auf die Push-Pull, ohne C2, C3 und 150R zwischen Port-Pin und Transistoren. Kann mir noch jemand versuchen zu erklären, warum der Teensy davon sterben kann? Danke!
-
Thread
Frage zum LCD - Header: Pins selber einstellen
/**< port for 4bit data bit 1 */ #define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN 0
/**< port for RW line */ #define LCD_RW_PIN 5 /**< pin for RW line */ #define LCD_E_PORT LCD_PORT /**< port for Enable line */ [/c] ändern ?
-
Thread
Sammelbestellung AR488 kompatibler USB-GPIB Adapter. Interesse?
dort habe ich natürlich nicht geschaut. Bleibt das "Problem" mit der USB Spannung... > The USB 3.x specifications require that all devices must operate down to 4.00 V at the device port. Das geht sich mit dem verbauten 1117 ohnehin nicht aus. Die 4.5V bei USB-2.0 aber schon. Sagen spricht
) # Ergebnis 5.045310 readtime=0.003541, nbr read calls=1 # Auswertung 5.045345 <-: bytearray(b'RMS,216.5E-3,OK') [/pre] Mit AR488: [pre] 610.510249 ->: b'arm;wait;c1:pava? rms\n' 615.510495
-
Thread
LCD an ATTiny2313
#define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN PB0 /**< pin for 4bit data bit 0 */
#define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN 0 /**< pin for 4bit data bit 0 */ #
-
Thread
Schreibweisen
------------------------- void outPorts(uint8_t port, uint8_t data) { twiStart(); twiWriteByte(0b01000000,1); // TWI-Adresse twiWriteByte(0b00000010+port,1); // Kommandoregister 2/3 -> Output P0/P1 twiWriteByte
(1 << 5), (1 << 6)); // port 0, bit 5 setzen, bit 6 löschen Achtung der allererste Schreibzugriff initialisiert mit Nullen in alle nicht explizit gesetzten bits. #define MAX_PORTS 2 static uint8_t
-
Thread
C code UART Atmega und Optimierung
int main(void) { USART_Init (MYUBRR); sei(); DDRB |= ((1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB3) | (1 << PB4) | (1 << PB5)); DDRC |= ((1 << PC0) | (1 << PC1) | (1 << PC2) | (1 << PC3) | (1 << PC4) | (1 << PC5)); while (1) { if (uart_str_complete == 1) {
|= ( 1 << PB1 ); break; case 'b': PORTC &= ~( 1 << PB1 ); break; case 'C': PORTC |= ( 1 << PB2 ); break; case 'c': PORTC &= ~( 1 << PB2 ); break; case 'D': PORTC |= ( 1 << PB3 ); break; case 'd': PORTC &= ~( 1 << PB3 ); break;
-
Thread
AVR: Bistabiles Relais mit einem Pin schalten
durchaus gefordert sein) --------------------------------------------------------------- > Mit 2 Pins lassen sich 4 Zustände darstellen, nein 2 x 3.
MCUA schrieb im Beitrag #4176981: >> Mit 2 Pins lassen sich 4 Zustände darstellen, > nein 2 x 3. nein, 3^2, wenn die Ausgänge 3 Zustände annehmen können. so wie auf dem Bild müsste es mit einem Widerstandsnetzwerk und einem 4fach OP/
-
Thread
Anfänger sucht Fehler in vereinfachtem C-Code
Wenn du C Code vereinfachen/eleganter machen willst - wirf C weg und nimm C++, damit geht das noch viel besser. Geeignete Implementation angenommen, z.B. so etwa: [c]Pin led1Pin (1 /* 1 = Port B */, 0); Pin
(!key1Pin.getInput ()); > } > return 0; > } und in C ist es ja so viel anders [c] struct Pin led1Pin = {1 /* 1 = Port B */, 0}; struct Pin key1Pin = {1 /* 1 = Port B */, 2}; int main ()
-
Thread
Komische Spannungen an AVR Pins...
sind eh alle gleich ;-) In meinem Fall ist es ein ATMega16 Schaltung? Keine! Wie gesagt, die Pins habe zum testen alle in der Luft hängen lassen, um möglichst viele Fehlerquellen auszuschließen. An welchen Pins das Problem auftritt? A0, A1, A2 und C3. Alle anderen sind in Ordnung. "Hast Du
@Volker Mein AVR hat 4 Ports, genauer A, B, C und D. Jeder dieser Ports hat 8 Ausgänge, durchnummeriert von 0 bis 7. D.h. mit "Pins ABCD 0-7" bezeichne ich die 32 Ausgänge meines Mikrocontrollers. "AVCC an +5V angeschlossen
-
Thread
Displaytech 162 an STM32DiscoveryF3 (Cortex M3)
LCD_E(1); Delay(1); //SET_TO 8-Bit (4/3) LCD_E(0); Delay(1); GPIO_ResetBits (GPIOA, GPIO_Pin_All); GPIO_SetBits (GPIOA, GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5); //2-Line Display LCD_E(1); Delay(1); LCD_E(0);
LCD_E(1); Delay(1); LCD_E(0); Delay(1); GPIO_ResetBits (GPIOA, GPIO_Pin_All); GPIO_SetBits (GPIOA, GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3); //W GPIO_SetBits (GPIOA, GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7); LCD_RS(1); LCD_E(1); Delay(1); LCD_E(0); [/c
-
Thread
AVR mit mehr als 26 I/O Ports
Ist ganz simpel Das sei die Matrix PIN0 PIN1 PIN2 PIN3 PORT7 1 2 3 F PORT6 4 5 6 E PORT5 7 8 9 D PORT4 A 0 B C Du schickst zb an PORT7 eine 1 rein. Ist eine der Tasten '1', '2', '3' oder 'F' gedrueckt, dann siehst Du entsprechend an PIN0, PIN1, PIN2 oder PIN3 diese 1, ansonsten sind die 0. Danach gibst Du PORT7 wieder auf 0 und belegst PORT6 mit einer 1. Siehst du an PIN0
-
Thread
USB-C auf CP2102N
BUS. Nun folgende Fragen: 1. Gibt es irgendwelche Probleme, die beim Verbau eines USB-C mit 24 Pins auftreten können? 2. Soweit ich das verstanden habe, reicht es, nur die Pins auf der A oder B-Seite des USB-C Anschluss zu verbinden. Stimmt das? 3. Gibt es sonst irgendwelche Dinge zu
1. Nein gibt es nicht.. 2. Dann kannst du das USB-C Kabel nicht "verkehrt" anschließen. Was meiner Meinung nach eines der Hauptargumente für USB-C ist. Also beide Seiten anschließen 3. Die Datenleitungen sind differentiell auszulegen
-
Thread
EA DOG-M 3,3V 4-Bit
dogm_write_check(0, 0x78); // Contrast Set: C3=1, C2=C1=C0=0 _delay_us(30); // 30us delay dogm_write_check(0, 0x5E); // Power/ICON/Contrast: Icon=1, Bon=1, C5=1, C4=0 _delay_us(30);
2-Zeilen, 3,3V 4-Bit geschrieben für MSP430: [c] /////////////////////////////////////////////////////////////////////////////////////////////////// /*! * \brief LCD Display Dog-M initialisieren
-
Thread
C Objekte als Struct effizient kapseln
sbi(ad_data->port_cs->OUT, ad_data->pin_cs); } [/c]
Compiler generierte Assembler-Output: [avrasm] test: ldi r24,lo8(-1) out 0x17,r24 sbi 0x14,3 sbi 0x15,3 ldi r24,lo8(123) out 0x18,r24 cbi 0x15,3 sbi 0x15,3 .L2: sbic 0x13,5 rjmp .L2 ret [/avrasm] Datenspeicher wird außer für den Programmstack keiner benötigt. Die
-
Thread
Neue ATtinies 441 und 841
spess53 schrieb im Beitrag #3403637: > Mit 2 USARTs und damit auch bis zu 3xSPI möglich. Wie das? Den USARTS fehlt SCK. Praktisch ist auch, dass der ATtiny 841 echtes SPI und I2C hat. Eigentlich genau der richtige Controller, um bei extrem
A. K. schrieb im Beitrag #4001559: > ... Datasheet schreibt: > MOSI PA6 > MISO PA5 > SCK PA4 im Kapitel "24.3 Serial Programming" bzw "24.3.1 Pin Mapping". Kaum zu glauben, auch das steht wirklich im DB.
-
Thread
Display mit Controller KS0108 - Welche Datein?
noch mal zusammenfasse Datenleitung Display AT1284p ---------------------- 7 - DB0 Port A0 8 - DB1 Port A1 9 - DB2 Port A2 10 - DB3 Port A3 11 - DB4 Port A4 12 - DB5 Port A5 13 - DB6 Port A6 14 - DB7 Port A7 4 - D/I Port D6 5 - RW Port
LED. Belegung entspricht dabei dem RN Standart. Dabei ist Pin1 - DB 0 und weiter Pin 8 - DB 7. Auf dem zweiten Anschluss liegen dann die Steuranschlüsse GLCD Buchse Platine 4-D/I - Pin 7 5-RW - PIn 6 6-E - Pin 3 15-CS1 - Pin 1 16-CS2 - Pin 2
-
Thread
SD-Karte wird nicht erkannt NetIO
werden muss? Muss das so sein? Ausserdem habe ich in der config.h folgende Portinitialisierung (Port D) vorgenommen: [c] // Port D-0 = USART 1 RxD // Port D-1 = USART 1 TxD // Port D-2 = USART 2 RxD // Port D-3 = USART 2 TxD // Port D-4 = SD-Karte Pin 2 - SPI_DI Input // Port D-
(Toschiba (s.Bild), AnyCard SD und Transcend SD, alle 1GB groß) Das ist jetzt meine Config: [c] // Port D-0 = USART 1 RxD // Port D-1 = USART 1 TxD // Port D-2 = USART 2 RxD // Port D-3 = USART 2 TxD // Port D-4 = SD-Karte Pin 2 - SPI_DI Input // Port D-5 = SD-Karte Pin 5 -
-
Thread
Bedarf an eigenbau STM32F429 Evaluation Board ?
Varistor) bis etwa 60V, EMV Maßnahmen on Board - Anschluss für LiPo-Batterie mit integriertem Lader - 3 Pinheader mit zusätzlich aufgelegten: 2xSPI, 1x USART, 1x UART, 3xI2C, 2x 4CH Timer, 2x 2CH Timer, RTC AF1/2, DACOUT, 3x ADCIN - können auch als normale GPIOs verwendeet werden. - Leiterplatte 4lagig
of 4, one SPI port on, and all timers on) Power consumption, power-down mode: 4 µA (wake-up timer active) On-chip peripherals UART, I 2 C, and 2 × SPI serial I/O 16-bit PWM controller 19-pin multifunction