找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 5470|回復(fù): 2
收起左側(cè)

基于51單片機(jī)定時(shí)器的方波發(fā)生器仿真與源代碼

[復(fù)制鏈接]
ID:268717 發(fā)表于 2018-6-19 17:29 | 顯示全部樓層 |閱讀模式
利用定時(shí)器的方式二做一個(gè)周期兩秒的方波發(fā)生器  周期幾乎是0誤差的
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png

單片機(jī)源程序如下:
  1. /*************************************************
  2. 計(jì)數(shù)方式選擇:
  3. 使用定時(shí)器的方式0和方式1中,在循環(huán)計(jì)數(shù)過程中要用軟件反復(fù)設(shè)置計(jì)數(shù)器初值,這可能影響計(jì)時(shí)的精度,故采用方式2;
  4. 方式二周期計(jì)算:
  5. 方式2最多轉(zhuǎn)載數(shù)為256個(gè),那么采用計(jì)數(shù)250次,則機(jī)器周期T=12*(1/6MHZ)=2us,計(jì)時(shí)一秒即1000000/(2*250)=2000次
  6. 產(chǎn)生方波周期為2s,即是說要循環(huán)計(jì)數(shù)4000次,再利用溢出中斷來完成循環(huán)計(jì)數(shù)任務(wù)。
  7. **************************************************/                                                                                         
  8. #include <reg51.h>               
  9. #define uint unsigned int
  10. sbit FB=P1^0;   //定義方波輸出口
  11. uint num;
  12. void main()
  13. {
  14.         TMOD=0x02;  //設(shè)置定時(shí)器0為工作方式2(0000 0010)
  15.         TH0=6;      //裝初值
  16.         TL0=6;

  17.         EA=1;       //開總中斷
  18.         ET0=1;      //開內(nèi)部定時(shí)器0中斷
  19.         TR0=1;      //啟動(dòng)定時(shí)器0

  20. while(1)        //程序在這里等待中斷
  21. {
  22.         if(num==4000)                //如果到了4000次,說明1秒時(shí)間到
  23.          {
  24.            num=0;                        //然后把num清0重新再計(jì)4000次
  25.            FB=!FB;                //讓電平取反
  26.          }
  27. }
  28. }

  29. void T0_time() interrupt 1        //讓中斷程序執(zhí)行循環(huán)計(jì)數(shù)任務(wù)
  30. {
  31.         num++;                        
  32. }
復(fù)制代碼
0.png

所有資料51hei提供下載:
20161111144-李作鑫-方波發(fā)生器.rar (99.97 KB, 下載次數(shù): 59)


評(píng)分

參與人數(shù) 2黑幣 +55 收起 理由
12345輕輕、 + 5 很給力!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:532513 發(fā)表于 2019-5-26 20:24 | 顯示全部樓層
真好!!!
回復(fù)

使用道具 舉報(bào)

ID:570384 發(fā)表于 2020-2-17 11:51 | 顯示全部樓層
真的不錯(cuò)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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