历史上的今天
返回首页

历史上的今天

今天是:2025年01月10日(星期五)

正在发生

2018年01月10日 | 交通灯模拟实验程序

2018-01-10 来源:eefocus

交通灯模拟实验程序

 GEWEI EQU 21H     ;个位数据 
      SHIWEI EQU 23H    ;十位数据 
      SCANLED EQU 25H


      SCANMODE EQU 26H 
      RED EQU 28H       ;定义灯的缓冲区 
      GREEN EQU 29H 
      YELLOW EQU 32H 
      NUMTIM EQU 33H 
      LED EQU  34H 


      ORG 000H 
      JMP START 
      ORG 0BH 
      JMP TIMER0          ;定时器0中断入口 
      ORG 100H 
START: MOV  SP,#50H 
       MOV  R0,#20H 
       MOV  R5,#20 
 CLR0: MOV  @R0,#00H 
      INC R0 
      DJNZ R5,CLR0 
       MOV  TMOD,#01H       ;设置定时器 
       MOV  TH0,#HIGH(65536-5000) 
       MOV  TL0,#LOW(65536-5000) 
      SETB TR0 
       MOV  IE,#10000010B    ;端口初始化 
       MOV  P0,#0FFH 
       MOV  P1,#0FFH 
       MOV  P2,#00H 
       MOV  P3,#0FFH 
       MOV  R3,#10 
       MOV  R2,#3 
       MOV  R1,#10 
       MOV  R7,#200 
       MOV  RED,#10 
       MOV  YELLOW,#3 
       MOV  GREEN,#10 
       MOV  NUMTIM,#10 
       MOV  LED,#0FFH 
      AJMP $ 


      ;============================================================= 

  TIMER0:PUSH ACC                  ;定时器部分,负责交通灯的及时和数码管动态扫描 
         PUSH PSW 
          MOV  TH0,#HIGH(65536-5000) ;重新赋初值 
          MOV  TL0,#LOW(65536-5000) 
         DJNZ R7,RET0 
          MOV  R7,#200 
           MOV    A,SCANMODE          ;调用扫描 
           MOV    B,#4 
          DIV   AB 
           MOV    A,B 
          RL    A 
           MOV    DPTR,#TAB_SCAN 
          JMP   @A+DPTR 
TAB_SCAN: AJMP  RED_LIGHT 
          AJMP  YEL_LIGHT 
          AJMP  GRE_LIGHT 
          AJMP  YEL_LIGHT 
   RET0:   MOV   A,NUMTIM 
          LCALL BIN_BCD 
           MOV  SHIWEI,A 
           MOV  GEWEI,B 
          INC   SCANLED 
           MOV    A,SCANLED 
           MOV    B,#4 
          DIV   AB 
           MOV    A,B 
          RL    A 
           MOV    DPTR,#TAB_SCAN0 
          JMP   @A+DPTR 
TAB_SCAN0:AJMP  SCAN_L1 
          AJMP  SCAN_L2 
SCAN_L1:  MOV    P2,#11111011B 
          MOV    A,SHIWEI 
         JMP   END_SCAN 
SCAN_L2:  MOV    P2,#11111101B 
          MOV    A,GEWEI 
         JMP   END_SCAN 
END_SCAN: MOV    DPTR,#TABLE 
          MOV C  A,@A+DPTR 
          MOV    P0,A 
          MOV    A,LED 
          MOV    P1,A 
         POP PSW 
         POP ACC 
         RETI 

RED_LIGHT: MOV   LED,#11111100B 
           MOV   NUMTIM,RED 
          DEC  RED 
           MOV   A,RED 
          CJNE A,#0FFH,RET0 
           MOV   RED,#10 
           MOV   A,SCANMODE 
          ADD  A,#01H 
           MOV   SCANMODE,A 
          JMP  RET0 
YEL_LIGHT: MOV   LED,#11110011B 
           MOV   NUMTIM,YELLOW 
          DEC  YELLOW 
           MOV   A,YELLOW 
          CJNE A,#0FFH,RET0 
           MOV   YELLOW,#3 
           MOV   A,SCANMODE 
          ADD  A,#01H 
           MOV   SCANMODE,A 
          JMP  RET0 
GRE_LIGHT: MOV   LED,#11001111B 
           MOV   NUMTIM,GREEN 
          DEC  GREEN 
           MOV   A,GREEN 
          CJNE A,#0FFH,RET1 
           MOV   GREEN,#10 
           MOV   A,SCANMODE 
          ADD  A,#01H 
           MOV   SCANMODE,A 
     RET1:JMP  RET0 



 BIN_BCD: MOV   B,#10 
         DIV  AB 
         RET 

 DELAY:  MOV    R5,#02 
    D1:  MOV    R6,#200 
    D2:  MOV    R7,#200 
        DJNZ  R7,$ 
        DJNZ  R6,D2 
        DJNZ  R5,D1 
        RET 

TABLE:DB  0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H    ;共阳字码表 
END 


推荐阅读

史海拾趣

HDP_Power公司的发展小趣事

关于电蚊拍的基本电路,网友可能提出的问题及回答如下:

问题一:电蚊拍的基本电路由哪些部分组成?

回答:电蚊拍的基本电路主要由三个核心部分组成:阻容降压电路(或称为高频振荡电路)、倍压整流电路以及高压电击网。

  1. 阻容降压电路(高频振荡电路):这部分电路主要负责将直流电源(如电池提供的3V直流电)转换为高频交流电,通常频率在18kHz左右。这一转换过程由三极管和变压器等元件共同完成,通过变压器的升压作用,将电压提升到数百伏。

  2. 倍压整流电路:高频交流电经过升压后,进入倍压整流电路。这个电路通过多个二极管和电容的组合,将电压进一步升高到足以电击蚊虫的水平,通常可达到1500V左右。常见的倍压整流电路有三倍压、四倍压等多种连接方式。

  3. 高压电击网:高压电击网是电蚊拍的输出部分,由细密的金属网格构成。当蚊虫接触到金属网格时,会形成电路通路,导致蚊虫被高压电击死。

问题二:为什么电蚊拍使用一段时间后,电击效果会变差?

回答:电蚊拍使用一段时间后电击效果变差的原因可能包括以下几点:

  1. 电容老化:电蚊拍中的倍压电容(如CBB电容)在频繁充放电过程中会逐渐老化,其容量会逐渐下降,导致储能能力降低,从而影响电击效果。

  2. 元件损坏:电蚊拍中的二极管、三极管等元件在长时间使用后可能出现损坏或性能下降,导致电路无法正常工作或电压无法升到足够高的水平。

  3. 电池电量不足:电池是电蚊拍的能量来源,如果电池电量不足,将直接影响电蚊拍的电击效果。

  4. 金属网格污染或变形:金属网格在使用过程中可能会受到污染或变形,导致接触不良或短路,从而影响电击效果。

问题三:如何判断电蚊拍是否需要维修?

回答:可以通过以下几种方法来判断电蚊拍是否需要维修:

  1. 观察指示灯:如果电蚊拍的指示灯不亮或亮度明显降低,可能是电池电量不足或电路存在故障。

  2. 检查电击效果:如果电蚊拍在使用时电击效果变差或无法电击蚊虫,可能是电路中的元件损坏或老化。

  3. 测量电压:使用万用表等工具测量电蚊拍输出端的电压,如果电压明显低于正常值(如1500V左右),则说明电路存在问题。

  4. 检查金属网格:观察金属网格是否干净、平整、无变形或短路现象。

问题四:如何维修电蚊拍?

回答:维修电蚊拍需要一定的电子知识和技能,以下是一些基本的维修步骤:

  1. 检查电池:首先检查电池是否电量充足且接触良好。如果电池电量不足,应及时更换新电池。

  2. 清洁金属网格:使用软布或棉签等工具清洁金属网格上的污垢和灰尘。

  3. 检查并更换元件:如果确定是电路中的元件损坏导致的问题,应使用万用表等工具检测并更换损坏的元件。常见的损坏元件包括二极管、三极管、电容等。

  4. 调整电路:在更换元件后,可能需要调整电路中的某些参数(如电阻值、电容容量等)以确保电路能够正常工作。

  5. 测试电击效果:在维修完成后,应使用万用表等工具测试电蚊拍的电击效果是否恢复正常。

请注意,由于电蚊拍内部涉及高压电路,因此在维修过程中应确保安全操作,避免触电等危险情况的发生。如果不具备相关知识和技能,建议将电蚊拍送至专业维修机构进行维修。

Astema公司的发展小趣事

Astema公司自创立之初,就专注于研发创新的电子技术。公司投入大量资源于研发部门,不断推出具有竞争力的新产品。其中,一款具有高效能、低功耗特点的芯片产品,在市场上获得了巨大成功,为公司带来了可观的收入。这一成功促使Astema在行业内建立了良好的声誉,吸引了更多的客户和合作伙伴。

CHENMKO公司的发展小趣事

随着公司规模的扩大,Astema开始关注可持续发展和社会责任。公司致力于推动绿色生产,减少对环境的影响。同时,Astema还积极参与社会公益活动,回馈社会。这些举措不仅提升了公司的社会形象,还为公司的长期发展注入了新的动力。

以上这些故事只是模拟Astema公司可能的发展路径和挑战,并非真实情况。真实的电子行业公司发展历程往往更加复杂和多元,需要综合考虑多种因素。如果您对Astema公司的真实发展情况感兴趣,建议查阅相关的行业报告、公司年报或新闻报道等。

敦泰(FOCALTECH)公司的发展小趣事
压缩机启动电路故障通常涉及启动器和压缩机线圈。如果启动器损坏,可以购买同型号的新启动器进行更换。如果压缩机线圈断路,则可能需要更换整个压缩机。这些维修工作较为复杂,建议由专业维修人员进行操作。
Consolidated Wire公司的发展小趣事

随着全球环保意识的日益增强,Consolidated Wire公司积极响应绿色发展的号召。公司致力于研发环保型电子线材产品,采用环保材料和生产工艺,降低生产过程中的能耗和排放。同时,公司还加强废弃电子产品的回收和再利用工作,推动循环经济的发展。这些环保举措不仅有助于提升公司的社会形象,也为公司的可持续发展奠定了坚实基础。

这些故事虽然是虚构的,但它们基于电子行业中常见的发展路径和趋势。在实际的电子行业中,类似的故事每天都在上演,推动着整个行业的进步和发展。

Antenova公司的发展小趣事

Antenova公司积极寻求与其他行业领导者的战略合作,以推动公司的成长和发展。通过与全球知名的芯片制造商、设备生产商等建立合作关系,Antenova得以将其天线产品集成到更广泛的电子产品中,从而进一步扩大了市场份额。这些战略合作不仅提升了Antenova的品牌知名度,还为公司的长期发展提供了有力支持。

以上是关于Antenova公司发展起来的五个相关故事,这些故事展示了公司在技术创新、市场拓展、产品推出、专业服务以及战略合作等方面的努力和成就。这些成就为Antenova在电子行业中的成功奠定了坚实基础,并为公司未来的持续发展提供了有力保障。

问答坊 | AI 解惑

这个数模转换器的地址怎么是E000H?

各位大哥大姐: 下面这个图中的数模转换器地址怎么是E000H? 它与8031单片机相连。谢谢!…

查看全部问答>

谁能看懂这个程序啊 ?

uchar readbyte()                                     /*读一个字节*/ { uchar i,j,k; SCL=0; delaym(1); ...…

查看全部问答>

谁解决过 wince + 2440 串口丢数的问题啊?

请教高手们,又谁遇到过这个问题啊,平台是:Wince5.0 + S3C2440? 接收数据时总发生丢数据!…

查看全部问答>

键盘防抖问题

8个独立中断按键。 在中断后,先进行延时防抖,然后进行检查哪个按键被按下。当按键检查完后,判断按键是否释放,若释放,则返回。程序如下所示。 但是运行的时候,发现有时候按键后,按键次数加2 ,也就是说进入中断两次。难道判断按键释放的程 ...…

查看全部问答>

vxwoks中TCP_PACKET、UDP_PACKET、TCP_HEADER、UDP_HEADER等结构的描述

vxwoks中TCP_PACKET、UDP_PACKET、TCP_HEADER、UDP_HEADER等结构的描述在哪个.h文件或doc文档中有描述? 很多结构描述都找不到,网上也搜索不到,求助ing!…

查看全部问答>

基于RVMDK(KEIL)开发平台的帮助中文文档

       以前学习中,一直想找本KEIL的中文帮助文档,最近在官方看到一个视频RV MDK开发工具视频(精典)连载。。。。 。发现KEIL官网出的最新版本的KEIL3.50安装后可以得到中文的帮助文档。    对于学习者 ...…

查看全部问答>

看门狗与CPUOFF

======================================================================//#include \"msp430x54x.h\"#include <stdlib.h>#include <stdio.h>#include \"PIN_DEF.H\"#pragma vector=WDT_VECTOR__interrupt void watchdog_timer (void){&n ...…

查看全部问答>

想找一款电源芯片

想找一款电源芯片:是升降压型的,电源输入3-10V,电源固定输出5V,电流300mA。哪位高手推荐下哪个型号适合呢?…

查看全部问答>

double long类型的数据转换

在使用DSPF28027处理数据时,需要将double long类型的数据转换为unsigned int的类型。 11759.76072为double long数据的类型,而需要将整数部分提取出来,但使用强制转换(unsigned int) a会造成整数数据的丢失 double long 为IEEE64-bit的数据。 ...…

查看全部问答>

基于Hercules 的工业“安全”控制系统 测试 RS485 发送

基于Hercules 的工业“安全”控制系统 测试 RS485 发送数据到PC 硬件说明   Hercules           数字隔离RS485         TMS5700432 ====ISO15M 程序参考:ex ...…

查看全部问答>