找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1198|回复: 4
收起左侧

51单片机 频率输出程序

[复制链接]
ID:242639 发表于 2017-11-10 12:15 | 显示全部楼层 |阅读模式
要求p2.1输出频率,多谢指教
频率       
480HZ
周期       
T=0.00208S
上升沿       
T1=0.001386S
下降沿       
T2=0.00069S
占空比       
66.67%

下面程序行得通吗?
sbit PULSEP14 = P2^1;
void PulesOutP14()
{
        static unsigned int cntout = 0;
        if(cntout < 139)
                PULSEP14 = 1;
        else
                PULSEP14 = 0;
        cntout++;
        if(cntout >= 208)
                cntout = 0;
}

/*
0  -->  1  -->  2  -->  3  -->  4
----------------\________________
*/

回复

使用道具 举报

ID:247748 发表于 2017-11-10 14:49 | 显示全部楼层
学习下
回复

使用道具 举报

ID:111634 发表于 2017-11-10 15:38 | 显示全部楼层
输出频率?唉!语文也未学好!
回复

使用道具 举报

ID:123289 发表于 2017-11-10 20:50 | 显示全部楼层
本帖最后由 yzwzfyz 于 2017-11-10 21:01 编辑

太简单了:
做一个T中断,中断时间为1/4个周期,同时做一个计数器TC,每次中断后做下列事件:
1、将TC+1,(TC=0-3,=4时清0);


2、在T=1、2时:将p2.1反转一下。

至于何是为1,何时为0,自己考虑一下吧。


回复

使用道具 举报

ID:242639 发表于 2017-11-13 11:42 | 显示全部楼层
多谢指教!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表