⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad9833.c

📁 是AD9833芯片在单片机下的应用程序
💻 C
字号:
//***************************************************//
//函数1:           wr_lcd02_command                  //
//函数2:           wr_lcd02_data                     //
//函数3:           wr_lcd02_1_data()                 //
//函数4:           wr_lcd02_2_data()                 //
//函数5:           wr_lcd02_1n_data()                //
//函数6:           wr_lcd02_2n_data()                //
//函数7:           wr_lcd02_start()
//版本:              V1.0                            //
//日期:             2006/3/9                        //
//修改日期:         2006/3/9                        //
//编写者:           刘学兵                          //
//***************************************************//
//                   说明                            //
//***************************************************//
//函数1:  wr_lcd02_command(unsigned char x)
//        写1602LCD命令数据        
//函数2:  wr_lcd02_data(unsigned char x)
//        写1602LCD显示数据
//函数3:  wr_lcd02_1_data(unsigned char x[16])
//        写1602LCD第一行显示数据
//函数4:  wr_lcd02_2_data(unsigned char x[16])
//        写1602LCD第二行显示数据
//函数5:  wr_lcd02_1n_data(unsigned char x,unsigned int y)
//        写1602LCD第一行第Y位显示数据(Y为1--16)
//函数6:  wr_lcd02_1n_data(unsigned char x,unsigned int y)
//        写1602LCD第二行第Y位显示数据(Y为1--16)
//函数7:  wr_lcd02_start()
//        1602LCD开始设置
//需定义的位:
         //SBIT lcd02_rs
         //SBIT lcd02_rw 
         //SBIT lcd02_e
//例:
         //sbit lcd02_rs  =p1^0
         //sbit lcd02_rw  =p1^1
         //sbit lcd02_e   =p1^2
//***************************************************//
//                 写数据说明                        //
//***************************************************//
//写数据例:
//       wr_lcd02_command(unsigned char x)
//       wr_lcd02_data(unsigned char x)
//       wr_lcd02_1_data(unsigned char x[16])
//       wr_lcd02_2_data(unsigned char x[16])
//       wr_lcd02_1n_data(unsigned char x,unsigned int y)
//       wr_lcd02_2n_data(unsigned char x,unsigned int y)
//***************************************************//
//                                                   //
//---------------------------------------------------//
//                   程序                            //
//---------------------------------------------------//

# include <reg51.h>
# include <stdio.h>
# include <intrins.h>
# include <delay.h>
//---------------------------------------------------//
//ad9833接口定义:
//ad9833_sdata
//ad9833_sclk
//ad9833_fsync
sbit ad9833_sdata   =P0^0;
sbit ad9833_sclk    =P0^1;
sbit ad9833_fsync   =P0^2;
//---------------------------------------------------//
void write_ad9833_d16(unsigned int x)
{
unsigned char i,w;
ad9833_sclk=1;
ad9833_fsync=1;
_nop_();
_nop_(); 
_nop_();
_nop_(); 
ad9833_fsync=0;
_nop_();
_nop_();
_nop_();
_nop_();
//send h_datas
w=(x>>8);
for(i=0;i<8;i++)
{
ad9833_sdata=(w<<i)&(0x80);
_nop_();
_nop_();
_nop_();
ad9833_sclk=0;
_nop_();
_nop_();
_nop_();
ad9833_sclk=1;
_nop_();
_nop_();
}
//send l_datas
w=(x>>0);
for(i=0;i<8;i++)
{
ad9833_sdata=(w<<i)&(0x80);
_nop_();
_nop_();
_nop_();
ad9833_sclk=0;
_nop_();
_nop_();
_nop_();
ad9833_sclk=1;
}
_nop_();
_nop_();
ad9833_fsync=1;
_nop_();
_nop_();
}


main()
{
delay(100);
delay(1000);
write_ad9833_d16(0x2102);
delay(100);
delay(1000);

write_ad9833_d16(0x2000); 
delay(100);
write_ad9833_d16(0x4080);
delay(100);
write_ad9833_d16(0x4000);
delay(100);
//write_ad9833_d16(0xB000);
delay(100);
//write_ad9833_d16(0x3000);
delay(100);
//write_ad9833_d16(0x2102);
 while(1)

 {}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -