找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2824|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

c51單片機(jī)三角方波Proteus仿真程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

#include <reg51.h>
typedef unsigned char uchar;
typedef unsigned int uint;
sbit cs = P3 ^ 7;
sbit wr = P3 ^ 6;
sbit K1 = P3 ^ 4;
sbit K2 = P3 ^ 5;
void Init()//中斷子程序
{
  TMOD=0x01;
  TH0=0xb1;
  TL0=0xE0;
  IE=0x8e;
}
void Delay(uchar m)//延時(shí)程序
{
    while(m--);
}
void main()
{
    uchar k = 0; //設(shè)置k的初始值為0
    cs = 0; //當(dāng)CS與WR1端置低電平時(shí)做好寫數(shù)據(jù)的準(zhǔn)備,只要P0口有數(shù)據(jù)輸出,DAC0832將會(huì)轉(zhuǎn)換成模擬信號
    wr = 0;        //當(dāng)CS與WR1端置低電平時(shí)做好寫數(shù)據(jù)的準(zhǔn)備,只要P0口有數(shù)據(jù)輸出,DAC0832將會(huì)轉(zhuǎn)換成模擬信號
        Init();        //中斷程序
    while(1) //通過輸出值在 0-255和255-0之間變化,通過示波器可以看到模擬信號的情況
    {
       D3: if(K1==0)//判斷K1是否按下
          {
                TR0=1;//啟動(dòng)定時(shí)器T0
                D1: while(1) //輸出值在0-255之間變化
        {
            P0 = k++; //輸出k且k+1
            Delay(1);
                        if(K2==0)//判斷K2是否按下
          {
            TR0=0;//關(guān)閉定時(shí)器T0
                k=0;//將k值重新置0
                P0=k;//停止輸出方波
                goto D3;//跳出方波輸出循環(huán)
          }
            if (k == 0xff) //到達(dá)255時(shí)結(jié)束循環(huán)
                goto D2;//結(jié)束當(dāng)前循環(huán)跳轉(zhuǎn)至D2循環(huán)
        }
        D2: while(1) //輸出值在255-0之間變化
        {
            P0 = k--; //輸出k且k-1
            Delay(1);
                        if(K2==0)//判斷K2是否按下
          {
            TR0=0;//關(guān)閉定時(shí)器T0
                k=0;//將k值重新置0
                P0=k;//停止輸出方波
                goto D3;//跳出方波輸出循環(huán)
          }
            if (k == 0x00) //到達(dá)0時(shí)結(jié)束循環(huán)
                goto D1;//結(jié)束當(dāng)前循環(huán)跳轉(zhuǎn)至D1循環(huán)
        }
          }
    }
}

FANGBOU.zip

59.83 KB, 下載次數(shù): 6, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表