Upload
mfaiz-rhamira
View
217
Download
0
Embed Size (px)
Citation preview
8/17/2019 Programming Used 3
1/36
#defne M2A LATGbits.LATG8 //MOTOR 4
#defne M2B LATGbits.LATG7
#defne sp2 PDC5 // ma 25!! PDC
#defne M"A LATbits.LAT8 //MOTOR "
#defne M"B LATAbits.LATA!
#defne sp" PDC"
#defne M4A LAT$bits.LAT$! //MOTOR 2
#defne M4B LATbits.LAT%
#defne sp4 PDC7
#defne M5A LATBbits.LATB5 //MOTOR &
#defne M5B LAT$bits.LAT$&
#defne sp5 PDC& //PDC4 t'(a)'nt'( se)*+&
#defne M,A LATBbits.LATB" //MOTOR $A-A-
#defne M,B LATBbits.LATB4
//&2P- /O//
#defne TRGGR LAT0bits.LAT0&2
//1ART//
#defne T" 1"TRG
#defne T4 14TRG
//BA1RAT//
#defne BRG3AL P/BA1DRAT6/&,6&
#defne BA1DRAT %,!!
#defne P 5!!!!!!
8/17/2019 Programming Used 3
2/36
//s(ps p)+t++9//
#defne p:se9et !
#defne p:;+
8/17/2019 Programming Used 3
3/36
////
*+idinit:O*+id6
*+idinit:PM*+id6
*+id>an=e:pin*+id6//@'nti+n mean'm 'sin= sabe)t++t>//
*+idmean'm:@+)?a)d'nsi=ned int mL 'nsi=ned intmR6
*+idmean'm:)e*e)se'nsi=ned int mL 'nsi=ned intmR6
*+idmean'm:9e@t'nsi=ned int mL 'nsi=ned intmR6
*+idmean'm:)i=>t'nsi=ned int mL 'nsi=ned intmR6
*+id mean'm:45'nsi=ned int mL 'nsi=ned intmR6
*+id mean'm:&"5'nsi=ned int mL 'nsi=ned intmR6
*+id mean'm:225'nsi=ned int mL 'nsi=ned intmR6
*+id mean'm:"&5'nsi=ned int mL 'nsi=ned intmR6
*+idmean'm:C'nsi=ned int mL 'nsi=ned intmR6
*+idmean'm:CC'nsi=ned int mL 'nsi=ned intmR6
*+id mean'm:t')n&'nsi=ned int mL 'nsi=ned intmR6
//@'nti+n mean'm 'sin= )e9aa) 'a)t:)e*+id6
'nsi=ned >a) s(ps'nsi=ned >a) data6
*+id init:'a)t2*+id6
8/17/2019 Programming Used 3
4/36
//@'nti+n tamba>an//
*+id de9aa) s&L'nsi=ned >a) s&R
'nsi=ned >a) s2L
'nsi=ned >a) s2R
'nsi=nedint stati "!
'nsi=nedint stati < 55
int main*+id6
E
DTFDisab9e
init:O6
TRGGR&
1"TRG!
14TRG!
de9ai9e&6
E
i@s(psp:sta)t6!6
E
LD:RD!
TRGGR&
?>i9e&6
E
8/17/2019 Programming Used 3
5/36
LD:GR-&
i@s(psp:'p6!6
E
i@s(psp:)i=>t6!6 E
LD:GR-&
LD:0T&
mean'm:)i=>t,","6
e9se i@s(psp:9e@t6!6
E
LD:RD&
LD:BL1&
mean'm:9e@t,","6
e9se i@s(psp:)&6!6
E
LD:GR-&
LD:0T&
mean'm:C,","6
e9se i@s(psp:9&6!6
E
LD:RD&
LD:BL1&
mean'm:CC,","6
e9se i@s(psp:)26!6
E
LD:GR-&
LD:0T&
mean'm:45,","6
8/17/2019 Programming Used 3
6/36
e9se i@s(psp:926!6
E
LD:RD& LD:BL1&
mean'm:&"5,","6
e9se
E
LD:RD&
LD:GR-&
mean'm:@+)?a)d,","6
e9se i@s(psp:d+?n6!6
E
i@s(psp:)i=>t6!6
E
LD:GR-&
LD:0T&
mean'm:9e@t,","6
e9se i@s(psp:9e@t6!6
E
LD:RD&
LD:BL1&
mean'm:)i=>t,","6
e9se i@s(psp:)&6!6
E
LD:GR-&
LD:0T&
8/17/2019 Programming Used 3
7/36
mean'm:C,","6
e9se i@s(psp:9&6!6
E LD:RD&
LD:BL1&
mean'm:CC,","6
e9se i@s(psp:)26!6
E
LD:GR-&
LD:0T&
mean'm:"&5,","6
e9se i@s(psp:926!6
E
LD:RD&
LD:BL1&
mean'm:225,","6
e9se
E
LD:BL1&
LD:0T&
mean'm:)e*e)se,","6
e9se i@s(psp:)i=>t6!6
E
LD:GR-&
LD:0T&
mean'm:)i=>t,","6
8/17/2019 Programming Used 3
8/36
e9se i@s(psp:9e@t6!6
E
LD:RD& LD:BL1&
mean'm:9e@t,","6
e9se i@s(psp:)&6!6
E
LD:RD&
LD:BL1&
mean'm:C,","6
e9se i@s(psp:9&6!6
E
LD:GR-&
LD:0T&
mean'm:CC,","6
e9se i@s(psp:)26!6
E
LD:GR-&
LD:0T&
mean'm:45,","6
e9se i@s(psp:926!6
E
LD:RD&
LD:BL1&
mean'm:&"5,","6
e9se i@s(psp:;+
8/17/2019 Programming Used 3
9/36
E
se)*+&se)*+&5
i@se)*+&I2!!6
E se)*+&2!!
e9se i@s(psp:;+
8/17/2019 Programming Used 3
10/36
E
se)*+22!!
e9se i@s(psp:)+ss6!6
E
LD:BL1&
TRGGR!
// temba(6
e9se i@s(psp:se9et6!6
E
init:O6
LD:BL1LD:GR-LD:0TLD:RD&
de9a
8/17/2019 Programming Used 3
11/36
E
//FT /O AF DGTAL//
A-FLA !
A-FLB ! A-FLC !
A-FLD !
A-FL !
//FT P- AF -P1T//
//P1F0 B1TTO-
TRF0bits.TRF08 &
TRF0bits.TRF0&! &
//FT P- AF O1TP1T//
//LD
TRF0bits.TRF04 !
TRF0bits.TRF0, !
TRFBbits.TRFB&4 !
TRFbits.TRF&" !
//MOTOR
TRFbits.TRF8 !
TRFbits.TRF% !
TRFAbits.TRFA! !
TRF$bits.TRF$! !
TRFGbits.TRFG8 !
TRF$bits.TRF$& !
TRFGbits.TRFG7 !
TRFBbits.TRFB5 !
TRFGbits.TRFG, !
TRFBbits.TRFB4 !
TRFKbits.TRFK&" !
TRFBbits.TRFB" !
8/17/2019 Programming Used 3
12/36
//&2P- /!
TRF0bits.TRF0&2 ! //TRGGR
>an=e:pin6
init:'a)t26
init:PM6
//1&BRG BRG3AL //'nt'( testin= 1ART man'a9
//12BRG BRG3AL
1"BRG BRG3AL
14BRG BRG3AL
//T2!
T"!
T4!
//-TAL TO RO//
LD:BL1 ! //me)a>//sebe9'mt'(a)
LD:GR- ! //>i;a'
LD:RD ! //p'ti>
LD:0T ! //bi)'
TRGGR&
M&AM&BM2AM2BM"AM"BM4AM4BM5AM5B!
*+idinit:PM6
E
PTPR 24!4 / PTPR & / 4!!(0N6 / &.!4ns6 24!4 ?>e)e4!!(0N
is t>e desi)ed s?it>in= @)e'en< and &.!4ns is PM )es+9'ti+n. /
PTCO-2bits.PCL$D3, //!!& Di*ideb
8/17/2019 Programming Used 3
13/36
/ PM& C+nf=')ati+n/
OCO-&bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e/
OCO-&bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-&bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
//PDC& ! / nitia9 D't< ase s>i@t /
/ PM2 C+nf=')ati+n/
OCO-2bits.P-0 & / PM20 is +nt)+99ed b< PM m+d'9e/
OCO-2bits.P-L ! / PM2L is +nt)+99ed b< GPO m+d'9e/
OCO-2bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
//PDC2 ! / nitia9 D't< ase s>i@t /
/ PM" C+nf=')ati+n/
OCO-"bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e/
OCO-"bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-"bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
PDC" ! / nitia9 D't<
8/17/2019 Programming Used 3
14/36
/ PM4 C+nf=')ati+n/
OCO-4bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e
/
OCO-4bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-4bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
//PDC4 ! / nitia9 D't< ase s>i@t /
/ PM5 C+nf=')ati+n/
OCO-5bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e/
OCO-5bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-5bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
PDC5 ! / nitia9 D't< ase s>i@t /
/ PM, C+nf=')ati+n
/
OCO-,bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e/
OCO-,bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-,bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
PDC, ! / nitia9 D't<
8/17/2019 Programming Used 3
15/36
P0AF, ! / -+ p>ase s>i@t /
/ PM7 C+nf=')ati+n/
OCO-7bits.P-0 & / PM&0 is +nt)+99ed b< PM m+d'9e/
OCO-7bits.P-L ! / PM&L is +nt)+99ed b< GPO m+d'9e/
OCO-7bits.PMOD & / Fe9et ndependent O'tp't PMm+de /
PDC7 ! / nitia9 D't< ase s>i@t /
////
PTCO-bits.PT- & / nab9e t>e PM M+d'9e /
*+id>an=e:pin*+id6 //1ART $- T1$AR P-
E
//1&MODbits.1ART- & //MOD T
//1&FTAbits.1T- & //CO-TROLL RGFTR
//12MODbits.1ART- & //d> settin= (t@'nti+n 1ART
//12FTAbits.1T- &
1"MODbits.1ART- &
1"FTAbits.1T- &
14MODbits.1ART- &
14FTAbits.1T- &
//1ART 2F$PF //='na 1ART2
RP-R&%bits.12RR&&2 //F$PFR &&& !!!!
RPOR&bits.RP,7R" //1ART2T !! !!&&
8/17/2019 Programming Used 3
16/36
RPOR&bits.RP,,R27 //1ART"T !& &!&&
RPOR!bits.RP,5R2% //1ART4T !& &&!&
*+id init:'a)t2*+id6
E
12FTAbits.1RFL !
PC7bits.12RP5
12FTAbits.ORR !
F&bits.12R !
C&bits.12R !
12MODbits.1ART- &
12FTAbits.1T- &
12BRG BRG3AL
// 'a)t @'nti+n se)ia9 +mm'niati+n6
//
*+id'a)t:send'nsi=ned >a) data6 //@'nti+n t+ send +'t a b send +'t
12TRG data //send ne? data
'nsi=ned >a) 'a)t:)e*+id6 //@'nti+n t+ ?ait @+) a b
8/17/2019 Programming Used 3
17/36
//
'nsi=ned >a) s(ps'nsi=ned >a) data6 //@'nti+n t+ )ead b'tt+n and ;+
8/17/2019 Programming Used 3
18/36
s2L ,4 mL J
s2R &%2 mR J
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 J mL
8/17/2019 Programming Used 3
19/36
E
i@s(psp:t)ian=9e6!6
E
s&L ,4 mL J s&R &%2 mR J
1"TRG s&L
1"TRG s&R
s2L ,4 J mL
s2R &%2 J mR
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 mL J
8/17/2019 Programming Used 3
20/36
s2L ,4 J mL
s2R &%2 J mR
14TRG s2L
14TRG s2R
*+idmean'm:9e@t'nsi=ned int mL 'nsi=ned intmR6
E
i@s(psp:t)ian=9e6!6
E
s&L ,4 mL J
s&R &%2 J mR
1"TRG s&L
1"TRG s&R
s2L ,4 J mL
s2R &%2 mR J
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 mL J
8/17/2019 Programming Used 3
21/36
8/17/2019 Programming Used 3
22/36
s&R &%2 mR J
8/17/2019 Programming Used 3
23/36
s2L ,4 mR J
s2R &%2
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 J mL
8/17/2019 Programming Used 3
24/36
E
i@s(psp:t)ian=9e6!6
E
s&L ,4 s&R &%2 J mR
1"TRG s&L
1"TRG s&R
s2R ,4
s2L &%2 mL J
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4
s&R &%2 J mR
8/17/2019 Programming Used 3
25/36
8/17/2019 Programming Used 3
26/36
e9se
E
s&L ,4 mL s&R &%2
1"TRG s&L
1"TRG s&R
s2L ,4 J mR
s2R &%2
14TRG s2L
14TRG s2R
*+id mean'm:"&5'nsi=ned int mL 'nsi=ned intmR6
E
i@s(psp:t)ian=9e6!6
E
s&L ,4
s&R &%2 mR J
1"TRG s&L
1"TRG s&R
s2R ,4
s2L &%2 J mL
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4
8/17/2019 Programming Used 3
27/36
s&R &%2 mR J
8/17/2019 Programming Used 3
28/36
s2L ,4 mL J
s2R &%2 J mR
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 mL J
8/17/2019 Programming Used 3
29/36
E
i@s(psp:t)ian=9e6!6
E
s&L ,4 J mL s&R &%2 mR J
1"TRG s&L
1"TRG s&R
s2L ,4 J mL
s2R &%2 mR J
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 J mL
8/17/2019 Programming Used 3
30/36
s2L ,4 J mL
s2R &%2 mR
14TRG s2L
14TRG s2R
*+id mean'm:t')n&'nsi=ned int mL 'nsi=ned intmR6
E
i@s(psp:t)ian=9e6!6
E
s&L ,4 J mL
s&R &%2 mR J
1"TRG s&L
1"TRG s&R
s2L ,4 mL J
s2R &%2 J mR
14TRG s2L
14TRG s2R
e9se i@s(psp:i)9e6!6
E
s&L ,4 J mL
8/17/2019 Programming Used 3
31/36
8/17/2019 Programming Used 3
32/36
*+idmean'm:)e9a
8/17/2019 Programming Used 3
33/36
sp:)e9a
8/17/2019 Programming Used 3
34/36
M4B!
// sp4
8/17/2019 Programming Used 3
35/36
e9se
E
sp&2!!!
sp22!!! sp"2!!!
sp42!!!
*+idsp:)e9a
8/17/2019 Programming Used 3
36/36
LD:BL1&
de9a