历史上的今天
返回首页

历史上的今天

今天是:2025年01月25日(星期六)

2018年01月25日 | 用AT89C2051单片机制作水族箱加氧泵自控开关源程序

2018-01-25 来源:eefocus

以下程序已实际调试运行通过)  


; ---AT89C2051加氧泵控制器源程序-OK!

    org 0000h               

    ajmp main               

    nop                     

    org 01bh                    

    clr tr1                 

    ajmp timon              

    org 30h                 

main:mov 40h,#00h           

    mov 41h,#00h                

    mov 42h,#00h               

    mov 43h,#02h                

    mov 44h,#00h            

    mov 45h,#00h                

    mov 46h,#00h               

    mov 4ah,#02h               

    mov 4bh,#00h               

    mov 4ch,#01h               

    mov 4dh,#05h               

    nca equ 48h             

    ncb equ 49h             

   mov p3,#0ffh               

    mov sp,#50h                 

    mov tmod,#10h          

    mov ie,#88h            

    mov tl1,#46h               

    mov th1,#76h               

    clr nca                 

    clr ncb                 

    setb tr1                    

    clr p3.7                    

disp:;------显示-------     

    mov r3,46h                   

    cjne r3,#1,ct           

    mov dptr,#tab          

    clr p3.2                     

    mov a,42h                

    movc a,@a+dptr          

    anl p1,#01h             

    orl p1,a                     

    jb ncb,xsb              

    setb p3.3               

    lcall ms10               

xsb:     acall key               

    clr p3.3                    

    jb nca,ys1              

    mov a,43h               

    movc a,@a+dptr          

    anl p1,#01h             

    orl p1,a                    

    setb p3.2               

ys1:     lcall ms10              

    ajmp disp               

ct: mov dptr,#tab           

    clr p3.2                    

    mov a,42h               

    movc a,@a+dptr          

    anl p1,#01h            

    orl p1,a                    

    jb ncb,xsd              

    setb p3.3               

    lcall ms10              

xsd:     acall key               

    clr p3.3                    

    jb nca,ys2              

    mov a,43h               

    movc a,@a+dptr          

    anl p1,#01h             

    orl p1,a                    

    setb p3.2               

ys2:     lcall ms10              

    ajmp disp               

timon:;定时计数中断子程序--

    setb rs0                

    push psw                    

    push aCC                    

    mov tl1,#46h                

    mov th1,#76h                

    setb tr1                    

    inc 40h                 

    mov r0,40h              

    cjne r0,#8,tim          

    mov 40h,#00h                

    cpl p1.0                

t11:     inc 41h                 

    mov r0,41h              

    cjne r0,#60,tim         

    mov 41h,#00h                

    mov r0,42h              

    cjne r0,#00,tia         

    ajmp tib                    

tia:     dec 42h                

    ajmp tim                    

tib:     mov r1,43h              

    cjne r1,#00,tIC         

    cpl p3.7                    

    mov r6,46h              

    inc 46h                 

    cjne r6,#01h,zd         

    mov 46h,#00h                

    mov 42h,4bh             

    mov 43h,4ah             

    ajmp tim                    

zd: mov 42h,4dh             

    mov 43h,4ch             

    ajmp tim                    

tic:     dec 43h                

    mov 42h,#09h                

tim:     pop acc                

    pop psw                

    reti                        

key:;-----按键处理-------   

    nop                     

k0:    jb p3.1,k1                

    acall ms10              

    acall ms10              

    jnb p3.1,sz                 

    ljmp k1                

sz: jnb p3.1,$              

    setb p3.7               

    inc 44h                 

    mov r5,44h              

k1: cjne r5,#01h,k2             

    setb nca                    

    clr ncb                 

    setb p3.5               

    clr p3.4                

    mov 46h,#00h                

    mov ie,#00h             

    jb p3.0,fh              

    acall ms10              

    acall ms10              

    jnb p3.0,ct1            

k2: cjne r5,#02h,k3        

    setb ncb                    

    clr nca                 

    mov 46h,#00h                

    mov ie,#00h             

    jb p3.0,fh              

    acall ms10              

    acall ms10              

    jnb p3.0,ct2                

k3: cjne r5,#03h,k4         

    setb nca                    

    clr ncb                 

    setb p3.4               

    clr p3.5                 

    mov 46h,#01h                

    mov 42h,4dh             

    mov 43h,4ch             

    mov ie,#00h             

    jb   p3.0,fh             

    acall ms10              

    acall ms10              

    jnb p3.0,cd1            

k4: cjne r5,#4h,k5              

    setb ncb                    

    clr nca                 

    mov 46h,#01h                

    mov ie,#00h             

    jb   p3.0,fh             

    acall ms10              

    acall ms10              

    jnb p3.0,cd2                

k5: cjne r5,#05h,fh         

    mov r5,#00h             

    setb p3.4                   

    setb p3.5                   

    ljmp qd                 

fh: ret                         

ct1:;-----常通个位定时减----    

    jnb p3.0,$              

    mov r4,4bh              

    dec 4bh                 

    cjne r4,#00h,ct1a       

    mov 4bh,#09h                

ct1a:mov 42h,4bh                

    ret;                        

ct2:;-----常通十位定时减----    

    jnb p3.0,$              

    mov r4,4ah              

    dec 4ah                 

    cjne r4,#00h,ct2a       

    mov 4ah,#09h                

ct2a:mov 43h,4ah                

    ret                     

cd1:;-----常断个位定时减----    

    jnb p3.0,$              

    mov r4,4dh              

    dec 4dh                 

    cjne r4,#00h,cd1a       

    mov 4dh,#09h                

cd1a:mov 42h,4dh                

      ret;                  

cd2:;-----常断十位定时减----    

    jnb p3.0,$              

    mov r4,4ch              

    dec 4ch                 

    cjne r4,#00h,cd2a       

    mov 4ch,#09h                

cd2a:mov 43h,4ch                

    ret                     

qd: mov 46h,#00h                

    mov 44h,#00h            

    mov 42h,4bh             

    mov 43h,4ah             

    mov ie,#88h            

    clr nca                 

    clr ncb                 

    setb tr1                    

    clr p3.7                    

    ret                     

ms10:;----- 延时毫秒-------

     mov r0,#100             

ms: nop                     

    djnz r0,ms              

    ret                     

;---------------------------

tab:     db 80h,0f2h,48h,60h,32h,24h

    db 04h,0f0h,00h,20h

    end

 


推荐阅读

史海拾趣

Hi-Optel Technologly Co Ltd公司的发展小趣事

Hi-Optel Technologly Co Ltd在电子行业中的五个发展故事

故事一:创立与初期发展

Hi-Optel Technologly Co Ltd(以下简称Hi-Optel)成立于1999年,由国有大型上市公司和国内著名风险投资机构共同投资,注册资本高达1亿美元。公司自创立之初便专注于光纤通信领域的模块开发、制造和营销。初期,Hi-Optel面临着技术挑战和市场开拓的双重压力,但凭借其强大的研发实力和敏锐的市场洞察力,逐步在光纤收发器、TO-CAN等关键产品的研发上取得突破,为后续的快速发展奠定了坚实基础。

故事二:技术创新与产品线拓展

随着技术的不断进步,Hi-Optel持续加大研发投入,不断推出新产品以满足市场需求。公司不仅拥有从TO-CAN到光纤收发器等完整产品的研发、生产和处理能力,还涵盖了不同速率和不同封装传输和数据通信的主动模块。这些产品广泛应用于SONET、以太网、FTTx、LTE和IDC光纤传输/接入系统,极大地提升了公司在行业内的竞争力。同时,Hi-Optel还积极拓展产品线,将业务范围延伸至更广泛的电子通信领域。

故事三:市场拓展与品牌建设

在市场拓展方面,Hi-Optel采取了多种策略以扩大市场份额。公司积极参加国内外各类电子通信展会,展示其最新技术和产品,吸引了众多客户和合作伙伴的关注。同时,Hi-Optel还注重品牌建设,通过提升产品质量和服务水平,赢得了客户的广泛好评。此外,公司还建立了完善的销售网络和售后服务体系,为客户提供全方位的支持和服务。

故事四:供应链优化与成本控制

为了应对激烈的市场竞争,Hi-Optel不断优化供应链管理,降低生产成本。公司与多家优质供应商建立了长期稳定的合作关系,确保原材料的稳定供应和质量的可靠性。同时,Hi-Optel还通过引入先进的生产设备和工艺,提高生产效率和产品质量,进一步降低了生产成本。这些措施不仅增强了公司的市场竞争力,还为公司的可持续发展提供了有力保障。

故事五:国际化战略与全球化布局

随着全球化进程的加速,Hi-Optel积极实施国际化战略,拓展海外市场。公司成立了多个海外分支机构,并在多个国家和地区建立了销售网络和售后服务体系。通过与国际知名企业的合作与交流,Hi-Optel不断提升自身的技术水平和品牌影响力。同时,公司还积极参与国际标准和规范的制定工作,推动行业技术的进步和发展。这些努力使得Hi-Optel在全球电子通信领域的影响力日益增强。

Arctic Silicon Devices公司的发展小趣事

在电子行业中,产品质量是企业生存和发展的关键。Arctic Silicon Devices深知这一点,因此非常重视品质管理。公司建立了严格的质量管理体系,从原材料采购到产品生产、测试、包装等各个环节都进行严格把控。同时,公司还加强了对供应商的管理和评估,确保原材料的质量稳定可靠。这些措施使得Arctic Silicon Devices的产品在市场上赢得了良好的口碑和信誉。

固得沃克(GOODWORK)公司的发展小趣事

为了进一步提升品牌影响力和市场占有率,固得沃克积极寻求与行业内知名企业的战略合作。例如,公司与锐单商城达成战略合作,共同推动电子元器件的在线销售和服务。这一合作不仅拓宽了公司的销售渠道,还提升了公司的品牌知名度和美誉度。通过不断参与行业交流和合作,固得沃克在电子行业中的影响力日益增强,为公司的长远发展奠定了坚实基础。

BOWEI公司的发展小趣事

深圳市固得沃克电子有限公司(GOODWORK)的故事始于2004年,当时公司正式成立,专注于半导体分立器件的研发、生产和销售。公司总部设在深圳,并创立了自主品牌“GK”。这一时期的固得沃克,凭借对技术的执着追求和对市场的敏锐洞察,逐步在电子行业站稳脚跟。公司初期虽面临诸多挑战,但凭借团队的坚持和创新精神,逐渐赢得了客户的信赖,为后续的快速发展奠定了坚实基础。

Bourns公司的发展小趣事

Bourns公司一直以来都注重技术研发与创新。不论是自行研发的产品,还是通过并购或特许所取得的技术,Bourns都持续投入于开发新产品。例如,Bourns推出的最新型旋转式电位器,具备绝缘塑料轴、高额定旋转周期以及宽泛的工作温度范围等特性,这些创新产品在市场上取得了良好的反响。

Advance Tapes公司的发展小趣事

为了进一步扩大市场份额,Advance Tapes公司开始积极参与国际展会和交流活动,向全球客户展示其优质的产品和技术实力。同时,公司还加大了对品牌建设的投入,通过广告宣传、赞助活动等方式提升品牌知名度和美誉度。这些努力使得Advance Tapes的胶带产品逐渐在国际市场上占据了一席之地。

问答坊 | AI 解惑

Altium Designer 原理图和PCB多通道设计方法介绍

转载自:http://bbs.21ic.com/icview-141848-1-1.html by:pk.kong 曾经把不少ad6的资料整理想发出来,后来发现用ad6的朋友并不多,所以一直没有动手。 不过最近好几个朋友问ad6这个多通道设计的问题。特别是许mm,可是每次我都忘记把资料带回来 ...…

查看全部问答>

无线系统设计的关键步骤

要使一种方案具有秘密武器或使其有别于竞争者,无线可能是一种非常好的选择。只要遵照几个关键指南,你就能达到无线工程师的水平 作为参考,此处的“短距离无线”不是指手机或WiMAX,而是包括你听说过的所有技术,如蓝牙、IrDA、ISM、 Wi-Fi和 Zig ...…

查看全部问答>

基于WINCE的PDA作为数据采集系统的设计与实现.pdf

基于WINCE的PDA作为数据采集系统的设计与实现.pdf…

查看全部问答>

有偿寻找wince高手

目前手头有个项目使用omap3530做了一个显示器,采用wince系统,使用的是广州英码的核心板,本来厂家给定制内核但是不知为什么系统总是不稳定,现在想找一个熟悉wince的高手(要求人在北京)帮忙搞清楚什么原因,或者重新裁剪一下bsp,系统功能很简 ...…

查看全部问答>

变频器整流回路中泵升电压是什么?

目前使用的电压型变频器,当所带电动机减速制动时,电动机进入发电制动状态,其能量通过逆变电路中的反馈二极管流入整流回路输出的直流中间回路,使直流电压升高产生过电压(泵升电压),而导致器件击穿。为了限制泵升电压,在直流侧电容两端并接功 ...…

查看全部问答>

【为C2000做贡献】各种电机的DSP控制程序

涵盖不同电机的DSP程序。不过里面好多都是2407的代码,大家要修改下才能给2812用。 …

查看全部问答>

为什么放大倍数一大,显示频率就变化

本帖最后由 paulhyde 于 2014-9-15 03:18 编辑 我做的放大器的题,我把反馈电阻调大了一点点就是放大倍数大了一点点,在示波器上显示的我的输入频率和输出频率全部都和我信号发生器的频率不一样了,无论怎么调信号发生器,输出波型都不对,就算你 ...…

查看全部问答>

MSP430学习笔记9-ADC采集1602显示

/********************************************************* 程序注意点: 首先可以选择是否开启内部参考电压还是使用外部参考电压 每个通道可以独立选择参考电压 如果连接了外部参考电压应该注意关闭内部参考电压防止损坏 单片机 程序 ...…

查看全部问答>

我用C8051f想编modbus协议

本帖最后由 似是而非君 于 2015-8-1 17:20 编辑 我想问如果编程modbus协议,我用单片机写的串口程序,发的是ASCll模式的,然后用串口助手接收的话收到的对(下边的图),,但是用modbus调试助手收到的就不对(第一张图),有不一样的,还有不是完 ...…

查看全部问答>

分享430单片机LCD_A模块  编程实例

msp430 单片机的显示控制部分非常简单,直接驱动段码显示器。以msp430f4152为例,lcd的显示不是通过I/O直接驱动,而是通过一个LCDMEM存储器来控制,控制方法和I/O差不多,位字节是高电平就点亮,是低电平就熄灭。LCD存储器中每4位为一段(S0,S1... ...…

查看全部问答>