Op 10 november 2006 19:06:53 schreef JoWi:
[...]Amateurs zeker, bij een fatsoenlijke compiler zit er een runtime library bij voor je I2C, je SPI en UART. En zullen we van de regellus een PID regeling maken? Wat denk je dat sneller is C of ASM ?
D'r loopt hier momenteel een projectje met een PIC24, 't had al lang klaar kunnen zijn, maar het duurt en duurt en duurt...
Vele jaren code geklopt, 95% was C en 5% was ASM en dan was ik nog een van de weinigen die er af en toe assembly door heen gooide (omdat ik vaak op driver level zat). Vanaf het windows-era werd alles C++ en 0% assembly.
op een PC geef ik je onder windhoos 100% gelijk, maar op een kleine controller kun je met C veel fout doen, als je geen idee hebt waar je mee bezig bent (variabelen als long float, omdat de getallen niet in een 'int' passen.
Zoals Wouter vertelde: het break-even punt ligt bij zeer grote aantallen (afgezien van een zeer incidentele uitzondering) voordat assemby economisch rendabel wordt. Wat mij er overigens niet van weerhoud om in de hobby sfeer bijna alles in assembly te klooien (tot fp rekenwerk aan toe)
Precies, doe ik net zo, daarom heb ik al 90% van de code bijeen, heb al RS232 gebitbanged, al I2C gebitbanged(volledig multimaster compatibel overigens) SPI gebitbanged en met de ADC gespeeld, 't is voor mij niets meer als 'copy-paste' uit bestaande programma's. Regelalgoritme als PID-regelaar hoeft niet eens, 't is een compensatie voor een amplitudegang, twee tabelletjes uitlezen en de boel is voor elkaar.
@wouter: Pages en bank zijn voor mij inmiddels geen hindernis meer, ik 'denk' helemaal in pages en banks als ik een pic programmeer, ik zet bepaalde stukken code bewust op een bepaalde page neer, of bepaalde variabelen bewust op een bepaalde registerbank.
in het begin wel even moeite mee gehad, maar inmiddels niet meer.
en wat de eerlijke vergelijking betreft, voordat ik onze C-programmeur zover heb dat hij het in dezelfde mate 'in het hoofd' heeft zijn er al 2 dagen verstreken. 't Is geen hardware-minded persoon.