• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

怎样用51单片机同时产生10khz和30khz的方波?

城里南海 2018-06-13 浏览量:3145
怎样用51单片机同时产生10khz和30khz的方波,方波相位保持一致。
想要比较详细的程序设计思路
比如PWM的占空比等等
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这个频率应该还是比较低的,51的晶振大多是12M的,产生这个频率的是没有问题的。

    占空比可以使用定时器,动态修改定时器的定时时间来进行修改。在定时器中断中进行IO的反转

    • 发布于 2018-06-15
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:15
  • 你需要产生一个60khz的信号,然后分频得出30khz和10khz

    比如一个60khz计数器直接2分频就可以获得30khz(每个上升沿信号翻转1次)

    而10khz稍微复杂点,是1/6分频,就每隔3个上升沿翻转一次。

    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 也只有这样30khz和10khz的相位关系是稳定的。

    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个没必要使用单片机,单一的门电路就可以实现,但是如果你要使用单片机的话,要求同相位就要意味着要使用用一个时钟,可以使用51单片机的定时器产中断产生一个30k的频率(就是中断后取反某个引脚电平),每次完成一个周期就记一次数,同时对这个30k的频率的基数进行分频计算(计数/3),就可以得到10k的频率了。
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 使用定时器产生30k方波 赋予一个io口 然后 程序里 每隔三个脉冲就能产生10k方波 赋予另外一个io口 
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个可以用定时器产生,直接在定时器中断里翻转电平,设置定时器时间为20k和60k
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 51单片机12MHz的晶振,10KHz就是100us,30KHz就是33us左右,用一个定时器实现30KHZ的方波定时,然后计数,每三次输出一次10Khz方波即可,也可以根据时间合理的进行定时器计时设置,然后根据定时器中断的次数输出10KHz和30KHz的方波
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 有60khz的定时器,然后每次进中断翻转一次电平为30kzh方波,另一个每进3次翻转一次电平,但是占空比不能调节


    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 用定时器设置16us的计数,第一个IO口每记一个数翻转一次,第二个IO口每记3个数翻转一次,这样产生的方波占空比为50频率也大致为30k要想产生方波占空比可调的方波,计数器的计数时间就要缩小,但是51的性能较差,指令执行时间较长。配置定时器计数器的时间再加进去,频率就不是你计算的频率了
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 51单片机产生两路定时器,程序实现比较复杂,一般是采用两个NE555来产生,比较容易实现。

    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以直接用PWM模块来产生,但是要看你的单片机是否支持
    • 发布于2018-06-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 传统型51基本做不到。如果是增强型。12M晶振那就用一个单片机每400中断一次,作为时基,判断多少个中断翻转一次。但增强型51还不如用本身带有的PWM寄存器生成更加准确,好像有些可以一个时基两个比较器。
    • 发布于2018-06-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 51的软件PWM和硬件PWM都能实现,STC-ISP里有范例。
    • 发布于2018-06-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 51上面没有DMA,做不到绝对的同步,因此最好的方式是输出一个30K频率的方波,再用555定时器来分频产生另一路
    • 发布于2018-06-16
    • 举报
    • 评论 0
    • 0
    • 0

  • 相位同步,可能单纯的软件输出有点困难,可以和和上面朋友说的外加电路实现。
    • 发布于2018-06-17
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

怎样用51单片机同时产生10khz和30khz的方波?