Finally my long term desire to make a MIDI synthesizer using touchpad was satisfied. When I first thought of making a MIDI synthesizer two years ago, I was planning to do it using an AVR microcontroller but the implementation of it was procrastinated till now.
Showing posts with label hobby electronics projects. Show all posts
Showing posts with label hobby electronics projects. Show all posts
Thursday, October 13, 2011
Working with mbed
After one year of working with the NGX blueboard, I finally got a chance to fool around with mbed. Till now I was wondering as to what makes mbed so popular. I came to know the reason after working with it.
Wednesday, May 25, 2011
MCPWM in LPC17xx
Motor Control PWM can be used to control AC and DC motors. It can also be used for many other purposes which require timing, counting, comparing or capturing. The MCPWM is used for generating audio signals in the 2d game console as the general PWM is used for color generation. And I will be discussing as to how it works and how to initialize it.
Monday, April 18, 2011
Success of 2D game console
Long time efforts have paid off and we were able to create a 2D game console for NTSC TV!! The features and specifications of the console are as follows.
Easier method of color generation for NTSC Television
Please read this and this (optional) for better understanding before you read this post.
Few popular methods used to generate different colors for NTSC are
1. using AD725 IC for RGB values to NTSC color conversion
2. using a standard 3.579545MHz as the color carrier and producing different delays to get different phase and in-turn different colors in NTSC. This can be done by using a number of buffers to create delays and selecting the required color among these delayed signals by the use of a multiplexer.
Few popular methods used to generate different colors for NTSC are
1. using AD725 IC for RGB values to NTSC color conversion
2. using a standard 3.579545MHz as the color carrier and producing different delays to get different phase and in-turn different colors in NTSC. This can be done by using a number of buffers to create delays and selecting the required color among these delayed signals by the use of a multiplexer.
Tuesday, January 25, 2011
DMA in LPC17xx
Direct Memory Access is a feature which allows the peripherals to access the memory directly or to transfer data to other peripherals without the help of CPU. So whenever we are using DMA, we can be doing computations on the CPU while the data transfer is taking place. Effectively the microcontroller is multitasking.
LPC17xx has a General Purpose DMA (GPDMA) which has 8 channels of which each can perform unidirectional data transfer. All types of data transfers like memory-memory, memory-peripheral, peripheral-peripheral are supported. And we can prioritize the DMA transfers as we wish. It can also perform 8-bit, 16-bit and 32-bit wide transactions. If we want to transfer a stream of data that is not stored in contiguous manner, then we can use the scatter and gather feature of the DMA which uses linked list. There are many many more features available with the GPDMA out of which I will be explaining some basic features in this post. I will talk about other advanced features as and when it is required.
LPC17xx has a General Purpose DMA (GPDMA) which has 8 channels of which each can perform unidirectional data transfer. All types of data transfers like memory-memory, memory-peripheral, peripheral-peripheral are supported. And we can prioritize the DMA transfers as we wish. It can also perform 8-bit, 16-bit and 32-bit wide transactions. If we want to transfer a stream of data that is not stored in contiguous manner, then we can use the scatter and gather feature of the DMA which uses linked list. There are many many more features available with the GPDMA out of which I will be explaining some basic features in this post. I will talk about other advanced features as and when it is required.
Monday, January 24, 2011
Using PWM on LPC17xx
PWM can be used for generating analog signals of frequency very much lower than that of the PWM frequency. LPC1768 has one PWM with six channels. There will be one timer for each PWM and this timer will be used by all channels of that PWM. Configuring the PWM is similar to that of configuring a timer. The only difference is that we also need to specify the location of rising and falling edges for each channel that we use.
Monday, January 17, 2011
Why is NTSC color carrier frequency 3.57954545 MHz and not some other number that can be remembered easily?
Hello guys. I am back after a long break. Now I will continue to tell a little more about NTSC before I start writing blogs on the actual Game Console implementation on LPC1768. I would suggest you to read the previous post before reading this one for better understanding.
I mentioned that the NTSC color carrier frequency is 3.57954545 MHz. If I want to create a game console for NTSC TV then I need to generate this frequency and use it as the color carrier. But why is 3.57954545 MHz chosen as the carrier and not some other frequency which can be easily remembered or generated?
I mentioned that the NTSC color carrier frequency is 3.57954545 MHz. If I want to create a game console for NTSC TV then I need to generate this frequency and use it as the color carrier. But why is 3.57954545 MHz chosen as the carrier and not some other frequency which can be easily remembered or generated?
Friday, November 19, 2010
Understanding the basic requirements to display video on a CRT TV
The basic thing that attracted me towards ARM was the idea of creating a Game Console for NTSC TV. I previously made a game console for VGA monitor using AVR. But now the desire to make it better, to get greater resolution video, good quality audio and also huge number of sprite support made me start working with ARM. The basic reason for choosing LPC1768 over hundreds of microcontrollers available in the market was that this controller seems appropriate for video graphics generation purpose. The basic architecture of it is such that it makes our job simple.
Wednesday, November 17, 2010
Configuring and playing with Timer of LPC1768
After saying Hello to LPC1768 and blinking an LED using delay through GPIO, it is time to use the timer for blinking the LED. First let us just get the timer running and then with the help of interrupts we shall blink the LED. For all the register description we require LPC17xx manual.
Thursday, October 21, 2010
Software tools required to work with ARM
To work with any microcontroller you will require an IDE, a compiler, and a flasher or code burning program (if you are not using a bootloader). Today I will talk about the basic software requirements to start working with an ARM cored microcontroller.
Wednesday, October 20, 2010
Hello geeks
Hello, my fellow geeks. I am Thejasvi and I am here to share some of my knowledge on Embedded systems and also to get more from your side.
Subscribe to:
Comments (Atom)