Discussion forum for the BasicX family of microcontroller chips.
|
What other microcontrollers are there out there that use the Basic language to program its microcontrollers. Am i correct to say that both the BasicX and BasicStamp uses a subset of the Visual Basic language to program the microcontroller.Is this subset called Basic? In fact, why use Basic instead of C or C++ other than for the reasons stated in the manual? I am asking these because i am writting a report on the basic microcontroller and would like to hear some views...hopefully it can be substaniated with some facts. One of the resons i can think of is this: because of the increasing popularity of Visual Basic and that most PCs run on Windows and since VB is a robust object oriented language syntax ideally suited for Windows applications, it is only logical tt real world applications like microcontrollers be programed in VB. Is that one of the reasons Chris? |
|
|
|
the main resion that I chose the Basic-x chip set is the speed that they run compaired to the other microcontrollers out there of the same cost. I have been programming in VB for quite some time and there was a very small learning curve to get up to speed with the basic-x. that way I can consentrate more on building my robot instead of learning how to program it. I know VB and I know some asm. I do not know C. --- Dexton Rivers <> wrote: > -------------------------- eGroups Sponsor > > What other microcontrollers are there out there that use the Basic > language to program its microcontrollers. Am i correct to say that > both the BasicX and BasicStamp uses a subset of the Visual Basic > language to program the microcontroller.Is this subset called Basic? > In fact, why use Basic instead of C or C++ other than for the reasons > > stated in the manual? > I am asking these because i am writting a report on the basic > microcontroller and would like to hear some views...hopefully it can > be substaniated with some facts. > One of the resons i can think of is this: because of the increasing > popularity of Visual Basic and that most PCs run on Windows and since > > VB is a robust object oriented language syntax ideally suited for > Windows applications, it is only logical tt real world applications > like microcontrollers be programed in VB. > Is that one of the reasons Chris? __________________________________________________ /">http://mail.yahoo.com/ |
|
--- wrote: > I believe the reasoning behind the use of a VB variant on the BX-24 > was that VB is currently the most widely used language in use today. > Of course, I wonder how much overlap there really is between the VB > world and the embedded development world. I wonder as well, having never used VB or any basic for embedded dev work myself. > Personally, I find VB pretty awkward for doing embedded development, Agreed, although the c style environments are much more complex with various register sets, memory spaces, and so forth available for manipulation, I find it strange to use parentheses for indexing arrays instead of square brackets. The if-then-else syntax requirements drive me nuts and the lack of curly braces makes the code an effort to read. > although I tolerate it because I really like the hardware. I would > REALLY like to see NetMedia either support other language front ends > (ala OOPIC), or open up the spec for the onboard interpreter so that > third parties could provide support for other language front ends. Now there's an idea. Hmm, want to start rev-engineering? Nah, it'd take just as long as development from scratch using the available tools(from atmel). Having alternate choices would be nice. How about a Forth interpreter? A little 2-4K runtime that we could link to custom object files for internal storage of high performance code and then download? This is turning into a wishlist... > In particular, I'd like to see an Interactive C type language front > end -- I don't care much about a true OO environment for this kind of > development . Moreover, Netmedia might also find great benefits in a > Stamp II-type basic (superset) front end, since I would imagine that > BS-2 users looking to move up would are a major target audience for > this product. That's one of the odd aspects of this part. They seem to be targeting winXX *users* rather than embedded developers, or even tinkerers and hobbiests. The latter three of these groups will be interested in performance and flexibility and won't fear complexity. > >In fact, why use Basic instead of C or C++ other than for the > reasons >... > >be substaniated with some facts. > >One of the resons i can think of is this: because of the increasing > >popularity of Visual Basic and that most PCs run on Windows and > since > >VB is a robust object oriented language syntax ideally suited for > >Windows applications, it is only logical tt real world applications > >like microcontrollers be programed in VB. > >Is that one of the reasons Chris? I fact, I'd say it is just the opposite. It is one of the reasons that VB is *not* used in the embedded world. Being "good for windows" doesn't really mean anything. What VB is good for is rapid prototyping of applications that interface to other Microsoft software. What embedded developers have in mind is radically different: low cost per item built/sold. When you build thousands or millions of something, even a nickel/unit can make a difference. This usually has influence on several other features of embedded systems. IOW, lowest possible cost often means: Who cares how many man-hours it takes to design/implement/test/debug? You only do this once and then you want the slowest(cheapest) proc available that can do the job. The smallest memory(ROM and RAM) footprint possible. The smallest package(fewest i/o pins AND square inches since both cost money when it comes to manufacturing). Because of the major influence of $/item, programmer and code performance came to the forefront. I've never seen an embedded device with interpreted code in a mass-produced product before. This is also why so many sneered when Sun came out with the embedded java ideas. They said that java was slow, that the runtime environment was huge, and they were right. So to summarize, just because VB is good for windows does not mean that it is good for embedded. Try packing a VB interpreter into an embedded device. The only reason that VB is good for BX is that the BX developers are familiar with it and assume that their potential customers are as well. They might be right and mikey and I might be the exceptions. What is changing is that silicon(and all that is related such as processor performance and available memory) is becoming so inexpensive that other things are starting to tilt the balance. Programmers are more expensive today. The calendar time that it takes to move an idea through development into a product line through manufacturing and into the customer's hands is becoming more and more important. Power consumption and generated heat arise more often as limits in today's highly integrated, tichtly packed, and battery powered devices. Even the slowest processors available today are plenty fast and have enough RAM for many applications where we used to have to count processor cycles and byte usage across each instruction to make sure that the proc would have enough to get the job done. Note that the BX has barely the performance required to interface with some very popular and very inexpensive peripherals such as the Dallas Semi 1-wire stuff simply because its interpreted, of-chip program design. This is not a limit of the processor itself, but the "BX environment". So, having to use BX-VB to develop on the BX is an annoyance for me, but it's not a show stopper. I've bought my dev kit, built some code, made it work(according to my "net enabled" BX-24 it's 85.1F at home right now, the heatsink of the CPU on my PC is at 116.6F, and the A/C is off). I expect the A/C to come on and the temperature to drop when my daughter gets home from school. ;-) I continue to fiddle. For high quantity production the probable killer is the price. For high performance apps, the killer is the interpreter that uses up all of the internal memory so you have no access to high performance custom code and the slow access to the external program storage. __________________________________________________ /">http://mail.yahoo.com/ |
|
|
|
The BX-24 uses a subset of Visual Basic. The Stamp uses it's own somewhat simpler dialect of basic, but it is most definitely NOT VB. You can download the Stamp's manuals directly from parallax if you're interested in more details on the Stamp's language implementation. I believe the reasoning behind the use of a VB variant on the BX-24 was that VB is currently the most widely used language in use today. Of course, I wonder how much overlap there really is between the VB world and the embedded development world. Personally, I find VB pretty awkward for doing embedded development, although I tolerate it because I really like the hardware. I would REALLY like to see NetMedia either support other language front ends (ala OOPIC), or open up the spec for the onboard interpreter so that third parties could provide support for other language front ends. In particular, I'd like to see an Interactive C type language front end -- I don't care much about a true OO environment for this kind of development . Moreover, Netmedia might also find great benefits in a Stamp II-type basic (superset) front end, since I would imagine that BS-2 users looking to move up would are a major target audience for this product. On Mon, 18 Sep 2000 18:31:24 -0000, you wrote: >What other microcontrollers are there out there that use the Basic >language to program its microcontrollers. Am i correct to say that >both the BasicX and BasicStamp uses a subset of the Visual Basic >language to program the microcontroller.Is this subset called Basic? >In fact, why use Basic instead of C or C++ other than for the reasons >stated in the manual? >I am asking these because i am writting a report on the basic >microcontroller and would like to hear some views...hopefully it can >be substaniated with some facts. >One of the resons i can think of is this: because of the increasing >popularity of Visual Basic and that most PCs run on Windows and since >VB is a robust object oriented language syntax ideally suited for >Windows applications, it is only logical tt real world applications >like microcontrollers be programed in VB. >Is that one of the reasons Chris? ************************************** Do not taunt Happy Fun Ball. |
|
On Mon, 18 Sep 2000 14:13:06 -0700 (PDT), SpamMemore wrote: >> Personally, I find VB pretty awkward for doing embedded development, > >Agreed, although the c style environments are much more complex with >various register sets, memory spaces, and so forth available for >manipulation, I find it strange to use parentheses for indexing arrays >instead of square brackets. The if-then-else syntax requirements drive >me nuts and the lack of curly braces makes the code an effort to read. IC is actually pretty reasonable in this regard. The only other uController stuff I've done is either PIC assembler and some Stamp II dialect stuff, although I've used a pretty wide variety of languages on other platforms. >Now there's an idea. Hmm, want to start rev-engineering? I gave this a little thought, actually, but then realized I have a life (for the moment, anyway). I said it before and it bears repeating: NetMedia, PUHLEESE open up the specs to the BX-24 binaries. Everybody would benefit from this. >> since >> >VB is a robust object oriented language syntax ideally suited for >> >Windows applications, it is only logical tt real world applications >> >like microcontrollers be programed in VB. >> >Is that one of the reasons Chris? VB may be robust (and in it's defense it's really not a bad tool for quick Win U/I prototyping work or one-off scripts), but the version implemented on the BX-24 lacks any object-oriented features, other than appearing to support methods on certain system classes (Register, Debug come to mind). Even if it did support class creation, object instantiation and inheritance, I'd really have to question the utility of these in an embedded environment. In a lot of ways, I actually prefer the Stamp basic dialect. (although the lack of parameterized subroutines, functions and local variables really IS a bother). This is especially true of newbies -- if I had to recommend a microcontroller to an absolute beginner with no programming experience at all, I'd have to go with the stamp -- adding the advice to move up to the BX-24 as soon as possible. Again, support for multiple dialects would change this recommendation in favor of the BX-24. >I fact, I'd say it is just the opposite. It is one of the reasons that >VB is *not* used in the embedded world. Being "good for windows" >doesn't >really mean anything. What VB is good for is rapid prototyping of >applications that interface to other Microsoft software. Cheers -- m ************************************** Do not taunt Happy Fun Ball. |
|
|
|
--- In , "Dexton Rivers" <dexton_rivers@h...> wrote: > What other microcontrollers are there out there that use the Basic > language to program its microcontrollers. One that I have recently discovered and begun using is the micro11 from Technological Arts. It's fairly inexpensive and programmable in C, assembler, and BASIC using some available freeware. In spite of the fact that it's very slow compared to a PIC or SX (it uses a motorola chip), the freeware BASIC compiles directly to assembler and it actually ends up running a bit faster than the interpreted Stamp or BX24, as near as I can tell. And the BASIC lets you use timer interrupts to do some "real-time" processing. The main drawback is that is has limited I/O pins, but with SPI based chips attached you can easily expand the interfaces. They also have a version with 32K of RAM and 32K of ROM for the power hungry (the standard version is 8K ROM and 192 RAM - There is also a 32K ROM and 192 RAM version). It's actually about the same size as a stamp, with less board footprint because it sits upright on a 20 pin header. The BASIC language is a different dialect (not VB-like) but it has most of what you need to do control apps. Chuck Davis Oak Tree Systems LLC www.oaktreesystems.com |
|
Dexton My 2 cents worth - The NetMedia BX24 really has no comparison in the micro-controller market place for the amount of flexible power you get for the price. It is difficult to compare it to the Basic Stamp because it does so many things the Stamp cannot due and so much faster. The reason for this power is the way NetMedia combined using a Basic compiler on your PC and a run time kernel stored in the Atmel CPU's flash memory. The kernel provides advanced services you do not normally see on a micro-controller. As an example Queues are directly supported, this is a very easy to use, powerful and flexible way of dealing with memory and I/O and something you usually only see on full blown operating system like VMS or Unix. It directly supports full multitasking. You have direct access to the CPU internal registers. The fastest Basic Stamp (IIsx) is advertised to run 10,000 Basic instructions per second (my testing shows they are being very optimistic in this rating), the BX24 runs close to 70,000 Basic instructions per second, this is also a little inflated but the difference of at least 7X is enormous. I could go on about many other features but I encourage you to down load the full documentation from the BASICX web site www.basicx.com and study the manuals carefully and you will find a powerful embedded micro-controller with no comparison at only $ 50 each quantity one. - and no I don't work for them, I just build robots. Thank you Ron A. Nucci President Seattle Robotics Society -----Original Message----- From: Dexton Rivers <> To: <> Date: Monday, September 18, 2000 11:41 AM Subject: [BasicX] programming language. > >What other microcontrollers are there out there that use the Basic >language to program its microcontrollers. Am i correct to say that >both the BasicX and BasicStamp uses a subset of the Visual Basic >language to program the microcontroller.Is this subset called Basic? >In fact, why use Basic instead of C or C++ other than for the reasons >stated in the manual? >I am asking these because i am writting a report on the basic >microcontroller and would like to hear some views...hopefully it can >be substaniated with some facts. >One of the resons i can think of is this: because of the increasing >popularity of Visual Basic and that most PCs run on Windows and since >VB is a robust object oriented language syntax ideally suited for >Windows applications, it is only logical tt real world applications >like microcontrollers be programed in VB. >Is that one of the reasons Chris? |
|
|
|
Ron, I could not agree with you more. although I do not use the bx-24 I like the bx-01's. the chips are easy to program with a language that is also easy to learn. this make for more programming and building time with less debuging time. I love the chips and would not trade them for anyother on the market. AND the message board here is a great place to get any help you are looking for. I have never failed to have a question answered when I had one. and for others asking questions, I have also never failed to answer those that I am capable of solving. most questions can be answered by reading the doc's (even some of mine). the documentation for this product is great in my mind. keep up the great work. and as a side bar, I was using feratronics ft639 and ft649 chips to move servos. the problem with that is that they run at 2400 baud. I was also looking into force sensors that could mesure the force applied to say a leg of a robot. I am switching over to the servo controler produced by the netmedia. running at 19200 baud with built-in torque feedback this part will increase what I am able to do dramaticaly. --- "Ron A. Nucci" <> wrote: > Dexton > > My 2 cents worth - > > The NetMedia BX24 really has no comparison in the micro-controller > market > place for the amount of flexible power you get for the price. It is > difficult to compare it to the Basic Stamp because it does so many > things > the Stamp cannot due and so much faster. The reason for this power is > the > way NetMedia combined using a Basic compiler on your PC and a run > time > kernel stored in the Atmel CPU's flash memory. The kernel provides > advanced > services you do not normally see on a micro-controller. As an example > Queues > are directly supported, this is a very easy to use, powerful and > flexible > way of dealing with memory and I/O and something you usually only see > on > full blown operating system like VMS or Unix. It directly supports > full > multitasking. You have direct access to the CPU internal registers. > The > fastest Basic Stamp (IIsx) is advertised to run 10,000 Basic > instructions > per second (my testing shows they are being very optimistic in this > rating), > the BX24 runs close to 70,000 Basic instructions per second, this is > also a > little inflated but the difference of at least 7X is enormous. I > could go on > about many other features but I encourage you to down load the full > documentation from the BASICX web site www.basicx.com and study the > manuals > carefully and you will find a powerful embedded micro-controller with > no > comparison at only $ 50 each quantity one. > > - and no I don't work for them, I just build robots. > > Thank you > > Ron A. Nucci > > President Seattle Robotics Society > > -----Original Message----- > From: Dexton Rivers <> > To: <> > Date: Monday, September 18, 2000 11:41 AM > Subject: [BasicX] programming language. > > > >What other microcontrollers are there out there that use the Basic > >language to program its microcontrollers. Am i correct to say that > >both the BasicX and BasicStamp uses a subset of the Visual Basic > >language to program the microcontroller.Is this subset called Basic? > >In fact, why use Basic instead of C or C++ other than for the > reasons > >stated in the manual? > >I am asking these because i am writting a report on the basic > >microcontroller and would like to hear some views...hopefully it can > >be substaniated with some facts. > >One of the resons i can think of is this: because of the increasing > >popularity of Visual Basic and that most PCs run on Windows and > since > >VB is a robust object oriented language syntax ideally suited for > >Windows applications, it is only logical tt real world applications > >like microcontrollers be programed in VB. > >Is that one of the reasons Chris? > > > > > > > __________________________________________________ |
|
> >I would also second this. Despite my misgivings about the choice of >language and the IDE, this is really a far superior chip to the stamp. > >I'd recommend the Stamp (and then only as an introductiory learning >tool) only to the newbiest of newbies with absolutely NO programming >experience whatsoever, since the language is somewhat simpler, and the >limited capabilities of the Stamp actually mean less to learn. Yes and no. The Stamp offers some problems for the newest of newbies that the BX doesn't. For example, the limited IF-THEN behavior of the stamp is a lot harder for newbies to understand than a normal IF-THEN behavior like the BX has. And the built in ADC's are easier to understand than RCTIME for dealing with analog input. Having taught an intro course with the stamp, I'm giving the BX-24 a go this semester. That said, one feature of the IDE that's probably an easy fix: when you hit "new project" in the editor, for god's sake, stop it from creating interminable project.bas files! When I hit "new project", force me to name it right off, like happens when I first open the editor, so I can avoid cluttering my code directory with project1.bas, project2.bas, etc, and can avoid overwriting a crucial file that I forget to rename. -- -- Tom Igoe |
|
Sorta Off/On Topic Maybe I'm missing something here .. and the thread has meandered .. Caveat: Everything following is an opinion .. (albeit a 'learned' one :). As such they only carry as much weight as the reader wants to put on them .. or not :) Tis personal opinions .. experts get paid :) A 'language' is nothing more than a front-end to a compiler/interpreter and the 'effectiveness/usefullness/etc' is a function of the features, and their implemention(s) by the compiler developer/author(s). There are more BASIC dialects than I dare count, numerous 'C' implementations, and a number of various other 'language' flavors. The inherent capabilities of any given language implementation is a function of the compiler (loosely used .. and assuming optimized for the environment). C's { printf "Hello World/n" } and BASIC's Print "Hello World" should generate similar code (on the same processor anyhoots). But then as we all know .. some 'languages' .. er .. compiler's, are better at some things than others :) Note*: "{}" and "[]" and "()" are compiler/interpreter directives. An example of how 'If-Then-Else- Endif' is/could be problematic would be helpful also. Saying VB is best used for Windows 'quicky' development and relating it to BASICX is rather short-sided. As stated in the docs, BASICX uses the VB language 'construct' .. to appeal to an established "VB aware" audience ... or at least make it easier for the beginner (only the marketing dept knows for sure :). But .. what happens behind the VB facade "ain't" Windows related. And it is 'not' VB. If someone likes 'C' .. there are a number of development systems for the ATMEL chips .. and glad to know people have the bucks for the 'priviledge' of programming with them :) 'Programming' is as much as mindset (or is that 'object' orientation? :) as anything else. HOW a programmer 'uses' the language is a matter of style/preference and/or prejudice/ experience/etc .. inherently constrained by the specific language/environment and its 'extensibility' .. or lack thereof. As for me .. I have no preference (I DO seem to have a knack of generating errors in most any language/development environment I chose. The occasional smoked chip is my version of human induced, catastrophic 'improper construct' :) I use whatever it takes to get the job done. And like most people .. tend to go with what I am familar/comfortable with. Am co-developing using BasicX-01 (perhaps the '24 in the future) and the ATMega103 using a Basic compiler (QB syntax and inline ASM). May use one or both in my final design (to multitask or not .. 'that' is the question). Testing will tell as I am relatively new to both. And exactly what would you accomplish by reverse engineering? Nuff said 4 now .. Jim --- In , mikey@s... wrote: > On Mon, 18 Sep 2000 14:13:06 -0700 (PDT), SpamMemore wrote: > > >> Personally, I find VB pretty awkward for doing embedded development, > > > >Agreed, although the c style environments are much more complex with > >various register sets, memory spaces, and so forth available for > >manipulation, I find it strange to use parentheses for indexing arrays > >instead of square brackets. The if-then-else syntax requirements drive > >me nuts and the lack of curly braces makes the code an effort to read. > > IC is actually pretty reasonable in this regard. The only other > uController stuff I've done is either PIC assembler and some Stamp II > dialect stuff, although I've used a pretty wide variety of languages > on other platforms. > > >Now there's an idea. Hmm, want to start rev-engineering? > > I gave this a little thought, actually, but then realized I have a > life (for the moment, anyway). I said it before and it bears > repeating: NetMedia, PUHLEESE open up the specs to the BX-24 binaries. > Everybody would benefit from this. > > >> since > >> >VB is a robust object oriented language syntax ideally suited for > >> >Windows applications, it is only logical tt real world applications > >> >like microcontrollers be programed in VB. > >> >Is that one of the reasons Chris? > > VB may be robust (and in it's defense it's really not a bad tool for > quick Win U/I prototyping work or one-off scripts), but the version > implemented on the BX-24 lacks any object-oriented features, other > than appearing to support methods on certain system classes (Register, > Debug come to mind). Even if it did support class creation, object > instantiation and inheritance, I'd really have to question the utility > of these in an embedded environment. In a lot of ways, I actually > prefer the Stamp basic dialect. (although the lack of parameterized > subroutines, functions and local variables really IS a bother). This > is especially true of newbies -- if I had to recommend a > microcontroller to an absolute beginner with no programming experience > at all, I'd have to go with the stamp -- adding the advice to move up > to the BX-24 as soon as possible. Again, support for multiple dialects > would change this recommendation in favor of the BX-24. > > > > >I fact, I'd say it is just the opposite. It is one of the reasons that > >VB is *not* used in the embedded world. Being "good for windows" > >doesn't > >really mean anything. What VB is good for is rapid prototyping of > >applications that interface to other Microsoft software. > Cheers -- m > ************************************** > Do not taunt Happy Fun Ball. |
|
|
|
First .. thanx for the clean response: Oh yes .. COBOL/SNOBOL/FORTRAN .. almost 4got about them :) They were not so bad .. maintaining someone elses code was :) But thats what I was being paid for at the time. It was possible to write clean code .. but that is really OT. Second .. and someone PLEEEEEEEEEASE correct me if I am wrong .. I believe we have a basic (no pun intended) 'problem' with NetMedia filling and locking the 8K with their code .. if memory serves me correctly .. they have no more room to put anything else in (extensibility to support 'externals') without taking something else out. I believe there was a proposed '35 chip that never materialized (a combo of the '01 and '24 I think) .. they were going to pull the native networking support out so they could add other functions ... again a 'space/lock' issue. I do think it would be nice of them make the networking algo's external to the chip. Wonder if they could program one of the 'tiny' Atmels as a dedicated netwok chip? A thought .. if NetMedia thought it was safe .. and could make momey at it .. I am sure they would 'extend' their own language/ environment. For reasons only they know .. they haven't and my guess is they won't. > >Maybe I'm missing something here .. and the thread has meandered .. > > Possibly. > > Personally, I get tired of typing "Dim" -- but that's just > me. Others may become annoyed by semicolons and curly braces. Again .. compiler 'stuff'. > Because language preferences _do_ exist in any case, separation of the programming idiom from the hardware is often a nice thing to have. > My suggestion was that NetMedia either: > > A) Consider supporting other language front ends as does OOPIC (a > competitor) OR > B) Open up the BX binary spec so that others can add support for new > idioms. NetMedia would be under no obligation to support these, of > course, but would essentially get wider audience appeal for free. As they use apparently use 'p' code .. publishing specs would probably allow for an easy 'reverse engineer' of the 'opsys/interpreter'. To keep from banging into the 'OS' .. they would have to 'tell' you what not to do .. in turn telling you what it does. I can't begin to imagine the support issues. I suppose you want to unravel the intermediate code ('native binaries'?) Probably a good hack effort I assure you :) No .. I have not even looked at them .. but I did try once many years ago in the early hack and crack days (the aroma of cold pizza and warm Coke fills the room :). Notice I said 'once'. They 'upgraded' and the 'binaries' changed, but the source didn't :) A 'consideration' so to speak :) > C) Not related to A and B, but a number of us aren't crazy about the > IDE -- someone mentioned that command line utilities might have been > added to do compilation. I may need an upgrade, tho. Can anyone > confirm or deny this? If memory serves me correctly .. NetMedia was not going to enhance/modify/otherwise the IDE. > D) A completely new point on my part, but it would also be nice to see the quirky fixed length string handling implementation get fixed. Netmedia has announced they will be using the Philips chip(s) in the future .. AND the 'core' of the OS/language is 'portable' (PLZ don't go there), I would think they would take the opportunity to modify/enhance/etc when they do the transition. Not sure how 'portable' the 'intermediate' files are going to be. If I were a betting person I would say recompilation would be in order. Comments NetMedia ???? Gotta go Jim Jim |
|
I would also second this. Despite my misgivings about the choice of language and the IDE, this is really a far superior chip to the stamp. I'd recommend the Stamp (and then only as an introductiory learning tool) only to the newbiest of newbies with absolutely NO programming experience whatsoever, since the language is somewhat simpler, and the limited capabilities of the Stamp actually mean less to learn. Otherwise, the cheaper and far more powerful BX-24 is always a better way to go. On Tue, 19 Sep 2000 07:50:37 -0700, you wrote: >Dexton > >My 2 cents worth - > >The NetMedia BX24 really has no comparison in the micro-controller market >place for the amount of flexible power you get for the price. It is >difficult to compare it to the Basic Stamp because it does so many things >the Stamp cannot due and so much faster. The reason for this power is the >way NetMedia combined using a Basic compiler on your PC and a run time >kernel stored in the Atmel CPU's flash memory. The kernel provides advanced >services you do not normally see on a micro-controller. As an example Queues >are directly supported, this is a very easy to use, powerful and flexible >way of dealing with memory and I/O and something you usually only see on >full blown operating system like VMS or Unix. It directly supports full >multitasking. You have direct access to the CPU internal registers. The >fastest Basic Stamp (IIsx) is advertised to run 10,000 Basic instructions >per second (my testing shows they are being very optimistic in this rating), >the BX24 runs close to 70,000 Basic instructions per second, this is also a >little inflated but the difference of at least 7X is enormous. I could go on >about many other features but I encourage you to down load the full >documentation from the BASICX web site www.basicx.com and study the manuals >carefully and you will find a powerful embedded micro-controller with no >comparison at only $ 50 each quantity one. > >- and no I don't work for them, I just build robots. > >Thank you > >Ron A. Nucci > >President Seattle Robotics Society > >-----Original Message----- >From: Dexton Rivers <> >To: <> >Date: Monday, September 18, 2000 11:41 AM >Subject: [BasicX] programming language. >> >>What other microcontrollers are there out there that use the Basic >>language to program its microcontrollers. Am i correct to say that >>both the BasicX and BasicStamp uses a subset of the Visual Basic >>language to program the microcontroller.Is this subset called Basic? >>In fact, why use Basic instead of C or C++ other than for the reasons >>stated in the manual? >>I am asking these because i am writting a report on the basic >>microcontroller and would like to hear some views...hopefully it can >>be substaniated with some facts. >>One of the resons i can think of is this: because of the increasing >>popularity of Visual Basic and that most PCs run on Windows and since >>VB is a robust object oriented language syntax ideally suited for >>Windows applications, it is only logical tt real world applications >>like microcontrollers be programed in VB. >>Is that one of the reasons Chris? >> >> >> > ************************************** Do not taunt Happy Fun Ball. |
|
|
|
On Tue, 19 Sep 2000 18:33:26 -0000, Jim wrote: >Maybe I'm missing something here .. and the thread has meandered .. Possibly. To sum up: assuming more or less the same functionality and optimization across a given set of languages (or other tools) for a given platform (a big assumption), a programmer will generally select one or the other based on an perceived applicability to the job at hand, familiarity, availability, job site political considerations, legacy code considerations, sheer idiomatic preference, general cussedness or some combination thereof. All programmers have idiomatic preferences, by the way. This would be one reason why you don't see whole a lot of new APL, Cobol, Fortran 66 or PL-1 code (ah, the memories!). Personally, I get tired of typing "Dim" -- but that's just me. Others may become annoyed by semicolons and curly braces. Because language preferences _do_ exist in any case, separation of the programming idiom from the hardware is often a nice thing to have. My suggestion was that NetMedia either: A) Consider supporting other language front ends as does OOPIC (a competitor) OR B) Open up the BX binary spec so that others can add support for new idioms. NetMedia would be under no obligation to support these, of course, but would essentially get wider audience appeal for free. C) Not related to A and B, but a number of us aren't crazy about the IDE -- someone mentioned that command line utilities might have been added to do compilation. I may need an upgrade, tho. Can anyone confirm or deny this? D) A completely new point on my part, but it would also be nice to see the quirky fixed length string handling implementation get fixed. >And exactly what would you accomplish by reverse engineering? Someone mentioned "reverse engineering" earlier in the thread with a view toward B above. Personally, I lack the time and would much rather see a stable spec supported and published by NetMedia. >An example of how 'If-Then-Else- >Endif' is/could be problematic would be helpful also. I believe the poster was referring to the Stamp II basic dialect, which allows only a label after the IF directive instead of subprogram execution and provides no support for else. Some enhanced versions of the language do, however, provide a more standard implementation of IF..THEN..ELSE such as PicBasic, which is the only other dialect of basic I've been using lately. Obviously useless on a Stamp, tho. > >Caveat: Everything following is an opinion .. (albeit a 'learned' >one :). As such they only carry as much weight as the reader wants >to put on them .. or not :) Tis personal opinions .. experts get >paid :) > >A 'language' is nothing more than a front-end to a >compiler/interpreter and the 'effectiveness/usefullness/etc' is a >function of the features, and their implemention(s) by the compiler >developer/author(s). There are more BASIC dialects than I dare >count, numerous 'C' implementations, and a number of various >other 'language' flavors. > >The inherent capabilities of any given language implementation is a >function of the compiler (loosely used .. and assuming optimized for >the environment). > >C's > >{ >printf "Hello World/n" >} > >and BASIC's > >Print "Hello World" > >should generate similar code (on the same processor anyhoots). But >then as we all know .. some 'languages' .. er .. compiler's, are >better at some things than others :) Note*: "{}" and "[]" and "()" >are compiler/interpreter directives. An example of how 'If-Then-Else- >Endif' is/could be problematic would be helpful also. > >Saying VB is best used for Windows 'quicky' development and relating >it to BASICX is rather short-sided. As stated in the docs, BASICX >uses the VB language 'construct' .. to appeal to an established "VB >aware" audience ... or at least make it easier for the beginner (only >the marketing dept knows for sure :). But .. what happens behind the >VB facade "ain't" Windows related. And it is 'not' VB. > >If someone likes 'C' .. there are a number of development systems for >the ATMEL chips .. and glad to know people have the bucks for >the 'priviledge' of programming with them :) > >'Programming' is as much as mindset (or is that 'object' >orientation? :) as anything else. HOW a programmer 'uses' the >language is a matter of style/preference and/or prejudice/ >experience/etc .. inherently constrained by the specific >language/environment and its 'extensibility' .. or lack thereof. > >As for me .. I have no preference (I DO seem to have a knack of >generating errors in most any language/development environment I >chose. The occasional smoked chip is my version of human induced, >catastrophic 'improper construct' :) I use whatever it takes to get >the job done. And like most people .. tend to go with what I am >familar/comfortable with. > >Am co-developing using BasicX-01 (perhaps the '24 in the future) and >the ATMega103 using a Basic compiler (QB syntax and inline ASM). May >use one or both in my final design (to multitask or not .. 'that' is >the question). Testing will tell as I am relatively new to both. > >And exactly what would you accomplish by reverse engineering? > >Nuff said 4 now .. > >Jim > > >--- In , mikey@s... wrote: >> On Mon, 18 Sep 2000 14:13:06 -0700 (PDT), SpamMemore wrote: >> >> >> Personally, I find VB pretty awkward for doing embedded >development, >> > >> >Agreed, although the c style environments are much more complex >with >> >various register sets, memory spaces, and so forth available for >> >manipulation, I find it strange to use parentheses for indexing >arrays >> >instead of square brackets. The if-then-else syntax requirements >drive >> >me nuts and the lack of curly braces makes the code an effort to >read. >> >> IC is actually pretty reasonable in this regard. The only other >> uController stuff I've done is either PIC assembler and some Stamp >II >> dialect stuff, although I've used a pretty wide variety of languages >> on other platforms. >> >> >Now there's an idea. Hmm, want to start rev-engineering? >> >> I gave this a little thought, actually, but then realized I have a >> life (for the moment, anyway). I said it before and it bears >> repeating: NetMedia, PUHLEESE open up the specs to the BX-24 >binaries. >> Everybody would benefit from this. >> >> >> since >> >> >VB is a robust object oriented language syntax ideally suited >for >> >> >Windows applications, it is only logical tt real world >applications >> >> >like microcontrollers be programed in VB. >> >> >Is that one of the reasons Chris? >> >> VB may be robust (and in it's defense it's really not a bad tool for >> quick Win U/I prototyping work or one-off scripts), but the version >> implemented on the BX-24 lacks any object-oriented features, other >> than appearing to support methods on certain system classes >(Register, >> Debug come to mind). Even if it did support class creation, object >> instantiation and inheritance, I'd really have to question the >utility >> of these in an embedded environment. In a lot of ways, I actually >> prefer the Stamp basic dialect. (although the lack of parameterized >> subroutines, functions and local variables really IS a bother). This >> is especially true of newbies -- if I had to recommend a >> microcontroller to an absolute beginner with no programming >experience >> at all, I'd have to go with the stamp -- adding the advice to move >up >> to the BX-24 as soon as possible. Again, support for multiple >dialects >> would change this recommendation in favor of the BX-24. >> >> > >> >I fact, I'd say it is just the opposite. It is one of the reasons >that >> >VB is *not* used in the embedded world. Being "good for windows" >> >doesn't >> >really mean anything. What VB is good for is rapid prototyping of >> >applications that interface to other Microsoft software. >> >> >> Cheers -- m >> ************************************** >> Do not taunt Happy Fun Ball. ************************************** Do not taunt Happy Fun Ball. |
|
|