Gast
#217886
Hallo Leute, ich bin beim Proggen eines LPC2132 und es gibt ein Problem beim schreiben eines Registers. Ich will die SPI Schnittstelle verwenden. Die Init mache ich genaus wie beim Philips AN 10369. void init_dac(void) { PINSEL1 |= 0x000000A8; // PIN an SCK1, Miso1, MOSI1 VPBDIV = 0x00000002; // set the peripheral bus clock speed S1SPCCR = 0x08; // Set highest speed for SPI at 10 Mhz -> 1.25 Mhz S1SPCR = 0x20; // Select Device as Master IO1DIR |= SPI_SYNC_A; // PIN 1.30 als output definieren IO1SET = SPI_SYNC_A; // PIN high } Immer bei der Zeile (S1SPCCR = 0x08;) hängt sich der controller auf. Ich habe schon unterschiedliche Quarze versucht und den PLL eingeschaltet oder auch weggelassen. Kann es sein, dass man den SPI irgendwie reseten muss ??? Interrupts gehen auch nicht mehr, nachdem ich init_dac() ausführe. Ich habe sogar schon den Controller ausgetauscht. Es muss also was am code sein. Als Quarz verwende ich jetzt einen 10 Mhz Quarz. Wer kann mir da weiterhelfen ? Danke schon im voraus. Mattias