Search This Blog

Sunday, July 29, 2018

ChibiTerm - I/O assignments

Projects / ChibiTerm  Original post date: 03/09/2016


STM32F030 TSSOP-20 pin assignment by I/O type (Electrical specs)
The problem with using a part in a reduced pin package is like trying to find a full set of anything in a discount bin of mismatch/missing parts (after a sale). I created my handy work sheet for these type of work.

Those 5V tolerant pins are few on this package, so I'll try to preserve them. I can protect the 3.3V only pins by adding series resistors and diodes etc.




Peripheral and alternative function assignment, DMA channels
My original design used the more powerful timer TIM1 as I needed the SPI to talk to external SPI RAM. The new design only need the MOSI for video output.

I changed the code to use TIM3 last night as I only needed 1 output compare pin for H sync and MISO is now free. Vsync signal timing is not as critical, so I simply toggle a GPIO pin in my IRQ handler. SCK happens to be free for that. These changes frees up the 5V tolerant lines PA9/PA10.

The internal RC oscillator is jittery which manifests as twitchy display more noticeably on the right side as the deviations in the timing accumulates. This unfortunately means that the 5V tolerant pin PF0 has to be reserved for an oscillator and additionally PF1 for a crystal (cheaper).


I don't want to give up the SWD pins without a big messy fight. While the chip has a serial bootloader, not being able to do real time hardware debugging is like trying to cook when you have a bad cold. You might not miss it much when you use precooked libraries. When you try bare metal coding from the 700+ pages of reference manual, you'll want all the help you can get.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.