简介:PIC单片机在国内日益流行,本文介绍Microchip PIC系列单片机开发过程中软、硬件设计的一些经验、技巧。
由美国Microchip公司生产的PIC系列单片机,由于其超小型、低功耗、低成本、多品种等特点,已广泛应用于工业控制、仪器、仪表、通信、家电、玩具等领域,本文总结了作者在PIC单片机开发过程中的一些经验、技巧,供参考。
1 怎样进一步降低功耗
功耗,在电池供电的仪器仪表中是一个重要的考虑因素。PIC16C××系列单片机本身的功耗较低(在5V,4MHz振荡频率时工作电流小于2mA)。为进一步降低功耗,在保证满足工作要求的前提下,可采用降低工作频率的方法,工作频率的下降可大大降低功耗(如PIC16C××在3V,32kHz下工作,其电流可减小到15μA),但较低的工作频率可能导致部分子程序(如数学计算)需占用较多的时间。在这种情况下,当单片机的振荡方式采用RC电路形式时,可以采用中途提高工作频率的办法来解决。
具体做法是在闲置的一个I/O脚(如RB1)和OSC1管脚之间跨接一电阻(R1),如图1所示。低速状态置RB1=0。需进行快速运算时先置RB1= 1,由于充电时,电容电压上升得快,工作频率增高,运算时间减少,运算结束又置RB1=0,进入低速、低功耗状态。工作频率的变化量依R1的阻值而定(注意R1不能选得太小,以防振荡电路不起振,一般选取大于5kΩ)。
另外,进一步降低功耗可充分利用“sleep”指令。执行“sleep”指令,机器处于睡眠状态,功耗为几个微安。程序不仅可在待命状态使用 “sleep”指令来等待事件,也可在延时程序里使用(见例1、例2)。在延时程序中使用“sleep”指令降低功耗是一个方面,同时,即使是关中断状态,Port B端口电平的变化可唤醒“sleep”,提前结束延时程序。这一点在一些应用场合特别有用。同时注意在使用“sleep”时要处理好与WDT、中断的关系。
例1(用Mplab-C编写) 例2(用Masm编写)
Delay() Delay
{ ;此行可加开关中断指令
/*此行可加开关中断指令*/ movlw.10
for (i=0; i《=10; i ) movwf Counter
SLEEP(); Loop1
} Sleep
decfsz Counter
goto Loop1
return
2 注意INTCON中的RBIF位
INTCON中的各中断允许位对中断状态位并无影响。当PORT B配置成输入方式时,RB《7:4》引脚输入在每个读操作周期被抽样并与旧的锁存值比较,一旦不同就产生一个高电平,置RBIF=1。在开 RB中断前,也许RBIF已置“1”,所以在开RB中断时应先清RBIF位,以免受RBIF原值的影响,同时在中断处理完成后最好是清RBIF位。
关键字:PIC单片机 低功耗 低成本
引用地址:
PIC单片机开发需了解的简单问题
推荐阅读最新更新时间:2024-10-30 03:32
PIC单片机关于PAGE和BANK
让我们来从PIC的指令结构上来分析一下为什么PIC中要有BANK和PAGE的设置吧。先来看一下为什么PIC中要把RAM区划分多个BANK。 仔细观察PIC汇编语言指令的格式,一条完整的汇编语言指令语句通常是这样的:标号 操作码助记符 操作数1,操作数2;注释。其中,主体部分是‘操作码助记符 操作数1,操作数2’。 例如: 指令:MOVF 33,1 操作码助记符:MOVF ; 操作数1:33 ; 操作数2:1 ; 而在程序被编译时指令语句的主体部分会被转换为代码的形式,通常是:指令代码 操作数2 操作数1。 例如在指令位数为14位的中档PIC单片机中: 指令:MOVF 33,1 转换后代码:00 1000 1 011 0011 其中
[单片机]
PIC单片机定时器2的使用方法
#include pic.h #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31); void init(); uint intnum; void main() { init(); while(1) { if(intnum==5000) { intnum=0; RD0=!RD0; } } } void init() { TRISD=0; PORTD=0; INTCON=0xc0; PIE1=0x02; TMR2=0; PR2=100; T2CON=0x0D; } void interrupt time0(
[单片机]
三星印尼工厂投产:生产向低成本市场转移
腾讯科技讯 5月12日,消息人士表示,三星已开始在印尼雅加达附近的一处工厂生产手机,以满足快速增长的印尼市场的需求。 此举也表明,三星的部分业务运营正在向成本较低、快速增长的新兴市场转移。三星正扩大在这些市场的业务,同时削减成本。 消息人士表示,三星这处工厂位于雅加达附近的工业城镇Cikarang,计划每月生产150万部手机。这其中包括最新的4G智能手机,这些手机将于本月面向用户开始销售。目前,三星在韩国、中国和越南生产手机。根据IDC的数据,去年三星的全球智能手机销量超过3亿部。 三星在印尼建设工厂部分也是由于,印尼出台了新的监管规定,要求在该国国内进行手机生产。该消息人士表示,三星这处工厂于今年1月投产。 三星发言人
[手机便携]
工程师教你自制高效低成本LED电源方案
LED 电源的设计需要考虑诸多因素,效率和质量固然重要,但控制成本是必须的。如何在这三者间找到平衡点就能设计出一个较为优异的电源方案,本文介绍一位工程师自己设计的一个小成本电源方案,仅供大家参考。 方案特点: 隔离方案:能过CE 输入:AC85~265V 输出:9.05V电流0.7A PF值:220V时,0.938(还可以调大一点) THD:15%左右 电源效率:82% 尺寸:PCB40*25*16 整个电源材料成本约人民币8元 采用3x3WRM6变压器,变压器原理图如下: 图1:变压器原理图 方案原理框图如下: 图2:方案原理框图
[电源管理]
ADI公司最低功耗的32 × 32视频交叉点开关
ADI最新推出业界最低功耗的32 × 32 模拟交叉点开关——ADV320x,扩展了其视频交叉点解决方案。ADV320x系列缓冲模拟交叉点开关实现了低功耗与高速度的完美组合,其功耗仅为1.25 W,比最接近的32 × 32解决方案低40%,同时又可提供出众的300 MHz带宽,速度比同类低功耗交叉点开关提高了300 %。同时,低功耗减少了对电源的需求,从而能够降低系统成本,而宽带宽能支持各种视频信号。ADV320x产品非常适合于复合视频路由,如CCTV(闭路电视)监控;以及分量视频路由,如视频会议与数字签名中使用的高清视频路由器。 ADV320x由排列成32 × 32阵列的1024个开关组成。非模
[模拟电子]
揭晓CES可穿戴创新产品超长电池续航的秘密
可穿戴设备无疑是今年年初美国赌城消费电子展(CES)的重头戏之一,不过有分析人士认为,“CES 2014:智能穿戴有热点无亮点”,原因在于没有一款产品能让消费者一见钟情。这算是给可穿戴设备泼了冷水吗?其实,情况并没有这么糟糕。荣获“CES 2014创新设计与工程奖”的Magellan Echo智能运动手表就是一个亮点,因其创新设计及优异续航力(可以在单节CR2032纽扣电池供电条件下运行长达11个月)而脱颖而出。 这听起来有点不可思议,在单节CR2032纽扣电池供电条件下运行长达11个月!并且性能还远超过其他同类设备,也就意味着Echo并不是通过牺牲性能而换取超低功耗。莫非是能量不守恒了?当然不是!Silicon Lab
[手机便携]
Intersil 推出低功耗紧凑封装的 12 位模数转换器
高性能模拟混合信号半导体设计和制造厂商Intersil公司(纳斯达克全球精选市场交易代码:ISIL)今天宣布, 推出全新 8 位、10 位、12 位 500MSPS 模数转换器系列。12 位的ISLA112P50 IRZ 500MSPS 模数转换器作为该系列的领衔产品,其功耗仅为 468 毫瓦,比所有12 位 500MSPS ADC 同类竞争产品都低 5 倍。 由于在采用ISLA112P50后,系统功耗会大幅降低,因此系统设计人员能够在单个系统中集成多个 ADC,而且不会出现高性能 ADC 常见的散热问题。此外,ISLA112P50 的低功耗还能够在不影响性能的情况下有助于延长电池使用寿命,从而让便携式或电池供电应用
[模拟电子]
泰矽微发布极低成本高压MCU芯片TCHV4018L
市场背景 智能化和电动化是汽车市场发展的两大主流方向,智能化的要求对整个汽车电子电气架构提出了新的挑战。原来架构中的一些孤岛控制单元通常只需要简单的电气控制,对芯片的外部资源要求比较低,但同时又要求远端节点具有跟域控之间的通讯能力,还有部分远端节点需要具备一定的计算能力,用于对传感器采集到的数据进行本地化融合处理或对执行单元进行简单的控制并监控其运行状态。 传统的控制架构采用分立方案,具有独立的LIN收发器,供电LDO和MCU,存在控制板面积大,MCU资源过剩,总体成本高,系统可靠性差等痛点,泰矽微新发布的TCHV4018L将32位M0 MCU与LIN收发器以及LDO供电进行了单芯片集成,实现了极低成本和极高的性价比的完
[单片机]