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