你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

最容易实现的方波信号发生器(已用在步进电机的最佳驱.....

[复制链接]
fanjiezz 发布时间:2018-12-25 14:56
简易可调方波发生器1 S2 Y3 z9 X! [" q
硬件:; J- @" d. i* E# M+ ]2 ~
ESP- WROOM -32 一块  约21元
) N: w: d) K1 p0 S
1 G: T7 j9 x* u  e5 c3 D
旋转编码器 一个           约2元$ B+ W+ g0 ^0 w$ R1 `
; W: G* ?4 f% R8 m1 n7 X, p6 G$ u
软件:upycraft 1.0
4 [5 K9 }; f( W, N& X: j# @1 L代码如下:
& G8 v; G, j+ D" _- K+ x3 ]<#square wave  ESP32 20181222.py
1 q7 K* w( _3 J: l9 q' y5 t5 yfrom machine import Pin,PWM: |  s6 D8 x. G* c4 q
import time
) Z; g% g' ?5 g, V/ U3 h& V6 _0 m" u8 `! P, J0 i
plus = oldplus  = 0
: K3 B3 z9 P2 x/ q' dstep = 10              #步进值 >=1
2 S+ \/ a3 r) tstepmax = 10000   #最高频率 <= 78000HZ
% h$ r- n7 b) }6 q* Estepmin = 100       #最低频率 >=1
- w3 c+ W7 k8 @, v1 @IN1 = Pin( 25, Pin.IN , Pin.PULL_UP)   # 脚为旋转编码器上拉输入IN1
+ A% C6 s+ {& v1 `& Z: c! A. u4 mIN2 = Pin( 26, Pin.IN , Pin.PULL_UP)   # 脚为旋转编码器上拉输入IN2
  W* z9 V0 {& D4 u% [! P* j6 ]! O0 X% _" G. W2 o/ ]6 B6 `) H) E
while 1:
& L- E# L( @2 ?/ |+ [/ @' q    if ( IN1.value()  &  IN2.value() ): #当IN1及IN2均为高电平时开始计数准备1 h, q! P: \# D0 B$ B9 j
        time.sleep_ms( 5 )7 |6 U. ?. L$ a5 Z. |
        if  IN1.value() < 1 :* N% @5 y! ?1 U, g! U5 ~3 a
            plus = plus + step         #当IN1为低电平时正计数            

: i. ]+ U9 \3 d            if  plus > stepmax:
/ q& i; ~/ H) u+ \2 U+ V8 }9 t3 p                plus = stepmax
' l. _  g2 H- \0 }* {, {" ?
        if  IN2.value() < 1 :! r+ P- Q! n: _' U
            
plus = plus - step          #当IN2为低电平时倒计数
* I* r; D3 w! V0 k2 n: z) T            if  plus < stepmin:0 K+ p% [8 A1 ?; Z
                plus = stepmin- Z; V. I8 z) K! n" T  p# u
    if plus != oldplus:
. E5 t0 D/ n0 C* ]' o. Z        oldplus = plus
/ s1 G1 @" w4 @: r: U1 ~        pwmn = PWM( Pin( 23 ), freq = plus, duty = 512 )
5 ~" K+ ?& C% E7 }        print( plus )                     #打印监视% [- {) O4 I5 K" v( T
    #time.sleep_ms( 50 )           #可不用

7 b( H3 N" C/ d5 F* W>+ W; H% T5 y- F( z
  已用于步进电机的最佳数据测试中。
3 b" T3 W& p: o9 N8 h1 F  后续再加一块Nokia5110 lcd显示屏作为显示,也用upycraft 1.0编程的。
6 V6 [) p) O# Q/ v5 \" S! `# g  用其他的同类低端器件也能实现上述目的,因后续需要用于其他方面及WIFI和BLE等,所以选了ESP32芯片。4 b: {7 _7 t1 Q" i
# o  P5 \/ t$ Y% p5 Z
                                  望引玉!
/ e$ u' D6 d3 [( O# t

0 _: x8 ~+ z! [# [                谢谢!7 m% s, c. Z4 J4 U# b7 t5 v

' p, H" T4 j$ E3 N7 B( O- M/ x# g% \- E: T
收藏 评论5 发布时间:2018-12-25 14:56

举报

5个回答
tanic 回答时间:2018-12-25 15:25:28
什么鬼
leisyuer 回答时间:2018-12-26 09:09:09
为什么你的旋转编码器这么便宜?才2元一个?
fanjiezz 回答时间:2018-12-26 10:14:07
; k1 ^3 c. U7 W3 j$ s
fanjiezz 回答时间:2018-12-26 13:02:01
http://img1.ph.126.net/XloJ93BoO ... 066122257078739.png
' L' c7 T4 n7 z4 o& o/ O) W图像发不出来,发个链接。
fanjiezz 回答时间:2018-12-26 16:35:25
昨晚已将Nokia LCD程序发出。请看链接:2 {$ @! q  t. V3 R( B& ]! H
https://www.stmcu.org.cn/module/forum/thread-618860-1-1.html
2 c/ g$ Q5 P% ]2 F* R- M; R2 |+ Z5 }# P, {' z
另外:今天已发了一幅旋转编码器图和一个旋转编码器图链接,发不上来。

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版