亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2925|回復: 6
打印 上一主題 下一主題
收起左側

關于51單片機PWM波的問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:782567 發表于 2020-6-17 21:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
現在想要實現一個串口發送PWM波形數據,單片機在通過串口接收數據后在修改P1.1口的波形,PWM輸出用的是定時器計數器。現在有一個疑問,就是我生成的波形的數據是字節變量的,但是輸出的口需要位變量,這個問題怎么解決?求各位大佬給點指點。
void chuankou() interrupt 4
{
TI=0;
SBUF=PWMboxing;
while(TI==1)
{
  TI=0;
   
}
RI=0;
i=SBUF;
P1^1=i
while(RI==0)
{
  RI=0;
}
}
程序是我自己寫的,現在目前就是這個思路,不知道能不能行的通,有問題的話也歡迎各位指出,謝謝大家啦!!!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:94031 發表于 2020-6-18 08:45 | 只看該作者
字節變量一定要轉換成位變量才能輸出給位變量。
回復

使用道具 舉報

板凳
ID:213173 發表于 2020-6-18 09:27 | 只看該作者
樓主這個程序錯誤太多根本玩不轉。給你一個經驗證過的參考程序試試。

#include<reg51.h>

sbit PWM=P1^1; //PWM輸出端口

unsigned char i,j;//全局變量

void main()                                                       
{
        SCON=0x50;  //8位UART波特率可變
        TMOD=0x22;  //定時器0、1方式2(8位重載)晶振11.0592MHz
        TH0=0xA4;        //設置定時重載值100us
        TL0=0xA4;        //設置定時初值
        TH1=0xfd;   //波特率9600
        TL1=0xfd;   //波特率9600
        TR0=1;           //開定時器0
        TR1=1;           //開定時器1
        REN=1;           //允許串行接收
        EA=1;              //開總中斷
        ET0=1;           //開T0中斷
        ES=1;              //開串口中斷
        while(1);
}

void T0Interrupt(void) interrupt 1
{
        if(j>i)PWM=1;//周期10ms,占空比0~100
        else PWM=0;
        if(++i>=100)i=0;
}

void serial() interrupt 4
{
        RI=0;
        j=SBUF;//j值范圍0~100
}
回復

使用道具 舉報

地板
ID:245429 發表于 2020-6-18 10:31 | 只看該作者
輸出口是位變量(就是調節高低電平),生成波形的數據是字節變量,就是通過控制高低電平的時間調節占空比控制波形。具體有一個非常簡單容易理解的例子,看完你就會明白,建議看一下這一篇http://www.denmoz.com/bbs/forum.php?mod=viewthread&tid=75309
回復

使用道具 舉報

5#
ID:782567 發表于 2020-6-18 21:01 | 只看該作者
xuyaqi 發表于 2020-6-18 08:45
字節變量一定要轉換成位變量才能輸出給位變量。

好的,我在琢磨琢磨
回復

使用道具 舉報

6#
ID:782567 發表于 2020-6-18 21:03 | 只看該作者
wulin 發表于 2020-6-18 09:27
樓主這個程序錯誤太多根本玩不轉。給你一個經驗證過的參考程序試試。

#include

好的,謝謝啦,我在仔細研究一下
回復

使用道具 舉報

7#
ID:782567 發表于 2020-6-18 21:03 | 只看該作者
單調的唯一的 發表于 2020-6-18 10:31
輸出口是位變量(就是調節高低電平),生成波形的數據是字節變量,就是通過控制高低電平的時間調節占空比控 ...

謝謝啦
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表