74 hc 595 - C - reagiert nicht

OP #1761700
Lesenswert?
• ▲
▼
Hallo,

ich ärgere mich jetzt schon ein Weilchen mit der Porterweiterung herum.

Findet jemand den Fehler?

Ich hab mich schon durch etliche Beiträge hier, sowie das Datenblatt 
gelesen und bin nicht wirklich weiter...

Den Code von hier: 
http://www.mikrocontroller.net/articles/Porterweiterungen habe ich noch 
nicht ausprobiert, wollte das ganze etwas "kompakter" halten.

Danke!
1
int main() {
2
  uint8_t si;   // an:  PB 00  1
3
  int g;        //      PB 01  2
4
  int sck;     //       PB 02  4  
5
  int sclr;    //       PB 03  8
6
  int rck;     //       PB 04  16
7

8

9
  int i;      //laufvariable  
10

11

12
  DDRB = 0x00; 
13
  PORTB = 0x00;
14
  
15
  
16
  _delay_ms(1000);
17

18
  si = 0xf0;      //gewünschte ausgabe
19
  
20
  
21
  g = 1;                  //output disable
22
  PORTB |= (0x02 & g);  
23
  PORTB |= (0x08 & 0);    //shift register cleared
24
  PORTB |= (0x08 & 1);    //sclr - aufnahmebereit
25

26
  for(i=0; i<8; i++){
27
    PORTB |= (0x01 & (si >> (7 - i))); 
28
    
29
    sck = 1;
30
    PORTB |= (0x04 & sck); 
31

32
    _delay_us(5); 
33
    
34
    sck = 0;  
35
    PORTB |= (0x04 & sck); 
36

37

38
    }
39
 
40
  rck = 1;
41

42
  _delay_us(5);
43

44
  rck = 0; 
45
  PORTB |= (0x10 & rck); 
46

47
  g = 0; 
48
  PORTB |= (0x02 & g);
49

50
  _delay_ms(500); 
51

52
  while(1){
53
  ;
54

55

56
  }  
57

58
}
Gast #1761711
Lesenswert?
• ▲
▼
> g = 1;                  //output disable
> PORTB |= (0x02 & g);
> PORTB |= (0x08 & 0);    //shift register cleared
> PORTB |= (0x08 & 1);    //sclr - aufnahmebereit

..ähm.. ich möchte - ohne Dir zu nahe treten zu wollen - dringend 
empfehlen, ein C-Buch zu lesen. Oder den Code anzusehen, den Du oben 
schon verlinkt hast. So wird das nix..

HTH

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.