473,396 Members | 1,933 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Alterative to Basic for microcontroller


I'm an Electronics student in college and I'm currently working on a
project. I was given a circuit diagram for my project, from which I had to
design a printed circuit board to be sent off and manufactured. I got my
printed circuit board back and populated it with components.
On my circuit board, I have a chip holder for a Basic STAMP
microcontroller. To those unfamiliar with it, the Basic STAMP is a
microcontroller which has an onboard Basic interpretter. What you do is
hook the Basic STAMP up to a PC via a COM port and send programs to it to
be executed on the circuit board.
Anyway, when it came to programming the chip, I was frustrated with
using Basic; the reason I was frustrated is that I am already experienced
with C and C++, and so had no interest in learning another language from
scratch, and also because Basic is the cripple of programming languages.

I want to write a program in C to be executed on my circuit board. My
initial thoughts were that I had two choices:

1) Somehow overide the Basic interpreter on the chip and supply it with my
own machine code to be executed (for this I would need a C compiler that
will produce machine code to be run on the Basic stamp).

2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.

Choice 2 would be my preference but I haven't found any such chip so
far. Would anyone here know of any such chip? As for Choice 1, I haven't a
clue how I would go about doing that so could anyone please offer some
advice?

I enquired around my college as to how I should go about this, and one
lecturer told me that there's a Java STAMP chip which is pin-compatiable
with the Basic STAMP. I thought this was great as the common features of C
and Java are almost identical... until I realised that Java doesn't have
pointers, ugh!

So any ideas on how I can write a program in C to be executed on my
circuit board which is set up to handle a Basic STAMP chip?

And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send the
machine code to the microcontroller. . . ?

--

Simon Walsh
Apr 23 '07 #1
6 3122

"Simon Walsh" <p@q.rwrote in message
news:mp*******************@news.indigo.ie...
>
I'm an Electronics student in college and I'm currently working on a
project. I was given a circuit diagram for my project, from which I had to
design a printed circuit board to be sent off and manufactured. I got my
printed circuit board back and populated it with components.
On my circuit board, I have a chip holder for a Basic STAMP
microcontroller. To those unfamiliar with it, the Basic STAMP is a
microcontroller which has an onboard Basic interpretter. What you do is
hook the Basic STAMP up to a PC via a COM port and send programs to it to
be executed on the circuit board.
Anyway, when it came to programming the chip, I was frustrated with
using Basic; the reason I was frustrated is that I am already experienced
with C and C++, and so had no interest in learning another language from
scratch, and also because Basic is the cripple of programming languages.

I want to write a program in C to be executed on my circuit board. My
initial thoughts were that I had two choices:

1) Somehow overide the Basic interpreter on the chip and supply it with my
own machine code to be executed (for this I would need a C compiler that
will produce machine code to be run on the Basic stamp).

2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.

Choice 2 would be my preference but I haven't found any such chip so
far. Would anyone here know of any such chip? As for Choice 1, I haven't a
clue how I would go about doing that so could anyone please offer some
advice?

I enquired around my college as to how I should go about this, and one
lecturer told me that there's a Java STAMP chip which is pin-compatiable
with the Basic STAMP. I thought this was great as the common features of C
and Java are almost identical... until I realised that Java doesn't have
pointers, ugh!

So any ideas on how I can write a program in C to be executed on my
circuit board which is set up to handle a Basic STAMP chip?

And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send
the
machine code to the microcontroller. . . ?
Just write a C compiler / interpreter in BASIC, and Bob's your uncle.
--
Free games and programming goodies.
http://www.personal.leeds.ac.uk/~bgy1mm

Apr 23 '07 #2
Simon Walsh wrote:
And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send the
machine code to the microcontroller. . . ?
STAMPs started life back when OTP (one time programmable) uC were the
norm, and so you could not actually do what you state.

STAMPs were a quite clever way to get 'soft' in to the software.

With todays Flash uC, with on-chip debug blocks, there is certainly
less need for a STAMP type approach.

-jg
Apr 23 '07 #3
Simon Walsh wrote:
2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.
Basic Stamp one was released in 1992.

I think it was 1995 when mEL released their first basic compiler that
was stamp compatible.

Today, you can use virtually any PIC chip with Basic, C, or many other
choices.

see:
http://www.dontronics-shop.com/home.php?cat=301
for a range of software that is available for PICs

Don...

--
Don McKenzie
E-Mail Contact Page: http://www.dontronics.com/e-mail.html

Crystal clear, super bright OLED LCD (128x128) for your microcontroller.
Simple serial RX/TX interface. Many memory sizes.
http://www.dontronics-shop.com/produ...roductid=16460

No More Damn Spam: http://www.wizard-of-oz.com
Apr 23 '07 #4
On Mon, 23 Apr 2007 19:02:42 GMT, Simon Walsh <p@q.rwrote:
>
I'm an Electronics student in college and I'm currently working on a
project. I was given a circuit diagram for my project, from which I had to
design a printed circuit board to be sent off and manufactured. I got my
printed circuit board back and populated it with components.
On my circuit board, I have a chip holder for a Basic STAMP
microcontroller. To those unfamiliar with it, the Basic STAMP is a
microcontroller which has an onboard Basic interpretter. What you do is
hook the Basic STAMP up to a PC via a COM port and send programs to it to
be executed on the circuit board.
Anyway, when it came to programming the chip, I was frustrated with
using Basic; the reason I was frustrated is that I am already experienced
with C and C++, and so had no interest in learning another language from
scratch, and also because Basic is the cripple of programming languages.

I want to write a program in C to be executed on my circuit board. My
initial thoughts were that I had two choices:

1) Somehow overide the Basic interpreter on the chip and supply it with my
own machine code to be executed (for this I would need a C compiler that
will produce machine code to be run on the Basic stamp).

2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.
I use a MicroChip pic and IDE. Put it on a dughter board with some
header pins that will plug intoo the Stamp socket. It woudl'nt be hard
to do.
Choice 2 would be my preference but I haven't found any such chip so
far. Would anyone here know of any such chip? As for Choice 1, I haven't a
clue how I would go about doing that so could anyone please offer some
advice?

I enquired around my college as to how I should go about this, and one
lecturer told me that there's a Java STAMP chip which is pin-compatiable
with the Basic STAMP. I thought this was great as the common features of C
and Java are almost identical... until I realised that Java doesn't have
pointers, ugh!

So any ideas on how I can write a program in C to be executed on my
circuit board which is set up to handle a Basic STAMP chip?

And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send the
machine code to the microcontroller. . . ?
Apr 23 '07 #5
Simon Walsh wrote:
I'm an Electronics student in college and I'm currently working on a
project. I was given a circuit diagram for my project, from which I had to
design a printed circuit board to be sent off and manufactured. I got my
printed circuit board back and populated it with components.
On my circuit board, I have a chip holder for a Basic STAMP
microcontroller. To those unfamiliar with it, the Basic STAMP is a
microcontroller which has an onboard Basic interpretter. What you do is
hook the Basic STAMP up to a PC via a COM port and send programs to it to
be executed on the circuit board.
Anyway, when it came to programming the chip, I was frustrated with
using Basic; the reason I was frustrated is that I am already experienced
with C and C++, and so had no interest in learning another language from
scratch, and also because Basic is the cripple of programming languages.

I want to write a program in C to be executed on my circuit board. My
initial thoughts were that I had two choices:

1) Somehow overide the Basic interpreter on the chip and supply it with my
own machine code to be executed (for this I would need a C compiler that
will produce machine code to be run on the Basic stamp).

2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.

Choice 2 would be my preference but I haven't found any such chip so
far. Would anyone here know of any such chip? As for Choice 1, I haven't a
clue how I would go about doing that so could anyone please offer some
advice?

I enquired around my college as to how I should go about this, and one
lecturer told me that there's a Java STAMP chip which is pin-compatiable
with the Basic STAMP. I thought this was great as the common features of C
and Java are almost identical... until I realised that Java doesn't have
pointers, ugh!

So any ideas on how I can write a program in C to be executed on my
circuit board which is set up to handle a Basic STAMP chip?

And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send the
machine code to the microcontroller. . . ?
I am fairly sure the CPU is a Microchip PIC16. You can get a limited
free compiler from Hi-tech. You will of course need to learn the
details of the Chip. Either way it is not a PC it will not Run C++.
The resources are very limited compared to a PC size CPU.
Apr 24 '07 #6

"Simon Walsh" <p@q.rwrote in message
news:mp*******************@news.indigo.ie...
>
I'm an Electronics student in college and I'm currently working on a
project. I was given a circuit diagram for my project, from which I had to
design a printed circuit board to be sent off and manufactured. I got my
printed circuit board back and populated it with components.
On my circuit board, I have a chip holder for a Basic STAMP
microcontroller. To those unfamiliar with it, the Basic STAMP is a
microcontroller which has an onboard Basic interpretter. What you do is
hook the Basic STAMP up to a PC via a COM port and send programs to it to
be executed on the circuit board.
Anyway, when it came to programming the chip, I was frustrated with
using Basic; the reason I was frustrated is that I am already experienced
with C and C++, and so had no interest in learning another language from
scratch, and also because Basic is the cripple of programming languages.

I want to write a program in C to be executed on my circuit board. My
initial thoughts were that I had two choices:

1) Somehow overide the Basic interpreter on the chip and supply it with my
own machine code to be executed (for this I would need a C compiler that
will produce machine code to be run on the Basic stamp).

2) Find a chip which has the same pin layout as the Basic STAMP and use
that instead.

Choice 2 would be my preference but I haven't found any such chip so
far. Would anyone here know of any such chip? As for Choice 1, I haven't a
clue how I would go about doing that so could anyone please offer some
advice?

I enquired around my college as to how I should go about this, and one
lecturer told me that there's a Java STAMP chip which is pin-compatiable
with the Basic STAMP. I thought this was great as the common features of C
and Java are almost identical... until I realised that Java doesn't have
pointers, ugh!

So any ideas on how I can write a program in C to be executed on my
circuit board which is set up to handle a Basic STAMP chip?

And just as an aside, why would anyone stick an interpreter on a
microcontroller when they can just compile the program on a PC and send
the
machine code to the microcontroller. . . ?

--

Simon Walsh
Pick a micro with a free c compiler.

Pic from microchip.com pic18f,pic24f and pic30f

microchip provide free student versions of their compilers for 18f,24f and
30f.
The pic16f only has the free limited version c compiler from hitec.
Pics were used in the earlier basic stamp models - I think(may be wrong)
that the latest ones are using scenix pic compatable micros
(run a lot faster up to 75MHz but no hardware peripherals).
avr from atmel www.atmel.com/avr
winavr or avrgcc(linux or mac) are ports of gcc for avr
http://winavr.sourceforge.net/

digikey have a special on avr stk500 + jtage ice2 for US$150
or stk500 + avr dragon for US$49
http://www.digikey.com/scripts/dksea...KIT&dkcid=1971

There is a basic compiler for avr's from mcselec.com bascom avr
lite version is a free demo
http://www.mcselec.com/index.php?opt...d=208&Itemid=1

Smiley electronics make a good beginners book/kit on c for avr's using the
avr butterfly board
<http://www.smileymicros.com/index.php?module=pagemaster&PAGE_user_op=view_page &PAGE_id=26&MMN_position=2:2>

get the free starter pdf http://www.smileymicros.com/QuickStartGuide.pdf

Another good website for avrs is www.avrfreaks.net

Both pics and avr's are fairly simple to learn and use.
16f has 35 assembler instructions, 18f approx 115 ,
avr's approx 115

Olimex make cheap pic and avr boards, sparkfun.com sells them
pic boards
http://www.sparkfun.com/commerce/cat....php?cPath=2_9

avr boards
http://www.sparkfun.com/commerce/cat...php?cPath=2_10

Also futurlec.com have some cheap boards but can take a while to ship your
order
and their boards are not that well documented for beginners.
http://www.futurlec.com/Boards.shtml
There is also the msp430 chips from TI
<http://focus.ti.com/mcu/docs/mcuprodoverview.tsp?sectionId=95&tabId=140&familyI d=342&DCMP=MCU_other&HQS=Other+IL+msp430>

They also have a gcc port available.
http://mspgcc.sourceforge.net/

sparkfun.com also sell some boards
http://www.sparkfun.com/commerce/cat...php?cPath=2_11

Alex
Apr 25 '07 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: Thomas Baier | last post by:
Hi there, I've got a little problem while working on a bootloader for a C164 microcontroller. The microcontroller gets the data over the serial port. I've already implemented some functions that...
25
by: Jhon | last post by:
Hi every one, I got very basic question, here i go: Say i have 11001 11010 bits which are infact 10 bits. Now i want to address every bit so if it is zero i would add one and if it is one...
1
by: atefe | last post by:
hello i want to transmit data from microcontroller to pc via FT245BM (usb fifo i.c.). i need visual basic codes for receiving data . would you mind helping me? thanks alot.
2
by: bobthejazzer | last post by:
To start this message off, I want to relay the fact that I am for no reason a proffesional programmer. In saying this, I am here to learn and I do not want any one to think strangly about any weird,...
3
by: Martin Wells | last post by:
I'm doing an embedded systems college project this year. I making a portable device that will take input in the form of simple switches, and give output in the form of LED's. I haven't yet decided...
16
by: Martin Wells | last post by:
I'm doing an embedded systems college project this year. I'm making a portable device that will take input in the form of simple switches, and give output in the form of LED's. Can you please...
1
by: Beginner KS | last post by:
Hi, I want to design a form in the VB2005(visual studio 2005) to receive data(temperature measurement result) from microcontroller(which is CPLD coolrunner II) after received the data then it will be...
2
by: confus3d | last post by:
I was wondering if there are alterative xml messaing instead of SOAP, if their are what are the advantages / disadvantages ?
33
by: =?ISO-8859-1?Q?Tom=E1s_=D3_h=C9ilidhe?= | last post by:
I'll try to summarise this as best I can, as my last thread wasn't very to-the-point: The C Standard says the following two things: * int is the natural integer type for the system. * int...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.