基于8255的LCD显示温度控制器设计_南邮_通院课程设计

  • O1_995337
    了解作者
  • C/C++
    开发工具
  • 127.6MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-02-27 19:00
    上传日期
lxs是最终版本,8255驱动1602,0-10显示无bug,可设置上下限,带温度回显(仅显示不同温度值); lxs2是初版,仅8255驱动1602显示, test带8155驱动数码管显示和仅51单片机驱动1602程序及仿真图;
DS18b20_8255A_8051.zip
内容介绍
/***************************************************/ /* Release Notes for RTX51 TINY Version 2 */ /* PK51 PROFESSIONAL DEVELOPERS KIT */ /***************************************************/ This file contains release notes and last minute changes relating to the RTX51 TINY Real Time Operating System Version 2. Information in this file, the accompanying manual, and software is Copyright (c) 2002 Keil Software and Keil Elektronik. All rights reserved. Contents ======== 1. What's New in RTX51 TINY Version 2 1.1. Code Banking Support 1.2. Explicit Task Switch (Function: os_switch_task) 1.3. RUN Status Flag for Tasks 1.4. CPU IDLE Mode for Power-Reduction 1.5. Add User Code to the 8051 CPU Hardware Timer Routine 1.6. Handling for Interval Events (Function: os_reset_interval) 2. Reduced Code/Data Size and Improved Performance 3. Problems solved in RTX51 TINY Version 2.02 4. Example Programs 1. What's New in RTX51 TINY Version 2 RTX51 TINY Version 2 has been completly restructured to gain flexiblity, accelarate performance, and reduce code/data space requirements. Also several new features are added to this popular Real-Time Kernal. The following section describes the new features in RTX51 TINY Version 2: 1.1. Code Banking Support You can now use RTX51 TINY together with code banking application. Code banking support is enabled in the file CONF_TNY.A51 with the CODE_BANKING configuration variable. As with all other code banking applications you need to configure the file L51_BANK.A51. Note: The banking configuration file L51_BANK.A51 V2.12 or higher is required. 1.2. Explicit Task Switch (Function: os_switch_task) The function os_switch_task lets a task give up the CPU and let another task execute. If the task calling os_switch_task is the only task that is ready for execution, it will resume running immediately. Function prototype: void os_switch_task (void); Program Example: void long_job (void) _task_ 1 { float f1, f2; f1 = 0; while (1) { f2 = log (f1); f1 += 0.0001; os_switch_task (); // execute other tasks } } 1.3. READY Status Flag In addition to the signal flag, each task has also a READY status flag. A new function allows you to set the READY status flag. If the READY status flag of a tasks is set, the task will always stay in the Ready state. The os_wait function will immidiatly continue to the execute when the READY status flag is set. When a task becomes active, the status of the READY status flag is cleared and the previous status is signaled as retrun value of the os_wait and os_switch_task function. The os_wait function requires no specific argument (like K_SIG for the signal flag) to wait for the READY status flag. Compared to the os_send_signal function, the os_set_ready function executes faster. os_set_ready does not check for valid taskid arguments. Function Prototypes void os_set_ready (unsigned char taskid); void isr_set_ready (unsigned char taskid); Set the READY status flag of the task specified by taskid. The value of the READY status flag is indicated by the return value RDY_EVENT of the os_wait and os_switch_task function. When a task becomes ready, the READY status flag of these task is automatically cleared. 1.4. CPU IDLE Mode for Power-Reduction Many 8051 variants can be switched into an IDLE mode where the CPU is gated off the clock signal. In IDLE mode, the CPU stops instruction execution. However peripherals including the interrupt system still continue their operation. RTX51 Tiny invokes the IDLE mode when no task is in the status READY. Typcially the IDLE mode is terminated by an CPU interrupt, i.e. the RTX51 Tiny System Clock Interrupt. On most 8051 variants the IDLE mode is started by setting bit 0 (IDL) in the PCON register. However, the configuration file CONF_TNY.A51 provides the macro CPU_IDLE for the configuration of the IDLE mode activation code. 1.5. Add User Code to the 8051 CPU Hardware Timer Routine In RTX51 Tiny Version 2 it is possible to add user code for the RTX51 System Timer Interrupt routine. In this way you may use the fixed clock rate of the RTX51 System Timer Interrupt to execute own routines. The user code can be configured with macro HW_TIMER_CODE in the configuration file CONF_TNY.A51. 1.6. Handling for Interval Events (Function os_reset_interval) RTX51 Tiny maintains a software timer for each task. This software timer is used as interval timer when os_wait is called with a K_IVL event argument. The interval time specified is substracted from the software timer on the entry of the os_wait function. When two event arguments are used (signal and interval might be combined with K_SIG | K_IVL) with os_wait and the signal event occurs, the software timer might not be elapsed and this may result in incorrect interval times on further os_wait calls with the K_IVL event argument. The function os_reset_interval overcomes this problem and resets the interval time. Example: void maintask (void) _task_ 0 { os_create_task (1); while (1) { event = os_wait2 (K_SIG | K_IVL, 100); switch (event) { case TMO_EVENT: a = event; break; case SIG_EVENT: b = event; os_reset_inverval (100); // correct interval time on a signal event break; } } } 2. Reduced Code/Data Size and Improved Performance RTX51 Tiny Version 2 is fully scalable and shows significant code size reductions when: a) Round Robin Task Switching is disabled with the setting TIMESHARING EQU 0 in the configuation file CONF_TNY.A51. b) not all RTX51 Tiny system functions are used. c) Stack Checking is disabled with the setting FREE_STACK EQU 0 in the configuration file CONF_TNY.A51. Compared to RTX51 Tiny Version 1 the code size requirements are reduced. However also the overall system performance is improved. When you disable Round Robin Task Switching even the data requirements are reduced. 3. Problems solved in RTX51 TINY Version 2.02 The following known problems of RTX51 Tiny are corrected in Version 2.02: a) RTX51 Tiny V1.06: isr_send_signal function may destroy the READY status when an interrupt occurs during os_wait, whereby the current task is waiting for the signal from this interrupt. b) RTX51 Tiny V1.06: K_IVL and K_SIG event cannot be combined in os_wait since it is not possible to correct the interval timer. In RTX51 Tiny V2.0 the function os_reset_interval allows you to correct the interval timer. c) RTX51 Tiny V1.06: TIMESHARING (round-robin time) cannot be set to 1. In in this case it can happen (when the interrupt appears before the robin-time is set) that the timeout is delayed 256 system clock ticks. d) RTX51 Tiny V1.06: When user interrupts are longer than a RTX51 Tiny System Clock Timer Tick, the RTX51 Tiny System Clock Timer is called recursively. This overwrites the values SAVEPSW and SAVEACC with wrong values and causes typically a system crash. In RTX51 Tiny V2.0 it is recommended that you set LONG_USR_INTR EQU 1 in the configuration file CONF_TNY.A51 if your application contains an interrupt function that may take longer for execution than the RTX51 Tiny System Clock Timer Interval time. It might be also required to set this flag when your code executes most of the time interrupt code with high interrupt priority. e) RTX51 Tiny V2.00 BETA: os_wait did not reset the SIGNAL event, when the signal was already set
评论
    相关推荐
    • 单片机课件
      能够帮助同学们快速的了解单片机并对于单片机的一些设计程序有一定的认知
    • 单片机课件
      单片机的课件及例题, 单片机的课件及例题, 单片机的课件及例题, 单片机的课 件及例题,
    • 爱上单片机
      一本电子爱好者都能看懂,会边看边笑的单片机入门书籍,作者杜洋曾在《无线电》上发表过“趣味单片机制作专题”、“单片机编程魔法学校”等深受读者喜爱、让无数单片机入门者热血沸腾的系列文章。本书通过生动的语言...
    • 单片机资料
      内含30个单片机应用开发的资料,包括配套单片机入门PPT。
    • 单片机课件
      单片机课的课件,对单片机的基础进行了全面的概述,也有非常精细的指导。
    • 单片机工具
      单片机工具 供单片机学习使用 免费资源 日后还会有更多资源 请联系我
    • 单片机课件
      单片机课件 ppt文件格式 介绍了单片机的结构、程序设计、定时器、中断等
    • 单片机教程
      这是一个单片机的教程,可以用于初次学习单片机的人学习。
    • 单片机入门
      很好的单片机学习资源,入门比较好适合对单片机的学习有兴趣的人,而且是名校的精彩讲解,
    • 爱上单片机
      《爱上单片机》本书是一本电子爱好者都能看懂,会边看边笑的单片机入门书籍,作者杜洋曾在《无线电》上发表过“趣味单片机制作专题”、“单片机编程魔法学校”等深受读者喜爱、让无数单片机入门者热血沸腾的系列文章...