请选择 进入手机版 | 继续访问电脑版
查看: 2497|回复: 1

EMW3080B io口翻转时间问题

[复制链接]

5

主题

17

帖子

136

积分

注册会员

Rank: 2

积分
136
发表于 2019-6-9 21:47:28 | 显示全部楼层 |阅读模式
本帖最后由 a2633063 于 2019-6-12 08:03 编辑

代码如下:使用

  1. //#define Led         MICO_GPIO_13
复制代码
  1. MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  2.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  3.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  4.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  5.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  6.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  7.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
  8.     MicoGpioOutputHigh( Led );MicoGpioOutputLow( Led );
复制代码


之后用逻辑分析仪抓出:


高电平时间为1.25us左右 低电平除了一个2.417us其他都是1.167us
怎么会这样?
我需要控制一个单线控制的rgb灯  需要高电平脉冲在0.5us左右  如何实现?

(拆解目前市场上量产的设备是可以控制的)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

61

帖子

158

积分

管理员

mxchip小助手_0556

Rank: 9Rank: 9Rank: 9

积分
158
发表于 4 天前 | 显示全部楼层
用PWM
\mico-demos\mico-os\include\MiCODrivers\MiCODriverPwm.h

/**@brief Initialises a PWM pin
*
* @note  Prepares a Pulse-Width Modulation pin for use.
* Does not start the PWM output (use @ref MicoPwmStart).
*
* @param pwm        : the PWM interface which should be initialised
* @param frequency  : Output signal frequency in Hertz
* @param duty_cycle : Duty cycle of signal as a floating-point percentage (0.0 to 100.0)
*
* @return    kNoErr        : on success.
* @return    kGeneralErr   : if an error occurred with any step
*/
OSStatus MicoPwmInitialize(mico_pwm_t pwm, uint32_t frequency, float duty_cycle);


/**@brief Starts PWM output on a PWM interface
*
* @note  Starts Pulse-Width Modulation signal output on a PWM pin
*
* @param pwm        : the PWM interface which should be started
*
* @return    kNoErr        : on success.
* @return    kGeneralErr   : if an error occurred with any step
*/
OSStatus MicoPwmStart(mico_pwm_t pwm);


/**@brief Stops output on a PWM pin
*
* @note  Stops Pulse-Width Modulation signal output on a PWM pin
*
* @param pwm        : the PWM interface which should be stopped
*
* @return    kNoErr        : on success.
* @return    kGeneralErr   : if an error occurred with any step
*/
OSStatus MicoPwmStop(mico_pwm_t pwm);

/**@brief Set duty_cycle on a PWM pin
*
* @note  Sets duty_cycle no matter PWM is used
*
* @param pwm        : the PWM interface which should be initialised
* @param duty_cycle : Duty cycle of signal as a floating-point percentage (0.0 to 100.0)
*
* @return    kNoErr        : on success.
* @return    kParamErr   : if an error occurred with any step
*/
OSStatus MicoPwmSetDuty(mico_pwm_t pwm, uint32_t frequency, float duty_cycle);
回复

使用道具 举报

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

本版积分规则

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