[学习笔记]【杰发科技AC7802x测评】之七 项目篇:基于AC7802x的智能车载氛围灯开发

本文主要是介绍[学习笔记]【杰发科技AC7802x测评】之七 项目篇:基于AC7802x的智能车载氛围灯开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 劳斯莱斯星光灯,当你惬意地坐在手工打造的真皮座椅中,目光不禁被顶篷吸引,它像一片星光闪烁的夜空。通过在不同深度和角度安装精美的光纤束实现了星光顶饰的独特效果——使光线从多个方向以不同强度射出。每颗“星星”的亮度都可以调节,以营造您所需的氛围:在放松和阅读时提供足够的亮度,或通过淡雅光线缔造一种美妙、缓和的柔光。每个星光顶饰的星座对车主来说都如此独特。 


汽车氛围灯作为一种装饰汽车和烘托气氛的产品,逐渐从高端车型向中档车型普及。目前,氛围灯的表现形式主要是单色、RGB多色、呼吸律动、音乐律动等形式。氛围灯可以提高汽车的科技感,更现代化。可以提高夜间行车的安全性,可以舒缓驾驶员的疲劳感,放松心情,让车内生活更有仪式感,营造轻松愉悦的氛围;氛围灯不同的展现形式可以提升品牌的辨识度,彰显差异性。
   基于AC7802x的智能车载氛围灯开发,车载产品不同于消费类,对可靠新要求极高,所以主控选择车规级小巧玲珑的AC7802x非常适合项目开发,2 个 UART 模块(其中1路支持Software LIN,可以驱动CAN芯片),1 个 I2C SPI 模块。
  原理图设计:
    主控AC7802x通过IIC总线与CY8CMBR3116(一款16按钮2滑块电容式触摸接近传感器),做触摸按键拓展,串口连接RS485或者CAN,LIN与车载MCU进行交互通信。RGB灯带通过三极管驱动。灯带多的话可以改成大驱动电流的专用LED驱动器件,可控硅 氮化镓,LGBT等。
   









由于项目还在交接完善中,部门代码,后续开源

//读取参数
void ReadParam(void)
{unsigned char buf[SYS_PARAM_EEPROM_BYTE_NUM];Stm8EepromRead(buf,SYS_PARAM_EEPROM_BYTE_NUM,0x00);if((buf[0]==0x53)&&(buf[1]==0x53))  //已经保存{SysParam.Lev = buf[2];}else{SysParam.Lev = 20;}
}//写入参数
void WriteParam(void)
{unsigned char buf[3];buf[0] = 0x53;buf[1] = 0x53;buf[2] = SysParam.Lev;if(Stm8EepromWrite(buf,SYS_PARAM_EEPROM_BYTE_NUM,0x00) == 0x00)Stm8EepromWrite(buf,SYS_PARAM_EEPROM_BYTE_NUM,0x00);
}void WatchDogInit(void)
{IWDG_Enable();IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//允许操作独立看门狗IWDG_SetPrescaler(IWDG_Prescaler_256);//看门狗预分频IWDG_SetReload(0xFF);//设置看门狗复位时间IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);IWDG_SetReload(0xFF);IWDG_Enable();//启动独立看门狗
}void CalcPwm(void)
{Pwm.Time = SysParam.Lev*100/26;if (Pwm.Time == 100) Pwm.Time = 99;
}//PWM功能初始化
//duty 占空比 0-100
void PwmInit(unsigned char duty)
{  TIM2_DeInit();duty = 100-duty;if(duty == 0){TIM2_Cmd(DISABLE);GPIO_Init(PWM_GPIOx,PWM_GPIO_Pin, GPIO_MODE_OUT_PP_LOW_FAST);//关闭PWM}else{TIM2_TimeBaseInit(TIM2_PRESCALER_2, 10000-1);            //F = 16000000 / 16  T = 1 / F = 1us  1us*10000 = 10ms = 100hzTIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE, duty*100, TIM2_OCPOLARITY_LOW);    //占空比一半TIM2_Cmd(ENABLE);}
}/*
//改变占空比
//duty 占空比 0-100
void ChangePwmDuty(unsigned char duty)
{TIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE, duty*100-1, TIM2_OCPOLARITY_HIGH);    //占空比一半
}
*/

---------------------
作者:abner_ma
链接:https://bbs.21ic.com/icview-3312540-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

这篇关于[学习笔记]【杰发科技AC7802x测评】之七 项目篇:基于AC7802x的智能车载氛围灯开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/393988

相关文章

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.