PWM无极调光LED台灯

PWM无极调光LED台灯

第一次写博客,记录一下小项目的开发过程.

项目功能:三个触摸按键: 左按键->调暗 中间按键->开关 右按键->调亮

介绍主要IC:
5056充放IC,控制板有3.7V锂电池充放功能.PDF资料有典型的电路图,需要怎么样的功能,大家仔细看就知道了.
CA51F551S1(主控芯片)主要使用其触摸引脚,实现调光效果.

有需要拿来练手的话,需要原理图文件还请联系QQ邮箱1479719154@qq.com

废话不多说,直接上代码,刚刚接触,多有粗糙地方还请见谅了!

只是附上主函数,底层文件需要的话再留言咯.

#ifndef _MAIN_C_
#define _MAIN_C_
/*********************************************************************************************************************/
#include "ca51f5_config.h"
#include "includes\ca51f5sfr.h"
#include "includes\ca51f5xsfr.h"
#include "includes\gpiodef_f5.h"

#include "Library\includes\uart.h"
#include "Library\includes\system_clock.h"
#include "Library\Includes\tmc.h"	
#include "includes\system.h"
#include "Library\Includes\pwm.h"
#include "Library\Includes\Delay.h"

/*********************************************************************************************************************/
#include "TS_Lib\Includes\ts_configuration.h"
#include "TS_Lib\Includes\ts_def.h"
#include "TS_Lib\Includes\ts_api.h"
#include "TS_Lib\Includes\ts_service.h"

unsigned int PWM_DivDat;  //无字符 int型 16位
unsigned int PWM_DutyDat;
unsigned char PWM_2=0;
unsigned char PWM_3=0;
//unsigned char num;
bit on_flag = 0;

//void init_timer();
//void T0_tiemr();
/*********************************************************************************************************************/
/*******************************************************************************************************************************************
说明:
------------------------------------------------------------------------------------------------------------
1.ts_configuration.h是触摸的配置文件,可在配置文件中设置触摸通道、灵敏度等。详见ts_configuration.h中的说明。
------------------------------------------------------------------------------------------------------------
2.如果需要使用UART来调试,可在ca51f5_config.h中打开宏定义UART0_EN
------------------------------------------------------------------------------------------------------------
3.触摸库对外的数据接口为KeysFlagSN,用户可根据KeysFlagSN的值来判断触摸键是否按下(如果触摸键按下,KeysFlagSN
的对应位一直为1,触摸键松开,对应位变为0),TS_Key是根据KeysFlagSN的值生成的按键消息,用户如不使用可忽略。
------------------------------------------------------------------------------------------------------------
4.使能了触摸省电模式后,在无按键时,在定义的时间后会进入省电模式,进入省电模式前会关闭TMC中断和触摸中断(注意,总
中断仍是开启的),在触摸省电模式下,CPU会进入STOP模式,在被触摸唤醒后,程序在省电函数(TS_EnterSleepMode)的循环内运行(注意,触摸省电模式程序不
会在主循环内运行),在触摸省电模式下如果还要响应其他中断,用户需在进入触摸省电模式前自行开启其他中断,
如果需要退出省电模式,用户只需要在省电函数循环内
  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值