打印
[信息发布]

【电子券已发送】Microchip论坛一周岁“云”生日趴

[复制链接]
楼主: 麦小播
手机看帖
扫描二维码
随时随地手机跟帖
41
让我最青睐的产品就是Microchip的八位单片机ATmega328P,这是我入门单片机的第一个MCU,数字外设IIC、SPI、UART和模拟外设ADC都有。配上Arduino的开发环境、创客知识的共享,让我很快就上手了单片机的使用。靠着这个单片机我们不断调试自己的机器人,最后获得机器人竞赛的三等奖。还后面利用这个MCU制作了一些了小制作。

使用特权

评论回复
42
david3826| | 2020-4-7 16:02 | 只看该作者
我和Microchip PIC32,不得不说的故事

那是始于2008年3月所发生的一个我和PIC32的故事。

当时我听说Microchip公司一款新的32位PIC32微控制器已经出炉,该产品使用的是MIPS内核,同时还声称与16位的引脚以及PIC24系列产品外围兼容。

对我来说这简直是太重要了!我立即起身去要到一个样片并刷新基于GNU的MPLAB C32 C编译器的beta拷贝。

我只是必须看一下这款新产品像什么。它仍然像是PIC MCU?它能不能在同样的演示版上工作?

毕竟,我已经用C语言为PIC24写完了15章颇有价值的16位代码和例程。

长话短说,在随后的不到一个月的时间里,我不仅完成了代码移植,而且已经开始利用所掌握的PIC32的经验书写一本新书了!

下面就是对一个月里所发生的事情的简要叙述。我喜欢从我遵守最好的设计准则并从阅读数据页开始讲述,如果说我从头到尾全面阅读了数据页,那是撒谎!实际上我所做的与你做的完全一样。打开装有以前PIC24项目的MPLAB集成开发环境,点击F10键立即创建。

二进制数字
一长串的错误列表出现在输出窗口中。令我惊奇的是,所报道的所有错误都明显地只与我的二进制注释(0b00000000),即C语言的一个非标准扩展有关。我试图编译我关于16位控制器一书前三章中的第一个代码例程。这是一段非常简单的代码,用C来说明I/O,精确定时以及流控制(用于循环)命令。我立刻决定将所有二进制文字转换成标准十六进制的注释(0x00)并观看结果,瞧!编译器和链接器马上解析出代码没有任何错误。

感觉很幸运,我决定继续“前进”,并在一些实际的硬件——即Explorer 16演示板上运行代码。我获取了一个PIC32插件式模块(PIM),并取代我的16位器件一书中普遍所用的PIC24 PIM。加电后我抱着非常怀疑的态度观察了几秒钟,竟然没有“冒烟”!然后我取了一块MPLAB Real ICE调试器和编程器连接到板子上。MPLAB IDE竟然很快识别出该工具并报告已发现PIC32连接到板子上。

在快速和自动的固件升级后,我便立即按下编程键,随后便是运行命令…。但却不工作!

我意识到板子上明显有什么问题,但一点也不像我所期望的那样。这里需要解释一下。在我的16位器件一书的前三章中,我利用C语言向读者提供了如何生成 “Hello World”这类例子。其中,我讲到传统的实现方法是,向终端发送一个字符串,但这在嵌入式控制应用中是不现实或者不合适的。而是采用一个“有趣的”方案,即制作一排8个LED,当把板子拿在手上并挥动时,灯将有节奏地闪烁。它将显示出有用的信息,这要归功于眼睛的自然成像持久性。实际上对此进行编码要比描述更容易。

不同时钟
事实上是,PIC32得到的I/O引脚和定时全部都是错误的。

对于这一点,通常我只需要噼里啪啦地翻开数据页并按我自己的工作方式来查找问题的根源。出现的问题是,PIC32时钟产生模块比16位器件一书中所用的 PIC24F要更加复杂一些。实际上,PIC32模块更像16位MCU系列中最新的PIC24F上的振荡器模块。同样,在PIC32结构中,绝大多数外设模块被连接到工作频率不同的彼此分离的外设总线上,这些频率低于系统时钟,这有助于功率管理,当然也有助于解决EMI问题。

我耐心找出如何使外设总线工作在与同一项目(16MHz外设总线)中PIC24F所用相同的频率。我还找出了可以执行的相同指令数,而执行频率仅为PIC24F所要求系统频率的一半,这是因为PIC32内核每个时钟周期上可以执行一个指令。

JTAG默认值设置为on
在解决了时钟问题之后,我快速地浏览了一下时钟模块。有5个时钟模块。看上去绝对与PIC24F完全一样,进一步回溯PIC MCU的历史,一直回溯到PIC16C74(大约1994)都是兼容的。我继续验证I/O端口:同样的结构,同样的引脚数,同样反映“历史”的寄存器名称,发现一个兼容型的轨迹也许可以一直延伸到最初的PIC16C54(大约1991年)。

最后我对A/D转换模块进行了一次快速检查,对于绝大多数PIC MCU初学者来说这是一个最难理解的外设。其输入连接到I/O口的上端(绝大多数16位PIC器件的PORTB),并且先加电,故除非你的配置正确,否则它不会使你的数字输入工作。显然它与PIC24兼容,因此我仍然无法解释LED行为异常的原因。

更靠近看,我发现有4个LED,要么从来不亮,要么就恒亮。于是,我又再一次翻开数据页来检查引脚图,最后终于发现了“元凶”:JTAG端口。

四线(E)JTAG接口被称为在线串行编程接口,是一个非正式的行业标准,它不仅允许边界扫描,而且还支持器件完全编程和调试控制。当然,这在引脚数很多的 32位芯片中是所期望的,PIC32在加电时通过默认的方式将这两个接口都激活了。如果为了利用一些PORTA I/O而不需要这些JTAG接口,则依赖应用程序来将其关闭。

自从我注意了JTAG接口后,我的第一个PIC32项目开始按期望工作,并发送出它的首个“Hello”。

至此所学到的简单经验(振荡器配置和JTAG接口)迅速地证明了它们与我16位器件一书中前面各章节中绝大多数项目兼容性的关键,在随后几天的开发中移植都比较顺利。我利用UART与PC通信,用SPI接口与串行EEPROM通信,而利用Parallel Master Port与LCD模块通信。

我利用A/D先读取电位器,然后读取温度传感器,演示了PIC32如何与模拟应用接口。

除了模块的一些扩展功能以外,所有这些模块的工作都与我所预期的完全一致。我发现我的16位代码完全可以照用,几乎不需要任何的改变。

测量性能
在早期的一些日子里,我的好奇心促使我想知道PIC32究竟带来什么好性能。在我的16位器件一书的第四章中,即“Numb3rs”,我对执行基本的算术运算所需的指令周期数进行了统计,并将它们与各类整数和浮点类型进行了比较。这在时钟周期与所执行的指令密切相关的场合,如PIC24和dsPIC DSC内核中那样,这种方法是合理的。

但在PIC32内核中,由于采用了MIPS的传统,为“比赛”增加了“难度”。每个时钟周期所执行的指令是可变的,因为当执行代码快于闪存额定速度(每30MHz只插入一个时钟周期)时可以插入等待状态,或者可以无关,这要归功于预取状态机(能够一次预取四条指令)。
最后,激活一个高速缓存,进一步改进了高速性能。

PIC32的高速缓存使得周期数有点不可预测,也许变得没有意义。

我好像觉得我从货物推车一下子升级到了一级方程式赛车一样!于是,我决定需要在32位器件一书中增加一章关于PIC32的性能调整内容。为了给PIC32加上重载荷,我找到我在大学读书时学习基本数字信号处理的一个老代码程序:即快速付里叶变换。

我采用的是标准浮点结构,没有手工和编译器优化。另外还用了一个32 位定时器,让PIC32自己计时,随后我逐步地开始选用一些新的程序选项。

开始时,我激活指令预取,然后我找到高速缓存,再随后我通过人工方式调整等待状态。一开始性能改善极大,并且随着之后对配置进行进一步的细调,性能改善更多。
最终,我意识到最佳的配置必须随应用定制,但必须由标准器件库中的SYSTEMConfigPerformance()提供一个好的起点。

学习外设库
这是我第一次使用“标准”外设库,也是这种爱/恨关系的开始。由于我在非常小型的8位器件上使用汇编进行代码开发已经许多年了,且通常都是需要采用手工优化客户代码,我基本上都是自己亲自工作,最终我开发出了一些自己的器件库。

这一次,在投放PIC32产品之前一年多的时间,我不仅移植了16位器件的库,还对它们进行了扩展来支持一系列新功能。

我没有更多的理由-唯一理由就是我自己必须掌握并学会如何使用它们。

通过利用这个新库,16位和32位应用之间的代码兼容“绝对”没有问题。即便是外设寄存器上的极小差别也可以通过应用代码完全消除。

实际上,这使得一个应用在16位器件和32位器件上都可以运行,从而开发人员面向两种架构,却维护统一的代码基。

不过,虽然在器件数据页中对硬件控制寄存器名称已有注明(甚至每一位都很详细),但却没有所有的功能/宏名及其参数。

很多时候,我发现必须将单个的包含文件与器件数据页进行比较,尝试着去猜测究竟有哪些控制位与一个特定的库参数相关。

当利用最简单的库(比如I/O端口操作)时,这是一件特别麻烦的事情,对我来说,在这里,库抽象层的优点更值得质疑。

最终,我发现可以采取一个平衡折中。即可以采用传统的方法访问绝大部分的基本外设 (例如I/O端口和计时器),而在使用更复杂/新外设时才使用库。

于是,我迅速通过了有关代码的几个章节,实际上什么都没有改。这些章节包括:SD /MMC接口,FAT16文件I/O甚至包括WAV音乐文件重放。

当我决定再深入地研究中断时,以及后来开始使用PIC32的新DMA模块时,这些库的好处就变得很明显了。

PIC32提供两种中断选择:一种是非常类似于PIC16/18 8位架构操作方式的单矢量模式(顺便指出,与RTOS也更加友好),另一种是更类似于16位PIC24 MCU和dsPIC DSC工作模式的多矢量模式。利用interrupt.h库来设置参数是轻而易举的事情。

是我开始尝试移植第12章中代码的时候了:“黑屏”确实是一件有趣的事情。用PIC24,我能够演示SPI端口是如何的简单,只需要三只电阻器,几个中断,以及一些创新就可以产生一个复合视频信号,特别是可以将任意的电视机转换成单色显示器。

要产生一个视频信号,需要中断代码与外设之间的精密协调。实际上,因为即便是在输出定时上只差一个时钟周期,在显示器屏幕的左侧就会产生可见的抖动(所有的竖直线都变得像锯齿一样),故训练结果将是用于中断“决策”的一个理想放大镜,这是PIC架构传统上一直出众的特性。

然而不幸的是,根据定义,指令预取和存储器缓存机制都是非确定的。

经过一段苦思冥想,我最终明白了。我在试图做不应该做的事情!32位内核是为了提高性能而设计的。其使命是C代码的运行尽可能地快,而把实时严格的工作留给外设。

特别是,DMA外设是一个非常好的工具。

最终,我想出了如何利用定时器直接产生复合视频信号,并将DMA数据传输同步到SPI端口的方法。这种新方案提供了确定性的定时,而且还将CPU的开销减少了大约25%到5%。

几个小时工作后,我完成了2D和3D视频演示并运行,还加上了动画,从高清显示一直到单显VGA。

开发PIC32很快变成一件令人上瘾的事情,结果是很好的回报,那就是让我完成了一本有关32位器件新书的写作之旅!PIC32与早先的16-bit PIC24微控制器的兼容性是那样的无缝。

这款新的MIPS内核的速度和性能给我留下了深刻的印象,大大扩展了任何先前的PIC MCU都无法实现的应用范围。

使用特权

评论回复
43
david3826| | 2020-4-7 16:05 | 只看该作者

我和Microchip PIC32,不得不说的故事

本帖最后由 david3826 于 2020-4-7 16:14 编辑

我和Microchip PIC32,不得不说的故事

使用特权

评论回复
44
david3826| | 2020-4-7 16:08 | 只看该作者
本帖最后由 david3826 于 2020-4-7 16:16 编辑

我和Microchip PIC 32,不得不说的故事!

EA21B391-9BB2-4B89-A5C2-FFE7F4A554B6.jpeg (95.98 KB )

EA21B391-9BB2-4B89-A5C2-FFE7F4A554B6.jpeg

使用特权

评论回复
45
神圣雅诗人| | 2020-4-7 19:35 | 只看该作者
本帖最后由 神圣雅诗人 于 2020-4-7 19:36 编辑

感谢Microchip的生日活动,祝你生日快乐啊
我最青睐的产品还是PIC24FJ128GA310 ,Microchip 公司推出具有多种全新低功耗休眠模式且工作电流业界最低的 PIC24FJ128GA310(PIC24F“GA3”)16 位闪存 MCU 系列,扩展其超低功耗(XLP)单片机(MCU)产品线。PIC24F“GA3”器件具有 150 μA/MHz 工作电流,堪称业界最低的工作电流之一,而且提供新的支持 RAM 保存的低电压休眠模式和用于实时时钟的 VBAT 的电池供电,再添加了 6 路 DMA 通道,提高数据的传输。

图 1 PIC24FJ128GA310 结构框图

我从一下几个方面说明理由
一、降低功耗的措施方面
            每个厂商对于降低功耗都有不同的处理方式。虽然每个 MCU 都有休眠状态或都有可能实现很低的工作耗电量,但是有的芯片在处于很低功耗的时候,基本功能也所剩无几了,没有时钟、没有 RAM,所有功能都关掉了。而 Microchip 的处理方式就是把每个功能降到最低的同时还给客户一个选择。例如如果你需要 RAM,那么此芯片提供低电压状态,让 RAM 保留参考数据。如果不需要,那么可以进入真正的休眠状态。
           说到降低耗电量,主要是看器件的工作电流和待机电流。“PIC24F“GA3”系列将工作电流降低至仅有 150 μA/MHz,这是业界 16 位闪存单片机中,电流消耗最低的。”Microchip 先进单片机架构部产品营销经理崔勇介绍说,而且 Microchip XLP 产品系列在深睡眠状态下的待机电流最低可以降到 40nA 甚至 20nA。这是因为 PIC24F“GA3”采用了一些创新,例如引进了一个新模式——低电压休眠状态,让设备在深睡眠状态下,同时保持 RAM,保留一些参考数据。一般来说,如果设备进入深睡眠状态,包括 RAM 等很多功能就会丢失。Microchip 开发的这项 RAM 保存功能是介于睡眠和深睡眠之间的一个新的低功耗状态。同时,新产品还加入了一个新功能 VBAT 电池备份, 是专门用于实时时钟供电的引脚。采用 VBAT 给实时时钟供电,耗电量可以低到 400nA。此外,新产品系列还新增了 6 路 DMA (存储器直接访问) 通道,可以帮助把数据从外设上直接转到 RAM,从而降低 CPU 负载,间接帮助实现低功耗。

二、低电压休眠模式和 VBAT 的应用
          PIC24F “GA3”的目标应用覆盖了消费类产品、工业、医疗和仪表等低功耗领域。其中一个比较重要的是仪表,例如智能电表。该应用要求功耗低,并且在停电的时候需要有备用电池的支持。具体的应用实例有,欧洲 IEC 规定,功率计(电表)内的芯片计量功能不能超过 10VA。因此如果在计量时耗电量过高,会浪费很多电,达不到 IEC 需求。Microchip 的 PIC24F“GA3”系列的方案中,计量结果可以直接放到 RAM 里,就无需浪费 CPU 的功能去做数据传输,这样 CPU 主芯片的负载就可以减轻,或运行更复杂的代码,诸如加入通信功能,让电表性能更高。再有,我国的国家电网的自动抄表方式,需要每隔一段时间把表唤醒一次,将数据发送出去。这时,如果自动抄表经常要唤醒抄数据,就可以把数据保存在 RAM 里,唤醒时可以直接在 RAM 里面读取数据,比把数据放到 Flash 里面的功耗更低。
           恒温器在深度休眠时,很多功能都被关掉,只能显示 LCD 的结果,但是不能刷新屏幕。如果用低电压休眠模式,就可以保证刷新 LCD 的数据。此外,和同类 16 位 MCU 相比,功耗会降低 30%。延长了电池寿命后,便有额外的供电能力去实现 RF 或无线。VBAT 单独的电池供电引脚可以节省电池更换时间,可以单独用纽扣电池给实时时钟供电,用额外的碱性电池给屏幕供电,因此可以保证换碱性电池时,时钟不会更改。
           此外,Microchip 还提供了一个小工具——电池寿命估算器。用户只需要将各种电压和环境温度参数放进去,以及输入所需的各种功能要求,这款工具可以估算出电池的使用寿命。

三、工艺及对低功耗的影响
          从工艺的角度来讲,Microchip 有 0.25,0.35 和 0.18 微米,也提供 130nm 或 90nm 的产品,各种工艺都有。但用户不一定要追求先进的工艺,有些市场如果用 0.35 或 0.25 微米能满足需求,就没有必要一味追求 90nm 或 130nm。通常来说,工艺越高,漏电也越厉害。所以这是一个平衡的问题;如何去权衡高级工艺和漏电。比如我们可以选择一些低功耗的功率,或者在高功耗功率上加一些新供电方式去控制。

四、竞争对手和 Microchip 的特色
         在嵌入式控制器世界中,Microchip PIC 是一个独特的架构,好处是 Microchip 不仅可以控制自己的产品,还可以控制内核。可以根据市场需求调整。从用户的角度上看,他们是要跟潮流还是要选择一个能满足自己需求的产品。如果你的产品跟别人都一样,那怎么样体现产品的独特性和竞争力?因此,产品要有自己独特的地方,不光要拼价格,还要拼性能。
那么,未来 8 位、16 位和 32 位单片机的发展动向如何?严格以数据总线宽度(8 位、16 位或 32 位)来划分单片机市场显得过于简单。单片机市场不会迅速改变,而是会随着低端领域和高端领域的新增应用逐步发展。总之,在不久的将来,不会出现由一个细分市场占据主导地位的局面,现状并不会发生根本改变。虽然 32 位单片机的市场占有率正在迅猛发展,但是,8 位 /16 位 MCU 在市场中的地位仍不可撼动,未来,它们仍将占据巨大的市场份额。Microchip 的崔勇称,其在 8 位单片机市场占有巨大份额,而且还将继续在该领域投入大量资源,同时,Microchip 的 16 位和 32 位单片机市场也在迅速发展,多款新产品已经面世,更多产品即将推出。

使用特权

评论回复
46
我的好友| | 2020-4-8 16:15 | 只看该作者
l  您曾参与过Microchip的哪些活动和培训呢?有什么感想和收获?
========================
参加过Microchip的2019精英年会,感觉这个活动还挺有意思的,很有大学上课的感觉,对于拓宽工程师的视野很有帮助。

使用特权

评论回复
47
yedaochang| | 2020-4-8 16:49 | 只看该作者
本帖最后由 yedaochang 于 2020-4-8 17:08 编辑

祝Microchip论坛一周岁生日快乐!

MICROCHIP(微芯)  PIC18F67J60-I/PT + SST25VF040B,成功应用在航空级对讲机充电控制系统

笔者设计一款航空级充电控制系统,主要应用在锂聚合物和锂离子电池充电控制,可以同时为6个锂电池产品充电,为了保证各通道充电电流符合功率控制同时能高效率充电工作,选用 MICROCHIP(微芯)推出PIC18F67J60-I/PT 微控制器, 考虑到该航空级对讲机主要应用在机场工作人员,为了保证数据拥有高性价比的非易失性与安全性,选用MICROCHIP(微芯)FLASH闪存存储器SST25VF040B-50-4I-SAF,  通过软件快速烧写保护。特点是利用LCD监测电池充电状态。
图1: 一拖六电池控制系统
采用MICROCHIP(微芯)PIC18F67J60-I/PT内置11通道模数转换器,符合六个充电通道控制要求,支持以太网通道端口组, 利用MCU 内置脉冲宽度调制可以对锂电池组进行大电流快充和恒流慢充控制,由于内置10Bit模数转换器分辨率,可以精确检测充电电压和电流值, 每一个充电器充电电流1.5A,总功率消耗120 W。工作温度:  0 to +60°C,充电时工作温度:0 to +45°C范围。

2MICROCHIP(微芯 )微控制器PIC18F67J60-I/PT 应用
图3:六通道充电控制系统测试,支持以太网通道实现远程控制
PIC18F67J60-I/PT外挂烧录源程序
可以通过官方提供MPLAB ICD 4与MPLABPICkit 4在线调试器和编程工具 来进行编程/擦除软件程序,也可以外挂编程器自动烧录程序,读取速度更快。外挂烧录时间在1分钟之内完成。

图4:烧录源程序成功
MICROCHIP(微芯)PIC18F67J60-I/PT +SST25VF040B最佳组合,已成功应用在航空级六通道充电器控制系统验证,产品品质非常稳定,没有发现任何不良异常。保证航空级对讲机充电器零缺陷功能,经久耐用。



使用特权

评论回复
48
btgy4008| | 2020-4-10 23:13 | 只看该作者
本帖最后由 btgy4008 于 2020-4-11 22:35 编辑

我与Microchip的相识
       和很多人一样,我与MCU的故事从大学时期的单片机课程开始,51单片机是本科的必修课程,也是带我入门的MCU。刚工作后看到一室友通宵调试电路板,我才真真的看到了ARM芯片长什么样。但是当时有些开发套件还要几千块钱,因为资金原因没有舍得投资,最主要和自己工作关系很小,自己从事了自动化控制,不过看着室友捣腾也燃起了自己的兴趣,由于知识的缺乏,自己加入了好多MCU论坛,论坛简直无所不能,提问、讨论、应用、教程、培训都很多,在这里学习进步很快,你遇到的各种问题在这儿都是小菜一碟。
        从此结缘, 慢慢看帖摸索,我才逐渐认识了NXP、Microchip、Cypress、Renesas、 ST 、Freescale、infineon、Silicon Laboratories这些业界中的扛把子。而且论坛经常有送板的活动,这时候自己由于爱好也申请了几款功能不错的试用品,附上几张照片展示一下,不要羡慕啊!

          说实在的Microchip厂商宣传活动力度还是不够大,这么多年来,我参加这么多活动,其中Microchip样品的板子还是很少的, 我手中这款 Microchip
旗下的ATmega4809 Curiosity Nano板子还是室友赠送的。
      为了玩转这款板子,这时我才真正了解了一下Microchip 系列产品及性能。Microchip32MCU系列有两种内核,一种是基于MIPS架构的PIC32系列MCU;一种是基于Cortex-M系列内核的SAM系列MCU。内核系列包括ARM®Cortex®-M0+Cortex®-M3Cortex®-M4FCortex®-M7等。旗下明星产品有PIC32MXPIC32MK PIC32MZ EFSAMD51SAMLSAME70等系列。
    Microchip也提供基于32位MCU的图形化解决方案,包括基于2D图形***和LCD显示接口的方案以及低成本不带LCD控制器的方案。
     就安全性而言,客户往往对加密形式、落地成本、风险承受和易用程度都有不同程度的需求,Microchip的32位微控制器也完全可以实现满足这些需求的安全解决方案。除了必要的软件和硬件之外,Microchip还可以为客户提供了简便易行的嵌入式保护的工具和功能。
     在连接应用方面Microchip的32位微控制器产品提供高度集成的有线连接方案,包括CAN/CAN FD,高速USB、以太网等,同时还提供专业级的通讯协议栈(TCP/IP、USB、CAN)以及TLS/SSL安全库。此外,Microchip的32位微控制器还支持多种多样的无线连接方案,包括Wi-Fi®、Bluetooth®、LoRa、IEEE 802.15.4以及Sub-GHz等。此外在电机驱动、低功耗应用方面Microchip也体现出了自身的优越性。
开发工具,也是左右更多用户选择产品的一个主要因素,这一方面自己使用时间短,就不加以评论了。不过Microchip提供的免费的MPLAB®X IDE,Atmel Studio,MPLAB®XC编译器以及各式各样的调试工具都是很便利的。尤其是Atmel Studio 7 是可以用来开发和调试所有的Microchip的基于ARM®内核和AVR内核的开发平台。无论你的应用是用C/C++语言还是汇编语言编写,你的代码都可以通过Studio 7 IDP无缝的编写、构建和调试,同时,Studio 7可以无缝支持各种调试器、编程器和开发套件。  
   Atmel®START 也是Microchip一个具有创新性的在线工具,可以通过图形界面直观的配置嵌入式软件工程。它可以根据应用需求,有针对性通过选择和配置软件组件、驱动以及中间件或者选择完整的例子工程来帮客户建立项目工程文件。在配置阶段还可以帮客户检查各软件组件间的相关性、各种设置冲突以及硬件局限。当出现设置冲突的时候,Atmel®START 会自动提供适合设置的方案。
不啰嗦别的了,展示展示我对这块板子的评价体验;
   开发板主要是两部分:mEDGE仿真器和ATMega4809核心板。先看仿真器部分:仿真器芯片使用了ATSAMD21E18A,非常小巧。仿真器也引出多个引脚,不知道是否可以仿真外部芯片,以前的开发板是不行的。核心板部分,主要就是ATmega4809单片机和32K晶体,以及少量电阻电容,没有多余的东西。附带的排针有点不同,下面是银色,上面是黄色一开始还在想,为什么需要配排针。后来仔细看开发板,发现它的边缘并没有像一般开发板那样使用了普通排针,而是带有一点波浪形。好处是连接会非常紧,缺点就是很不容易插进去,也不能使用普通排针。
    因为第一次接触Microchip,创意谈不上,所以完全按照教程实例进行了如下体验 :
ATMega4809开发环境搭建

1. 安装MPLAB X IDE

(参考资料:ATMega4809 Curiosity Nano Hardware User Guide

根据对应的操作系统,下载MPLAB X IDE安装包

由于使用MPLAB X IDE需要账号登录Microchip,所以需要提前配置网络。有些公司或校园网为了网络安全的需要会设置代理服务器上外网,不过一般家用是不用代理服务器的,这里我们选择(No Proxy)。安装完成后提示前往下载和安装XC编译器和MCC配置工具,点击Finish会自动打开浏览器跳转到相应界面。不在啰嗦过程了

2. 安装编译器XC8

(参考资料:https://www.microchip.com/mplab/compilers

使用XC编译器是需要证书(license)授权的,官方提供了以下三种授权方式。这里附上一份官网的XC安装指导链接,仅供参考http://ww1.microchip.com/downloads/en/DeviceDoc/50002059H.pdf)新用户注册完成后即可登录

3. 安装配置工具MCC

(参考资料:https://www.microchip.com/mplab/mplab-code-configurator

官网提供了3种安装方式,此处我们选择方式2,MPLAB X IDE里,选择Tools->Plugins->Available Plugins,勾选

MPLAB Code Configurator,然后install安装完成后重启MPLAB X IDE即可

4. 演示1个示例工程

创建一个新工程,使黄色LED不停闪烁。

首先这里把开发板与电脑相连。这个IDE的工作真的做的很到位,居然跳出了一个窗口,识别出了开发板。MPLAB X IDE里,选择File->New Project,然后选择Standalone Project选择调试器工具(如下图)。注意,如果电脑没有识别出调试器,就不会有“SN:MCHP30...”的选项。如果实在没得选,直接下一步,后续配置也可。“Pin Module”下将PF5设置为输出,然后在“System Module”下加上Delay库函数。再次点击蓝色的MCC图标退出MCC界面,打开main.c,键入如图所示代码编译并下载(如下图)


完成以上步骤,大功告成,看看运行效果。


        

        啰嗦了怎么一大堆,我不再去评价谁家的产品优劣,只愿每个用户可以找到自己心仪的产品,每个厂商能提供更有竞争力的产品,用户的喜好,开发环境的友好也是左右用户选择产品的一个主要因素。一面之缘有幸结识了Microchip,在我的设计生活中又多了一些选择和期待!

在Microchip论坛一周岁之际,

祝福Microchip厂商和Microchip用户让我们论坛更加活跃!

祝福论坛MICROCHIP一周岁生日快乐!

祝福论坛中的用户发挥自己的想象,创造出更美好的成果!





使用特权

评论回复
49
gaoyang9992006| | 2020-4-12 11:53 | 只看该作者
第一次接触PIC单片机是在我上学的时候,当时我在一个学校QQ群,有个人问谁会PIC单片机,我当时刚学了51,在图书馆看书的时候看到过PIC单片机的书,也随手翻看过,觉得没多少难度。我就说我会,其实我当时还真不会,然而我觉得跟51应该差不多,就随口说了一句。结果那人是校外一家公司的技术人员,他加我好友,然后问我能帮他开发一款产品不,客户要求用PIC单片机,他们公司没人做过。
我就硬着头皮接了这个活,当时太傻,也没跟他要任何好处,就说,先做个试试吧,然后我去借书,还网购了一本PIC的图书,那是我第一次网上买东西,在亚马逊。奋斗了三天三夜帮他做出来了样机,是个节能灯的控制器。他们老板很开心,请我吃饭,邀请我毕业去他们公司上班,我说到时候看吧。
这就是我第一次使用PIC单片机的原因,是不是很傻,一毛钱的好处都没跟人家要。


使用特权

评论回复
50
hu9jj| | 2020-4-12 16:57 | 只看该作者
      去年4月,在论坛举办的Microchip开发板月月送活动中,赠送的是PIC16F18446开发板,我立即被这块比姆指还小的紫红色开发板吸引住了,第一时间提出了申请,幸运地与微芯产品有了交集。收到这块开发板之后,开始下载安装MPLAB IDE,建立了开发平台,并逐步学习和了解MCC代码配置器。经过反复练习,基本上掌握了在MPLAB开发平台新建项目、使用MCC进行基本代码的配置、编译下载程序等单片机开发的全过程。通过点亮LED、驱动LCD显示、开启定时器来记录一个按键按下的时间长短实现多功能按键等一个个实验,基本掌握了PIC 八位单片机的应用。
      在去年8月份的活动中,我又有幸获得了ATmega4809评估板,这块AVR的板子同样是紫红色,但有更多的引脚,为了便于实验,我打样了一块类似微芯官方的扩展板,为连接其他模块实验提供了方便。
      在去年11月份的Microchip MASTERs 2019武汉站的年会上,我如饥似渴地参加了多门课程的培训,目睹了许多专家的风采,感受了公司的企业文化,促进了相关专业知识的提高,同时对Microchip公司的产品线有了进一步的了解。
      目前,我准备利用PIC16F18446开发板来制作一个智能门铃,通过识别门铃按钮或者敲门轻重来播放不同的声音,看能不能做成一个实用的产品,拓展8位机的应用。

使用特权

评论回复
51
yinwuqing110| | 2020-4-12 22:22 | 只看该作者
      时间过得真快!Microchip已经入驻21ic一周年了,在此之前,其实我一直是Microchip的时刻关注者,说不上超级粉丝,但Microchip在电子产品世界举办的每月视频有奖问答活动,我是至2018年至今每期都有参与,基本上每期都中奖。通过每月视频有奖问答活动,我逐步了解了Microchip产品的强大之处。最近Microchip推出一系列用于快速原型设计的嵌入式物联网解决方案也受到社会广泛关注,Microchip在物联网安全方面也推出了诸多方案。在21ic论坛,Microchip举办的“Microchip开发板月月送”活动也是备受关注的,丰富了21ic论坛的活动,为开发人员提供了进一步免费学习了解Microchip产品的机会。“Microchip开发板月月送”活动,基本上每期都参与申请,但截止目前只成功获得三次免费试用机会,当然我也知道这获奖几率也是蛮大的了,但是这三次都是PIC系列的产品。接下来让我来聊聊这三次的感受吧。
      第一次是在2019年的三月份,申请到的板卡是PIC24FJ128GA204,并在https://www.microchip.com/mymicrochip/上注册了Microchip个人账户,初次了解了MPLAB Xpress IDE在线编程的安全便捷特色,开发人员可以在线编译调试代码,让移动办公变得更方便。该开发板上的大LED灯也独具特色,官方给出的资源包也比较丰富。



     第二次是在2019年的十月份,此次有趣的事是第一次小喇叭居然给我发的是Microchip ADM00860 CL88030(LED驱动板),然后当时在Microchip官网查了下关于该驱动板的功能,它是一款支持大功率输出,交流电输入的开发板,价格比PIC18F47Q10 Curiosity Nano开发板贵,但是需要配置灯板模块才能评测,跟小喇叭反馈了情况,小喇叭让我及时寄回板卡,然后更换。这是我第一次知道了小喇叭的收件个人信息,也是我第一次寄回板卡到社区论坛。板卡寄出后过了3~4天就收到了十月份的主角:PIC18F47Q10 Curiosity Nano开发板,这一次让我进一步熟悉了MPLAB® X IDE工具的使用。因为这次的插曲,想认识一下小喇叭。因此在年底举办的深圳线下交流会我报名参加了,戴言有趣咖啡厅网友聚会如期而至,几位大佬分享经验,交流技术话题,虽然没有中什么开发板,但收获颇丰,也幸运获得了《简单粗暴学蓝牙4.0》书籍。

      第三次是在2020年的一月份,2020年对于大伙来讲是不平凡的庚子年,由于新冠肺炎疫情的影响,开发板发放的时间延迟到三月底发,这次本来希望是能申请到AVR系列的ATMega4809 Curiosity Nano 评估板,结果收到的实物还是去年十月份的PIC18F47Q10 Curiosity Nano开发板,由于收件在下班后,晚上没留意,第二天直接带到公司焊接了,等焊接完插针后,结果才看到板卡上印的是PIC MCU的丝印。的确,PIC18F47Q10 Curiosity Nano与ATMega4809 Curiosity Nano外形上很相似,但是板上的丝印还是很容易辨别的。根据其他网友的使用体验,ATMega4809 Curiosity Nano 评估板也是支持MPLAB Xpress IDE开发的。
     在Microchip入驻21ic社区论坛的一周年里,认识了不少Microchip开发网友,一路走来,也充实了对Microchip产品开发的认知。Microchip开发资料丰富,但绝大多数都是英文资料,这样的原汁原味给国内的工程师提出了要求,暂且不说英语必须得过四级,但电子电路中的常用英语单词必须得熟悉,否则开发起来束手束脚哦。不管怎么样,还是得感谢Microchip,感谢21ic论坛,扩大了我的视野,了解了MPLAB Xpress IDE开发平台。

使用特权

评论回复
评论
yinwuqing110 2020-5-7 13:39 回复TA
@21ic小喇叭 :没事,我不会告诉他人的,没事也不会给你打骚扰电话的,呵呵。 
21ic小喇叭 2020-5-7 13:04 回复TA
完了,我的电话被你知道了哈哈 
52
思难忘| | 2020-4-14 09:08 | 只看该作者

使用特权

评论回复
53
qbwww| | 2020-4-15 23:31 | 只看该作者
恭喜Microchip论坛一周岁,我的第1块51开发板就是Microchip的,若不是你们,我不知道什么时候才会有自己的第1块C51开发版,我是半路出家,相对于本专业的来说,学习这个的话需要更多的时间和努力。感谢Microchip的免费赠送。

使用特权

评论回复
54
1055875333| | 2020-4-16 18:49 | 只看该作者
您最青睐Microchip的哪款产品或开发工具呢?   我青睐PIC18-Q43产品,此控制器配备有直接存储器访问(DMA),可配置逻辑单元(CLC),16位PWM,具有计算功能的12位模数转换器(ADCC)和多个通信接口。接口资源丰富,可以扩展许多功能,且系统响应快。非常适合各种实时控制应用,我当初用来做电机控制,开发设计调试都非常顺利,丰富的技术资料和给力的技术支持,大大缩短了项目的开发时间,microchip的MCU,是理想的选择。

使用特权

评论回复
55
笑谈| | 2020-4-19 19:14 | 只看该作者
本帖最后由 笑谈 于 2020-4-19 19:16 编辑

          十一年前的三月份,我步入了电子工程师这个职业。暂且不论幸运与否,毕竟承载了十余年的付出与收获。
         在工作的这么多年,工作和学习中跟Microchip公司的应用工程师,线上培训,线下座谈会,编程软件,仿真器及产品学习使用有着分不开的关系。
         由于上学期间学习的是Atmel 公司8051系列单片机,并且当时自己可以写一些简单的代码,所以刚工作时习惯使用8051单片机设计控制器电路。由于当时主要做新产品的概念设计,所以自己可以选用设计平台。
          初次接触Microchip是一年后,做交流电机控制时,由于电路简单以及时间短,经常采用面板板做电路。控制电路在工作时经常会出一些莫名的问题,那时的经验感觉是程序不对,就会浪费大把的精力在调试程序上。面对解不开的bug,整个人都不好了。实在搞不定就上网查资料,当时在论坛上看到不少电机控制工程师都采用Microchip的PIC单片机。普遍认为PIC单片机抗干扰能力强。我也动起了采用PIC单片机设计控制器的念头。
          由于更换PIC单片机需要购买编译软件和编译器以及开发套装。跟主管申请经费时,主管(非常固执的老外,非电子专业)让我给他一个更换设计平台的理由。其实那时我也挺心虚的,毕竟我自己都没接触过PIC单片机,只是买了本书看了看。幸好当时在Microchip官网找到了上海的FAE房工,房工跟另一位同事带着电脑和开发套装从上海跑到我们公司,亲自指点了我一天时间,告诉我PIC单片机跟8051单片机的编程区别。在房工离开前,我们一起跟主管谈论了更换PIC单片机方案的优势。在专业面前,主管同意了,我也开始了PIC单片机编程之旅。
         还记得最初使用的就是Microchip非常经典的八位单片机PIC16F616。这么多年过去了,我还记得当时怎么对照规格书设置它的输入和输出,哪些引脚可以配置为A/D converter功能。最有印象的一次是Microchip的烧录器ICD3怎么也不能跟单片机通讯,排查一圈发现手工焊接的面板板短路了,而且就是单片机的电源引脚跟地之间短路的。本以为单片机也挂了,谁料排除故障后,啥事没有,程序照样运行。在当时那家公司,从此所有我设计的控制器,一律采用PIC单片机。
          尽管在后来的几家公司,也采用了其他品牌的嵌入式芯片。但是如果软件和硬件都由我负责完成的话,总会先想到PIC单片机。不仅是因为熟悉PIC单片机程序设计,也包含和对PIC单片机抗干扰性的放心,以及对当年技术追求的怀念。
          很幸运从移动硬盘里找出了几张早年用PIC单片机设计的控制器demo图片,以作纪念。虽然现在看起来当时的手工板看起来太简单,或是不严谨,但也是当时学习过程的一个见证。
          有幸参加Microchip论坛一周岁的故事分享,祝Microchip论坛越办越好,并且希望Microchip公司越来越好。


使用特权

评论回复
56
东吴晶晶| | 2020-4-19 20:05 | 只看该作者
我最喜欢Microchip的PIC KIT3,因为便宜而且好用。

使用特权

评论回复
57
quickman| | 2020-4-20 22:43 | 只看该作者
         

使用特权

评论回复
58
jstgotodo| | 2020-4-20 22:43 | 只看该作者
支持一下吧。         

使用特权

评论回复
59
iamaiqiyi| | 2020-4-20 22:43 | 只看该作者
这个活动很给力呢。        

使用特权

评论回复
60
wei816| | 2020-4-21 20:06 | 只看该作者
与PIC偶然的邂逅,让我在职场上起死回生
项目名称:压力传感器
项目背景:今年公司10大项目之一,公司亚洲区老总放话只许成功不许失败,失败就问责下课。亚历山大。
项目应用:极限环境燃气表用压力传感器。
项目需求:功耗:休眠电流<5uA;峰值电流<1mA
                EMC:RS,CS,EFT,ESD等均要过IEC61000标准,要求3A,需要过第三方认证。
                精度:0.04%,基本是行业顶尖水平
项目框图:(主要通讯板部分,电路很简单,PCB尺寸18X12mm)

项目详情:
1、MCU做I2C从机,在收到客户主板命令后,返回前段传感器数据给主板。
2、MCU做I2C主机,读取ASIC和EEPROM数据,进行算法计算并把数据存在本地。
3、休眠。
4、配合量产测试系统做温度补偿算法校准。
项目难点:
1、低功耗
同时使用了AVR,ST(stm32L031),PIC(PIC16LF1825)三种方案,ST和PIC的方案满足了要求。
        sleep     normal
ST    0.4uA     1mA
PIC   1.2uA     0.8mA
在该应用中,功耗方面,PIC稍逊于ST。
2、EMC(重点来了)
由于ST功耗方面稍微有优势,所以公司管理层大多数人倾向于该方案。
但是ST方案在EFT测试时发生复位,只能达到3B等级,花了3个月整改,加了共模电感,TVS管,电容等一大堆EMC防护电路,测试费也花了2,3万,怎么测都过不了,找代理商支持,代理商直接告诉我就是过不了。
后面没办法了,试用PIC方案,结果一个裸芯片,不需要任何外围电路就通过了所有测试。PIC完虐ST.
总结:
前阵子差点因为这个项目失业,偶然情况下使用PIC挽救了我的工作。我最大的体会就是对于一些有EMC防护等级的项目,还是尽量选Microchip这样优秀的厂商。

内存用了90%,对于这种小项目,PIC还是挺优秀的


使用特权

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

本版积分规则