Derleyici bağımsız olmak istediğiniz harika! Ne yazık ki, düşük uçlu PIC'ler için hitech ve CCS derleyicileri, derleyiciye özgü önişlemci bildirimleri, derleyiciye özgü pim erişim rutinleri ve SPI, I2C, ADC ve benzeri temel işlevler için CCS derleyicisine özel rutinler kullanır.
Her derleyicinin sunduğu belirli bölümlere erişmek için kodunuzu çok sayıda önişlemci #define, #ifdef, #ifndef ve benzeri olmadan derleyiciye özgü olmayacak şekilde yazmak mümkün değildir. Bu, kodunuzu okunamaz hale getirir.
Hedefleyebileceğiniz en iyi şey IDE'den bağımsız olmak ve tutulma gibi bir şey kullanmaktır, bu yüzden en azından aynı IDE'yi kullanıyorsunuz. Bu, çekirdek işlevleri ayarlamak için CCS sihirbazlarını kaybetmenize neden olur, ancak aynı IDE'yi kullanma konusunda size daha fazla esneklik sağlar.
Dikkate alınması gereken başka bir şey, hem hitech hem de CCS'nin (en azından geçmişte) gerçek bir c derleyici bağlayıcısına sahip olmaması ve kişisel olarak hor gördüğüm "#include myfile.c" yi kullanmanız gerektiğidir ... ama bu başka bir hikaye.
Sadece CCS ve hitech kullandığım için IAR derleyicisine yorum yapmadım. Her ikisi de iyi çalıştı, ancak Motorola (şimdi freescale) platformundan geçtikten ve o sırada daha gelişmiş olan metroworks derleyicisini kullandıktan sonra gerçekten mutlu olmadım. IAR derleyicisi iyi görünüyor ama hiç kullanmadım.