找回密码
 立即注册
查看: 193|回复: 1

请帮忙看看,在600us宽度时里面填数就无法编译,KEIL,应该还是语法不对。请帮忙指正。

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-11-21 22:47:10 | 显示全部楼层 |阅读模式
#include "stc8g.h"
#include <intrins.h>

sbit  LED=P5^4;  //指示灯
sbit  IR=P5^5;   //红外发射
sbit  signal_input=P3^3;  //接收信号
sbit  output_control=P3^2; //输出位置

unsigned int i;
void send_Ir(void);
void no_send_Ir(void);
void send_rc5_0(void);
void send_rc5_1(void);
void Timer1_Init(void)         //定时器1,定时8.77us,频率11.0592MHZ
{
        AUXR |= 0x40;                         
        TMOD &= 0x0F;                         
        TL1 = 0x9B;                         
        TH1 = 0xFF;                                 
        TF1 = 0;                                 
        TR1 = 1;       
}
void timer1_delay_8_77us(void)  //定时8.77us
{
TF1 = 0;
while(!TF1);
TR1 = 0;
TF1 = 0;
}
void send_Ir(void)  //38KHZ的频率   一个周期26.3us
{
         while(i--)
         {
         IR=1;
         timer1_delay_8_77us();
IR=0;
         timer1_delay_8_77us();
         timer1_delay_8_77us();
         }
}
void no_send_Ir(void)  
{
         while(i--)
         {
         IR=0;
         timer1_delay_8_77us();
         timer1_delay_8_77us();
         timer1_delay_8_77us();
         }
}
void send_rc5_0(void)//低电平宽度600us
{

        send_Ir();
no_send_Ir();
       
}
void send_rc5_1(void)//高电平宽度600us
{
        send_Ir();
no_send_Ir();
        }
void ir_send_pulse(void)//输出高低一个周期的高低脉冲
{
send_rc5_0();
send_rc5_1();
}

void main()
{
P3M0 &= ~0x0f;
  P3M1 &= ~0x0f; //P3.0-3.3引脚为准双向口模式
        P5M0 |=0x30;                //P5.4引脚为推挽输出模式
        P5M1 &= ~0x30;
  LED=0;
        output_control=0;
        while(1)
        {
        if(signal_input==0)  //判断有没有接收到红外信号
        {
        output_control=1; //输出高电平
        }
        else
        {
        output_control=0; //输出低电平
        }
        if(P32=1)
        {
        LED=1;  //开灯
        }
        else
        {
        LED=0; //关灯
        }
        ir_send_pulse();   //发射高低电平
        }
       
}


回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:239
  • 最近打卡:2025-05-02 03:42:37

22

主题

283

回帖

905

积分

高级会员

积分
905
发表于 2024-11-21 23:19:18 | 显示全部楼层
        if(P32 == 1)
        {
            LED=1;  //开灯
        }
REMOVEUNUSED
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 12:59 , Processed in 0.126520 second(s), 54 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表