历史上的今天
今天是:2025年07月24日(星期四)
2018年07月24日 | STM8S PWM应用 用于设置红外38KHZ 载波
2018-07-24 来源:eefocus
/*
TIM1_CCMR
BIT 6-4:
110:PWM模式1- 在向上计数时,一旦TIM1_CNT ,否则为无效电平;在向下计数时,一旦TIM1_CNT>TIM1_CCR1时通道1为无效电平(OC1REF=0) ,否则为有效电平(OC1REF=1)。 111:PWM模式2- 在向上计数时,一旦TIM1_CNT ,否则为有效电平;在向下计数时,一旦TIM1_CNT>TIM1_CCR1时通道1为有效电平 ,否则为无效电平。 */ //PWM模式选择 #define TIM1_MODE_PWM1 0X6C//PWM1模式 #define TIM1_MODE_PWM2 0X7C//PWM2模式 #define TIM1_MODE_OFF 0x08 //冻结模式 //预分频选择 #define TIM1_DIV1 (uint16)0//不分频 #define TIM1_DIV2 (uint16)1//2分频 #define TIM1_DIV4 (uint16)3//4分频 #define TIM1_DIV8 (uint16)7//8分频 #define TIM1_DIV16 (uint16)15//16分频 #define TIM1_DIV32 (uint16)31//32分频 //TIM1 PWM 输出指向的使能位 _Bool PWMPC1OUT_PINENBLE @TIM1_CCER1:0 ;//TIM1_CH1 -- PC1 _Bool PWMPC2OUT_PINENBLE @TIM1_CCER1:4 ;//TIM1_CH2 -- PC2 _Bool PWMPC3OUT_PINENBLE @TIM1_CCER2:0 ;//TIM1_CH3 -- PC3 _Bool PWMPC4OUT_PINENBLE @TIM1_CCER2:4 ;//TIM1_CH4 -- PC4 #define PWMPC1OUT_EN PWMPC1OUT_PINENBLE=1//PC1输出PWM #define PWMPC1OUT_DIS PWMPC1OUT_PINENBLE=0//PC1不输出PWM #define PWMPC2OUT_EN PWMPC2OUT_PINENBLE=1 #define PWMPC2OUT_DIS PWMPC2OUT_PINENBLE=0 #define PWMPC3OUT_EN PWMPC3OUT_PINENBLE=1 #define PWMPC3OUT_DIS PWMPC3OUT_PINENBLE=0 #define PWMPC4OUT_EN PWMPC4OUT_PINENBLE=1 #define PWMPC4OUT_DIS PWMPC4OUT_PINENBLE=0 // PWM 频率设定 //#define MDIV2 //16M 2分频的设置 #if defined(MDIV2) #define TIM1_DIV_SET TIM1_DIV2 #define PWMFRE_8KHZ 1000 #define PWMFRE_4KHZ 2000 #define PWMFRE_2KHZ 4000 #define PWMFRE_1KHZ 8000 #define PWMFRE_05KHZ 16000 #define PWMFRE_38KHZ 210//用于红外38KHZ载波 #define PWMFRE_OPEN 70//1/3的PWM占空比 #else //16M 不分频的设置 #define TIM1_DIV_SET TIM1_DIV1 #define PWMFRE_8KHZ 2000 #define PWMFRE_4KHZ 4000 #define PWMFRE_2KHZ 8000 #define PWMFRE_1KHZ 16000 #define PWMFRE_05KHZ 32000 #define PWMFRE_38KHZ 421//用于红外38KHZ载波 #define PWMFRE_OPEN 140//1/3的PWM占空比 #endif //************************************* // 函数名称:Init_Timer1_PWM // 函数功能:定时器1作PWM输出时初始化 // 入口参数: 设置频率 分频系数 // 出口参数:无 //*************************************** void Init_Timer1_PWM(uint16 Tcon,uint16 Pscr) { //16M系统时钟经预分频f=fck/(PSCR+1) TIM1_PSCRH = (Pscr >> 8) & 0xff ; TIM1_PSCRL = Pscr & 0xff ; //设定重装载时的寄存器值,255是最大值 TIM1_ARRH = (Tcon >> 8) & 0xff ; TIM1_ARRL = Tcon & 0xff ;//输出频率为:16M/ ARR //设置刹车寄存器 TIM1_BKR|=0X80 ; //PWM1模式,TIM1_CNT TIM1_CCMR1 =TIM1_MODE_PWM1 ; //冻结模式,TIM1_CNT TIM1_CCMR2 =TIM1_MODE_OFF ; //冻结模式,TIM1_CNT TIM1_CCMR3 =TIM1_MODE_OFF ; //冻结模式,TIM1_CNT TIM1_CCMR4 =TIM1_MODE_OFF ; //PWM 占空比 清0 TIM1_CCR1H = 0; TIM1_CCR1L = 0; TIM1_CCR2H = 0; TIM1_CCR2L = 0; TIM1_CCR3H = 0; TIM1_CCR3L = 0; TIM1_EGR = 0X01 ; //UG = 1 ;初始化计数器 预装载载入影子寄存器中 TIM1_CNTRH = 0 ; //计数器清0 TIM1_CNTRL = 0 ; TIM1_CR1 |= 0X01; // 计数器使能,开始计数 } //************************************* // 函数名称:PWM_CCR1_SET // 函数功能:设置PWM占空比 // 入口参数:占空比值 // 出口参数:无 //*************************************** void PWM_CCR1_SET(uint16 OPEN_PWM) { TIM1_CCR1H= (uint8)((OPEN_PWM >> 8 ) & 0xFF); TIM1_CCR1L = (uint8)(OPEN_PWM & 0xFF); } //************************************* // 函数名称:PWM_CCR2_SET // 函数功能:设置PWM占空比 // 入口参数:占空比值 // 出口参数:无 //*************************************** void PWM_CCR2_SET(uint16 OPEN_PWM) { TIM1_CCR2H= (uint8)((OPEN_PWM >> 8 ) & 0xFF); TIM1_CCR2L = (uint8)(OPEN_PWM & 0xFF); } //************************************* // 函数名称:PWM_CCR3_SET // 函数功能:设置PWM占空比 // 入口参数:占空比值 // 出口参数:无 //*************************************** void PWM_CCR3_SET(uint16 OPEN_PWM) { TIM1_CCR3H= (uint8)((OPEN_PWM >> 8 ) & 0xFF); TIM1_CCR3L = (uint8)(OPEN_PWM & 0xFF); } //************************************* // 函数名称:PWM_CCR3_SET // 函数功能:设置PWM占空比 // 入口参数:占空比值 // 出口参数:无 //*************************************** void PWM_CCR4_SET(uint16 OPEN_PWM) { TIM1_CCR4H= (uint8)((OPEN_PWM >> 8 ) & 0xFF); TIM1_CCR4L = (uint8)(OPEN_PWM & 0xFF); } //应用: Init_Timer1_PWM(PWMFRE_38KHZ,TIM1_DIV_SET) ;//16M 设置38K PWM输出 PWM_CCR1_SET(PWMFRE_OPEN);
上一篇:STM8S之定时器1的精确延时
史海拾趣
|
整流二极管反向恢复时间与关断尖峰的关系。 在一般的桥式整流电路中,整流后的电压波形是方波,工作中会有一个尖峰。现在问题是: 1、这个尖峰是如何产生的。 2、这个尖峰的大小跟二极管的反向恢复时间的关系是怎么样的? 3、如果 ...… 查看全部问答> |
|
U信通让手机兼备PTT功能 2009年中国3G网络业务正式开始运行,集群通信业务也将从传统模拟信号时代向手机数字时代转变。日前,艾博广迅推出了安装在手机上的U信通产品。就像电脑上MSN、QQ、等即时通信工具能实现语音通话一样,安装在手机上的U信通 ...… 查看全部问答> |
|
1.计算机、电子或相关专业本科毕业 2.熟悉TI DSP结构 3.熟悉C与C++ 4.1年以上TI DSP软件开发工作经验 5.具有高度的责任心,有团队合作精神 即将成立新的公司,公司需要以下人员:图象处理和模式识别,DSP+ARM软硬开发,音视频编解码,音 ...… 查看全部问答> |
|
因為我用MSP430的板子做的作品想要加入量測功率的功能我聽說MSP430內就有可以做功率量測的功能但是我不知道該如何使用?所以想說買一顆功率量測IC來實現 ,可是不知道用哪顆IC比較適合?所以希望有人能提供要如何用MSP430來做功率量測的方法或方向或 ...… 查看全部问答> |
|
请教高手:做51格力空调遥控器,解了码后不知为何空调没反应,附程序如下。 #include #define uchar unsigned char #define uint unsigned int sbit output = P1^0; sbit KEY1=P3^0; sbit KEY2=P3^1; sbit KEY3=P3^2; sbit KEY4=P3^3; static bit OP; //红外发射 ...… 查看全部问答> |
|
问一下,在一个树形或者网型网络中,相邻两个FFD路由能够同时收到多个RFD的数据,?正常一个RFD只能与其父节点通信,这要实现跳网吗?大侠们看看。… 查看全部问答> |
|
[TI首届低功耗设计大赛]+DIY系统功能框图 结合自己的设想修改下图片,摘取些资源图片! 硬件功能资源 1,红外发射:定时器TA外设 2、红外接收:定时器TA外设 3、光照检测:ADC外设 4、LCD&CAPTOUCH:SPI外设 5、温度,湿度,加速度,陀螺仪 ...… 查看全部问答> |




