找回密码
 立即注册

QQ登录

只需一步,快速开始

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

求助单片机串口输出pwm波占空比的问题

[复制链接]
回帖奖励 20 黑币 回复本帖可获得 20 黑币奖励! 每人限 1 次(中奖概率 50%)
跳转到指定楼层
楼主
ID:257254 发表于 2017-12-6 10:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这个是主要的函数:  副函数见附件  为什么控制不了。串口助手调输出数字,并没有波形输出?

单片机源程序:
int main(void)
{        
  int x;         
  u16 t;  
        u16 len;
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
        uart_init(115200);          //串口初始化为115200
         LED_Init();                                    //LED灯初始化
        TIM2_PWM_Init(99,71);// 频率10Khz 周期100us
        LED1=0;                                  //点亮DS1
         while(1)
        {
                if(USART_RX_STA&0x8000)//不懂
                {                                          
                        len=USART_RX_STA&0x3fff;//不懂
                        for(t=0;t<len;t++)
                        {
                                USART_SendData(USART1, USART_RX_BUF[t]);//向串口1发送数据
                                while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
                        }
                        x=((USART_RX_BUF[0]-48)*100+(USART_RX_BUF[1]-48)*10+((USART_RX_BUF[2])-48)*1);// 把串口接受到的ASC码转换成十进制数
                        printf("\r\n%d\n",x);//用串口1输出X的值 当向串口1发送的为三位字符时X才正确
                        USART_RX_STA=0;
                }
                TIM_SetCompare4        (TIM2,x);        //输出对应占空比               
               
        }           
}

串口输出对应占空比PWM.rar

297.7 KB, 下载次数: 17

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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