projects:electronics:panelmeter

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
projects:electronics:panelmeter [2008/07/27 19:35] photonicsguyprojects:electronics:panelmeter [2008/07/27 20:06] photonicsguy
Line 26: Line 26:
 |8|VoutA|DACa Output| |8|VoutA|DACa Output|
  
-<code>+ 
 + 
 + 
 +**PIC Assembly Code** 
 +<code asm>
 SPIclk macro SPIclk macro
  BSF PORTC,SCK  BSF PORTC,SCK
  BCF PORTC,SCK  BCF PORTC,SCK
 endm endm
 +
 + ;Setup direction
 + BCF TRISB,RB1 ; RB1 as Output
 + BCF TRISC,SCL ; SDO as Output
 + BCF TRISC,SDA ; SCK as Output
 +
 + ;Set initial pin states
 + BSF PORTB,RB1 ;Chip Select, active low
 + BCF PORTC,SCK
 + BCF PORTC,SDO
 +
 +myloop
 + movlw 0xF0
 + movwf DAC,A
 + movlw 0x00
 + movwf DAC+1,A
 + CALL SPIclkout
 + CALL Delay
 + goto myloop
 +
 +; =================
 +; === Functions ===
 +; =================
 +SPIclkout
 + BCF PORTB,RB1 ; Clear CS (Active low)
 + BCF PORTC,SDO ; 0
 + SPIclk
 + SPIclk
 + SPIclk
 + BSF PORTC,SDO ; 1
 + SPIclk
 + MOVLW 0x08
 + MOVWF Temp,A
 +SPIloop
 + BTFSS DAC,7
 + BCF PORTC,SDO ; 0
 + BTFSC DAC,7
 + BSF PORTC,SDO ; 1
 + SPIclk
 + RLNCF DAC,F,A
 + DECFSZ Temp,F,A
 + goto SPIloop
 +
 + MOVLW 0x04
 +SPIloop2
 + BTFSS DAC+1,7
 + BCF PORTC,SDO ; 0
 + BTFSC DAC+1,7
 + BSF PORTC,SDO ; 1
 + SPIclk
 + RLNCF DAC+1,F,A
 + DECFSZ Temp,F,A
 + goto SPIloop2
 +
 + RLNCF DAC+1,F,A
 + RLNCF DAC+1,F,A
 + RLNCF DAC+1,F,A
 + RLNCF DAC+1,F,A
 +
 + BSF PORTB,RB1 ; Set CS high
 + return
 </code> </code>
  • projects/electronics/panelmeter.txt
  • Last modified: 2014/11/13 10:50
  • by 127.0.0.1