我在使用ADS7846出现了问题,在没触摸时 读到的坐标一个是 00 另一个是 0xff。我觉得应该都是00才对。是不是程序有问题,但有触摸时数据是正确的。请各位高手分析原因。 附程序: movk command,0x90 call WRITE_SPI call delay call read_spi movk command,0xd0 call WRITE_SPI call delay call read_spi
WRITE_SPI: MOVK BITCNT,0X08 BC P6,SPICLK WRITE_S0: RLC COMMAND MOVB P6,SPIDIN,STATUS,C BC P6,SPICLK BS P6,SPICLK DJZ BITCNT JMP WRITE_S0 NOP NOP BC P6,SPICLK RET READ_SPI: MOVK BITCNT,0X08 READ_S0: BS P6,SPICLK BC P6,SPICLK MOVB status,c,P6,SPIDOUT RLC COMMAND DJZ BITCNT JMP READ_S0 MOVK BITCNT,0X04 READ_S1: BS P6,SPICLK BC P6,SPICLK DJZ BITCNT JMP READ_S1 RET |