XC8 I2C zmena registru
Ondřej Janovský
ondrej.janovsky na alarex.cz
Pátek Listopad 26 10:38:12 CET 2021
Nedávno jsem řešil něco podobného, kdy pomocí MCC vygenerovaného kódu mi
nefungoval pořádně sériový port na PIC16F18346 . Tak jsem se nasr. a
celé slavné MCC vyhodil dopryč, inicializace jsem si udělal po svém ale
samozřejmě silně inspirován MCC kódem se zpětnou kontrolou oproti
dokumentaci čipu a fungovalo to.
Doporučuji si to udělat mimo projekt a zkusit co se děje.
Oja
Dne 26. 11. 21 v 0:49 Libor Konečný napsal(a):
> Zdravim osazenstvo
>
> Dokaze me nekdo nakopnout jak zmenim hodnotu registru pro i2c ?
>
> MCU PIC16F19196
>
> mam kod (vysek z projektu)
>
> SSP1STAT = 0x80;
> SSP1CON1 |= 0x06;
> SSP1CON2 = 0x01;
> SSP1CON1bits.SSPEN = 0;
>
> if(!SSP1CON1bits.SSPEN)
> {
> SSP1STAT = 0x80;
> SSP1CON1 |= 0x06;
> SSP1CON2 = 0x01;
> SSP1CON1bits.SSPEN = 1;
>
> }
>
> INTCONbits.PEIE =
> 1; // Enable
> peripheral interrupts
> INTCONbits.GIE = 1;
>
> a vypisu si debug
>
> debug_print_hex_u8(INTCON);
> debug_print_hex_u8(SSP1STAT);
> debug_print_hex_u8(SSP1CON1);
> debug_print_hex_u8(SSP1CON2);
> debug_print_hex_u8(SSP1CON3);
>
> INCON 0xC0
>
> vse ostatni 0x00 nejak nechapu....
>
> kod vygeneroval MCC
>
> a pdf jsem si procital taky detailne.
>
>
> 1000x diky za pripadne nakopnuti spravym smerem.
>
> Libor
>
>
>
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list