2 dongming86 dongming86 于 2016.01.21 22:08 提问

单片机程序,频率控制

给出八位有效数字,例如10110101,怎么编程,让1的时候单片机以90Hz频率点亮一个led,对应0的时候以96Hz频率点亮同一个led,哪位大神之前搞过类似的程序?谢谢了!

3个回答

devmiao
devmiao   Ds   Rxr 2016.01.21 22:20
fafactx
fafactx   2016.01.21 23:02

if(1==flag)
{
led = 1;
delay(90hz);
led = 0;
delay(90hz);
}
if(0==flag)
{}

这就是个简单的释义,,,具体自己写吧

dongming86
dongming86 unsigned char ZKB1,ZKB2; ZKB1 = 4;//占空比初始值设定值20% ZKB2 = 8;//占空比初始值设定值70% ,这怎么理解?20%,70%
2 年多之前 回复
qq_28627723
qq_28627723   2016.01.22 21:36

用PWM定时器控制就行了90Hz中断

dongming86
dongming86 unsigned char ZKB1,ZKB2; ZKB1 = 4;//占空比初始值设定值20% ZKB2 = 8;//占空比初始值设定值70% ,这怎么理解?20%,70%
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
【单片机】[LED]:LED 不用频率闪烁的程序
main.c 程序源代码:// =========================== main.c ======================#include "reg51.h"#define LED_ON 20 #define LED_OFF 0 #define F_1HZ 1 #define F_2HZ 2 #define F_3HZ 3 #define F_4HZ 4 #
51单片机控制两个LED灯分别闪烁
用51单片机的P2口控制两个LED灯分别以不同的循环时间闪烁
51单片机,C语言编程,控制指示灯闪烁的频率
c51单片机,c语言编程,关于指示灯定时闪烁的。P1.0 P1.1 P1.2 P1.3上面各接有一个指示灯,P2.0接一个外接按键。要求:    按一下按键P1.0以1Hz的频率闪烁    半周期为500ms第二次按下按键P1.1以2Hz的频率闪烁    半周期为250ms第三次按下按键P1.2以3Hz的频率闪烁    半周期为165ms第四次按下按键P1.3以4Hz的频率闪烁    半周期为12
PIC单片机-蜂鸣器使用示例
PIC中档单片机蜂鸣器原理图: 使用示例: /******************************************************************************* * 跳线接法:短接P2的2、3 * 功能描述:无源蜂鸣器发声 **************************************************************
51单片机中用PWM控制LED亮度调节
LED一般是恒流点亮的,如何改变LED的亮度呢?答案就是PWM控制。 在一定的频率的方波中,调整高电平和低电平的占空比,即可实现。 比如我们用低电平点亮一个LED灯,我们假设把一个频率周期分为 10个时间等份,如果方波中的高低电平占空比是9:1,这是就是一 个比较暗的亮度,如果方波中高低电平占空比是10:0,这时, 全部是高电平,灯是灭的。如果占空比是5:5,就是一个中间亮度, 如果高低比是1:9,是一个比较亮的亮度,如果高低是0:10,这时 全部是低电平,就是最亮的。
关于单片机--蜂鸣器输出音调设置
    根据查找资料,现做以总结和说明。      1.  首先要明确音调问题:    音调在简谱中的发音为:1 2 3 4 5 6 7 。读作多来米发梭拉西。重低音区的音调“拉”(6)。在各乐器中(电子琴、手风琴)的发声频率都是220Hz,低音区的“拉”为440Hz,中音区的“拉”为 880Hz,高音区为1760Hz。 世界范围内统一标准。以电子琴举例: 重低音“拉”与低音“拉”之间,间隔12个...
利用单片机串口通信,使蜂鸣器发音
题目:由上位机发送1给单片机时,蜂鸣器以400ms频率发声,发2时以200ms频率发声,发3时以100ms频率发声,发4时关闲蜂鸣器。我的程序如下:(略)在做这个实验的时候~发现~只能一次控制蜂鸣器的响灭~~即必须复位之后才能再次发送~!不知是什么原因~由于本人实在是没有财富值~还是请大侠们帮个忙啊~!我学的是郭天祥的51单片机! 悬赏分:0 - 解决时间:2010-1-28 22:52 ====
利用51单片机计数器测频率(最简程序)
网上的关于51计数器的程序很乱,大多数和其他的LCD什么的混在一起,而我的是最简单的,最直接的,而且注释很全,希望大家能够快速入门。
51单片机测量方波频率
方法论,原理C语言程序如下: TH0=0; //定时器高位,初值设为0 TL0=0; //定时器低位,初值设为0 T0_num=0; //定时器溢出次数,初值设为0 while(pulse); //pulse为脉冲的输入引脚 while(!pulse); //等待上升沿来临 TR0=1; //打开定时器 while(pusl1); //等待下降沿来临 th1=TH0;tl1=TL0;num1=T0_num; //保存定时器值 while(!pusl1); //等待上升沿来临 TR0=0; //关闭定时器 th2=TH0;tl2=TL0;num2=T0_num; //保存定时器值
STC单片机timer2捕获模式测频率
在使用STC单片机测频率最常用的方法是在一定时间内计算脉冲个数,这种方式一般需要一个计数器和一个定时器配合,而且对低频信号也不太准确,下面我们可以用到timer2的捕获模式通过测量两个下降沿的时间,来计算频率,这样做仅使用timer2就好了,而且对低频信号测量准确,经实际测试,在100Hz一下时,精度可达0.05Hz。