Generating video signals on an ARM

47 views
Skip to first unread message

Damien P

unread,
Nov 4, 2012, 1:15:53 AM11/4/12
to hackerspac...@googlegroups.com
Since I haven't been able to come along for a few weeks, I'll have to show off what I've been up to here.

I've been working with an STM32 Discovery board [1] [2] to learn about ARM processors.  I thought generating video signals would be a good goal.  I've managed to get a picture:

http://tinypic.com/r/23ihsm0/6

You can read more about it here:

https://sourcegate.wordpress.com/category/stm32l-discovery/

 1: http://www.st.com/internet/evalboard/product/250990.jsp
 2: http://au.element14.com/stmicroelectronics/stm32l-discovery/board-eval-stm32l-discovery/dp/187698701

Joel Stanley

unread,
Nov 7, 2012, 3:00:51 AM11/7/12
to hackerspac...@googlegroups.com
On Sun, Nov 4, 2012 at 4:45 PM, Damien P <ath...@gmail.com> wrote:
> I've been working with an STM32 Discovery board [1] [2] to learn about ARM processors. I thought generating video signals would be a good goal. I've managed to get a picture:

Looks cool Damien!

I've written a bunch of code (USB drivers... yuck!) for the STM32F,
and have another project in progress that might use it.

I was going to ask if you started from scratch or used an existing
RTOS. Reading your blog post it sounds like you used ChibiOS; I did
come across this in the past, but didn't get to the point of building
and running it. How did you find it to use?

Would you recommend it to someone else?

It's funny that you're thinking about the iMX25, as I've spent some
time with that one too (funnily enough, lots of time around USB -
again!).

Cheers,

Joel

Damien P

unread,
Nov 7, 2012, 7:12:17 AM11/7/12
to hackerspac...@googlegroups.com, jo...@jms.id.au
On Wednesday, November 7, 2012 6:31:14 PM UTC+10:30, Joel Stanley wrote:
Looks cool Damien!

Thank you! I'll do a show-and-tell next time I'm in (those videos I posted weren't that great), but I won't be in on Wednesdays much anymore.

I've written a bunch of code (USB drivers... yuck!) for the STM32F,
and have another project in progress that might use it.

Have you done much with accurate timing with ARMs?  Do you have any ideas why I get a shaky image?
 
Reading your blog post it sounds like you used ChibiOS; I did
come across this in the past, but didn't get to the point of building
and running it. How did you find it to use?

The only thing I used the OS for was so I didn't have to use the ST libraries, which are a bit strange and don't have a very nice license.  I've put the code here:

  https://github.com/damien-hackadl/stm32-video

The most interesting file is probably video.c.  I can't tell you much about ChibiOS because I didn't really use it.  I liked its build system though: you copy a template, run "make" and it builds itself and your code.  You don't have to keep the ChibiOS code with yours.
 
It's funny that you're thinking about the iMX25, as I've spent some
time with that one too

The only reason I thought about it is because of the cheap Olimex board.  It's the only Raspberry Pi-like board that has a complete reference manual for its CPU.  The Olinuxino is $35 on ebay, and has more IO ports than you can shake a stick at, although I didn't see more than 8 GPIO pins attached to a single register which might exclude some high speed communication.

I notice on the Raspberry Pi blog they were commenting on the fast boot time of RISC OS (and someone at the Raspberry Jam the other week had it running, and it starts in a few seconds), and a RTOS would be faster, only you need to do bare-metal programming.

Damien P

unread,
Nov 7, 2012, 7:28:16 AM11/7/12
to hackerspac...@googlegroups.com, jo...@jms.id.au
On Wednesday, November 7, 2012 10:42:17 PM UTC+10:30, Damien P wrote:
I can't tell you much about ChibiOS because I didn't really use it. 

Actually there's a tiny bit of ChibiOS code in lissajous.c.  The chip on my board doesn't have an FPU, and the floating point calculations would be too slow to put in the interrupt handler, so I used another thread for the calculation and woke it up from the interrupt handler.

Damien P

unread,
Nov 9, 2012, 3:11:47 AM11/9/12
to hackerspac...@googlegroups.com
I just noticed that MSP430s have debuggers, and some have DMA as well... maybe I should have a look at those.  And they're 16 bit.  The dev board is the right price at least... I haven't looked at them seriously before because I had a good idea how AVRs worked, but since I've used a debugger with the ARM chips I think these might be worth looking at.
Reply all
Reply to author
Forward
0 new messages