站内搜索
发作品签到
专业版

火箭发射灯光模拟模块

工程标签

244
0
0
0

简介

本项目是基于AI8051U单片机核心板火箭发射模拟灯光,用于模拟火箭发射时的声光效果,这个模块是整体项目的子项目。

简介:本项目是基于AI8051U单片机核心板火箭发射模拟灯光,用于模拟火箭发射时的声光效果,这个模块是整体项目的子项目。
智能音频电子创新设计征集令

开源协议

GPL 3.0

创建时间:2025-06-09 13:49:26更新时间:2025-07-02 10:13:25

描述

项目简介

本项目是基于AI8051U单片机核心板火箭发射模拟灯光模块,用于模拟火箭发射时的声光效果。这个模块是整体项目的子项目。

项目功能

本项目是基于AI8051U单片机核心板火箭发射模拟灯光,用于模拟火箭发射时的声光效果。

原理解析及线路连接关系

本项目LED驱动电源部分、LED部分、AI8051U单片机核心板(成品)、灯光效果控制电路、10位数码管和语音模块CH9300(成品)组成见,图1。

5.jpg

图1:火箭发射模拟灯光模块工作流程图

LED驱动电源部分,直接采用LM1084IS-3.3/TR。
其中LED部分又细分为:
模拟点火灯光电路:无PCB,用38个正向电压最大值3.4V的暖白色5mmLED灯珠组成,电路用细金属丝连接,安装在用蓬松的脱脂棉平铺在蓝色的底板上,38个LED点亮时,将白色的脱脂棉渲染成暖白色,模仿火箭发射时的烟雾,见图2。

D5.jpg
图2:模拟点火灯光电路接线实物图(局部)

助推:由四个安装了LED圆环组成,安装在主箭周围的四个助推火箭上,与模拟点火灯光电路同时点亮。
主箭:由三个安装了LED圆环组成,安装在主箭上,分三个阶段点亮,代表火箭升空的过程。
语音模块CH9300的音响由两部分组成:
火箭发射时的轰鸣声,使用时长3秒音频,覆盖主箭三个LED圆环间隔一秒,依次点亮的过程。
火箭发射成功后的欢呼声,使用时长1秒音频。
电路原理:
模拟火箭发射倒计时模块倒计时结束以后,模拟火箭发射倒计时模块的AI8051U单片机核心板I/O口P12发出触发信号,进入火箭发射模拟灯光模块AI8051U单片机核心板I/O口P33,触发火箭发射模拟灯光程序运行。
首先,P20输出低电平信号,进入灯光效果控制电路(见图2),通过LED进入光耦,通过限流电阻,进入S8550基极,S8550饱和导通,双刀双掷继电器工作分别接通:
模拟点火灯光电路、助推的四个LED圆环和主箭底层的LED圆环。
语音模块CH9300的IO1,发出3秒火箭发射时的轰鸣声。
第二,P20定时1秒结束后,P21接替工作,P21的低电平信号,进入灯光效果控制电路通过LED进入光耦,通过限流电阻,进入S8550基极,S8550饱和导通,双刀双掷继电器接通主箭最中间的LED圆环。
第三,P21定时1秒结束后,P22接替工作,P22的低电平信号,进入灯光效果控制电路通过LED进入光耦,通过限流电阻,进入S8550基极,S8550饱和导通,双刀双掷继电器接通主箭最上层的LED圆环。
最后,P22定时1秒结束后,P23接替工作,P23的低电平信号,进入灯光效果控制电路通过LED进入光耦,通过限流电阻,进入S8550基极,S8550饱和导通,双刀双掷继电器接通语音模块CH9300的IO2,发出火箭发射成功后的欢呼声。

图片.png
图3:灯光效果控制电路

软件代码

#include "ai8051u.h"			//调用头文件
#include "stc32_stc8_usb.h"		//调用头文件
#include "intrins.h"			//调用头文件


#define u8  unsigned char		//8位无符号变量(0-255)
#define u16 unsigned int		//16位无符号变量(0-65535)	
u8 buttonPressCount = 0;  // 定义一个变量来记录按钮按下的次数
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";

// 定义P2和P3的各个引脚
sbit P20 = P2^0;
sbit P21 = P2^1;
sbit P22 = P2^2;
sbit P23 = P2^3;

sbit StartKey = P3^3; // 定义P33为开始键  
unsigned char timeCnt;
unsigned char lastTimeCnt;
bit running = 0; // 运行标志,0表示待机,1表示运行

void Timer0_Init(void)                //10毫秒@24.000MHz
{
    AUXR &= 0x7F;                        //定时器时钟12T模式
    TMOD &= 0xF0;                        //设置定时器模式
    TMOD |= 0x01;                        //设置定时器模式
    TL0 = 0xE0;                                //设置定时初始值
    TH0 = 0xB1;                                //设置定时初始值
    TF0 = 0;                                //清除TF0标志
    TR0 = 1;                                //定时器0开始计时
    timeCnt = 0;
    ET0 = 1;
}

// 定时器0中断服务程序
void Timer0_ISR(void) interrupt 1
{
    //TF0 = 0;                //清除TF0标志
    TL0 = 0xE0;                                //设置定时初始值
    TH0 = 0xB1;                                //设置定时初始值
    
    timeCnt++;
    
    if(timeCnt >= 100){
        ET0 = 0;
    }
}

void tiemrSleep(){
    Timer0_Init(); 
    while(timeCnt < 100); 
}

// 延时函数
void Delay(u16 time)
{
    while(time--);
}

// 检测按键是否按下,返回1表示按下,0表示未按下
bit CheckStartKey()
{
    if(StartKey == 0) // 检测到低电平表示按键按下
    {
        Delay(20); // 延时消抖
        if(StartKey == 0) // 确认按键是否仍然按下
            return 1; // 按下返回1
    }
    return 0; // 未按下返回0
}

void main(void)
{
    WTST = 0;                                          //设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
    P4M1 = 0x00;   P4M0 = 0x00;  // 设置P4为输入模式
    P2M1 = 0x00;   P2M0 = 0x00;  // 设置P2为推挽输出
    P3M1 = 0x00;   P3M0 = 0x00;  // 设置P3为输入模式
      
    P2 = 0xFF;
    lastTimeCnt = 0;
    timeCnt = 0;
    Timer0_Init();
    EA = 1;
    
    while(1)
    {
        // 检测按键是否按下,按下后开始运行
        if(CheckStartKey())
        {
            running = 1; // 设置运行标志
        }
        
        if(running)
        {
            P20  = 0; P21 = 1; P22 = 1;  P23 = 1;  tiemrSleep();  // 只点亮P2.0,延时1秒
            P20  = 1; P21 = 0; P22 = 1;  P23 = 1;  tiemrSleep();  // 只点亮P2.1,延时1秒
            P20  = 1; P21 = 1; P22 = 0;  P23 = 1;  tiemrSleep();  // 只点亮P2.2,延时1秒
            P20  = 1; P21 = 1; P22 = 1;  P23 = 0;  tiemrSleep();  // 只点亮P2.3,延时1秒
            P20  = 1; P21 = 1; P22 = 1;  P23 = 1;  // 熄灭所有LED
            running = 0; // 重置运行标志,回到待机状态
        }
    }
}

实物图

此处可放入组装完成后完整实物图

D3.jpg
图4:主箭灯光

D4.jpg

图5:助推箭灯光

W3.jpg

图6:灯光效果控制电路实物图

D7.jpg

图7:LED驱动电源

3.jpg

图8:AI8051U单片机核心板

D6.jpg

图9:语音存储功放电路(成品)

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
103407516.mp4
1
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航