打印

专家详解:如何用PSoC 4简化设计流程?

[复制链接]
1246|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
u880|  楼主 | 2014-8-27 08:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

最近我被要求设计一款双通道讯号转换器,从双极输入电压到双极输出电流;我马上假设这应该是一个纯类比设计,但有些事情却困扰了我。其中一个明确的需求是,每个通道要有一颗根据输入讯号变化亮度的双色LED,并以红灯或是绿灯来分别指示讯号为正或是负。

  这会遇到两个问题;第一,LED驱动会需要升压,所以没有接近零的死区;第二,我可以预见一个状况是当讯号为负,LED(以及可能是输出)却呈现正值,反之亦然。这种状况的机械当量称作为后座力(backlash)。我认为并非要采用可变电压来驱动LED,而是采用PWM驱动器如Linear的LTC6992,但我仍会产生一个偏移,也无法解决后座力的问题。

  此外,我会需要两颗PWM驱动器(每个通道一颗),这也可能得增加额外的电路让LED由红变绿;于是一个合乎逻辑的作法是去找适合的低阶微控制器(MCU)。

  我先从Microchip的产品找起,但我发现适合的是**体容量较小的16C系列,意味着得使用组合语言。我曾在其他的开发案使用过16C系列,却遇到指令集不足(该系列MCU是RISC架构元件)以及**体区段(memorysegmentation)问题;因为这样的偏见,我又找了NXP的元件以及Freescale的ARMCortex-M0晶片。

  因为选择太多,我开始犹豫不决。不过以前我曾在一个案子采用Freescale的CodeWarrior开发环境,却发现我们得额外付费才能取得我们需要的支援服务,这又让我产生偏见。

  总之我现在可以告诉你,我已经成为Cypreess的PSoC 的支持者。我曾采用PSoC 1做过许多个小规模设计案,以及用PSoC 5做过一个大型设计;我也听过一些关于采用ARMCortex-M0核心的PSoC 4的一些热门讨论,但看到PSoC 4的价格,实在是令我惊喜。

  还好我的设计案在价格上有一些机动性,而且据了解,PSoC 的配置灵活性通常能减少一些外部元件的运用;当然,我们已经有仿真器以及一些经验,所以我决定进一步看看这款元件以及搭配的PSoC 4PioneerKit开发工具(可相容Arduino外壳)。该款开发工具采用多才多艺的PSoC 4200系列元件,这也成为我的设计案出发点。

  想知道更多与PSoC 相关的资讯?请连结Cypress资源中心

  Cypress提供了很棒的开发环境PSoC Creator,能让你进行产品配置、编程以及除错;PSoC 的架构介于MCU与FPGA之间,除了处理器核心,该元件具备一些可配置的类比电路,以及一些可编程数位电路(不过与FPGA的又不太相同)。开发者也能随着元件取得一系列所需功能IP进行配置;该开发环境如下图所示。

  PSoC Creator开发环境


沙发
u880|  楼主 | 2014-8-27 08:29 | 只看该作者
如果你需要ADC,只要从开发环境右方的元件选择区选择该功能区块并拖曳下来;如果你需要PWM,也是一样的步骤。要运算放大器或是SPI控制器吗?也没问题!把它们连结在一起以取得一个架构图,然后选择哪些接脚与不同的功能关联,完成了硬体编译,就可以准备好撰写应用程式。

  每个你所配置的元素都有其代码与标头,在开发环境的“WorkspaceExplorer”区域可以找到;所有的API呼叫包含在标头档案中,能轻易地复制剪贴到你的程式码中。在开发环境的右下角可以看到符号与“OpenDatasheet”选项,每个零件都有自己的规格表,你能在进行配置前先取得,或是在配置完成后按滑鼠右键来取得。

  PSoC Creator还包含免费的KeilC编译器,可提供的支援也是免费的;令我个人满意的是,此系统并非以Eclipse为基础。如果你真的想要冒险,你也可以采用一种Cypress称为“datapaths”的技巧,打造小型硬体机器或其他功能。甚至还可以使用Verilog语言。

使用特权

评论回复
板凳
waitingf| | 2014-8-27 20:41 | 只看该作者
读了很有启发

使用特权

评论回复
地板
someonewho| | 2014-8-27 20:50 | 只看该作者
专家的经验确实很值得学习的

使用特权

评论回复
5
specialfrin| | 2014-8-27 21:09 | 只看该作者
受益匪浅 支持一下

使用特权

评论回复
6
someontime| | 2014-8-27 21:37 | 只看该作者
没事就应该上Cypress资源中心看看呀

使用特权

评论回复
7
justbybing| | 2014-8-27 21:58 | 只看该作者
多向大神学习

使用特权

评论回复
8
acer4736| | 2014-8-28 08:11 | 只看该作者
如果讲的再详细一些就更好了

使用特权

评论回复
9
jinpaidianzi| | 2014-8-28 08:15 | 只看该作者
专家将的果然很专业

使用特权

评论回复
10
teabottle| | 2014-8-28 08:19 | 只看该作者
支持 写的不错

使用特权

评论回复
11
wangjinlili| | 2014-8-28 08:21 | 只看该作者
很有道理 不得不说软件很好用

使用特权

评论回复
12
meishizhaoshi| | 2014-8-28 08:26 | 只看该作者
学习学习 多谢分享

使用特权

评论回复
13
shibalihuandao| | 2014-8-28 08:28 | 只看该作者
貌似不是很详细 只是大概说了说

使用特权

评论回复
14
zgsxhzac| | 2014-8-28 08:32 | 只看该作者
言简意赅 读了很有启发

使用特权

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

本版积分规则

252

主题

1795

帖子

3

粉丝