Not as a professional but as a radio - amateur I
have done programming to interface radio's with other equipment ever since the
early 80's. I have used assembler (6502 , 80x86 and recently PIC) BASIC,
T-Pascal, C. Only recently - after a 8 year break - I took up programming again,
this time in PIC-assembler.
In my opinion it really
depends on what you want: fast, direct and time critical interaction
between electronics and processor? Then assembler does the job. With this you
have a hands on feeling. You control every bit and cycle by cycle you can
predict what is going to happen. It needs an in depths analysis of the
process and a very logic mind. When used well it results in the best, fastest
and most compact code.
All higher languages (BASIC, PASCAL e.a.) make life simpler.
Especially when you want to process data or make complex calculations. Then a
higher language comes in handy. Time critical routines are difficult to make
while the one BASIC statement results (not all the time but usually) in multiple
machine code instructions.
So it is not OR but AND. When you want to make the most of the
PIC (or anyother micro) you cannot do without a good workig knowledge of
its assembler. and of assembler techniques in general.
Good luck
Q.Is there an advantage in writing program code in
assembler or is the complied PBasic code just as good.