【PSoC5】使用CY8CKIT-05编写按键控制舵机实验

最近实习,需要使用CY8CKIT-05编写相应的单片机控制实验,在B站上找到了两份非常好的初学者教程视频
话不多说,下面列出地址:

1、 https://www.bilibili.com/video/BV1fZ4y1u7kg?p=6
//这份是全英文的教程解说,但有明细的实验编写流程,看一遍就会操作,听不懂英文也没有关系。

2、https://www.bilibili.com/video/BV1Bb411s7QC?from=search&seid=14082822012665607266&spm_id_from=333.337.0.0
//这份就是从0开始教基本操作用法的中文解说,第一次接触该软件的时候可以听听,熟悉一下界面

1、功能设计要求

目的功能设计:设计一款系统,在按下(按住)按键时可以使得两台舵机的角度转150度,松开按键(默认状态)时舵机角度为0度。

2、建立顶层设计界面

顶层设计文件
双击该文件,发现界面一片空白,在这里你可以添加你需要的芯片功能。那如何添加呢?

2.1、添加PWM模块

PWM模块的添加有两种:可以在右边的搜索栏中输入“PWM”
在这里插入图片描述
将PWM[v3.30]拖出到中间的白色界面,就可以获得PWM的模块了,这种感觉有没有像是在搭积木?
然后第二种就是直接找了,也是在该目录依次点击Digital-Functions-PWM,然后将模块拖出来即可。
在这里插入图片描述
观察上面的图片,可以看出,要使用这个PWM模块,我们就还需要添加clock(时钟脉冲),reset(复位),pwm1/2(脉宽输出)至少三个部分的模块;同时,因为是按键控制舵机,还需要添加按键模块,文章稍后将会阐述。

2.2、修改PWM配置参数

双击PWM模块,可以得到类似下面的界面:
在这里插入图片描述

有几个点需要我们重点关注:
1、Resolution:8位/16位控制,对于舵机而言,位数越大越容易控制其位置,特别是位置需要严格控制的设置。
2、Period:这里设置周期为两千(这里输入脉冲为100kHz),因为这样能看到右边黑色粗体显示的周期时间为20ms,舵机的脉冲周期为20ms,是刚好符合舵机工作要求的。如果不是这个20ms的脉冲周期,极有可能会使得舵机无法正常工作,亲历。
3、PWM Mode:修改这个参数可以进行一路/两路/边沿等输出,我这里选择两路,使得一个PWM模块可以控制两路PWM的输出,且两路输出的脉冲宽度可以自由设定。
4、CMP Type1/2:修改电平的极性/两路电平变换等操作,这里选择默认的less。

关于舵机角度的控制,可以移步“舵机使用教材”等类似文章进行学习,此处不再阐述。
在这里插入图片描述

2.3、添加clock模块

在这里插入图片描述
操作同上,将Clock [v2.20]拖出来即可。

2.4、修改clock模块的参数

clock模块是作为PWM模块的输入脉冲而起作用的。双击该模块修改参数。
在这里插入图片描述
将频率修改为 100kHz,以供舵机周期的修改。

2.5、添加逻辑模块“0”

在右侧 Digital—— logic —— logic Low 0 可以找到这个模块,用于输出逻辑0,将其拖出。
在这里插入图片描述
在这里插入图片描述

2.6 添加并修改按键输入模块

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

双击该模块,修改参数。
1、名字修改为button。
2、将HW conncection的打钩部分去掉,因为按键不需要跟PWM进行物理逻辑上的连接。
3、中间Drive mode修改为 上拉电阻 Resistive pull up,因为需要检测按键按下时候时有效,检测低电平。
4、右侧Initial drive st修改为高电平,初始化为高电平,不能是低电平,否则两端都是低电平就没有电压差,引脚就不能检测电压了。

2.7、PWM输出引脚

和上面输入是同一个目录的,就在下面。
在这里插入图片描述
在这里插入图片描述

目前先更到这,后续再补。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值