Gaaanz komisch,
also ich arbeite mit dem Atmega16 µC und wollte eigentlich nur mal
schnell meine Reflex-Lichtschranken Testen.
Mein µC will sie aber nicht erkennen oO
Wenn ich den µC mit Tastern beschalte funktioniert alles. Meine LS hat
4,7V und schaltet auf 0,2V. Also funktionstüchtig
In dem Programm soll sie nur mal schnell alle LED´s abschalten, was sie
aber nicht tut.
Wenn ich das selbe per Taster versuche funktioniert das Klasse (hab auch
schon mit entprell Methode versucht und auch schon ohne)
Muss ich was bestimmtes beachten?
Hier ein ganze simples kastriertes Programm von mir
1 | #include <avr/io.h>
|
2 | #include <avr/interrupt.h>
|
3 | #include <stdint.h>
|
4 | #include <stdlib.h>
|
5 | #include <util/delay.h>
|
6 |
|
7 | #include <avr/pgmspace.h>
|
8 |
|
9 |
|
10 | #define PORT_LED PORTC /* PORT C ZUM BETRIEB DER 'LEDs' */
|
11 |
|
12 | #define PIN_LIGHT PINA /* EINLESEN DER PINS 'A'*/
|
13 |
|
14 | #define LightBarrier1 PA7 /* Lichtschranken Signale */
|
15 |
|
16 |
|
17 | int main(void) /* PROGRAMM START */
|
18 | {
|
19 |
|
20 | DDRC = 0xff; //PORT C = Output
|
21 | DDRA=0x00; //PORT A = Input
|
22 | //
|
23 | PORT_LED = 0x00; //PORT C für LED alle ON
|
24 |
|
25 |
|
26 |
|
27 |
|
28 | while(1)
|
29 | {
|
30 |
|
31 | if(!(LightBarrier1))
|
32 | {
|
33 |
|
34 | PORT_LED =0xFF;
|
35 |
|
36 | }
|
37 |
|
38 | }
|
39 |
|
40 | }
|