久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4784|回復: 0
收起左側

STM32多路AD采樣按鍵可調pwm(頻率,占空比)源碼

[復制鏈接]
ID:372853 發表于 2018-7-16 21:03 | 顯示全部樓層 |閱讀模式
按鍵可調占空比
輸出端PC6

單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"
  7. #include "pwm.h"
  8. #include "exti.h"

  9. extern void TIM3_PWM_Init(u16 arr,u16 psc);
  10. extern void TIM4_PWMINPUT_INIT(u16 arr,u16 psc);
  11. extern void TIM5_PWMINPUT_INIT(u16 arr,u16 psc);

  12. extern u16 period;
  13. extern u16 duty ;
  14. extern u8 CollectFlag ;
  15. extern u32 b;
  16. extern u16 c;
  17. extern u16 d;
  18. extern u16 period1;
  19. extern u16 duty1 ;
  20. extern u8 CollectFlag1 ;
  21.        
  22. int main(void)
  23. {         
  24.         u8 x=0;
  25.          u8 y=0;
  26.          d=0;
  27. //        u8 lcd_id[12];                        //存放LCD ID字符串
  28.         delay_init();                     //延時函數初始化          
  29.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         //設置NVIC中斷分組2:2位搶占優先級,2位響應優先級
  30.         uart_init(115200);                 //串口初始化為115200
  31.         LED_Init();                             //LED端口初始化
  32.         LCD_Init();
  33.         EXTIX_Init();                         //外部中斷初始化
  34. //        TIM3_PWM_Init(1000-1,72-1);   //1KHZ周期
  35. //        TIM_SetCompare1(TIM3,200);                //設置占空比
  36. //        TIM_SetCompare2(TIM3,400);                //設置占空比
  37. //        TIM_SetCompare3(TIM3,600);                //設置占空比
  38. //        TIM_SetCompare4(TIM3,800);                //設置占空比
  39.         TIM4_PWMINPUT_INIT(0xffff,7);   //pwm輸入初始化以1M的頻率捕捉
  40.          TIM5_PWMINPUT_INIT(0xffff,71);   //pwm輸入初始化以1M的頻率捕捉
  41.         POINT_COLOR=RED;
  42.         POINT_COLOR=RED;
  43.          LCD_Clear(WHITE);
  44.                         LED0=0;                        
  45.           while(1)
  46.         {                 

  47.                 POINT_COLOR=RED;          
  48.                 LCD_ShowString(30,40,210,24,24,"WarShip STM32 ^_^");
  49.                          if(!CollectFlag)
  50.                         {
  51.                                 printf("duty          = %d%% \r\n",duty*100/period);                                //打印占空比
  52.                                 printf("cycle         = %dKHz\r\n",1000/period);//打印周期另一種叫法
  53.                                 printf("period  = %dus\r\n",period);    //打印周期
  54.                                 LCD_ShowString(30,170,210,12,12,"A duty=");
  55.                                 LCD_ShowString(30,190,210,12,12,"A period=");
  56.                                 LCD_ShowNum(90,170,duty*100/period,12,12);
  57.                                 LCD_ShowNum(90,190,1000/period,12,12);
  58.                                 LCD_ShowString(170,190,210,12,12,"KHZ");
  59.                                 CollectFlag = 1;
  60.                         }       
  61.                         if(!CollectFlag1)
  62.                         {
  63.                                 printf("duty          = %d%% \r\n",duty*100/period);                                //打印占空比
  64.                                 printf("cycle         = %dKHz\r\n",1000/period);//打印周期另一種叫法
  65.                                 printf("period  = %dus\r\n",period);    //打印周期
  66.                                 LCD_ShowString(30,210,210,12,12,"B duty=");
  67.                                 LCD_ShowString(30,230,210,12,12,"B period=");
  68.                                 LCD_ShowNum(90,210,duty1*100/period1,12,12);
  69.                                         LCD_ShowNum(90,230,72000000/(period1*c),12,12);
  70.                                 LCD_ShowString(170,230,210,12,12,"KHZ");
  71.                                 CollectFlag1 = 1;
  72.                                 x=GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1);
  73.                                 y=GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_7);
  74.                                
  75.                                 LCD_ShowNum(90,270,1000000,12,12);
  76.                                 LCD_ShowNum(90,290,c,12,12);
  77.                                
  78.                
  79.                         }                            
  80.                 delay_ms(10);       

  81.         }
  82. }
復制代碼

所有資料51hei提供下載:
按鍵可調pwm(頻率,占空比).rar (366.37 KB, 下載次數: 98)


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一区二区久久 | 国产精品99久久久久久久久久久久 | 精品国产一区二区久久 | 玖玖色在线视频 | 在线观看成人精品 | 欧美日韩不卡 | 国产日韩一区 | 欧美三级在线 | 日韩在线综合 | 九九亚洲精品 | 日韩一区二区三区视频在线观看 | 欧美日韩精选 | 精品美女视频在线观看免费软件 | 亚洲日本欧美日韩高观看 | 欧美性一区二区三区 | 欧美91| 国产在线www| 91在线成人 | 黄色片在线免费看 | 狠狠干综合视频 | 狠狠狠干| 国产精品一码二码三码在线 | 日韩欧美精品 | 欧美一级黄视频 | 欧美综合国产精品久久丁香 | 99精品视频一区二区三区 | 久久久久久久久久一区二区 | 精品国产一区二区在线 | 免费激情网站 | 亚洲精选一区二区 | www国产成人免费观看视频,深夜成人网 | 色吧综合 | 国产成人精品久久二区二区91 | 国产精品久久久久久久久久免费看 | 久久久精彩视频 | 青草青草久热精品视频在线观看 | 中文字幕在线观看一区二区 | 国产乱码精品一区二区三区忘忧草 | 国精产品一区二区三区 | 天天操狠狠操 | 国产精品一区二区三区在线 |