三星6410裸机程序开发3:谈谈总结与经验

发布时间:2023-05-05  

这段时间终于把短距离通信的无线接收模块弄完了。本来一两周时间就可以弄完,但前两周由于尝试采用eclipse开发环境,遇到了很多问题,尤其是6410中断的实现。这导致后期赶工,花了几个通宵才算搞定,弄得自己一身疲惫。

回过头想想,这个项目在很多方面都值得总结和吸取教训。避免以后接项目时类似情况再次发生。后续文章再介绍三星6410的裸机程序开发环境和方法。

开发环境

对于三星6410的裸机程序开发环境,想当然的使用eclipse。如果作为研究和探索,这未尝不可,实际上也是可行的。但问题是,这次是开发项目,是有时间限制的。所以应该选择最正确的开发环境—RVDS。

在eclipse上遇到的一个最大问题是修饰中断处理函数的关键字__irq的实现。

* 在C语言中,关键字”__irq”的作用:当ISR定义时有此关键字,则ISR结束后CPU自动从栈中恢复中断前
* 模式的LR,并把它赋值给PC,完成ISR的正常返回。如果无此关键字,则CPU只能返回到二级ISR前的中
* 断状态,此时仍为IRQ工作模式。当然也能够继续执行用户程序,只是工作模式不对,此模式下再不能响
* 应其它IRQ中断。

__irq在eclipse中没有定义,所以必须参考ADS1.2或RVDS中的定义(输出的汇编指令)进行实现。这遇到了不少麻烦,至今,__irq在eclipse中还是没有完全实现。

信息收集

在开始项目前,未对6410的裸机程序开发进行比较深入的了解。以为友善之臂提供了裸机程序例程,可在此基础上进行开发。过份的依赖友善之臂例程,导致没有去了解其它家的裸机例程。

其实,最好的6410裸机程序例程是三星提供的6410_Test工程。该工程提供了全部模块的功能实现和API接口。在此基础上进行开发,可以大大减少工作量。遗憾的是,我是在调试6410 SPI驱动时,才发现6410_Test工程。

友善之臂提供的6410裸机程序例程,个人认为不是很好,而且有一些例程是有问题的,如UART例程。提供的中断例程还是基于51那种跳转方式,而不是VIC模式。

此外,友善之臂开发板光盘上的资料,像原理图,十分混乱,各个版本放在一起,都不知道买来的开发板应该使用哪一个版本的原理图。

无线模块

在此之前,未接触过短距离无线通信模块。客户要求使用433MHz短距离无线通信模块CC1101,并给我们指定了一家淘宝卖家。稍微看了下这无线模块说明,通信距离可以达到客户要求的至少200米。所以没有调查就买下了一对模块。

实际测试时,却只能传输20多米。再次询问那位淘宝卖家,他说他们的实测距离是50多米,把传输速率降到最低1200bps且在空旷地带可以达到100多米。如果要达到200米,CC1101必须加PA。

我勒个去,感觉被骗了,但也只能怪我们自己不小心,没有仔细盘问,没有仔细调研。

后面放弃了CC1101,改为nRF2401,并买了加有PA+LNA的nRF2401无线通信模块,确保通信距离,满足客户要求。至于CC1101不加PA到底能传输多远,则不去细究了。

这里范的一个错误是,客户帮我们指定了无线通信模块,但自己却没有去深入了解,自以为客户指定的应该可以满足要求的通信距离。

基本工具

这次开发,涉及驱动的调试。可是,我们连基本的工具像烙铁、万用表都没有准备。所以在调试驱动时,效率很低。正所谓,工欲善其事必先利其器。

兼职困惑

兼职开发项目,一个很大的障碍是:不方便项目开发人员的及时沟通和交流,也不方便配合调试。这个问题,目前暂时无法改变,只能不断强化彼此的合作,探寻最佳的合作方式。

改进措施

以上谈论的总总问题,归根结底为:开发项目没有计划、规划和统筹,各自为战。具体到自己身上,项目前期心态未摆正,过于乐观!改进措施如下:

  • 接项目之前,分析客户需求,调研项目可行性。

  • 制定项目计划,选定项目管理人员,进行统筹规划。

  • 做项目时,必须从确保完成项目这个目标出发,选定正确的工具、开发环境、硬件平台等,切勿以学习的心态开展项目。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    处理器的发布,大模型的运行环境将发生翻天覆地的变化。在酷睿Ultra新品发布活动上,CodeShell多语言代码大模型搬进了轻薄的笔记本电脑内,这意味着未来的大模型运行,不一定只依赖于服务器或台式机,随身......
    处理器的发布,大模型的运行环境将发生翻天覆地的变化。在酷睿Ultra新品发布活动上,CodeShell多语言代码大模型搬进了轻薄的笔记本电脑内,这意味着未来的大模型运行,不一定只依赖于服务器或台式机,随身......
    科技接口IP适用于USB、PCI Express、112G以太网、UCIe、LPDDR、DDR、MIPI等广泛使用的协议中,并在三星工艺中实现高性能和低延迟• 新思科技基础IP,包括逻辑库、嵌入......
    适用于USB、PCI Express、112G以太网、UCIe、LPDDR、DDR、MIPI等广泛使用的协议中,并在三星工艺中实现高性能和低延迟 新思科技基础IP,包括逻辑库、嵌入式存储器、TCAM和......
    变频器故障代码有哪些;  变频器故障代码大全   PG故障也是我们在使用中经常遇到的问题。一般不允许吊装开环控制。   主要原因:   1、PG连接不正确或断开;   2、PG屏蔽接地不良,信号......
    技术通用性将两个产品整合到公司内的公共技术体系中,这样两个产品在开发过程中可以相互借力,共同发展。 肖小毛解释,之所以采用三星工艺,是因为瓴盛开发和规划的产品所用很多IP都更适配三星工艺,这些IP供应商已经在三星工......
    codegeex 等国产 AI 大模型均入选并首批通过。 此次大模型评估以《智能化软件工程技术和应用要求 第 1 部分:代码大模型》标准为依据,围绕通用能力、专用场景能力、应用成熟度,为模......
     Flash的采用,为汽车、移动设备和物联网装置等应用领域提供完整的闪存解决方案。 作为全球首款8 I/O串列式NAND Flash,华邦OctalNAND Flash可为汽车、通信和工业系统制造商提供现今最高容量的嵌入式代码......
    三星芯片厂工人从7米处坠亡!; 业内消息,近日有媒体报道称韩国平泽工业园的P4工厂曾在2024年1月发生一起员工坠亡事故,负责该工厂安全管理的人员已被指控犯有刑事罪。韩国京畿道平泽警方表示,该所正在调查三星工程......
    反而激进投资。 据悉,受全球通货膨胀,三星在韩国建造的新工厂成本自第三季度依赖就大幅上涨,在平泽建设额外设施以及其P3工厂的成本增长了超过1万亿韩元。负责监督该工厂建设的三星物产、三星工程三星......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>