资源简介

QN8027 FM调频发射开发程序.rar 里面有详细文档介绍 FM调频发射 QN8027 中文版的 还有源程序参考 单片机 80C52的测试已经通过 ,并且包含详细开发文档。 详细介绍,模块初始化步骤。

资源截图

代码片段和文件信息


#include 
#include 
/*********************************************************************/
/* ----------------------------51单片机模拟IIC程序-------------------*/
/*********************************************************************/
/*********************************************************************/
//引脚定义
sbit I2C_SCL=P2^2; 
sbit I2C_SDA=P2^1; 

/*********************************************************************/
//定义空指令
#define NOP()  _nop_()_nop_()_nop_()_nop_()_nop_()_nop_()_nop_()_nop_() 

/*********************************************************************/
//启动I2C总线
void I2C_Start(void)
{
I2C_SDA=1;  
NOP();
I2C_SCL=1;
NOP();NOP();NOP();NOP();NOP(); 
I2C_SDA=0;  
NOP();NOP();NOP();NOP();NOP();      
I2C_SCL=0; 
}

/*********************************************************************/
//停止I2C总线
void I2C_Stop(void)
{
I2C_SCL=0;
I2C_SDA=0;
NOP(); 
I2C_SCL=1; 
NOP();NOP();NOP();NOP();NOP();
I2C_SDA=1;
NOP();NOP();NOP();NOP();NOP();
NOP();NOP();NOP();NOP();NOP();
I2C_SCL=0;
I2C_SDA=0;
}

/*********************************************************************/
//单片机接收应答位(返回0表示应答)
bit I2C_ReadAck(void)
{
unsigned char ccsj = 220;

I2C_SCL=0;
I2C_SDA=1;
NOP();
I2C_SCL=1;
while(I2C_SDA)
{
ccsj--;
if (ccsj == 0)
{
I2C_Stop();
return 0;
}
}
I2C_SCL=0;
return 1;  
}

/*********************************************************************/
//单片机发送应答信号
void I2C_SendAck(void)
{
I2C_SCL=0;
I2C_SDA=0;
NOP();NOP();NOP();NOP();NOP();
I2C_SCL=1;
NOP();NOP();NOP();NOP();NOP();
I2C_SCL=0;
}

/*********************************************************************/
//单片机发送非应答信号
void I2C_SendNoack(void)
{
I2C_SCL=0;
I2C_SDA=1;
NOP();NOP();
I2C_SCL=1;
NOP();NOP();
I2C_SCL=0;
}

/*********************************************************************/
//单片机发送一个字节
void I2C_Send_Byte(unsigned char sendbyte)
{
unsigned char count = 8;
while( count-- )
{
I2C_SCL = 0;
NOP(); 
if ( sendbyte &0x80 ) 
I2C_SDA =1;
else 
I2C_SDA =0;
NOP();
I2C_SCL = 1;
NOP();
sendbyte <<= 1;
}
I2C_ReadAck();
}
/*********************************************************************/
//单片机接收一个字节
unsigned char I2C_Receive_Byte(void)
{
unsigned char count = 8 data_buffer;
I2C_SDA = 1;
while ( count--)
{
I2C_SCL =0;
NOP();NOP();
I2C_SCL =1;
NOP();NOP();
data_buffer <<= 1;
if ( I2C_SDA ) 
data_buffer++; 
}
return (data_buffer);
}
/*********************************************************************/
//单片机发送数据
//向指定的硬件地址写count个数据
void I2C_Data_Write(unsigned char Mac_ID unsigned char *ptrunsigned char num)
{
I2C_Start();
I2C_Send_Byte( Mac_ID );
while(num--)
{
I2C_Send_Byte( *(unsigned char*)ptr );
((unsigned char*)ptr)++;
}
I2C_Stop();
}
/*********************************************************************/
//单片机读取数

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     547483  2014-02-20 13:22  QN8027开发指南.rar

     文件       4241  2010-12-16 14:45  80c52测试OK代码参考\I2C.c

     文件        285  2010-06-03 13:32  80c52测试OK代码参考\I2C.h

     文件       2555  2011-01-04 13:38  80c52测试OK代码参考\QN_8027.c

     文件        145  2011-01-04 13:45  80c52测试OK代码参考\说明.txt

     目录          0  2014-02-21 09:38  80c52测试OK代码参考

----------- ---------  ---------- -----  ----

               554709                    6


评论

共有 条评论