发 帖  
原厂入驻New

大联大品佳 Microchip PIC16F15324开发板试用体验分享

2020-9-25 11:21:34  160 开发板 调试 通信
分享
0
本帖最后由 zhangjiantao 于 2020-11-23 21:34 编辑

1.开箱图:

上图为收到的开发板,和手上拥有的调试工具
开发板+调试器.jpg
2.引脚分析
主芯片引脚图.jpg

     pin1,pin14,作为电源和地,其他剩余的12个引脚都可作为通用IO口来进行使用,其中PIN4,PIN12,PIN13,分别为复位,调试的时钟,和数据引脚,使用其他功能,注意硬件设计上留有相应的跳线,防止调试或下载时发生意外
3.资源介绍
(1)内核独立外设 (CIP) 和通信,并结合了用于各种各样低功耗应用的超低功耗 (XLP) 技术。
(2)4路10bit 的PWM.
(3)两个硬体 UART, 一个硬体 SPI, 一个硬体 I2C。
(4)10bit 多通道ADC,可选择FVR内部参考电压,和SLEEP模式下工作。
(5)5bit 轨到轨的DAC。
(6)三个定时器time0,time1,time2
(7)三个外部中断引脚

4.测试内容
(1)定时器的使用
(2)外部中断模拟外部信号触发
(3)ADC和FVR的使用
(4)串口的调试和简单的串口协议控制,和调试相关信息串口打印到电脑端的调试助手
(5)外挂eeprom存储和RTC的使用
(6)MCU的功耗测试,采用五位半的数字万用表和示波器,测试电流消耗,在正常工作和sleep下的电流消耗

2020.10.09
更新内容为外挂RTC/EEPROM,ADC采集的原理图和PCB
RTC为美信的DS3231SN,EEPROM为microchip的AT24C512,均采用模拟IIC实现,板子上留有串口调试引脚,电源接口
打样PCB板,将开发板对接到新PCB上,
sch pcb


2020年10月22日更新内容为
1.系统时钟:内部晶振32M,串口波特率9600,RC4->TX,RC3->RX,等
  外部中断采用下降沿触发,DS3231的外部触发引脚采用电平中断,定时器2用于PWM
MCC生成的代码,自己做响应的更改和整合
2.外挂RTC和EEPROM的引脚定义
//==========定义DS3231接口===================
#define DS3231_SCL PORTAbits.RA1
#define DS3231_SDA PORTAbits.RA0
#define DS3231_SDA_TRIS TRISAbits.TRISA0

//=========定义AT24C512接口==================
#define AT24C512SCL     PORTCbits.RC2
#define AT24C512_SDA   PORTCbits.RC1
#define AT24C512_SDA_  TRIS TRISCbits.TRISC1
//主芯片的配置字+pps映射+单片机时钟的截图
CONFIG.png 单片机时钟初始化.png PPS引脚选择.png
由于代码较多只选择具有代表性的进行截图上传
后续更新》》》》内容如下,设置DS3231定时时间,(暂定1min)一分钟时间到后触发引脚电平变化,并上传数据到串口
按键触发,系统记录时间,存储触发次数到EEPROM中,并通过串口上传到电脑端,借助USB转TTL,和串口调试助手,

更新代码截图,和输出结果
360截图20201108131058635.jpg ISR.jpg
图1                                                          图2
按键处理.jpg SHUCHU.jpg
图5                                                             图4

按键利用开发板上的RA5引脚,设置好寄存器,
初始值在截图1上可以看到是10;图二是按键触发后,中断处理函数,
图三是处理函数的具体实现;图4是结果输出,可以看到报文中第三个字节是次数(分别对应11,12 13,)紧接着次数后的是时间(年月日时分秒)0x16,报尾,报尾前是简单的cs校验
  2020年11月23号更新内容主要为低功耗设置
根据PIC单片机使用心得,功耗的降低一靠硬件电路的本身设计,二是对单片机进行低功耗设置,
主要从以下几个方面入手:
(1)关闭不用的外设
(2)不用的IO口设置为模拟输入
(3)数据手册上的ADC的电流相对来说较高,解决的办法需要用到的采集功能的时,使能ADC不用的时候关闭ADC的相关寄存器配置
(4)完成所有功能后采用休眠的方式sleep();

下面上传简单的测量方案


微信图片_20201123175915.jpg 微信图片_20201123175908.jpg

无休眠                                                           休眠后电源指示灯还在

微信图片_20201123175859.jpg
  休眠后电源指示灯不在

360截图20201123173846167.jpg
休眠指令
从以上几张可以看出,功耗在一步步降低,现在的功耗主要来源于ADC采集,
降低功耗可以降低工作电压,和工作频率,我现在用的18系列的  (电池供电)功耗可以做到2ua,现在15324应用场景光伏供电
PIC这种5位数字命名的应该是新片子,功耗低
最后总结下:
      16F324适合低成本的应用方案,而我这边主要是做低成本的产品,相对于现在的产品,用熟之后,不太想换厂家,总之这颗物料通过前面的测试满足我的要求,真正需要做低功耗,可能需要自己打板,设计电路。
microchip的产品性价比稍低,但是在工业现场应用比较皮实,对于使用过其他厂家的单片机,转到PIC上稍微有点不适应,比如配置字,中断入口等。
下面分享下自己开发pic系列程序的过程
   1,配置字的选择,根据自己的需求选择相应的功能
   2,配置字完成后,时钟选择,pic的时钟相对来说比较简单,相应外设功能的初始化话,比较新的单片机还有PMD寄存器,可以关闭外设,以节省功耗,这里有一点要注意,PMD相应外设关闭后重新打开,若要重新使用此功能,需重新初始化
  3,让最小系统跑起来,测试定时器,串口(可以很好的测试出系统的时钟是否是自己设定的主频)
4,这个时候,完善外设实现的功能,

5,阅读Datasheet最后的电气性能,优化系统的功耗,可能有些场合不需要特别低的功耗,不极致,但仍要优化点,节能减排
6
  写在最后的:感谢电子发烧友和大联大提供的试用机会,本人文采有限,有些不能完美的表达出来,希望以后多多锻炼!
PIC的原厂技术支持很赞!直接可以电话联系哦
我是PIC的忠实粉丝


底板.jpg
调试器.jpg
开发板.jpg

相关经验

只有小组成员才能发言,加入小组>>

96个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表