梦溪开物

    1. 请教由UC3842控制的Boost电路问题 11/757 电源技术 2024-10-31
      maychang 发表于 2024-10-31 11:38 【UC3842震荡频率如何计算呢?】 查UC3842说明书,根据说明书中曲线计算。
      谢谢
    2. UC3842/3/4/5 开关电源国产替代芯片资料分享 6/898 开关电源学习小组 2024-10-31
      X噫吁戏X 发表于 2024-10-31 13:28 https://wenku.baidu.com/view/109f1840a75177232f60ddccda38376baf1fe08c.html?_wkts_=1730352319345& ...
      谢谢
    3. UC3843 DC升压电路 12/1446 电路观察室 2024-10-31
      请问3843振荡频率如何计算呢
    4. 请教由UC3842控制的Boost电路问题 11/757 电源技术 2024-10-31
      UC3842震荡频率如何计算呢?
    5. UC3842/3/4/5 开关电源国产替代芯片资料分享 6/898 开关电源学习小组 2024-10-31
      请问UC3843的开关频率是如何计算的呢
    6. 个人信息确认无误,使用E币支付邮费
    7. 辞旧:年底清仓,100+板卡来袭,有缘来领 135/10472 测评中心专版 2024-01-18
      申请板卡22:RENESAS EZ-CUBE(该工具已停止销售和更新) E币兑换。 申请理由:以前读书的时候,参加瑞萨的活动获得过一些板卡,只可惜CUBE工具以及停止售卖了,刚好EEWORLD论坛提供了这样一个获取CUBE调试下载器的机会,希望能够申请到RENESAS EZ-CUBE工具与之前的瑞萨开发板相配套,以便进行使用和测评。
    8. 辞旧:年底清仓,100+板卡来袭,有缘来领 135/10472 测评中心专版 2024-01-16
      申请板卡44号:DFRobot AS7341可见光谱传感器测评试用(DFROBOT sew0364)。 使用E币。 申请理由:以前只接触过环境光传感器,但是AS7341作为一个可见光谱传感器,包含8个可见光通道,具有很高的DIY设计潜能,例如用在阳台盆栽的环境信息监测,正好也有这个想法。   测评计划: 1、搭建MCU的集成开发环境 2、选择PIC单片机采集AS7341传感器输出的信息。 3、PIC单片机将采集的环境信息显示在屏幕上 4、对测评结果进行总结。
    9.   说到8位单片机不得不提ST自己的STM8系列单片机,这个系列单片机的低功耗性能比MSP430单片机要优秀一点点,之前想用来做物联网终端感知节点的,只不过资源稍微紧张了一点。  
    10. AVR单片机Microchip收购后,MPLAB X IDE也支持这一款单片机了,外设资源还是挺丰富的,使用起来也挺顺手的,当然价格也不便宜。
    11. PIC的8位单片机应该算非常经典了吧,它的佛结构内核以前上手难一点,不过Microchip推出的MPLAB软件已经客服了这一点,初始化配置变成了可视化配置了。这个系列的单片机最大的特点就是稳定。
    12. 报名应该简单一点的
    13. HC32F460 外部中断PC3 8/3038 国产芯片交流 2022-08-02
      梦溪开物 发表于 2022-8-1 20:26 /** \file main.c ** ** \brief This sample demonstrates how to set GPIO as output function. ...
      为了方便大家找问题,我把代码以帖子的形式展示出来了
    14. HC32F460 外部中断PC3 8/3038 国产芯片交流 2022-08-02
      官方外部中断代码
    15. HC32F460 外部中断PC3 8/3038 国产芯片交流 2022-08-02
      我用华大官方的例程,是可以实现PC3口的外部中断的
    16. HC32F460 外部中断PC3 8/3038 国产芯片交流 2022-08-01
      本帖最后由 梦溪开物 于 2022-8-2 09:33 编辑 /** \file main.c ** ** \brief This sample demonstrates how to set GPIO as output function. ** ** - 2018-10-14 1.0 zhangxl first version for Device Driver Library of GPIO. ** ******************************************************************************/ /******************************************************************************* * Include files ******************************************************************************/ #include "hc32_ddl.h" #include "led.h" #include "relay.h" #include "usart.h" #define IO1_PORT (PortC) #define IO1_PIN (Pin02) #define IO1_ExtiCh (ExtiCh02) #define IO1_EIR (INT_PORT_EIRQ2) #define IO2_PORT (PortC) #define IO2_PIN (Pin03) #define IO2_ExtiCh (ExtiCh03) #define IO2_EIR (INT_PORT_EIRQ3) static uint32_t u32ExtInt03Count = 0ul; static void ClkInit(void); void IO1_Callback(void); void IO1_Init(void); void IO2_Callback(void); void IO2_Init(void); void IO_Init(void); /** ******************************************************************************* ** \brief ExtInt03 callback function ** ** \param None ** ** \retval None ** ******************************************************************************/ void IO1_Callback(void) { if (Set == EXINT_IrqFlgGet(IO1_ExtiCh)) { //u32ExtInt03Count++; RLED1_TOGGLE(); Ddl_Delay1ms(3000); #ifdef __PRINT_TO_TERMINAL printf("External interrupt 03(SW2) interrupt occurrence: %d\n", u32ExtInt03Count); #endif /* clear int request flag */ EXINT_IrqFlgClr(IO1_ExtiCh); } } void IO2_Callback(void) { if (Set == EXINT_IrqFlgGet(IO2_ExtiCh)) { //u32ExtInt03Count++; GLED3_TOGGLE(); Ddl_Delay1ms(3000); #ifdef __PRINT_TO_TERMINAL printf("External interrupt 03(SW2) interrupt occurrence: %d\n", u32ExtInt03Count); #endif /* clear int request flag */ EXINT_IrqFlgClr(IO2_ExtiCh); } } /** ******************************************************************************* ** \brief SW2 init function ** ** \param None ** ** \retval None ** ******************************************************************************/ void IO1_Init(void) { /*�ⲿ�ж����yṹ��*/ stc_exint_config_t stcExtiConfig; /*irq���yṹ��*/ stc_irq_regi_conf_t stcIrqRegiConf; /*GPIO�ܽ����yṹ��*/ stc_port_init_t stcPortInit; /* configuration structure initialization */ MEM_ZERO_STRUCT(stcExtiConfig); MEM_ZERO_STRUCT(stcIrqRegiConf); MEM_ZERO_STRUCT(stcPortInit); /*****�ܽų�ʼ��*****/ /*�ⲿ�ж�ʹ��*/ stcPortInit.enExInt = Enable; PORT_Init(IO1_PORT, IO1_PIN, &stcPortInit); /*�����ⲿ�жϺ�*/ stcExtiConfig.enExitCh = IO1_ExtiCh; /*����������*/ stcExtiConfig.enFilterEn = Enable; stcExtiConfig.enFltClk = Pclk3Div8; /*�͵�ƽ������������ʽ��*/ stcExtiConfig.enExtiLvl = ExIntLowLevel; EXINT_Init(&stcExtiConfig); /*****�ⲿ�жϳ�ʼ��*****/ /*ѡ���ⲿ�жϺ�*/ stcIrqRegiConf.enIntSrc = IO1_EIR; /* ע���жϵ�ַ to Vect.No.001 */ stcIrqRegiConf.enIRQn = Int001_IRQn; /*���жϻص�����*/ stcIrqRegiConf.pfnCallback = &IO1_Callback; enIrqRegistration(&stcIrqRegiConf); /* Clear pending */ NVIC_ClearPendingIRQ(stcIrqRegiConf.enIRQn); /*�����ж����ȼ�*/ NVIC_SetPriority(stcIrqRegiConf.enIRQn, DDL_IRQ_PRIORITY_15); /*ʹ��NVIC*/ NVIC_EnableIRQ(stcIrqRegiConf.enIRQn); } void IO2_Init(void) { /*�ⲿ�ж����yṹ��*/ stc_exint_config_t stcExtiConfig; /*irq���yṹ��*/ stc_irq_regi_conf_t stcIrqRegiConf; /*GPIO�ܽ����yṹ��*/ stc_port_init_t stcPortInit; /* configuration structure initialization */ MEM_ZERO_STRUCT(stcExtiConfig); MEM_ZERO_STRUCT(stcIrqRegiConf); MEM_ZERO_STRUCT(stcPortInit); /*****GPIO�ܽų�ʼ��*****/ /*�ⲿ�ж�ʹ��*/ stcPortInit.enExInt = Enable; PORT_Init(IO2_PORT, IO2_PIN, &stcPortInit); /*****�ⲿ�жϳ�ʼ��*****/ /*�����ⲿ�жϺ�*/ stcExtiConfig.enExitCh = IO2_ExtiCh; /*�����˲���ʧ��*/ stcExtiConfig.enFilterEn = Enable; /*�����˲�������ʱ��ѡ��PCLK3/8*/ stcExtiConfig.enFltClk = Pclk3Div8; /*�͵�ƽ������������ʽ��*/ stcExtiConfig.enExtiLvl = ExIntLowLevel; EXINT_Init(&stcExtiConfig); /*****�ж�ע��*****/ /*ѡ���ⲿ�жϺ�*/ stcIrqRegiConf.enIntSrc = IO2_EIR; /* ע���ⲿ�жϵ�ַ to Vect.No.000 */ stcIrqRegiConf.enIRQn = Int000_IRQn; /*���жϻص�����*/ stcIrqRegiConf.pfnCallback = &IO2_Callback; enIrqRegistration(&stcIrqRegiConf); /* Clear pending */ NVIC_ClearPendingIRQ(stcIrqRegiConf.enIRQn); /*����NVIC���ȼ�*/ NVIC_SetPriority(stcIrqRegiConf.enIRQn, DDL_IRQ_PRIORITY_15); /*ʹ��NVIC*/ NVIC_EnableIRQ(stcIrqRegiConf.enIRQn); } /** ******************************************************************************* ** \brief Main function of GPIO output ** ** \param None ** ** \retval int32_t Return value, if needed ** ******************************************************************************/ int32_t main(void) { // ClkInit(); //ϵͳʱ�ӳ�ʼ�� LED_Init(); //LED��ʼ�� // RELAY_Init(); //�̵�����ʼ�� // USART1_init(115200); //���ڳ�ʼ����������Ϊ115200 // IO1_Init(); IO2_Init(); while(1) { YLED2_TOGGLE(); Ddl_Delay1ms(100); }; } /** ******************************************************************************* ** \brief Initialize Clock. ** ** \param [in] None ** ** \retval None ** ******************************************************************************/ static void ClkInit(void) { stc_clk_xtal_cfg_t stcXtalCfg; stc_clk_mpll_cfg_t stcMpllCfg; en_clk_sys_source_t enSysClkSrc; stc_clk_sysclk_cfg_t stcSysClkCfg; MEM_ZERO_STRUCT(enSysClkSrc); MEM_ZERO_STRUCT(stcSysClkCfg); MEM_ZERO_STRUCT(stcXtalCfg); MEM_ZERO_STRUCT(stcMpllCfg); /* Set bus clk div. */ stcSysClkCfg.enHclkDiv = ClkSysclkDiv1; stcSysClkCfg.enExclkDiv = ClkSysclkDiv2; stcSysClkCfg.enPclk0Div = ClkSysclkDiv1; stcSysClkCfg.enPclk1Div = ClkSysclkDiv2; stcSysClkCfg.enPclk2Div = ClkSysclkDiv4; stcSysClkCfg.enPclk3Div = ClkSysclkDiv4; stcSysClkCfg.enPclk4Div = ClkSysclkDiv2; CLK_SysClkConfig(&stcSysClkCfg); /* Switch system clock source to MPLL. */ /* Use Xtal as MPLL source. */ stcXtalCfg.enMode = ClkXtalModeOsc; stcXtalCfg.enDrv = ClkXtalLowDrv; stcXtalCfg.enFastStartup = Enable; CLK_XtalConfig(&stcXtalCfg); CLK_XtalCmd(Enable); /* MPLL config. */ stcMpllCfg.pllmDiv = 1u; /* XTAL 8M / 1 */ stcMpllCfg.plln = 50u; /* 8M*50 = 400M */ stcMpllCfg.PllpDiv = 4u; /* MLLP = 100M */ stcMpllCfg.PllqDiv = 4u; /* MLLQ = 100M */ stcMpllCfg.PllrDiv = 4u; /* MLLR = 100M */ CLK_SetPllSource(ClkPllSrcXTAL); CLK_MpllConfig(&stcMpllCfg); /* flash read wait cycle setting */ EFM_Unlock(); EFM_SetLatency(EFM_LATENCY_4); EFM_Lock(); /* Enable MPLL. */ CLK_MpllCmd(Enable); /* Wait MPLL ready. */ while (Set != CLK_GetFlagStatus(ClkFlagMPLLRdy)) { } /* Switch system clock source to MPLL. */ CLK_SetSysClkSource(CLKSysSrcMPLL); } void IO_Init(void) { stc_port_init_t stcPortInit; /* configuration structure initialization */ MEM_ZERO_STRUCT(stcPortInit); /*����ģʽ*/ stcPortInit.enPinMode = Pin_Mode_In; /*�ڲ���������*/ stcPortInit.enPullUp = Enable; PORT_Init(IO2_PORT, IO2_PIN, &stcPortInit); } /******************************************************************************* * EOF (not truncated) ******************************************************************************/  
    17. 请问反激电源变压器的初级绕组的匝数如何计算呢?
    18. 【平头哥RVB2601创意应用开发】LoRa网关无线上位机 9/2629 玄铁RISC-V活动专区 2022-05-29
      时间的获取是通过什么方式实现的呢?
    19. 【平头哥RVB2601创意应用开发】LoRa网关无线上位机 9/2629 玄铁RISC-V活动专区 2022-05-29
      作者这里的时间获取是传感器采集数据的时间,还是RVB2601上传云平台的时间呢?  
    20. 【平头哥RVB2601创意应用开发】网络天气时钟 5/1830 玄铁RISC-V活动专区 2022-05-29
      AOS软件定时器是如何实现年、月、日、时、分和秒的获取的呢?

统计信息

已有72人来访过

  • 芯积分:510
  • 好友:1
  • 主题:22
  • 回复:127

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言