导航:首页 > 编程语言 > pwm编程实例

pwm编程实例

发布时间:2025-06-10 21:49:30

Ⅰ 西门子PLC怎么实现PWM控制呢

可以利用西门子软件的PWM向导生成PWM波,非常简单。

如果要自己编程序的话,比较复杂。正好今天没事,试着编一下,使用西门子SMART PLC。

注:此程序是PWM周期和占空比均可调的,考虑各种极端情况,如果只是简单的满足题目,就太简单了。

参数定义:time_set:MD0,32位浮点数,PWM波周期,单位:s

pwm_set:MD4,32位浮点数,PWM占空比,范围0-1。

Q0.0:PWM输出。其他均为临时变量,可以忽略。

T33计时PWM为0的时间,计时满之后,T33闭合,T34计时,Q0.0闭合,T34计时满之后,复位T33,重复该周期。

注意:因为占空比可能为1或0,因此要对占空比的时间进行一下对比,如果占空比为0,则让Q0.0一直输入,如果占空比为1,则此段程序不工作,Q0.0无输出。

亲测可用,程序无问题。

Ⅱ STC单片机PWM编程!

看看这个,单片机用的是ADUC848,AD转换输出正弦波,和PWM原理类似。

2、源程序清单

DACCONEQU0xfD;定义模数转换控制器

DACHEQU0xfc;定义模数转换数据寄存器高8位

DACLEQU0xfb;定义模数转换数据寄存器低8位

ORG0000H

LJMPMAIN

ORG0200H

MAIN:MOVDACCON,#0fH;DACoperation

CLRA;

MOVDACH,A;模数转换高八位清零

PRG3:MOVR0,#09H;正弦波

MOVR4,#40H

LP11:MOVA,R0

MOVCA,@A+PC

MOVDACL,A;2

ACALLDELAY;2

INCR0;1

DJNZR4,LP11;2

SJMPPRG3;2

DATA0:

DB80H,8CH,98H,0A5H,0B0H,0BCH,0C7H,0D1H,0DAH,0E2H,0EAH

DB0F0H,0F6H,0FAH,0FDH,0FFH,0FFH,0FDH,0FAH,0F6H,0F0H

DB0EAH,0E2H,0DAH,0D1H,0C7H,0BCH,0B0H,0A5H,98H,8CH

DB80H,7FH,73H,67H,5AH,4FH,43H,38H,2EH,25H,1DH,15H

DB0FH,09H,05H,02H,00H,00H,02H,05H,09H,0FH,15H

DB1DH,25H,2EH,38H,43H,4FH,5AH,67H,73H,7FH

RET

DELAY:MOVR6,#10H

MOVR7,#0A1H

DELAYLOOP:;延时程序

DJNZR6,DELAYLOOP

DJNZR7,DELAYLOOP

RET

四、实验板插针配置:

无需插针配置,注意DAC是从CONDACOUT1端子输出,可用示波器观察DAC输出波形。若产生失真情况,请检查开发板DA输出端LM358运算放大器的放大倍数,适当更改所查函数表的范围。

五、思考题

1、改变程序,使能添加输出锯齿波;

2、改变程序,使输出添加三角波;

3、改变程序,使输出添加方波;

4、改变程序,并制作一个简单的函数发生器

阅读全文

与pwm编程实例相关的资料

热点内容
纪念碑谷2怎么登录app 浏览:822
安卓导航收音机如何存台 浏览:648
三相压缩机热保护 浏览:82
单片机for语句控制流水灯 浏览:613
当程序员的好与坏 浏览:901
androidapp内存占用 浏览:531
怎么给自己加密码 浏览:674
如何填写手机服务器名称和地址 浏览:560
程序员升职记加减逻辑做计数器 浏览:297
电脑压缩安装包解压 浏览:576
云服务器内存使用过高 浏览:446
电脑桌面点新建文件夹就卡死 浏览:43
phparray加链接 浏览:538
服务器双击程序需要做什么 浏览:577
图像的压缩比计算 浏览:928
闪迪加密苹果u盘安全吗 浏览:398
虚拟现实的加密货币 浏览:743
加密行车间隔 浏览:422
phppdo防sql注入 浏览:520
程序员降薪了吗 浏览:626