Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/23/05 13:38
Read: times


 
Msg Score: +1
 +1 Good Answer/Helpful
#88211 - microcontroller C portability is a myth
Responding to: ???'s previous message
The below specifically address portablity in microcontroller systems, for microprocessor systems it does not apply.

This will make your code ‘Only for 8051’ & you will loose advantage of using C that is portability
I had the pleasure once to do a project where 9 different models were made with increasing richness of features. To accomodate the pricing structure the low end (highest volume) was made with a '51 and the high end with a Philips XA (big developent cost, but so what, we made 680.000 of the thingies). This gave me some insight in "portability" and, ladies and gentlemen, mainly it is a myth. Yes, we ended up being able to use about 70% of the code on both platforms through some very hard structuring and making two BIOS with "device drivers" that allowed most application routines "not to know" which processor they were running on.

HOWEVER, "portability" as an automatic result of C IS a myth.
We had to spend hundereds of hours to make the code "portable" (i.e. able to be used on both platforms), but if we had not designed based on "darn it this code MUST run on both" there would have been no "portability".

So, it requires a significant effort to make microcontroller C portable and I doubt such an effort is made in 99% of the cases.

Erik

List of 20 messages in thread
TopicAuthorDate
Rotating Carry (CY) through ACC in C51            01/01/70 00:00      
   Why ?            01/01/70 00:00      
      It is a keyboard interface sub routine            01/01/70 00:00      
         A51 to C51 interfacing            01/01/70 00:00      
            inline            01/01/70 00:00      
               it does, but            01/01/70 00:00      
                  Nevertheless            01/01/70 00:00      
                     A Case in point            01/01/70 00:00      
   what?            01/01/70 00:00      
      Thank you.            01/01/70 00:00      
      Try            01/01/70 00:00      
   what?            01/01/70 00:00      
   shift first            01/01/70 00:00      
      Problem Solved            01/01/70 00:00      
         Wrong approach            01/01/70 00:00      
            using chainsaw to perform dental surgery            01/01/70 00:00      
               or...            01/01/70 00:00      
   ANSI C            01/01/70 00:00      
      microcontroller C portability is a myth            01/01/70 00:00      
         Portability No .. Commonality Maybe            01/01/70 00:00      

Back to Subject List