找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2659|回复: 10
收起左侧

PIC单片机怎么输出100KHZ方波?

[复制链接]
ID:190577 发表于 2020-10-24 16:55 | 显示全部楼层 |阅读模式
如题
回复

使用道具 举报

ID:748788 发表于 2020-10-25 22:24 | 显示全部楼层
2个_nop_()实现100k方波:
#include <stc15.h>
#include<intrins.h>

sbit k100=P3^3;

void main()
{                 
        while (1)
        {
                k100=~k100;
                _nop_();
                _nop_();
         }
}

100k.jpg

回复

使用道具 举报

ID:414556 发表于 2020-10-25 23:30 | 显示全部楼层
PIC有带PWM的,直接设置输出就好。
回复

使用道具 举报

ID:190577 发表于 2020-10-27 09:11 | 显示全部楼层
wwh2382 发表于 2020-10-25 22:24
2个_nop_()实现100k方波:
#include
#include

您好,我们要用是PIC单片机,不是51系列。波形只是我们项目的一个小要求。
回复

使用道具 举报

ID:190577 发表于 2020-10-27 09:12 | 显示全部楼层
amandv 发表于 2020-10-25 23:30
PIC有带PWM的,直接设置输出就好。

有这个方面历程吗,我们要实现4路波形
回复

使用道具 举报

ID:409831 发表于 2020-10-27 09:35 | 显示全部楼层
用定时器就可以啊,或者直接硬件的PWM
回复

使用道具 举报

ID:382454 发表于 2020-10-27 10:41 | 显示全部楼层
本帖最后由 univers 于 2020-10-27 10:45 编辑

定时器是最好的,不占用CPU资源
回复

使用道具 举报

ID:190577 发表于 2020-10-28 08:58 | 显示全部楼层
univers 发表于 2020-10-27 10:41
定时器是最好的,不占用CPU资源

主要我们要求输出4路PWM,定时器输出不了这么高频率吧,单片机中断处理都要时间,100KHZ,周期就是10US,太快了
回复

使用道具 举报

ID:190577 发表于 2020-10-28 08:59 | 显示全部楼层
xiaoheiniu029 发表于 2020-10-27 09:35
用定时器就可以啊,或者直接硬件的PWM

有这方面的资料吗
回复

使用道具 举报

ID:401564 发表于 2020-10-28 10:51 | 显示全部楼层
你是搞这个的,怎么会不知道呢?
先看你用的是什么编译器,不同的编译器会有不同的函数的
PICC和XC8都是自带有PWM函数的,直接设定好晶振频率,然后调用函数就可以的了,它不是8051,没有那么麻烦的
但我没有用过,我只是在书上看到过而已,我写PIC都是用汇编的
回复

使用道具 举报

ID:836364 发表于 2020-10-31 14:48 | 显示全部楼层
使用定时器呀,100khz的方波,它也就是周期为10us(1/100 000)的方波咯,51单片机在晶振为11.0592m时,定时计一个数是1us,完全可以的
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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