找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2055|回复: 0
打印 上一主题 下一主题
收起左侧

ad9854源程序stm32mini板

[复制链接]
跳转到指定楼层
楼主
ID:225296 发表于 2018-7-17 15:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ad9854程序stm32mini板

单片机源程序如下:
  1. #include "stm32_config.h"
  2. #include "stdio.h"
  3. #include "led.h"
  4. //#include "lcd.h"
  5. #include "AD9854.h"
  6. #include "key.h"
  7. #include "task_manage.h"
  8. #include "timer.h"
  9. #include "usart.h"
  10. #include "sys.h"
  11. #include "key4_4.h"



  12. char str[30];        //显示缓存
  13. extern u8 _return;
  14. int main(void)
  15. {
  16.         //u16 i=0;
  17.         u8  t;
  18.         u8  lcd_id[16];
  19.         u32 i,j=0;
  20.      
  21.          u32 a=1000000;
  22.         u32 b=2000;
  23.        
  24. //        uint Shape;
  25.         KEY44_Init();
  26.         KEY44_Scan();
  27.     uart_init(9600);
  28.         MY_NVIC_PriorityGroup_Config(NVIC_PriorityGroup_2);        //设置中断分组
  29.         delay_init(72);        //初始化延时函数
  30.         LED_Init();        //初始化LED接口
  31.         //key_init();
  32.         //initial_lcd();
  33.         //LCD_Clear();
  34.         delay_ms(300);
  35.         //LCD_Refresh_Gram();
  36.        
  37.         //定时器
  38.         Timerx_Init(99,71);
  39.        
  40.        
  41.         //welcome_KW();
  42.         //标志排针插线颜色
  43. //        LCD_Clear();
  44. //        LCD_Show_CEStr(0,0,"B");//黑色

  45.        
  46. //        while(1)
  47. //        {
  48. //               
  49. //        }
  50.        

  51. //        AD9854_InitAM();//调幅
  52. //        while(1)
  53. //        {
  54. //                AD9854_SetAM(2000);//4095是516mv
  55. //                delay_us(10);             
  56. //        }                       



  57. //        AD9854_InitBPSK();//调相
  58. //        AD9854_SetBPSK(0,8192);
  59. //        while(1)
  60. //        {
  61. //                AD9854_FDATA = 1;
  62. //                delay_us(10);             
  63. //                AD9854_FDATA = 0;
  64. //                delay_us(10);
  65. //        }


  66.     AD9854_Init();
  67.         //AD9854_SetSine_double(1000000,100);//4095是516mv   产生正弦波
  68.        

  69.         AD9854_InitRFSK();//扫频
  70.         //AD9854_SetRFSK(1000000,40000000,1,70);

  71.        
  72.         while(1)
  73.         {
  74.                 //AD9854_SetSine_double(25000000,2000);//4095是516mv   产生正弦波
  75.        
  76.                 t=KEY44_Scan();
  77.         sprintf((char*)lcd_id,"%c",t);       
  78.                 if(t>0)
  79.             {
  80.                    if(t=='1')
  81.                   AD9854_SetSine_double(1000000,2000);//4095是516mv   产生正弦波          
  82.                     else if(t=='2')
  83.                  {
  84.          AD9854_SetRFSK(1000000,40000000,1,70);       
  85.              AD9854_FDATA = 1;
  86.                  delay_us(10);              //延时时间长,便于观察
  87.                  AD9854_FDATA = 0;
  88.                  delay_us(10);
  89.          }                         
  90.                    while(1)
  91.                 {
  92.             t=KEY44_Scan();
  93.         sprintf((char*)lcd_id,"%c",t);       
  94.         if(t>0)
  95.                 {       
  96.                   if(t=='3')
  97.                   {
  98.                           i+=1000000;
  99.                           a=a+i;
  100.                           AD9854_SetSine_double(a,b);                          
  101.                           i=0;
  102.                   }                          
  103.                   if(t=='4')
  104.                   {
  105.                           i+=1000000;
  106.                           a=a-i;
  107.                           AD9854_SetSine_double(a,b);  
  108.                           i=0;
  109.                   }
  110.           
  111.                   if(t=='5')
  112.                   {
  113.                           j+=50;
  114.                           b=b+j;
  115.                           AD9854_SetSine_double(a,b);
  116.               j=0;                  
  117.                   }
  118.                   if(t=='6')
  119.                   {
  120.                          j+=50;
  121.                           b=b-j;
  122.                           AD9854_SetSine_double(a,b);
  123.                           j=0;
  124.                   }
  125.           }
  126.          }
  127.     }
  128.        
  129.   }
  130. }       
  131.                
  132. //        AD9854_InitFSK();//调频
  133. //        AD9854_SetFSK(50,200);
  134. //        while(1)
  135. //        {
  136. ////                AD9854_FDATA = 1;
  137. ////                delay_us(30000);              //延时时间长,便于观察
  138. ////                AD9854_FDATA = 0;
  139. ////                delay_us(30000);
  140. //        }



  141. //        AD9854_InitOSK();//改斜率
  142. //        AD9854_SetOSK(10);
  143. //        while(1)
  144. //        {
  145. //                AD9854_OSK=1;       
  146. //                delay_us(30);
  147. //                AD9854_OSK=0;       
  148. //                delay_us(30);
  149. //        }



  150. //        while(1)
  151. //        {
  152. ////               
  153. ////////                KeyRead();
  154. ////////                Set_PointFre(Keycode, 0);
  155. ////////                if(_return){_return=0;LCD_Refresh_Gram();}
  156. ////////                KEY_EXIT();
  157. //        }       
复制代码

所有资料51hei提供下载:
DDS开发板-点频9854(ok).rar (344.75 KB, 下载次数: 54)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表