sterownik na PICach

Rozmowy na temat układów elektronicznych sterowania obrabiarek CNC

Autor tematu
camel131
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 9
Posty: 84
Rejestracja: 27 gru 2004, 21:27
Lokalizacja: gdansk
Kontakt:

#11

Post napisał: camel131 » 17 lut 2005, 08:51

Strzał kondensatora to musi być ewidentne niedopatrzenie , tak tylko myślę bo u mnie kondensatory wybuchały jedynie po błędnym podłączeniu.
Ja płytkę już wytrawiłem i powierciłem no i teraz nie wiem czy warto było zaczynać.
przejrzałem w głąb tę stronę http://www.cenece.com/ i są tam jeszcze inne projekty.



Tagi:

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#12

Post napisał: markcomp77 » 17 lut 2005, 11:01

camel131 pisze:...Ja płytkę już wytrawiłem i powierciłem no i teraz nie wiem czy warto było zaczynać...
jako wprawkę do przetestowania można na początek próbować programowania PIC-a

C4_F627_v17.hex dla 16F627 (ten jest chyba tańszy)

C4_F84_v17.hex dla 16F84
.

Natomiast jest jeszcze jeden podobny projekt na tej stronie... który zawiera źródełka
Controlador C-3 PIC 16F84 Por Sebastián y Carlos Lucic
http://www.cenece.com/cenececontrolPIC.htm

oto on:

Kod: Zaznacz cały

list p=16f84A

__CONFIG   _RC_OSC  & _WDT_ON & _PWRTE_OFF & _CP_OFF


;==========================================================================
;	Motor Paso A Paso
;==========================================================================
;
;
;----- STATUS Bits --------------------------------------------------------

IRP                          EQU     H'0007'
RESET                        EQU     H'0006'
RP0                          EQU     H'0005'
NOT_TO                       EQU     H'0004'
NOT_PD                       EQU     H'0003'
CERO                         EQU     H'0002'
DC                           EQU     H'0001'
CARRY                        EQU     H'0000'

;----- INTCON Bits --------------------------------------------------------

GIE                          EQU     H'0007'
EEIE                         EQU     H'0006'
T0IE                         EQU     H'0005'
INTE                         EQU     H'0004'
RBIE                         EQU     H'0003'
T0IF                         EQU     H'0002'
INTF                         EQU     H'0001'
RBIF                         EQU     H'0000'

;----- OPTION Bits --------------------------------------------------------

NOT_RBPU                     EQU     H'0007'
INTEDG                       EQU     H'0006'
T0CS                         EQU     H'0005'
T0SE                         EQU     H'0004'
PSA                          EQU     H'0003'
PS2                          EQU     H'0002'
PS1                          EQU     H'0001'
PS0                          EQU     H'0000'

;----- EECON1 Bits --------------------------------------------------------

EEIF                         EQU     H'0004'
WRERR                        EQU     H'0003'
WREN                         EQU     H'0002'
WR                           EQU     H'0001'
RD                           EQU     H'0000'

;--------------------------------------------------------------------------
W                            EQU     H'0000'
F                            EQU     H'0001'


;----   equ     D'0'          ;       BANDERA
;----   equ     D'1'          ;
;----   equ     D'2'          ;
;----   equ     D'3'          ;
;----   equ     D'4'          ;
;----   equ     D'5'          ;
;----	equ     D'6'          ;
;----   equ     D'7'          ;

;----- Register Files------------------------------------------------------
PUNTERO                      EQU     H'0000'
RTCC                         EQU     H'0001'
PCL                          EQU     H'0002'
STATUS                       EQU     H'0003'
FSR                          EQU     H'0004'
PORT_A                       EQU     H'0005'
PORT_B                       EQU     H'0006'
ADCON0                       EQU     H'0008'
ADRES                        EQU     H'0009'
PCLATH                       EQU     H'000A'
INTCON                       EQU     H'000B'

OPTION_RES                   EQU     H'0081'
TRISA                        EQU     H'0085'
TRISB                        EQU     H'0086'
ADCON1                       EQU     H'0088'


DEL_0   equ     H'000C'   ;
DEL_1   equ     H'000D'   ;
DEL_2   equ     H'000E'   ;
MOTOR   equ     H'000F'   ;
RESET_P equ     H'0010'   ;
;-----  equ     H'0011'   ;
;-----  equ     H'0012'   ;                       REGISTROS VARIOS
;-----  equ     H'0013'   ;
;-----  equ     H'0014'   ;
;-----  equ     H'0015'   ;
;-----  equ     H'0016'   ;
;-----  equ     H'0017'   ;
;-----  equ     H'0018'   ;
;-----  equ     H'0019'   ;
;-----  equ     H'001A'   ;
;-----  equ     H'001B'   ;
;-----  equ     H'001C'   ;
;-----  equ     H'001D'   ;
;-----  equ     H'001E'   ;
;-----  equ     H'001F'   ;
;-----  equ     H'0020'   ;
;-----  equ     H'0021'   ;
;-----  equ     H'0022'   ;
;-----  equ     H'0023'   ;
;-----  equ     H'0024'   ;
;-----  equ     H'0025'   ;
;-----  equ     H'0026'   ;
;-----  equ     H'0027'   ;
;-----  equ     H'0028'   ;
;-----  equ     H'0029'   ;
;-----  equ     H'002A'   ;
;-----  equ     H'002B'   ;
;-----  equ     H'002C'   ;
;-----  equ     H'002D'   ;
STAT    equ     H'002E'   ;
VAR0    equ     H'002F'   ;
;
COMIENZO goto   COMI_PRI
nop
nop
nop
movwf   VAR0
movf    STATUS,W
movwf   STAT
bcf     STATUS,RP0
btfsc   INTCON,INTF
goto    MUEVE
btfsc   INTCON,T0IF
goto    CICLO_RTCC
goto    COMI_PRI
;
MUEVE   btfsc	PORT_B,1
goto	MUEVE_D

MUEVE_I bcf	INTCON,INTF
btfsc	PORT_A,2
goto	TER_CERO
rlf	MOTOR
bcf	MOTOR,0
btfsc	MOTOR,4
bsf	MOTOR,0
bcf	MOTOR,4
swapf	MOTOR,W
andlw	B'11110000'
movwf	PORT_B
movlw	D'25'
movwf	RESET_P
goto	TER

MUEVE_D bcf	INTCON,INTF
btfsc	PORT_A,3
goto	TER_CERO
bcf	STATUS,CARRY
rrf	MOTOR
bcf	MOTOR,3
btfsc	STATUS,CARRY
bsf	MOTOR,3
swapf	MOTOR,W
andlw	B'11110000'
movwf	PORT_B
movlw	D'25'
movwf	RESET_P
goto	TER

;
DELAY   clrf	DEL_0
clrf	DEL_1
movlw	D'3'
movwf	DEL_2
CIC_DEL	clrwdt
decfsz	DEL_0
goto	CIC_DEL
decfsz	DEL_1
goto	CIC_DEL
decfsz	DEL_2
goto	CIC_DEL
return
;
CICLO_RTCC bcf	INTCON,T0IF
clrwdt
decfsz	RESET_P
goto	TER
movlw	B'00000011'
movwf	PORT_B
TER_CERO clrf	PORT_B
TER  movf    STAT,W
movwf   STATUS
movf    VAR0,W
retfie
;-------------------------------------------
NUDO  	nop
goto	NUDO
;-------------------------------------------
COMI_PRI clrwdt
bcf    STATUS,T0IF
bsf     STATUS,RP0
movlw   B'10000100'   ;seteo option, Prrscaler 1:16,RTS=0,RBPU=1
movwf   OPTION_RES
movlw	B'00011111'
movwf   TRISA
movlw   B'00001111'
movwf   TRISB
bcf     STATUS,RP0
movlw	D'3'
movwf	MOTOR

clrf    PORT_A
clrf	PORT_B
movlw   B'10110000'   ;seteo interrupciones, 1=GIE,1=TOIE,1=INTE
movwf   INTCON
clrwdt
movlw	D'25'
movwf	RESET_P
goto	NUDO


;
END
może warto powtórzyc sobie podstawy asemblera?
programik jest prościutki... więc do tego celu znakowicie się nadaje!

jaki jest schemat?
Obrazek
daje się to odszyfrować...

PS. może warto dopisać się do petycji:
http://patenty.komada.org/index.php
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


Autor tematu
camel131
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 9
Posty: 84
Rejestracja: 27 gru 2004, 21:27
Lokalizacja: gdansk
Kontakt:

#13

Post napisał: camel131 » 17 lut 2005, 12:33

z tego ostatniego rysunku wynika że problem tłumaczenia pierwszego układu można wyjaśnić chociaż część final de carrera to wyłącznik krańcowy.

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#14

Post napisał: markcomp77 » 17 lut 2005, 12:38

camel131 pisze:z tego ostatniego rysunku wynika że problem tłumaczenia pierwszego układu można wyjaśnić chociaż część final de carrera to wyłącznik krańcowy.
a pulsos - to puls... lub lepiej KROK (zegar)
i direccion - kierunek kroku

znajomość kodu jest pomocna... bo PIC "628" jest szybszy i tańszy od "84" - i jest łatwo dostępny... "628" posiada pewne mechanizmy sprzętowe pomocne przy rozwijaniu programu...
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


Autor tematu
camel131
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 9
Posty: 84
Rejestracja: 27 gru 2004, 21:27
Lokalizacja: gdansk
Kontakt:

#15

Post napisał: camel131 » 17 lut 2005, 12:55

A ja mając w zapasie pic16f84 chcę je jednak użyć.
I przy okazji mam pytanie czy zamiast 7438 można użyć 74LS38 ?

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#16

Post napisał: markcomp77 » 17 lut 2005, 13:23

camel131 pisze:A ja mając w zapasie pic16f84 chcę je jednak użyć.
I przy okazji mam pytanie czy zamiast 7438 można użyć 74LS38 ?
TAK! nawet lepiej... bo mniej bierze LS
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


251mz
Moderator
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 3
Posty: 4478
Rejestracja: 27 sie 2004, 21:59
Lokalizacja: Polska

#17

Post napisał: 251mz » 17 lut 2005, 13:24

cokolwiek o picach lub do skompilowania itp to mozecie mi dac
mam do tego zainstalowane całe oprogramowanie łacznei z symulatorem
a asemblera nawet jzu umiem jedynie co to poznaje nowe instrukcje

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#18

Post napisał: markcomp77 » 17 lut 2005, 14:36

251mz pisze:...a asemblera nawet jzu umiem jedynie co to poznaje nowe instrukcje
asembler PICów jest nieco inny niż np. Z80, 8051, czy nawet x86

radzę ściągnć PICowe opisy instrukcji... i znaleźć pare gotowych przykładów do analizy - np. ślicznie komentowany LiniSteper

naprawdę zobaczysz, że znojomość tradycyjnych procesorów (x86 szeroko rozumiane wywwodzom się z 8080) przy PIC nie bedzie bardzo przeszkadzać - ale czy bardzo pomoże?..... może troszeczkę

symulator w pakiecie PICowym napewno pomoże!!!!
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


Autor tematu
camel131
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 9
Posty: 84
Rejestracja: 27 gru 2004, 21:27
Lokalizacja: gdansk
Kontakt:

#19

Post napisał: camel131 » 17 lut 2005, 14:50

Jednak dalej składam płytkę C4 i z braku kwarców 4Mhz chcę włożyć 4,433619Mhz myślę że to nie przeszkodzi , czy może?

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#20

Post napisał: markcomp77 » 17 lut 2005, 15:10

camel131 pisze:Jednak dalej składam płytkę C4 i z braku kwarców 4Mhz chcę włożyć 4,433619Mhz myślę że to nie przeszkodzi , czy może?
bez znaczenia... można dać to co się ma - jeno aby PIC wyrobił!

linisteperowcy pisali, iż gonili PIC-a 4MHZ na 16MHz <= to sie nazywa OVERCLOCKING!!!
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Elektronika CNC”