打印
[STM8]

想问一下,STM8的PWM最高能输出多快?2MHZ可以吗?

[复制链接]
4906|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jd9945|  楼主 | 2009-12-21 20:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想问一下,STM8的PWM最高能输出多快?2MHZ可以吗?
沙发
司徒老鹰| | 2009-12-21 23:24 | 只看该作者
应该可以吧

使用特权

评论回复
板凳
videre| | 2009-12-22 11:04 | 只看该作者
typedef enum
{
    GPIO_Mode_In_FL_No_IT      = (uint8_t)0b00000000,         /*!< Input floating, no external interrupt */
    GPIO_Mode_In_PU_No_IT      = (uint8_t)0b01000000,         /*!< Input pull-up, no external interrupt */
    GPIO_Mode_In_FL_IT         = (uint8_t)0b00100000,         /*!< Input floating, external interrupt */
    GPIO_Mode_In_PU_IT         = (uint8_t)0b01100000,         /*!< Input pull-up, external interrupt */
    GPIO_Mode_Out_OD_Low_Fast  = (uint8_t)0b10100000,         /*!< Output open-drain, low level, 10MHz */
    GPIO_Mode_Out_PP_Low_Fast  = (uint8_t)0b11100000,         /*!< Output push-pull, low level, 10MHz */
    GPIO_Mode_Out_OD_Low_Slow  = (uint8_t)0b10000000,         /*!< Output open-drain, low level, 2MHz */
    GPIO_Mode_Out_PP_Low_Slow  = (uint8_t)0b11000000,         /*!< Output push-pull, low level, 2MHz */
    GPIO_Mode_Out_OD_HiZ_Fast  = (uint8_t)0b10110000,         /*!< Output open-drain, high-impedance level, 10MHz */
    GPIO_Mode_Out_PP_High_Fast = (uint8_t)0b11110000,         /*!< Output push-pull, high level, 10MHz */
    GPIO_Mode_Out_OD_HiZ_Slow  = (uint8_t)0b10010000,         /*!< Output open-drain, high-impedance level, 2MHz */
    GPIO_Mode_Out_PP_High_Slow = (uint8_t)0b11010000          /*!< Output push-pull, high level, 2MHz */

使用特权

评论回复
地板
habit| | 2010-3-16 11:54 | 只看该作者
速度那么快的话
占空比的分辨率就不够了吧?

使用特权

评论回复
5
grant_jx| | 2010-3-16 20:36 | 只看该作者
回3楼,这个定义与I/O能输出到少频率无管,影响的只是EMI特征。

定时器的时钟来自fMASTER,这个最快可以到24MHz(10x系列是16MHz),如果用16MHz时钟驱动定时器,2MHz PWM,每个周期8 cycle? 占空比的分辨率基本没剩下什么可调的了。

直接翻转IO也许更快些

使用特权

评论回复
6
bili| | 2010-3-18 14:37 | 只看该作者
用timer counter 来输出2MHz是不可能的,只有直接控制引脚输出
PWM才有可能

使用特权

评论回复
7
香水城| | 2010-3-18 21:20 | 只看该作者
用timer counter 来输出2MHz是不可能的,只有直接控制引脚输出
PWM才有可能
bili 发表于 2010-3-18 14:37


楼上为什么会这样说?

不必直接控制引脚输出,用TIM可以很容易地输出2MHz,12MHz都没有问题。

使用特权

评论回复
8
yybj| | 2010-3-18 21:35 | 只看该作者
是的,很容易实现

使用特权

评论回复
9
dotaallstar| | 2010-3-19 13:06 | 只看该作者
输出2M没什么问题,输出更高的话输出明显失真,俺发现输出9M已经不行了,上升沿大概20ns,稳定时间大概为160ns

使用特权

评论回复
10
香水城| | 2010-3-19 21:36 | 只看该作者
输出2M没什么问题,输出更高的话输出明显失真,俺发现输出9M已经不行了,上升沿大概20ns,稳定时间大概为160ns
dotaallstar 发表于 2010-3-19 13:06


输出9MHz时,请选用50MHz的输出驱动,不要使用2MHz或10MHz的驱动。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

26

主题

84

帖子

0

粉丝