Also alle Fragen kan ich dir auch nciht beantworten, aber einige:
POrtX ist der geamte Port, also 8 ein bzw. ausgänge. du akknst dann ein Byte darüber parallel ausgeben.
PinX ist ein einziger Pin, deshalb auch die nummer dahinter.
Bei der Tastatur sind mehrere Widerstände in Reihe geschaltet, je nach dem welche Taste du drükst, kommt halt ein verschieden 'hoher' Spannungswert raus. ADC ist der Analog Digital-Converter. er liefert dir in diesem Fall einen WErt zwischen 0 und 1023. Wenn der WErt größer 1010 ist, ist keine Taste gedrückt, man könnte vermutlich auch < 1023 schreiben, aber eine gewisse Toleranz ist besser, oder es fließt immer eine geringer Strom, das häng vom Aufbau der Tastur ab. Liefert der ADC einen Wert zwischen 410 und 450. ist halt die 1 gedrückt. diese werte sollte man am besten ausmessen, wenn man nciht genau weiß, wie man sie errechnet. WS wird als Word deklariert, weil der gespeichert Wert zu groß für einen Integer ist, Integer gehen von 0 bis 255. Da die Wert aber halt bis 1024 gehen, braucht man eine Variable mit mindestens 10 Bits. Der Integer hat nur 8 das Word 16.
So ich hoffe, ich konnte dir ein wenig helfen, wenn du noch fragen hast frag nur. Das mit Start DC und get ADS ist glaub ich deshalb so, weild er ADC initialisert werden muss, und dazu ein wenig Zeit benötigt. So ungefähr müsste das sein. Warum es getadc(7), also 7 heißt, weilß ich nicht, schau mal in der hilfe nach. Ne vernünftige Anleitung im Internet hab ich nicht gefunden. Ich geh da eher nach Try and error vor, und schau mir halt an, wie es in anderen Codes ist, bzw. frage einfach im Forum nach.

MFg moritz