Month: June 2019

PSoC4, SCB and TCPWM

Continuing on the PSoC4. I’ve written the previously discussed register-poking-code into some functions for the library. This code talks nicely over the UART, as it did before. So, now the code is in the library for the 4100/4200 family, let’s have a look at the 4100M/4200M family. As far as I can tell, the only…


About designing PCBs

A few years ago, I decided to make a project: A temperature logger, that logs the temperature of a number of DS18B20 sensors and stores them to an SD card. The project consisted of an ATMEL AVR (ATMEGA328P) microcontroller, an RTC, an SD card holder, and of course some temperature sensors. Back then, I didn’t…


PSoC 4200 says “Hello World!” over UART.

“Hello World!”, I’ve got the CY8CKIT-049 (CY8C4245AXI-483) to put out some data over UART. It’s way from finished, I still have to incorporate all the code into the library, but we’re getting somewhere. Previously, I’ve been setting up the Internal Main Oscillator (IMO). But for now, I’ll keep it running at it’s default speed of…


Some thoughts about embedded development

Some thoughts about embedded development. In specific, about source code licenses. And the reason why I started this PSoC4 support for libopencm3 project. The first reason to start the project is, right now, the only way to develop for the PSoC4 is through PSoC Creator, which only runs on Microsoft Windows. As I don’t use…


Intermezzo: looking at the ROMTABLE

Looking through the psoc4 implementation in openocd I noticed a function called psoc4_get_family(). In this function, reads some data from the ROMTABLE, deriving a family and designer from the data available there. Now, this ROMTABLE is documented in the various register TRMs, and it is a part of the CoreSight specifications. This is the information…