乆尗192
2022-05-14 22:10
浏览 7

智能灯项目,只差最后一步,让LED与光敏电阻联系起来

问题遇到的现象

无法将LED与光敏电阻联系起来

问题相关代码,请勿粘贴截图

#include "system.h"

void vSystem_Init(void)
{
vDevice_Ctrl(0xa0,0);
vDevice_Ctrl(0x80,0xff);
}

u8 cnt_pwm=1;
u8 pwm_duty = 50;
u8 led_ctrl;

void vPWM_Prcocess()
{
cnt_pwm = cnt_pwm % 10 + 1;
if(cnt_pwm <= (pwm_duty/10))
{
led_ctrl = 0xfe;
}
else
{
led_ctrl = 0xff;
}

}

u8 cnt_btn;
u8 number;
void vBTN_Process()
{
if(cnt_btn>=200)
{
cnt_btn=0;
vBTN_Read_ThreeLine();
if(Trg_BTN&0x08) //S5
{
number++;
if(number>9)
{
number = 0;
}
pwm_duty = (pwm_duty + 20) % 110; // 0 ~ 100
}
if(Trg_BTN&0x04) //S4
{
number--;
pwm_duty = (pwm_duty - 20) % 110; // 0 ~ 100
}
}
}

u8 cnt_adc;
u8 ch1;
void vADC_Process()
{
if(cnt_adc>=10)
{
cnt_adc=0;
ucRead_ADC(0x41);
ch1 = ucRead_ADC(0x41); //¹âÃôµç×èµÄADÖµ - ͨµÀ1
}

}

void vSMG_Process()
{
smg_buf[0]=smg_code[number];
smg_buf[1]=0x00;
smg_buf[2]=0x00;
smg_buf[3]=0x00;
smg_buf[4]=0x00;
smg_buf[5]=smg_code[ch1/100];
smg_buf[6]=smg_code[ch1/10%10];
smg_buf[7]=smg_code[ch1%10];
}

void main(void)
{
vSystem_Init();
vTimer2_Init();
while(1)
{

    vSMG_Process();
    vADC_Process();
    vBTN_Process();
}

}

void vTimer2_ISR() interrupt 12
{
cnt_btn++;
cnt_adc++;

vSMG_Display();
vPWM_Prcocess();
vDevice_Ctrl(0x80,led_ctrl);        

}

运行结果及报错内容

无法将LED与光敏电阻联系起来;无报错

我的解答思路和尝试过的方法
我想要达到的结果

让LED与光敏电阻联系起来

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

相关推荐 更多相似问题