基于uC/OS-II的验光仪打印接口的实现

来源 :学问·科教探索 | 被引量 : 0次 | 上传用户:lcsuoboger
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】本文简要的讲述了验光仪开发过程中的打印接口的设计及在uC/OS-II系统下的接口程序的实现。首先对打印接口进行分析设计,之后分析系统中的打印流程,并实现了相应的接口程序。
  【关键词】验光仪;打印;接口
  
  引言
  
  验光仪也称为屈光度仪,本文所讲述的验光仪为基于S3C44B0X为核心的自动屈光度仪。采用源代码公开的实时多任务操作系统uC/OS-II为操作系统内核,打印作为其主要的输出功能,因此需要进行相应的硬件和软件设计。
  
  1 原理分析
  
  打印机使用单片机控制,与主板的中核心处理器S3C44B0X通信,实现字符和图像的打印。由于打印由专门的单片机负责,本设计采用单片机监听方式,处理器触发的形式。
  


  图1中,通信开始,单片机的P2.1口保持低电平,ARM的PC0口保持高电平。当打印键触发,PC0口送一个低电平,使其产生一个从低到高的跳变。此时,单片机一直处于低电平,并保持监听,当收到了ARM发送的上升脉冲后,开始接收数据线上的8位数据。之后保持P2.1口低电平。等待下一次上升脉冲的到来,继续更多数据的传输。
  单片机在接收到字符之后,按一行24个字符分段,满一行之后驱动打印马达,不同的打印机有不同的打印机马达驱动指令,使其开始下一行字符打印。打印每行的过程是将每行分了特定的像素行,根据不同的字符编码确定,本系统中采用了16*8点阵全高ASCII码,因此每个字符分了两列,8行进行打印。
  
  2 硬件设计
  
  


  图2 给出了打印接口的原理图,接口采用74LS574作为字符数据输出的锁存, 74HC245接收打印机控制的单片机P2. 1回复的BUSY信号。/PRINTER_W_CS和/PRINTER_R_CS分别作为两个芯片的工作时钟和使能信号。PC0平时拉高保持到电平,因此可以直接连接到打印接口,在传输阶段由ARM处理器发出由低到高的跳变信号。
  
  3 软件设计
  
  ARM中的安排打印任务,优先级为9,OSTaskCreate(TaskPrint, (void *)0, &TaskStartPrint[0],9); TaskPrint(void *data) 函数根据任务的需要,调用PrintLine(char* pdata,U8 e)函数,在打印键触发时打印输出。函数中首先检测打印机是否处于忙状态,之后产生一个由低到高的跳变。之后实现8位数据的传输。
  void PrintLine(char* pdata,U8 e)
  {
   while(*pdata){
   while(rPDATC & 0x80);//PC7 == 0,
   rPDATC &= 0xFE;//PC0 = 0
   Delay(10);
   rPDATC |= 0x01;//PC0 = 1
   Delay(10);
   *((U8*)_Print) = *pdata++;
   } ...
  }
  单片机中,读取打印字符ASCII码数据的函数由void Read_One_ASCII(void)函数实现,函数首先置P2.1为0之后等待产生一个由低到高的跳变,之后置P2.1为1,实现8位数据的读取。
  void Read_One_ASCII(void)
  {
   P21 = 0;
   while(P2^2==0);//底电位
   while(P2^2==1);//高电位
   P21 = 1;
   Print_ASCLL=P0;
  }
  void Send_Print(int Send_Line)函数实现将一行字符的一个像素行的图形码送给打印机。并根据ASCLL点阵的数组计算出图形码的相关码,将该码通过串口送到微型热敏打印机输出。同时在完成每个像素行后MoveMotor(1),实现马达的步进,相关代码略。
  
  4结语
  
  通过单片机单独控制,可以使打印控制任务更简洁高效,同时采用uC/OS-II满足系统的诸多测量、控制任务需要,也安排了一个打印任务,使其开发、管理更简单,响应也更快。进一步需要对其两部分功能进行积成,充分利用ARM芯片的强大接口,以降低系统的成本。
  
  【参考文献】
  [1]王士元. C 高级实用程序设计[M]. 北京:清华大学出版社,1996.
  [2]戴梅萼,史嘉权.微型计算机技术及应用[M]. 北京:清华大学出版社,1996.
其他文献
【摘要】农村家长大多由于自身文化素质不高,对家庭教育的认识不够,对家庭教育普遍存在误解,加上教育方法过于极端化,导致农村家庭教育功能严重弱化,缺失,以及针对这些失误所提出的应对方法。  【关键词】农村家庭教育;失误;应对方法;和谐;成功     著名教育家苏霍姆林斯基说:“父母是创造未来的“雕塑家”,儿童的“基石”是由父母双手奠定的,教育好自己的子女是一个公民的基本义务”。在当今社会,所有家长都望
期刊
【摘要】有兴趣就有作文的动力,作文教学应注意激发兴趣,优化学生习作心境和指导过程,让学生“心有所思,情有所感,而后有所写”,进而形成良好的智能、情感、个性品质。  【关键词】优化;心境;情感;个性    有兴趣就有作文的动力,因此,作文教学应该注意激发兴趣,优化学生习作心境,优化作文指导过程,让学生“心有所思,情有所感,而后有所写”,进而形成良好的智能、情感、个性品质。近几年来,我在高年级作文教学
期刊
【摘要】2008北京奥运会的成功举办,使我国大众体育参与意识空前高涨。河北省环抱北京,其大众体育发展,受奥运影响较深。以奥运为契机,解决好河北省现存的大众体育发展的问题,必将使我省的大众体育发展迈上一个新的台阶。  【关键词】北京奥运;河北;大众体育    竞技可以展现体育的魅力,然而体育不仅仅是赛场之争。正如现代奥运会创始人顾拜旦所说:“体育为大众”。民众更广泛地参与体育活动,不仅是奥林匹克运动
期刊
【摘要】2007年春季Sun发布了一个新的框架,叫做JavaFX,本文旨在对该新技术的起源、特点、现状、优势向读者作一个简要的介绍。  【关键词】JavaFX;RIA;富客户端;Web    引言:    今天的Internet为那些能够快速开发、部署富Internet应用(RIAs)的开发商提供了无限可能的世界。但只有Java平台称得上在移动设备和浏览器领域非常流行,将使用RIAs的基于浏览器的
期刊
【摘要】介绍了自行设计的恒压供水系统,采用PLC进行逻辑控制,采用变频器进行压力调节.变频器、可编程控制器作为系统控制的核心部件,时刻跟踪管网压力与给定压力的偏差变化,经变频器内部PID运算,通过可编程控制器控制变频与工频切换,自动控制水泵投入的台数和电机转速,实现闭环自动调节恒压变量供水,在保持恒压下达到控制流量的目的,运行结果表明,该系统具有压力稳定,结构简单,工作可靠等特点。  【关键词】P
期刊
【摘要】本文介绍了Visual C#.NET中委托的基本概念、实例化、委托的调用,着重介绍了使委托来引用静态方法和非静态方法、将方法绑定到委托、取消对方法的绑定,以期能为实际开发带来具体参考价值。  【关键词】Visual C#.NET;.Net Framework;委托;绑定;方法    1.引言     委托在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触
期刊
【摘要】在建筑工程项目管理中,如何有效地进行工程造价的管理,并在确保工程质量的前提下,降低工程造价,是各级工程造价部门、投资者一个比较关注的问题。随着我国社会主义市场经济体系的逐步建立,旧的管理模式被打破,工程造价管理面临着许多新情况、新问题,加强建设工程造价管理,控制和合理确定工程造价,确保工程造价的准确性,是建设工程造价管理的首要任务,它对控制固定资产投资规模、防止“三超”现象起着关键作用。如
期刊
【摘要】分析了110KV线路距离保护和电流保护在实际应用中各自的特点, 提出线路微机保护应同时具备距离和电流保护的特点, 以便更好地适应电网运行的要求,并提出改进建议。  【关键词】线路保护;后备保护    目前110KV线路保护基本配置是阶段式距离保护或电流保护和零序电流保护, 对于有特殊要求的线路还配有纵联保护, 如并列双回线、双侧电源线路、重要用户等。由于系统稳定的要求, 广东电网要求110
期刊
【摘要】串联电抗器是高压并联电容器装置的重要组成部分,其主要作用是抑制谐波和限制涌流[1],因此,在并联电容器的回路中串联电抗器是非常必要的。电抗率是串联电抗器的重要参数,电抗率的大小直接影响着它的作用。文章主要对500kV惠州站并联电容器中串联电抗器的选择和作用进行分析介绍。  【关键词】串联电抗器;消除谐波;电抗率    1、前言    500kV惠州站装有并联电容器作为系统无功补偿装置,为了
期刊
【摘要】电信网络中特别是管线网络(包括光缆、主干电缆、配线电缆等),其设备与地理环境紧密地联系在一起,电信线路的建设、维护都离不开详细而完整的GIS系统。本文分析了GIS的主要用途及其优点以及电信行业的发展现状,阐述了通信行业引入GIS、建立通信网络地理信息系统的必要性,并简单阐述了系统的设计与数据的管理。  【关键词】资源管理;管线;GIS;模型    引言    地理信息系统(Geograph
期刊