广告

换用知名厂商的微控制器之后,收银机却不工作了!

2019-09-12 15:24:07 Andrzej Winczura,资深嵌入式系统工程师 阅读:
在推出速度更快、拥有更多新功能的产品之压力下,有可能会搞砸整个产品。

大概在我上次说过的那个故事发生后一年左右,我们接下另一款收款机开发案;当时我们原本使用的微控制器(MCU,以下称μC)是8051架构,但后来决定采用一个供货商经常鼓励我们使用的、某个知名厂商推出的最新版本μC,因为该新版组件有许多新添加的功能,包括较高速度的核心、次级数据指针缓存器(second DPTR)、内建SPI接口、全多任务UART、可程序化逻辑、内部闪存…等等。rAHednc

我们想用这种新的μC以及其部份新功能来打造更先进版本的收款机,其中一个就是内建的全多任务UART,这能让我们的收款机与外部世界的通讯更快,而且相较于前一代机型可处理更大笔金额。利用该款μC的开发版,我们确定它可能达成我们的目标;在进行一些测试之后,我们开始设计主板以及韧体的开发。rAHednc

当我们几乎完成新型收款机的硬件与韧体最终版本设计,在性能测试中,我们有时候会发现到奇偶校验错误(parity error)。一开始我们认为那是韧体的错误,该韧体完全是以汇编程序码撰写,而且问题只会偶尔发生,特别是当我们在某人操作收款机时传送大量数据。我们无法分辨那是PC主机传送了错误字节(内含错误奇偶校验位),还是μC的UART就是无法收到错误的数据。rAHednc

在经过几天的测试后,我们几乎可以确定问题来自于μC的UART。利用开发板,我们准备了一个专用程序从UART_A传送连续数据至UART_B,然后让UART_B将接收到的数据回传,结果是延迟递增。我们在示波器上观察到,若UART_B在接收到一个奇偶校验位(parity bit)的同时也在写入一个要传送的奇偶校验位,当所收到的奇偶校验位与要传送的奇偶校验位不同,μC的UART就会显示奇偶校验错误。rAHednc

这清楚地告诉我们:该款μC的UART功能模块是问题所在。我们将观察结果告诉μC制造商,要求他们对我们观察到的现象提出解释,他们第一次的回答是不可能,问题一定出在我们的程序代码上;所以第二次我们自己先做了功课,将程序代码以及一些我们从示波器观察到的影像一并传送给μC制造商。rAHednc

经过大约两个月,我们收到确认的讯息,μC制造商发现其组件的内建UART确实有一个小错误,但是很遗憾,得等到他们修正该款芯片的光罩组才能解决。这不会很快发生,我们却有时间压力,于是我们改变了韧体的行为,并接受在收款机与其主机之间的数据交换速度比需要更慢,才能维持稳定。rAHednc

这一次我们学到的教训是:在推出速度更快、拥有更多新功能的产品之压力下,有可能会搞砸整个产品。rAHednc

(参考原文: Judge awards Broadcom double damages in Qualcomm patent case,by Andrzej Winczura;本文作者是来自波兰的工程师,自称在青少年时期就中了「电子杆菌」,在波兰一家电子收款机制造商ELZAB工作了20年,一开始是硬件与韧体设计师,过去六年则是为嵌入式系统开发应用程序;编译:Judith Cheng)rAHednc

本文为电子技术设计原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 为什么步进电机的微步没有想象的那么好? 在使用步进电机设计运动控制系统时,不能假设电机的额定保持转矩在微步时仍然适用,因为增量转矩会大大降低。这可能会导致意外的定位误差。在某些情况下,增加微步分辨率并不能提高系统精度。
  • 用于高达10kA功率扼流圈测量的晶闸管脉冲发生器 Bs&T Frankfurt am Main GmbH公司开发了一种基于晶闸管的新型脉冲发生器,并在各种感性功率器件上进行了测试。该脉冲发生器具有一些得益于晶闸管高脉冲电流处理能力的独特特性,与基于IGBT的系统相比,它具有一些主要优势。
  • 意法半导体CEO Jean-Marc Chéry:“有所度量才能有所 在刚开始找工作时,要能够通过有形的结果公平地量化自己对使命的附加值和参与度。有所度量才能有所提高。
  • Microchip CEO Steve Sanghi:“领导者应独出心裁” 我能给出的主要建议是,领导者应独出心裁。领导者在领导他人看问题和做事情时应与众不同,并应能变不可能为可能。我们要勇于挑战自己,多和有能力的人相处。还要为员工下放更多的权力,以便促进他们释放出自己的全部潜力。
  • 拆解10元4个的人体感应灯:一个鼓包,一个漏液… 前一阵子10元包邮买了4个TCL华瑞照明人体感应灯,2个正白、2个暖白。拆开看了一下,发现4个人体感应灯自带的锂电池容量不大且不带保护板,那2个不能点亮的锂电池,一个鼓包,一个漏液,都过放了……
  • 智能楼宇不只是能源管理 新冠疫情的到来,引发了我们在如何在办公室、工厂和商店等室内环境更智能、安全地进行社交和协作方面更多的思考与讨论。
  • 一文带你了解降压型稳压芯片原理 在电路系统设计中,总是离不开电源芯片的使用,林林总总的电源芯片非常多,比如传统的线性稳压器7805、低压差线性稳压器(LDO)、开关型降压稳压器(Buck DCDC)等,那么它们到底有什么区别呢?
  • 【资料专题】Cadence® Integrity™ 3D-IC 平台
  • 同时利用PIC两种外设输出的电路 在PIC微控制器中,MSSP(主同步串行端口)模块是利用多路复用引脚来应对I2C和SPI两种外设。使用这两个外设中的任何一个通常都没有问题。但是,如果要同时使用这两种外设而不改变微控制器该怎么办呢?
  • 25kW SiC直流快充设计指南(第五部分):控制算法、调制方 在本系列文章的第一至第四部分中,我们从硬件角度分享并广泛介绍了25kW电动汽车充电桩的开发。第五部分则将从另一个维度深入探讨充电桩设计,我们将针对此类系统的控制策略和算法实现进行探讨,并提供实用见解。
  • 新MIPS公司将推出两款RISC-V微处理器 据Banatao声称,MIPS公司目前已经签署了一份合同,为一家汽车技术公司提供一种新的处理器设计。
  • 拆解:Tile Mate蓝牙追踪器依靠软件工作 本文要拆解的是一款Tile Mate蓝牙追踪器。Tile是一个与其他东西连接或有其他关联的追踪器,同时也是一种寻找物品的防丢小帮手。透过Tile,甚至可以找到之前遍寻不着的“其他东西”。如果Tile还想创造有形收入(和利润!),它需要实现两项重要目标:售卖大量的产品;将物料清单成本控制在最低水平。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了