Saludos a todos...
Debido a que no se ni papa de C quiero pasar este codigo que esta e
n C a Picbasic alguien sabe algun programa que lo haga o que tan dificil seria pasarlo alguna persona que me de una mano y me lo tradusca... pa mi este esta en chino jeje
#include <18f4550.h>
#fuses HS,MCLR,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT,NOPBADEN,NOLVP,NOCPD,NODEBUG,NOWRT,NOVREGEN
#use delay(clock=20000000)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
#include <string.h>
#bit PIN_DATA0 = 0xF81.0
#bit PIN_DATA1 = 0xF81.1
const int CodeBits = 26;
int1 first_exp=0;
int1 read_complete=0;
int nextbit=0;
char Code[CodeBits+1];
int FacilityCode;
long IdCardCode;
char bits[5]={0x01,0x02,0x04,0x08,0x10};
int i;
// INTERRUPCION por EXT0 Data0 ------------------------------------------------
#int_ext
ext_handler() {
if(first_exp==1){
Code[nextbit]='0';
if(++nextbit==CodeBits){
read_complete=1;
}
}
first_exp=1;
}
// INTERRUPCION por EXT1 Data1 ------------------------------------------------
#int_ext1
ext1_handler() {
if(first_exp==1){
Code[nextbit]='1';
if(++nextbit==CodeBits){
read_complete=1;
}
}
first_exp=1;
}
void limpia_data(void){
for(i=0;i<CodeBits+1;i++) Code=0x00;
nextbit=0;
}
void ajusta_code(void){
// Finaliza Code
Code[CodeBits]=0x00;
// Facility Code
FacilityCode=0x00;
for(i=1;i<9;i++){
if(Code=='1'){
FacilityCode=FacilityCode+bits[i-1];
}
}
// Id Card Code
IdCardCode=0x00;
for(i=9;i<CodeBits;i++){
if(Code=='1'){
IdCardCode=IdCardCode+bits[i-9];
}
}
}
void main() {
disable_interrupts(global);
set_tris_b(0b00000111);
printf("Wiegand26 Reader listen\r\n\n");
limpia_data();
ext_int_edge(0,L_TO_H);
ext_int_edge(1,L_TO_H);
first_exp=0;
enable_interrupts(int_ext);
enable_interrupts(int_ext1);
enable_interrupts(global);
do{
if(read_complete==1){
read_complete=0;
disable_interrupts(global);
ajusta_code();
printf("Facility Code = %u IdCardCode = %lu\r\n\n",FacilityCode,IdCardCode);
limpia_data();
enable_interrupts(global);
}
} while (TRUE);
}
de antemano muchas gracias