公司信息 解决方案 条码设备 条码耗材 工业设备 服务与支持 联系我们

 


您的位置:  敏用首页




新大陆PT850/PT853/PT852数据采集器uBase操作系统内核下载

发布时间: 2012-12-19 8:06:04
双击自动滚屏打印此页】【关闭本页

新大陆PT850/PT853/PT852数据采集器uBase操作系统内核下载
 
目前最新的uBase操作系统内核版本号为3.07.002
 
 
下面对新大陆PT850/PT853/PT852数据采集器uBase操作系统内核的升级过程做一下说明:
 
================================================================================
2012-07-17,uBase kernel for PT85x 3.07.002
 * Laser decoder(SE1200) 3.05.011
 * CCD decoder(EM1300) 1.35.28
================================================================================
1. 文件系统格式更新,运行效率更好,容错性更高。同时,支持 2KB-page NAND Flash。
 ************************************************************
 此版本内核将强制使用新版文件系统,直接从3.06.XXX及之前升级将
 导致原有文件全部丢失。因此,用户应该将原有文件拷贝出再执行
 升级。
 ************************************************************
2. 加入 DebugFlags 手段,方便控制内核调试信息输出。应用层也可用 vaDbgComPort 往串口输出调试信息。
3. 开机时,往 PT85X 串口 115200bps 连续送 'g' 字符,将使能所有的内核调试信息输出(会拖慢运行速度)。
4. 开机时检测系统时钟是否跑飞(可能由于时钟电池耗尽导致),检测到时提示用户重设系统时间。

================================================================================
2011-12-01,uBase kernel for PT85x 3.06.004
 * Laser decoder(SE1200) 3.05.011
 * CCD decoder(EM1300) 1.31.28
================================================================================
1. Modem 拨号函数的变化:
* 新增 Modem 拨号辅助函数 DialupStr_from_ConfigFile(内核函数),该文件分析 NetConf2.ini 的指定小节,返回该小节对应的拨号字符串。返回的拨号字符串可直接用于 Dialup_with_Config。原先,NetConf2.ini 的小节内容需要由应用层代码(如 850Shell)来分析,这样的一个缺点是,当今后对 NetConf2.ini 中小节的含义做出扩展时,应用程序必须跟着调整方能跟随这些变化;由内核来解释 NetConf2.ini,就不需要修改应用程序,只需升级内核与更新 NetConf2.ini 即可使用新的拨号特性。
* 特别地,对于内置无线 Modem 的机器,要使用系统默认的设置进行拨号,写法现可以简洁到:
        char bufDialupstr[256] = {0};
        DialupStr_from_ConfigFile(NULL, NULL, bufDialupstr, sizeof(bufDialupstr));
        err = Dialup_with_Config(bufDialupstr, NULL, NULL);
* DialupStr_from_ConfigFile 分析的配置文件名可以是自定义的,只是默认为 NetConf2.ini 。
* Modem 拨号,PPP 会话超时由默认 12 秒(不可调)增加为默认 60 秒,原 12 秒超时值有时不足以让 SIMCOM SIM900A 完成拨号。该超时值现可以通过拨号选项 PppTimeoutSec 来调整(单位:秒)。
2. NetConf2.ini 文件格式扩展:对于具有 UseInternalModem=YES 的小节,有如下规定:
* 可以同时加入 AccessPointName= 与 NumToDial= 选项,系统(指 DialupStr_from_ConfigFile 函数)会根据实际的内置 Modem 类型来择其一使用,对于 GPRS modem 使用 AccessPointName,对于 CDMA modem 使用 NumToDial。
* 若要自行加入额外选项,此额外选项名必须用星号打头。比如,要加入 PppTimeoutSec=120,小节得写成
        [使用内置无线Modem拨号]
        UseInternalModem=YES
        BaudRate=115200
        AccessPointName=CMNET
        NumToDial=#777
        *PppTimeoutSec=120
3. 850Shell 网络拨号部分采用 DialupStr_from_ConfigFile 获取拨号字符串。
4. 修正 CloseFindFile 返回值,成功时返回 0,原先会返回随机值。
5. 850Shell 时钟设置部分,调整时区时,实时更新用户界面上年月日时分秒的数值。

================================================================================
2011-02-22,uBase kernel for PT85x 3.06.002
 * Laser decoder(SE1200) 3.05.011
 * CCD decoder(EM1300) 1.25.20
================================================================================
新增功能:
1. 提供 EM1300 v1.25.20 固件,PT853 用户可自行更新此固件(手动执行 down-em1300d.bat)。
2. 支持新的 GPRS modem(SIMCOM SIM900)以及新的 CDMA modem(ZTE 8331)。
3. 提供新的拨号函数。新函数 ConstructDefaultGPRSDialupString, ConstructDefaultCDMADialupString 可用于获取缺省的 GPRS,CDMA 拨号字符串,它们内部会自动判断内置modem的类型。使用方法参考 850Shell 源码。
4. 提供函数 GetInternalModemTrait 来获知内置modem的类型。(提供信息之用)
5. 支持 page 为 2KB 的 NAND flash 机型。之前只支持 512B 的。
功能改进:
1. 对于红外口(COM4),UartClose 内部会等待串口输出缓冲区放空后才真正关闭串口硬件。之前,用户须自行等待,若等待时间不足将导致尾部数据没有写出。
2. WLAN 相关:WiPort 驱动内部 InternalRebootToSec 和 WiPortBootupWaitSec 默认值由 30 改为40 ,提高 WiPort 注册Wifi网络的适应性。换言之, WlanStart 超时值传 0,内部即用 40 秒为超时值。

================================================================================
2010-10-15,uBase kernel for PT85x 3.05.010 with decoder 3.05.011
================================================================================
PT850(硬件 V6、V7、V8 都适用),PT853, PT852(硬件V7)。
建议所有使用 3.05.009 及之前内核的设备都升级到 3.05.010 。
1. 重要修正:3.05.007 以来读码 API 报告的条码类型数值(BARCODEINFO.code_type) 比先前版本少 1 。现恢复为和 3.05.007 之前条码类型数值一致。 (r1985)
2. 条码类型明确了 Code39 和 Full ASCII 39 类型的区分,之前的内核版本,PT850和PT853对此二者解释不一致。现在,区分规则是:若解码后的 Code 39 内容中含有Code39基本字符集以外的字符,则认为条码类型为 FULL ASCII Code 39,否则就不是。 (r2091,2092)
3. 重要修正:文件系统相关代码标记 NAND Flash 坏块标记有误。(r2081)
4. 修正:应用程序多余的 UnRegScannerCallBack 调用会导致应用程序卡死。(r2083)
5. PT850 判断是否有接激光头的方法改为根据设备名称字符串中是否包含“850N”,包含则为无激光头的设备,同时修改老化测试,"850N"设备不测试识读头。(r1950)
6. 修正UC1610液晶驱动中温度校正函数指令错误的bug。加对UC1610液晶屏幕灰阶测试功能。(r2074)
7. 修正:PT853 启动后、直接进字符shell、然后执行文件系统上的程序,会死机。(r2046, r2085)

================================================================================
2009-10-23,uBase kernel for PT85x 3.05.009 with decoder 3.05.011
================================================================================
适用设备: PT850(硬件 V6、V7、V8 都适用),PT853, PT852(硬件V7)。
特别提示:对于硬件 V8.2 版的 PT853,必须使用此版本的内核,即,不能使用 3.05.008 或更早的,否则 PT853 将工作异常。
在 V8.2 的PT853 上、使用 3.05.009 内核,在插了串口线的情况下进行读码,主控CPU能够能够正确获取识读头传来的条码,V8.1 硬件则不能,——这是 V8.2 硬件设计上的变动。
==新增功能==
===相比于 3.05.008:===
1. PT853 添加对 EnableScanner DisableScanner 的支持。
2. 关于 PT853 识读头(COM5)与外接串口(COM1)共用硬件物理串口的处理方法:对于硬件版本号为 V8.2 或以上的机器,软件打开COM1或COM4 会将硬件切换到外接串口,打开COM5会将硬件切换到识读头。若程序同时打开了 COM1 和 COM5,则 COM5 具有优先级。
对于硬件 V8.1 或以下的机器,COM1 & COM5 互相影响的行为同 3.05.008 (请参阅 3.05.008 的发布说明)。
3. 内核加入时区支持,850Shell "时钟设置"页面可设置与查看当前时区。时区设置在格式化磁盘后不会丢失。
4. 增加如下时区相关函数:
    GetTimeZoneOffset  获取本机时区设置 
    SetTimeZoneOffset  设置本机时区 
    U_time64  ANSI C time 函数的 64 位版本 
    U_gmtime64  ANSI C gmtime 函数的 64 位版本 
    U_localtime64  ANSI C localtime 函数的 64 位版本 
    U_mktime64  ANSI C mktime 函数的 64 位版本 
   注: 原 GetClock 函数返回的年月日时分秒,在此版本内核上是指示的是本地时间。
5. 850Shell, WLAN 页面,启动 WLAN 设备前允许设置启动的超时值。某些场合下,WLAN 的启动时间会超过内核默认的 30 秒,此时可适当延长此超时值来让 WLAN 启动成功。
6. 新增内核函数 UGetHardwareVersion, UGetDeviceSerialString, UGetDecoderVersionString 替换 850Shell systeminfopage.cpp 原先那种难以移植的系统信息获取方式。
注:以上提及的新函数 SDK 需要 uTools 2.03.013 才支持
==Bug修正==
1. 针对 PT853, 修改EM1300识读头参数获取函数,适应新老版本EM1300固件。
2. 激光头驱动改进,当没有安装激光头的PT850设备运行读码的程序时候,不会死机。
3. 850Shell,时钟设置页面,在 3.05.008 的内核上保存时钟设置时蜂鸣器会有异常声响,此次的 850Shell 加了个延时来回避这个问题的出现。

================================================================================
2009-06-02,uBase kernel for PT85x 3.05.008 with decoder 3.05.011
================================================================================
==新增功能==
===相比于 3.05.005:===
1. 修改了scanner设备驱动,通过串口方式支持了 EM1300 识读头(对于PT853),通过设备名称来区分识读头是激光头还是 EM1300。
2. PT-853兼容了EM1300的设置码与PT-850的设置码。
3. 内核字符界面的下载功能添加对EM1300下载的支持,EM1300内核下载的块号为:1000,EM1300配置文件下载的块号为:999。
4. 增加了KbdRegisterEventEx函数,可以获取指定按键的按下与弹起事件。此接口需要uTools 2.03.013及以后的版本才支持。
5. 新增 GetClock_millisec 来提供毫秒级精度(PT850,853实际能精确到 10 毫秒),此函数接口在 uTools 2.03.013 中提供。
注:根据目前PT850,853的软硬件实现,GetClock_millisec 内部会按需执行"毫秒较时动作",该操作可能会阻塞调用线程 0~1000 毫秒。"毫秒较时动作"并非每次调用 GetClock_millisec 都发生,而是在系统察觉 tick 中断丢失一定数量后才会发生。
===相比于 3.05.007:===
1. 开机过程亮 LED 绿灯,待字符 shell 启动后关闭绿灯。若没有此绿灯指示,用户在按 850 电源键 4~5 秒后才能得到开机成功的反馈(看到字符 shell 界面),用户体验不佳。
==Bug修正==
1. 相比于内核 3.05.007,将 GetClock 恢复为仅取秒级精度,另增加内核函数 GetClock_millisec 来提供毫秒级精度。原因:850扫描条码期间,控制激光采集的代码会关 CPU 中断、导致tick中断丢失,而条码识读API又会对每个读到的条码调用 GetClock;根据目前 850 内核的实现,若让 GetClock 取毫秒精度,则 GetClock 的调用线程检测到 tick 中断丢失超过一定数量后会启动较时动作,此动作会导致调用线程卡住 100~1000 毫秒、结果表现为连续条码扫描不畅。因此,在不需要毫秒精度的场合,最好避免较时动作的发生,将 GetClock 恢复为仅取秒级精度即可避免此较时动作发生。
2. 相比于内核 3.05.007,CCD 识读头(即EM1300)固件版本号查询支持,即在850shell的系统信息里的"解码程序版本"将显示 EM1300 的固件版本号,之前显示的是激光扫描解码库的版本。
3. 相比于内核 3.05.005, 修改了按触发键发送启动识读消息的机制,检查scanner必须在open的情况下才发送启动识读的消息。这样避免了在进入识读界面之前按过触发键,进入识读界面后,识读头会自动启动识读的bug。
==注意事项与备注==
PT853的识读头与外接串口目前共用主控 CPU 的物理串口。根据目前 PT853 主板(硬件版本 V7.3)的硬件设计,会有如下问题:
* 当 PT853 的外接串口空置时,CPU 的串口通道与识读头连通,此时识读头工作正常,读到的条码数据能传给主控 CPU。
* 当 PT853 的外接串口连上与其他串口设备(如连接 PC 的串口)后,CPU 的串口通道将被强行切换到外接串口(PT853 的 COM1),这将导致识读头的数据无法传给 CPU,即此情况下系统将无法获得条码数据(虽然识读头会发出读码动作)。
一个典型的“故障”现象是:若 PT853 串口已连接外设时开机,系统将取不到识读头版本号,——因为取识读头版本号需要和 EM1300 进行。
 
================================================================================
2009-03-10,uBase kernel for PT-850 3.05.007 with decode 3.05.011
================================================================================
== 新增功能 ==
1. 修改了scanner设备驱动,通过串口方式支持了CCD识读头(PT-853设备),通过设备名称来区分识读头是激光头还是CCD的。
2. PT-853兼容了EM1300的设置码与PT-850的设置码。
3. GetClock() 函数获取的时间能够达到 10 毫秒的精度,即返回的 SYSTEMCLOCK.Milliseconds 数值能够精确到 10 毫秒。之前,返回的 SYSTEMCLOCK.Milliseconds 总是为 0。
增加了KbdRegisterEventEx函数,可以获取指定按键的按下与弹起事件。此接口需要uTools 2.03.013及以后的版本才支持。
== Bug修正 ==
1、修正了在进入识读界面之前按过触发键,进入识读界面后,识读头会自动启动识读的bug。
== 已知问题 ==
[2009-04-14] 该版本内核装在 PT-850(搭载激光识读头)上运行会出现扫描一定数量的条码(几个或十几个)后,扫描操作出现短暂停滞(小于1秒)的现象,停滞期间按扫描键是无法立即启动下一次扫描的。该现象的出现不会让系统运行出错,不过导致不好的用户体验。
该现象是由此次 GetClock 函数的修改导致的,下一内核版本将修正。
注意事项与备注
1、PT-853的识读头目前共用物理串口,故在PT-853设备连接串口线后,将不能进行条码识读。

================================================================================
2008-11-14,uBase-III kernel for 850 v3.05.005 with decoder 3.05.011
================================================================================
1D 解码器(Decode.bin.ue)版本更新为 3.05.011 。若只想对 PT-800 更新此解码库,可以执行压缩包中的 down1dd.bat ,带串口号作参数。
== 相比与3.05.002 的改进:==
1. 修改本机 USB 设备的 VID=0x1eab , PID=0x0501 。 0x1eab 是 NLscan 向 usb.org 申请的合法 PID 。这使得 Windows 端的 USB 驱动程序得更新才能配合之工作,新的驱动程序为 USB Datapipe and vcomdrv Driver v1.6.1 。 (r1734)
2. 内核增加 usock_connect_name() 函数,可用域名来指示要连接的主机。该功能目前只能在 850RW(WiPort模块) 上使用,因为 WiPort 模块 06.50 自身加入了自动域名解析功能。当前最新的 WebCommTest 演示了此函数的使用。
3. 内核添加激光扫描数据存储模式设置。新扫描存储模式会区分方向是从左到右,还是从右到左的数据。原先的方式照常使用,该设置提供给解码库使用。
==Bug 修正:==
1. 支持 WiPort 06.60 固件,报告正确的信号强度。若用 3.05.002 内核+WiPort 06.60,报告的 RSSI 会少 10 dBm。
2. 内核字符界面下载功能,若用串口,当串口已被打开时立即宣告失败。3.05.002 时没没有检查串口是否已被他人打开。850Shell 也作了相应修改,当串口被占用时 kernel_download 将失败。
3. 修正 Code93码 无法设置的bug。
4. 修正未发布版本 3.05.003中,无法对BOOKLANDEAN、ISBT128、MSI PLESSEY、DISCRETE20F5进行设置的bug。BOOKLANDEAN默认设置改为Disable。
==小的改动:==
1. g_isSeeVibraBug 默认值由 1 改为 0 ,即默认压制自振现象。

================================================================================
2008-06-19,uBase-III kernel for 850 v3.05.002 with decoder 3.05.010
================================================================================
==相比与3.05.001的改进:==
1. 加入更多线程同步函数,包括读写锁、可嵌套调用的互斥量、Win32 事件、信号量、警告盒。这些函数都有专门的 API,用户不再需要使用 UCreateEvent 了。
2. WiPort控制代码改进,防止WiPort死机,引入新WLAN API 。
3. 850内核加入通过USB运行download协议的功能。
4. Decode.bin.ue 更新为 3.05.010 (原为 3.05.004)。
5. udp_op.dll 更新为 1.4.0.3,修正 USB 连接bug。
==已知问题==
[2008-04-09] WlanStart 启动后,自动休眠或自动关机功能就失效了,原因是 WlanStart 启动后,COM3 上每隔几秒总是有串口数据活动。
[2008-04-21] 用老程序 BinDownloader 给 850 下载文件时会失败,这在内核 3.04.021 时还是可以成功的。
[2008-07-16] 当 COM1 已经被其他人占用的情况下(比如通过 COM1 启动了 uCIP),且 kernel_download 之 DOWNLOAD_PARAM.chk_open=0 时,kernel_download 运行会出故障,因为那导致两个线程都在读串口。今天遇到的实际故障现象是 kernel_download 运行中或运行后 850 按键失去反应。不幸的是已公布的 850Shell 源码中就是把 DOWNLOAD_PARAM.chk_open 设为 0 。今决定:改 850Shell 中的 chk_open 赋值,0 改为 1,内核不变。今后客户遇到此问题就让他去改自己的代码吧。
 
 
 
 
 
 
 
 

 


相关同类信息:
  • Motorola DataWedge条码扫描/串口通讯/磁条阅读软件工具
  • Windows CE/Mobile/PocketPC数据采集器与PC同步软件下载
  • Casio DT900/DT930/DT940几个国产底座的USB驱动程序
  • Casio数据采集器LmWin32 Download/Upload通讯软件下载
  • Casio MULTIDROP数据采集器通讯软件下载
  • Casio MultiDrop通讯控件及动态库下载(DT930/DT940/DT900)
  • Casio DT930/DT940/DT900开发工具包下载
  • Motorola数据采集器SCM系统配置管理器

  •  
    © 2003-2007 ChongShang.Com.Cn.