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
projects:electronics:panelmeter [2008/07/27 19:36] photonicsguyprojects:electronics:panelmeter [2014/11/13 10:50] (current) – external edit 127.0.0.1
Line 26: Line 26:
 |8|VoutA|DACa Output| |8|VoutA|DACa Output|
  
-<code assembly>+ 
 + 
 + 
 +**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.1217212599.txt.gz
  • Last modified: 2014/11/13 10:50
  • (external edit)