Hallo Community, ich habe mir nach und nach einen Atmega16 @ 16Mhz Board mit Serialverbindung aufgebaut. Nun möchte ich gern nachdem alles super klappte mein Board um ein oder zwei Schieberegister erweitern. Ich habe das Schieberegister nach folgender Schaltung angeschlossen. (siehe Ahnhang) Ich nutze folgenden Code.
1 | $regfile "m16def.dat" |
2 | $crystal = 16000000 |
3 | |
4 | Dim Reg As Byte |
5 | Dim Save As Byte |
6 | Dim Outbit As Boolean |
7 | Dim Cnt As Byte |
8 | |
9 | Config Portb.0 = Output |
10 | Config Portb.1 = Output |
11 | Config Portb.2 = Output |
12 | |
13 | Portb.1 = 0 |
14 | |
15 | Do |
16 | Save = Reg : Portb.0 = 0 : Portb.0 = 1 |
17 | For Cnt = 1 To 4 |
18 | Outbit = Save And 1 : Portb.2 = Outbit |
19 | Portb.1 = 1 : Portb.1 = 0 |
20 | Shift Save , Right |
21 | Next Cnt |
22 | Incr Reg : Waitms 200 |
23 | Loop |
Diese Schaltung funktioniert nur solang ich ich keine Stromversorgung anschliesse am(74hc164). Sobald ich an PIN7 Gnd und PIN14 +5V gebe schaltet sich alles Stumm. Die Leds blinken nichtmehr. Atmega16 Anschluss PB0 an Clock @ 74HC164 Anschluss PB1 an Clear @ 74HC164 Anschluss PB2 an Serial Input A @ 74HC164 GND und Plus (vorerst abgeklemmt) LED1 an PIN3 @ 74HC164 LED2 an PIN4 @ 74HC164 Der Bascom Code wird ausgeführt allerdings ohne die Stromversorgung am Schieberegister. Habe ich etwas übersehen was mache ich verkehrt? Edit: Im Anhang an PIN 1&2 @ 74HC164 ist PB0 und PB1 beschriftet das stimmt natürlich nicht. Gruß Thomas