你现在位置:首页>技术论文>电气常识>电子元件>正文
官方PIC子程序中的BUG
日期:2008-2-20 23:14:15 来源:本站整理  
点击: 作者:未知
点击【】放大字体.
PIC单片机在几年前就已经开始接触了,当时主要是因为该系列的集成度很高,什么AD,CPP,SPI,IIC,UART,EEPROM等都弄进去了,而且FLASH类型的也多,精简指令,容易入手。 
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

PIC从进入中国大陆到现在,已经得到广大工程技术人员的认可,被认为是行业内抗干扰性最强的单片机之一。而近一两年,随着台湾MCU的发展和壮大,PIC为了保护中国市场,已经在针对台湾MCU采取一系列的措施,其中包括原PIC16C54,PIC16C57等的替代品,CF774,CF775的推出,将一些原OTP的型号如PIC12C508,PIC12C509等用新型的FLASH制程技术的PIC12F508,509等来代替,逐步的降价等。而这些措施的推出,随之而来的问题也产生了,一些用户反映以前用PIC16C57的方案改用CF775后可靠性明显降低,甚至导致系统无法使用等。同样用PIC12F508,509等也是一样,PIC还是PIC,就是在产品上体现出来的效果完全不一样了。但是无论怎么样,毕竟还有很多朋友在熟悉PIC,学习PIC。所以,经过这么长时间后,今天终于决定花点时间将这个BUG提出来,不让更多的朋友,一开始就去使用一个存在BUG的子程序,在以后的产品设计中埋下一颗“地雷”。
WWW_P※LCJS_COM-PLC-)技.术_网

这个BUG在乘法子程序中最为明显,当然也会涉及到相关的其他子程序。先看看双字节乘法子程序吧,这是个带符号位的乘法子程序。
WWW_PLC※JS_COM-PmLC-技.术_网

;*******************************************************************
WWW_PLCJS_COM-PLC-技.术_网

;                    Double Precision Multiplication
WWW_PLCJS@_COM%-PLC-技.术_网

;
WWW_PL※CJS_COM-PLC-技.术_网

;               ( Optimized for Code Size : Looped Code )
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

;
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

;*******************************************************************;
WWW_PLCJS@_COM%-PLC-技.术_网

;   Multiplication : ACCb(16 bits) * ACCa(16 bits) -> ACCb,ACCc ( 32 bits )
W1WW_P4LCJS_COM-PLC-技.术_网

;      (a) Load the 1st operand in location ACCaLO & ACCaHI ( 16 bits )
WW.W_PLC※JS_C,OM-PL,C-技.术_网

;      (b) Load the 2nd operand in location ACCbLO & ACCbHI ( 16 bits )
P.L.C.技.术.网——可编程控制器技术门户

;      (c) CALL D_mpy
WWW_PLCJS@_COM%-PLC-技.术_网

;      (d) The 32 bit result is in location ( ACCbHI,ACCbLO,ACCcHI,ACCcLO )
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

;
WWW.PLCJS.COM——可编程控制器技术门户

;   Performance :
W1WW_P4LCJS_COM-PLC-技.术_网

;               Program Memory  :       033
——可——编——程——控-制-器-技——术——门——户

;               Clock Cycles    :       333
WWcW_PLCJS_COM-PLC-技.术_网

;
WWW.PLCJS.COM——可编程控制器技术门户

;       Note : The above timing is the worst case timing, when the
WW.W_PLCJS_COM-PLC-技.术_网

;               register ACCb = FFFF. The speed may be improved if
WWW_PLCJS_COM-PLC-技.术_网

;               the register ACCb contains a number ( out of the two
WWW_PLCJS@_COM%-PLC-技.术_网

;               numbers ) with less number of 1s.
W1WW_P4LCJS_COM-PLC-技.术_网

;               The performance specs are for Unsigned arithmetic ( i.e,
WWW_PLC※JS_COM-PmLC-技.术_网

;               with "SIGNED equ  FALSE ").

本新闻共5页,当前在第11 2  3  4  5  
WWW_PLCJS_COM-PLC-技.术_网

评论内容
载入中...
载入中...
P
L
C



|










|


P
L
C









·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
·栏目热门排行
·站内热门排行