[创客交流] 2024年再玩navota开发板

[复制链接]
 楼主| 日狗狂魔 发表于 2024-4-15 22:50 | 显示全部楼层 |阅读模式
需要一个简单的延时。本来自己打板了,不过竟然找不到合适的LDO。看到了尘封的navota开发板,干脆就用这个做吧
舍得免费送开发板的厂家倒闭了,真可惜
然后上论坛找例程,改动一下就能用
以前的例程要用编译器5,我还得下载旧版keil把旧版编译器搞出来
成功点亮老开发板了
 楼主| 日狗狂魔 发表于 2024-4-16 16:10 | 显示全部楼层

  1. #include "common.h"
  2. #include "ics.h"
  3. #include "rtc.h"
  4. #include "uart.h"
  5. #include "kbi.h"
  6. #include "gpio.h"
  7. #include "sysinit.h"


  8. int main (void);
  9. void RTC_Task(void);
  10. void KBI0_Task(void);
  11. void KBI1_Task(void);
  12. int maiChongCiShu=0;//脉冲次数
  13. int waittime=0;//脉冲前等待时间
  14. int waittimeHOU=0;//脉冲后等待时间
  15. int dangWei=0;//挡位
  16. int dangWeix=0;//脉冲设置等待时间
  17. int main (void)
  18. {
  19.     uint8_t         u8Ch,i;
  20.         ICS_ConfigType  sICSConfig;
  21.     RTC_ConfigType  sRTCConfig;
  22.     RTC_ConfigType  *pRTCConfig = &sRTCConfig;      
  23.     KBI_ConfigType  sKBIConfig;
  24.   
  25.     /* Perform processor initialization */
  26.           sysinit();
  27.           printf("\nRunning the KBI_demo project.\n");
  28.     LED0_Init(); //D2,Middle
  29.     LED1_Init(); //D3,RIGHT
  30.     LED2_Init(); //D4,LEFT
  31.         LED1_Off();
  32.         LED0_Off();
  33.         LED2_Off();
  34.     /* configure RTC to 1Hz interrupt frequency */
  35.     pRTCConfig->u16ModuloValue = 9;                                      
  36.     pRTCConfig->bInterruptEn   = RTC_INTERRUPT_ENABLE;     /* enable interrupt */
  37.     pRTCConfig->bClockSource   = RTC_CLKSRC_BUS;          /*clock source is 1khz*/
  38.     pRTCConfig->bClockPresaler = RTC_CLK_PRESCALER_1024;    /*prescaler is 100*/
  39.    
  40.     RTC_SetCallback(RTC_Task);
  41.           RTC_Init(pRTCConfig);
  42.        
  43.           printf("\nin FEE mode now,");
  44.     UART_WaitTxComplete(TERM_PORT);   
  45.    
  46.     /* switch clock mode from FEI to FEE */
  47.     sICSConfig.u32ClkFreq = 32;
  48.     ICS_SwitchMode(FEE,FEI, &sICSConfig);


  49. //         printf("switch to FEI mode.\n");

  50.     OSC_Enable();
  51.    
  52.        /* Disable all the KBI pins */
  53.    for (i = 0; i < KBI_MAX_PINS_PER_PORT; i++)
  54.    {
  55.      sKBIConfig.sPin[i].bEn         = 0;
  56.    }
  57.    
  58.     sKBIConfig.sBits.bMode   = KBI_MODE_EDGE_ONLY;
  59.     sKBIConfig.sPin[0].bEdge = KBI_FALLING_EDGE_LOW_LEVEL;
  60.     sKBIConfig.sBits.bIntEn  = 1;
  61.     sKBIConfig.sPin[0].bEn   = 1;
  62.    
  63.     KBI_Init(KBI0, &sKBIConfig);
  64.     KBI_Init(KBI1, &sKBIConfig);
  65.     KBI_SetCallback(KBI0, &KBI0_Task);
  66.     KBI_SetCallback(KBI1, &KBI1_Task);
  67.    
  68.     /* echo chars received from terminal */
  69.          
  70.     GPIO_Init(GPIOA, GPIO_PTB2_MASK, GPIO_PinOutput);

  71.     /* set PTB2 output 0 */
  72.     GPIO_PinClear(GPIO_PTB2);


  73. }


  74. void RTC_Task(void)
  75. {
  76.         if(dangWeix>0)
  77.         dangWeix--;
  78.         if(waittimeHOU>0)
  79.         waittimeHOU--;
  80.         if(waittime>0)
  81.         waittime--;
  82.         else if(maiChongCiShu>0){
  83.     FGPIO_Toggle(FGPIOA, GPIO_PTB2_MASK);
  84.                 maiChongCiShu--;
  85.                 waittimeHOU=1000;
  86. }else
  87.         FGPIO_Write(FGPIOA,0);
  88. }


  89. void KBI0_Task(void)
  90. {
  91.    // LED2_Toggle();
  92.         if((waittime+maiChongCiShu+waittimeHOU)==0){
  93.         maiChongCiShu=dangWei*2+5;
  94.         waittime=256;
  95.         }
  96. }

  97. //DangWei,0-7,show By Led
  98.         //LED2,LED0,LED1=gao,zhong,di
  99. void KBI1_Task(void)
  100. {
  101.         if(dangWeix==0){
  102.         dangWei=(dangWei+1)%8;
  103.         dangWeix=1120;
  104.         if(dangWei&1)
  105.                 LED1_On();
  106.         else
  107.                 LED1_Off();
  108.        
  109.                 if(dangWei&2)
  110.                 LED0_On();
  111.         else
  112.                 LED0_Off();
  113.        
  114.                 if(dangWei&4)
  115.                 LED2_On();
  116.         else
  117.                 LED2_Off();
  118. }
  119. }
  120. /********************************************************************/


点焊机程序写好了,本来很简单。不过按键没硬件消抖,搞了好几次延迟
gaoyang9992006 发表于 2025-3-1 17:17 | 显示全部楼层
开发资料还有吗,这破网站怎么关门了,分享一下啊
lyt713 发表于 2025-7-1 19:30 | 显示全部楼层
我有一款工业打磨机也用这款芯片现在都找不到这个芯片了 咋整?求帮助
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

19

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部