找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1255|回复: 1
打印 上一主题 下一主题
收起左侧

这段代码用通俗的话解释一下

[复制链接]
跳转到指定楼层
楼主
ID:362036 发表于 2018-6-29 22:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
case 0://方波
                                Square_max=250000/wave_Fre;//求取方波反转条件
                                if(Square_count<Square_max)
                                {
                                        Square_count++;
                                }else
                                {
                                        Square_count=0;
                                        if(Square_sta)
                                        {
                                                PWM_DAC_Set(0);
                                                Square_sta=0;
                                        }else
                                        {
                                                PWM_DAC_Set(330);
                                                Square_sta=1;
                                        }
                                }
                        break;

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:362076 发表于 2018-6-30 09:04 | 只看该作者
猜测case后面的0对应的变量是输出波形的选择标志位;
Square_count是电平计数,用于使高/低电平保持一段时间,每一次循环到此判断累加或者清零;
Square_max是通过wave_Fre变量计算出的电平持续时间(机器时间),作为判断的阈值;
Square_sta是电平状态标志位,用于电平状态的指示和切换;
PWM_DAC_Set(330)是用于调用DAC输出模拟电压量。

整个的意思是,在选择方波作为输出的情况下,调用wave_Fre判断高低电平的持续时间,在持续时间满的时候清零并且翻转状态,输出方波的峰峰值约为低0V高3.3V。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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