Аз съм нов в програмирането на PIC микроконтролери и C и ми беше поставена задачата да създам свой собствен метод за сканиране на клавиатурата, който работи изключително на порт C (16F877A микроконтролер). По-конкретно, програмата, която използва този метод, използва само цифри 1, 2, 4 и 5 - така че за да бъде ефективен, методът на скенера е да използва само RC0, RC1, RC2 и RC3 като определени входове/изходи (не ми е позволено за използване на RC4-RC7). Това по същество превръща клавиатурата 4x4 в клавиатура 2x2.
Разбирам, че концепцията за сканиране включва линиите на порта, зададени на високо в редовете, и редовете, зададени като колони за въвеждане - когато се натисне бутон, това чете ниския нибл на порта, за да открие бутона.
За съжаление, нямам представа как да кодирам това на C, особено като използвам посочените по-горе линии на порт. Може ли някой да хвърли малко светлина върху проблема и да ме насочи в правилната посока? Благодаря!