-
Datei
lcd_test.txt
bit 7 linke seite lcd_enable: sbrs wie,7 ;springt zu enable 2 wenn bit 6 = 1 rjmp lcd_enable2 sbi PORTC,E1 ;Enable high nop nop nop nop nop cbi PORTC,E1 ;Enable wieder low sbrs wie,6 rjmp lcd_enable_ende lcd_enable2: sbi PORTC,E2 ;Enable high nop nop nop nop nop cbi PORTC,E2 ;Enable wieder low lcd_enable_ende
in „Conrad LCD am ATmega8“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
4433_ioProz.asm
----------------------------------- L_ADC1: ldi temp,1 out ADMUX, temp ;Kanalwahl cbi DDRC, 1 cbi PORTC, 1 rjmp ADConv ;---------------------------------------------------------------------- L_ADC2: ldi temp,2 out ADMUX, temp ;Kanalwahl cbi DDRC, 2 cbi PORTC, 2 rjmp ADConv ;--------------------------
in „AT90S4433: Problem mit ADC“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test_Mega8515.asm
PORTA, 0 ;Rot an rjmp LOOP2 LED1_G: cpi Z1, 171 brsh LED1_B sbis PORTB, 0 ;Skip wenn Grün an sbi PORTC, 0 ;Blau an LED1_GB: cp PWM, TEMP2 brne LOOP2 cbi PORTC, 0 ;Blau aus sbi PORTB, 0 ;Grün an rjmp LOOP2 LED1_B: sbis PORTC, 0 ;Skip wenn Blau an sbi PORTA, 0 ;Rot an LED1_BR: cp PWM, TEMP3 brne LOOP2
in „Verständnisfrage SRAM“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ADC_SEND_--UART_RS232.c
1<<MUX0)) // erster wert jeder Wandlung verwerfen, damit sich ADC Multiplexer einschwingen kann { PORTC ^= (1<<PC0); //ADCRun(); for (uint8_t i = 0; i<11; i++) { if (i == 0) { ADCSRA |= (1<<ADSC); while ( ADCSRA & (1<<ADSC)); ADC_result = ADCW; ADC_result = 0; } else { ADCSRA |= (1<<ADSC); //single conversion
in „ATmega16: ADC0 Wert schwankt obwohl konst. Spannung anliegt“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
2021-01-18-1.txt
1<<PINB3; PORTC ^= 1<<PINC3; } if ( ( get_key_short( 1<<KEY4 )) || ( get_key_long( 1<<KEY4 )) ) { PORTB ^= 1<<PINB4; PORTC ^= 1<<PINC4; } if ( ( get_key_short( 1<<KEY5 )) || ( get_key_long( 1<<KEY5 )) ) { PORTB ^= 1<<PINB5; PORTC ^= 1<<PINC5; } if ( ( get_key_short( 1<<KEY6 )) || ( get_key_long( 1<<KEY6 )) ) { PORTB ^= 1<<PINB6; PORTC ^= 1<<PINC6; } if ( ( get_key_short( 1<<KEY7 )) || ( get_key_long( 1<<KEY7 )) ) { PORTB ^=
in „Atmega Taster einlesen und in Register schreiben funktioniert nicht wie geplant“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Servodecoder.asm
_04_port = PORTB;3 .equ kanal_05_port = PORTB;4 .equ kanal_06_port = PORTB;5 .equ kanal_07_port = PORTC;0 .equ kanal_08_port = PORTC;1 .equ kanal_09_port = PORTC;2 .equ kanal_10_port = PORTC;3 .equ kanal_11_port = PORTC;4 .equ kanal_12_port = PORTC;5 .equ kanal_13_port = PORTD;4 .equ kanal_14_port =
in „Unregelmäßigkeit beim Ablauf eines Programms.“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
testaufbau.asm
PORTD, 1 bcf PORTD, 0 return INIT_LCD bsf STATUS, RP0 movlw B'00000000' movwf TRISC ; Alle Pins von PortC I/O bcf STATUS, RP0 clrf PORTC ; Alle Pins von PortC sind Ausgänge bcf RW bcf RS bcf ENABLE movlw D'250' movwf ZEIT delay1 call WAIT_1ms ; mindestens 15ms auf ende des internen reset warten (hier 20ms
in „LCD am PIC 16F877“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
24.1test.c
PORTB &= (1<<PB7); wait(10); PORTB |= ~(1<<PB6); // pH_2_1 SPI_READ(18); PORTB &= (1<<PB6); wait(10); PORTC |= ~(1<<PC2); // pH_2_2 SPI_READ(21); PORTC &= (1<<PC2); wait(10); PORTC &= ~(1<<PC3); // TEMP1 SPI_READ(24); PORTC |= (1<<PC3); wait(10); PORTC &= ~(1<<PC4); // TEMP2 SPI_READ(27); PORTC |= (1<<PC4
in „Subroutine wird fälschicherweise ausgeführt“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
maintst.c
// #define X1 (PINC&(1<<PC7)) //Wert an PC7 von X1 // PORTC&=~(1<<PC0)|(1<<PC1)|(1<<PC6); //Auf low setzen // PORTC|=(1<<PC1); //Eingang X2 auswählen // #define X2 (PINC&(1<<PC7)) //Wert an PC7 von X2 // PORTC&=~(1<<PC0)|(1<<PC1)|(1<<PC6); //Auf low setzen // PORTC|=(1<<PC0)|(1<<PC1); //Eingang X3 auswählen // #define X3 (PINC&(1<<PC7)) //Wert an PC7 von X3 // PORTC&=~(1<<PC0)|(1<<PC1)|(1<<PC6); //Auf low setzen // PORTC|=(1<<PC6); // _delay_ms(1); //Eingang
in „Multiplexer mit AtMega abfragen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ausschalt.c
Interrupts enablen OCR0 = 0; while(1) //Hauptschleife { if ((PINA&0x01)==0x00) //Taste gedrückt { PORTC |= 0x01; //LED1 einschalten (Debugg) count = 0; //zähler für Zeit zurücksetzen OCR0 = 255; //PWM - Ausgang einschalten // PORTC &= ~0x04; //LEDs debugg // PORTC |= 0x08; //LEDs debugg } else //Taste nicht gedrückt { start = 0x01; // Hilfsvariable für Zähler // PORTC |= 0x04; //LEDs debugg // PORTC &= ~0x08; //LEDs debugg } if((count >= adc_wert) && (start == 0x01)) { count = 0; PORTC = 0x00; // PORTC auf 0 (Debugg) start = 0x00; // Hilfsvariable auch auf 0 OCR0
in „ATMEGA16 Timer“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Mega16_RTC-4553_SRF04.bas
Dim Tempstr As String * 16 Enable Interrupts Config Pinc.2 = Output Config Pinc.3 = Input Config Portc.5 = Output Config Portc.6 = Output Config Portc.7 = Output ' Konstanten deklarieren Const Setyear = &B00001011 Const Setmonth = &B00001001 Const Setday = &B00000111 Const Sethour = &B00000100 Const Setminute = &B00000010 Rtcwr Alias Portc.5 Rtccs1 Alias Portc.6 Rtccs0 Alias Portc.7 Rtccs1 = 1 Rtccs0 = 0 ' SPI konfigurieren und initialisieren Config Spi = Hard , Interrupt = Off , Data Order = Lsb , Master = Yes , Polarity = Low , Phase
-
Datei
main.c
void Example4( void ) { /* Configure PC0 as input, triggered on rising edge. */ PORT_ConfigurePins( &PORTC, 0x01, false, false, PORT_OPC_TOTEM_gc, PORT_ISC_RISING_gc ); PORT_SetPinsAsInput( &PORTC, 0x01 ); /* Configure PORTD as output with the pattern 0x55. */ PORT_SetPinsAsOutput( &PORTC, 8 ); PORT_SetPins
in „XMega: ISR wird nicht getriggered“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
UHR.bas
Enable Timer1 Start Timer1 'Anfang A = 0 Do Loop Timer1int: Load Timer1 , 3906 '1ne Sekunde Toggle Portc.0 Incr Sekunde If Sekunde = 60 Then Sekunde = 0 Gosub Ausgang End If Return Ausgang: 'Ausgang schalten Sound Speaker , 25 , 50 Select Case A Case 0 Portc.1 = 1 Portc.2 = 0 Portc.3 = 1 A = 1 Case 1 Portc.1 = 0 Portc.2 = 1 Portc.3 = 1 A = 0 End Select Return
in „Hauptuhr mit ATMega8“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
noname3.bas
.7 , E = Portd.3 , Rs = Portd.2 Config Lcd = 16 * 2 Cursor Off Cls Do U = 0 Waitms 300 Ddrc.3 = 1 Portc.3 = 0 Ddrc.1 = 1 Portc.1 = 0 Gosub Erste Loop End Erste: Do Incr U Ddrc.3 = 0 'oben auf input,hochohmig Portc.3 = 1 Ddrc.1 = 1 'unten 5v Portc.1 = 1 Ddrc.1 = 0 '5v aus Portc.1 = 1 Waitus 17 Portc.3 = 0 Ddrc.3 = 1 'oben auf gnd Portc.3 = 0 If Pinc.1 = 1 Then Locate 1 , 1 Lcd U Return End If Loop
in „Kapazitiver Taster“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
irqtest.c
#include <avr/interrupt.h> #include <avr/io.h> #include <avr/signal.h> #define LED_LO_ON {PORTC &= ~0x08;} #define LED_LO_OFF {PORTC |= 0x08;} #define LED_MED_ON {PORTC &= ~0x10;} #define LED_MED_OFF {PORTC |= 0x10;} #define LED_HI_ON {PORTC &= ~0x20;} #define LED_HI_OFF {PORTC |= 0x20;} #define LED_HI_TGL {PORTC ^= 0x20;} int main (void) { DDRC = 0x38; // LED1-3 as output TIMSK = (1<<OCIE1A); TCCR1A = 0; TCCR1B = (1<<CS12) | (1<<WGM12); // 256 prescale, CTC mode, TOP = OCR1A OCR1A = 31250; // // cli(); sei
in „Keine Interrupts beim Mega8“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
os_ver01.c
output, 52 Ohm Widerstand PortB Pin 6: nicht nach außen geführt PortB Pin 7: nicht nach außen geführt PortC Pin 0: input, analoge Zifferntastatur PortC Pin 1: unbenutzt PortC Pin 2: unbenutzt PortC Pin 3: input, Messen der Spannung (analog) PortC Pin 4: frei, später wahrscheinlich Strommessung PortC Pin 5: frei, später wahrscheinlich Relai Ausgang PortC Pin 6: nicht nach außen geführt PortC Pin 7: nicht nach außen geführt PortA 0-7 : auf AT90S4433 nicht vorhanden */ #include <io.h> #include <interrupt.h> #include <sig-avr.h> typedef unsigned char
in „Anfänger Problem in c Programm“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
main.c
1,92ms 40us an =>f=500Hz??? TIMSK = (1 << OCIE1A); sei(); return; } inline void ledout(uint8_t data){ PORTC = data & (1 << PC0); PORTC = data & (1 << PC1); PORTC = data & (1 << PC2); PORTC = data & (1 << PC3); // gegenrichtung - alles aus PORTC = ~data; } ISR(TIMER1_COMPA_vect){ static uint8_t i=(uint8_t
in „Binäruhr selbstbau“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
test.bas
control bits I2cstop Return Read_sp5055_13: 'Config Scl = Portd.6 'Config Sda = Portd.7 Config Scl = Portc.3 Config Sda = Portc.2 I2cstart I2creceive Addr1 , Pllstat_13 I2cstop Return Write_sp5055_23: Config Scl = Portd.6 Config Sda = Portd.7 'Config Scl = Portc.3 'Config Sda = Portc.2 I2cstart 'start condition
in „2 i2c ports in bascom mit mega8 ode mega 88“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
keymatrix.c
unsigned short u16; #define XTAL 8e6 // 8MHz #define KEY_PIN PINC // B1..0 = inputs #define KEY_PORT PORTC #define KEY_DDR DDRC #define KEY_COL0 PORTC0 #define KEY_COL1 PORTC1 #define KEY_ROW0 PORTC2 // B6..2 = outputs #define KEY_ROW1 PORTC3 #define KEY_ROW2 PORTC4 #define KEY_ROW3 PORTC5 #define KEY_ROW4 PORTC6 static inline u16 key_scan( void ) { u16 keys = 0; KEY_PORT = 1<<KEY_ROW0^1<<KEY_ROW1^1<<KEY_ROW2^1<<KEY_ROW3^1<<KEY_ROW4; // row0..4 = pullup on keys = KEY_PIN; // key 0..4 = bit 2..6 KEY_DDR = 1
in „2x5 Tastenmatrix an AT90USB1287“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
keymatrix.c
unsigned short u16; #define XTAL 8e6 // 8MHz #define KEY_PIN PINC // B1..0 = inputs #define KEY_PORT PORTC #define KEY_DDR DDRC #define KEY_COL0 PORTC0 #define KEY_COL1 PORTC1 #define KEY_ROW0 PORTC2 // B6..2 = outputs #define KEY_ROW1 PORTC3 #define KEY_ROW2 PORTC4 #define KEY_ROW3 PORTC5 #define KEY_ROW4 PORTC6 static inline u16 key_scan(void) { u16 keys = 0; KEY_PORT = 1<<KEY_ROW0^1<<KEY_ROW1^1<<KEY_ROW2^1<<KEY_ROW3^1<<KEY_ROW4; // row0..4 = pullup on keys = KEY_PIN; // key 0..4 = bit 2..6 KEY_DDR = 1<<
in „2x5 Tastenmatrix an AT90USB1287“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
hcms.c
.. .. //Für Ansteuerung LED-Display #define HCMS29xx_RS_LOW() PORTC &= ~PC0 #define HCMS29xx_RS_HIGH() PORTC |= PC0 #define HCMS29xx_DATA_LOW() PORTC &= ~PC1 #define HCMS29xx_DATA_HIGH() PORTC |= PC1 #define HCMS29xx_CLK_LOW() PORTC &= ~PC2 #define HCMS29xx_CLK_HIGH() PORTC |= PC2 #define HCMS29xx_CE_LOW() PORTC &= ~PC3 #define HCMS29xx_CE_HIGH() PORTC |= PC3 #define NOP asm volatile("nop"::) //_asm nop _endasm .. .. void HCMS29xx_clear(void) { uint8_t i; for(i=1;i<150
in „Agilent HCMS-29xx LED Display seriell ansteuern“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
main.c
= 0xff; //Stunden = Glabale Variabel hh DDRC = 0xff; //Sekunden = Globale Variabel ss while (1) { PORTC = 1; _delay_ms (125); PORTC = 2; _delay_ms (125); PORTC = 4; _delay_ms (125); PORTC = 8; _delay_ms (125); PORTC = 16; _delay_ms (125); PORTC = 32; _delay_ms (125); PORTC = 0x00; PORTA = 1; _delay_ms
in „Atmega16 flashprobleme“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Interrupt_PortC_Pin6.asm
def max= r18 .def zaehler= r19 ;PortC Interrupt config ldi temp, 0x00 sts PORTC_DIRSET, temp ;PortC als Eingang ldi temp, 0b00111000 sts PORTC_PIN1CTRL, temp ;PORTC PIN6 Pull-Up und Interrupt bei fallender Flanke ldi temp, PORT_INT0LVL_LO_gc sts PORTC_INTCTRL, temp ;Interrupt Level (low) ldi temp, 0b01000000 sts PORTC_INT0MASK, temp ;PORTC PIN6 auf INT0 sei ldi temp, 0b00000111 sts PMIC_CTRL, temp ldi max, 0xff main: inc zaehler cpse zaehler, max jmp main clr zaehler jmp main rcsig: ldi temp1, 0xff reti
in „Interrupt Atxmega 32 A4U“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Facharbeit.asm
PORTD, temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige3: cpi zaehler, 3 brsh anzeige4 out PORTC, ausschalten lds temp, Seg_Code3 out PORTD ,temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige4: cpi zaehler, 4 brsh anzeige5 out PORTC, ausschalten lds temp, Seg_Code4 out PORTD ,temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige5: out PORTC, ausschalten lds temp, Seg_Code5 out PORTD ,temp lsl schalter out
in „Probleme bei Programmierung von Lichtschranken-Stoppuhr“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Facharbeit.asm
PORTD, temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige3: cpi zaehler, 3 brsh anzeige4 out PORTC, ausschalten lds temp, Seg_Code3 out PORTD ,temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige4: cpi zaehler, 4 brsh anzeige5 out PORTC, ausschalten lds temp, Seg_Code4 out PORTD ,temp lsl schalter out PORTC, schalter inc zaehler rjmp anzeige_ende anzeige5: out PORTC, ausschalten lds temp, Seg_Code5 out PORTD ,temp lsl schalter out
in „Probleme bei Programmierung von Lichtschranken-Stoppuhr“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
first_try.c
/ RCK High - Daten werden in Register bernommen PORTC = ebene_0; // LEDs f r ebene 0 an break; } case 1: // Digit 1 { PORTC = LED_off; SPDR = liveout[1]; while(!(SPSR & (1<<SPIF))); PORTB &=~ (1<<RCK); PORTB |= (1<<RCK); PORTC = ebene_1; break; } case 2: // Digit 2 { PORTC = LED_off; SPDR = liveout[2]; while(!(SPSR & (1<<SPIF))); PORTB &=~ (1<<RCK); PORTB |= (1<<RCK); PORTC = ebene_2; break; } case 3: // Digit 3 { PORTC = LED_off; SPDR = liveout[3]; while(!(SPSR & (1
in „Die ersten Versuche in C“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
hardware.h
MISO PORTB4 #define MOSI PORTB3 //#define PORTB2 #define CTCSS_OUT PORTB1 #define ENCSW PORTB0 /* PORTC --------------- */ #define OLED_CMD_PORT PORTC /* by bit number */ #define RST PORTC6 //#define PC5 //#define PC4 #define PTT PORTC3 #define CS_DISP PORTC2 #define RES_DISP PORTC1 #define DC_DISP PORTC0
in „SPI-Problem mit AVR“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
compiler.h
TRISB_RB5 TRISBbits.TRISB5 #define TRISB_RB6 TRISBbits.TRISB6 #define TRISB_RB7 TRISBbits.TRISB7 #define PORTC_RC0 PORTCbits.RC0 #define PORTC_RC1 PORTCbits.RC1 #define PORTC_RC2 PORTCbits.RC2 #define PORTC_RC3 PORTCbits.RC3 #define PORTC_RC4 PORTCbits.RC4 #define PORTC_RC5 PORTCbits.RC5 #define PORTC_RC6 PORTCbits.RC6
in „CAN auf PIC18F6680“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Text01.c
_) { PORTA |=(1<<6); // Daten an Display => RS BIT=1 PORTC = dsp_char_out_; E_toggle(); } void LCD_puts (const char *lcd_string) { while (*lcd_string) { dsp_char_out_ (*lcd_string++); // String auslesen -> LCD } } // LCD init PORTC = 0x38; // 8 Bit, 4 Zeilen E_toggle(); PORTC = 0x01; // Display löschen E_toggle(); PORTC = 0x0E; // Display an, Cursor an, Blinken aus E_toggle(); PORTC = 0x06; // Entry Mode Set, Incrementieren, no Shift E_toggle(); PORTC = 0x02; // Cursor
in „Wie mache ich eine Textausgabe 8Bit auf Display?“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test_Handscanner_02.bas
************************************************* Config Lcd = 40 * 4 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.4 , Db6 = Portc.5 , Db7 = Portc.6 , E = Portc.1 , E2 = Portc.2 , Rs = Portc.0 Config Lcdbus = 4 ' einmaliges Initialisieren des Displays Dim ___lcdno As Byte ___lcdno = 0 : Initlcd
in „Barcodescanner mit Atmega128 einlesen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ds18s20_id_lesen.bas
= 9600 $hwstack = 128 $swstack = 256 $framesize = 256 'Lcd ansteuerung Config Lcd = 16 * 2 Config Portc = Output Config Lcdpin = Pin , E = Portc.5 , Rs = Portc.4 , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 Config Lcdbus = 4 Config Lcdmode = Port Cursor Off Cls 'Pin für DS18S20 Config
in „AVR für wenig Geld im LAN“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
sample.asm
RS zu setzen mov temp2, temp1 swap temp1 andi temp1, 0b00001111 out PORTC, temp1 rcall lcd_enable andi temp2, 0b00001111 out PORTC, temp2 rcall lcd_enable rcall delay50us ret ;erzeugt den Enable-Puls lcd_enable: sbi PORTC, 6 ;Enable high nop ;3 Taktzyklen warten nop nop
in „Problem Bascom / LCD mit Atmega16“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Interrupt_programmation_des_Lesers.bas
'Variable zum reseten Dim A As Byte ' Dim X As Byte A = 0 ' X = Inkey() Ddrd = &HFE Config Sda = Portc.1 '' I2C Bus konfigurieren Config Scl = Portc.0 Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2 Config Lcd = 16 * 2 Cursor Off Noblink
in „RXC Interrupt Problem ( Bascom)“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ds1820.asm
pop zahler pop reg3 pop reg2 pop reg1 ;####################### dsreset: ;# sbi ddrc, dspin ;# cbi portc, dspin ;# ldi reg2, 185 ;# rcall wait ;# cbi ddrc, dspin ;# cbi portc, dspin ;# ldi reg2, 25 ;# rcall wait ;# prpuls: ;# in reg2, pinc ;# sbrs reg2, dspin ;# rjmp prpuls ;# ret ;# ;################
in „ds1820 zeigt -255 an“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
keymatrix.c
unsigned short u16; #define XTAL 8e6 // 8MHz #define KEY_PIN PINC // B1..0 = inputs #define KEY_PORT PORTC #define KEY_DDR DDRC #define KEY_COL0 PORTC0 #define KEY_COL1 PORTC1 #define KEY_ROW0 PORTC2 // B6..2 = outputs #define KEY_ROW1 PORTC3 #define KEY_ROW2 PORTC4 #define KEY_ROW3 PORTC5 #define KEY_ROW4 PORTC6 #define ROWMASKE \ ((1<<KEY_ROW0)|(1<<KEY_ROW1)|(1<<KEY_ROW2)|(1<<KEY_ROW3)|(1<<KEY_ROW4)) static inline u16 key_scan( void ) { u16 keys = 0; // row0..4 = pullup on // col0..1 LOW wenn Ausgabe aktiv
in „2x5 Tastenmatrix an AT90USB1287“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
main.c
#ifndef F_CPU #define F_CPU 4000000L #endif #define D4 eS_PORTC4 #define D5 eS_PORTC5 #define D6 eS_PORTC6 #define D7 eS_PORTC7 #define RS eS_PORTC2 #define EN eS_PORTC3 #include <avr/io.h> #include<stdlib.h> #include <util/delay.h> #include <inttypes.h> #include
in „ATMEGA324 LCD 2x16/ UART1 / ADC0“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
main.c
#ifndef F_CPU #define F_CPU 4000000L #endif #define D4 eS_PORTC4 #define D5 eS_PORTC5 #define D6 eS_PORTC6 #define D7 eS_PORTC7 #define RS eS_PORTC2 #define EN eS_PORTC3 #include <avr/io.h> #include<stdlib.h> #include <util/delay.h> #include <inttypes.h> #include
in „ATMEGA324 LCD 2x16/ UART1 / ADC0“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Code_Schloss.asm
********** in1: in1_nokey: ; warten bis keine Taste gedrückt ist in temp, PINC ; PORTC einlesen cpi temp, 0x00 ; irgendeine Taste gedrückt ? brne in1_nokey ; ja: warten bis keine Taste gedrückt ist ; nein: weiter in1_main: in temp, PINC ; PORTC einlesen cpi temp, 0x00 ; keine Taste gedrückt
in „Anfänger-Problem mit Assembler“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
mifaretest.c
define UPE 2 #define OVR 3 #define FE 4 #define UDRE 5 #define RXC 7 #define RTS PORTB.1 #define A0 PORTC.0 #define A1 PORTC.1 #define A2 PORTC.2 #define WRITE PORTC.4 #define READ PORTC.3 #define NCS PORTC.5 #define RESET PORTC.7 #define IRQ PORTC.6 // Declare your global variables here unsigned char
in „Ports beschreiben und wieder auslesen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
web.html
----------- Digital-Ausgänge PortC[0..7] ------------ //Port Schalten und Status %PORTCn bedeutet PORTC PINn "<p><input type=\"checkbox\" name=\"OUT\" value=\"A\" %PORTC0>\r\n" "<span class=\"Stil2\">Port C Pin 0</span></p>\r\n" "<p><input type=\"checkbox\" name=\"OUT\" value=\"B\" %PORTC1>\r\n" "<span
-
Datei
main.cpp
(1<<CS20); OCR2A = 255; OCR2B = 127; TIMSK2 |= (1<<TOIE2); GTCCR &= ~(1<<TSM); sei(); DDRC |= (1<<PORTC1); while (1) { if (taster[3][0]) { PORTC |= (1<<PORTC1); } else { PORTC &= ~(1<<PORTC1); } } } ISR(TIMER2_OVF_vect, ISR_NOBLOCK) { if (wecker[0][0] == uhrzeit[0] && wecker[0][1] == uhrzeit[1] && wecker
in „AVR reagiert nicht“ · Mikrocontroller und Digitale Elektronik ·
-
PDF
Atmel.Application_Notes_340_LCD.pdf
segs_out | ((segment_table[LCD_d_4]& 0x03)*64); //get digit_1000's A & B bits DDRD = 0; PORTD = 0x00; PORTC = segs_out; DDRC = 0xFF; // always on DDRD = 0x01; //COM1 asserted LOW } break; case 1: { PORTD = 0x01; PORTC = segs_out ^ 0xFF; // Compliment segment outputs DDRC = 0xFF; // always on DDRD = 0x01;
in „AVR340 Code lauffähig machen“ · Mikrocontroller und Digitale Elektronik ·
-
PDF
AVR_1zu4_LCD.pdf
segs_out | ((segment_table[LCD_d_4]& 0x03)*64); //get digit_1000's A & B bits DDRD = 0; PORTD = 0x00; PORTC = segs_out; DDRC = 0xFF; // always on DDRD = 0x01; //COM1 asserted LOW } break; case 1: { PORTD = 0x01; PORTC = segs_out ^ 0xFF; // Compliment segment outputs DDRC = 0xFF; // always on DDRD = 0x01;
in „Display für 3V betrieb“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ThermometerSabine1.2.bas
Interrupts Dim Preload As Word Preload = &H48E5 'interrupt alle 6 Sek. Timer1 = Preload Config 1wire = Portc.3 ' DS18S20 on Port C.Pin3 Config Portd = Output 'Port D Ausgang für Motoren, Lampe "min" Config Portc.0 = Input 'PortC Eingang für Lichtschranken Config Portc.1 = Input Config Portc.2 = Input Config
in „Atmega8 Thermometer mit Schrittmotoranzeige“ · Projekte & Code ·
-
Datei
ThermometerGabi1.2.bas
Interrupts Dim Preload As Word Preload = &H48E5 'interrupt alle 3 Sek. Timer1 = Preload Config 1wire = Portc.3 ' DS18S20 on Port C.Pin3 Config Portd = Output 'Port D Ausgang für Motoren, Lampe "min" Config Portc.0 = Input 'PortC Eingang für Lichtschranken Config Portc.1 = Input Config Portc.2 = Input Config
in „Atmega8 Thermometer mit Schrittmotoranzeige“ · Projekte & Code ·
-
Datei
main.c
0x80; Enable(); wait(1000); //Daten an Display senden PORTD = 0xFF; //Alle Pixel eines Characters an PORTC = 0x02; //RS High - Daten in Display-RAM schreiben Enable(); PORTC = 0x00; //} }//Ende main() void wait(int max_val) { int x; for(x=0;x<=max_val;x++); //max_val=100 entspricht 820us } void Enable(void) { PORTC |= 0x01; PORTC |= 0x01; PORTC |= 0x01; PORTC &= 0xFE; }
in „LCDisplay zeigt nichts an - Ansteuerung in C“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
schieberegister_test.bas
32 Config Portd.1 = Output Config Portb.2 = Output Config Portb.1 = Output Config Pinc.5 = Input Portc.5 = 1 Config Pinc.4 = Input Portc.4 = 1 Config Pinc.3 = Input Portc.3 = 1 Ds Alias Portb.1 ' DAT - of the first 74HC595 Sh_cp Alias Portd.4 ' SRCLK - 74HC595 St_cp Alias Portb.2 Config Lcdpin = Pin
in „[BASCOM] Mal geht mein Taster, mal nicht“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
programm.txt
SPALTE_FAKTOR_EIN PORTA,3 #define SPALTE_FAKTOR_AUS PORTA,4 #define SPALTE_MODUS PORTA,5 #define ZEILE1 PORTC,0 #define ZEILE2 PORTC,1 #define ZEILE3 PORTC,2 #define ZEILE4 PORTC,3 #define AUSGANG PORTC,4 ;#define xxx PORTC,5 ; ########################################## Macros BANK_0 MACRO BCF RP0 ENDM BANK
in „PIC16F676 (interner RC) läuft nicht !?“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Griess_Verladung.bas
geschlossen Config Pind.4 = Input 'Taster Schieber AUF Config Pind.2 = Input 'Taster Schieber ZU Config Portc.1 = Output 'Relais Schieber AUF Config Portc.2 = Output 'Relais Schieber ZU On Int0 Stop_1 Config Int0 = Rising Enable Int0 Enable Interrupts Waitms 50 Do If Pind.4 = 1 Then A = 1 Waitms 200 If A =
in „Interrupt reagiert nicht richtig“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Test_Drehgeber.asm
PORTCFG_MPCMASK, accu1 ; ins Multiport Confirurationsregister schreiben ldi accu1, PORT_INVEN_bm ; Pin0 von PortC invertieren sts PORTC_PIN0CTRL, accu1 ; ab jetzt gilt "Invert Pin" für alle Pins von PortC ldi accu1, 0b11111111 ; Maske gilt für alle PIN's des Ports sts PORTCFG_MPCMASK, accu1 ; ins Multiport Confirurationsregister