|
发表于 2008-3-14 00:48:04
|
显示全部楼层
我们用AAT3140,背光控制为:
kal_bool custom_cfg_gpio_set_level(kal_uint8 gpio_dev_type, kal_uint8 gpio_dev_level )
{
kal_bool res=KAL_TRUE;
kal_uint8 port,i,idelay,iplus;
kal_uint16 savedIRQMask;
switch(gpio_dev_type)
{
case GPIO_DEV_LED_MAINLCD:
GPIO_ModeSetup((kal_uint16)custom_cfg_outward_gpio_port(GPIO_LABEL_LCM_BL_EN),0);
if(gpio_dev_level == LED_LIGHT_LEVEL0)
GPIO_WriteIO(GPIO_OFF,custom_cfg_outward_gpio_port(GPIO_LABEL_LCM_BL_EN));
else
{
iplus=16 + 4*(gpio_dev_level-1);
savedIRQMask=SaveAndSetIRQMask();
GPIO_WriteIO(GPIO_OFF,custom_cfg_outward_gpio_port(GPIO_LABEL_LCM_BL_EN));
for(idelay=0;idelay<100;idelay++){};
while(iplus--)
{
GPIO_WriteIO(GPIO_OFF,custom_cfg_outward_gpio_port(GPIO_LABEL_LCM_BL_EN));
for(idelay=0;idelay<5;idelay++){};
GPIO_WriteIO(GPIO_ON,custom_cfg_outward_gpio_port(GPIO_LABEL_LCM_BL_EN));
for(idelay=0;idelay<5;idelay++){};
}
for(idelay=0;idelay<100;idelay++){};
RestoreIRQMask(savedIRQMask);
}
break;
...... |
|