Thursday, February 6, 2014

Hands on the $13 TI Stellaris LaunchPad

You are looking at my latest digital kit, an ARM-based Stellaris LaunchPad. At the heart of the board is an ARM Cortex-M4 32-bit CPU running at a modest (by today's standards) 80MHz. It comes along with 256K of FLASH and 32KB of SRAM.


Here’s a composite block diagram of the TI Stellaris LM4F microcontroller series that shows the large number of goodies you can get on one inexpensive piece of silicon:


Stellaris Block Diagram

It won't run Linux or Android or any other major operating system, but for writing executives, interrupt handlers and I/O manipulators in C or assembler down at the bare silicon, it has more than enough raw computational power.


You get a couple of switches and a RGB LED . The the pins broken out to .100″ male+female headers, which is nice. Notably, the male pins are facing up – opposite of Arduino, but perhaps more desirable. It means you can’t plunk it down into a breadboard, but then you couldn’t anyway since each row of headers is dual. Instead, it’ll be much easier to wire-wrap to, which is what you’d probably be using male pins for anyway.


Stellaris LanchPad Evaluation Board

Texas Instruments has done a good job of providing all the information you need to quickly get started with the LaunchPad. There is a wiki, a Stellaris Quickstart PDF, and even an instructional video that will walk you through writing your first application and flashing it to the the board.


TI has a comprehensive workshop that will get you up to speed on making the most of your LaunchPad. Alongside I also found this from TI on YouTube :


[youtube=http://www.youtube.com/playlist?list=PL4iW33BXXn8MlxEPsobGqrkDzu1rgTy0m]


Downloading and installation of the drivers and Code Composer Studio took a while, but once I had all the software installed, it took only a few minutes to compile and flash the demo project (the usual blinking-LED app). The sample applications provide a good starting point for your own projects, and there is also an online forum where you can consult with other Stellaris users.

Finally, I must mention that a hands-on, learn by doing course that shows you how to build real-world embedded systems started January 22nd. The course has been designed not only to explain how electronic gadgets are designed, developed, and built as embedded systems but also to get students to build circuits and program a microcontroller using C.

UT.6.01x Embedded Systems - Shape the World comes from The University of Texas at Austin and is an online version of a required course for all students embarking on Electrical and Computer Engineering there. It is being taught by Jon Valvano and Ramesh Yerraballi who introduce the course in this video.






So, assuming you’re interested in getting your hands on one of these powerful little kits, head over to Texas Instruments. For $13, you really can’t go wrong….

For Masr El ma7rosa followers :) actually you -as I did- can get one for around 200 LE included shipping, from Electroniaty Store

...

Wednesday, February 5, 2014

Hands on the $13 TI Stellaris LaunchPad

You're looking at my latest digital gadget, an ARM-based Stellaris LaunchPad. At the heart of the board is an ARM Cortex-M4 32-bit CPU running at a modest (by today's standards) 80MHz. It comes along with 256K of FLASH and 32KB of SRAM.

Here’s a composite block diagram of the TI Stellaris series that shows the large number of goodies you can get on one inexpensive piece of silicon:

Stellaris Block Diagram
It won't run Linux or Android or any other major operating system, but for writing executives, interrupt handlers and I/O manipulators in C or assembler down at the bare silicon, it has more than enough raw computational power.

You get a couple of switches and an RGB LED. Finally, the pins broken out to .100″ male+female headers, which is nice. Notably, the male pins are facing up – opposite of Arduino, but perhaps more desirable. It means you can’t plunk it down into a breadboard, but then you couldn’t anyway since each row of headers is dual. Instead, it’ll be much easier to wire-wrap to, which is what you’d probably be using male pins for anyway.

 

Thursday, June 13, 2013

Basic Calculator V2.0 for 8051

Hello again, after I posted my basic calculator V1.0, I found that many friends and visitors liked it. They also asked if it could be developed to handle 2 digits calculations.

The post provides a simple calculator project code using assembly for 8051 micro-controller. This is a simple up to two decimal digit calculator which implements only 4 functions: addition(+), subtraction(-), multiplication(x) and division(/).

Assembly code, Proteus simulation and Eagle Schematics is given in the ‘Downloads’ section at the bottom of this page. It is assumed that you know how to interface LCD and keypad with AT89C52.

The result of the Proteus simulation is shown below.

Simulation

In the above figure, we can see that a result of “12×12=144” is shown on the screen. To achieve this result, first press ’1' followed by '2' from the keypad. Then press ‘x’ and then press ’12′ again. After that, on pressing ‘=’ from the keypad the result ’144′ is automatically displayed on the screen. Then after seconds the screen cleared automatically for next try.

The schematic with minimum right connections is shown below.

CalculatorV2_Sch

 

Features 

  • You can give any single digit or two digits from 00 to 99.
  • 4 functions are implemented i-e addition, subtraction, multiplication and division.
  • Error messages are displayed if wrong input is detected. For example, if calculator is expecting a number, but a function key is pressed then ‘Error!!’ message is displayed. Similarly, ‘Error!!‘ message is displayed if wrong key is pressed instead of a function key.

Downloads

The code was compiled in Kiel uVision 4 and simulation was made in Proteus v7.8 SP2.
To download code , schematics and simulation CLICK HERE

Sunday, April 14, 2013

How to Convert 16-bit Binary digits to BCD for 8051

This post is simply showing how to convert Binary 16-bit to five BCD digits.  The routine's importance come from that 8051 is a 8-bit microprocessor so it can't handle data in 16-bits directly. The routine has many uses such as with arithmetic calculator or frequency meter.

As usual I put a bit detailed flowchart aside with the assembly code which is also come with full describing comments. Download links are given at the bottom of the post.


BIN2BCDFLOWCHART
010203


Downloads


To download code and flowchart click here

Friday, April 12, 2013

Digital Frequency Meter for 8051

A good use of the frequency counter is to calibrate other equipment. For example a signal generator that doesn't have its own digital display. The meter will show the exact frequency being produced by the signal generator.  Based on the 8051 microcontroller. It is assumed that you know how to interface LCD with the microcontroller.

Code, flowchart, schematic diagram and Proteus simulation is given in the ‘Downloads’ section at the bottom of this page. 

Firmware



  • This Program is to count frequency from T1 (P3.5), by using mode 1 Counter 16 bit.

  • Counter resets every 1 second that generated by timer 0, mode 1, timer 16 bit.

  • Every 1 second data will show on LCD Character.

  • The  assembly code is followed by detailed comments describe each routine

  • The flowchart below describing the concept and procedure.


Freq Meter

Hardware Schematic


All parts and components with full connection is shown below.

Capture2

Features



  • Minimum hardware with high accuracy

  • Sensitivity is perfect from 1 Hz to 500 KHz

  • Work and tested on most of periodic signals (Square, Sin, Saw tooth, .. )


Downloads


The code was compiled in Kiel uvision 4 and simulation was made in Proteus v7.8 SP2.
To download code , flowchart and proteus simulation click here

Thursday, March 21, 2013

Digital Calendar for 8051

A digital calendar is one that displays time and date digitally. The project explained here, displays time on a 16x2 LCD module. A keypad  4x3 matrix is used to set it. This circuit can be used in cars, houses, offices etc.

This clock works in 12 hour mode and is configured by programming the microcontroller. The program uses a delay function for producing a delay of 1 second.

Code and Proteus simulation is given in the ‘Downloads’ section at the bottom of this page. The program took from me the whole night though good to know that the project is still at testing phase. For this I'm expecting your feedback if any bug found or development needed :)

The Proteus simulation is shown below.

Digital Calendar

On reset, the LCD prompts the user to set time first. The hour and minute components can be set by entering the corresponding valid values using the keypad. The AM/PM mode is set by entering 1 or 2. Give 1 for am while 2 for pm. After that the LCD prompts the user to set date components which is day, month and year.

The set time and date is displayed on LCD screen and changes as the time passes on. Seconds are increased after every one second by making use of delay function uses timer 0 with mode 1. As second reaches 59, minute is incremented by one and second is reset to 0. Similarly, as minute reaches 59, hour is increased by one and minute is set to 0. After hour reaches 11, minute reaches 59 and second reaches 59,  the AM/PM mode is changed accordingly. The date is changing by the same concept taking into account the difference values for its components.

Features




  • The possibility of setting  time and date

  • Simple circuit and min components

  • Acting as real time clock


Downloads


The code was compiled in Kiel uVision 4 and simulation was made in Proteus v7.8 SP2.

To download code and simulation click here