Hi David,

I had never noticed it but you are right. I am not sure if PPS existed when 
that library was created.

There is another thing and that is that library violates with the style guide 
rules. The style guide states that the user should set the pin direction, not 
the library (I did not know this when I started with JAL so some of my first 
libraries are not compliant with the style guide too).

When the change that you mentioned would be implemented, sample files will 
break and the main program should define the aliases. But when taking the style 
guide into account then pin_SCL_direction and pin_SDA_direction should be 
removed completely from the library since the main program would set the 
correct pins to input and so your program would work since you define which 
pins should be set to input.

So I could make the change and update all sample files accordingly but it will 
result in compile errors for JAL users that use this updated library.

And since this library can be 'swapped' with the i2c_software libarary, that 
one also needs the change.

So I am interested in the opinion of the JAL users about this modification. To 
do or not to do, that is the question.

Thanks.

Kind regards,

Rob





________________________________
Van: [email protected] <[email protected]> namens David VB 
<[email protected]>
Verzonden: woensdag 27 maart 2024 22:57
Aan: jallib <[email protected]>
Onderwerp: [jallib] i2c_hardware.jal incompatible with pic16f1778 family ?

Hi,

Just found something....  (Jallib 1.8 - Official release, no bees)

In the header of i2c_hardware, it is mentionned that:
-- Define i2c pins like:
-- alias i2c_scl            is pin_c3              -- optional
-- alias i2c_scl_direction  is pin_c3_direction
-- alias i2c_sda            is pin_c4              -- optional
-- alias i2c_sda_direction  is pin_c4_direction

Later, in the code, procedure i2c_initialize, we use, instead:
   pin_SCL_direction = input
   pin_SDA_direction = input

The problem is that, in the device file we have, only for SCL the following 
definition
alias               pin_SCL_direction         is pin_C3_direction

In my application, I use the PPS to reassign SCL to RB6

So, I cannot re-assign pin_SCL_direction to pin_B6_direction.

No big deal: I copied a local version of the library in my project and changed 
the i2c_initialize procedure with:
     i2c_SCL_direction = input
     i2c_SDA_direction = input

I do not know if this has already be changed for 1.9, but I suggest something 
be made.....

(Just my 2 cents)

Kind regards,

David

--
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jallib/f465c30e-73ec-4ada-81f2-f8b41db093c4n%40googlegroups.com<https://groups.google.com/d/msgid/jallib/f465c30e-73ec-4ada-81f2-f8b41db093c4n%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jallib/GVXP195MB1637EEBB7BED481F975B2E91E63B2%40GVXP195MB1637.EURP195.PROD.OUTLOOK.COM.

Reply via email to