Going to try the grass on the other side!

nbw

Senior Member
I thought - to keep my ailing mind active - I might give learning PICs a go. I figure there must have been some folks here who have made the jump from AXE to PIC, and my wife has permitted me to buy (1) ONE PIC book. Has anyone out there read / bought / and can strongly recommend a near-idiot's guide to learning PIC? I've build 240V aquarium controllers and a bunch of other stuff using the AXEs, so my knowledge there is quite reasonable.

thanks!!
 

Dippy

Moderator
It's a big step mate. And you won't get the help/support that you do on this Forum.
I can't recommend anything sadly as you get more 'experts' in the PIC world than you do here. I'm afraid it's back to real basics and get your cheque book out.
 

papaof2

Senior Member
The MPLAB software is free. ou can download it here: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002[URL] There's an online tutorial on MPLAB here: [URL]http://amqrp.org/elmer160/lessons/

You'll need a programmer - the simple serial version for under $10US should be OK to start with. Search Ebay for "serial pic programmer". For a few dollars more, you can get one with a ZIF socket, which is highly recommended.

John
 

ylp88

Senior Member
Also, grab a C compiler like "Hi-Tech C C Compiler" (http://microchip.htsoft.com/products/compilers/piccpro-modes.php) if you are using some simple PIC chips (12F and 16F series, basically) or grab a student version of C18 or C30 if you are programming 18F or 24F/24H/dsPIC chips (http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534868). They are all free if you use the limited versions (usually limited by program size, but even then there usually plenty of space!), but they make programming a lot easier. There may also be some Basic compilers out there, but I'm not all to sure.

I've used C30 for 24F/24H programming and it's great.

ylp88
 

evanh

Senior Member
The Pic as a processor is pretty sucky to program. It only has a single 8 bit accumulator. Most instructions involve some acrobatics through this one register so there is a ton of twisted tricks to get it to perform decent work.

The so-called registers of a Pic are better considered as direct addressed memory because of the need to involve the accumulator to achieve the minimum of two sources and one destination for any equations.

I recommend looking at other processor designs.


Evan
 

Grant Fleming

Senior Member
I thought - to keep my ailing mind active - I might give learning PICs a go. I figure there must have been some folks here who have made the jump from AXE to PIC, and my wife has permitted me to buy (1) ONE PIC book. Has anyone out there read / bought / and can strongly recommend a near-idiot's guide to learning PIC? I've build 240V aquarium controllers and a bunch of other stuff using the AXEs, so my knowledge there is quite reasonable.

thanks!!
I'm all for "keeping the mind active" but consider the 'frustration factor' of the PIC when trying to get it to do a simple task - especially after the ease of working with a PICAXE. There are many other ways to satisfy your mind that are less painfull!
 

manuka

Senior Member
Well said sir! I also was going to mention such mind expanding alternatives as crosswords & gardening, & also recommend you give your wife a good talking to about "books rather than beer". But -since your plea looks electronic (rather than atomic/molecular)- consider the Atmel AVR approach, which is now available in 32 bit. Check their overview => http://en.wikipedia.org/wiki/Atmel_AVR . I've spotted diverse "Butterfly board" name tags being worn at recent guru conferences in fact.

NB - almost anything you want to do will be harder than a PICAXE approach, & it can take agonizing hours of coding just to flash a LED! As speed is the main benefit (IMHO) of raw micros,why not just go for a beefier PICAXE? I've been working with the (now) 14 PICAXE offerings for ~6 years & still haven't plumbed their depths. And I'm a cool(er) weather Kiwi- if I was Australian domiciled no doubt the heat would have addled my brain even further. Stan
 
Last edited:

nbw

Senior Member
It's either PICs or something else like... talking to my kids...

haha just kidding. The 0.69 hours average I have after the little angels have gone to bed and my wife is satisfied (meaning: she's had dinner and has a book in her hand!) I thought would be a good start for PICing. I had this idea that the RevEd compiler had a feature that broke basic programs down into assembler which was 1/2 way to programming a PIC.

It does sound me to on the surface that PICs are faster, gruntier, but have an everest learning curve to program and a not-so-simple program method (thinking hardware to download progs) compared to PICAXE.

Maybe there're halfway ICs... are AVRs next step up again from PICs. I do like the axes, but sometimes it would be quite nice to get more grunt, more code space, more... options. I know that often you can jimmy the axes by overclocking the little buggers til they beg for mercy, or challenge yourself to write code that's tighter than 2 coats of paint, and let's be honest - how many programs do we REGULARLY write that would exceed 4K in the 28x1 (don't start me on 28x2...)

It would just be nice to have another option......

I wouldn't ditch axes altogether of course, just being a cow that's sticking it's head through the wire fence to nibble some grass in the PIC field to see how it tastes
 

womai

Senior Member
If you want to stick to Basic, check out Mikroelektronika's MikroBasic (www.mikroe.com). The free version can do up to 2K of compiled code size (i.e. assembler output, NOT source code size. None of my programs is larger than that so far, not even my oscilloscope firmware). They also have very usable (and inexpensive) demo boards. All that comes with a good set of small example programs and a very usable function library (somewhat similar to the Picaxe's built-in commands).

Having said that, it IS a step more difficult than the Picaxe (I'm currently trying to get I2C working in MikroC and it just won't talk to my EEPROM).

As to the comment about the PIC's difficult architecture, the moment you use a higher level language like Basic or C, the PICs unwieldy assembly language and memory organization is no longer a factor for usability, since the compiler hides all that complexity. And I would NOT recommend doing anything in assembler that can be done in Basic just as well!

Don't overestimate the speed gain by going to a raw PIC. For simple tasks like toggling an output pin - where the Picaxe's interpreter overhead is huge compare to the real task - it can reach a factor of 200 and more, but for a larger, more complex program I typically observe a global factor between 3 and 20.

Personally I think I'll stick with the Picaxe for fast and easy prototyping, and only go to the raw PIC if I need the speed, or for larger scale production where the Picaxe's price premium becomes a factor. I'm just waiting for the X2 Picaxe's to become available, because they would remove a few of the remaining restrictions (e.g. any pin can be used as input or output).

Wolfgang
 

leftyretro

New Member
I've been thinking of taking a similar journey as you are. While I still think Picaxe is a great solution and will continue to follow and utilize them, I would also like to learn more.

I'm approaching the path slowly. I first found a PICKIT 2 programmer on E-bay. All my research on several forums suggest this is the current 'hot' programmer for most all the PIC series chips, with both programming and hardware debugging support.

As far as programming choice I think I'm going to start out with the PIC 18 series chips and use the free SE version of Swordfish Basic available at:

http://www.sfcompiler.co.uk/swordfish/download/index.html


Lefty
 

demonicpicaxeguy

Senior Member
after having used a number of serial programmers and enduring the endless issues that can arrise i wouldn't go past the pickit2 it does the whole family and it works very well

as for compilers the oshonsoft "pic simulator ide" which has a builtin basic compiler which isn't too bad for the price (even the demo is quite functional)

learning the picasm isn't all that hard either, as easy way to learn is to get the pic simulator ide ,write some basic code compile it then look at the asm file it creates,
 

Dippy

Moderator
There are tons (tonnes) of programmers out there with various pices tags.
I'm not against people taking another step and I wouldn't, with respect, worry about evans tale of woe. Wolfgang is quite right.

I would agree with the suggestion about looking at the MikroElektronika Dev Boards (I wish there was a PICAXE equivalent actually). Built-in programmer.
But, sorry, I can't bring myself to rave about their compilers. I haven't used all the varieties, but I have used a couple for dsPIC. Quite a few bugs and errors in the Help files. AND I once had to wait a month before an update was issued before I could finish a job. AND the IDE can be funny too. AND judging by their Forum all three compilers BASIC, PAScal and C can be quirky albeit quite powerful.

There are better without doubt, but this isn't the place to advertise.

A general word or two: like I said before, it's a big step. To anyone who is finding PICAXE Basic difficult I'd say forget the next step for now. And even using a full blown compiler it's handy to have a handle on a bit of assembler.

Perhaps someone with some time can just do the PICBASIC (or whatever) equivalent of READADC10 <Chan>,<Word> just to give an example of the extra effort. (Not in Assembler please as we can all cut'n'paste from Data Sheets ;))
 

demonicpicaxeguy

Senior Member
But, sorry, I can't bring myself to rave about their compilers. I haven't used all the varieties,

There are better without doubt, but this isn't the place to advertise.
i think you've been charitable to even mention MikroElektronika, i've tried their basic compiler as well and wasn't really all that impressed .... at least not enough to recommend to anyone, for now with most of what i do i use the oshonsoft compiler, it's quick easy and works well enough to recommend

i'd agree a privately owned forum isn't the place to advertise, but there is a defference between advertising and recommending a good product
 

ylp88

Senior Member
I can't find any ADC code handy at the moment, so this will have to do. Here's an equivalent for you for receiving a character serially, and then echoing the character back using a PIC24FJ64GA002, written in C for the Microchip C30 compiler.

Code:
#define XTFREQ		7372800			// On-board Crystal frequency
#define PLLMODE		2			// On-chip PLL setting
#define FCY		XTFREQ*PLLMODE		// Instruction Cycle Frequency
#define BAUDRATE	4800
#define BRGVAL		((FCY/BAUDRATE)/16)-1 

int main(void) {
	CLKDIVbits.RCDIV = 0;
	RPINR18bits.U1RXR = 9;		// Make Pin RP9 U1RX
	RPOR4bits.RP8R = 3;		// Make Pin RP8 U1TX
	PADCFG1 = 0xFF;			// Make analog pins digital 

	U1BRG = BRGVAL;
	U1MODE = 0x8000;		// Reset UART to 8-n-1, alt pins, and enable 
	U1STA = 0x0440;			// Reset status register and enable TX & RX
	_U1RXIF=0;			// Clear UART RX Interrupt Flag

	while(1) {
		int a;
 
		while (_U1RXIF==0);		// Wait and Receive One Character
		a = U1RXREG;
 
		while(!U1STAbits.TRMT);		// Echo Back Received Character
		U1TXREG = a;

		_U1RXIF=0;			// Clear UART RX Interrupt Flag
 	}
	return 0;
}
Equivalent to:
Code:
main:
SERIN 1, N4800, b0
SEROUT 7, N4800, (b0)
GOTO main
EDIT:

Oh, here we are. I couldn't find it since it is code for a different chip, a PIC24HJ32GP202. Constantly read (using interrupts) a 10-bit ADC value from analog pin 5 (AN5) and display the result as in "bargraph" style on 4 LEDs (omitting all the #defines and #include directives).

Code:
int main(void) { 
	TRISB = 0;					// Configure LED pins as output
	
	TRISBbits.TRISB3 = 1;				// Set RB3 to Input
	AD1PCFGL = 0xFFDF;				// Clear Bit-5, Set all others Only AN5 is Analog
	
	AD1CHS0 = 0;					// clear AD1CHS0
	AD1CHS0bits.CH0SA = 5;	  			// MUX-A Positive Input is AN5; This is the input port to the AtoD
  
	AD1CON3bits.ADCS = 0x00;			// select the analog conversion clock
	AD1CON3bits.SAMC = 12;				// Auto conversion time = 12 x TAD
	AD1CON3bits.ADRC = 0;				// Clock derived from system clock
	AD1CON2 = 0;					// Clear the A/D Control Register 2; Sets Vr+ to AVdd and Vr- to AVss
							// Do not scan inputs
							// Interrupts at the completion of conversion for each sample/convert sequence
							// Buffer configured as one 16-word buffer (AD1BUFn<15:0>)
							// Always uses MUX A input multiplexer settings
	AD1CON1bits.ASAM = 1;				// Sampling begins immediately after last conversion completes. SAMP bit is auto-set.
	AD1CON1bits.SSRC = 7;	 			// Internal counter ends sampling and starts conversion (auto-convert)
	AD1CON1bits.FORM = 0;	 			// Data format = simple 10-bit integer
	AD1CON1bits.ADSIDL = 1;				// Stop in Idle Mode
	AD1CON1bits.ADON = 1;				// ADC Module is Enabled
	IPC3bits.AD1IP = 5;				// Select A/D interrupt priority
	IFS0bits.AD1IF = 0;				// Clear interrupt flag 
	IEC0bits.AD1IE = 1;				// Enable ADC1 interrupt	
	AD1CON1bits.SAMP = 1;	 			// Sampling begins 
	
	while(1) {
		
	}

	return 0;
} 
  
//ADC1 interrupt routine 
  
void __attribute__((interrupt, no_auto_psv)) _ADC1Interrupt(void) { 
	// Results are stored in ADC1BUF0, convert to "bargraph"
	int lattemp = 0;
	if (ADC1BUF0 > 204)	lattemp = (LATB & 0x0FFF) | 0x8000;
	if (ADC1BUF0 > 408) lattemp = (LATB & 0x0FFF) | 0xC000;
	if (ADC1BUF0 > 612) lattemp = (LATB & 0x0FFF) | 0xE000;
	if (ADC1BUF0 > 816) lattemp = (LATB & 0x0FFF) | 0xF000;
	
	LATB = lattemp;
		
	IFS0bits.AD1IF = 0; // clear interrupt flag
}
Basically, you don't really need to follow the code to realise that you need to configure a lot of settings in the system's registers before you can use the ADC module: AD1PCFGL, AD1CHS0, AD1CON1, AD1CON2 and AD1CON3. It's not really "just read it" like you can on PICAXE.

Equivalent probably looks something like:
Code:
main:
READADC10 5, w0
w0 = w0 / 64
let pins = b0
GOTO main
ylp88
 
Last edited:

womai

Senior Member
Ok,

since quite a few people have trashed the Mikroelektronika compiler (it's true that the documentation as quite a few mistakes, but not more than I have seen in virtually any other software product) - what I like with their offerings is that the entry hurdle is very low - at least for me their development board, compiler, download etc. simply worked right after installation and hooking up the USB cable - and most simple things are simple to do because of their very useful set of libraries. In many respects similar to the Picaxe. I did not have the same experience with the Microchip C18 compiler and MPLAB IDE - together with a colleague it took me a few hours to get it to work because quite a few of the default settings weren't correct, and it also forces you to manually do things that the MikroE compiler does automatically. I have to admit this was 3 years ago and things may have changed for the better since then.

As for the readadc10 example, here is the MikroBasic code from their help file (as you can see from my comments in the code, from my own experiments it seems the read_adc() command implicitly sets the ADCON1 correctly, so the code could be shortened to 2 lines); very simlar to how the Piocaxe code looks like:

dim adcval as word
ADCON1 = $80 ' seems to work even without that
TRISA = $FF ' seems to work even without that
adcval = read_adc(2)


Other things (e.g. serial communication) are just as short, usually the code is just a line or two because there are library functions for almost anything.

Wolfgang
 
Last edited:

Dippy

Moderator
Yes, maybe ME PIC BASIC is nealry as easy. It is much more procedural and uses library functions. You'd probably find, if you could access the Libraries that the ADCON is set inside. It probably has defaults for Tacq and conversion times too.
I haven't used the dsPIC version for ages so I've forgotten defaults.
If you wrote a non-library ADC read it requires a few more lines.
I'm afraid ME's dsBASIC and dsPASCAL have tainted my opinions of their compilers.
There are better and have better Help and online samples.
The dsBASIC was strewn with typoes and code not matching the schematics - and, for a while, library routines that just didn't work and were known faults.
But their dev boards are good.

Anyway, good luck with the search... all part of the life long learning curve eh.
 

nbw

Senior Member
Wow, it is a step up for sure - thanks for the thoughts everyone and the code snippets. I understand PICAXE pretty well - I'd say maybe an 8 out of 10. I understood (probably mostly through the comments) at least 1/3 to 1/2 of what was happening in the PIC snippets. A lot of declarations to do with clock freq and PLL at the start. A lot of declarations and setting to do even the smallest of things, it seems. The 2nd snippet (ADC reading) - the obvious words like IF and RETURN help.

I agree it's a lot simpler in the axe world.........
 

ylp88

Senior Member
If you start with a simpler chip like the 16F84 or 16F628, then you won't have to worry about the PLL. Then again, it's just a small part and probably can be Ctrl+C/Ctrl+V 90% of the time, so long as you use the same oscillator.

But indeed it is true that the transition to PICs is quite a big step. Find an application you need the power of a raw PIC for first, instead of just doing it - at least you'll have some motivation to push through it. Then once you'e got a project in mind, start from the basics!

Evidently it seems that some other compilers might be simpler, but I thought I'd just put is all down there instead of using functions.

ylp88
 

nbw

Senior Member
that's good feedback everyone so thanks. I'll check out the various versions, but perhaps the idea that save the PIC learning curve until I actually need it is a good one.

In the next couple of days, while I remember, I'll post some pix of my 10-port aquarium controller, son's music box (world's largest mp3 player - maybe), and the coffee monitor.
 

premelec

Senior Member
I don't think I saw mention of Micro Engineering Laboratories BASIC to PIC compiler which has been around a very long time - their pro version about $250US [and I've heard the $100 version not particularly good]. I haven't used either...

I started with STAMPs and am going to stick with PICAXEs for probably forever as I don't want to spend a lot of time learning new systems but rather building stuff. I have a hard enough time keeping track of all the quirks of one item! Good luck with it....
 

moxhamj

New Member
What an interesting discussion - and all credit to Rev Ed for allowing it to happen.

I have a number of raw pics sitting in a drawer, ranging from 8 to 40 pin ones. They cost a lot less than picaxe chips. I keep meaning to look at them in my spare time, but every time I do, the task seems daunting. Just choosing a compiler is complicated. It can be simplified by picking a couple of instructions (eg readadc and serin) and comparing them across compilers, but invariably you find one instruction on one is not on the other and then how do you fairly compare?

Every time I go through this process, I have to set a time limit on the project and then actually go back to the practicalities of getting something working. And then I end up back with Picaxe.

Picaxe can do 97% of what I need. The bit where picaxe falls over is with code space, and that is a limitation of the chips so going to raw pics doesn't solve that one. For the other 3%, I'm building a number of Z80 boards where you can have 64k of ram space, a megabyte of battery backed ram disk and gigabytes of compact flash.

Even these complex boards need certain functions that end up simplest to do with a Picaxe (eg a low power radio wakup circuit).

I'd be interested to see where this discussion goes but it will be picaxe for me for the forseeable future.
 

stocky

Senior Member
I too am playing with a jump to the "dark" side - and with MikroBasic - some stuff easy - some stuff not - still using PICAXE at the moment!

Mainly wanted to play to gain a pin back on the 8 pin PIC for a design - didnt want to move to the 14 pin ver just for 1 pin!

So far still using PICAXE - but learning MikroBasic slowly :)

BTW - their dev boards are VERY nice and good value!
 

marcos.placona

Senior Member
I think life is already complicated enough for us to jump to something else that's much more complicated, and will do the same as a picaxe, but with 200 lines more.

I do like C, and used to write a lot of app's to my Sony PSP using it.

Times have changed now, and there's lot's of IC's "willing" to help you to accomplish your needs without having to "go pic". And for a ridiculously low price. :eek:
 

Dippy

Moderator
"Mainly wanted to play to gain a pin back on the 8 pin PIC for a design - didnt want to move to the 14 pin ver just for 1 pin!"

So you bought a compiler and pogrammer to save buying a 14M?
Mmmm....??? I must borrow your wallet :)

If it was a board space thing fair enough.

I would just add a note of caution as NEwbis will be reading this;
I will do it in code.
IF (you don't understand PICAXE BASIC) AND ((You cannot vaguely understand Microchip DAta Sheets) OR (You can't be arsed to READ) OR (Haven't got the cash for a Programmer or Compiler)) then
Forget_PIC_Progrmming= True
EndIf
 

marcos.placona

Senior Member
"Mainly wanted to play to gain a pin back on the 8 pin PIC for a design - didnt want to move to the 14 pin ver just for 1 pin!"

So you bought a compiler and pogrammer to save buying a 14M?
Mmmm....??? I must borrow your wallet :)

If it was a board space thing fair enough.

I would just add a note of caution as NEwbis will be reading this;
I will do it in code.
IF (you don't understand PICAXE BASIC) AND ((You cannot vaguely understand Microchip DAta Sheets) OR (You can't be arsed to READ) OR (Haven't got the cash for a Programmer or Compiler)) then
Forget_PIC_Progrmming= True
EndIf
Great statement! :D
 

ylp88

Senior Member
(You cannot vaguely understand Microchip DAta Sheets)
Especially true! If you can't follow datasheets with a reasonable degree of competency, then you should avoid such a transition until a later time when you can. On that note, also don't forget to realise the value application notes can provide.

ylp88
 

crossthreaded

New Member
The cost is, I think, largely in time. The compiler (a compiler) can be obtained for free. I may be unique, but I doubt that I am the only one who has all the bits of a programmer (including a spare ZIF) in my bit-box. All I need is time to get around to going the other route. I've plenty of experience of assembly level programming on a multitude of different platforms.

I think the valid reasons for going the other route are the intellectual challenge of it or the need to build cheaply and in bulk.

The picaxe is a wonderful product, matchless for teaching and learning, but then the same could be said of the Pascal programming language.
 

jodicalhon

New Member
Go on - have a go at it! You'll learn a lot along the way (err ... mainly, how much Rev-ed have eased our way in programming Pics!)

Some time ago, after reading the Picmicro datasheets (g'day Dippy) to understand the Picaxe's underlying controller a bit better, I became rather intrigued with it all. So, built myself a crappy JDM programmer, got a copy of ICprog and MPASM off the web, learnt some assembly and ... got some LED's flashing. Got rather tired of assembly, so got a copy of CC5x, a free C compiler, learnt enough C to be dangerous, and ... got some LED's flashing. Moved on to serial comms, and got a headache.

'Twas a nice interlude - I really enjoyed myself, and I feel I understand what I'm doing a lot more than before.

But these days, when I want a project up and running, I break out a Picaxe (usually an 08M!).

Cheers.
 

Dippy

Moderator
"..after reading the Picmicro datasheets (g'day Dippy)..."
- you read ALL of them? Lordy! I'm not worthy!

It makes you realise how much is done for you by compiler/firmware doesn't it.

And another comment from experience. Ask a 'schoolboy' question on the 'pro' Forums and the answers you will get may have you reaching for the Phone Book and looking up the Samaritans. If you don't know your CCPs from your ANSELs you will tend to get told to spend 3 months on the loo reading Data Sheets. Nowhere near as friendly/patient/helpful as this Forum. And if you asked about LEDs and resistors you'd probably get your house burnt down :). Kidding.
 

nbw

Senior Member
Which brings me to my next questions...

How come an LED only works 1/2 the time, depending on which way I put it in the breadboard?

Can I use any old resistor to stop it glowing really bright and then smoking?

Why do I see sparks when I put a screwdriver across the red and black terminal things?
 

ylp88

Senior Member
How come an LED only works 1/2 the time, depending on which way I put it in the breadboard?
Or is it that it works all the time only half of the time? ;)

Don't be discouranged. Sure the step is big but if you've got the willingness and (just as importantly) TIME to try, then go for it. Even getting a simple program to blink an LED will teach you a lot about how a particular microcontroller works.

ylp88
 

nbw

Senior Member
Yeah I should think of it in terms of my 1.5 yr old daugther learning to walk - small steps for now, running / grabbing Dad's keys / wallet later.

p.s. I would have thought that after I left the LEDs to cool down after they've let out that horrible smelling blue smoke, they'd be alright to use again but no....
 

hippy

Technical Support
Staff member
My recommendation for considering PICmicro is to buy the PicKit2 plus the development board it plugs into. Then your first challenge is to flash a LED at the rate you intended.

It's not worth considering any other programmer IMO, it'll simply end in tears and frustration, not handling the chip you've chosen or the software you use knows the chip but not the programmer or vice-versa. Been there done all that. Don't waste your time.

In terms of programming, don't spend any money this early on. Look at the free compilers and there's a whole variety. My personal choice is CC5X/CC8E.
 

Wrenow

Senior Member
Any preferences as to BASIC programmers for the Pics in a PicKit2? Preferrably free or reasonably priced?

Cheers,

Wreno
 

womai

Senior Member
Hi Hippy

>It's not worth considering any other programmer IMO, it'll simply end in tears
>and frustration, not handling the chip you've chosen or the software you use
>knows the chip but not the programmer or vice-versa. Been there done all
>that. Don't waste your time.

The Mikroelektonika boards are pretty good - the one I have (EasyPic5) supports virtually all 10Fxxx, 12Fxxx, 16Fxxx, and 18Fxxx devices and is quite inexpensive, especially considering that the development board already includes an ICD, which Microchip wants you to to pay extra for. Their compiler (demo up to 2K compiled code) and programming software is free, and at least for me the whole thing (compiler and board) was up and running and flashing LEDs within 10 minutes (literally!). Reading an ADC took another 10 minutes.

One thing I agree with, the Picaxe is easier for a beginner (I got my start on a Picaxe after all, and still use it for quite advanced applications after several years now). What's more, and somewhat surprisingly, even though the Picaxe is often considered a "beginner" product, IMHO the average technical competency (and helpfulness!) of the people on this webboard here is miles/kilometers above comparable webboards for more "professional" offerings like the Mikroelektonika compiler or others; here we have also a much more lively discussion (and not always Picaxe related :) So I am sure to stick around! Took me ages to find the confidence to jump to bare PICs (once I did it it was of course easier than I thought), and I still wouldn't use them instead of a Picaxe except for cases where either I need more speed, or for larger scale production where cost is an issue. Heck, I am working for a large electronic test equipment company and use Picaxe's in some of my selfmade lab equipment!

Wolfgang
 

ylp88

Senior Member
I picked up a DV164027 kit from Microchip around a year ago (28-pin 16-bit development board with ICD2 debugger/programmer) for US$99 as part of the Circuit Cellar/Microchip promotion into the new Microchip 16-bit product line. Probably amongst the best $99 I've ever spent...

ylp88
 

Jeremy Leach

Senior Member
One question I'd like an opinion on: My understanding is that picaxes use very efficient tokenisation in the interpreted code. So I would think that it is unlikely that the average person could get a particular chip to 'do more things' by using assembler etc. Is this correct?

What I'm trying to say is that you might be able to cram a weather station system into a picaxe variety of a chip, but you might find it almost impossible to cram the same system features into the same (non-picaxe) chip if you did it in raw assembler - because a lot of clever design has been put into the picaxe to allow you to 'do more' with the memory available.

I accept some tasks can be blindingly fast in low level code, but in terms of implementing a system on a chip it's the very fact that the picaxe code is memory efficient that also makes it attractive.

There must be a word for this feature ... code that 'does a lot' but takes up little space (once the overhead of the interpreter space is taken into account). Not sure.
 
Last edited:
Top