找回密码
 立即注册

QQ登录

只需一步,快速开始

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

关于STC单片机的红外遥控程序移植到锦锐MCU

[复制链接]
跳转到指定楼层
楼主
ID:499742 发表于 2022-10-18 20:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用STC单片机的红外遥控搬到锦锐MCU CA51F5513S上就不行,哪位用过锦锐MCU的帮忙看看,谢谢。

单片机源程序如下:
  1. #ifndef _MAIN_C_
  2. #define _MAIN_C_
  3. /*********************************************************************************************************************/

  4. #include "include/delay.h"
  5. #include "include/time.h"
  6. #include "include/ca51f5_config.h"               
  7. #include "include/ca51f5sfr.h"
  8. #include "include/ca51f5xsfr.h"
  9. #include "include/gpiodef_f5.h"
  10. #include "include/system_clock.h"
  11. #include "include/uart.h"
  12. #include <intrins.h>

  13. #define nop()           _nop_();
  14. #define LED1                  P03                                       
  15. #define LED2                  P02
  16. #define LED3                  P00                                       
  17. #define LED4                  P01
  18. #define LED5                  P34
  19. #define LED6                  P33
  20. #define BEE1                  P05
  21. ////////////////////////////////////////////
  22. #define KEY1                  P07                                       
  23. #define KEY2                  P30
  24. #define KEY3                  P31                                       
  25. #define KEY4                  P35
  26. #define IR                          P32        //IR&RF遥控输入
  27. #define RF_OUT                P04




  28. /**************************************************************************
  29. *函数名:IOInit(void) //
  30. *功  能:IO口初始化
  31. *-------------------------------------------------------------------------

  32. **************************************************************************/
  33. void IO1Init(void)
  34.         {


  35.          P03F = OUTPUT;
  36.          P02F = OUTPUT;        
  37.          P01F = OUTPUT;
  38.          P00F = OUTPUT;
  39.          P34F = OUTPUT;
  40.          P33F = OUTPUT;
  41.                
  42.          P07F = INPUT;        
  43.          P30F = INPUT;
  44.          P31F = INPUT;
  45.          P35F = INPUT;        
  46.                         
  47.          P04F = OUTPUT;        
  48.          P05F = OUTPUT;        
  49.          nop();
  50.          LED1 = 0;
  51.          LED2 = 0;        
  52.          LED3 = 0;
  53.          LED4 = 0;
  54.          LED5 = 0;
  55.          LED6 = 0;
  56.          nop();
  57.         }


  58. ///**************************************************************************
  59. //*函数名:Key_Scan(void)
  60. //*功  能:按键扫描
  61. //**************************************************************************/
  62. void pow_key(void)
  63. {

  64.         if(KEY1==0)
  65.         {
  66.                 Delay_ms(5);
  67.                 if(KEY1==0)
  68.                 {
  69.               while(!KEY1);   
  70.                            LED1=1;         
  71.                           BEE1=1; Delay_ms(50);BEE1=0;


  72.                 }
  73.         }

  74.                 if(KEY2==0)
  75.         {
  76.                 Delay_ms(5);
  77.                 if(KEY2==0)
  78.                 {
  79.               while(!KEY2);        
  80.                         BEE1=1; Delay_ms(50);BEE1=0;
  81.                          LED2=1;nop();
  82.                         Delay_ms(300);LED4=1;
  83.                   
  84.                 }
  85.         }
  86.         
  87.                 if(KEY4==0)
  88.         {
  89.                 Delay_ms(5);
  90.                 if(KEY4==0)
  91.                 {
  92.               while(!KEY4);
  93.                         BEE1=1; Delay_ms(50);BEE1=0;
  94.         LED1=0;nop();
  95.                                 LED2=0;nop();
  96.                                 LED3=0;nop();
  97.                                 LED4=0;nop();
  98.                                 LED5=0;
  99.                                 LED6=0;
  100.                 }
  101.         }
  102.         
  103.                 if(KEY3==0)
  104.         {
  105.                 Delay_ms(5);
  106.                 if(KEY3==0)
  107.                 {
  108.               while(!KEY4);
  109.                         BEE1=1; Delay_ms(50);BEE1=0;
  110.         LED3=1;
  111.                           Delay_ms(300);
  112.         LED5=1;
  113.                 }
  114.         }
  115. }



  116. //****************************************************************




  117. /**************************************************************************
  118. *函数名:void main(void)
  119. *功  能:主程序入口
  120. *输入量:
  121. *输出量:
  122. *-------------------------------------------------------------------------
  123. *说  明:
  124. **************************************************************************/
  125. void main(void)
  126. {        
  127.   IO1Init();
  128.         Timer1Init();          //初始化定时器0        
  129.         EX0_init();             //INT0初始化
  130.         EA = 1;                                                                        //开全局中断

  131.         while(1)
  132.         {        
  133.                 pow_key();        
  134.     rem_key();
  135. }
  136. }




  137. #endif
复制代码


IR_DEC1.rar

129.66 KB, 下载次数: 13

源程序

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

使用道具 举报

沙发
ID:123289 发表于 2022-10-19 09:41 | 只看该作者
学会看芯片手册,比较一下两者的硬件、软件区别。
回复

使用道具 举报

板凳
ID:879348 发表于 2022-10-20 11:42 | 只看该作者
怎么可能有人帮你看这个,我们只能讲下思路,关键是时序,涉及时间精确的地方一定要搞清楚
回复

使用道具 举报

地板
ID:195496 发表于 2022-10-21 08:13 | 只看该作者
开发平台不一样,会有细节异
回复

使用道具 举报

5#
ID:195496 发表于 2022-10-21 11:24 | 只看该作者
你的型号写错了吧,我找到有CA51F551S3
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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