Advertisement
Robomatics

MultiLight Slave

Apr 21st, 2013
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MPASM 4.19 KB | None | 0 0
  1.     list     p=16f747
  2.     #include <p16f747.inc>
  3.  
  4.     __CONFIG  _CONFIG1, _CP_OFF & _MCLR_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_IO
  5.     __CONFIG  _CONFIG2, _BORSEN_1 & _IESO_OFF & _FCMEN_OFF
  6.  
  7. ;
  8.  
  9.     CBLOCK 0X20
  10.     D1
  11.     D2
  12.     COUNT
  13.     TEMPW
  14.     STATUS_TEMP
  15.     RCVDATA
  16.     TEMP
  17.     L1
  18.     L2
  19.     L3
  20.     L4
  21.     L5
  22.     L6
  23.     L7
  24.     L8
  25.     L9
  26.     L10
  27.     L11
  28.     L12
  29.     L13
  30.     L14
  31.     L15
  32.     L16
  33.     L17
  34.     L18
  35.     L19
  36.     L20
  37.     L21
  38.     L22
  39.     L23
  40.     L24
  41.     L25
  42.     L26
  43.     L27
  44.     L28
  45.     L29
  46.     L30
  47.     ENDC
  48.  
  49. ;
  50. ;   RE3-IN -|-__-|- RB7-15
  51. ;   RA0-01 -|o   |- RB6-16
  52. ;   RA1-02 -|    |- RB5-17
  53. ;   RA2-03 -|    |- RB4-18
  54. ;   RA3-04 -|    |- RB3-19
  55. ;   RA4-   -|    |- RB2-20
  56. ;   RA5-SS -|    |- RB1-21
  57. ;   RE0-05 -|    |- RB0-22
  58. ;   RE1-06 -|    |- VDD
  59. ;   RE2-07 -|    |- VSS
  60. ;      VDD -|    |- RD7-23
  61. ;      VSS -|    |- RD6-24
  62. ;   RA7-08 -|    |- RD5-25
  63. ;   RA6-09 -|    |- RD4-26
  64. ;   RC0-10 -|    |- RC7-27
  65. ;   RC1-11 -|    |- RC6-28
  66. ;   RC2-12 -|    |- RC5-SDO
  67. ;   RC3-SCK-|    |- RC4-SDI
  68. ;   RD0-13 -|    |- RD3-29
  69. ;   RD1-14 -|----|- RD2-30
  70. ;  
  71.     ORG 0
  72.    
  73.     GOTO INIT
  74.  
  75.     ORG 4
  76.  
  77.     GOTO ISR
  78.  
  79. INIT
  80.     BCF STATUS,RP0
  81.     BCF STATUS,RP1
  82.  
  83.     bsf     STATUS,RP0  ;Program Init
  84.     BCF     STATUS,RP1
  85.     MOVLW B'00100000'
  86.     MOVWF TRISA
  87.     CLRF TRISB
  88.     MOVLW B'00011000'
  89.     MOVWF TRISC
  90.     CLRF TRISD
  91.     CLRF TRISE
  92.     MOVLW B'01000000'
  93.     MOVWF SSPSTAT
  94.     MOVLW B'00001111'
  95.     MOVWF ADCON1
  96.     MOVLW B'01110000'
  97.     MOVWF OSCCON
  98.     MOVLW B'00100000'
  99.     MOVWF TXSTA
  100.     MOVLW 0X0C
  101.     MOVWF SPBRG
  102.     CLRF PIE1
  103.     BSF PIE1, SSPIE
  104.     CLRF PIE2
  105.     CLRF CCP3CON
  106.  
  107.     BCF STATUS,RP0
  108.     MOVLW B'00000101'
  109.     MOVWF SSPCON
  110.     CLRF INTCON
  111.     BSF INTCON, GIE
  112.     BSF INTCON, PEIE
  113.     MOVLW B'00010000'
  114.     MOVWF RCSTA
  115.     CLRF ADCON0
  116.     CLRF CCP1CON
  117.     CLRF CCP2CON
  118.  
  119.     CALL DELAY 
  120.  
  121.     MOVF RCREG,W
  122.     MOVF RCREG,W
  123.     MOVF RCREG,W
  124.  
  125.     CLRF PORTA
  126.     CLRF PORTB
  127.     CLRF PORTC
  128.     CLRF PORTD
  129.     CLRF PORTE
  130.  
  131.     MOVLW B'00100101'
  132.     MOVWF SSPCON
  133.  
  134.     MOVLW 0XFF
  135.     MOVWF L1
  136.     MOVWF L2
  137.     MOVWF L3
  138.     MOVWF L4
  139.  
  140.     CALL DELAY 
  141.  
  142. MAIN
  143.  
  144. ;   INCF COUNT,1
  145. ;
  146. ;   MOVFW COUNT
  147. ;   SUBWF L1,0         
  148. ;   BTFSC STATUS,C
  149. ;   BSF PORTA,0
  150. ;   BTFSS STATUS,C
  151. ;   BCF PORTA,0
  152.        
  153.     BTFSC L1,0
  154.     BSF PORTA,0
  155.     BTFSS L1,0
  156.     BCF PORTA,0
  157.  
  158.     BTFSC L1,1
  159.     BSF PORTA,1
  160.     BTFSS L1,1
  161.     BCF PORTA,1
  162.  
  163.     BTFSC L1,2
  164.     BSF PORTA,2
  165.     BTFSS L1,2
  166.     BCF PORTA,2
  167.    
  168.     BTFSC L1,3
  169.     BSF PORTA,3
  170.     BTFSS L1,3
  171.     BCF PORTA,3
  172.    
  173.     BTFSC L1,4
  174.     BSF PORTE,0
  175.     BTFSS L1,4
  176.     BCF PORTE,0
  177.    
  178.     BTFSC L1,5
  179.     BSF PORTE,1
  180.     BTFSS L1,5
  181.     BCF PORTE,1
  182.    
  183.     BTFSC L1,6
  184.     BSF PORTE,2
  185.     BTFSS L1,6
  186.     BCF PORTE,2
  187.    
  188.     BTFSC L1,7
  189.     BSF PORTA,7
  190.     BTFSS L1,7
  191.     BCF PORTA,7
  192.    
  193.     BTFSC L2,0
  194.     BSF PORTA,6
  195.     BTFSS L2,0
  196.     BCF PORTA,6
  197.    
  198.     BTFSC L2,1
  199.     BSF PORTC,0
  200.     BTFSS L2,1
  201.     BCF PORTC,0
  202.    
  203.     BTFSC L2,2
  204.     BSF PORTC,1
  205.     BTFSS L2,2
  206.     BCF PORTC,1
  207.    
  208.     BTFSC L2,3
  209.     BSF PORTC,2
  210.     BTFSS L2,3
  211.     BCF PORTC,2
  212.        
  213.     BTFSC L2,4
  214.     BSF PORTD,0
  215.     BTFSS L2,4
  216.     BCF PORTD,0
  217.    
  218.     BTFSC L2,5
  219.     BSF PORTD,1
  220.     BTFSS L2,5
  221.     BCF PORTD,1
  222.    
  223.     BTFSC L2,6
  224.     BSF PORTB,7
  225.     BTFSS L2,6
  226.     BCF PORTB,7
  227.    
  228.     BTFSC L2,7
  229.     BSF PORTB,6
  230.     BTFSS L2,7
  231.     BCF PORTB,6
  232.    
  233.     BTFSC L3,0
  234.     BSF PORTB,5
  235.     BTFSS L3,0
  236.     BCF PORTB,5
  237.    
  238.     BTFSC L3,1
  239.     BSF PORTB,4
  240.     BTFSS L3,1
  241.     BCF PORTB,4
  242.    
  243.     BTFSC L3,2
  244.     BSF PORTB,3
  245.     BTFSS L3,2
  246.     BCF PORTB,3
  247.    
  248.     BTFSC L3,3
  249.     BSF PORTB,2
  250.     BTFSS L3,3
  251.     BCF PORTB,2
  252.    
  253.     BTFSC L3,4
  254.     BSF PORTB,1
  255.     BTFSS L3,4
  256.     BCF PORTB,1
  257.    
  258.     BTFSC L3,5
  259.     BSF PORTB,0
  260.     BTFSS L3,5
  261.     BCF PORTB,0
  262.    
  263.     BTFSC L3,6
  264.     BSF PORTD,7
  265.     BTFSS L3,6
  266.     BCF PORTD,7
  267.    
  268.     BTFSC L3,7
  269.     BSF PORTD,6
  270.     BTFSS L3,7
  271.     BCF PORTD,6
  272.    
  273.     BTFSC L4,0
  274.     BSF PORTD,5
  275.     BTFSS L4,0
  276.     BCF PORTD,5
  277.    
  278.     BTFSC L4,1
  279.     BSF PORTD,4
  280.     BTFSS L4,1
  281.     BCF PORTD,4
  282.    
  283.     BTFSC L4,2
  284.     BSF PORTC,7
  285.     BTFSS L4,2
  286.     BCF PORTC,7
  287.    
  288.     BTFSC L4,3
  289.     BSF PORTC,6
  290.     BTFSS L4,3
  291.     BCF PORTC,6
  292.    
  293.     BTFSC L4,4
  294.     BSF PORTD,3
  295.     BTFSS L4,4
  296.     BCF PORTD,3
  297.    
  298.     BTFSC L4,5
  299.     BSF PORTD,2
  300.     BTFSS L4,5
  301.     BCF PORTD,2
  302.  
  303.     GOTO MAIN
  304.  
  305. DELAY
  306.  
  307.     CLRF D2
  308.     CLRF D1
  309.     DECFSZ D1,F
  310.     GOTO $-1
  311.     DECFSZ D2,F
  312.     GOTO $-4
  313.  
  314.     RETURN
  315.  
  316. ISR
  317.     MOVWF TEMPW
  318.     SWAPF STATUS, W
  319.     CLRF STATUS
  320.     MOVWF STATUS_TEMP
  321.    
  322.     MOVFW SSPBUF
  323.     MOVWF L1
  324.  
  325.     BANKSEL SSPSTAT
  326.     BTFSS SSPSTAT, BF
  327.     GOTO $-1
  328.     BANKSEL SSPBUF
  329.     MOVFW SSPBUF
  330.     MOVWF L2
  331.  
  332.     BANKSEL SSPSTAT
  333.     BTFSS SSPSTAT, BF
  334.     GOTO $-1
  335.     BANKSEL SSPBUF
  336.     MOVFW SSPBUF
  337.     MOVWF L3
  338.  
  339.     BANKSEL SSPSTAT
  340.     BTFSS SSPSTAT, BF
  341.     GOTO $-1
  342.     BANKSEL SSPBUF
  343.     MOVFW SSPBUF
  344.     MOVWF L4
  345.  
  346.     SWAPF STATUS_TEMP, W
  347.     MOVWF STATUS
  348.     SWAPF TEMPW, F
  349.     SWAPF TEMPW, W
  350.  
  351.     BCF PIR1, SSPIF
  352.     RETFIE
  353.  
  354. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement