--[[
ģƣST 7567оƬ
ģ鹦ܣʼоƬ
ģ޸ʱ䣺2017.08.08
]]

--[[
ע⣺ļãӲʹõǱ׼SPIţLCDרõSPI
dispĿǰ֧SPIӿڵӲͼ£
Airģ			LCD
GND-------------
SPI_CS----------Ƭѡ
SPI_CLK---------ʱ
SPI_DO----------
SPI_DI----------/ѡ
VDDIO-----------Դ
UART1_CTS-------λ
ע⣺Air202ڵĿ壬UART1CTSRTS˿ӡ
]]

module(...,package.seeall)

--[[
init
  ʼLCD
  
ֵ
]]
local function init()
	local para =
	{
		width = 128, --ֱʿȣ128أûĲ޸
		height = 64, --ֱʸ߶ȣ64أûĲ޸
		bpp = 1, --λȣ1ʾɫɫΪ1޸
		bus = disp.BUS_SPI, --ledλ׼SPIӿڣ޸
		hwfillcolor = 0xFFFF, --ɫɫ
		yoffset = 1,
		pinrst = pio.P0_3, --resetλ
		pinrs = pio.P0_12, --rs/ѡ
		--ʼ
		initcmd =
		{
			0xE2, --soft reset
			0xA3, --ƫѹȣ  0XA2BIAS=1/9 () 0XA3BIAS=1/7 
			0xA0, --ʾеַ  0xA0棺еַң 0xA1תеַҵ
			0xC8, --ɨ˳ѡ  0XC0:ͨɨ˳򣺴ϵ 0XC8:תɨ˳򣺴µ
			0xA6, --ʾ/: 0xA6棺 0xA7 
			0x2F, --ѡڲѹӦģʽ ͨ 0x2C,0x2E,0x2F  ָ˳дʾδڲѹѹ·ѹҲԵд0x2FһԴֵ·
			0x23, --ѡڲRb/Ra:ΪֵԱȶֵ÷ΧΪ0x200x27 ֵԽԱȶԽŨԽСԽ
			0x81, --ڲ΢Ϊ΢Աȶֵָʹáһָ0x81ǲĵģһָ÷ΧΪ0x000x3F,ֵԽԱȶԽŨԽСԽ
			0x2E,
			0x60, --ʾ洢ʾʼ,ֵΪ0X40~0X7F,ֱ063УԸҺһΪ0x60
			0xAF, --ʾ/: 0XAE:أ0XAF
		},
		--[[initcmd =
		{
			0xE2, --soft reset
			0x2F, --ѡڲѹӦģʽ ͨ 0x2C,0x2E,0x2F  ָ˳дʾδڲѹѹ·ѹҲԵд0x2FһԴֵ·
			0x21, --ѡڲRb/Ra:ΪֵԱȶֵ÷ΧΪ0x200x27 ֵԽԱȶԽŨԽСԽ
			0xA2, --ƫѹȣ  0XA2BIAS=1/9 () 0XA3BIAS=1/7 
			0x81, --ڲ΢Ϊ΢Աȶֵָʹáһָ0x81ǲĵģһָ÷ΧΪ0x000x3F,ֵԽԱȶԽŨԽСԽ
			0x19, 
			0xC8, --ɨ˳ѡ  0XC0:ͨɨ˳򣺴ϵ 0XC8:תɨ˳򣺴µ
			0xA0, ---ʾеַ  0xA0棺еַң 0xA1תеַҵ
			0x40, --ʾ洢ʾʼ,ֵΪ0X40~0X7F,ֱ063
			0xA6, --ʾ/: 0xA6棺 0xA7
			0xAF, --ʾ/: 0XAE:أ0XAF
		},]]
		--
		sleepcmd = {
			0xAE,
		},
		--
		wakecmd = {
			0xAF,
		}
	}
	disp.init(para)
	disp.clear()
	disp.update()
end

--SPIŵĵѹ
pmd.ldoset(6,pmd.LDO_VMMC)
init()
