BH1415调频发射机系统方框图

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

BH1415调频发射机系统方框图,由STC2052+LCD1602+M62429+BH1415+MIC+键盘红外和高频放大部分组成.?

本调频发射机电源部分,输入需12V1A,IN4007为电源极性保护,当电源接反时不至于烧坏发射机元件,12V电源经LM7805整流后向发射机提供+5V 工作电压.

发射机音频控制部分由M62429完成,M62429为一音量控制IC,音量从0DB-83DB可调,可通过单片机对音量进行控制.

MIC话筒部分,S7为一跳线,当采用驻极体话筒时短接为驻极体话筒提供工作电压,断开时可以直接使用动圈话筒,S8为话筒信号输出跳线,短接时将信号输出到BH1415F与音频信号混合进行信号调制.

BH1415调频发射机MCU单片机控制电路,由STC12C2052完成控制,复位电路可以不装,不装复位电路时STC12C2052的第一脚需接地.上图第一部分为复位电路,第二部分为晶振电路,第三部分为STC12C2052,第四部分为RS232接口,用于与电脑进行连接用相关程序进行控制,可以不用此部分.

LCD显示部分,LCD1602与SSHT1621LCD只选用一部分,视自己制作方便了.LCD1602 采用的是四位总线方式.后一部分为电子电源开关,由单片机进行控制.

控制键盘,红外接收头电路,红外电路实现遥控来代替手动操作的功能(可不用)(需要程序支持),键盘电路是采用四个按键的方式来完成操作,注意键盘和LCD 的IO口是复用的方式.

BH1415F锁相环调频发射IC及外围元件电路图,由本电路完成对音频信号的调制,电路输出的已经是调频信号了,不用后级放大电路BH1415也能发射几十米远了.

发射机功率放大电路,由BH1415F输出的信号经2SC9018,2SC3355,2SC2053放大后信号可达到500mW以上,调整得好能达到更大的功率.经实测采用拉杆天线在开阔地可发射800米以上.采用外接天线会发射得更远.注意,在安装调试时2053需要接上假负载,否则很容易烧坏2053,业余制作可用50欧2W电阻代替.安装调试时,三级电路可逐级安装调试.

阻抗匹配及滤波电路,2053后级放大电路采用的是D类放大电路,去除失真的波型,使输出到天线的信号波型为正弦波.

发射机测试电路,可以用来驱动直流电压表,可以直接接数字万用表直流电压档.接到每一放大输出级调试到显示电压最大.

装好的发射板成品图

LCD1602四位总线驱动程序,供大家参考,已在STC2052,晶振11.0592MHZ测试通过.

#include

#define uchar unsigned char

#define uint unsigned intsbit LCD_RS = P3^3;

sbit LCD_RW = P3^4;

sbit LCD_EN = P3^5;

#define LCD_DATA P1

void LCD_Initial(void);

void Read_Busb(void);

void Write_Instruction(uchar In_data);

void Write_Data(uchar In_data);

void Delay(uint Time);

void Display_OneText(uchar x,y,In_data);

void main()

{

Delay(10000);

LCD_Initial();

Display_OneText(0,1,'w');

Display_OneText(1,1,'a');

Display_OneText(2,1,'n');

Display_OneText(3,1,'g');

Display_OneText(4,1,'1');

Display_OneText(5,1,'j');

Display_OneText(6,1,'i');

Display_OneText(7,1,'n');

Display_OneText(8,1,'@');

Display_OneText(9,1,'1');

Display_OneText(10,1,'6');

Display_OneText(11,1,'3');

Display_OneText(12,1,'.');

Display_OneText(13,1,'c');

Display_OneText(14,1,'o');

Display_OneText(15,1,'m');

while(1);

}

void LCD_Initial(void)

{

Delay(10000);

Write_Instruction(0x32);//这个和LCD有关...有人用22 有人用28...看个人了...

Write_Instruction(0x06);

Write_Instruction(0x0c);

}

//读忙;

void Read_Busb(void)

{

LCD_RS=0;

LCD_RW=1;

LCD_EN=0;

LCD_EN=1;

LCD_DATA&=0x0f;

while(LCD_DATA&0x08);

}

//写指令;

void Write_Instruction(uchar In_data)
{

uchar i;

Read_Busb();

i="In"_data>>4;

LCD_EN=0;

LCD_RS=0;

LCD_RW=0;

LCD_EN=1;

LCD_DATA=i;

Delay(100);

LCD_EN=0;

i="In"_data;

LCD_EN=1;

LCD_DATA=i;

Delay(100);

LCD_EN=0;

}

//写数据;

void Write_Data(uchar In_data)

{

uchar i;

Read_Busb();

i="In"_data>>4;

LCD_EN=0;

LCD_RS=1;

LCD_RW=0;

LCD_EN=1;

LCD_DATA=i;

Delay(100);

LCD_EN=0;

i="In"_data;

LCD_EN=1;

LCD_DATA=i;

Delay(100);

LCD_EN=0;

}

//在某一指定地址显示一个字符;
void Display_OneText(uchar x,y,In_data)
{

y&=0x01;

相关文档
最新文档