-
Thread
AVR Attiny10 External Interrupt in C
00000000 00000000 000000ec 2**0 CONTENTS, READONLY 3 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 0000011c 2**2 CONTENTS, READONLY 4 .debug_aranges 00000028 00000000 00000000
) { 28: 1f 93 push r17 2a: 0f 93 push r16 2c: 0f b7 in r16, 0x3f ; 63 2e: 0f 93 push r16 30: 10 e0 ldi r17, 0x00 ; 0 32: 4f 93 push r20 34: 5f 93 push
-
Thread
EMS > ESP8266-12 WLAN-Modul
Und hier das zugehörige Layout.. - Ext. Port auf 16pin erweitert - GPIO15 auf Ext. Port gelegt - erfordert im Normalbetrieb einen Jumper zw. Ext.Port, Pin 3-4 - Dummy Solder Jumper für Buck-Konverter /SHDN
I can ship the PCBs to Belgium. Simply send me a private Msg with your complete address. 1 PCB: 2,90€ 2 PCBs: 5,50€ I bought the step-down converter from http://www.exp-tech.de/pololu-3-3v-300ma-step-down-spannungsregler-d24v3f3. The BOM is nearly complete - found that I missed the clamp
-
Thread
Interrupt während While-Loop
dem etwas wiederholt wird. Bei einem if wird nichts wiederholt. Ein if ist eine Auswahl aus 2 Möglickeiten b) Kann man generell nicht sagen. Ob man [c] if( Variable == 1 ) ....1 else if( Variable == 2 ) ....2 else if( Variable == 5 ) ....3 else ....4 [/C] schreibt, oder ob man da ein [C] switch( Variable ) { case 1: ....1 break; case 2: ....2 break; case 5: ....3 break;
-
Thread
Pollin LCD Displays
&= 0x08; if((data_temp) && (i == 0)) sbi(LCD_DATA_4_PORT,LCD_DATA_4_NR); else if((data_temp) && (i == 1)) sbi(LCD_DATA_5_PORT,LCD_DATA_5_NR); else if((data_temp) && (i == 2)) sbi(LCD_DATA_6_PORT,LCD_DATA_6_NR); else if((data_temp)
kein vernünftiges Datenblatt vorhanden ist ;) Versuch es mal so für KS066 1.) 500 ms warten 3.) 0x02 senden 3.) 0x02 senden 3.) 0x0C senden 5.) 0x0F senden 6.) 0x06 senden
-
Thread
Raspberry Pi & PCF8574 wird nicht erkannt
Da habe ich wohl hier 2 Pins vertauscht, der Aufbau war richtig. Ich habe sie testweise mal gewechselt und dann habe ich erneut kein Chip mehr angezeigt bekommen. Also SDA Pin 15 ist beim Pi an 3 und SCL, Pin 14 an Pin 5 beim
pcf8574Setup(PCF8574_2, 0x39); pcf8574Setup(PCF8574_3, 0x3A); ... digitalWrite(PCF8574_2 + 3, 1); würde dann den vierten IO-Pin des zweiten PCF8574A schalten >mit: >"digitalWrite(BASE_I2C + 7, 1);" >setzt
-
Thread
ATmega328PB nach Berührung Flash kaputt
. Im Vorgänger mit dem AT89C51CC03 waren es 20MHz mit 2*33pF.
dazu, den (eigentlich verbotenen) Zustand eines offenen Pins zu verhindern und diesen auf ein festes Potential zu ziehen. Um den worst-case zu simulieren, leg alle offenen Eingänge über 1 kOhm an VDD/2, bei einem 5 V-Controller also auf 2,5 V. Dann sind alle
-
Thread
STM32L431RC - Probleme mit Stromsensorenauswertung
(P6_green_GPIO_Port, P6_green_Pin, GPIO_PIN_RESET); //LED grün aus HAL_GPIO_WritePin(P6_red_GPIO_Port, P6_red_Pin, GPIO_PIN_SET); //LED rot an HAL_GPIO_WritePin(P6_blue_GPIO_Port
viel Spannung einem Inkrement entspricht, komme ich auf 3,3V/4096 Inkr = 0,806 mV / Inkrement. Da leuchtet quasi bei 5mA höchstens 2 Inkremente auf, das könnte zu wenig sein. Ich denke ganz ohne Verstärkung gehts nicht. Habt ihr da noch eine Idee?
-
Thread
Tasterabfrage nach Dannegger – plötzlich unplausible Resultate
#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 4 /**< pin for 4bit data bit 0 */ #define LCD_DATA1_PIN 5 /**< pin for 4bit data bit 1 */ #define LCD_DATA2_PIN 6 /**< pin for 4bit data bit 2 */ #define LCD_DATA3_PIN 7 /**< pin for 4bit data bit 3 */ #define
-
Thread
2 Stellige 7 Segment Anzeige
); // Set all pins A0-A5 HIGH PORTD &= ~(numbitmaskd); // Set D2-D5 and D6+D7 HIGH PORTD |= digbitmask; // deselect digit }[/c] Die Schleife musst du auf zwei Durchläufe reduzieren, die if-Bedingungen
würdest... Ausserdem fände ich es logischer die Zehnerstelle "Digit1" und die Einerstelle "Digit2" zu nennen... [c] const unsigned char digit_port_data[10] = { 0x3F, // 0 0x0C, // 1 0x5B, // 2 0x5E, // 3 0x6C, // 4 0x76, // 5 0x77, // 6 0x1C, // 7 0xFF, // 8 0xFE
-
Thread
Erstes Board: 7-Segment Anzeige
Ich benutze immer Kerkos (http://www.reichelt.de/?;ACTION=3;LA=2;GROUP=B353;GROUPID=3169;ARTICLE=9265;START=0;SORT=artnr;OFFSET=100;SID=28obSbJawQARwAAFmAEk08e15a1425d7e5d15447d3ed23365f81e) wobei die Abbildung nicht stimmt) die haben ein Raster von 5mm
Hallo, klar habe mit PortA müll geschrieben. Meinte PortC also den ADC rauslegen. Wäre z.B. eine erweiterung. Dann muss aber noch ein Kondensator zwischen ARef und GND (PIN 22). Und wenn möglich noch eine Fest-Induktivität
-
Thread
Warum sind STM32 I/Os auf 16 Bit kastriert?
, wo ein IO-Port keine 16 Bit hat sondern weniger, je nach Anzahl der Pins des uC-Gehäuses. Da alle Pins am uC Mehrfachbelegungen hat macht es keinen Sinn, einen 32bit IO-Port zu definieren, da die Wahrscheinlichkeit
ARMs sowieso nicht LPC810 - atomic 1 cycle wenn man 0 und 1 vorher vorhält: LDR R1, PIN0BASE ; R1=PIN0BASE=0xA0000000 MOVS R2, #0 MOVS R3, #1 STRB R2, [R1, #4] ; clear P0_4 STRB R3, [R1, #4] ; set P0_4
-
Thread
Primitiver Computer im Eigenbau
Wieso denn nur 3 pins? In dem Tutorial steht man braucht 4 pins.. Das mit der 4*4 Matrix musst du mir nochmal erklären. Soll ich jetzt Besipielsweise einen Taster an 2 Pins anschließen und das mit den anderen auch machen
passt das ja ganz gut... Ich habe mir überlegt statt dieser 4x4 Matrix was anderes zu machen: 4 pins werden benutzt und da werden die taster logisch angeschlossen Beispielsweise: Taste1 = PB0 Taste2 = PB1 Taste3 = PB0, PB1 Taste4 = PB2 Taste5 = PB0, PB2 usw. Wie wäre das? Den Quarz und die
-
Thread
AVR resetiert bei zu vielen LED's gleichzeitig (Spannungseinbruch)
. Also die PCx sind bei meiner Schaltung immer HI. Diese Reinhenfolge immer einhalten? 1.) PORT 2.) DDR
der Rest der Schaltung fast nur aus LED besteht :-) > Diese Reinhenfolge immer einhalten? > 1.) PORT > 2.) DDR In deinem Fall wäre es besser; ja Wenn der Eingang zum Ausgang wird sollte sichergestellt sein, dass die entsprechenden Pins garantiert auf 0 sind.
-
Thread
Arduino zu schwach für RC5??
. ich habe jetzt die ganze zeit gesucht und schon einiges rausgefunden: Der ATMEGA328 hat 6 Pins die mit PWM verwendet werden können, jeweils 2 teilen sich einen Timer/Counter Register: TCCR0B, TCCR1B, und TCCR2B. Die letzten 3 Bits des Registers sind der Vorteiler, damit kann ich also für die Anschlüsse OC1A, OC1B, OC2A, OC2B (Pins 9, 10, 11 und 3) eine 32KHz Frequenz modulieren. ich brauche aber 36KHZ. Dass wird in einem Beispiel so gemacht: [c] TCCR2A = _BV(WGM21) | _BV(COM2A0); TCCR2B = _BV(CS20); // 36kHz
-
Thread
LEDs an PIC ausglimmen lassen
************************ ORG 0x60 pwm RES 1 leds RES 8 led RES 1 loops RES 1 loops2 RES 1 PINWatch RES 1 ;0=B4; 1=B5; 2=B6; 3=B7; 4=B3; 5=B2; 6=B1; 7=B0 TKTZ1 RES 1 TKTZ2 RES 1 TKTZ3 RES 1 w_temp RES 1 status_temp RES 1 startPWM macro local done
****************************************************************** ;*** LED-Effekte für einzelne Pins A5LED bsf PORTB, 3 call Wait100 bsf PORTB, 2 bsf PORTB, 4 call Wait100 bcf PORTB, 2 bcf PORTB, 4 bsf PORTB, 1 bsf PORTB, 5 call Wait100 bcf
-
Thread
anfänger bei assembler
out1h ret out3h: ;N1 / Q2 = High sbi PORTB,2 ;Signal S2=Fahrt an Pin 4c rcall Takt01 rcall out1h ret out4h: ;N1 / Q3 = High sbi PORTB,3 ;Signal S3+S5=Fahrt an Pin 5c rcall Takt01 rcall out1h ret out5h: ;N1 / Q4 = High sbi PORTB,4 ;Textmodul=EIN an Pin 6c rcall Takt01 ;ohne Verzögerung
-
Thread
STM32 ADC und SPI Problem
Beitrag #4510718: > Ich denke hier habe ich schon das Möglichstes versucht (?): SPI liegt > auf PortA, ADC auf PortB und PortC. So wie ich das auf dem Foto sehe nutzt du für SPI PA5,6,7, das sind alles pins die auch als adc genutzt werden können, also mit an der ADC Peripherie hängen. Mach ein Pin-remapping auf die Pins B3,4,5 um weiter SPI1 nutzen zu können oder weich auf SPI2 oder 3 aus. Hauptsache weit weg vom adc und keine pins nutzen die damit geteilt werden. Reginald L. schrieb im Beitrag
-
Thread
7-Segment-Anzeigen mit gemischten Ports
2 - - C3,C4,D3,D2,D0 3 - - C3,C4,C5,D3,D0 Zehner - 0 - B4,B5,B7,B6,C0,C1 - 1 - B5,B7 - 2 - B4,B5,B6,C0,C2 - 3 - B4,B5,B7,B6,C2 - 4 - B5,B7,C1
Das sind bereits die Ports des ATMega48, um die LEDs der Segmente richtig anzusteuern. In der a-bis-g-Notation der Segmente wäre dies: C3,C4,C5,D3,D2,D1,D0 = a3,b3,c3,d3,e3,f3,g3 B4,B5,B7,B6,C0,C1,C2 = a2,b2,c2,d2,e2
-
Thread
Fragen zum 8255
ich gedacht habe, sind die Kontrollpins der 8255: /RD, /WR, A0, A1, /CS - die könnten auch über IO-Ports von µcontroller angesprochen werden, d.h. du steuerst vollkommen über die IO-Pins vom µC, dann könntest du die /CS Leitungen von mehreren 8255 auf einzelne IO-Pins anschließen und sie so selektieren
1. Initialisieren 2. Adresse Anlegen an A0 und A1 3. Daten an den Bus anlegen 4. Flanke setzen (CS) 5. Daten werden an dem ausgewählten Port ausgegeben und "latched" also bleiben solange an dem Port bis der Port geändert
-
Thread
Arduino 4-Pin Lüfter PWM
[c]void SetFans(uint16_t _level1, uint16_t _level2) { level1 = _level1; level2 = _level2; DDRD |= (1<<DDD5); // Set Pin19 (PortD5, OC1A) as output DDRD |= (1<<DDD4); // Set Pin18 (PortD4
Lass doch den Compiler die Registerzugriffe machen: [c]ICR1 = 640; OCR1A = level1; OCR1B = level2; [/c] rtfm, Jörg
-
Thread
Relais direkt an AVR
https://www.reichelt.at/Reedrelais/DIP-7212-D-5V/3/index.html?ACTION=3&LA=446&ARTICLE=27651&GROUPID=7617&artnr=DIP+7212-D+5V&SEARCH=Reedrelais%2B5V Relais mit Diode 5V 10mA, Kontakt 1A
Schottkydiode versehen und über PWM angesteuert. Über Oszi habe ich mir das Ergebnis angeschaut: A5W-K Miniatur Relais 140mW 5V ca. 30 mA Konakt "Ein" nach 2,7ms Maximum Strom nach 3,4ms Tastverhältnis: Relais "aus" bei D < 25% f >7kHz DS4E-S NAIS 200mW 5V ca. 40mA Konakt "Ein"
-
Thread
Einfach-Messdatenerfassung
, 16bit. 28pins. DSP. 250000 Mess/s. 8V,+-5V,+-10V AS8500 1 Kanal, 16bit. 16pins. PGA. 16000 Mess/s. LTC2383-16 1 Kanal, 16bit. 16 pins. 1MSps. LTC2451 1 Kanal, 16bit. 8 pins. 60 Mess/s. I2C LTC2452 1 Kanal
12bit ADC kostete 7.41 EUR. Leider waren dies alles 80 pin Gehäuse. Ein ADuC848BSZ8-5 hatte 10x 16bit ADC 1x 12bit DAC und 2x 16bit DAC für 6.40 EUR. Mit etwas suchen lässt sich wohl was Interessantes finden.
-
Thread
Bitte helft mir. Schon wieder AtMega16
Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4 Cls Do Locate 1 , 1 Lcd "hello" Wait 200 Loop also nur das nötigste. es funzt einfach
@ holger habe ich $crystal = 1000000 Config Lcdbus = 4 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4 Initlcd .... passiert nichts. µC kaputt? aber warum?
-
Thread
Assemblerprogr. LCD ansteuerung will nicht funktionieren
RW, E .equ DBddr= ddrd ; datenrichtung ausgabe .equ RWddr= ddrc ; datenrichtung rs, rw, e .equ pine= 3 ;PD3 = Pin5 .equ pinrs= 5 ;PD2= Pin4 .device mega8 .include "m8def.inc" rjmp start ;****************Warteschleifen******************* ms2: ldi r24, low (125
könntest alles über einen Port senden. Z.B. Portd in dem Format: 7 6 5 4 3 2 1 0 EN RS RW D a t e n b y t e
-
Thread
Eigenentwicklung um 24 Bit Daten aus Datei parallel auszugeben
Beitrag #7178377: > Wie kann ich elegant 24 Bit Daten aus einer Datei einlegen und diese an > 24 Pins mit der gewünschten Geschwindigkeit parallel ausgeben? Mit einem 32 bit Prozessor, der auch 32 bit Ports hat, wie AVR32. Noch eleganter per zeitgebergetriggetem DMA. Ansonsten 3 8 bit ports
500kHz ist ziemlich lahm. Mit einem STM32F40x kannst du das in einen Timer packen und die Werte an 2-3 Ports ausgeben. Bei 168 Mhz Takt hast du 336 Takte... das reicht locker. Evtl. geht es sogar mit zwei DMAs, dann langweilt sich der MCU dabei sogar. schönen Gruß, Alex
-
Thread
Probleme mit einem Programm In C für PIC 12F629
@ GPIO.3; // Port Pin 4 definieren an dem der Schalter angeschlossen ist dieser Eingang ist immer ein Eingang bit Led_1 @ GPIO.0; // Port Pin 7 definiert als Led 1 Ausgang bit Led_2 @ GPIO.1; // Port Pin 6 definiert als Led 2 Ausgang bit Led_3 @ GPIO.2; // Port Pin 5 definiert als Led 3 Ausgang bit Led_4 @ GPIO.4; // Port Pin 3 definiert als Led 4 Ausgang bit Led_5 @ GPIO.5;
-
Thread
Q3D Stromzähler per IRDA und RS232 auslesen
Bzw. kann ich diese nutzen um meinen Q3D auszulesen? 2. Wie kann ich das ganze ohne einen Oszillator testen? Zur Zeit nutze ich einen Serial Port Monitor. 3. Hat jemand schon ein Programm oder ähnliches geschrieben um die Daten auszulesen
[c] ESY5Q3DA1014 V3.03 1-0:0.0.0*255(1050000650) 1-0:1.8.0*255(00000000.6400000*kWh) 1-0:21.7.255*255(000000.00*W) 1-0:41.7.255*255(000000.00*W) 1-0:61.7.255*255(000000.00*W) 1-0:1.7.255*255(000000.00
-
Thread
Port auf HIGH oder LOW?
Irgendwo hab ich hier einen dreher drinn. Komm aber nicht drauf: [c] #define OUT_DDR DDRC #define OUT_PORT PORTC #define OUT1 0 #define OUT2 1 #define OUT3 2 #define OUT4 3 #define OUT5 4 #
Dann hab ich hier auch noch ein Problem: [c] #define KEY_DDR DDRB #define KEY_PORT PORTB #define KEY_PIN PINB #define KEY0 7 #define KEY1 6 #define KEY2 0 #define KEY3 1
-
Thread
Kontrolle Schaltung, Verdrahtungsfragen
Lautsprecher anbetrifft @Gerald K: Ich könnte diesen doch dann > gleich mit einem 1k Widerstand an den Port Pin Hängen oder ? Bist du dir im Klaren, dass der Beeper mit einem vom µC erzeugten Tonsignal angesteuert werden muss? 2 oder 4 kHz Rechteckschwingung mit 1.5V. An 24V darfst du den auf keinen Fall
Lautsprecher anbetrifft @Gerald K: Ich könnte diesen doch dann >> gleich mit einem 1k Widerstand an den Port Pin Hängen oder ? > Bist du dir im Klaren, dass der Beeper mit einem vom µC erzeugten > Tonsignal angesteuert werden muss? 2 oder 4 kHz Rechteckschwingung mit > 1.5V. Das ist mir bewusst, nur
-
Thread
Raspberry Pi 3 mit WLAN und Bluetooth und 64 Bit
der lahmen CPU, kannte ich bisher nicht. Aber für das, was das Ding kosten wird, krieg ich bestimmt 5 Raspberry Pi 3.
Hallo zusammen, Beim großen"C" gibt es für den Pi für wenig geld sogar einen mSATA zu Usb Adapter der mittels normalen Mountigsatz auch richt angebaut werden kann. Durch den 3,3V LDO kann er auch direkt an den USB Port des Pi angeschlossen
-
Thread
t6963c und Pegelwandler
Wenn dein µC 5V-tolerante Pins hat, musst du nur gucken, ob der High-Pegel vom µC ausreichend für den T6963C ist, um ein High zu erkennen. Andernfalls, wenn dein µC open-drain-Konfiguration für die Ports unterstützt
Die STM32 sind bei einem Teil der Pins 5V-verträglich. Grob gesamt bei fast allen Pins die nichts mit Analogfunktion zu tun haben. Und 5V-verträglich müssen nur die Pins sein, die als Input arbeiten. Der T6963c wiederum ist mit Vih=2,8V
-
Thread
STM32F4 - CAN2 empfängt nichts
RCC_AHB1Periph_GPIOB #define CAN_CLK RCC_APB1Periph_CAN1 #define CAN2_RX_PIN GPIO_Pin_5 #define CAN2_TX_PIN GPIO_Pin_6 #define CAN2_RX_SOURCE GPIO_PinSource5 #define CAN2_TX_SOURCE GPIO_PinSource6 //Port definitions #define CAN2_COM_PORT GPIOB
Enable GPIO clock */ RCC_AHB1PeriphClockCmd(CAN2_GPIO_CLK, ENABLE); /* Connect CAN pins to AF9 */ GPIO_PinAFConfig(CAN2_COM_PORT, CAN2_RX_SOURCE, GPIO_AF_CAN2); GPIO_PinAFConfig(CAN2_COM_PORT, CAN2_TX_SOURCE, GPIO_AF_CAN2); /* Configure
-
Thread
Falsche Ausgangsfrequenz
DDRA #define TEST_PIN PINA #define SYNC_PORT PORTD #define SYNC_PIN PIND #define SYNC_DDR DDRD #define SYNC_OUT 5 //OC1A am Pin5 ISR(TIMER1_COMPA_vect) { TEST_PORT = ~TEST_PIN; } int main(void) {
Total 10 cycles" "\n\t" : :"r" (ad0),"r" (ad1),"r" (ad2),"e" (signal),"I" (_SFR_IO_ADDR(PORTA)), "I" (_SFR_IO_ADDR(SPCR)) :"r18", "r19" ); } [/c] 1) Was bedeutet "1:" in der 5. Zeile? 2) Was bedeutet die 3 letzte Zeilen : :"r" (ad0
-
Thread
SED1520 - Pollinkompatibel und flink
SED1520_RW (1 << 0) #define SED1520_E (1 << 3) #define SED1520_A0 (1 << 6) #define SED1520_CS1 (1 << 1) #define SED1520_CS2 (1 << 5)[/c] D.h. RES ist nicht angeschlossen RW ist an PortD Pin Nr. 0 A0 ist an PortD Pin Nr. 6 E ist an PortD Pin Nr. 3 CS1 ist an PortD Pin Nr. 1 CS2 ist an PortD Pin Nr. 5 PortC ist an den Daten-Pins in selber Reihenfolge angeschlossen. [EDIT] Hast du auch das ganze Zeug mit den Kondensatoren
-
Thread
USB RFID Tag Leser
stecken kann - war diese wechselnden Belegungen echt leid. Funktionskontrolle an IC1 EM4095: Pin 2,3,6 109.69 kHz Rechteck Pin 4,7,9,10,11 High Pin 8 Eingangspegel um 2,5V ca. 109 kHz Pin 12,14 Low Pin 13 500mV Pin 15 2,5V Wenn eine Metallfläche dicht an die Platine kommt, ändert sich
Hallo, an meinem USB Leser habe ich etwa folgende Werte: Pin 2 EM4095 (RDY/CLK): 5 Vpp Rechteck ~125 kHz Pin 3 EM4095 (ANT1): 5 Vpp Rechteck ~125 kHz Pin 8 EM4095 (DEMOD_IN): ~ 400 mVpp Sinus mit vielen Oberwellen Zwischen PCB Antenne und R1: ~ 4 Vpp Sinus
-
Thread
LCD DEM16217
[c] _delay_ms(50); // Wait for more than 50 ms after VDD rises to 4.5V. PORTA |= ( ( 1 << PA3 ) | ( 1 << PA4 ) | ( 1 << PA5 ) ); // 2-line mode; 5 x 7 dots. _delay_ms(1); // Wait for more than 1 ms. PORTA &= ~ ( ( 1 << PA0 ) | ( 1 << PA1 ) | ( 1 << PA2 ) | ( 1 << PA3 ) | ( 1 << PA4 ) | ( 1 << PA5 ) | ( 1 << PA6 ) | ( 1 << PA7 ) ); // Alle Pins an PORTA auf Low setzen. PORTA |= ( ( 1 << PA0 ) | ( 1 << PA1 ) | ( 1 << PA2 ) | ( 1 << PA3 ) );
-
Thread
ISP zur Kommunikation zwischen einem ATmega und einem RPi
Marvin K. schrieb im Beitrag #7055643: > Ich habe gelesen das man bei I2C erst noch einen Level Shifter braucht, > um aus den 5V des AVR die 3.3V des RPi zu machen. Betreibe den ATmega328P nicht mit 5V. Dann hast du das Problem nicht. Aber richtig, wenn du ihn mit
beim Programmieren an, Du brauchst keine ISP-Adapter mehr (ggf. macht ja auch die Doppelnutzung der Pins Probleme). Den STK500 kannst Du gleich mit entsorgen ;-) SPI und I2C mit den neuen ist super einfach. Geht alles ausreichend genau ohne Quartz, mit 3,3 oder 5 oder 1,8V bis 32 MHz. Überlege es Dir,
-
Thread
lib für Pollin LCD (WINTEK2704)
Leider funktioniert das Beispiel von Stefan bei mir nicht. Ich habe das Display komplett am Port C angeschlossen. Erst hatte ich mich mit den Anschlüssen vertan. C0 -> D0 C1 -> D1 C2 -> D2 C3 -> D3 C4 -> RW C5 -> RS C6 -> E1 C7 -> E2 Mittlerweile habe ich dann die Datenanschlüsse
Ich habe das LCD von Pollin und folgende Konfiguration: #define LCD_DATA_PORT PORTA //Port on which the 4 LCD datapins are connected to #define LCD_DATA_OFFSET 0 //Offset for data pins (e.g. 0 = PIN0..PIN3, 2 = PIN2..PIN5) #define LCD_CTRL_PORT PORTA //PORT on which
-
Thread
SPI mit 2 Mastern und 2 Slaves entkoppeln
Ram-Buffer sind natürlich bei strom > aus weg. Das kann man ändern. Wenn Du konsequent alles in 2.5V/3.3V Low-Power-Technik realisiert hast, kannst Du die Versorgungsspannung problemlos mit einem großen Kondensator puffern. Wenn Du dann einen "Strom weg" Interrupt bekommst, hast Du immer noch genügend
ins FRAM zu schreibt - brauche ich so oder so. und dann sieht die "hauptschleife" wie folgt aus: [c]while (1) { sleep(); }[/c] Und auf der anderen Seite brauche ich nur einen IRQ handler der mich nach einen pin state change (z.b: pins FRAM1 und FRAM2 CS from "can-receiver" - vieleicht noch ein Pin
-
Thread
AVR-Studio 5
hi, hat denn nun schon jemand das studio 5 dazu gebracht, c++ zu übersetzen?
Bei mir startet das Studio 5 in 6 sekunden. Win 7, Phenom II X2 3,1 GHz, 4GB DDR2, allerdings von SSD. Dass es beim Start von HDD zum kaffe holen reicht kann ich aber kaum glauben. Wenn das keine überspitzte formulierung ist passt
-
Thread
Zwei Prozesse nutzen einen Vektor. Geht das so?
= 6; uint8_t iCPLD2No = 2; uint8_t iCPLD2Get0Pin = 5; uint8_t iCPLD2Get1Pin = 6; uint8_t iCPLD2StateGET0 = 0; uint8_t iCPLD2StateGET1 = 0; int32_t int32CPLD2DisplayValue = 0; uint8_t iCPLD2DisplayRowStart
// *iGet1State &PORTB, // *iGet1Port iCPLD2Get1Pin, // iGet1Pin &PINC, // *iDataInputPort &int32CPLD2DisplayValue, // int32DisplayValue iCPLD2DisplayColumnStart, //
-
Thread
LED Multiplexing
<|--+ +--|<|--+ | | | | | Pin1 Pin2 Pin3 Pin4 Pin5
<|--+ +--|<|--+ +--|<|--+ > | | | | | > Pin1 Pin2 Pin3 Pin4 Pin5 PIN1-PIN5 wäre dann die Versorgung. Wo wird hier die Masse angeschlossen? Mir schwebt zwar schon ein wenig vor, was Du dir hierbei gedacht
-
Thread
USB 3.0 auf USB-C Buchse
an das Notebook ( An der stelle mit dem Kensingten Look ) zu setzten allerdings nicht mit einer USB 3.0 Buchse sondern mit einer USB-C Buchse . Ich finde aber nirgens einen Belegungsplan um den USB C Buchse mit 3.0 zu verbinden . Mir ist klar das die pins Gespiegelt sind aber welcher Pin muss von
Sirius P. schrieb im Beitrag #6709328: > Ich finde aber nirgens einen Belegungsplan um den USB C Buchse mit 3.0 > zu verbinden . Mir ist klar das die pins Gespiegelt sind aber welcher > Pin muss von USB 3.0 mit welchen USB-C verbunden werden . Nun, deine Steckkarte hat zwei USB3 Anschlüsse
-
Thread
ATtiny13 und "mySmartUSB light" einfache ISP Programmierung funktioniert nicht!
Auf dem Bild im Posting vom 21.09.2011 18:46 kann man erkennen, das die gelbe Leitung, die an Pin 5 der Buchse angeschlossen ist, also die Reset-Leitung, an Pin 7 (oder Pin2, kann die Ausrichtung des Tinys nicht genau erkennen) des Tinys angeschlossen ist. Beides ist falsch. Es müsste Pin 1
eine ISP Buchse und fertig. Auch für die schaltbare VTG gibt es keine externe Verschaltung der VCC Pin an der ISP Buchse wird direkt vom Programmer mit Spannung versorgt (aus dem USB Port). Und zwar nur während des Programmiervorgangs. Das ganze ist sogar noch zwischen 5 und 3.3 Volt wählbar! Natürlich
-
Thread
Mikrocontroller kompatibel mit USB bzw. programmierbar?
Hallo Mis, ich habe USB mit diesem Board begonnen: http://www.ehajo.de/baus%C3%A4tze/smd-baus%C3%A4tze/atmega32u2-breakout-board.html bin aber relativ schnell auf dieses umgestiegen, das hat auch analoge Eingaenge: http://www.ehajo.de/baus%C3%A4tze/bedrahtete-baus%C3%A4tze/atmega32u4
Soweit ich mich richtig informiert habe, ist JTAG aber mehradrig: http://www.aliexpress.com/item/5x70CM-10-Pin-USBISP-USBASP-JTAG-AVR-Download-Wire-Ribbon-Cable-2-54mm-hot-et/32251268777.html Sprich: Dieser uC ist nicht kompatibel mit JTAG?
-
Thread
AVR eigene Pins verbinden?
funktioniert daher nicht: [c] PORTB |= (1 << 3); // aktivieren Sensor an PB3 bool sensorData = (PINB & (1 << 2)) != 0; // Einlesen an PB2 [/c] Dazwischen muss mindestens ein NOP sein.
<< PC4) | (1 << PC5); DDRD = 0x00; PORTD |= (1 << PD1) | (1 << PD2) | (1 << PD3) | (1 << PD4) | (1 << PD5) | (1 << PD6) | (1 << PD7) ; sei(); // setzt globales Interrupt enable return; }
-
Thread
Wie Ports am Besten zusammenfassen?
Hi, mir stellt sich gerade die Frage wie man Ports am Besten zusammenfassen kann. Ich benötige z.B. für einen 3x3x3 LED Cube 9 Pins, die "gleichwertig" sind, d.h. jeder schaltet jeweils eine LED in der aktuellen Ebene. Wie würde ich nun die Ports
Mein Code sieht jetzt (ungefähr) so aus: [avrasm] .include "m88def.inc" .equ LED_PORT1 = PORTD .equ LED_DDR1 = DDRD .equ LED_PORT2 = PORTC .equ LED_DDR2 = DDRC .equ LED1 = PD0 .equ LED2 = PD1 .equ LED3 = PD2 .equ LED4 = PD3 .equ LED5 = PD4 .equ LED6 = PD5 .equ LED7
-
Thread
ATtiny13 LED-blinken an PB2 und PWM-Mode 7 nicht möglich
[c] #define SM1_DDR DDRE #define SM1_PORT PORTE #define SM1_TAKT ( 1<<PE3 ) //5 //( 1<<PE3 ) // OC3A-Pin void setup() { SM1_DDR |= SM1_TAKT; // PE3 bzw. OC3A als Compare Match A Ausgang SM1_PORT &= ~SM1_TAKT; // Zunaechst Low-Pegel TCCR3A = 0; // Weil Arduino TCCR3B = 0; // TCCR3C = 0; // // TCCR3A |= 0b01<< COM3A0; // OC3A-Pin
-
Thread
c't - Bot Geschw.regelung
ich zum * Phase Correct PWM... Dann habe ich eine Schritt für Schritt Anleitung gefunden 1 Pins low setzen 2 Pins als Ausgang konfigurieren. 3 Geeignete Wellenform ermitteln 4 Registerinformationen für ausgewählten T/C im Datenblatt aufschlagen 5 Modus & Prescaler setzen und
Register TCCRnA & TCCRnB schreiben. Siehe Bitmanipulation 6 Vergleichswert OCRnx setzen zu 1) Pins auf low setzen brauch ich denke ich nicht, weil alle Ports standartmäßig auf low geschaltet sind, richitg ?! Andernfalls PORTD &= 0xCF (Motortreiber hängt an PortD.6 und .7) zu 2) PORTD
-
Thread
RFM12 Statusabfrage
Schritte die durchzuführen sind erklärt werden. z.B: Senden eines Bytes: 1.) nSEL auf Low 2.) Sender mit 0x8238 einschalten 3.) Bit xy im Register xy löschen 4.) Synchronisieren (3 mal AA senden) 5.) Startbedingung senden (2D und D4) .....usw.
void send(void) { rf12_txdata(0x05); // Sende Datenbyte 0x05 } // rf12.c #define F_CPU 8000000UL #include <util/delay.h> #define RF_PORT PORTA #define RF_DDR DDRA #define RF_PIN PINB #define SDI 6 #define SCK 5 #define CS 4 #define SDO 1 unsigned