使用引脚模拟PWM波控制引脚

 1 /*********************************
 2 代码功能:输出PWM波控制引脚
 3 使用函数:
 4
 5 创作时间:2016*10*07
 6 作者邮箱:[email protected]
 7 ********************************/
 8 int ledPin = 13;
 9 void setup()
10 {
11     pinMode(ledPin,OUTPUT);
12 }
13 int t_PWMMax = 500;
14 void loop()
15 {
16     for(int i = 0;i <= t_PWMMax;i +=1)
17     {
18         PWMfun(i,t_PWMMax-i);
19     }
20 }
21 void PWMfun(int OnTime,int OffTime){
22     digitalWrite(ledPin,HIGH);
23     delay(OnTime);
24     digitalWrite(ledPin,LOW);
25         delay(OffTime);
26 }
时间: 2024-07-30 10:19:39

使用引脚模拟PWM波控制引脚的相关文章

进阶之路(基础篇) - 005 模拟PWM波控制引脚

1 /********************************* 2 代码功能:输出PWM波控制引脚 3 使用函数: 4 5 创作时间:2016*10*07 6 作者邮箱:[email protected] 7 ********************************/ 8 int ledPin = 13; 9 void setup() 10 { 11 pinMode(ledPin,OUTPUT); 12 } 13 int t_PWMMax = 500; 14 void loop

51单片机模拟PWM调制控制实验

-------------------------------------------- PWM(脉冲宽度调制) 对模拟信号电平进行数字编码的方法 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 设计要求: 由于AT89系列单片机没有PWM控制器,所以

nRF51822使用Timer制作4路PWM波详解

Date:2015.5.8 Author:杨正  QQ:1209758756 <[email protected]> 一.            pwm简介 PWM英文名叫Pulse Width Modulation,中文名叫脉宽调制.那它到底是什么呢?其实它是由定时器产生的,比普通的定时器多了一个比较寄存器.PWM里面有一个词叫占空比,即一个周期内,高电平持续时间与周期的比值.如下图: 占空比(dutycycle) = t/T. PWM用途:控制电机调速,控制蜂鸣器播放音乐,控制led灯亮度

树莓派-语音聊天机器人+语音控制引脚电平高低

最近和几位本学院的研究生师兄师姐参加研究生电子设计大赛,自己也来折腾下之前没有搞完的语音控制小车.恰巧自己负责的是语音控制这部分,折腾了几天也差不多搞定啦…把自己的折腾套路总结一下,给一起折腾的小伙伴点经验之谈… 一.配置树莓派 我们这次使用的最新的树莓派3,镜像直接是官网下载的Raspbian.这也是让我感觉最有树莓派感觉的一个系统.主要是sudo raspi-config的配置. 1和2最好都是设置一下,然后3看自己爱好吧:4的里面我都是重新设置的,包括时区.语言和字体.字体最好下载(apt

[ZigBee] 13、ZigBee基础阶段性回顾与加深理解——用定时器1产生PWM来控制LED亮度(七色灯)

引言:PWM对于很多软件工程师可能又熟悉又陌生,以PWM调节LED亮度为例,其本质是在每个周期都偷工减料一些,整体表现出LED欠压亮度不同的效果.像大家看到的七色彩灯其原理也类似,只是用3路PWM分别控制红.绿.蓝三种颜色的灯输出亮度,再结合混色原理表现出丰富多彩的炫光效果~ 写在前面:前十几篇介绍了CC2530的一些外设的基本用法,接下来几篇拿几个例子回顾并加深一下之前的知识点,上面引言是普及.下面高能预警! 第一个例子:用定时器1产生PWM来控制LED亮度 我们在<[ZigBee] 5.Zi

CC1310生成PWM波

工作中因为时间紧迫,我不得不抛开TI提供的TI-RTOS.sdk和xdctools等工具,采用ucos + 库函数的方式去开发.最开始一头扎进去,碰见的就PWM的生成. PWM方面,TI自带封装好了PWM函数进行pwm的生成. 假如:我的需求是PWM的周期是2s,占空比50%,MCU主频是48MHz.于是我直接设置 params.periodUnits = PWM_PERIOD_US; params.periodValue = pwmPeriod; params.dutyUnits = PWM_

使用linux内核hrtimer高精度定时器实现GPIO口模拟PWM,【原创】

关键词:Android  linux hrtimer 蜂鸣器  等待队列 信号量 字符设备 平台信息:内核:linux3.4.39 系统:android/android5.1平台:S5P4418  作者:庄泽彬(欢迎转载,请注明作者) 邮箱:[email protected] 程序描述:本文控制的设备是无源蜂鸣器,由于无源蜂鸣器是需要产生一定的频率的PWM才能够控制蜂鸣器,不像有源蜂鸣器,只需要提供高低电平就可以控制蜂鸣器.linux内核普通的定时器,由于具有一定的局限性,不能达到纳秒级别的定时

STM32 PWM波

利用STM32产生占空比可以调节的PWM波 科普:pwm(Pulse Width Modulation)脉宽调制 关于pwm波的产生:1.首先来看一下代码: pwm波模式的相关配置(利用的是定时器TIM3) static void TIM3_Mode_Config(void){ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; //最初状态,设定的高低电平的跳变值 u16 C

stm32cube--通用定时器--产生pwm波

看了通用定时器的资料,发现内容挺多,挺难看懂,现在还是先掌握使用方法,以后再多看几遍吧. ① ② ③生成mdk工程后,在main.c的while(1)前面加上HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1);就可以产生pwm波了. 通过一些实验可知,32cube配置好中断生成工程以后,程序中已经将中断相关的参数和准备工作都做好了,但我们要进入中断还必须手动添加中断的启动函数.