Skip to content
This repository has been archived by the owner on Jul 6, 2019. It is now read-only.

Add support for the Freescale KL25Z (KLxx) #308

Open
posborne opened this issue Jun 3, 2015 · 2 comments
Open

Add support for the Freescale KL25Z (KLxx) #308

posborne opened this issue Jun 3, 2015 · 2 comments

Comments

@posborne
Copy link
Contributor

posborne commented Jun 3, 2015

I have a few KL25Z FRDM boards laying around and think it would be an interesting board to add as it has a Cortex M0+ rather than an M3/M4. The FRDM board from freescale can be bought for $12.95 and includes a few extra peripherals on board that are nice for testing.

Notes

  • MCU: MKL25Z128VLK4
  • On Board Peripherals:
    • MMA8451Q - 3-axis accelerometer (I2C)
    • PWM Controlled RGB LED
    • Capacitive touch sensor
  • Easy programming via mbed standard; supports CMSIS-DAP out of the box for debugging

More info and links on the mbed page here: https://developer.mbed.org/handbook/mbed-FRDM-KL25Z.

I haven't dug into things enough to determine if there are levels of granularity/IP reuse beyond the following that might make sense:

Here's the block diagram for KL2x processors from http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=KL2x:

block diagram

Thanks for any input. With this development, I would also like to see how effectively we can leverage the work for ioregs! generation form the CMSIS-SVD for the chip family (assuming I can locate it) based on #259 and #267.

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 3, 2015

Yes, you can go generic as in mbed those KLxx, although they differ at least in spi as I recall, and there are newer KLxx devices which contain a bit different serial, spi and I recall there's at least one "new" peripheral for serial communication.

I was planning a while ago to add KL25Z, I might help you, to get back to rust 😄

@bharrisau
Copy link
Contributor

You have a couple of levels to thinl about. The peripherals are usually 90%
the same, some optional features and different capacities result in
additional registers. I'm still not sure the best way to deal with these
minor differences in peripherals.

Then you also have the system controller that controls the clock for each
peripheral. This changes depending on which peripherals are around. This
would be best as a compile time thing, as more than half of its
configuration is only known at compile time when the device is specified.
On 3 Jun 2015 3:05 pm, "Martin Kojtal" [email protected] wrote:

Yes, you can go generic as in mbed those KLxx, although they differ at
least in spi as I recall, and there are newer KLxx devices which contain a
bit different serial, spi and I recall there's at least one "new"
peripheral for serial communication.

I was planning a while ago to add KL25Z, I might help you, to get back to
rust [image: 😄]


Reply to this email directly or view it on GitHub
#308 (comment).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants