立即注册
查看: 1013|回复: 0

[资料] SigmaStar Camera PWM使用参考

已绑定手机
发表于 2021-4-13 15:23:18 | 显示全部楼层 |阅读模式 来自 广东省深圳市
LINUX PWM 控制:
1. Motor hierarchy
Group 0
PWM 0
PWM 1
PWM 2
PWM 3
Group 1
PWM 4
PWM 5
PWM 6
PWM 7
Group 2
PWM 8
PWM 9
PWM 10

2. Cd 马达控制路径
Command:cd /sys/devices/virtual/Mstar/motor

3. Set mode/period(frequency) / Begin/End / round number/enable/hold/stop
mode
Command:echo PWM_ID enable > group_mode
ex : echo 0 1 > group_mode # 设定 PWM0 为马达模式
ex : echo 0 0 > group_mode # 取消 PWM0 为马达模式

period
Command:
echo PWM_ID period > group_period
In our driver implementation, xxxx indicates output frequency
ex: echo 0 2000 > group_period # PWM0 will generate 2KHz waveform

begin
Command:
echo PWM_ID begin > group_begin
ex: echo 0 10 > group_begin # PWM0 will generate duty_cycle starting from 10% of the period

......

Mode 0 (keep pwm state)
在拉 hold 期间更改设定,且 pwm 值保持原始
Mode 1 (pull low)
在拉 hold 期间更改设定,但 pwm 值数完最后一个 period 后会拉 low

Hold 0 会有 interrupt, 这个 interrupt 是下了 hold 0 之后, 这个 period 结束, HW 会发 interrupt,
然后 driver 在 ISR 里头填新的参数, 取消 hold 0, 然后 PWM 就会产生新的参数的波型了
所以操作应该是这样
红色代表是 AP(客户) 的操作
蓝色代表是 Driver 的操作
绿色代表是 HW 的行为


填参数→enable 之后, 以下分成 hold 0/1 来解释
1. Hold 0
A. 下新的参数 (驱动先把新的参数放在内存中) →打开hold 0→一个period结束/保持最后波型→( ISR ) 驱动从内存把参数回填 PWM/放开 hold 0→产生新的波型
2. Hold 1
A. 打开 Hold 1 →一个 period 结束/波形拉低→ (AP 确定 period 结束) 下新的参数→放开 Hold 1→产生新的波形



更多内容请下载附件查看
游客,如果您要查看本帖隐藏内容请回复

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

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表