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

QQ登錄

只需一步,快速開(kāi)始

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

基于51單片機(jī)的低頻鎖相環(huán)頻率合成設(shè)計(jì) 含原理圖 程序

[復(fù)制鏈接]
ID:201329 發(fā)表于 2017-5-16 13:51 | 顯示全部樓層 |閱讀模式
基于51單片機(jī)的鎖相環(huán)頻率合成器的設(shè)計(jì)。使用PLL集成芯片CD4046,可編程分頻芯片CD4522(同MC14522),使用LCD1602顯示,頻率由按鍵輸入。標(biāo)準(zhǔn)輸入信號(hào)為1khz方波。

Altium Designer畫(huà)的原理圖如下:(附件中可下載工程文件)
0.png 0.png 0.png


單片機(jī)源程序如下:
  1. #include <reg52.h>
  2. #include "key.h"
  3. #include "delay.h"
  4. #include "lcd1602.h"

  5. sbit led0 = P3^6;
  6. sbit led1 = P3^7;

  7. u8 temp[]="1234567890";
  8. u8 a[] = "PLL";
  9. u8 b[] = "fre:    KHz";
  10. u8 c[] = "OK!";
  11. u8 d[] = "                ";


  12. void main(){
  13.        
  14.         u8 key,ge=0,shi=0,bai=0;
  15.         u16 fre;       
  16.         lcd1602_init();
  17.   write_fre(1);  //初始頻率1KHz
  18.         lcd1602_display_string(0,0,b);

  19.         while(1){
  20.                         key = Key_Scan();
  21.                         switch(key){
  22.                                 case ge_pres:
  23.                                         lcd1602_display_char(0,6,temp[ge]);
  24.                                         ge++;
  25.                                         if(ge == 10) ge=0;
  26.                                         lcd1602_display_string(1,0,d);   //清除OK標(biāo)志
  27.                                         led0=0;
  28.                                         led1=1;
  29.                                         break;
  30.                                
  31.                                 case shi_pres:
  32.                                         lcd1602_display_char(0,5,temp[shi]);
  33.                                         shi++;
  34.                                         if(shi == 10) shi=0;
  35.                                         lcd1602_display_string(1,0,d);
  36.                                         led0=0;
  37.                                         led1=1;
  38.                                         break;
  39.                                
  40.                                 case bai_pres:
  41.                                         lcd1602_display_char(0,4,temp[bai]);
  42.                                         bai++;
  43.                                         if(bai == 10) bai=0;
  44.                                         lcd1602_display_string(1,0,d);
  45.                                         led0=0;
  46.                                         led1=1;
  47.                                         break;
  48.                                
  49.                                 case enter_pres:
  50.                                         fre = bai*100+shi*10+ge;
  51. ……………………

  52. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
資料.rar (764.36 KB, 下載次數(shù): 61)

程序代碼:
鎖相環(huán)頻率合成.rar (52.1 KB, 下載次數(shù): 55)



評(píng)分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2017-5-16 19:02 | 顯示全部樓層
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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