找回密码
 立即注册

QQ登录

只需一步,快速开始

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

STM32舵机按键调节控制源码

[复制链接]
跳转到指定楼层
楼主
ID:302065 发表于 2018-4-4 16:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PWM控制舵机  按键调节实验 ,STM32MINI版专用


单片机源程序如下:

  1. #include "delay.h"
  2. #include "sys.h"
  3. #include "usart.h"
  4. #include "lcd.h"
  5. #include "pwm.h"
  6. #include "key.h"
  7. #include "stm32f10x_tim.h"


  8. //ALIENTEK Mini STM32开发板范例代码15
  9. //ADC实验  
  10.            
  11. int main(void)
  12. {
  13.         u16 adcx,adcx1;
  14.         float temp;

  15.         u16 dacval=25;
  16.         u8 key;

  17.         delay_init();                     //延时函数初始化         
  18.         uart_init(9600);                 //串口初始化为9600

  19.          LCD_Init();                                   //初始化LCD
  20.         TIM1_PWM_Init(899,1439);         
  21.         KEY_Init();                                //按键初始化                        

  22.   TIM1->CCR4=dacval;

  23.         POINT_COLOR=RED;//设置字体为红色
  24.         LCD_ShowString(60,50,200,16,16,"Mini STM32");        
  25.         LCD_ShowString(60,70,200,16,16,"DAC TEST");        
  26.         LCD_ShowString(60,90,200,16,16,"ATOM@ALIENTEK");
  27.         LCD_ShowString(60,110,200,16,16,"2014/3/9");        
  28.         LCD_ShowString(60,130,200,16,16,"WK_UP:+  KEY0:-");        
  29.         //显示提示信息                                                                                             
  30.         POINT_COLOR=BLUE;//设置字体为蓝色
  31.         LCD_ShowString(60,150,200,16,16,"DAC VAL:");              
  32.         LCD_ShowString(60,170,200,16,16,"DAC VOL:");              
  33.         LCD_ShowString(60,190,200,16,16,"ADC VOL:");        
  34.   LCD_ShowxNum(124,170,dacval,3,16,0);        
  35.                
  36.         while(1)
  37.         {
  38.                
  39.                 key=KEY_Scan(0);                          
  40.                 if(key==KEY1_PRES)
  41.                 {                 
  42.                 dacval+=10;
  43.                         TIM_SetCompare4(TIM1,dacval);
  44.                         LCD_ShowxNum(124,170,dacval,3,16,0);        
  45.                 }
  46.                 if(key==KEY0_PRES)        
  47.                 {
  48.                         dacval-=10;
  49.                          TIM_SetCompare4(TIM1,dacval);
  50.                         LCD_ShowxNum(124,170,dacval,3,16,0);

  51.                 }         
  52.                 if(key==WKUP_PRES)        
  53.                 {
  54.                         dacval=25;
  55.                          TIM_SetCompare4(TIM1,dacval);
  56.                         LCD_ShowxNum(124,170,dacval,3,16,0);

  57.                 }        
  58.                 delay_ms(10);        
  59.         }                                                                                    
  60. }        

  61. //PA0与1820相连,按键不起作用;仿真不一定可信
  62. //50Hz   ccr1:25---135;   0-210度     第一次与最后一次的角度过大
  63. //信息口IO口:A.11

  64. //PB6,7,8,9
复制代码

所有资料51hei提供下载:
PWM控制舵机 按键调节实验.rar (343.04 KB, 下载次数: 201)


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

使用道具 举报

沙发
ID:371992 发表于 2019-8-4 21:38 | 只看该作者
好评,学习了
回复

使用道具 举报

板凳
ID:187094 发表于 2019-8-9 13:53 | 只看该作者
感谢楼主
回复

使用道具 举报

地板
ID:598865 发表于 2019-8-10 15:54 | 只看该作者
感谢楼主感谢楼主!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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