当前位置:首页 > PC
  • 2016年Android设备出货量将超Windows PC

      据科技博客TechCrunch报道,市场研究公司IDC预计,到2016年,Android设备出货量将超过传统的Windows PC。 IDC分析师今天表示,2011年包括智能手机、平板电脑及PC在内的智能设备出货量将近10亿部,营收超过4890亿美元。该公司预计,今年这些设备的出货量将增长至11亿部,到2016年则达18.4亿部,较2011年将近翻番。IDC称,到2016年,在所有的智能设备当中,Android设备市场份额将达31.1%,高于iOS设备和Windows PC。 据IDC透露,2011年,Windows PC的市场份额处于领先,达35.9%,Android设备占29.4%,iOS设备则占14.6%。IDC预测,到2016年,iOS设备份额将达17.3%,Android设备占有率则为31.1%,Windows PC份额将跌至25.1%。 不过该公司指出,Android虽然占有份额优势,但考虑到Android设备售价较低,它们的硬件厂商将难以维持盈利。IDC还说道,尽管iOS市场份额较小,但它将吸引更多的开发商,原因是iOS用户更愿意付钱购买优质移动应用。 IDC称,消费者不一定只是拥有iOS设备或者Android平板电脑,他们往往拥有多款设备。例如,他们可能拥有iPad,同时也有Android手机。IDC称之为“计算PC+”的新时代,而不是“后PC”时代。这意味着人们会拥有多款设备,不代表PC的全面没落。

    时间:2012-03-26 关键词: Windows Android 2016 pc iOS

  • 苹果Safari 6.0停止支持Windows PC

    北京时间7月26日上午消息,据美国科技博客AppleInsider报道,随着苹果发布OS X 10.8“山狮”,苹果似乎已停止开发Windows版Safari。 苹果官网目前仍为Windows用户提供Safari 5.1.7下载,但PC版Safari相关介绍已全部删除。现在苹果官网搜索“Safari”会显示以前的“快速搜索”结果,即“Safari for Mac+PC为世界上最快最易于操作的浏览器,可以同时在Mac和PC上运行。”但在访问苹果官网的Safari主页时,显示内容仅有Safari 6.0的相关信息,以及新版本各项特色功能的介绍,如智能搜索栏、标签浏览、云标签、分享、离线阅读列表,以及针对中国用户所做的改进等。 当前的Windows版Safari均不支持这些新功能。在主页底部有注释称:“山狮已支持最新版Safari,此版本可通过Software Update升级功能获取。”尽管苹果提供了Safari扩展功能下载列表,但却未提供可直接下载Safari 6.0的链接。 史蒂夫·乔布斯(Steve Jobs)曾在2007年的Macworld Expo展会上宣布Safari 3.0支持Windows PC。该版本Safari的首要目标是推行现代化、标准化的浏览模式,因此基于webkit引擎的Safari 3.0当时也曾在Windows弥补了微软(微博)Explorer和Mozila火狐浏览器以外的空缺。然而谷歌(微博)后推出同样基于WebKit引擎的免费浏览器Chrome,并且受到了更广泛欢迎,苹果似乎也就无需再在Windows上耕耘。 此外,苹果后来在iOS上获得的成功,以及其他移动平台商(如诺基亚(微博)、RIM、Palm、谷歌等)的自发采用使得WebKit成为了移动平台上最重要的浏览器引擎。 苹果终止对Windows的支持后,可以更集中精力发展其自有平台,Safari 6.0的多项独特功能就是例证。不过苹果目前仍然为不同平台上的WebKit开发提供支持。 Windows版的其他苹果软件,比如iTunes、QuickTime以及Bonjour打印机支持目前仍然可用。苹果官网上部分页面也仍链向“Safari for Mac + PC”下载页,但下载链接已经仅适用于Mac和iOS设备。 更多计算机与外设信息请关注:21ic计算机与外设频道

    时间:2012-07-24 关键词: Windows pc iOS 6.0 safari

  • 新手势控制设备支持Mac和Windows PC

    据外媒报道,Thalmic实验室推出了一款可支持Mac和其他PC的手势控制臂环--MYO。当用户戴上这款臂环,就可以对设备进行多种功能的控制,比如紧握拳头即可关掉iTunes、进行第一人称射击游戏。据悉,Myo通过检测经过佩戴者手臂的电讯号来实现以上这些功能的控制。 Myo的开发者表示,目前这款设备可以支持Mac及Windows系列电脑,另外他们正在为iOS及Androi设备开发相关的API。 Myo现在已经开始接受预定,售价为$149,发货则大概要等到今年下半年。

    时间:2013-02-23 关键词: Windows mac pc iOS

  • 基于PC/104的实时姿态数据采集系统的设计

    1 引言   数据采集是信息处理的重要环节。在野外试验系统中,试验平台的姿态及运动状态信息测量对试验结果具有较大影响,因此,对试验平台的姿态信息进行实时采集具有现实意义。而且, 特别是对于导弹导引雷达等设备, 由于要求对现场信息实现实时测量和控制, 并且应用环境复杂,因而对数据采集系统的精度、便携性、可靠性与实时性具有较强要求。PC/104是嵌入式PC的机械电气标准[2],它的制定为嵌入式应用提供了标准的系统平台,它继承了IBM-PC的开放式总线结构的优点,为工程师提供了标准的、高可靠的、功能强大的、使用方便的系统组件。本文详细论述了基于PC/104平台的姿态数据、GPS定位信息采集系统的设计方案。 2 系统硬件设计 2.1 系统组成及功能     采集系统在硬件上主要由地面固定站和便携式流动站组成。固定站包括:嵌入式控制计算机、多种姿态传感器、固态硬盘和数传系统;流动站包括:便携式手持机和数传电台等组成。系统组成如图1所示。[1]                                         图1 系统组成框图     地面固定站主要完成实时记录地面GPS接收机的定位及姿态信息;记录便携式流动站的GPS定位信息并进行实时显示[3][9];对地面设备进行参数装订和系统设置,实时监控地面设备的工作状态,实时显示地面站和流动站的相对空间位置和姿态数据并送给试验设备;实时记录试验数据,试验结束后进行数据处理分析;打印试验数据、图形、曲线及分析结果。其组成为:(1)GPS接收机;(2)无线传输设备;(3)电源模块;(4)控制计算机(地面固定站控制计算机);(5)试验设备;(6)平台姿态传感器等。     流动站主要完成实时记录并显示本站的GPS定位信息[1]、姿态信息,将所得到的数据通过无线数传电台传输给地面固定站进行处理。其组成为:(1)GPS接收机;(2)姿态传感器;(3)无线传输设备;(4)电源及天线系统;(5)控制计算机(流动站手持机)等。    本系统主要用于精确测量试验设备载体和流动站的定位及姿态信息,通过无线数传设备进行通信,同时提供速度信息,导航信息,用以输出给试验设备。固定站和流动站无线传输采用半双工模式,速率为9600bps。 2.2固定站控制计算机设计     固定站系统组件中控制计算机是核心,经过分析,其外部数据输入/输出接口有:GPS数据串行RS232输出1路,平台姿态传感器串行输出1路,无线传输设备串行输出1路,试验设备USB接口输出1路。     在设计过程中按照便携式、模块化的思想,嵌入式计算机模块采用DiamondSystems公司的ATHENA模块,该模块有CPU子模块和数据获取子模块两部分组成,可以支持DOS、Linux、Windows 98/NT/XP/2000、Windows CE.Net、VxWork等操作系统,CPU子模块包括128位图形加速卡,128M板载内存,支持UDMA33硬盘、最大可以安装512M电子盘,4个全功能RS-232,2个UART,2个异步口,4个USB 1.1接口。模块尺寸4.175英寸×4.475英寸。完全能够满足设计要求,且具有端口备份。 2.3 其他部件的配置     除控制计算机外,其他部件包括:固定站GPS接收机、平台姿态传感器、无线传输设备和流动站手持机。     1、GPS接收机:固定站接收机选用NovAtel公司高性能双天线GPS接收机 BeelineTM 。该卡工作在L1频率,采用双GPS天线,通过原始观测量来获取基线的方位和俯仰角度,同时能得到主天线的三维位置和速度信息。数据率最高可达5Hz。流动站接收机选用Garmin25 LP GPS模块。     2、平台姿态传感器:在地面固定站和流动站的姿态传感器选用Crossbow公司出品的CXILT02E数字倾角传感器。该产品可提供360度范围的滚动角和180度范围的俯仰角。电源输入9~30VDC,采用RS232输出。     3、无线传输设备:采用Pacific Crest公司的PDL数传电台。该电台在低功率工作时,最大仅2W,传输波特率为4800~38400bps。     4、手持机:选用济南浪潮超越公司的巧金刚Ⅱ型加固手持式计算机,该机RISC CPU主频可达400MHz, 超高分辨率显示, 内置GPS模块,实现全球定位, 可提供应用软件开发系统,方便用户进行二次开发,支持Windows CE操作系统。 3 系统软件设计     在进行软件设计时,固定站系统软件设计采用了Borland公司的C++ Builder 6.0进行二次开发而成[5]。在设计过程中,利用交互编程技术使窗口、事件和消息等Windows操作系统的工作方式与底层硬件驱动程序相融合,使软件完全按事件驱动的模式来执行,并在软件中加强了容错能力设计,在最大限度上避免了操作人员人为或非正常因素造成的错误。     由于设计时采用手持机作为流动站的主控计算机,操作系统为Windows CE,因此,流动站软件设计采用EVC(Embedded Visual C++)作为开发工具。Windows CE是紧凑的、高效的和可升级的操作系统,被广泛应用在各种嵌入式产品中。EVC是Microsoft公司退出的开发WinCE应用程序的成熟、强大的工具,它和Visual C++开发工具具有一定的相似之处。 3.1 系统软件组成     整个软件系统包括固定站操控软件和流动站操控软件。如图2所示。     点击看原图                              图2软件模块组成图     流动站操控软件主要完成通过串行接口接收手持机内部GPS接收机数据、外部姿态传感器数据,并将数据进行处理、存储、显示、打包下行发送等功能。总的来说在结构上主要分为:端口初始化模块;数据接收模块;数据处理模块;数据输出模块。在数据打包下行过程中,软件将接收的姿态传感器数据和GPS接收机数据自定义格式进行打包,一起输出给无线数传设备。     固定站操控软件完成Beeline接收机数据、平台姿态传感器数据和流动站通过数传设备输入的数据接收工作,经过处理后,将有效的姿态数据通过USB接口输出给试验设备使用。在结构上由以下功能模块组成: · 初始化模块。     该模块在软件启动时,完成程序初始化,对各个端口的设置,包括串行口协议设定,USB接口初始化等。另外还要对固定站的Beeline GPS 接收机进行初始化设置,以使之按照要求输出有效数据。 · 数据接收模块。     数据接收模块包括固定站GPS数据接收子程序、流动站打包数据接收子程序和固定站平台姿态数据接收子程序。 · 数据处理模块     数据转换模块完成数据包的解包过程,并且根据流动站与固定站定位信息计算两者间距离及流动站以固定站为原点在空间直角坐标系中的方位角和俯仰角。 · 数据输出模块     数据输出主要用来将有效的姿态数据通过USB接口输出给受试设备。 3.2 软件设计难点分析     从图1中不难看出,无论是固定站还是流动站,对串口进行操作都是一个不可或缺的方面。固定站有3个串口操作,流动站需要3个串口操作。因此,设计过程中,统一采用YbCommDevice串口控件实现。通信参数可直接在属性中设定,在程序运行过程中也可通过输入界面进行多次更改。它支持任意格式的数据包收发,支持多种数据包协议,操作简单、实用,是一个较为实用的C++ Builder串口控件[4]。在实现时,按照协议统一的原则,设定串口数据格式为9600bps,1个起始位,8个数据位,1个停止位,无奇偶校验。     在软件的设计开发过程中发现包括GPS数据、传感器数据等各种数据包均有固定格式,因此, 数据包的格式分析是重要一环。     1.GPS输出格式分析[6]:两型GPS接收机的定位信息格式为NMEA-0183格式。这一格式是较常用的一种数据通信标准,它是在0180和0182的基础上增加了GPS接收机输出内容而完成的。此格式直观、易处理的优点使得几乎所有的接收机及OEM板都采用了这一格式。典型输出的语句如下所示: $ AABBB,ddd ……………………ddd,*hh<CR><LF> 其各字段定义如下: $:起始语句头; AA:对话设备识别符; BBB:语句名; ,:域分隔符; ddd…ddd:发送的数据内容; *:校验和符号; hh:校验和; <CR><LF>:终止符(回车、换行)。     2.倾角传感器输出格式分析[8]:倾角传感器数据包为6字节的定长数据包,数据格式如表1所示。数据头字节和最后的校验和字节用于通信同步,实际格式为ASCII码。具体定义如下:          表1:倾角传感器数据包格式        3.USB接口操作:在对USB进行操作的时候,必须要利用WinDDK将设备驱动程序进行编译,主要步骤为:得到设备的厂家标识和产品标识,利用驱动程序的GUID值获取设备的文件名, 用 CreateFile 函数打开设备,接着利用设备文件名和驱动程序里面的 Pipe 名打开 Pipe, 访问这个 Pipe 对应的 USB 端点,利用CreateFile 得到的设备句柄,从而通过 DeviceIoControl 函数实现设备规定的动作。需要注意的是厂家标识、产品标识和GUID值在驱动程序的“*.inf”文件里面就可找到,如果没有,则需要联系设备生产厂家了;Pipe 名和DeviceIoControl函数的参数需要参考驱动程序资料才能找到。 相关代码如下: HANDLE hPipe = OpenDevPipe("Pipe1"); //驱动程序里面的 Pipe 名, 对应访问某个端点的 I/O,需要与驱动一致 if(hPipe != INVALID_HANDLE_VALUE) //打开 Pipe 成功  {    WriteFile(hPipe, Buffer, BytesToWrite, &nBytesWritten, NULL); //把 Buffer 里面的字节写入 hPipe    CloseHandle(hPipe);  } //使用 DeviceIoControl 访问 USB 设备 HANDLE hDevice = OpenDevice(); if(hDevice != INVALID_HANDLE_VALUE) //打开设备成功  {   if(DeviceIoControl(hDevice, IOCTL_READ_xxxx, &IOBlock, sizeof(IOBLOCK), &c, 1, &nBytes, NULL)) {   //操作成功,  }    CloseHandle(hDevice); } 4 结束语     在系统设计中,以PC/104嵌入式计算机模块为核心,构建了由GPS接收机、无线数传设备、倾角传感器等设备组成的实时姿态数据采集系统,试验表明,系统能够实时、稳定、连续地提供固定站和流动站的姿态信息、定位信息以及两者的相对位置信息,从而能更好地掌握试验设备载体的运动状态,为得到精确的试验结论提供保障。     本文主要创新点在于以PC/104嵌入式计算机模块为核心,构建由GPS接收机、无线数传设备、倾角传感器等设备组成的实时姿态数据采集系统,分析了软件设计的难点及实现方法。在工程实践上具有实际意义。 参考文献:[1] 王惠南.GPS导航原理与应用[M].科学出版社,2003.8 [2] 彭树生. 3mm接收机的PC104数据采集与控制电路设计[M].微计算机信息(测控仪表自动化),2003.NO.11 P.36-38 [3] 刘基余.GPS卫星导航定位原理与方法[M].科学出版社,2003.8[4] 范逸之等.C++ Builder与RS-232串行通信控制[M].清华大学出版社,2002.6[5] 陈灿煌.C++ Builder 6彻底研究[M].中国铁道出版社,2003.1[6] Beeline GPS Receiver User’s Mannual[S].Novatel Company. [7] Garmin25 LP GPS Receiver User’s Mannual[S].Novatel Company.[8] CXTILT02E_02EC User’s Mannual[S].CrossBow Technology,INC[9] Jeffrey S, Yoaz B et al. Micro GPS: On-Orbit demonstration of a new approach to GPS for space applications[J]. Navigation, ION, 2000, 47(2)

    时间:2006-11-29 关键词: WinCE pc 104

  • 学嵌入式应该知道的基础知识框架整理

    学嵌入式应该知道的基础知识框架整理

    1、嵌入式系统的定义 以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗的严格要求的专用计算机系统。 2、嵌入式系统的组成 硬件部分:嵌入式微处理器、外围硬件设备; 软件部分:嵌入式操作系统、特定的应用程序。 嵌入式微处理器 外围设备是指在一个嵌入式系统当中,嵌入式处理器以外的完成存储、通信、调试、显示等辅助功能的其它部件,根据外围设备的功能可分为以下3类: (1)存储器:SRAM、DRAM、NAND FLASH、NOR FLASH等; (2)接口:并口、RS232串口、SPI串行接口、USB通用串行总线、以太网接口等; (3)人机接口:LCD、触摸屏、键盘等。 嵌入式操作系统 3、嵌入式系统的特点 嵌入式系统与普通PC的对比: 开机顺序 嵌入式系统的开机顺序: PC机的开机顺序: 4、嵌入式系统的开发流程 通常基于Linux系统的嵌入式开发步骤如下: (1)开发目标硬件系统:如选择微处理器、Flash及其它外设等; (2)建立交叉开发环境:安装交叉编译工具链(如arm-linux-gcc)、安装开发调试工具、设置好环境变量、配置串口通信工具(如超级终端、SecureCRT等)、配置网络通信工具(如NFS)、配置Samba服务器等; (3)开发Bootloader:移植uboot、vivi; (4)移植Linux内核:如Linux2.6.8内核; (5)开发根文件系统:如cramfs、yaffs等; (6)开发相关硬件的驱动程序:led、adc等驱动; (7)开发上层的应用程序:如QT GUI开发。

    时间:2018-06-22 关键词: 存储器 接口 pc 基础教程

  • 在计算方面,CPU核心和GPU核心有什么区别?

    在计算方面,CPU核心和GPU核心有什么区别?

    PC在刚诞生的时候,其实是没有GPU的,所有的图形计算都由CPU来计算。后来人们意识到CPU做图形计算太慢了,于是他们设计了专门的图形加速卡用来帮忙处理图形计算,再后来,NVIDIA提出了GPU的概念,将GPU提升到了一个单独的计算单元的地位。 由于两者面向的计算不同,CPU面对的是人们各种各样的需求,比如你打开一个网页的时候,CPU要负责网络交互,要解析HTML文件和JS脚本,要构建DOM树,要加载各种各样的资源,而最后才轮到GPU的事情:渲染画面并输出。 再举个例子,玩游戏的时候,CPU负责完成游戏程序的逻辑、从硬盘里面加载游戏数据,然后才开始把图形相关的东西挑出来交给GPU做,而游戏中的各种运算还是离不开CPU的帮助,比如常见的NPC,他们怎么运动,还是需要CPU来运算。 从上述两个例子中就可以看出,CPU负责的是各种各样的计算,为了应对这么多种类的计算,它的通用性要求非常高,而这就必定会造成设计上的复杂,比如要支持if-else这类条件语句就要针对性加入一些控制单元。而GPU从诞生开始,面对的就是单一种类的计算,早期的GPU为了更好的应对单一的图形计算任务,采用的是流水管线形式的设计,通过在芯片规模上的大量堆叠,就可以获得在图形处理速度上的提升,从而提供更好的画质,简单粗暴。 所以问题的答案很明显了,在计算上,CPU的通用性更强,什么活都能接,但是速度都不咋地;GPU只能接图形计算这类活,速度非常快,或者也可以接特别写给它来计算的任务,这也就是GPGPU(在图形计算单元上进行的通用计算)的由来。

    时间:2019-07-22 关键词: CPU pc GPU 基础教程

  • 全球技术前瞻:PC到智能手机的革命

    当前的个人计算场景仍然是围绕PC来进行的。访问互联网、处理文件、获取信息和分享沟通,PC仍是最重要的信息终端。随着芯片能力的增强、网络带宽的增速以及越来越多的应用以互联网服务的方式提供,智能手机在个人计算场景中的地位越来越重要:手机上网的人群越来越大,以 为代表的智能手机还通过APPSTORE重新演绎了应用程序的获得方式。 但这些仍然没有改变PC作为个人计算中心的应用场景,即使也高度依赖PC上的iTunes作为初始化、同步、处理和存储信息的基站。如果把比作手机中的战斗机,那么PC就是这些战斗机的航空母舰。有了更多的提升,但还是不能摆脱对PC的依赖,任何装载照片、音乐和视频的过程都依赖和iTunes的同步。 然而,潮流在变化,用户对于手机的依赖程度越来越高。表现在:用户的最紧密社交关系都直接与手机相关,用户获取和分享信息(SMS、电子邮件、friends update)的第一渠道已经从PC迁移到了手机,商业用户碎片时间的娱乐成为了娱乐消费的主流。在实际使用中,用户不得不保持两台设备,智能手机和PC电脑,并需要及时同步,这并不是一个最优化的使用场景。 移动运营商和手机制造商一直在努力,希望手机可以取代PC成为个人信息获取和信息处理的中心。在刚刚结束的2011年CES(国际消费电子展)上,摩托罗拉展示了“有史以来最强大的智能手机” ATRIX 4G,其设计理念正体现了以智能手机为中心的个人计算场景。 ATRIX 4G采用1G主频双核处理器,具有1G的内存和最大48G的存储,基本上相当于一个的硬件配置。其软件系统与MOTO近期的策略一致,是基于Andriod 2.2;4G的意思是这款手机支持下一代宽带移动网络,比我们现在能感受到的3G速度还要高一个数量级。在使用场景上,ATRIX既是战斗机,也是航空母舰。单独使用,它是一款功能强大的智能手机;与摩托定制的基座配合使用的时候,则变成了一个全功能的电脑,而这个电脑的所有计算、存储以及通讯能力仍然在ATRIX本身,基座只提供全功能键盘,12寸屏幕和8小时不间断电源。 我亲身感受了一下ATRIX和基座配合使用的场景,好消息是这个组合比大多数的(包括正用于书写本文的X61)还要轻,更好的消息是由于这个组合的核心是智能手机,所以可以直接用电脑的操作方式来收发短信、打电话,并且直接利用手机内置的4G+WIFI,浏览网页的速度惊人。不好的消息则是目前支持(Andriod)系统的应用软件还不够丰富和优秀,特别是字处理,Excel和PPT类的软件都还达不到Microsoft Office那种出神入化的爽利,不过用QuickOffice做一般性的工作也还胜任。 ATRIX 4G和同时发布的摩托平板电脑BOOM都获得了2011 CES大奖,这也让刚刚拆分的摩托罗拉成为今年CES最耀眼的明星。但我并不认为摩托会担当起引领智能手机成为个人计算中心的使命。 1977年面世的 II是个人计算时代的开山鼻祖,IBM随后于1983年推出的PC XT以更开放的体系架构引发了个人计算机的革命。不过苹果和IBM都没有真正成为个人计算时代的翘楚,反而是的X86CPU芯片组和微软的Windows操作系统推动PC成为了大众消费电子产品。俯瞰今年的CES,近70款新平板电脑,无数的新型智能手机,都基于一个操作系统:Android。 Android的开发者Google这次很低调地参展,只租了一个会议室和预约前来拜访的厂家洽谈,如同一只看不见的手,不慌不忙地策划从PC到智能手机的革命。

    时间:2019-04-23 关键词: 智能手机 pc 技术 全球 技术教程

  • VxWorks下PC/104-CAN驱动程序设计

     摘要:详细介绍实时多任务操作系统VxWorks环境下驱动程序的设计原理;针对驱动程序实现的困难,给出VxWorks下实现驱动程序的工作步骤。文件以PC/104-CAN适配卡为例,简要介绍硬件结构,重点给出驱动程序实现的关键代码。     关键词:RTOS VxWorks PC/104 CAN I/O系统 驱动系统 VxWorks是一款优秀的实时多任务操作系统,具有抢占式调试、中断延迟小等特点。本文在简要介绍必备的硬件环境下,以VxWorks为平台,详细介绍驱动程序的开发。 1 PC/104-CAN适配卡的硬件结构 PC/104-CAN适配卡主要由CAN控制器(SJA1000)、光电隔离(6N137),收发驱动器(82C250)及译码电路组成。编程主要了解的是控制器SJA1000。CAN适配卡原理如图1所示。2 CAN地址译码和中断选择 系统104主板的CPU为486DX,其对接口板访问有两种方式:内存映射和I/O访问。I/O寻址采用专门的指令,每次只能传送单个字节。内存映射方式可以访问较大的地址空间并且指令丰富,便于实现快速交换数据。本文讨论的CAN卡采用存映射模式工作,与486DX接口是104总线,它与ISA总线兼容。对于Intel X86体系的CPU,ISA可以映射的空间为0xC8000~0xEFFFF。使用比较器和地址选择开关组成可选端口地址译码电路,通过开关选通内存映射基地址(C8000H、C9000H、CA000H、…、EF000H),以避免与其它器件冲突。CAN偏移地址分配如下: 00~FFH SJA1000的寄存器; 100H~1FFH 对该范围内的任意地址进行写操作,均可导致CAN硬件复位。 SJA1000的INT引脚通过跳线选择IRQ3~7、IRQ9~12或IRQ15中的一个,避免与其它的适配卡冲突。 3 PC/104-CAN适配卡驱动实现 3.1 VxWorks驱动概述 VxWorks操作系统有两种方式实现驱动。第一种方式是,把设备驱动程序作为独立任务实现,直接在顶层任务中实现硬件操作,完成特有专用的驱动程序。第二种方式是,VxWorks的I/O系统将设备程序作为内核过程实现。这种方式便于实现I/O子系统的层次模型,便于文件系统一起把设备作为特殊文件处理,提供统一的管理、统一的界面和统一的使用方法,并把设备、文件及网络通信组织成为一致的更高层次的抽象,为用户提供统一的系统服务和用户接口。我们和这种驱动方式。    作为I/O系统和硬件设备之间的连接层,VxWorks驱动就是屏蔽硬件操作,为I/O系统提供服务。实现一个完整的驱动,必须了解VxWorks下I/O的三个基本元素:File、Driver和Dervice。File是为用户提供访问设备的统一接口;Driver是实现具体的基本控制函数,也就是实现I/O系统所需要的接口;而Device则是一个抽象的硬件设备,是一系列的结构体、变量和宏定义对实际物理设备的定义。一般而言,实现一个驱动应该有三个基本的步骤:①用编程语言完成对实际物理设备的抽象;②完成系统所需要的各类接口及自身的特殊接口;③将驱动集成到操作系统中。之后还有一些调试工作。 3.2 VxWorks I/O系统驱动程序框架 VxWorks为各种设备(包括字符设备、块设备、虚拟设备及网络设备)提供统一的访问接口,包括七种基本的I/O函数:open(filename、flags、mode),create(filename、flags),read(fd、&buf、nBytes),write(fd、&buf、nBytes),ioctl(fd、command、arg),close(fd)及remove(filename)。I/O系统所起的作用就是,把用户请求分配到与设备对应的驱动例程中去。VxWorks系统中有一个驱动程序列表,其形式如表1所列。表1 设备驱动列表(调试时可利用iosDrvShow()查看) 驱动号码 create remove open close read write ioctl 1               2 ca Open NULL ca Open ca Close ca Read ca Write ca Ioctl I/O系统的可动态调用iosDrvInstall()函数将设备的驱动例程(即XXOpen()、XXClose()、XXRead()等)加入到设备驱动列表中,如图2所示。 同样,系统中有一个设备列表,每个设备对应于设备列表中的一项,每一项包括设备名称和设备驱动号,同时包括一个设备描述的结构。该结构第一个变量是DEV_HDR类型的变量DEV_HDR。 DEV_HDR的定义如下: Typedef struct { DL_NODE node; /*设备列表节点*/ short drvNum; /*驱动号码*/ char *name; /*设备名*/ }DEV_HDR; 系统调用iosDevAdd(),可以将设备加入到设备列表中。系统中将驱动和设备联系起来的就是文件描述符列表,每个文件描述符列表除了包括驱动号、设备ID外,还包括文件名、可用标志和指向DEV_HDR的指针。系统每次成功执行open(),返回一个文件描述符,这样对于设备的read()、write()及ioctl()就可以通过文件描述符进行。 文件描述符表(调试时调用iosFdShow()查看)如下: I/O系统的整体结构如图3所示。系统启动时(一般挂接在usrroot()),XXDrv()和XXDevCreade()便将设备及其驱动加入相应的列表中。 3.3 设备驱动程序的访问过程 下面以CAN驱动程序为例,说明驱动程序的访问过程。(假定设备名“/can/1”并且以CAN设备驱动程序为例,上述中的XX在这里用Can代替。) ①fd=open(“/can/1”,O_RDWR,0644) ②I/O系统在设备列表中寻找设备名为/can/1的设备项,找到相应的设备驱动号。 ③I/O系统在文件描述符中保留一个文件描述符空间。 ④I/O系统在设备驱动列表中找到对应的CanOpen(CAN_DEV*PCAN_DEV,UBYTE*remainder,int flags),该驱动例程返回设备描述符的指针。 ⑤I/O系统将设备描述符的指针存储在文件描述符列表的Device ID,同时将对应的设备驱动号存储在文件描述符的Driver num项。最后I/O系统返回该描述符项的索引(即为fd)。 ⑥这样应用程序中的read()和write()等函数调用就可以根据fd找到相应的设备驱动号,进而找到相应的驱动例程。4 CAN驱动程序的实现 CAN驱动程序的实现即是完成下面七个函数的编写。下面简要介绍其完成的功能,并用伪指令进行说明。 int drv_num; ;/*驱动号码*/ typedef struct { DEV_HDR pCANHDR; /*这个数据结构必须放在设备描述符的最初部分*/ /*其余与驱动有关数据*/ }CAN_DEV; /*CAN设备描述符*/ CAN_DEV can_chan_dev; STATUS CanDrv(void){ 完成驱动的一些初始化; intconnect(); /*连接所选的IRQ与中断处理函数*/ sysIntEnablePIC(); /*486DX允许中断*/ drv_num=iosDrvInstall(CanOpen,NULL,CanOpen,CanClose,CanRead,CanWrite,CanIoctl);/*将设备驱动例程装入设备列表中*/ } /*iosDrvInstall()将设备的CAN驱动例程加入设备驱动列表中,7个参数为7个驱动例程的进入点(entry point),如果没有某个例程,则传递NULL。*/ STATUS CanDevCreate(){ 完成一些设备初始化 iosDevAdd (&Can_chan_dev.pCANHDR,“can0”,drv_num);/*将设备放入设备驱动列表中*/ } int CanOpen(CAN_DEV *pCan_Dev,UBYTE *remainder,int flags){ CAN卡硬件复位 CAN卡关中断 CAN卡进入软件复位模式 设置CAN卡工作寄存器,如接收码寄存器和屏蔽码寄存器等 CAN卡开中断和进入操作模式 Return((int)pCan_Dev); /*注意必须返回设备描述结构指针*/ } int CanRead(int CAN_DEV_ID,UBYTE * buf,int nBytes){ 等待信号量(该信号量由中断处理例程释放) 从接收缓冲区读取数据 释放接收缓冲 返回接收数据数量 } int CanWrite(int CAN_DEV_ID,UBYTE* buf,int nbyte){ 查询发送缓冲是否可用 向发送缓冲区写数据 命令发送 查询发送完成标志 返回发送数据数量 } void interrupt_handle_routin(int arg){ 处理中断事件 发送(释放)信号量 } 限于篇幅,其它函数略。图3 I/O系统整体结构5 CAN驱动调试 硬件驱动的调试是件十分麻烦的事,经验十分重要。这里简要介绍几个帮助调试的函数。 ①可以调用iosDrvShow()、iosDevShow()及iosFdShow()查看相关内容,判断并将驱动及设备中入相应列表。 ②使用logMsg()现实相关内容,以定位错误。 初期调试,示波器和信号灯是非常有用的,可以确定硬件的工作状况,从而有助于发现程序中的错误。 6 小结 笔者采用两种方式完成了CAN卡驱动。相对于第一种(笔者亦完成),第二种方式——VxWorks的I/O系统将设备程序作为内核过程实现,大大减少了系统的开销,实时性和可靠性有了很大的提高,并且为用户提供了统一的接口,使用十分方便。 开发驱动程序,辅助工具是非常有用的。Windows下的开发工具就比较多,而在VxWorks下开发驱动的工具相对较少。Windriver是一款不错的开发工具,可以开发VxWorks下的驱动程序(也可以开发其它操作系统下的驱动程序)。正确、熟练地使用这些辅助工具,会使开发工作事半功倍。

    时间:2004-12-07 关键词: pc 104 VxWorks 程序设 设计教程

  • 基于PC/104的1553B总线测控系统的设计与实现

    基于PC/104的1553B总线测控系统的设计与实现

    引言随着我国航空事业的迅速发展,各种新型飞机和发控设备相继研制成功,以往一些测控设备在功能和性能上已无法满足新的要求。本测控系统就是在某型飞机的研制过程中扩展出来的一个功能比较全面的1553总线测控系统,总体上采用了PC/104结构的嵌入式系统,既可以实现1553总线数据的实时接收和发送,还可以完成多路数据的采集及负载控制。总体概述及工作原理本系统的主要功能是对外部的电压电流及负载I/O信号进行采集测量,并根据由1553总线传输来的飞机控制设备发送的命令字对负载进行控制,对电压电流及负载当前状态进行监控,并将当前数据反馈给控制设备。整个系统在满足实时高速传输的同时,也必须完成对负载精确的控制,测控过程要能够实时监控和显示,方便操作人员控制及发送指令。 为满足以上条件,系统主构架选用了PC/104的嵌入式模块,不仅尺寸小、功耗低,而且其堆栈式结构方便了外扩设备。总体上分为采集、处理、通讯三大部分,各部分硬件上通过PC/104总线紧密连接,由上位机通过以太网总体控制,而软件上分成独立的模块,实现各自部分的功能,在实时嵌入式操作系统VxWorks下再通过主程序的调度协调起来。硬件设计系统硬件总体设计以PC/104体系结构为核心,以1553B总线卡作为与飞机(或其他发控设备)通讯的主要接口,ADT600负责电压电流模拟量和负载I/O信号的采集。PC/104可以外扩LCD显示器和键盘鼠标等外设,通过以太网与上位机相连可对测控系统进行有效的控制和过程监测,同时PC/104通过母板外接I/O扩展板对负载进行实时控制。系统框图如图1所示。 SCM/SuperDX是一种高度集成、自栈结构、IBM-PC/AT兼容的PC/104 CPU模块,它被设计成可以方便与其它周边设备及模块构成完整系统的核心部件,采用增强型的80486处理器作为CPU,板载有PC/AT兼容的DMA控制器、中断控制器及定时器,ROM-BIOS,4M~16M字节的DRAM及键盘,网口等。本系统中,将嵌入式操作系统VxWorks下载到Campact Flash中以启动PC/104,上位机通过以太网与PC/104相连,通过网络加载将程序加载到PC/104的RAM中执行,上位机进行实时监视和程序控制,PC/104的LCD显示屏可以实时显示测试数据及数据传输状况。采集卡选用SBS公司的ADT600,它与PC/104完全兼容,最多提供十六个模拟输入通道,通过71055的可编程外围接口(PPI)提供24路数字量I/O线。模拟量输入的量程可用跳线器选为?5~+5V,?10~+10V,0~10V,并带有+/?35V的过压保护。本系统的模拟量是电压电流信号,量程选择?5~+5V。而I/O通道通过71055的PPI设置为方式0的基本输入输出,采集卡和调理板调理电路硬件连接图如图2、3所示。 电压、电流模拟量的采集应注意数字地和模拟地的分离,以减小干扰,最后通过磁珠单点相连,而I/O电路将电压/地的数字I/O信号通过转换电路转换为采集卡输入电压范围的地/开路信号。1553B通讯卡选用SBS公司的ASF-PC104-XT-1,该卡能实现PC/104总线和1553B总线的转换,是一款智能MIL-STD-1553的板卡,支持MIL-STD-1553A和MIL-STD-1553B协议,适用于PC/104底板,可以工作在BC模式、RT模式、BM模式及并发BM模式,实现多个终端之间的快速通信。它具有以下高级结构特点:具有高速可编程逻辑装置用于以字为单位的底层1553协议的编解码;采用TI公司的DSP用于信息级和底层1553协议的处理;具有128K字节的高速静态双端口RAM用于信息缓存;配合底板接口的高速可编程逻辑电路(ASIC设计);板上提供标准的和IRIG时间码相关的高级计时电路;配套的软件接口库为1553和429设备管理提供扩展功能。由于SCM/SuperDX提供的I/O资源有限,因此,采集卡ADT600和1553B通讯卡的I/O地址的合理选择就十分重要,以避免冲突以及在调试时产生不必要的麻烦,SCM/SuperDX的I/O地址分配如表1所示。ADT600模块要占据十二个连续的I/O口的位置,基地址由DIP开关选择,而ASF-PC/104卡需要主机为其分配未经使用的8块连续的地址寄存器,考虑以上因素,选取ADT600的基地址为300h,ASF-PC/104为390h。 软件设计软件设计的重点主要包括底层设备驱动的编写、系统任务的划分及优先级的设定。操作系统选用VxWorks,以充分满足1553B实时通讯的要求,系统总体软件主流程图如图4所示。系统启动之后执行主程序进行自检测和AD/1553板卡的初始化,若失败则报错,将错误信息显示在显示屏上,成功后创建主任务并执行,包括数据的采集、发送和接受及解析命令控制字并执行,主程序将循环执行,直到上位机发送停止程序的控制命令。底层设备驱动配置驱动程序为硬件平台和应用软件间提供一个固定接口的软件层,应用程序必须通过驱动程序才能与硬件进行数据通信。而驱动程序的编写又与操作系统密切相关,具体的操作系统对驱动的要求有所不同,本设计的底层驱动和操作系统VxWorks及任务关系图如图5所示。根据本系统的实际需要,编写了与VxWorks系统密切相关的底层设备驱动。 首先介绍1553B通讯卡的驱动配置。本系统选用的1553B通讯卡有两种板卡访问方式:内存映射和I/O访问。I/O寻址采用专门的指令,编程缺乏灵活性,并且每次只能传送单个字节;而内存映射方式指令丰富,编程方便、硬件节省,便于实现快速交换数据。故选用内存映射方式,PC/104可以映射的空间为0xC8000~0xEFFFF,选取内存映射基地址为0xD0000。同时INT引脚通过跳线选择IRQ9。软件设置如下:1)调用setup_fw.c将固件库源文件F002p.dat生成与ASF-P104卡匹配的Firmware.h(固件数据结构)文件,为板卡硬件提供匹配的接口定义信息;2)在sbs_sys.h文件中添加#define VXWORKS和#define NO_FILE_SYSTEM语句行,设置操作系统信息;3)在dev_cfg.h文件中按如下设置定义设备配置信息: 配置好软件设置后就是1553驱动程序的实现,即完成设备驱动函数的编写。在编写函数之前,需要定义驱动号以及设备的描述符,这在头文件中实现,如下所示: }M1553_DEV; /*1553设备描述符*/头文件定义完毕就可以编写函数了,以编写M1553Drv( )函数为例。M1553Drv( )函数调用iosDrvInstall( )安装设备的驱动例程。它在设备驱动程序表中为设备分配一个条目,并在其中填入此设备xxCreate( ),xxDelete( ),xxOpen( ),xxClose( ),xxRead( ),xxW rite ( )和xxIoctl( )等函数的地址。函数实体如下: 一一编写其他的1553设备驱动函数M1553DevCreate( ),M1553Open( ),M1553Read( )和M1553Write( )以及中断服务程序M1553Int( )。以上为1553B卡的底层驱动编写,ADT600与之类似,只是头文件有差异,同理编写设备函数ADC_InitializeBoardSettings(),ADC_DigitalToSBS(),ADC_SetChannel(),ADC_StartConversion(),ADC_ConversionDone()和ADC_ReadData()。至此,设备驱动配置完成,将驱动程序加载至应用程序,上层程序代码就可以直接调用这些底层驱动函数进行编程。 任务设计VxWorks是一个实时多任务操作系统,因此根据系统的功能模块要求,将应用程序分割成若干个独立的任务,使CPU通过操作系统来调度多个任务,轮番服务于一系列任务中的一个,使得应用程序的设计大大简化,并使程序的结构模块化、层次化。同时,使用了实时内核,所有时间要求苛刻的事件都可以尽可能快地得到处理。 任务划分的好坏直接影响到系统的性能。将一个实时应用问题分解为多个任务,可以加快执行速度,且有效地利用系统资源。但是,过度地分解任务,将会使系统中有大量的任务,需频繁地进行任务的切换,任务之间还要进行很多同步和互斥控制,将增加系统服务工作,降低系统的速度和有效性。因此,划分任务时必须进行各种综合平衡和折衷,有时将两个操作合并在一起处理效果好些,但有时必须分开处理。这都依赖于实时应用的特性。根据系统功能需求,主任务划分如下,任务间总体上采用优先级抢占机制进行调度,各任务功能及优先级的划分如表2所示。PC/104优先接受来自飞机控制设备的命令字,然后执行负载控制任务,等待控制任务释放信号量后,程序就执行数据采集及发送任务,通讯监控任务对数据的接发进行实时监控,确保无信息的丢失,更重要的是,第一时间传递发控设备的控制命令,若启动重发机制之后仍然接受不到信息则会报错。而硬件初始化及自检测任务只是在主程序开始时调用,由于优先级的限制,只有等待再次软启动之后才会再次执行。 除了优先级的抢占外,主要任务间还通过设置信号量进行二次调度,确保任务的连续正确执行及资源的合理分配,优化程序结构。在主程序引导函数ProgStart( )中,建立了2个二进制信号量和1个互斥信号量:semCON,semSEND,currNodeSemId。semCON信号量用于数据接收任务和监控任务的信息传递,主要是数据的超时重发机制监控;semSEND信号量用于数据采集任务和数据发送任务的信息传递;currNodeSemId信号量用于数据采集监控任务中数据采集的完整性而设立的信号量,避免通讯任务抢占临界资源以及调用不合理而产生"死锁"现象。其中,2个二进制信号量创建时为空(SEM_EMPTY),处于不可用状态,高优先级任务执行semGive()释放后变为满(SEM_FULL),变为可用状态,供低优先级任务执行semTake()使用。互斥信号量currNodeSemId创建时,为了避免优先级倒置的情况以及为任务提供删除安全,联合使用了SEM_Q_PRIORITY、SEM_INVERSION_SAFE、SEM_DELETE_SAFE选项联合使用,使用按位或操作,程序代码如下:currNodeSemId=semMCreate(SEM_Q_PRIORITY|SEM_INVERSION_SAFE|SEM_DELETE_SAFE)程序最后执行ProgStop()结束主程序,删除创建的任务并释放信号量资源。因为程序中使用了互斥信号量,并启动了互斥信号量的任务删除保护功能,所以在删除任务之前,必须先成功占有互斥信号量。先删除任务,再删除信号量。 结束语本文主要讲述了1553B总线测控系统的设计及其在VxWorks下的软件开发过程。实际中,建立了地面最小实验系统,经过联机调试,测控系统运行正常,系统具有很好的实时性和稳定性,达到了预期效果。

    时间:2008-07-26 关键词: pc 104 1553b 设计教程

  • 基于嵌入式计算机PC/104的某火箭弹自动测试仪应用

    1 引言  变滚转速率火箭弹中的陀螺是敏感元件,它的作用是测出火箭弹飞行过程中出现的偏航角,这个偏航角经过解算模块的计算由控制器启动执行机构进行姿态控制,从而达到修正偏航的目的。但陀螺是一次性产品,在研制和测试过程中它是不工作的,因此需要对陀螺信号进行模拟。对于偏航修正的结果也要进行判定,看它是否与理想的控制效果一致,是否存在超前或滞后现象。因此有必要研制一台自动测试仪进行测试,除了以上两个重要方面外,根据研制要求和测试要求本测试仪需要检测的内容还有二次电源、控制器时序、主发动机内阻测试、姿态控制发动机内阻测试.  本测试系统采用嵌入式计算机PC/104,PC/104与PC/AT体系结构完全兼容,大小只有90mmX96mm,但它几乎集成了普通台式PC机的所有功能,并与之兼容,因此在PC机上开发的程序可以直接在PC/104 CPU模块上运行,与单片机系统相比省去了专用的开发工具,而且维护方便。PC/104采用模块化设计,硬件电路设计简单,减少了开发周期。因此在本测试系统中我们采用嵌入式计算机PC/104。2 系统设计  2.1硬件框图,如图1所示:图1 硬件框图  系统中中心模块采用盛博公司的SCM-6456,它采用增强型80486DX的CPU,32M的RAM;两个串口,波特率可由软件控制,其中COM2可设置为RS-485方式;一个并口;VGA支持彩色和单色LCD、EL平板显示器和模拟CRT;在板IDE和Floppy接口;采集模块选用盛博公司的ADT650,此模块具有12位的分辨率,最大100KHz的采样率,模拟输入共有16通道,最大 10V输入;4通道模拟输出;24通道TTL/CMOS兼容I/O;3个16位、最大10MHz的定时/计数器;信号条理部分主要是将待测试信号变换成适合ADT650采集的信号;人机界面中,因为要求输入字符很少,自行设计了4X4的矩阵键盘,显示结果既可在显示器上显示,也可以用打印机打印。  2.1.1 定时/计数器的配置  本测试仪要求输出频率为5-13Hz的信号,则周期为200ms到80ms左右,如果采取1ms定时进行D/A转换的办法,最小的一个周期输出80个点,经过实际测试,能够满足测试对象对模拟激励信号的要求;另外在采集测试对象执行机构的控制信号时采用1ms定时采集的办法,也能满足最后数据判断的要求,因此定时器定时时间为1ms(即定时器的输出时钟为1KHz)。而采集模块ADT650上三个定时器的输入时钟都为10MHz,不能满足要求,可以用级连的方法即将COUNTRT0的OUT与COUNTRT1的CLK输入端、COUNTRT1的OUT与COUNTRT2的CLK端相连,其编程设置如下:(Base表示ADT650模块的基地址,为0x330,下同)  outportb(Base+15,0x35); /* 定时器0 方波发生器 */  outportb(Base +12,00); /* 计数值低字节送计数器0*/  outportb(Base +12,10); /*计数值低字节送计数器0*/  outportb(Base +15,0x75); /* 定时器1 方波发生器 */  outportb(Base +13,10); /* 计数值低字节送计数器1*/  outportb(Base +13,0); /* 计数值低字节送计数器1*/  即10MHz的时钟经1000分频和10分频后得到1KHz的时钟;  2.1.2 模拟陀螺信号的设计  在火箭弹的研制和测试过程中,陀螺不工作,所以要求提供能够模拟陀螺的激励信号,有两路:一路是偏航信号,一路是俯仰信号;这两路信号经过试验相位相差90度,频率由5Hz到13Hz逐渐变大,幅值由1V逐渐变小。ADT650上的模拟输出范围是-5V到+5V,D/A转换的分辨率是12位,则-5V~+5V对应的数据是0—4095,输出0V对应2048;设周期为T,则通过程序计算  2048+(409-40*step)*sin(2*pi*i/T)[!--empirenews.page--]  再计算DA数据的底8位(LSB)和高4位(MSB),分别写入通道Base+1、Base+2,则数据被送到DA转换器,并且每1ms输出,就可以得到要求的信号;启使时step=0,其中409表示输出的幅值为1V,即1/5*2048=409;随时间变化step加1,就能使幅值逐渐变小。当输出一定周期数后,使频率加1,这样就达到频率逐渐增大的要求,相应的T就变小。另一路与它的相位相差90度,其计算函数为  2048+(409-40*step)*sin(2*pi*(I+4/T)/T)。  2.1.3 偏航修正的测试  火箭弹测试中的最重要内容就是看执行偏航修正的结果是否与理论的控制结果一致。火箭弹中执行偏航修正的是通过两对电磁阀的开关来改变姿态控制发动机的喷火方向,所以该测试仪就必须采集4路电磁阀的开关信号。ADT650集成了uPD71055可编程外围接口,用PA0~3来采集电磁阀的开关信号,采用1ms中断采集一次信号,最后将采集的控制信号与标准的控制信号进行比较,找出在切换时是否存在超前或滞后问题,以此来决定火箭弹性能的好坏。  2. 1. 4 模拟量采集  除了以上两项重要的测试内容外,还需测试的有二次电源,主发动内阻,姿态发机内阻    测试。二次电源主要有 5V和 12V,而ADT650的最大输入范围是 10V,因此要分压衰减后才能输入到A/D输入端;对于内阻的测试,采用转换为测电压的方法,最后在程序中转换为所需实际电阻值;  对ADT650的A/D转换利用直接编程的方法,首先写Base+3来选择输入通道,对于多通道采集只需设置一次,下一次A/D转换会自动转如下一通道。设置完成后写入Base+0任何值便启动A/D转换,等待Base+5的位0变为0时(即A/D转换完成),就可以读取数据并转换为有意义的数据。  2.1.5 RS-485通信  本测试系统要与测试对象进行通信,为保证数据传输的可靠性,我们采用RS-485通信。SCM-6456模块中有两个串口COM1和COM2,其中COM2可通过跳线设置为RS485方式,其应用电路如图2:图2 485通讯  2.2 软件设计  根据PC/104的特点,本系统采用DOS6.22操作系统,TC2.0环境编程,模块化设计,并将程序固化在电子盘中,启动时也从电子盘启动。主要包括初使化模块、串行通讯模块、数据采集模块、数据处理模块等,程序流程图如图3:图3 程序流程图3 结束语  采用PC/104计算机设计自动测试系统,具有体积小、功耗低的特点,适宜做成便携式设备,方便野外应用。本测试仪还可在研制阶段中代替信号发生器、示波器,方便数据分析。实际应用表明,该测试仪稳定、可靠。

    时间:2009-03-31 关键词: pc 104 于嵌入 设计教程

  • 基于ARM920T设计的SMC接口研究与PC/104总线仿真

    摘要:通过分析920T核ARM 处理器的高速片上系统总线AHB时序及其静态存储控制器SMC接口模型,研究IBM PC/AT和IEEE PC/104总线规范,提出一种在ARM 平台上实现兼容PC/104总线的方案.深入探讨两种平台体系在存储器结构、指令系统及总线时序等方面的巨大差异,给出了克服这些差异并实现总线功能兼容的方法.该兼容总线解决了在ARM 平台上无法使用标准PC/104模板的难题,采用该方案有利于在嵌入式系统的设计中兼取ARM 处理器和PC/AT体系的优势.          引 言      PC/104 是一种专门为嵌入式应用而定义的工业控制总线规范.以IBM PC/AT总线规范为基础的个人计算机及其外围设备在应用上取得了巨大的成就,IEEE一996称之为ISA(工业标准架构:Industry Standard Architecture)总线.PC/104是ISA标准的延伸,定义在IEEE-P996.1中,称为兼容PC嵌入式模块标准.PC/104实质上是一种紧凑型的ISA,其信号定义和Pc/AT基本一致,但电气和机械规范却完全不同,是一种优化、小型、堆叠式结构的嵌入式总线系统.PC/104总线来自于实践发展的需要,同时得益于PC技术的迅速发展,由于其开发环境友好、兼容芯片丰富、标准支持广泛等优势,受到了众多从事嵌入式产品生产商和系统集成商的欢迎,尽管现在ISA设备已不常见,但PC/104在嵌入式系统领域却仍是通行的标准. ARM是当前嵌入式系统应用中的热门技术.由于ARM处理器的卓越性能、较低的价格以及业内半导体厂商的广泛支持,在嵌入式环境中有广泛的应用.ARM 公司创造了CHIPLESS模式,该公司通过将高效的ARM 内核授权给半导体公司,由半导体公司根据实际的应用情况加上各种外围的功能电路来构成一块完整的芯片,这种模式使半导体厂商得以有能力生产功能强大的各种专用处理器芯片.AR M在设计上基于SoC思想,优先考虑对每一个具体应用使用最大可能集成周边设备的单一芯片,但在板极扩展方面仍然缺乏能被广泛接受的新工业标准. 1 PC/AT模型和PC/104总线 1.1 总线信号    PC/104_4 ]是一种16位总线,但可向前兼容8位XT模式,典型总线时钟为8 MHz,4个时钟脉冲可完成一次完整的总线访问,必要时可插入一个额外的等待周期以适应低速外设.在嵌入式系统开发中常用以下信号. 1.1.1 地址和数据信号线   BALE总线地址锁存使能信号线,由平台CPU驱动.当ISA扩展卡或DMA控制器占用总线时,它也被置为逻辑1. SA~19:O>:低2O根地址信号线,由当前总线的拥用者驱动. LAd 23:17> :锁存地址信号线,用来访问16MB的存储器地址空间.由当前总线拥有者或DMA控制器驱动. SD<15:0> :数据信号线. 1.1.2 总线周期控制信号线 MEMR#:存储器读信号线. MEMW #:存储器写信号线. IOR#:I/O I/O读信号线. IOW #:I/O I/O写信号线. 1.1.3 中断和DMA(Direct Memory Access)信号线 IRQx:中断请求信号线. DRQx:DMA请求信号线. DACKx#:DMA应答信号线. 1.2 地址空间     PC/AT系统使用不同的指令访问存储器空间和IO端I:1空间,访问存储器空间时PC/104总线驱动MEMR#和MEMW#信号,访问存储器空间时PC/104总线驱动IOR#和IOW #信号.两个空间使用同一套地址线,但是由于端口空间只有64K有效,所以进行IO 端口访问时地址线上只有SA<15:O>是有效的.     PC/AT系统有专门的端口访问指令用于实现端口访问,Linux用户程序只需以root权限调用ioperm()指定需操作的端口地址范围,之后即可自由访问这些端口.由于用于访问端口的一组宏实际上直接对应CPU的端口访问指令,所以存取效率很高. 1.3 PC/104总线周期 PC/104总线周期分为CPU驱动和DMA控制器驱动两大类,在嵌入式应用中较常用的是CPU驱动的IO读/IO写周期.     图1中采用8 MHz时钟的标准PC/104总线£Rd大于300 ns,tAF应大于250 ns,tRDpw约为500 ns。[!--empirenews.page--] 2 EP9315(ARM920T)体系 2.1 存储器结构和地址空间      EP9315是Cirrus Logic公司生产的典型ARM 920 TDM I(Thumb,Debug,M ultiply,Em—bedded ICE macrocel1)32位哈佛结构处理器.EP9315有一个通用存储器访问接口,支持SDRAM,SRAM,ROM,及FLASH(包括N0R FLASH)等不同形式的存储器,各种存储器访问均共享数据总线DA[3l:O]和地址总线AD[Z5:o],使用统一的访问控制逻辑 。     与X86模型不同,ARM 平台只实现一个物理地址空间,在Bo0T成功后只拥有一个唯一的虚地址空间,CPU不设立专门的外设I/O指令,访问外设I/O端口和内存单元使用相同的指令.    引脚CSn[7:6]和CSn[3:O]用于存储器芯片的选通,除发生时间略有差异之外(图2),基本上可视为地址总线的高位线. 2.2 AHB总线时序和SRAM 接口    AHB(Advanced High-Speed Bus)是EP93 1 5内部920T核与存储器、DMA,存储器等设备实现高速互联的系统总线.EP9315的AHB具有完善的多主控冲突仲裁能力,其典型工作频率可达100 MH。 静态存储控制器SMC(Static Memory Controller)与920T核心通过AHB互联,支持存储器的8/16/32位访问方式.SMC最多可提供8个组,每个组均可支持SRAM,ROM,FLASH EPROM 等存储器的访问,各组可以对数据总线宽度和速度等参数独立配置.图2描述了SRAM 读操作时序.     图中f删为CSn到RDn的延迟,最大值为3 ns;tDAs是RDn无效前的数据总线建立时间,最小值为12+tHcI tRDD 是RDn有效时间,典型值为t HcI K×(W ST1+ 2)。 HCLK是AHB总线的工作频率,该频率的高低直接影响系统全局性能,因此通常配置为上限100 MHz,此时相应周期£胁 为10 ns.WSTI用于控制sMc对SRAM/R0M 的访问速度,寄存器SMCBCR0—3, SMCBCR6-7 (地址0x80080000—0x8008001C)的第5-9位分别为相应各组的WST1.WST1的默认值为0xlF,即默认情况下SMC使用 最低的访问速度,显然fRDD 为330 ns,小于PC/104总线中的500 ns(图1). 3 PC/104总线实现 3.1 总线驱动     在EP9315支持的各类总线接口逻辑中,SMC提供的SRAM/ROM 时序与PC/104总线最为接近.将外部设备所需的PC端口空间和存储器空间均映射至统一的虚拟空间中即可实现访问.   注意到PC/104总线使用标准TTL逻辑电平,而EP9315的处理器是3.3 V器件,在极端负载情况下无法保证系统稳定工作.TI的双电源总线收发器1T45,2T45,16T245等可用于实现电平转换,图3是1T45的引脚逻辑图.   [!--empirenews.page--] 地址总线及访问控制信号均由CPU驱动,外部设备始终处于被动接收状态,正确设定数据流向即可. 数据总线信号是时分双向传输的,为遍免出现总线冲突,必须保证除非CPU 透过该收发器对外设进行读访问,否则收发器的CPU 侧应始终处于高阻状态.为此,16T245等具有输出使能端的器件只需使输出无效即可,而对于无使能端的收发器则应使CPU侧处于输入状态(高阻). 确认CPU 已向兼容PC/104总线发起读操作的有效方法是检查RDn的下降沿是否发生.一旦RDn下降,应立即将收发器置成从外设流向CPU方向,且输出使能有效,并至少保持至RDn上升沿之后,以保证可靠读取. 3.2 端口映射     SMC的存储器分组片选信号CSn可作为高位地址线参加这址译码.任取CSi和CSj组用于兼容总线,即可分别实现O-0x3FFFFFF的独立存储器地址和IO端口地址.可用地址数量已经远超出XT系统中的1 M(存储器)和1 K(IO端口).     在Linux系统中,io.h文件中声明了函数iore—map(),用于将兼容总线上外部资源的物理地址映射到核心虚地址空间中.iounmap()函数用于取消ioremap()所做的映射.上述操作都应在设备驱动程序中执行.在外部资源成功映射到核心虚地址后,使用指向核心虚地址的指针就可访问相应设备资源,但显然这种访问方式与在X86平台下差异较大.     将兼容总线视为一个独立的字符设备,为其编写驱动程序,实现对指定偏移地址的读写函数,此处的偏移地址即对应PC/104总线中的物理地址 .     对inb(),outb()等X86平台下的常见的底层端口操作函数,可用宏替换的方式转由驱动中的相应读写函数实现. 3.3 总线时序控制     综合前文所述,尽管SMC的SRAM 访问时序非常接近PC/lO4总线,但是要实现高兼容性的PC/lO4,仍有两方面问题需要解决,一是SMC驱动的SRAM 读写速度远高于PC/104总线,二是为解决电平兼容问题引入的总线收发器,其数据流向和输出使能需要适当的控制.     以下VHDL代码根据SMC输出的RDn和WRn设置EIOR和EIOW 时序,并适时输出信号EXIDR,EXOE控制收发器数据流向和输出使能. ECLK是频率为27 MHz是时钟脉冲. If ECLK’EVENT and ECLK一‘1’then if(⋯ )then __地址无效 EXoE< 一:1’; EXDlR< 一‘1’; EIOR< 一‘1’; rdreg< 一0; else if rdreg< 1 l then rdreg< 一rdreg+ 1; EXOE< 一‘0’; else rdreg< 一0; EXDIR< 一‘1’; EXoE< 一‘1’;[!--empirenews.page--] end if; if rdreg< 2 or rdreg> 6 then EIOR< 一‘1’; EIOW < 一‘1’; elsif rdreg一2 or rdreg= 3 then if RDn一‘1’then EIOR< 一‘1’; EXDIR< 一‘1’; elsif W Rn一‘1’then EIOW < 一‘0’; EXDIR< 一‘1’; end if; end if; 上述代码适当延迟了关闭双电源收发器的输出使能和数据流向重设时间,保证数据总线稳定,使CPU 和外设有足够的时间进行输入输出操作. 图4中曲线2是兼容PC/104地址空间内任意地址信号经收发器缓冲后的译码结果,曲线1和曲线3是对该地址进行读操作时的RDn和IOR信号. 图4中RDn由EP9315直接驱动,原始逻辑电平为3.3 V,实验电路对该信号电平进行了无时延的处理. 目前主流元器件在速度上都已能兼容PCI总线,因此尽管SMC驱动的SRAM 读写速度高于标准PC/104总线,但只要保证各控制信号问关系清晰(图4b),是不会造成总线访问失败的. 4 结束语     利用ARM 系统成本较低,功耗更小,启动速度快,指令效率高的的特点,兼取PC/AT系统和PC/104总线设备在产业化基础方面的优势,在ARM平台上构建PC/104总线,有助于利用现有资源,保护已有投资.由于ARM 与PC/AT模型在处理器架构上有本质性的差异,在ARM 平台上构建的PC/104总线在所有的具体应用中要做到与标准PC/104规范完全兼容几乎是不可能,但是在特定的应用需求及确定的操作系统下这种努力是完全可行并且有效的。对于特定的应用而言,通常只需顾及PC/104总线时序的一个子集,这就大大降低了系统现实的难度。兼容PC/104总线在使用遵守ISAPnP(Plug and Play)规范的设备时有较多的困难。另外在使用包含中断请求和DMA需求的设备时也需要专门的考虑。

    时间:2010-12-11 关键词: pc 104 smc arm920t 设计教程

  • 工业PC/嵌入式/PC104主板液晶屏搭配方案

    所谓工业PC/嵌入式PC104主板搭配方案主要指通过内嵌CPU及显示控制功能的IPC(工业主板)或ARM直接控制液晶屏实现显示。如原理框图3-1. 目前市场上嵌入式主板的种类繁多,功能各异,平望科技可以针对不同的主板制作专用信号线缆、LVDS转接板等,提供完整的显示解决方案。这种方案主要优点:直接控制,环节少,使用简单,调试方便,信号传输失真小。 同时,杭州平望科技有限公司与国内多家著名工控厂商建立了战略合作伙伴关系,并且自主生产了ARM系列工业级嵌入式主板,在强大技术实力的支撑下,使得用户在购买产品前,我们就可以为您解决掉搭配、调试等一系列视频端显示问题,优质的服务,是您对平望科技信任的前提,也是平望人从事嵌入式行业的初衷。 原理框图3-1  a.控制TFT液晶屏 此方案针对屏的分辨率为1024×768,800×600,640×480,320×240 TFT-LCD,若您还想了解更多有关LCD的信息可直接进入 产品中心 ,若您对液晶屏选型处在困惑,请直接来电我们将您提供最合适的液晶显示方案 。 b.逆变器的选配 若您的LCD背光采用的是CCFL(冷阴极灯管),那么您一定要选择参数匹配的的逆变器,才能确保LCD合适的亮度和寿命,否则不正确使用会严重导致LCD显示质量,灯管寿命降低。为了确保我们提供的LCD显示效果,我公司为每款LCD提供匹配逆变器,欢迎进入背光及其驱动 了解更多知识。 c.配件选择 请根据控制方案的要求正确选择相应配件,特别注意选择优质的信号线缆。  d.行业方案应用 便携显示终端          商用POS机           嵌入式打标机            数控机床

    时间:2012-03-12 关键词: 方案 pc 104 设计教程

  • 从Palm到Pocket PC

    ex-PalmPilot的用户经常问我们,应该如何将他们的数据转移到他们新购置的PocketPC上。要实现这一点,我们可以使用几种方法,但是在本篇循序渐进教程当中,我选择了一种我认为用户可以从中长期受益的方法,它的成功几率最高,而且它还是免费的!! 需要具备 MicrosoftOutlook TrueSyncforExcite(下载方法见下文) PocketPC 包含想导出数据的PalmPilot 须知 导出过程具有某些限制,您可能不得不手动清除一些数据。您应该对数据进行检查,以保证电话号码可以被正确保存到Outlook中的对应字段里。Palm的数据结构所支持的字段数量没有Outlook2002多,而PocketPC可以。 支持的语言 英语。 同Palm说再见! 有人说分别是一种甜蜜的忧愁,但是当您使用了PocketPC以后,您就再也不会想回到Palm的世界。Palm的用户可以很快适应PocketPC不同于Palm的操作方式,但是在从老设备向新设备过渡的过程中,数据才是最重要的部分,所以您需要保证整个过程准确无误。 PalmDesktop4.01是该桌面同步软件的最新版本,但是它只具有十分有限的导出选项--它只能将数据导出为一个.dba文件。Outlook2000可以导入很多种文件类型,但是它却不能导入.dba文件。所以,我们必须依靠功能丰富的第三方解决方案来将Palm数据导出到PocketPC上。 利用PocketMirror同步 Chapura,Inc.开发的PocketMirror是一个同步程序,它可以将Palm上的数据同任何版本的Outlook进行同步。某些版本的Palms在随机光盘中附带有PocketMirror程序。对我的PalmV来说,我在光盘的palmfwdisk1文件夹下找到了PocketMirror2.01这个程序。如果您没有这个程序,您可以从网上购买。 在向PocketPC进行转移的几个方法之中,PocketMirror应该是最容易的一种。您只需用最新版本的PocketMirror程序将Palm数据同Outlook进行同步,然后将PocketPC同Outlook进行同步即可。如果您使用的是老版本的PocketMirror软件,您可以下载该软件的升级程序。 至少对我来说,使用PocketMirror进行同步并不是很容易。在我的Windows2000电脑上,PocketMirrorVersion2.0.1的安装程序不能正常运行。我在该公司网站上也没有找到同Windows2000有关的信息。所以我需要另外找一个方法将我的数据从Palm转移到PocketPC上。 基于Web的选项 我不断思考这个问题,并且将这个问题张贴到了PocketPC新闻组中,一个叫做“GeneArch”的人给我提了一个很有意思的建议:考虑一下基于Web的日历程序,然后从中挑选一个能和Outlook2000进行同步的程序。显然,Excite有一个基于Web的PIM程序,我找到这个程序,然后对它进行了一番研究。 程序的基本功能是这样的:您可以使用各种设备(即包括Palm设备也包括WindowsPowered设备)同这个远程Web站点进行同步。它可以对联系人、约会和其它信息进行同步。在您将信息传送到Web站点上后。您可以将它们再传送到Outlook2000上,然后再传送到PocketPC上。 为了能从桌面上对Excite的Web帐户进行设置,并且将Palm数据传送到新的帐户中,请按一下步骤操作: 下载PalmHotSync®Managerv3.0.4升级文件并且安装该文件--TrueSync软件需要使用该软件。在安装完毕后,进行步骤2。 在桌面计算机上,访问Excite,在页面的中间部分,您可以看到“工具”(Tools)部分。点击“地址簿”(AddressBook)。 如果你还不是Excite的注册用户,请首先完成注册过程。 在登录后,点击左边位于“工具”(Tools)下方的第三个选项“同步信息”(SyncInfo)。 然后,在“TrueSyncforExcite”下方,点击“更多信息”(MoreInfo)--在同ExciteWeb站点进行同步之前,您首先需要下载这个软件。 点击“下载TrueSyncforExcite”(DownloadTrueSyncforExcite),该按钮位于Web页面右侧。 向下滚动冗长的法律协议,然后,点击“我接受”(IAccept)。 下载该软件(文件名为tsci-excite.exe),然后运行它。 点击“下一步”(Next)完成两个包含介绍性内容的屏幕。 它将扫描您的PC寻找已安装组件。您可以选择想要安装的组件(见图1)。现在,展开“设备同步”(DeviceSynchronization)部分,然后取消对“3COMPalm”和“Outlook2000”的选中。应该选中“ExcitePlanner”(在InternetServiceSynchronization的下方)和“TrueSyncPlus”(在TrueSyncProgramFiles的下方)这些复选框。 图1.选择希望进行同步的应用程序。 让程序下载并安装相应组件,然后点击“完成”(Finish)按钮。 当您在桌面PC上点击“开始”(Start)按钮时,您应该看见一个TrueSyncPlus的图标--点击图标,开始程序的第一次运行。 您将看到一个被检测到的桌面程序列表。对我自己的计算机而言,列表中包含有Outlook2000和PalmDesktop。因为我想对PalmDesktop和ExciteCalendar进行同步,我选择了PalmDesktop。 接下来,程序将提示您选择需要进行同步的PalmDesktop用户(见图2)。请选择需要进行同步的用户名。 图2.选择想要进行数据同步的PalmDesktop用户 然后选择设备--对我来说是Palm设备。 下面,选择想要进行同步的服务--对我来说,是ExcitePlanner。 然后,您需要填写Excite登录信息。如果您想保密这些信息,请选中SSL复选框,然后点击“下一步”(见图3)。就我个人感觉来说,选中SSL复选框对登录或者同步所需的时间没有明显的影响。 [!--empirenews.page--] 图3.输入您的Excite帐户信息。 接下来,程序将同Excite的服务器进行会话,并且可能会提示您将您的Palm放到底座中并按下HotSync按钮,以初始化同步过程。 几分钟后,您会看见一个列表,表中列出了所有将要被同步的设置和项目。您可以迅速检查一下列表内容,如果没有什么问题,请继续。 这将激活整个TrueSyncPlus客户端程序。如果您安装了Outlook2000,它会对Outlook2000进行检查,然后询问您是否想针对同步过程对客户端程序进行设置。现在我们选“否”(No),我们将在以后进行这项设置。 在右下角,您会看见一个对话框,对话框中的文本显示“您当前没有连接到基于Web的同步服务”,另外还有一个蓝色的超链接“点击此处进行连接”(ClicktoConnectNow)。当我点击此链接的时候,它并没有进行连接操作,但是这并没有对我成功进行同步操作产生什么明显影响。所以,您可以点击它试一下,如果它不起作用,也不用担心。 在TrueSync窗口的中间,您可以看到“点击此处开始同步”(Clicktosynchronize)字样。点击该蓝色的超链接启动同步过程(见图4)。 图4.该屏幕显示了将要被同步的内容。 程序会提示您按下Palm设备上的“HotSync”按钮,请立即按下该按钮! 同步过程开始,Palm上的所有数据都会被上传到Excite的Web站点上。请保持耐心,整个过程大约要花5到20分钟,具体时间取决于数据量的大小和调制解调器的速度(见图5)。 图5.同步过程正在进行。 程序会告诉您同步过程是否成功完成了。如果没有成功完成,请查看错误信息,并重试同步过程。 为了确认所有数据的确已经上传到Excite站点上了,您可以登录到Excite上,并查看是否包含联系人、日历和其它信息(通过“摘要”(Summary)选项卡可以迅速查看所有信息)。 从Excite到Outlook 下一步是为从Excite到Outlook2000文件的同步过程创建一个通道。当信息被保存到Outlook文件中之后,再将它传输到PocketPC中就是小菜一碟了。 为了将数据传输到Outlook中,请按以下步骤操作: 打开TrueSyncPlus(应该可以从“开始”菜单中找到它)。 在“Client”(客户端)菜单中,选择“Add”(添加),然后选择“Application”(应用程序)。 选择“Outlook2000”,然后点击“Next”。 程序将检查和显示Outlook2000设置。如果您想自行定义如何对Excite日历进行同步,请点击“ChangeSettings”(改变设置),然后对其进行修改。 接下来会出现另一个窗口。点击“Next”。 然后,程序会要求您再次按下PalmPilot上的“HotSync”按钮。 程序会要求您对将要进行的所有操作进行审核,点击“Next”。 您会看见图形将发生变化。现在,图形包括了Outlook2000(见图6)。 图6.四方向的同步过程。 再次点击中间的蓝色链接开始同步。按下PalmPilot上的“HotSync”按钮,然后观察变化。 您应该看见一个四方向的同步过程。每个设备和服务彼此间都发生了同步。在屏幕底部有一个同步日志文件报告,您可以展开该报告,看看您到底同步了哪些文件,以及是否发生了一些错误。 图7.同步日志报告。 在同步过程结束之后,您应该检查一下Outlook2000。所有的Palm数据都应该在那里。 按照您的PocketPC的说明安装Activesync,并且将PocketPC同所有Outlook数据进行同步。至此,全部工作结束! 小结 虽然整个过程要经过很多步骤才能完成,但在我第一次进行操作的时候,我觉得非常简单,总共大约只花了10分钟左右。使用ExcitePlanner的另一个好处是可以在Excite的服务器上保存数据的一份副本,以免您的PocketPC和桌面Outlook文件同时遭到损坏而丢失数据。 但是应该记住,从数据安全的角度来看,这种方法可能不是一种最好的办法。因此,当您对PocketPC和Outlook进行了同步之后,您可能需要关闭您在Excite上的帐户。 如果您需要在Palm和PocketPC之间长期进行同步操作,您可以考虑XTNDConnectPC这个产品。它为各种类型的同步操作都提供了相应的解决方案。

    时间:2012-04-30 关键词: pc palm pocket 设计教程

  • TMS320VC5402和PC机的UART研究与设计

    1 引言 TMS320VC5402以其低成本、低功耗、资源多的特点在通信、控制领域得到了广泛的应用。片上集成了最大192kB存储空间(64kB RAM、64kB ROM、64kB I/O),具有时分多路串口TMD,2个缓冲串口BSP、8位并行主机接口HPI、可编程等待状态发生器等,完全可以满足数据处理及控制要求。基于 5402构建的应用系统中必不可少的是各种数据通信接口的设计。与并口相比,串行接口的特点是减少器件引脚数目,节省了硬件系统的体积,降低了接口设计的复杂性。实际应用中,各系统之间需要实现异步串行数据传输和通信,而DSP5402具有同步串口,与标准的异步串行接口不同,本文针对这种应用,设计实现了DSP5402和PC机的异步串行通信。 2 串行通信和DSP5402串口 在工业控制和实际应用中,串行通信的应用已非常普遍,图1示出常见的三种232通信方式,在此笔者选用短距离有线传输方式。目前,大多数PC机的串口采用 RS-232标准,该标准规定采用一个25脚的DB25连接器,实际上RS-232的25条引线有许多是很少用的,所以目前较为常用的串口有9针和25 针,在普通电路设计中最为简单且常用的是三线制接法,即在通信中不需要RS-232的控制联络信号,采用发送数据(TXD)、接收数据(RXD)、地 (GND)三脚相连,便可实现全双工异步串行通信,本文即采用此法实现PC与DSP的串行通信。 图1 三种RS-232通信方式 由于RS-232中没有时钟信号,所以按照设定的固定波特率传送。在一信号中包括开始位、停止位和数据位,校验位可以选择。其中数据位为5-8bits,奇偶校验位共有5种方式可选:奇校验、偶校验、始终为1、始终为0以及空;停止位也有三种选择:1位、11/2位以及2位。串口传数时低位优先,由开始位表示数据传输。 DSP5402有2个多缓冲的同步串口,通过幀信号来控制数据流。每一个串口有6个信号:CLKR/X:接收、发送时钟信号,DR/DX:接收、发送串行数据信号,FSR/FSX:接收、发送幀同步信号;串行接口有5个寄存器:数据接收寄存器(DRR)、数据发送寄存器(DXR)、串行接口控制寄存器 (SPC)、数据接收移位寄存器(RSR)、数据发送移位寄存器(XSR),其中3个存储器映射寄存器(SPC、DXR和DRR)和2个程序不能直接访问的寄存器(RSR和XSR)来操作,RSR和XSR在执行双缓冲功能时很有用。发送数据写到DXR中,而接收数据从DRR中读取。其各寄存器配置及控制请参考文献[2]。3 DSP和PC机串口通信的软硬件实现3.1 DSP和PC机UART硬件连接 由上所述,PC机的异步串口和DSP5402的同步串口在数据格式以及传送控制上有区别,但是通过必要的硬件控制和软件模拟就可实现DSP5402与标准串口间的通信。DSP5402和PC机的UART实现主要有二种硬件方法和二种软件模拟方法。硬件方法如下:基于MAX3100的同步转异步实现和利用 DSP5402 I/O模拟时序法。 MAX3110E内部集成了全功能UART和内置电泵电容以及土15kV ESD保护的RS-232收发器。其中,UART部分采用兼容SPITM/QSPITM/MICROWIRETM的串行接口,因而可节省线路板空间和微控制器的I/0引脚。由于RS-232部分使用了特有的低压差输出级,从而使双接收/发送接口能够在高速通信、正常电源下提供真正的RS-232特性,而功耗仅600μA。通过MAX3110E可实现同步串行数据接口到异步串行通信口(RS-232)的转换,它可直接与PC机的串行口(COM)相连。 MAX3110E具有尺寸小,价格低,功耗少,通信速率高等特点,因此有着较好的应用前景。MAX3110E包括UART与RS-232两个独立的部分。其中,UART部分包括兼容于SPI的串行接口、可编程波特率发生器、发送缓冲器及发送移位寄存器、接收缓冲器及接收移位寄存器、8字节接收FIFO以及有四种可屏蔽中断源的中断产生器。而RS-232部分包括自带电容的电泵,以及可由SHDN对其进行硬件关断的。 MAX3110E通过SPI接口与DSP5402进行16位数据的全双工通信。DSP5402通过BDX线向MAX3110发送的16位串行数据序列中包括传输格式控制字,如波特率设置、中断屏蔽、奇偶校验位等。DSP5402的McBSP串行接口工作于SPI模式时可直接与MAX3110进行连接。 DSP5402的BDX1与MAX3110的DIN连接作为发送数据线,BDR1与DOUT连接作为接收数据线,发送同步脉冲信号BFSX1作为片选信号,发送时钟信号BCLKX1作为MAX3110的串行时钟输入,硬件接口图如图2所示: 图2 DSP5402和MAX3110硬件接口图 同时必须根据时序设置DSP5402的McBSP寄存器,此种UART方式才得以实现,时序图如图3所示:

    时间:2019-03-01 关键词: uart pc 设计教程

  • 轻薄本王者之战,这款产品的参与就已注定结局

    随着电子产品工艺制作水平的提升,以及笔记本电脑元件成本的降低,出现了很多主打性价比的笔记本产品,特别是在3000-4000价位段的14英寸主流本,集中了市场上最多的“性价比之王”本。都在说性价比之王,那么,谁才是真正的轻薄本领域的性价比之王呢 今天,我们在呼声最高的三款笔记本之间来了场PK,从主流的用户使用需求,如外观、性能、接口和售后服务方面,用数据证明谁才是真正的王者?   这三款笔记本分别是:起于手机厂商的荣耀Magic book 14,延续小米“低价”模式的RedmiBook 14,以及PC王者联想最近在推的扬天S550 14英寸笔记本。 移动办公模式兴起,以及现代人对办公时间、场所的多元化需求,使得笔记本越来越趋于轻薄化,第一轮我们先从轻薄及外观角度进行对比。   注:以上数据均来自品牌官网。 可以看出,重量和材质方面,三款机器基本相差不大。但这里要提醒大家,不能只看表面,尽量去实体店面体验一下手感和做工,即便是相同的材质,实际体验也会有所不同,切记。 另外就是边框,一般来说,边框越窄,屏占比越高,所带来的屏幕使用体验也会更好。从数据看,联想扬天S550左右边框只有4.25mm,实力碾压,MagicBook和RedmiBook虽然是三边窄,但牺牲了摄像头,要么把摄像头隐藏至键盘(打开摄像头,精准定位你的双下巴),要么干脆没有摄像头。不管是哪一种方式,实际应用体验都比较差。 这一局,扬天S550胜! 外观之后,就是性能。不少笔记本为追求轻薄,会选择牺牲或阉割掉部分性能和接口,接下来我们看下这三款笔记本是否如此呢?   从对比数据看,三款机器在处理器、显卡、内存和硬盘方面基本一致,但扬天采用双风扇散热,相较于MagicBook和RedmiBook的单风扇,在整体质量和设计一致的情况下,明显更具优势。特别是在高负载模式下,为维持机器运行稳定,风扇会保持高速运转,噪音也会更大,如果是双风扇模式,则能平衡单个风扇的负载,加速散热,同时会更静音。   再看接口,扬天S550显然更丰富,能满足用户工作和生活的多场景使用需求。   所以,性能PK,扬天S550依然是胜者! 最后,是售后服务部分,说到这里,有的小伙伴可能会说了,服务还用比吗?联想作为PC王者的称号可不是盖的,2400多个服务网点覆盖全国所有县级以上城市,30公里内能得到专业服务,10000多名拥有国家工作部认证的专业工程服务师提供品质服务,全国人民都知道吧!   事实上,除了联想服务支持外,扬天S550还支持两年整机保修、两年上门服务、2年7*24*12小时时刻响应服务,完胜MagicBook和RedmiBook! 价格方面,参与扬天S550预售,预付100可当400元现金使用,到手价仅3499元,与MagicBook价格一致,略高于RedmiBook 200元,但别忘了,RedmiBook是没有摄像头的哟! 综上,我们可以看出,不管是外观、性能,还是售后,联想扬天S550都具备极大优势,可谓是当之无愧的性价比之王!

    时间:2020-01-09 关键词: pc 笔记本 轻薄本

  • 英特尔10亿美元推动低价PC:卖手机一样卖电脑

        "在美国开会期间,我就电脑应用细分与同事热烈地讨论,大家高度认同,电脑将越来越像手机,按应用功能细分的趋势越来越明显。"2月1日,英特尔中国大区总经理杨叙向记者透露了英特尔正在紧锣密鼓实施的一项市场细分计划。    来自英特尔内部的消息更为清晰——未来3年,英特尔拟在亚洲投资10亿美元专项资金,扶持PC业者共同推动低价超便携PC以及MID(Mobile Internet Devices,移动互联网设备)网络终端在新兴市场的普及。    据台湾PC制造商透露,英特尔最近已向合作伙伴公布了代号为Shelton的低价笔记本平台细节,预计今年第三季度推出该平台,届时PC厂商可根据该平台生产与华硕EeePC类似、售价在300-500美元间的低价便携笔记本产品。    据了解,目前已有华硕、宏达电、明基、微星、技嘉、联想、海尔、爱国者、富士通、三星以及印度PC厂商HCL、Zenith等加入到英特尔的该项市场细分计划中来。    卖手机一样卖电脑    "2008年,英特尔将联合PC厂商按应用细分来推进产品。简单来说,就是针对电脑消费者的应用需求,为他们在不同价位上提供拥有不同功能、服务以及工业设计的产品。"杨叙说。    "实际上,手机早就走上了这条市场细分的路。"杨叙指出,如果用户只需要打电话和收发短信,那么几百块钱的黑白屏手机就足够了;如果想用手机拍照、收发彩信并有好听的铃声,那就得买个一两千块钱、有彩屏、摄像头、和弦铃声的手机;当然,如果有足够的经济实力,并想用手机处理更多的事情,那么就会选择五六千块钱的智能手机。    "以后的电脑一定会像手机一样按应用进一步细分。"杨叙说,如果按坐标轴由左至右的顺序排列,最左边的就是MID这种便宜的网络终端,接着是Shelton平台这样低价的便携电脑,再到主流功能的笔记本电脑和台式机,直至最右边功能强悍的四核台式机。    不过他也强调,目前还并没有必要去讨论到底市场上买哪种电脑的人最多,电脑按应用细分是产业发展的大势所趋,它将为电脑产业带来更多的创新和更多的差异化竞争。    对Shelton低价笔记本平台的推出,记者从英特尔中国区相关人士处得到了更多证实。据悉,Shelton平台采用了45纳米制程单核心Diamondville处理器,平台的整体功耗只在8W左右,转化成电池的使用时间大约是3-4个小时;此外,Shelton平台还包括945GSE芯片组,带有802.11g Wi-Fi模块,微软XP操作系统及Linux,搭配7英寸或8英寸的液晶屏幕。    该人士透露,台湾省几大主板及PC厂均已着手推进Shelton平台产品的研发测试,而戴尔、惠普、宏碁等PC大厂也都进入产品规划阶段,预计2008年第3季度第一波整机可以出货,售价约在人民币2500-4000元间。    不过他也强调,英特尔规划Shelton平台并非为了以低价冲击主流笔记本电脑市场,而是以开发消费类电子及无线网络用户群为主,包括图片浏览/分享、视频浏览、社交网络、VOIP以及Messaging等泛网络计算应用,推出更多"口袋移动互联设备"是期望能将PC产品的应用范围借助互联网机遇进一步扩大。    不过,联想相关PC人士指出,在华硕Eee PC成功以价格、外型及创新市场行销策略,切入笔记本电脑与消费类电子产品中间市场后,不少PC厂商惟恐失去市场先机,英特尔低价Shelton平台的推出更是推波助澜。"各厂商如果都采用Shelton平台,在产品性能、成本控制等均差异不大的情况下,决胜的关键就取决于研发设计和渠道布建,谁能在这一产品线上快速达成规模经济才能真正获利。"    此外,也有业界人士担忧,由于Shelton平台采用标准化设计,相对应的面板、电池等关键配件可能会面临集中缺货局面,如果市场无法很好界定"口袋移动互联设备"消费群,到2008年第3季度,血腥价格战有可能迅速蔓延到低价笔记本产品线。    对于市场细分计划中可能遭遇的问题,杨叙表示,电脑的这种细分趋势还处在初始阶段,需要芯片厂、PC厂以及渠道商共同引导,让用户真正清楚自己的应用需求。"像华硕EeePC,消费者就应该小心引起误会,不要把它当成传统意义上的低价笔记本电脑。如果只图价钱便宜买回去,等看到它的功能不如预想的那样齐全,可能就会有不好的感觉。"    意在互联网商机    "我们正面临着自电视诞生以来,重新定义消费类电子产品与娱乐产业的最大机遇。计算与通讯日益合为一体,为我们带来了前所未有的移动互联网体验。"事实上,在刚刚结束的2008国际消费电子产品展上,英特尔总裁兼首席执行官欧德宁就曾明确表示,互联网将以更为智能的方式改变电子及娱乐产业的格局,英特尔也将通过细分产品应用来拥抱互联网商机。    在欧德宁的描绘中,一名访问北京的美国人可以使用口袋大小的MID声形并茂地实时翻译建筑标志、餐馆菜单以及与路人的对话,旅行者甚至可以利用显示在设备屏幕上的逐级可视化地标线索自行找到目的地。    对此,杨叙也表示,类似华硕EeePC这样的低价超便携PC为人们接入互联网提供了更多选择,而更为低廉、简便的MID也正是英特尔基于提升用户互联网体验而进行的细分产品。    据英特尔人士透露,预计今年第二季度能看到大约25款MID设备上市,它们都不是手机,但支持网页浏览、电子邮件收发、音乐播放、图片查看等功能,有些甚至还支持GPS导航,其中80%-90%的MID都会采用Linux系统,只有很小一部分使用Windows Vista。"MID有着自己定制的界面,风格类似苹果iPhone,以提高易用性并优化互联网体验为核心。"    易观国际分析师李翀则认为,目前大多数刚刚接触电脑的消费者,通常还是会买主流的通用型电脑;一小部分使用电脑多年,熟悉自己应用需求的人,可能会选择MID或者Shelton平台产品作为补充;不过,随着体积越来越小、功能越来越强大、价格越来越便宜的MID不断出现,如同广受年轻消费者欢迎的苹果iPhone、索尼PSP和任天堂Wii一样,将来会有越来越多用户把移动互联网终端定义为消费电子产品而不是严格意义的PC来购买。

    时间:2008-02-19 关键词: 手机 英特尔 电脑 pc

  • 去年疯狂增长后:2020年PC出货量将出现大幅下滑!

    去年疯狂增长后:2020年PC出货量将出现大幅下滑!

    市场调研机构Canalys给出的最新报告显示,2020年PC将陷入销售困境,换句话说就是,PC市场之前虚假的繁荣泡沫,会在今年破灭。 报告中显示,预计2020全球PC市场出货量将出现同比3.4%的下降。其中2020年1季度下滑10%,2季度下降9%,预计从第3季度恢复正常。不过若出现最坏的情况,那预计工厂要到2020年6月才能恢复正常生产,导致前三个季度的出货量都较2019年出现同比大幅下降,然而到四季度才能恢复。 基于此,预计全球PC市场会在1季度下降21%,2 季度下降23%,3 季度下降6%。随后趋于稳定,并在4季度迎来13%的增长。但由于各大主力市场的前三季度表现不佳,2020全球PC市场或较 2019年下降9%,市场要推迟到四季度才能复苏。 武汉和江苏等省份的零部件生产,受到COVID-19疫情的影响最大,许多工厂的主业都无法恢复全面运营,另有劳动力短缺和物流不畅等限制条件。 尽管有报道称富士康、广达、仁宝和纬创等 PC 组装厂已经部分恢复国内的 PC 组装业务,但疫情对 PC 出货量的影响也可能是立竿见影的。 面向终端客户的零售商的日子也不太好过,据说渠道合作伙伴在过去两周内收到了来自各大PC供应商的通知,预计其PC和备件可在14周内出货(约为正常交付时间的3倍)。 配图

    时间:2020-03-04 关键词: 电脑 pc 笔记本

  • PC换机时间已延长到五六年 联想电脑销量依然创历史新高

    PC换机时间已延长到五六年 联想电脑销量依然创历史新高

    今日,联想集团发布了截至2019年12月31日的19/20财年第三财季业绩。财报显示,本季度,联想集团营收达993亿人民币;税前利润实现27.5亿人民币,同比增长超过11%;净利润实现18.2亿人民币,同比增长10.9%。 其中,PC的出货量在2019年全年1790万台,销量创历史新高,实现了同比超8%的增长,全球市场份额达到24.8%,稳居全球第一。 之后,联想CEO杨元庆接受采访时表示,PC市场已趋稳,未来几年可能会有增长。PC的换机时间已经从三四年延长到五六年,但是PC是不可或缺的工具,还是需要更换的。 谈及手机市场,杨元庆表示,的增长确实较快,但手机是消费工具,而PC是创造工具,消费越多创造也就越多。所以联想对未来PC的增长是有信心的。而手机业务,疫情对国内部门厂商的影响比较大,但对联想影响可能较小。 杨元庆透露,预计二月底,联想深圳工厂将达到100%复工,合肥工厂70%恢复产生,这两个工厂是PC和服务器的生产主力,其恢复生产对于联想业务至关重要。 他表示,联想在中国的绝大多数工厂,都已恢复生产。除了武汉工厂(主要生产智能手机)和成都工厂(部分生产台式电脑),其他的工厂都已经开通。但是,员工的回岗还未到达很高水平,目前回岗率只有50%左右,联想也在提供更多支持和奖励。

    时间:2020-03-06 关键词: 联想 pc 销量 新高 换机

  • 笔记本发热怎么办?这里有解决方案

    笔记本发热怎么办?这里有解决方案

    笔记本一直以来都是非常火爆的科技产品,这是因为笔记本的便携性是台式机无法比拟的,体积小,出行携带方便成为了绝对的优势。 但是笔记本有很多的弊端,尤其是游戏本,使用的时候会有发热严重的情况出现,这是由于笔记本内部空间狭窄造成的。 其实散热差是笔记本的通病,我们也无法给笔记本更换散热器。 一旦到了夏天,由于环境的温度升高,在加上游戏满载导致电脑的热量极具增高,久而久之就会导致电脑变得越来越卡,并且还有电脑死机、蓝屏的情况发生。 今天给大家支几个小妙招,解决笔记本卡顿的问题。 1、环境温度高 环境温度过高也会导致笔记本散热效率低。 尤其是在炎热的夏季,笔记本电脑内部的CPU、显卡等发热部位容易出现散热不足,这是因为外界温度过高,导致散热效率降低导致的,如果有空调,建议打开空调以降低室内温度。 2、定期清理灰尘与更换硅脂 除新笔记本外,建议您拆卸笔记本以清除灰尘。灰尘堆积过多,会严重影响笔记本电脑的散热性能,尤其是当出风口被灰尘堵塞时。 清除笔记本电脑灰尘时,建议用硅脂更换CPU和显卡两块芯片,防止硅脂老化。检查风扇是否再次停止运转。 如果有灰尘堆积,会严重影响笔记本电脑的散热性能如果风扇损坏,请及时更换。如果你不能拆卸它,你可以在售后或者维修地点清洗。 还记的上学那会,因为电脑的灰尘过多,导致开机噪音特别大,而我又没有气吹,所以选择用嘴吹,但是确实起到了一定的效果,后来使用吹风机,也成功了,但是不建议大家这样。 我们可以使用气吹,实在没有的话用吹风机对笔记本的风扇口吹也可以清理部分灰尘,还记得我上学那会,都是用嘴吹,因为没有吹风机。 3、增设外置散热设备 笔记本无法在内部更换散热器,但是可以通过外界散热设备来实现笔记本降温,在网上有很多关于笔记本的散热设备。 一旦笔记本的温度过高,内部的CPU以及显卡就会自动降频,所以温度高的时候电脑非常卡是因为这个原因。 4、关闭多余程序 电脑很多软件都是开机自动启动,而这无疑增加了电脑的负担,我们可以把这些软件都关闭掉,减少CPU的负担,并且要习惯关闭一些后台的软件。 其实造成笔记本发热严重的原因主要就是灰尘积累问题,所以定时清理笔记本的内部灰尘还是比较重要的,在一个就是可以外接一个笔记本散热装置。

    时间:2020-03-09 关键词: pc 笔记本 发热

  • 支持PCIe 4.0的B550A主板出现在整机PC中:已低调卖了数月

    去年7月,AMD发布了基于7nm Zen 2的锐龙3000桌面处理器,可时近日,似乎只有X570这一款配套的PCIe 4.0芯片组。 然而,最新消息称,B550A主板事实上早已上市数月了。 原来,以Cyberpower(硕天)为代表制造商在部分整机产品中引入了B550A芯片组,比如国外玩家Nexus就晒出一款Cyberpower整机,主板中央印刷着ASRock B550AM Gaming的字样。 不过,这款B550A仅能为离CPU最近的PCIe插槽和M.2提供4.0带宽支持,这又让人怀疑是不是B450换皮。早先,X470/B450曾被短暂开放过PCIe 4.0支持,可AMD因为稳定性原因叫停,并通过更新AGESA微码禁用。 更让人郁闷的是,还有一种说法是,平价的PCIe 4.0主板甚至要推迟到三、四季度Zen 3亮相后才面向公开市场推出……

    时间:2020-03-09 关键词: 芯片 pc 主板 pcie4.0

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包

更多

推荐博客