Вы находитесь на странице: 1из 3

#define _XTAL_FREQ 16000000

#include <xc.h>
#include <pic16f877a.h>
#include "uart.h"
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>

// BEGIN CONFIG
#pragma config FOSC = HS
#pragma config WDTE = OFF
#pragma config PWRTE = OFF
#pragma config BOREN = ON
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config WRT = OFF
#pragma config CP = OFF
//END CONFIG
char output[20];
void ConvertIntegerToChar(int ID){
switch (ID) {
case 48:
strcpy(output, "0");
break;
case 49:
strcpy(output, "1");
break;
case 50:
strcpy(output, "2");
break;
case 51:
strcpy(output, "3");
break;
case 52:
strcpy(output, "4");
break;
case 53:
strcpy(output, "5");
break;
case 54:
strcpy(output, "6");
break;
case 55:
strcpy(output, "7");
break;
case 56:
strcpy(output, "8");
break;
case 57:
strcpy(output, "9");
break;
case 61:
strcpy(output, "=");
break;

case 97:
strcpy(output, "a");
break;
case 98:
strcpy(output, "b");
break;
case 99:
strcpy(output, "c");
break;
case 100:
strcpy(output, "d");
break;
case 101:
strcpy(output, "e");
break;
case 102:
strcpy(output, "f");
break;
case 103:
strcpy(output, "g");
break;
case 104:
strcpy(output, "h");
break;
case 105:
strcpy(output, "i");
break;
case 106:
strcpy(output, "j");
break;
case 107:
strcpy(output, "k");
break;
case 108:
strcpy(output, "l");
break;
case 109:
strcpy(output, "m");
break;
case 110:
strcpy(output, "n");
break;
case 111:
strcpy(output, "o");
break;
case 112:
strcpy(output, "p");
break;
case 113:
strcpy(output, "q");
break;
case 114:
strcpy(output, "r");
break;
case 115:
strcpy(output, "s");
break;
case 116:
strcpy(output, "t");
break;
case 117:
strcpy(output, "u");
break;
case 118:
strcpy(output, "v");
break;
case 119:
strcpy(output, "w");
break;
case 120:
strcpy(output, "x");
break;
case 121:
strcpy(output, "y");
break;
case 122:
strcpy(output, "z");
break; }
}
void main()
{
UART_Init(9600);
TRISB=0x00;

TRISB6=1;
PORTB=0x00;
int t;
char podatak[30]= "TeStInG BlUeToOtH";

char ima[10] = "imaa";


char nema[5] = "nema";

START:
//memset(podatak, 0, sizeof podatak);
GETDATA:
if(UART_Data_Ready()==1){

t=UART_Read();

if (t!=42){RCIF=0; ConvertIntegerToChar(t); strncat(podatak, output, 1); goto


GETDATA; }

// UART_Write_Text(podatak);

if (strcmp(podatak,"report") == 0){ UART_Write_Text("I am reporting to you");}


memset(podatak, 0, sizeof podatak);
RCIF=0;//data ready=0

}
//UART_Write_Text(podatak);

goto START;
}

Вам также может понравиться