datasheet for new 24/25K42 available

Coding and general discussion relating to the compiler

Moderators: David Barker, Jerry Messina

Post Reply
Jerry Messina
Swordfish Developer
Posts: 1469
Joined: Fri Jan 30, 2009 6:27 pm
Location: US

datasheet for new 24/25K42 available

Post by Jerry Messina » Sun Feb 05, 2017 3:34 pm

The datasheet for the first devices in the 18FxxK42 family has been released.

18F24/25K42 http://ww1.microchip.com/downloads/en/D ... 01869B.pdf

Some new features/changes I noticed (other than all the neat new peripherals):

- Support for up to 16K of ram
The Bank Select Register has been extended to support 64 banks of 256 bytes.
A new asm instruction MOVFFL was added to allow access to the larger ram space
(this new three-word instruction was needed since the existing MOVFF only allows addressing up to 4K)
FSRx registers can be used to indirectly access the full memory like was done previously

- Programmable interrupt vector table
Now each interrupt source can have it's own vector and you're not stuck with just the two at 0x0008 & 0x0018
The base address of the IVT table can be moved/reprogrammed so it's possible to do things like have a bootloader
and main app both using interrupts and they don't conflict with each other.
When using a low-memory bootloader interrupts no longer have to be vectored through the bootloader to the main app code.
Memory can be arranged to write-protect a low-memory bootloader separate from the main app.
Interrupt context saving now has shadow registers for the FSR0/1/2, PRODH/L, and PCLATH/U registers, and it's two levels deep

These changes can simplify using multiple interrupt routines. For example you no longer have to test the IE flag in each ISR, and you can code the ISR handler in the same source module as the peripheral code it belongs to instead of having to combine the interrupt routines from different sources into a common module.

- 2 DMA controllers that can transfer data between memory spaces/peripherals


Any chance we could get support added to the compiler for the addt'l ram/IVT features?

User avatar
David Barker
Swordfish Developer
Posts: 1214
Joined: Tue Oct 03, 2006 7:01 pm
Location: Saltburn by the Sea, UK
Contact:

Re: datasheet for new 24/25K42 available

Post by David Barker » Mon Feb 06, 2017 9:05 am

It's something I need to think about - post noted...

Jerry Messina
Swordfish Developer
Posts: 1469
Joined: Fri Jan 30, 2009 6:27 pm
Location: US

Re: datasheet for new 24/25K42 available

Post by Jerry Messina » Mon Mar 06, 2017 11:33 am

It looks like the devices are available now (at least the 25K42).

For a short discussion on some of the new features check out http://www.microchip.com/forums/m978114.aspx

One thing I missed when originally reading the datasheet is that since the RAM memory space has increased up to 16K, the SFR registers (which are located at the top of RAM space) can't be reached using the original asm MOVFF instruction... you need to use the new MOVFFL instruction to access them.

That means you can't use them in a "compatibility" mode. Even though the SFR's can be reached using the expanded BSR paging method, you'd have to ensure no MOVFF instructions accessed that space. Drat!

Post Reply