Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @@ -31,6 +31,8 @@ import os | ||||
| import time | ||||
| from ctypes import * | ||||
|  | ||||
| import RPi.GPIO as GPIO | ||||
|  | ||||
| EPD_SCK_PIN = 11 | ||||
| EPD_MOSI_PIN = 10 | ||||
|  | ||||
| @@ -71,11 +73,11 @@ if spi is None: | ||||
|  | ||||
|  | ||||
| def digital_write(pin, value): | ||||
|     spi.DEV_Digital_Write(pin, value) | ||||
|     GPIO.output(pin, value) | ||||
|  | ||||
|  | ||||
| def digital_read(pin): | ||||
|     return spi.DEV_Digital_Read(pin) | ||||
|     return GPIO.input(pin) | ||||
|  | ||||
|  | ||||
| def spi_writebyte(value): | ||||
| @@ -87,15 +89,68 @@ def delay_ms(delaytime): | ||||
|  | ||||
|  | ||||
| def module_init(): | ||||
|     GPIO.setmode(GPIO.BCM) | ||||
|     GPIO.setwarnings(False) | ||||
|     GPIO.setup(EPD_SCK_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_MOSI_PIN, GPIO.OUT) | ||||
|  | ||||
|     logging.debug("python call bcm2835 Lib") | ||||
|  | ||||
|     GPIO.setup(EPD_M2S2_RST_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_M1S1_RST_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_M2S2_DC_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_M1S1_DC_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_S1_CS_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_S2_CS_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_M1_CS_PIN, GPIO.OUT) | ||||
|     GPIO.setup(EPD_M2_CS_PIN, GPIO.OUT) | ||||
|  | ||||
|     GPIO.setup(EPD_S1_BUSY_PIN, GPIO.IN) | ||||
|     GPIO.setup(EPD_S2_BUSY_PIN, GPIO.IN) | ||||
|     GPIO.setup(EPD_M1_BUSY_PIN, GPIO.IN) | ||||
|     GPIO.setup(EPD_M2_BUSY_PIN, GPIO.IN) | ||||
|  | ||||
|     digital_write(EPD_M1_CS_PIN, 1) | ||||
|     digital_write(EPD_S1_CS_PIN, 1) | ||||
|     digital_write(EPD_M2_CS_PIN, 1) | ||||
|     digital_write(EPD_S2_CS_PIN, 1) | ||||
|  | ||||
|     digital_write(EPD_M2S2_RST_PIN, 0) | ||||
|     digital_write(EPD_M1S1_RST_PIN, 0) | ||||
|     digital_write(EPD_M2S2_DC_PIN, 1) | ||||
|     digital_write(EPD_M1S1_DC_PIN, 1) | ||||
|  | ||||
|     spi.DEV_ModuleInit() | ||||
|  | ||||
|  | ||||
| def module_exit(): | ||||
|     spi.DEV_ModuleExit() | ||||
|     digital_write(EPD_M2S2_RST_PIN, 0) | ||||
|     digital_write(EPD_M1S1_RST_PIN, 0) | ||||
|     digital_write(EPD_M2S2_DC_PIN, 0) | ||||
|     digital_write(EPD_M1S1_DC_PIN, 0) | ||||
|     digital_write(EPD_S1_CS_PIN, 1) | ||||
|     digital_write(EPD_S2_CS_PIN, 1) | ||||
|     digital_write(EPD_M1_CS_PIN, 1) | ||||
|     digital_write(EPD_M2_CS_PIN, 1) | ||||
|  | ||||
|  | ||||
| def spi_readbyte(Reg): | ||||
|     return spi.DEV_SPI_ReadByte(Reg) | ||||
|     GPIO.setup(EPD_MOSI_PIN, GPIO.IN) | ||||
|     j = 0 | ||||
|     # time.sleep(0.01) | ||||
|     for i in range(0, 8): | ||||
|         GPIO.output(EPD_SCK_PIN, GPIO.LOW) | ||||
|         # time.sleep(0.01)  | ||||
|         j = j << 1 | ||||
|         if (GPIO.input(EPD_MOSI_PIN) == GPIO.HIGH): | ||||
|             j |= 0x01 | ||||
|         else: | ||||
|             j &= 0xfe | ||||
|             # time.sleep(0.01) | ||||
|         GPIO.output(EPD_SCK_PIN, GPIO.HIGH) | ||||
|         # time.sleep(0.01)   | ||||
|     GPIO.setup(EPD_MOSI_PIN, GPIO.OUT) | ||||
|     return j | ||||
|  | ||||
|  | ||||
| def delay_ms(delaytime): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user