OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 20950|回复: 3

求正点原子红外遥控定时程序开始,暂停怎么做

[复制链接]

5

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2011-2-1
在线时间
8 小时
发表于 2011-2-1 12:45:10 | 显示全部楼层 |阅读模式

求正点原子红外遥控定时程序开始,暂停怎么做.我的板是288元套件.第一次接触32位机,需要很多帮助.

#include <stm32f10x_lib.h>
#include "sys.h"
#include "usart.h"  
#include "delay.h" 
#include "led.h"
#include "key.h"
#include "exti.h"
#include "wdg.h"
#include "timer.h"
#include "lcd.h"   
#include "rtc.h"
#include "wkup.h"
#include "adc.h"
#include "dma.h"
#include "24cxx.h"
#include "flash.h"
#include "touch.h"
#include "24l01.h"
#include "mmc_sd.h"
#include "remote.h"
//Mini STM32开发板范例代码21
//红外遥控 实验
//正点原子@ALIENTEK
//2010.6.17 
       
int main(void)

 u8 key;
 u8 t;
 u8 pm;
 u8 ps;
 pm=20;
 ps=59;
             
   Stm32_Clock_Init(9);//系统时钟设置
 delay_init(72);  //延时初始化
 uart_init(72,9600); //串口1初始化    
 LCD_Init();   //初始化液晶 
 LED_Init();         //LED初始化   
 Remote_Init();     //初始化红外接收
       
  OINT_COLOR=RED;//设置字体为红色   
 LCD_ShowString(60,50,"Mini STM32"); 
 LCD_ShowString(60,70,"REMOTE TEST"); 
 LCD_ShowString(60,90,"ATOM@ALIENTEK");
 LCD_ShowString(60,110,"2010/6/17");
    
 LCD_ShowString(30,130, "KEYVAL:");
 LCD_ShowString(130,130,"KEYCNT:");  
 LCD_ShowString(30,150, "SYMBOL:");
 while(1)
 {  
  if(Remote_Rdy)
  {
   key=Remote_Process();
   LCD_ShowNum(86,130,key,3,16);//显示键值
   LCD_ShowNum(186,130,Remote_Cnt,3,16);//显示按键次数
   
   switch(key)
   {
    case 0:
     LCD_ShowString(86,150, "ERROR");
     break;
    case 162:
     LCD_ShowString(86,150, "POWER ");
     break;
    case 98:
     LCD_ShowString(86,150, "TH+  ");
     pm=pm+5;
     if(pm>=60)
       {
         pm=60;
      }
     break;
    case 2:
     LCD_ShowString(86,150, "RUN  ");
     break;
    case 226:
     LCD_ShowString(86,150, "HP   ");
     break;
    case 194:
     LCD_ShowString(86,150, "CH+   ");
     pm=pm+1;
     if(pm>=60)
        {
          pm=60;
         }
     break;
    case 34:
     LCD_ShowString(86,150, "CH-   ");
     if(pm<=0)
        {
          pm=1;
         }
     pm=pm-1;
     break;
    case 56:
     LCD_ShowString(86,150, "8     ");
     break;
    case 224:
     LCD_ShowString(86,150, "VOL-     ");
     break;
    case 168:
     LCD_ShowString(86,150, "TH-     ");
     if(pm<=5)
        {
          pm=5;
        }
     pm=pm-5;
     break;
    case 144:
     LCD_ShowString(86,150, "VOL+     ");
     break;
    case 104:
     LCD_ShowString(86,150, "1     ");
     break;
    case 152:
     LCD_ShowString(86,150, "2     ");
     break;
    case 176:
     LCD_ShowString(86,150, "3     ");
     break;
    case 48:
     LCD_ShowString(86,150, "4     ");
     break;
    case 24:
     LCD_ShowString(86,150, "5     ");
     break;
    case 122:
     LCD_ShowString(86,150, "6     ");
     break;
    case 16:
     LCD_ShowString(86,150, "7  ");
     break;
    case 90:
     LCD_ShowString(86,150, "9  ");
     break;
    case 66:
     LCD_ShowString(86,150, "0   ");
     break;
    case 82:
     LCD_ShowString(86,150, "TSHIFT");
     break;
   }
  }else delay_ms(2);
  t++;
  if(t==200)
  {
   t=0;
   delay_ms(1000);
   ps=ps-1;
   if(ps==0)
     {
       if(pm==0)
       {
         pm=1;
      }
       pm=pm-1;
    ps=59;
          }
      LCD_ShowNum(30,180,pm,15,16);
      LCD_ShowNum(30,200,ps,15,16);
   LED0=!LED0;
  }
 }
  }
 

    

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165352
金钱
165352
注册时间
2010-12-1
在线时间
2108 小时
发表于 2011-2-1 13:07:45 | 显示全部楼层
回复【楼主位】jdoushi:
-------------------------------
用红外遥控控制定时器的开启和关闭么?
可以参考红外遥控的例子和定时器的例子,把这两个例子结合起来就能实现你要的功能了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

5

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2011-2-1
在线时间
8 小时
 楼主| 发表于 2011-2-1 19:14:22 | 显示全部楼层
谢谢.那么具体的说systic和timer中那种方式,具体的命令语句,因为看了也看不懂,红外也好,触摸也好,给定时间以后开始计时,暂停的命令语句是那一个.
谢谢!

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165352
金钱
165352
注册时间
2010-12-1
在线时间
2108 小时
发表于 2011-2-1 19:37:11 | 显示全部楼层
回复【3楼】jdoushi:
-------------------------------
不存在暂停的指令,其实就是一个时钟的开关/使能既可。比如你用TIM3,开启的时候就使能TIM3的时钟,暂停的时候就关闭TIM3的时钟即可。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 14:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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