In: Electrical Engineering
Write C18 program to get bit RB3 and send it to RC2.
#include <p18f452.h>
#include <stdio.h>
#pragma config WDT = OFF
void main(void)
{
int b0=0,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0; // Individual pin value variables.
int c0=0,c1=0,c2=0,c3=0,c4=0,c5=0,c6=0,c7=0;
TRISC = 0; //PORT C = output configuration of port C.
TRISB = 1; //PORT B = input configuration of Port B.
PORTB = 0x8; // So RB3 bit is set on INPUT.
b0 = PORTBbits.RB0; // Each input bit is assigned a seperate variable
b1 = PORTBbits.RB1;
b2 = PORTBbits.RB2;
b3 = PORTBbits.RB3;
b4 = PORTBbits.RB4;
b5 = PORTBbits.RB5;
b6 = PORTBbits.RB6;
b7 = PORTBbits.RB7;
printf("\n INPUT %d,%d,%d,%d,%d,%d,%d,%d", b7,b6,b5,b4,b3,b2,b1,b0);
PORTC= 59H; //so RC2 is set as output.
c0 = PORTCbits.RC0; // Each output bit is assigned a seperate variable.
c1 = PORTCbits.RC1;
c2 = PORTCbits.RC2;
c3 = PORTCbits.RC3;
c4 = PORTCbits.RC4;
c5 = PORTCbits.RC5;
c6 = PORTCbits.RC6;
c7 = PORTCbits.RC7;
printf("\n OUTPUTS %d,%d,%d,%d,%d,%d,%d,%d", c7,c6,c5,c4,c3,c2,c1,c0);
while (1); }