怎样查看NCR的报错代码
NCR常见故障分类及解决思路-适合新员工
NCR ATM 常见故障无法启动1、现象:ATM启动过程中显示driver C: read error system halted原因:无法读取硬盘数据,可能是硬盘坏、硬盘电源或数据线接触不良。
处理方法:由维护工程师到现场检查确保电源线数据线正常,更换硬盘。
2、现象:ATM启动过程中要求配置参数原因:主板参数丢失,一般为主板电池耗尽。
处理方法:由维护工程师到现场更换新电池,重新配置参数;无效则更换主板3、现象:ATM启动过程中显示no keyboard attach原因:找不到键盘控制板,通常是键盘控制板坏,也可能电源未供电或SDC线连接不好。
处理方法:由维护工程师到现场检查确保电源线数据线正常,或更换键盘控制板。
4、现象:开机进行自检无法通过。
原因:主板自检时发现错误导致系统停止工作,由于主板检测项目非常多,屏幕显示内容不尽相同,通常发生在内存检测通过而尚未读取硬盘数据时。
处理方法:由维护工程师到现场更换主板。
5、现象:当检测网卡时无法继续。
原因:未检测到网卡,通常是网卡接触不良,偶尔是网卡损坏。
处理方法:由维护工程师到现场处理,无效则更换网卡。
6、现象:启动时显示check sum error原因:外设SDC板有问题处理方法:由维护工程师到现场更换相应模块。
7、现象:启动时显示Red/Blue/Green Gun is Faulty原因:显示器内信号线插头接触不良。
处理方法:由维护工程师到现场处理。
8、现象:启动到正在启动的画面,不能进入操作员菜单原因:数钞控制板故障。
处理方法:由维护工程师到现场更换数钞控制板。
9、现象:开机无显示,电源指示灯不亮。
原因:220V电源没有输入A TM。
处理方法:检查电源插座确保有电,再查电源线、电源开关、总保险丝,更换损坏零件。
10、现象:开机有个红灯一直闪烁原因:内部有线路短路处理方法:立即关闭总电源,由维护工程师到现场处理重启1、现象:系统循环重启原因:主板NVRAM错误。
NCR 中文常用故障代码
NCR维护代码一、出钞模块 (1)1.1 状态码 (1)1.2 出钞定位码 (2)1.3 吸钞定位码 (3)1.4 送钞定位码 (5)1.5 主马达测试定位码 (7)1.6 出钞闸门测试 (7)1.7 送钞驱动测试 (8)1.8 嵌钞机构测试 (8)1.9 传感器测试 (9)1.10 自测试定位码 (10)二读卡器 (11)三凭条流水打印机 (13)本代码出钞模块叠钞跟堆钞模块可通用,但名称可能有所不同,请注意。
一、出钞模块1.1 状态码M-STATUS00 测试通过01 在自检过程中,从没有安装的钞箱中请求吸钞,钞箱未安装或者识别不了钞箱。
02 废钞多,例如太小,太大,叠加的或其他的03 吸钞失败(检查真空吸盘、时序及时序传感器等)04 钞票少导致吸钞失败05 垂直传输通道故障,钞票经过吸钞传感器后未能在规定时间到达LVDT(PRE-LVDT 传感器、主码盘、吸钞传感器)07 废钞箱未安装08 废钞箱满或废钞传感器脏.09 在执行命令时通讯失败.用户补钞的信息可能没有认可10 操作没有完成因为先前的操作设备或钱箱是故障的(作CLEAR可能可以清掉)11 操作没有完成有于以下原因.1.上一个操作在传输时钞票一直被叠钞 2.钞票在传输过程中没有被清掉是由于前一个操作有错误观 3.没作CLEAR,在此状态必须作CLEAR12 叠钞机芯:出钞部分的压钞错误或卡钱;堆钞:挡钞臂传感器脏或者卡钞;13 出钞闸门有杂物处于开的状态14 出钞闸门有杂物处于关的状态16 垂直通道的主码盘没有正常操作或主马达错误(常见主码盘传感器脏)18 出钞口卡钱或传感器错误(TS2、TS3、TS4、TS5)19 出钞口传感器脏( 85、86、87没有这对传感器)28 NVRAM不能被存取(SOH没有升级)29 传送传感器或传送马达异常,或送钞皮带过紧30 出钞传输部分的一个传感器脏或故障31 未使用32 在执行处理器的核心失败(80652)(尝试清出钞控制板解决)33 在处理器的12总线上通讯失败(钞箱界面板是否故障)34 在没有叠钞时出钞的操作已完成或在没有出钞时收回钞票的操作已完成(做CLEAR 动作再试,或者返回上一级菜单再进测试;)35 操作没有完成是由于交流和24V直流电从INTERLOCK没有输出(INTERLOCK开关是否打开,保险柜门是否关好)36 吸钞汽门测试没有完成因为钱箱没有安装37 TI开关是开38 TI开关是关39 LVDT或相关的线路有问题(LVDT数据线是否接好)40 钞票的参数没有配置(检查钞片参数,出钞控制板电池无电)41 在"欢迎使用..."时从钱箱吸钞的动作没有完成146 SDC数据线线故障当M-D A T A B Y T E0=01,04,13时请接着查看吸钞定位码 1.3当M-D A T A B Y T E0=02,03,06,0F,1C时请接着查看送钞定位码 1.4B Y T E0位出钞定位码跟送钞定位码共用。
检查代码的方法
检查代码的方法全文共四篇示例,供读者参考第一篇示例:在软件开发过程中,代码检查是非常重要的环节。
它可以帮助开发人员发现潜在的bug和错误,并且提升代码质量。
本文将介绍一些常用的检查代码的方法,帮助开发人员更好地进行代码检查。
一、代码审查代码审查是最常用的一种检查代码的方法。
一般情况下,代码审查包括两种形式:静态代码审查和动态代码审查。
静态代码审查是通过检查源代码或编译后的代码进行审查。
它可以发现一些潜在的bug和编码风格问题。
常用的静态代码审查工具包括Lint、PMD、Checkstyle等。
动态代码审查是通过运行程序来检查代码的质量。
可以使用断点调试工具来检查代码的执行过程,查看变量的值是否正确、程序的执行路径是否正确等。
二、单元测试单元测试是一种非常有效的代码检查方法。
通过编写单元测试用例,可以测试代码的各个功能模块是否正常工作。
如果单元测试用例都通过了,那么说明代码的质量较高。
在编写单元测试用例时,需要考虑尽可能多的测试场景,包括正常情况和异常情况下的处理逻辑。
可以使用Mock框架来模拟一些外部依赖,从而使测试更加容易。
代码走查是一种通过团队协作来检查代码的方法。
一般在代码走查会有一个专门的评审小组,由团队成员轮流担任Leader,负责主持代码走查的过程。
在代码走查中,团队成员可以提出自己的看法和建议,帮助发现代码中的问题。
这种方法可以增强团队之间的沟通和合作,提升整个团队的代码质量。
四、代码规范检查代码规范检查是一种通过检查代码是否符合编码规范来评估代码质量的方法。
编码规范是一种统一的编码风格,可以帮助开发人员编写易读、易维护的代码。
在进行代码规范检查时,可以使用代码检查工具来自动检查代码中的规范问题,如缩进、命名规范、文档注释等。
这种方法可以节省开发人员的时间,同时提高代码的一致性和可读性。
五、自动化测试自动化测试是一种自动化进行测试的方法。
通过编写自动化测试脚本,可以帮助开发人员快速地测试代码的各个功能,提高测试效率和代码质量。
errorcode错误代码含义查询
errorcode错误代码含义查询error code(错误代码)=0是操作成功完成。
error code(错误代码)=1是功能错误。
error code(错误代码)=2是系统找不到指定的⽂件。
error code(错误代码)=3是系统找不到指定的路径。
error code(错误代码)=4是系统⽆法打开⽂件。
error code(错误代码)=5是拒绝访问。
error code(错误代码)=6是句柄⽆效。
error code(错误代码)=7是存储控制块被损坏。
error code(错误代码)=8是存储空间不⾜,⽆法处理此命令。
error code(错误代码)=9是存储控制块地址⽆效。
error code(错误代码)=10是环境错误。
error code(错误代码)=11是试图加载格式错误的程序。
error code(错误代码)=12是访问码⽆效。
error code(错误代码)=13是数据⽆效。
error code(错误代码)=14是存储器不⾜,⽆法完成此操作。
error code(错误代码)=15是系统找不到指定的驱动器。
error code(错误代码)=16是⽆法删除⽬录。
error code(错误代码)=17是系统⽆法将⽂件移到不同的驱动器。
error code(错误代码)=18是没有更多⽂件。
error code(错误代码)=19是介质受写⼊保护。
error code(错误代码)=20是系统找不到指定的设备。
error code(错误代码)=21是设备未就绪。
error code(错误代码)=22是设备不识别此命令。
error code(错误代码)=23是数据错误(循环冗余检查)。
error code(错误代码)=24是程序发出命令,但命令长度不正确。
error code(错误代码)=25是驱动器⽆法找出磁盘上特定区域或磁道的位置。
error code(错误代码)=26是⽆法访问指定的磁盘或软盘。
CC++定位崩溃代码行的方法
如何根据异常提示信息找出程序出错代码LINUX 编程2010-06-23 22:44:10 阅读136 评论0 字号:大中小订阅看到网上说在debug下可以找到预料的崩溃地址行,但是实际上没有什么用呀。
(既然在debug下,那直接用调试器找不更好吗?费这么大劲干什么)(转的文章在后面)Release版本(指编译器优化后的),要找崩溃地址行就比较费劲了。
linux下的方法:1、使之生成core dump文件2、gdb调试该core文件3、根据大概的堆栈信息,运行disassemble (具体用法见gdb帮助)4、根据崩溃地址找到对应的崩溃反汇编码5、分析反汇编代码,找到程序中崩溃代码。
(如果用debug调试,就更简单了,步骤同上,编译的时候加上编译选项-ggdb ,选项详情请见man g++)mac下的方法:1.、使之可以生成core 文件,方法同linux2、分析对应的crash log 在系统日志目录下。
3、根据2的堆栈信息,反汇编,得到具体地址行。
最后转2篇win下的文章。
(这种方法好像难找release的。
)(1)(vs2003以上,vc6找对应设置就可以)步骤一:编译代码时生成map 文件和cod 文件我建立了一个名为DataAbort的项目,A)生成map文件,打开项目属性对话框,找到“链接--调试”在“生成映射文件”栏选择“是”;B)生成cod文件,打开项目属性对话框,找到“C/C++--输出文件”在“汇编输出”栏选择“带机器码的程序集”。
在默认情况下map文件以项目名称命名,而cod文件以cpp文件名命名,生成目录也不同,编译后可以在项目目录下搜索*.map 和*.cod步骤二:根据异常信息找到相应的map文件,及异常地址所在的函数步骤三:打开异常函数所在的cod文件,找到异常对应的代码行。
分析问题,解决问题(2)对“仅通过崩溃地址找出源代码的出错行”一文的补充与改进读了老罗的“仅通过崩溃地址找出源代码的出错行”(下称"罗文")一文后,感觉该文还是可以学到不少东西的。
NCR错误代码
56XX/Personas/662x/663x Self-Service FinancialTerminal Diagnostic Status CodeINTEGRATED MOTORISED CARD READER WRITFR (RS232 OR USB)M_STATUSM_STATUS Meaning00 No error - Operation successful01 Blank track02 Track not supported - SCIF write not supported03 Read error04 Write error - write data error05 No card in reader (at stage position) at start of command06 Card removed by customer during capture07 Shutter jammed open after card staged08 Shutter switch failure detected09 Error recovery successful - invalid card ejected10 Shutter jammed closed on entry or eject11 Card jam - or invalid card in throat at startup12 Card captured after unsuccessful eject13 Possible customer tampering - card jammed in throat, unable to pull card into reader14 Too many consecutive read errors or blank tracks on any track15 Too many consecutive write errors16 Too many consecutive card jams17 Too many consecutive shutter jammed closed (not shutter test)18 Card jam during capture - unsuccessful eject19 Too many consecutive invalid cards20 Device still inoperative (not diagnostics)21 No card entered within 10 seconds22 Speed out of specification fast23 Speed within +3%24 Speed within ±1%25 Speed within -3%26 Speed out of specification slow27 Invalid card detected28 Fraud throat detected obstruct ion or fraud throat failure29 Manual card insertion fraud detected30 MM invalid31 MM Module defective33 For CIM/MM: service test failed For Smart command: contact unit failureINTEGRATED MOTORISED CARD READER WRITFR (RS232 OR USB)M_STATUSM_STATUS Meaning34 CIM/MM module communications failure service test35 Error in track 3 data - CIM/MM37 CROPF feature not supported (diagnostic)38 LFCC bin full soon/full40 LFCC bin removed/not configured41 CROPF feature failure - invalid command format (diagnostic)42 Device not authorized (UIMCRW only)50 Smart/SAM/Memory card not in correct SCRW stage position51 Smart card contacts lowered - unable to capture52 Invalid Smart/SAM/Memory card command code error - transmission error53 Invalid Smart/SAM/Memory card command data error - switched off54 SCIF not configured/not responding - invalid card type/parameter55 SCIF response time-out exceeded56 Reader is in Smart/SAM/Memory code (SCRW) mode (Not in MCRW mode)57 Invalid Smart/SAM/Memory card response code (length)65 Invalid Smart Card Command Format77 Contact unit failure78 Smart/SAM/Memory card movement failure79 Smart/SAM/Memory card switch off failure80 Smart/SAM/Memory card removed error81 Smart/SAM/Memory card - no response82 Smart/SAM/Memory card transmission error83 Smart/SAM/Memory card switched off84 Smart/SAM/Memory card - illegal type/ parameter87 CIM self test failed88 CIM security module defective89 CIM security module communications failure90 CIM Interface pcb defective91 CIM Interface pcb communications failure96 Device Communications Inoperative (UIMCRW only)97 Device Communications Operative (UIMCRW only)98 Device ReConnection (State Lost) (UIMCRW only)99 Device ReConnected (New Device) [SOH/Tallies Cleared] (UIMCRW only)INTEGRATED MOTORISED CARD READER WRITFR (RS232 OR USB)M_DATAThe following table gives an overview of the M_DATA information:M_DATA MeaningByte 0 Command codeByte 1 Mag track errors: Read error, Write error or Smart commands: sub function code Byte 2 Shutter jams, card jams, HiCo write, invalid cards or Battery statusByte 3 Sensors, HiCo capabilityByte 4 ICC block information or CIM overall statusByte5 0 or CIM detailed statusByte 6 Sankyo library function codeByte7 0 or Sankyo library error code●Byte0:-Command Code00H - Reset command01H - Accept02H - Read03H - Write04H - Determine reader state05H - Eject06H - Capture07H - Disable08H - Speed test09H - Shutter/Sensor test0AH - Cleaning cycle test0BH - Card fully inserted0CH - Card fully removed0DH - Card detection - being inserted or not fully removed0EH - CIM verify0FH - CIM turnaround test10H - C IM service test11H - CIM self test20H - Battery/Relay test21H - TICC bin shutter test28H - Write buffer29H - Write card70H - Smart card (SCIF) command●Byte1Byte 1 can take one of two meanings:Magnetic track errors or SCIF sub-commands (if Byte 0 = 70H)※Mag Track ErrorsBit 7 - 1 Write error (invalid data)Bit 6 - 1 Write error (Comms fail)Bit 5 - 1 Read after write errorBit 4 - 1 Read error (Comms fail)Bit 3 - 1 Read error (Parity or LRC)Bit 2 - 1 Track3Bit 1 - 1 Track2Bit 0 -1 Track 1Bits 3-6 will be set for any detected occurrence of the error, independent ofsuccessful retries.※SCIF Sub-commands10H - Stage11H - Release20H - Power on21H - Power off22H - Smart Card Direct25H - SCIF initialize27H - EMV Smart Card Direct28H - EMV Power on30H - Contact block31H - Firmware ID●Byte2Byte 2 can take one of two meanings:for commands with the exception of the Battery/Circuit test or for commands for the Battery/Charge test only※ For commands with the exception of the Battery/ Circuit test:Bit 7- 1 Long card detectedBit 6- 0 HiCo available (only when HiCo capable and HiCo enabled)Bit 5- 1 Card jam during captureBit 4- 1 Short card detectedBit 3-1 Card jamBit 2- 1 Shutter switch malfunctionBit 1- 1 Shutter jammed closedBit 0-1 Shutter jammed openBits 0-7 will be set for any detected occurrence of the condition, independent ofsuccessful error recovery.※For commands for the Battery/Charge test only:Bit 1 - 1 CROPF circuit failureBit 0- 1 Battery Low/Battery Charging●Byte3 -Sensor and HiCoBit 7-Reader is HiCo Capable - 1 = true, 0= falseBit 6- 1 LFCC bin full soon/fullBit 5- 1 Width switch blockedBit 4- 1 Shutter switch openBit 3- 1 PD1 or PD2 or PD3 busyBit 2- 1 PD3 blockedBit 1- 1 PD2 blockedBit 0- 1 PD1 blocked●Byte4Byte 4 has two meanings:ICC Block Information (only returned for SCIF sub-commands if byte 0 = 70H) or CIM/MM overall status (returned to VERIFY_MM or a CIM_Self_Test).※ SCIF sub-commands:Bit 1 - Smart card block position - 1 = contacts downBit0 - Unused※CIM Overall Status:00H - No error11H-19H - Self test error 1 - 940H - CIM module permanently “error”41H - CIM module permanently “busy”70H - Wrap connector attached71H - Comms timeout or open line●Byte 5- CIM Detailed StatusReturned to VERIFY_MM or a CIM Self Test:00H - CIM: No error or MM: Comms error01H - CIM: Comms error or MM: Quality 102H - MM Only, Quality 203H - MM Only, Quality 304H - MM Only, Quality 406H - MM Only, Quality 507H - MM Only, No MM08H – MM/CIM Module Defective09H - CIM module or interface pcb defective0AH - Error in track 3 dataThe following table lists additional M_DATA values for CIM/MM commands which can occur in bytes 4and 5 in the response to the level 1 SERVICE_TEST. The test cards used for this test are numbered from T1 to T11.Card No. (Byte 4) Parameter to be TestedTest Result(Byte 5)Interpretation0 - 59H Not a test card1 Internal parameter OS ofmeasurement50H-51H52H-54H55H-57H58HCIM ModuledefectOKCIM Module defect Test failed2 Internal parameter D ofmeasurement (may beinfluenced by ambient light)50H-53H54H-57H58HOKCIM Moduledefect Test failed3 External electrical spikes 50H-53H54H-57H58HGoodToo highTest failed4 External electrical noise orhum50H-53H54H-57H58HGoodToo highTest failed5 Average velocity deviation ofcard transport50H-53H54H,56H55H,57H58HGoodToo fastToo slowTest failed6 Short range velocity deviationof card transport50H-55H56H57H58HGoodToo fastToo slowTest failed7 Distance between MM sensorand card surface50H-53H54H-57H58HGoodToo narrow or too farTest failed8 Lateral position of MM sensorin respect to edge of card50H-51H52H-55H56H-57H58HSensor too far leftOKSensor too far rightTest failed9 Lateral position of MM sensor 50H-51H Sensor too far leftin respect to edge of card 52H-55H56H-57H58H OKSensor too far right Test failed10 Internal Parameter 1 50H-54H55H56H,57H58H59HOKOK but sensor has lowsensitivitySensor Defect FailedNo Test C ard11 Reflection in card transport 50H-53H54H55H-57H58HOK, lowreflectivity AcceptableReflectivity too highTest failed●Byte 6- Sankyo Library Function CodeIf a failure occurs, this byte will contain the function number of the Sankyo library where the error occurred.Byte 7- Sankyu Library Error CodeIf a failure occurs, this byte will contain the Sankyu detailed error code.RECEIPT/JOURNAL (40-COLUMN) PRINTERSM_STATUSM_STATUS Meaning00 No error (good)01 Head Jam/Knife Jam02 Not used03 Black mark error04 Not used05 Paper out06 Not used07 Paper not loaded or paper jam before transport08 Communications error09 Printer open10 Ribbon needs to be replaced soon (not thermal printer)11 Printhead needs to be replaced soon12 Knife needs to be replaced soon13 Ribbon needs to be replaced now (not thermal printer)14 Printhead needs to be replaced now15 Sideways communications error16 Eject jam146 SDC link failureM_DATAByte 0:Bit 7 -0 AlwaysBit 6 -1 Fault statusBit 5 -0 AlwaysBit 4 -1 Exit sensor (covered)Bit 3 -1 Paper out sensor (active)Bit 2 -1 Black mark sensor (covered)Bit 1 -1 Paper low sensor (active)Bit 0 -0 AlwaysByte 1:Bit 7 -0 AlwaysBit 6 -0 AlwaysBit 5 -0 Transport sensor (home) (Not thermal printer) Bit 4 -1 Printhead sensor (home) (Not thermal printer) Bit 3 -1 Unit open sensor (open)Bit 2 -1 Paper not loaded status.Bit 1 -1 Paper jam sensor (covered)Bit 0 -0 Knife sensor (open)Byte 2:Bit 7 -0 AlwaysBit 6 -0 AlwaysBit 5 -0 AlwaysBit 4 -0 AlwaysBit 3 -1 Communications failure statusBit 2 -1 Controller RAM error statusBit 1 -1 Controller ROM error statusBit 0 -1 Interface ROM/RAM error statusByte 3:Bit 7-Bit3 -0 AlwaysBit 2 -1 Failed to detect black mark statusBit 1 -1 Paper jam statusBit 0 -1 Knife jam statusUSB THERMAL PRINTERSJOURNAL PRINTER MSTATUSM_STATUS Meaning0 Printer OK5 Paper Out7 Paper Not Loaded8 Communications Error9 Printer Open11 Printhead Needs Replaced Soon14 Printhead Needs Replaced Now19 Paper Not Winding20 Mechanism Jammed24 Power Supply Voltage Error25 Control Board Error26 Head Over Heated (recoverable). 10s Transient status. Not reported.27 Head Burnt Out (non-recoverable)28 Paper LowRECEIPT PRINTER MSTATUSM_STATUS Meaning0 Printer OK1 Head Jam / Knife Jam3 Black Mark Error5 Paper Out7 Paper not loaded or Jam before transport8 Communications Error9 Printer Open11 Printhead Needs Replaced Soon12 Knife needs replaced soon14 Printhead Needs Replaced Now16 Eject jam17 Transport Jam18 Capture Jam21 No Receipt During Control23 Capture Bin Full24 Power Supply Voltage Error25 Control Board Error26 Head Over Heated (recoverable). 10s Transient status. Not reported.27 Head Burnt Out (non-recoverable)28 Paper Low29 Exit Jam On Capture30 Knife needs replaced now31 Receipt Transport Not Connected On Power Up32 Media Not Cleared34 Dual Feed Mechanism JamM_DATA●Byte 0 - Printer Indication⏹30H - Receipt Printer⏹31H - Journal Printer●Byte 1 - Receipt Printer, Sensor status 1⏹Bit 7 - BD sensor (Black Dot), 1=Black⏹Bit 6 - PB sensor (Paper End of Print engine), 1=Exhausted⏹Bit 5 - DF_2b sensor (Dual feeder #2 positioning sensor), 1 = Blocked⏹Bit 4 - DF_1b sensor (Dual feeder #1 positioning sensor), I = Blocked⏹Bit 3 - DF2a sensor (Dual feeder #2 PE sensor), 1 = Empty⏹Bit 2 - DF_1a sensor (Dual feeder #1 FE sensor), 1 = Empty⏹Bit 1 - Paper low (#2) sensor, 1 = Paper Low⏹Bit 0 - Paper low (#1) sensor, 1 = Paper Low●Byte 2 - Receipt Printer, Sensor status 2⏹Bit 7 - always 0⏹Bit 6 - always 0⏹Bit 5 - Cover Open Sensor, 1 = Open⏹Bit 4- CBF sensor (Capture Bin Full), 1 = Full⏹Bit 3 - CB sensor (Capture Bin), 1 = Empty⏹Bit 2 - Exit sensor (Transport exit), 1 = Blocked⏹Bit 1 - TJ sensor (Transport Jam), 1 = Blocked⏹Bit 0 - HP sensor (Cutter Home Position), 1 =Home●Byte 3 - Receipt Printer, Sensor status 3⏹Bit 1- Feed Switch #2, 1 = Pushed⏹Bit 0 - Feed Switch (Standard model or Feeder #1), 1 = Pushed⏹Other Bits, always 0●Byte 4 - Receipt Printer, Motor status⏹Bit 7 - always 0⏹Bit 6 - Printing, 1 = In progress⏹Bit 5- always 0⏹Bit 4 - Dual feed motor #2, 1 = Going⏹Bit 3 - Dual feed motor #1, 1 = Going⏹Bit 2 - Transport motor, 1 = Going⏹Bit 1 - Cutter motor, 1 = Going⏹Bit 0 - Feed motor, 1 = Going●Byte 5, Receipt Printer, Printer status⏹Bit 7 - Fault state, 1 = Fault⏹Bit 6 - Warning due to Over Heated, 1 = Over Heated⏹Bit 5 - Non Transport Detection, 1 = Error⏹Bit 1 - Reboot flag, 1 = After reboot⏹Bit 0 - Recovery running, 1 = yes⏹Other Bits, always 0●Byte 6, Receipt Printer, Error status 1⏹Bit 7 - Black mark error, 1 = Error⏹Bit 6 - Thermal head temperature, 1 = Error⏹Bit 5 – always 0⏹Bit 4 -Transport jam, 1 = Jam⏹Bit 3 - Cutter jam, 1 = Jam⏹Bit 2 - Dual feeder jam, 1 = Jam⏹Bit 1 - Flash Erase/Write error or Memory full, 1 = Error⏹Bit 0 - H/W error -unrecoverable- (ROM,RAM, etc), 1 = Error●Byte 7, Receipt Printer, Error status 2⏹Bit 7 - Capture Jam (inc. Customer tampering), 1 = Jam⏹Bit 6 – Cover Open, 1=Open⏹Bit 5- PE (Print engine), 1 = Exhausted⏹Bit 4 - Reserved, 1 = Empty⏹Bit 3- PE feeder #1, 1 = Empty⏹Bit 2 - Unable to load paper (Std model), 1 = Unable⏹Bit 1 - Unable to load paper feeder #2, 1 = Unable⏹Bit 0 - Unable to load paper feeder #1, 1 = Unable●Byte 8, Receipt Printer, Waning⏹Bit 7 - illegal sequence or parameter, 1 = Present⏹Bit 6 - 24V Anomaly, 1 = Anomaly⏹Bit 5 - Capture - Customer tampering, 1 = Tampering⏹Bit 4 - always 0⏹Bit 3 - Capture bin full, 1 = Full⏹Bit 2- Executed Present, Purge or Refract w/o a receipt, 1 = Executed⏹Bit 1 - always 0⏹Bit 0-Paper low (#1) sensor, 1 = Paper Low●Byte 9 - Printer Indication⏹30H - Receipt Printer⏹31H - Journal Printer●Byte 10 - Journal Printer, Sensor status 1⏹Bit 6 - PE sensor (Paper End of Print engine), 1 = Exhausted⏹Bit 0 - Paper low (#1) sensor, 1 = Paper Low⏹Other Bits, always 0●Byte 11 - Journal Printer, Sensor status 2⏹Bit 6 - Winding Jam sensor, 1 = High level⏹Bit 5 - Cover Open Sensor,1 = Open⏹Other Bits, always 0●Byte 12 - Journal Printer, Sensor status 3⏹Bit 0 - Feed Switch (Standard model or Feeder #1), 1 Pushed⏹Other Bits, always 0●Byte 13 - Journal Printer, Motor status⏹Bit 6 - Printing, 1 = In progress⏹Bit 5- Winding motor; 1 = Going⏹Bit 0 - Feed motor, 1 = Going⏹Other Bits, always 0●Byte 14, Journal Printer, Printer status⏹Bit 7 - Fault state, 1 = Fault⏹Bit 6 - Warning due to Over Heated, 1 = Over Heated⏹Bit 1 - Reboot flag, 1 = After reboot⏹Bit 0 - Recovery running, 1 = Yes⏹Other Bits, always 0●Byte 15, Journal Printer, Error status 1⏹Bit 6- Thermal head temperature, 1= Error⏹Bit 5-Winding jam, 1=Jam⏹Bit 1 - Flash Erase/Write error or Memory full, 1 = Error⏹Bit 0 - H/W error -unrecoverable-. (ROM, RAM, etc), 1 = Error⏹Other Bits, always 0●Byte 16, Journal Printer, Error status 2⏹Bit 6 - Cover Open, 1 = Open⏹Bit 5 - PE (Print engine), 1 = Exhausted⏹Bit 2 - Unable to load paper (Std model), 1 = Unable⏹Other Bits, always 0●Byte 17, Journal Printer, Warning⏹Bit 7 - illegal sequence or parameter, 1 = Present⏹Bit 6 - 24V Anomaly, 1 = Anomaly⏹Bit 4- Paper Not Wound, 1 = Not Wound⏹Bit 0- Paper low (#1) sensor, 1 = Paper Low⏹Other Bits, always 0CURRENCY DISPENSERM_STATUSA1 alongside the code shows that the M_STATUS applies to stacking dispensers only and A2 shows that the code is for spray dispensers onlyM_STATUS Meaning00 No error01 Dispense requested from a cassette which is not installed or no cassettes installedduring self test02 Too many bills being rejected, for example, undersize, oversize, doubles, extrabills, or unable to learn bill width and singularity03 Pick failure04 Pick failure plus low (Out of bills)05 Sensor failure or currency jam in main transport or A short dispense wasperformed (bills dispensed fewer than bills requested) and no error wasreported062Divert gate fault caused by one of the following:* Divert gate in wrong position initially* Divert gate failed to move to correct position* Divert gate sensor failure07 Purge bin not present (unit inoperative)081 Purge bin overfill sensor blocked (unit inoperative)082Purge bin full (unit inoperative)09 Communications failure between Command and Execution firmware, or betweenhost and device for USB S1 Dispenser. Current replenishment information maynot have been determined10 Operation not attempted because the device or a cassette type is FATAL from aprevious operation. A reset of SOH to HEALTHY must be performed to clear thiscondition. Current replenishment information is not determined.11 Operation not attempted due to one of the following conditions;* Bills are still stacked in the transport from a previous operation (stackingdispensers only)*Bills may not have been cleared from the transport due to an unrecoverederror during a previous operation* The dispenser has been powered up and no CLEAR/DIAG_CLEAR has been issuedCURRENCY DISPENSERM_STATUS MeaningA CLEAR or DIAG_CLEAR must be performed to clear this condition.Replenishment information is not determined121Presenter clamping mechanism (or bill alignment mechanism) failed or jammed 131Exit shutter jammed open1 41Exit shutter jammed closed151Reserved16 Main transport timing disk did not operate correctly or the main ac motor failed17 Reserved181Currency jam in presenter transport or transport sensor failure191 Exit sensor blocked initially on next operation after a good present (bills may not have been taken by cardholder). Current replenishment information is notdetermined. See “Replenishment Data”20 to 27 Reserved28 An area of NVRAM cannot be accessed (SOH cannot be updated)291Presenter transport timing disk did not operate correctly or motor failed30 One of the presenter transport sensors failed clear or blocked31 Reserved32 Heartbeat on execution processor failed331Communications failure on the 12C bus of the execution processor. On P86 style and USB S1 Dispensers this code denotes a communications failure on the pickinterface to pick modules. Also used to denote a Fluditi attack activation.341 A present bills operation has been attempted without any bills being stacked or a RETRACT with no bills presented351Operation incomplete due to ac and 24V dc power disconnection through interlock on ATM access door361Pick valve test not attempted because cassettes were installed37 TI service switched ON38 TI service switched OFF39 The LVDT/NTS or associated circuit is malfunctioning40 Bill parameters have not been set up. This is because this is the first operationsince initial power-up or because there was an NVRAM corruption and theNVRAM was reinitialized41 An attempt to pick from a cassette in a pick module which has been disabled forin-service replenishment42 The dispenser has not been authenticated by the PC Core module. This code isonly generated by USB S1 dispenser variants43 The serial number of the dispenser control board has changed and has not yetbeen authorized for use. This code is only generated by USB S1 dispenser variants. 146 SDC link failureCURRENCY DISPENSERM_DATADispenser - stacking and spray typesDivert Gate - spray type onlyPresenter - stacking type onlyMain Motor * - stacking and spray typesExit Shutter * - stacking type onlyPresenter Bill Motor * - stacking type onlyPresenter Clamp * - stacking type onlySensor/Switch * - stacking and spray types* The M_DATA returned for these tests are unique to the tests.The number of transport sensors in the currency dispenser depends on the dispenser type as follows:Stacking Dispensers:5674/75 Front Access ATM - Transport Sensors 1 to 75674/75 Rear Access ATM - Transport Sensors 1 to 55670 ATM Front or Rear Access - Transport Sensors 1 to 55684/85/88 ATMs (Through-The-Wall) - Transport sensors 1 to 8Personas 86 ATM (Through-The-Wall) - Transport sensors 1 to 5Personas 87 ATM (Through-The-Wall) - Transport sensors 1 to 5UF-NID, NID, UF-P86- Transport sensors 1 to 5USB S1 ATMs - Transport sensors 1 to 5Spray Dispensers:MCD1 Front Access ATM - Transport Sensors 1 (FEED) and 2 (EXIT)The highest number in each of the above ranges is the exit sensor for that type.The M_DATA field contains the execution level command executed end status information returned. The first byte (Byte0) is common to all responses. Byte 0 contains the execution firmware command description and this indicates the format of the status information in M_DATA bytes 1 to n.In the following lists, A1 alongside the code shows that the M_DATA applies to stacking dispensers only and A2 shows that the code is for spray dispensers only.CURRENCY DISPENSERM_DATA●Byte 0- Firmware Level Commands:00-Reset011 - Stack012 - Dispense bills021 - Present031 - Move clamp to present04 - Clear main transport051 - Check if bills taken061 - Purge07 - Set bill widths08 - Set bill singularities09 - Set bill presentation order0A - Read dispense counts0B - Clear dispense counts0C - Read configured parameters0D - Read container status0E - Read (“Set” on P86 style and USB S1) virtual cassette type0F1 - Rotate (“Move” on P86 style and USB S1) clamp to home position 101 - Close shutter command11 - Main motor test121 - Pick valve test122 - Pick solenoid test13 - Learn hill parameters141 - Exit shutter test151 - Presenter bill motor test161 - Presenter clamp test17-Sensor test1B - Disable Hamming codes.1C1 - Pre-present222- Divert Gate testM_DATA - DispenserThe M_DATA returned under the dispenser format are associated with firmware level commands as follows:Stacking dispensers commands 01, 04, and 13Spray dispensers - commands 01, 02, 05, and 17For SELF_TEST and DIAG_SELF-TEST, the status bytes refer to pick position in the order, top, 2nd, 3rd, bottom instead of virtual cassette types 1, 2 3 and 4 otherwise the status bytes are identical.The following format of M_DATA is for pick by virtual type response (the normal case). If the response is for a pick by position command (such as SELF_TEST) then the data has a slightly different format. in this case M_DATA bytes 2, 3, 4, and 5 are auxiliary status codes for the top, second, third, and bottom positions, and M_DATA bytes 6, 7,8, and 9 are divert reasons for the top, second, third, and bottom positions.●Byte1 - Main Dispenser Status:Bit 7- 1 Virtual cassette type 3 is low on billsBit 6- 1 Virtual cassette type 4 is low on billsBit 5-0 AlwaysBit 4- 1 Pick fail occurredBit 3- 1 Fatal malfunction IN0P flag setBit 2- 1 Self-Test commandBit 1 - 1 Virtual cassette type 1 is low on billsBit 0- 1 Virtual cassette type 2 is low on bills●Byte 2- Auxiliary Status Virtual Cassette Type 1:02- Purge bin not installed03- Pick failure (status 1 – 10H). Picking is tried three times after the initial attempt, eachattempt being four or five pick cycles. If a bill has not been picked, the motor is shut off.After a time delay, the motor is turned on and picking is tried again. The cycle, motoroff, delay, motor on, pick, is repeated op to three times. If all attempts fail, this status is generated04- Invalid pick interrupt. A bill enters the transport from the wrong cassette or one of the pick sensors is faulty052 -Divert gate not in dispense position during a dispense operation when an attempt is made to dispense a bill into the note tray062 - Divert gate not in the reject position on receipt of a dispense command or when an attempt is made to reject a bill09 - Pick sensor failed clear during operation. A bill is seen at the PRE_LVDT/NTS sensorwhen it is not expected. This may be the result of a faulty pick sensor or a drag-outseparating in the transport0C - Purge bin overfill or SOH active initially or at end of clear10 - Exit shutter not closed or closed sensor failed indicating not closed, or the I2C commshas failed (only applicable if the dispenser uses an l2C shutter) or open sensor failed indicating open11 - Pick sensor blocked initially or SOH active initially or at end of clear - occurs on anon-zero dispense. OR Bill did not clear pick sensor - occurs when a picked bill jams under a pick sensor or the pick sensor is malfunctioning14- PRE_LVDT/NTS sensor blocked or SOH active initially or at end of clear21 - PRE_LVDT/NTS sensor failed clear during operation. A bill seen by the pick sensor hasnot reached the PRE_LVDT/NTS sensor in time22- Pre_LVDT/NTS sensor failed blocked / bill jam during operation271 - Presenter clamp not in home position initially or clamp home sensor failed blocked 40 - Virtual cassette type not installed. A command has been received to pick bills fromcassette which is not installed411 -TSEN 1 sensor blocked or SOH active initially on stack or at end of clear (purge path) 412-TSEN 1 (FEED) sensor blocked or SOH active initially upon initiating a dispense command or on completion of a clear421 - TSEN 2 sensor blocked or SOH active initially upon initiating a dispense or on completion of a clear (clamp position)422 TSEN 2 (EXIT) sensor blocked or SOH active initially on stack or at end of clear431 - TSEN 3 sensor blocked or SOH active initially on stack or at end of clear441 - TSEN 4 sensor blocked or SOH active initially on stack or at end of clear451 - TSEN 5 sensor blocked or SOH active initially on stack or at end of clear (exit sensor for 5674/5 rear access and all 5670 dispensers and Personas 86)461 - TSEN 6 sensor blocked or 5011 active initially on stack or at end of clear471 - TSEN 7 sensor blocked or SOH active initially on stack or at end of clear (exil sensor for 5674/5 front access)481 - TSEN 8 sensor blocked or SOH active initially on stack or at end of clear (exit sensor for 568X through the wall)491 - I2C fault initially or a Pick Interface fault was detected before the operation started4A1 - I2C failure during operation4B - Main transport timing disk too slow4C - Reserved4D - Main transport timing disk failed4E - Pick sensor failed clear initially4F - Pick sensor failed blocked/bill jam50- Pre_LVDT/NTS sensor failed clear initially。
NCR故码手册培训教材
NCR故障代码培训教材(2011-6-17)NCR机器以故障代码的形式来反映设备运行中出现的故障,通过代码与故障对照表,能够直接指示出故障所报的位置和故障含义,熟练掌握故障代码的查阅方法,将有助于在维修中快速、准确的找到故障位置,帮助解决故障问题。
一、故码形式:1、NCR故障代码一般以10和16进制数据表示,常用的故码组合为状态码(M-Status通常为一组2位的10进制数)+数据码(M-Data通常为多组2位的16进制数)。
2、数据码对应的各组2位16进制数,由左至右依次定义为BYTE0 , BYTE1 , BYTE2 , BYTE3 ……示例:BYTE000 再试01 叠钞02 出钞03 移动压钞组件到出钞部位04 清传输通道05 检测钞票是否拿走…………BYTE202 没装费钞箱03 吸钞失败04 停止无效的吸钞09 钞票被PR-LVDT识别是没有预知的…………BYTE3 同于BYTE2…………BYTE4 同于BYTE2…………3、在数据码查阅时,有的BYTE位以16进制数直接对应有代码解释,有的BYTE 位要将16进制数转换为2进制数,以2进制数的各位(即BIT0 , BIT1 , BIT2 ……BIT7 )对应相应的位码解释。
示例:16进制查阅BYTE000 再试01 叠钞02 出钞03 移动压钞组件到出钞部位04 清传输通道05 检测钞票是否拿走06 废钞07 设置钞票宽度08 设置钞票透光度09 设置钞票的出钞顺须0A 读点秒记数0B 清点秒记数…………示例:2进制查阅BYTE1BIT7=1 第三钱箱钱少BIT6=1 第四钱想钱少BIT5=0 这位总是零BIT4=1 吸钞失败BIT3=1 多功能的INOP设置失败BIT2=1 自检命令BIT1=1 第一钱箱钱少BIT0=1 第二钱箱钱少二、故码手册的编排形式1、按故障代码手册的编排方法,查阅代码时要先对应设备名,即不同的设备查阅不同的代码表(在故码手册中,每个代码表前都标识有所对应的设备名称)。
NCR故障代码(中文)
数钞机故障诊断1数钞机M-STA TUS(主故障码)所表示的意义:00 无故障。
01 要求从末安装好的钞箱数钞造成错误。
02 残钞过多(可能是因为钞票的尺寸过大或过小,或叠钞过多,或钞票上有补粘贴物。
)03 吸钞失败。
04 钱箱的钞票太少造成吸钞失败。
05 传感器故障,或是钞票堵塞在主传送器内。
06 末定义。
07 钱箱末放好。
08 残钞太多,或残钞箱的传感器被阻塞。
09 数钞机与TCM之间通讯有故障(检查SDC链路及其接口模块)10 操作并末开始,原因是由于前一次操作造成。
11 由于下列其中一种情况而使操作不能开始;1.在前面操作中,钞票仍然堆积在传送器中,数钞机处于“禁止”状态。
2.在前面操作中,钞票尚末从传送器里清除,从而产生一个“禁止”状态。
*必须执行“清”命令或清楚故障记录数钞机才能复位,(转化为“允许”状态。
)12 出钞模块的钳钞机构有故障或被堵塞。
13 钞票出口闸门不能开启。
14 钞票出口闸门不能关闭。
15 末定义。
16 主传送器的计时轮不能正确运行,或者主马达产生故障。
17 末定义。
18 钞票堵塞在出钞票模块的传送器中,或者传送器的传感器有故障。
19 在前一次的操作后没有取走钞票,出口传感器仍被钞票堵塞。
20—27末定义。
28 A TM的SOH不能修改,数钞机控制板上的NVRAM有故障。
29 出钞模块的传送计时轮不能正确运行,或者是出钞马达有故障。
30 出钞模块的传送机构某一个传感器有故障或被堵塞。
]31 末定义。
32 控制板上的80652微处理器有故障。
33 80652的1²C总线通讯失败。
34 试图进行出钞测试,但是先前并无die 钞操作,或者试图进行回收钞票,但是先前并无出钞操作。
35 由于钱柜门的互联锁末能闭合,所以操作不能执行。
、36 由于钱箱尚末安装好,所以真空阀门的测试不能执行。
]37 TI服务开关ON。
38 TI 服务开关OFF39 LVDT(线性变量位移传感器)及其有关电路有问题。
NCR错误代码手册
附录1:错误代码(56XX)STATUS REPORTING FORMATS(状态报告格式)ERROR LOG REPORTS (错误记录报告)●Hardware and High Order Comms (硬件和高级命令通信)●Current time (当前时间)●Date and time log last cleared (最后一次清除日志的时间)●Sequence number of log entry (or start and end seq. Numbers if multiple entry ,plusnumber of occurrences) 记录进入的顺序●Date and Time error was logged (or date/time of first and last entry when multiple entries)错误的日期及时间记录●The service name 服务器名●Severity - The M - STATUS value 严重错误的值●M-DATA– Up to 11 bytes of M-DATA 最大有11位●If output is to the display, number of entries still to be displayed.如果输出是到显示器,进入数字也被显示。
例子HARDWARE MODULE ERROR LOG 10:15:45LAST CLEARED 02/-2/93 09:20:18SEQ 0062LOGGED 12/03 21:12SEVERITY 01 M-STATUS 07M-DATA OE 04 00 10 08 00 42 B1 44 81*** 01 MORE ENTRIES ***<ERROR LOG MENU MORE ENTRIES>DIAGNOSTIC REPORTS (诊断报告)●Device name 设备名●Test name 测试名●Prompt for operator action (if any ) 操作员的光标方式(如果有)●Error message (if any ) 错误信息(如果有)●One or more of: 一个或多个下列信息:●MCODE Translation (MCODE转换)●M-STATUS value (M-STATUS值)●M-STATUS Translation (M-STATUS转换)●M-DATA (if any) M-DATA(如果有)STATUS REPORTING FORMATS(状态报告格式) 例子1CURRENCY DISPENSERPURGEEVENT EXPECTEDM-STATUS=00GOODTEST PASSEDM-STATUS=00GOODMDATA06 00 00例子2CURRENCY DISPENSERPRESENTTEST FAILEDM-STATUS=34NO BILLS PROVIDED FOR OP.ALARMS(报警)M-STATUS00 No error 无故障03 Turnaround test 环路测试146 SDC link failed SDC 连接失败M-DATA (M-STATUS=00)Byte 0 Sensor number 0 (composite) :0号传感器(复合)30 Inactive 未激活31 Active 激活Byte 1 Sensor number 1 (Safe door) :1号传感器(保险柜门)30 Inactive 未激活31 Active 激活Byte 2 Sensor number 2 (Silent Alarm) :2号传感器(SILENT 报警器)30 Inactive 未激活31 Active 激活Byte 3 Sensor number 3 (Tamper) :3号传感器(TAMPER)30 Inactive 未激活31 Active 激活Byte 4 Sensor number 4 (Not Allocated) :4号传感器(未分配)30 Inactive 未激活31 Active 激活Byte 5 Sensor number 5 (Not Allocated) :5号传感器(未分配)30 Inactive 未激活31 Active 激活M-DATA (M-STATUS=03)The turnaround tests for the miscellaneous interface devices are run from the INDICATORS menu (用于杂接口设备的环路测试是从INDICATORS菜单开始运行的。
检查代码的方法
检查代码的方法全文共四篇示例,供读者参考第一篇示例:在软件开发过程中,编写的代码需要经过严格的测试和检查,以确保代码的质量和稳定性。
代码的质量决定着软件的可靠性和性能,因此对代码进行检查是非常重要的。
下面将介绍一些常用的检查代码的方法,帮助开发人员提高代码质量和效率。
1. 代码审查代码审查是检查代码最常用的方法之一,也是最有效的方法之一。
代码审查是由项目组的成员对编写的代码进行检查和审查,发现代码中的错误和缺陷。
代码审查可以分为静态代码审查和动态代码审查两种方式。
静态代码审查是通过查看代码本身的结构、逻辑和规范性来发现问题,而动态代码审查是通过运行代码来检查代码的功能性和性能。
通过代码审查,可以及早发现和解决问题,提高代码的质量和稳定性。
2. 自动化测试自动化测试是通过编写测试用例和测试脚本,自动化执行测试来检查代码的质量。
自动化测试可以帮助开发人员快速地发现和修复代码中的错误和缺陷,提高测试效率和准确性。
常见的自动化测试工具包括Junit、TestNG、Selenium等,开发人员可以根据项目的需求选择适合的工具进行自动化测试。
代码检查工具可以帮助开发人员快速地发现和修复代码中的潜在问题和错误。
代码检查工具可以检查代码中的语法错误、逻辑错误、效率问题等,提高代码的质量和稳定性。
常见的代码检查工具包括Checkstyle、FindBugs、SonarQube 等,这些工具可以针对不同的编程语言和项目需求进行代码检查,帮助开发人员更好地控制代码质量。
4. 单元测试单元测试是检查代码的一个重要环节,通过编写单元测试用例对代码进行单元测试,验证代码的功能是否符合预期。
单元测试可以帮助开发人员及时发现代码中的问题和错误,保证代码的可靠性和稳定性。
在编写单元测试时,应该尽可能覆盖所有的代码路径,包括边界情况和异常情况,确保代码的健壮性和可靠性。
代码规范检查是检查代码风格和规范是否符合项目的要求和标准。
通过定义代码规范和风格指南,可以帮助开发人员编写更加清晰和规范的代码,提高代码的可读性和可维护性。
C语言错误代码及错误信息 错误
error 40:Boolean expression expected 缺布尔表达式
error 41:Operand types do not match 操作数类型不匹配
error 42:Error in expression 表达式错误
error 84:UNIT expected 缺UNIT
error 85: ";" expected 缺“;”
error 86: ":" expected 缺“:”
error 87: "," expected 缺“,”
error 88: "(" expected 缺“(”
error 89: ")" expected 缺“)”
error 90: "=" expected 缺“=”
error 91: ":=" expected 缺“:=”
error 92: "[" or "(." Expected 缺“[”或“(.”
error 93: "]" or ".)" expected 缺“]”或“.)”
error 94: "." expected 缺“.”
error 47:Invalid object file record 无效的OBJ文件格式
error 48:Code segment too large 代码段太长
error 49:Data segment too large 数据段太长
NCR M-DATA代码
NCR ATM机数钞机故障诊断-钞票出口闸门模块M-DATA(定位码)NCR ATM机出钞模块钞票出口闸门M-DATA(定位码)数钞机故障诊断M-DATA BYTE 0 = 14 表示出口闸门装置。
M-DATA BYTE 1 = 0 操作成功。
= 1 闸门已经打开,但关闭传感器却指示是关闭状态。
M-DATA BATE 2 = 0 操作成功。
= 1 闸门已经关闭,但开启传感器却指示是打开状态。
M-DATA BATE 3 = 0 操作成功。
1 闸门已经关闭,但关闭传感器却指示仍未关闭。
M-DATA BATE 4 = 0 操作成功。
= 1 闸门已经打开,但开启传感器却指示仍未打开。
--------------------------------------------------------------------------- NCR ATM机数钞机故障诊断-主马达模块M-DATA(定位码)NCR ATM机出钞模块主马达M-DATA(定位码)模块数钞机故障诊断表示的意义;M—DATA BYTE 0=11表示测试主输送器。
M—DATA BYTE 100 操作成功。
01 计时轮转动慢。
02 计时轮转动快。
03 计时轮转动失败。
04 计时轮转动太慢。
05 计时轮转动太快。
------------------------------------------------------------------------------- NCR ATM机数钞机故障诊断-出钞模块M-DATA(定位码)NCR ATM机出钞模块M-DATA(定位码)模块数钞机故障诊断M-DATA BYTE 0 = FIRMWARE LEVEL COMMANDM-DATA BYTE 1 (表示出钞模块的状态)00 操作成功01 在操作期间,钞票出口闸门不能打开,或闸门状态传感器有故障,不能检测到闸门打开02 在操作期间,钞票出口闸门不能关闭,或闸门状态传感器有故障,不能检测到闸门关闭04 在初始化中,钳钞机构不能回复到原来的位置06 钳钞机构不能回复到原来的位置,或者是检测原位的传感器有故障07 钳钞机构不能运动到出钞的位置,或者是检测出钞位置的传感器有故障0C 初始时,残钞箱的传感器被堵塞。
error code错误代码含义查询
error code(错误代码)=0是操作成功完成。
error code(错误代码)=1是功能错误。
error code(错误代码)=2是系统找不到指定的文件。
error code(错误代码)=3是系统找不到指定的路径。
error code(错误代码)=4是系统无法打开文件。
error code(错误代码)=5是拒绝访问。
error code(错误代码)=6是句柄无效。
error code(错误代码)=7是存储控制块被损坏。
error code(错误代码)=8是存储空间不足,无法处理此命令。
error code(错误代码)=9是存储控制块地址无效。
error code(错误代码)=10是环境错误。
error code(错误代码)=11是试图加载格式错误的程序。
error code(错误代码)=12是访问码无效。
error code(错误代码)=13是数据无效。
error code(错误代码)=14是存储器不足,无法完成此操作。
error code(错误代码)=15是系统找不到指定的驱动器。
error code(错误代码)=16是无法删除目录。
error code(错误代码)=17是系统无法将文件移到不同的驱动器。
error code(错误代码)=18是没有更多文件。
error code(错误代码)=19是介质受写入保护。
error code(错误代码)=20是系统找不到指定的设备。
error code(错误代码)=21是设备未就绪。
error code(错误代码)=22是设备不识别此命令。
error code(错误代码)=23是数据错误(循环冗余检查)。
error code(错误代码)=24是程序发出命令,但命令长度不正确。
error code(错误代码)=25是驱动器无法找出磁盘上特定区域或磁道的位置。
error code(错误代码)=26是无法访问指定的磁盘或软盘。
error code(错误代码)=27是驱动器找不到请求的扇区。
错误代码查询指南
错误代码查询指南随着计算机技术的不断发展,各种应用软件和操作系统层出不穷,人们在使用它们的过程中,难免会遇到一些错误和异常情况,这时候,错误代码就变得十分重要。
而错代码的查询方法也是每位计算机使用者必须要掌握的技能。
本文将会详细介绍错误代码查询的指南,帮助大家更好地理解并解决计算机中的错误和异常情况。
一、什么是错误代码?错误代码是指在计算机程序或操作中遇到的错误时,计算机会产生一些含有特定信息的编号,以向用户描述产生错误的类型、原因和位置等信息。
这些编号就是错误代码。
误代码的出现,既能让用户更清晰地了解问题所在,也能让开发者迅速找到和解决问题。
错误代码有很多种类,比如:操作系统错误、应用程序错误、驱动程序错误和硬件错误等。
二、如何查询错误代码?在遇到错误和异常情况时,用户可以通过以下几种途径查询错误代码:1. 使用操作系统自带的错误代码查询工具大多数操作系统都会自带一个错误代码查询工具,比如Windows系统的“事件查看器”,该工具可以记录系统和应用程序中的所有事件信息,包括错误和警告信息。
用户只需打开“事件查看器”,选择“Windows日志”菜单下的“应用程序”或“系统”选项,就可以看到与应用程序或系统有关的所有日志信息,包括错误代码。
2. 使用搜索引擎查询错误代码如果无法通过操作系统自带的错误查询工具查询到错误代码,那么可以通过搜索引擎,比如谷歌、百度、必应等,输入错误代码进行查询。
在搜索结果中,用户可以找到相应的错误提示、解决方法和相关数据等信息。
3. 查看软件或硬件设备的使用手册和技术支持网站对于一些常见的软件应用和硬件设备,用户可以查看其使用手册或技术支持网站,以了解产生错误或异常情况的原因和解决方法。
手册和支持网站中可以找到与错误代码有关的信息,比如故障排除、错误代码解释等。
三、如何处理错误代码?在查询到错误代码后,用户需要根据错误代码的类型和产生原因,来进行相应的处理方法。
1. 修改软件设置或配置如果错误代码是由程序内部的设置或配置问题引起的,可以通过调整软件设置或配置来修复错误。
如何进行代码的错误排查和修复
如何进行代码的错误排查和修复代码错误排查和修复是软件开发过程中非常重要的一步。
无论是编写小型项目还是大型应用程序,几乎每个开发者都会遇到代码错误。
在本文中,将为您介绍一些常见的排查和修复代码错误的方法。
一、了解常见错误类型在进行代码错误排查之前,首先需要了解一些常见的错误类型,以便能够更好地排查和修复错误。
常见的错误类型包括语法错误、逻辑错误和运行时错误。
语法错误是最常见的错误类型,这些错误通常由拼写错误、缺少分号等简单的错误引起。
编码过程中,无法通过编译器的语法检查器检测到这些错误。
逻辑错误指的是代码逻辑的错误,即代码没有按照预期的方式运行。
这些错误通常需要通过仔细检查代码来发现,或者通过运行调试器来逐行调试代码以查找问题。
运行时错误是在代码执行过程中发生的错误。
这些错误可以是由于一些不可预料的条件引起的,比如除以0、内存溢出等。
二、使用调试工具调试工具是排查和修复代码错误的重要工具之一。
现代编程语言通常都有自己的调试工具。
对于Python,可以使用pdb (Python Debugger)来进行调试。
pdb可以让开发者逐行调试代码,并查看变量的值、执行堆栈等信息。
对于Java,可以使用Eclipse、IntelliJ IDEA等集成开发环境提供的调试功能。
这些工具可以允许开发者在代码执行过程中设置断点,以及查看变量值、执行堆栈等信息。
对于JavaScript,可以使用浏览器的开发者工具来进行调试。
大多数现代浏览器都提供了JavaScript调试器,这些调试器可以让开发者在代码执行过程中设置断点,并查看变量值、执行堆栈等。
调试工具的使用可以帮助开发者逐步查找错误所在,并以更高的效率进行修复。
三、阅读错误日志当代码在运行时出现错误时,通常会生成错误日志。
错误日志可以提供有关错误发生的位置、调用堆栈等信息,这些信息对排查错误非常有帮助。
对于Python,错误日志通常会打印到控制台或记录到日志文件中。
怎样查看ncr的报错代码
怎样查看NCR的报错代码一.如何进入查看报错代码1.OS2系统,将模式开关由NORMAL状态拨到SUPERVISOR,在没有按任何键的情况下按操作员面板右下角的空白键,进入工程师菜单。
如果按了其它Terminal Utilities提供了一些检测,维护功能来保证ATM的正常运行。
对于系统管理员来说这些功能十分重要。
一般进入Terminal Utilities的方法如下:先进入supervisor,插入key盘,在未做任何其他操作时,直接按操作员键盘的空白键或AUX键。
注:在本章所有操作中,数字键1、2、3与7、8、9换位。
例如:当想按 '2' 时,应按 '8' 键;想按 '9' 时,应按 '3' 键;其余键类推。
Terminal Utilities初始菜单如下:UTILITIESSELECT A UTILITY (0=HELP)1.CONFIGURATION 系统配置菜单2.MAINTENANCE/DIAGNOSTICS 系统诊断菜单3.LEVEL 3 DIAGNOSTICS 三级诊断菜单4.TRANSFER INTERFACE 显示界面转换,是穿墙式ATM独有的功能项5. CUSTOMER CONFIDENCE TEST 客户信心测试菜单三级诊断菜单内是ATM的运行信息记录,当机器出现问题后,管理员可由此查看机器出现问题时的状态变化。
便于诊断故障。
从初始菜单UTILITIES选LEVEL 3 DIAGNOSTICSSELECT OPTION1.DISPLAY ERROR LOG 显示LOG2.DISPLAY TALLIES3.DISPLAY FITNESS 显示错误信息4.CLEAR ERROR LOG5.CLEAR TALLIES6.CLEAR FITNESS (ALL) 清除错误信息7.LOG AND TALLY DUMP8.< PRINT PRINTER >< UTILITIESDISPLAY ERROR LOGSELECT ERROR LOG1.ALL LOGS 所有的LOG2.PROCESSOR AND SYSTEM3.HIGH ORDER COMMS4.HARDWARE MODULES 硬件日志5.6.7.8.< PRINT PRINTER >< MAIN MENU就可以看到NCR的报错日志。
如何进行代码错误识别和修复
如何进行代码错误识别和修复代码错误是开发过程中常见的问题,对于程序员来说,识别和修复代码错误是必不可少的技能。
本文将介绍如何进行代码错误的识别和修复,并给出一些实用的方法和建议。
一、代码错误的识别1. 编译器错误信息:编译器通常会给出详细的错误提示,包括错误行数和错误类型。
程序员可以根据编译器的提示快速定位代码错误,并进行修复。
2. 调试工具:使用调试工具可以对代码进行逐行调试,在程序执行过程中观察变量的值和程序流程,从而找出代码错误的具体原因。
3. 日志文件:将代码中的关键信息输出到日志文件中,可以帮助程序员追踪代码执行过程中的问题,以便快速定位错误和进行修复。
4. 单元测试: 编写单元测试用例可以帮助确保代码的正确性,通过运行测试用例可以发现代码逻辑错误和潜在的问题。
二、代码错误的修复1. 找出问题所在:通过分析错误信息、调试程序和查看日志文件,确定代码错误的具体位置和原因。
2. 修改代码:根据错误的类型和原因,对代码进行适当的修改。
修复代码错误时应尽量保持代码风格的一致性,遵循团队的编码规范,避免引入新的问题。
3. 代码审查:请同事对修复后的代码进行审查,以确保代码的质量和正确性。
代码审查是一种有效的方法,可以发现代码潜在的问题并提出改进意见。
4. 重构代码:如果发现代码存在结构性问题或者长期存在的隐患,可以考虑对代码进行重构,优化代码的可读性和可维护性,减少代码错误的出现。
三、预防代码错误的方法1. 编码规范:制定统一的编码规范,并要求所有开发人员严格遵守。
规范的代码易于阅读和维护,减少了代码错误的机会。
2. 单元测试:在编写代码的同时编写单元测试用例,确保代码的正确性。
单元测试可以帮助检测出代码错误,并及早修复。
3. 静态代码分析工具:使用静态代码分析工具可以对代码进行自动检查,发现潜在的代码错误和不符合编码规范的地方。
4. 版本管理系统:使用版本管理系统对代码进行管理,及时备份和还原代码,以防止由于错误操作导致代码丢失或损坏。
如何检查代码中的逻辑错误和思维错误
如何检查代码中的逻辑错误和思维错误要检查代码中的逻辑错误和思维错误,我们需要使用一些程序员常用的工具和技巧。
下面是一些常用的方法来检查并解决这些问题:1.代码审查:这是一种通过团队中其他成员对你的代码进行检查和审查的方法。
其他人可能会发现你忽略的问题或潜在的逻辑错误。
确保你的同事使用严格的标准进行审查,并及时响应和解决他们指出的问题。
2.阅读代码:重复阅读你的代码可以帮助你发现逻辑错误和思维错误。
尝试通过换位思考的方式将自己放在用户或其他程序员的角度,看看代码是否符合预期,并解决其中的问题。
3.调试器:使用调试器可以帮助你找到代码中的逻辑错误。
逐步执行代码,并查看变量和数据的值。
如果发现某些值与你的预期不符,那么可能是存在逻辑错误。
通过调试器你可以追踪程序的执行流程,找出导致错误的具体位置。
4.单元测试:编写单元测试可以帮助你检查代码中的逻辑错误。
通过编写测试用例,测试你的代码是否按预期工作。
如果有测试用例失败,就意味着你的代码存在逻辑问题。
5.使用Assertions:Assertions是在代码中插入的用于验证某些条件的语句。
当表达式为假时,Assertion会导致程序中止或抛出异常。
通过使用assertions,你可以在运行时立即发现逻辑错误。
6.代码复审工具:代码复审工具(例如Pylint、Sonarqube等)可以扫描你的代码,并发现潜在的逻辑错误和违反编程风格指南的问题。
这些工具可以帮助你及早发现并解决潜在的问题。
7.仔细思考和规划:在编写代码之前,仔细思考问题的需求和解决方案。
制定一个明确的计划,并仔细考虑每个步骤的逻辑正确性。
在编码之前,进行良好的规划将大大减少逻辑错误的数量。
总之,在检查代码中的逻辑错误和思维错误时,需要付出一定的努力,使用一些工具和技巧。
通过代码审查,阅读代码,使用调试器,编写单元测试,使用Assertions,使用代码复审工具以及仔细思考和规划,我们可以最大限度地减少这些问题的出现,并提高代码的质量和可靠性。
NCR故障代码表
NCR故障代码表出钞模块M-STATUS(主代码)00 ⽆故障01 ⾃检过程中未发现钞箱,或钞箱未安装好、未插⼊。
02 太多的钞票被拒绝(可能是因为钞票的尺⼨过⼤或过⼩,或叠钞过多,或钞票上有补粘贴物。
)03 吸钞失败。
04 钱箱的钞票太少(⽆钞票)造成吸钞失败。
05 钞票堵塞在主传送架内,或传感器失效。
06 未定义。
07 残钱箱未安装好。
08 残钞太多,或残钞箱满传感器被遮挡。
09 数钞机与TCM之间通讯有故障(检查SDC链路及其接⼝模块)10 操作并未开始,原因是由于前⼀次操作造成装置或钱箱故障,必需执⾏⼀次复位命令(CLEAR)使装置从禁⽌状态转为允许状态。
11 由于下列其中⼀种情况⽽使操作不能开始:①因上⼀次操作造成钞票仍然堆积在传送架上,数钞机处于“禁⽌”状态。
②因上⼀次操作,钞票尚未从传送架⾥清除,从⽽产⽣⼀个“禁⽌”状态。
*必须执⾏“CLEAR”命令或清楚故障记录数钞机才能复位(转化为“允许”状态。
)12 钳钞机构有故障或被卡死,或传感器失效。
13 出钞⼝闸门开启时阻塞。
14 出钞⼝闸门关闭时阻塞。
15 未定义。
16 主马达的转速计时光栅不能正常⼯作,或者交流主马达产⽣故障。
17 未定义。
18 钞票堵塞在出钞票模块的传送架上,或者传送架上的传感器有失效。
19 在上⼀次的操作成功送出钞票后,出⼝传感器仍被钞票堵塞,可能钞票未拿⾛。
20-27 未定义。
28 ATM的SOH不能修改,数钞机控制板上的NVRAM有故障。
29 出钞模块的⽔平传输计时光栅传感器运⾏不正常,或者是⽔平传输马达有故障。
30 出钞模块的传送机构某⼀个传感器有故障或被堵塞。
31 未定义。
32 控制板上的80652微处理器有故障。
33 80652的12C总线通讯失败。
(出钞模块侧⾯吸钞板故障或连线故障)34 先前并⽆叠钞动作,但试图进⾏出钞测试,或者在⽆钞钞时试图进⾏回收钞票动作。
35 由于钱柜门的互联锁末能闭合,所以操作不能执⾏。
事件查看器查看故障代码
如何在事件查看器里查看故障代码在现场维修时,我们常常会遇到手上没有KEY盘,但是为了准确找到故障点,急需详细故障代码的情况。
本文的目的就是介绍在没有KEY盘的情况下,查看NCR ATM故障代码之方法。
首先,我们需要进入WINDOWS系统的事件查看器。
方法一在开始菜单的运行里面,输入“eventvwr”,敲击回车进入事件查看器。
方法二开始菜单(start)—控制面板(control panel)——管理工具(administrative tools)—事件查看器(event viewer)。
进入事件查看器后,在左边选择“应用程序(application)”,右边会列出事件清单。
如图所示:如果“来源(source)”一项里是“NCR Platform”则表示该事件为NCR的事件报告。
一般我们需要关注的是“错误(ERROR)”与“警告(W ARNING)”两个级别的事件。
选定其中的一个事件,敲一下回车,就会弹出事件的详细描述。
如下图所示:定位码在该事件的描述中,包含了详细的故障信息。
其中Device 表示设备Mstatus 表示主故障代码Slen 表示S码长度(与我们无关)Mlen 表示故障定位码长度(需减2)在对话框下方的数据池为各类从代码(16进制)。
因为在此例中Slen=5,Mlen=12,表示前5个字节为S码,从第6个字节开始为定位码M_data,长度为12-2=10字节,如图所示。
查阅故障代码表,我们可以很清晰地找出相应的故障点——出钞模块未安装废钞箱。
再举一个例子,如图所示:定位码在此例中,设备为热敏流水打印机,故障主代码Mstatus=7。
因为Slen=1,Mlen=6,表示数据池前一个字节为S码,从第2个字节开始为定位码M_data 长度为6-2=4字节,也就是说定位码是40 00 00 02。
查阅故障代码表,可知流水打印机送纸堵塞。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
怎样查看NCR的报错代码
一.如何进入查看报错代码
1.OS2系统,将模式开关由NORMAL状态拨到SUPERVISOR,在没有按任何
键的情况下按操作员面板右下角的空白键,进入工程师菜单。
如果按了其它
三级诊断菜单内是ATM的运行信息记录,当机器出现问题后,管理员可由此查看机器出现问题时的状态变化。
便于诊断故障。
从初始菜单UTILITIES选
就可以看到NCR的报错日志。
2.XP平台
进入管理员菜单后,选择第13项(农行是选择11项)进入诊断模式,在选择之前请插入KEY盘(软KEY或是U-KEY)。
进入诊断菜单之前会输入密码并按确定,成功后提示取取KEY盘,并按确定进入诊断菜单。
再选第5项查看报错代码。
二.如何查看报错代码
报错代码分两部份,第一是主代码M-STATUS,第二是定位码M-DATA。
以下是一例读卡器的实际报错代码:
HARDWARE MODULE ERROR LOG / 硬件模块错误日志
10:15:45
LAST CLEARED 02/02/08 18:05:25 / 上次清除的日期
SEQ 0056
LOGGED 15/04 22:12 / 记录的时间
NAME: MCRW / 故障模块:读卡器 SEVERITY 01 M_STATUS 01 / 严重性 01 主故障码的意
思:空磁道
M-DATA 02 02 00 00 / 02=读操作,02=2磁道,00
无故障
******20 MORE ENTRIES******
(ERROR LOG MENU MORE ENTRIES) / 错误日志主菜单
对于我们而言,第一是要看故障记录的时间,第二查看故障模块及它的主故障码,第三看定位码确定具体的故障,同时我们还可以看机器的其它故障,已便了解机器最近的运行状态。
三.查看主故障码和定位码的注意事项
1.所有的故障代码都是十六进制的。
2.如果代码表上有BIT的,请将代码由十六进制转换成二进制。
3.二进制的只有某一位为1的时候才有效,如果是0可以忽略。
4.十六进制为00的时候表示没有故障
5.不管是BYTE还是BIT,第一位都是BYTE0和BIT0.而不是BYTE1和BIT1.
6.BIT位的低位是从右边数起。
比如十六进制20转换成二进制为00100000,
其第6位有效即BIT5有效。
7.数钞机请注意查看M-DATA的第一位即BYTE0,这会影响下面代码的查看。
根据这个代码查询相应的模块故障代码。
四.如何看主故障码和定位码
1.主故障码M-STATUS相对简单,从报错代码表可以看出它是单独列出来
的,一般只有一个字节,只要找对故障模块就可以轻松查到主故障码。
2.定位码M-DATA,找到故障模块的主故障码后,可以从报错代码表中查
到相应的定位码的意思。
第一个代码是BYTE0,第二位是BYTE1,以
此类推。
第一个代码是BYTE0较为重要,根据它的意思去查相应操作
或是模块的错误代码。
3.实际例子:
NAME=CASH HANDLE / 故障模块是现金处理器
M-STATUS=03 / 主故障码的意思是吸钞失败M-DATA=01 08 03 00 00 00 00 20 20 20
BYTE0=01 / 叠钞时发生的,以下请查看
数钞模块的代码BYTE1=08 / 致命故障。
在这里从代码表
可以看出需要转换成二进
制,00001000,第四位即BIT3
有效,从表中可以看是致命
故障,停止使用的意思BYTE2=03 / 一钞箱吸钞失败
BYTE3=00 / 二钞箱无故障
BYTE4=00 / 三钞箱无故障
BYTE5=00 / 四钞箱无故障
BYTE6=00 / 一钞箱
BYTE7=20 / 二钞箱没有插入,这里请转
换成二进制,00100000,第五
位有效,从表中可以看出是钞
箱没有放好的意思BYTE8=20 / 三钞箱没有插入
BYTE9=20 / 四钞箱没有插入
NAME=CASH HANDLE / 故障模块是现金处理器
M-STATUS=18 / 主故障码的意思是卡钞或是
传感器故障
M-DATA=02 2D 01
BYTE0=02 / 出钞,以下的代码请看出钞
模块
BYTE1=2D / 2号传感器故障,多是卡钞
造成的
BYTE2=01 / 下残钞时没有检测到钞箱进
入废钞箱,多半是卡在叠钞
板上
在测试数钞机模块时如果发生故障,请查看相应的模块。
比如如果是测试钞门时发生故障,M-DATA请查看第五项钞票出口闸门的故障代码。
这其中传感器检测相当有用,如果一台机器发生传感器故障,可以通过检测传感器的状态来测试是否是真的传感器损坏,方法如下,第一次人为将传感器堵塞测试传感器状态是否正常(正常为01),第二次将传感器确认在没有堵塞的状态,再测试传感器状态是否正常(正常为00),从传感器状态有没有发生变化来判断传感器是否已经损坏。
其它模块可以参考本文开始的卡机故障的代码解释。