avr: improved modules ILI9341 and XPT2046.
This commit is contained in:
@@ -63,6 +63,91 @@ Display_FillRect_loopW:
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine Display_DrawHLine @global
|
||||
;
|
||||
; @param r3:r2 color
|
||||
; @param r5:r4 X0
|
||||
; @param r7:r6 Y0
|
||||
; @param r9:r8 W
|
||||
|
||||
Display_DrawHLine:
|
||||
push r15
|
||||
in r15, SREG
|
||||
cli
|
||||
|
||||
ldi r16, 1 ; height is 1
|
||||
mov r10, r16
|
||||
clr r11
|
||||
rcall ili9341BeginSpi ; (R16, R17)
|
||||
rcall ili9341SetAddressWindow ; (R16, r20, r21)
|
||||
|
||||
ldi r16, ILI9341_CMD_RAMWR ; start writing ro RAM
|
||||
rcall ili9341SendCommand ; (R16)
|
||||
|
||||
cbi SPIHW_SS_OUTPUT, SPIHW_SS_PIN ; SS low
|
||||
sbi ILI9341_DC_OUTPUT, ILI9341_DC_PIN ; D high (DATA)
|
||||
mov r24, r8 ; W low
|
||||
mov r25, r9 ; W high
|
||||
Display_DrawHLine_loop:
|
||||
mov r16, r3
|
||||
rcall SPIHW_MasterTransfer ; (R16)
|
||||
mov r16, r2
|
||||
rcall SPIHW_MasterTransfer ; (R16)
|
||||
sbiw r25:r24, 1
|
||||
brne Display_DrawHLine_loop
|
||||
sbi SPIHW_SS_OUTPUT, SPIHW_SS_PIN ; SS high
|
||||
rcall ili9341EndSpi
|
||||
out SREG, r15
|
||||
pop r15
|
||||
ret
|
||||
; @end
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine Display_DrawVLine @global
|
||||
;
|
||||
; @param r3:r2 color
|
||||
; @param r5:r4 X0
|
||||
; @param r7:r6 Y0
|
||||
; @param r11:r10 H
|
||||
|
||||
Display_DrawVLine:
|
||||
push r15
|
||||
in r15, SREG
|
||||
cli
|
||||
|
||||
ldi r16, 1 ; width is 1
|
||||
mov r8, r16
|
||||
clr r9
|
||||
rcall ili9341BeginSpi ; (R16, R17)
|
||||
rcall ili9341SetAddressWindow ; (R16, r20, r21)
|
||||
|
||||
ldi r16, ILI9341_CMD_RAMWR ; start writing ro RAM
|
||||
rcall ili9341SendCommand ; (R16)
|
||||
|
||||
cbi SPIHW_SS_OUTPUT, SPIHW_SS_PIN ; SS low
|
||||
sbi ILI9341_DC_OUTPUT, ILI9341_DC_PIN ; D high (DATA)
|
||||
mov r24, r10 ; H low
|
||||
mov r25, r11 ; H high
|
||||
Display_DrawVLine_loop:
|
||||
mov r16, r3
|
||||
rcall SPIHW_MasterTransfer ; (R16)
|
||||
mov r16, r2
|
||||
rcall SPIHW_MasterTransfer ; (R16)
|
||||
sbiw r25:r24, 1
|
||||
brne Display_DrawVLine_loop
|
||||
sbi SPIHW_SS_OUTPUT, SPIHW_SS_PIN ; SS high
|
||||
rcall ili9341EndSpi
|
||||
out SREG, r15
|
||||
pop r15
|
||||
ret
|
||||
; @end
|
||||
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine Display_DrawChar @global
|
||||
|
||||
|
||||
Reference in New Issue
Block a user