欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    完整的单片机驱动TFT彩屏的程序设计.docx

    • 资源ID:16386855       资源大小:705.09KB        全文页数:121页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    完整的单片机驱动TFT彩屏的程序设计.docx

    1、完整的单片机驱动TFT彩屏的程序设计单片机驱动TFT彩屏的程序设计一种完整的复杂的单片机驱动TFT彩屏的程序设计。同步显示有星期;温度;时间;遥控指示;以及强大的定时功能废话不多说,自已向下看吧显示效果图:电路图:彩屏部分数据:(网上有资料,陶宝网上有买)以下是汇编程序:(本程序可直接复制使用,但请指明出处。)本程序本人用时2. 5个月制作(当然是工作闲余的时候),本程序是本人为学习汇编而编写(为做到“入森而不迷”)。其已经做过实物测试,除时间不是十分精确外,其它都没有问题(因为问题已经解决了)。遥控码数请参照程序中的以下两个子程序:子程序1:遥控按键处理(码数这里面,很容易找的)子程序2:遥

    2、控外部中断处理程序(遥控器不同码数长度也不一样,这里要注意);制作:王永宾;QQ:794576441;Email:wyb20090311;-复制以下- -;TFT彩屏程序(STC89C52);制作:王永宾;QQ:794576441;Email:wyb20090311LCDRS EQU P2.0LCDRW EQU P2.1LCDCS EQU P2.3LCDRST EQU P2.4;-SU00 EQU 30H ;时间字符的地址 2440(0-9)SU01 EQU 31HSU10 EQU 32HSU11 EQU 33HSU20 EQU 34HSU21 EQU 35HSU30 EQU 36HSU31

    3、EQU 37HSU40 EQU 38HSU41 EQU 39HSU50 EQU 3AHSU51 EQU 3BHSU60 EQU 3CHSU61 EQU 3DHSU70 EQU 3EHSU71 EQU 3FHSU80 EQU 40HSU81 EQU 41HSU90 EQU 42HSU91 EQU 43H;-时间寄存器定义-RR0 EQU 44HRR1 EQU 45HRR2 EQU 46HRR3 EQU 47HRR4 EQU 48HRR5 EQU 49HRR6 EQU 4AHRR7 EQU 4BHSUZR0 EQU 4DH ;星期?字符的地址(日-六)SUZR1 EQU 4EHSUZ10 EQU

    4、4FH SUZ11 EQU 50HSUZ20 EQU 51HSUZ21 EQU 52HSUZ30 EQU 53HSUZ31 EQU 54HSUZ40 EQU 55HSUZ41 EQU 56HSUZ50 EQU 57HSUZ51 EQU 58HSUZ60 EQU 59HSUZ61 EQU 5AHWD1 EQU 5BHWD2 EQU 5CHWD3 EQU 5DHWD4 EQU 5EH;-星期?寄存器定义 -RR8 EQU 4CH;定时字符的地址 1616(六-日)GUAN0 EQU 60HGUAN1 EQU 61HSL10 EQU 62HSL11 EQU 63H SL20 EQU 64HSL21

    5、EQU 65HSL30 EQU 66HSL31 EQU 67HSL40 EQU 68HSL41 EQU 69HSL50 EQU 6AHSL51 EQU 6BHSL60 EQU 6CHSL61 EQU 6DHSL70 EQU 6EHSL71 EQU 6FH;-定时寄存器定义-第一组-RA EQU 70H ;组RAL0 EQU 71H ;时间RAL1 EQU 72HRAL2 EQU 73HRAL3 EQU 74HRAR0 EQU 75HRAR1 EQU 76HRAR2 EQU 77HRAR3 EQU 78HRA1 EQU 79H ;星期?RA2 EQU 7AHRA3 EQU 7BHRA4 EQU

    6、7CHRA5 EQU 7DHRA6 EQU 7EHRA7 EQU 7FH;TFT彩屏程序(STC89C52);制作:王永宾;QQ:794576441;Email:wyb20090311;=;=开始00=ORG 0000HLJMP MAIN0ORG 03HLJMP ITT00 ;外部中断ORG 0BHRETI ;计时中断如果溢出直接ORG 1BHLJMP TI1 ;走时中断;=主程序开始=;ORG 20HMAIN0:LCALL KAIJI ;开机初始化LCALL CSH0QINGPINGHAI0:JB P3.7,$MOV 24H,#00H ;R4MOV 25H,#03FH ;R4MOV 26H,

    7、#00HMOV 27H,#03FHMOV R3,#00HMOV R4,#00HLCALL QINGPINGQINGPINGHAI1:JNB P3.7,QINGPINGRED0JNB P3.6,QINGPINGENDAJMP QINGPINGHAI1QINGPINGRED0:JB P3.7,$MOV 24H,#0E0H ;R4MOV 25H,#0FFH ;R4MOV 26H,#0E0HMOV 27H,#0FFHMOV R3,#00HMOV R4,#0E0HLCALL QINGPINGQINGPINGRED1:JNB P3.7,QINGPINGLV0JNB P3.6,QINGPINGENDAJMP

    8、 QINGPINGRED1QINGPINGLV0:JB P3.7,$MOV R1,#00HMOV R2,#03HMOV R3,#10HMOV R4,#0B0HLCALL XML ;写命令LCALL XSJ ;写数据MOV R1,#00HMOV R2,#22HLCALL XML ;写命令MOV 24H,#0C3H ;底MOV 25H,#3FH ;字MOV 26H,#0C3H ;底MOV 27H,#3FH ;字MOV R3,#00HMOV R4,#0C3H ;底LCALL QINGPINGQINGPINGLV1:JNB P3.7,QINGPINGHAI0JNB P3.6,QINGPINGENDAJ

    9、MP QINGPINGLV1;=QINGPINGEND:MOV R1,#00HMOV R2,#22HLCALL XML ;写命令LCALL GUDING ;固定字符LCALL WINDU ;温度LCALL YAOKONG ;遥控LJMP XSUMAIN:LCALL DINGSHISHU ;定时数LCALL DINGSHIZU ;定时组LCALL XPX ;星期几LCALL SHIJIAN ;时间LCALL WENDUCHULILCALL WINDU ;温度LCALL TIR0SETB P2.5 ;-完全相等-关闹CLR P2.6 ;-完全相等-关闹MAIN1:CLR P2.7LCALL SHI

    10、JIAN ;时间LCALL JP0 ;键盘LCALL POWER ;遥控处理;-MOV A,2CH CJNE A,RR3,MAIN2 ;RR3为分计LJMP MAIN3 ;定义十秒锺扫一次温度MAIN2:MOV 2CH,RR3LCALL WENDUCHULI ;温度处理LCALL WINDU ;温度MAIN3:MOV A,RR0 ;分有变动就扫描定时CJNE A,RR4,MAIN4 ;RR4为分LJMP MAIN1MAIN4:MOV RR0,RR4LCALL BIJIAO ;定时比较LJMP MAIN1;=温度处理=WENDUCHULI:LCALL WENDUXS ;读写子程序MOV A,21

    11、HMOV R0,#20HXCHD A,R0ANL A,#0FHMOV 21H,A ;21H小数处理MOV A,20HSWAP A ;20整数处理MOV 20H,AJB 07H,WENDUCHULI1;是负数转MOV WD4,26H ;清除负数标示LCALL WENDUCHULI0 ;写整数个位MOV WD2,ALCALL WENDUCHULI0 ;写整数十位MOV WD1,AMOV A,21H ;写小数位MOV B,#02DIV ABMOV B,AADD A,BADD A,#30HMOV WD3,A ;写小数位RETWENDUCHULI1:;负数处理.MOV WD4,27H ;负数标示MOV

    12、A,20H ;20整数处理CPL A ;取反ANL A,#7FH ;清负数位INC A ;加一MOV 20H,A ;20整数处理MOV A,21H ;21H小数处理CPL A ;取反ANL A,#0FH ;清除高位INC A ;加一MOV 21H,A ;21H小数处理LCALL WENDUCHULI0 ;写整数个位MOV WD2,ALCALL WENDUCHULI0 ;写整数十位MOV WD1,AMOV A,21H ;写小数位MOV B,#02DIV ABMOV B,AADD A,BADD A,#30HMOV WD3,A ;写小数位RET;-整数写子程序-WENDUCHULI0:MOV A,2

    13、0H ;整数写子程序MOV B,#10DIV ABMOV 20H,AMOV A,BADD A,BADD A,#30H ;整数写子程序RET;=写数据=WENDUXS:LCALL WENDURSTJB 70H,WENDUXS1 ;检复位成功了转RETWENDUXS1:MOV A,#0CCH ;跳过ROMLCALL WENDUXS_BMOV A,#44HLCALL WENDUXS_B ;RAM温度转换MOV R4,#50D1: ;等待750uS转换完成MOV R5,#13DJNZ R5,$DJNZ R6,D1;=读数据=LCALL WENDURSTJB 70H,WENDUDS1 ;检复位成功了转R

    14、ETWENDUDS1:MOV A,#0CCH ;跳过ROMLCALL WENDUXS_BMOV A,#0BEH ;读RAMLCALL WENDUXS_BLCALL WENDUDX_B ;调读子程序RET;-读数子程序-WENDUDX_B:MOV R0,#20HMOV R4,#02WENDUDX_B0:MOV R5,#08HWENDUDX_B1:CLR CSETB P3.3NOPNOPNOPNOPCLR P3.3NOPNOPNOPNOPNOPNOPSETB P3.3MOV R6,#18 DJNZ R6,$ ;13uSMOV C,P3.3MOV R6,#46DJNZ R6,$RRC ADJNZ R

    15、5,WENDUDX_B1MOV R0,AINC R0DJNZ R4,WENDUDX_B0RET;=写数据子程序=WENDUXS_B:MOV R5,#08HCLR CWENDUXS_B0:CLR P3.3MOV R6,#12DJNZ R6,$RRC AMOV P3.3,CMOV R6,#49DJNZ R6,$SETB P3.3NOPNOPDJNZ R5,WENDUXS_B0SETB P3.3RET;=18B20初始化子程序=WENDURST:SETB P3.3NOPNOPCLR P3.3MOV R5,#255WENDURST1: ;复位低电时间510uSNOPNOPDJNZ R5,WENDURS

    16、T1;复位低电时间510uSSETB P3.3MOV R5,#60 ;等待检测存在脉冲15uSDJNZ R5,$ ;等待检测存在脉冲15uSJNB P3.3,WENDURSTOK ;有存在脉冲转CLR 70H ;无存在脉冲清除标号RET WENDURSTOK:MOV R5,#180 ;测存在脉冲240uSDJNZ R5,$SETB 70H ;有存在脉冲打上标号SETB P3.3RET;=遥控按键处理=POWER:MOV A,5FHCJNE A,#0B7H,POWER1LCALL YAOKONG1MOV 5FH,#00HRETPOWER1:MOV A,5FHCJNE A,#0A7H,POWER2

    17、LCALL YAOKONG2MOV 5FH,#00HRETPOWER2:MOV A,5FHCJNE A,#97H,POWER3LCALL YAOKONG3MOV 5FH,#00HRETPOWER3:MOV A,5FHCJNE A,#0FH,POWER4LCALL YAOKONG4MOV 5FH,#00HRETPOWER4:MOV A,5FHCJNE A,#0C7H,POWER5LCALL YAOKONG5MOV 5FH,#00HRETPOWER5:MOV A,5FHCJNE A,#4FH,POWER6LCALL YAOKONG6MOV 5FH,#00HRETPOWER6:MOV A,5FHCJ

    18、NE A,#0E7H,POWER7LCALL YAOKONG7MOV 5FH,#00HRETPOWER7:MOV A,5FHCJNE A,#27H,POWER8LCALL YAOKONG8MOV 5FH,#00HRETPOWER8:MOV A,5FHCJNE A,#0D7H,POWER9LCALL YAOKONG9MOV 5FH,#00HRETPOWER9:MOV A,5FHCJNE A,#47H,POWER0LCALL YAOKONG0MOV 5FH,#00HPOWER0:RET;=;=定时比较=BIJIAO:BJ0:MOV A,RR8CJNE A,#4DH,BJ1 ;今天星期一吗?MOV

    19、R1,#1EHMOV R0,#10HLCALL BJ00RETBJ1:CJNE A,#4FH,BJ2MOV R1,#18HMOV R0,#10HLCALL BJ00RETBJ2:CJNE A,#51H,BJ3MOV R1,#19HMOV R0,#10HLCALL BJ00RETBJ3:CJNE A,#53H,BJ4MOV R1,#1AHMOV R0,#10HLCALL BJ00RETBJ4:CJNE A,#55H,BJ5MOV R1,#1BHMOV R0,#10HLCALL BJ00RETBJ5:CJNE A,#57H,BJ6MOV R1,#1CHMOV R0,#10HLCALL BJ00RE

    20、TBJ6:CJNE A,#59H,BJ7MOV R1,#1DHMOV R0,#10HLCALL BJ00RETBJ7:LJMP BIJIAO;=BJ00: ;是的MOV R5,#08HBJ001:MOVX A,R1CJNE A,#60H,BJ01 ;第一组的星期一开了吗?BJ003:MOV A,R1ADD A,#10HMOV R1,AMOV A,R0ADD A,#10HMOV R0,ADJNZ R5,BJ001RETBJ01:LCALL BJBRAL ;调比较程序INC R0INC R0INC R0INC R0LCALL BJBRAR ;调比较程序DEC R0DEC R0DEC R0DEC R

    21、0LJMP BJ003;-子程序-BJBRAL:PUSH 00HMOVX A,R0CJNE A,RR7,BJRALRET ;RAL0=RR7?,不等返回INC R0MOVX A,R0CJNE A,RR6,BJRALRET ;RAL1=RR6?,不等返回INC R0MOVX A,R0CJNE A,RR5,BJRALRET ;RAL2=RR5?,不等返回INC R0MOVX A,R0CJNE A,RR4,BJRALRET ;RAL3=RR4?,不等返回CLR P2.5 ;-完全相等-开闹SETB P2.6 ;-完全相等-开闹LJMP BJRALRETBJBRAR:PUSH 00HMOVX A,R0

    22、CJNE A,RR7,BJRALRET ;RAL0=RR7?,不等返回INC R0MOVX A,R0CJNE A,RR6,BJRALRET ;RAL1=RR6?,不等返回INC R0MOVX A,R0CJNE A,RR5,BJRALRET ;RAL2=RR5?,不等返回INC R0MOVX A,R0CJNE A,RR4,BJRALRET ;RAL3=RR4?,不等返回SETB P2.5 ;-完全相等-关闹CLR P2.6 ;-完全相等-关闹BJRALRET:POP 00HRET;=;=键盘=JP0:SETB P3.4SETB P3.5SETB P3.6SETB P3.7JP:JNB P3.4,

    23、JP1 ;TEST第一次检查JNB P3.5,JP2 ;ALTEST第一次检查JNB P3.6,SNOOZERET ;返回MAINJP1: ;TEST第二次检查LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.4,JP1LJMP TESETJP2: ;ALTEST第二次检查LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.5,JP2LJMP ALSETSNOOZE: ;ALTEST第二次检查LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.5,SNOOZESETB P2.5CLR P2.6RE

    24、T;-TEST处理地址-TESET: ;TEST处理地址LCALL SHIJIAN ;显示时间JNB P3.4,TESETTESET1:MOV R3,#70H ;选定LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.5,XQ0 ;转星期?JNB P3.6,HR0 ;转时JNB P3.7,MIN0 ;转分JNB P3.4,TESETO ;转返回LJMP TESET1 ;重复检查XQ0: ;星期?二次检查LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.5,XQ0LJMP XQHR0: ;时二次检查LCALL SHIJIAN ;显

    25、示时间LCALL XPX ;显示星期几JNB P3.6,HRLJMP TESET1MIN0: ;分二次检查LCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.7,MINLJMP TESET1TESETO: ;返回二次检查MOV R3,#00HLCALL SHIJIAN ;显示时间LCALL XPX ;显示星期几JNB P3.4,TESETOLJMP RESXQ: ;星期?处理程序INC RR8INC RR8LCALL XQCJMLJMP TESET1HR: ;时处理程序INC RR6INC RR6LCALL HRCJMLJMP TESET1MIN: ;分处理程序INC RR4INC RR4LCALL MINCJMLJMP TESET1RES:MOV R3,#00H ;取消选定RET ;返回MAIN;-ALTEST处理地址-ALSET: ;ALTEST处理地址LCALL SHIJIANLCALL XPXJNB P3.5,ALSETALSET1:MOV R3,#00HLCALL SHIJIANLCALL XPXMOV R3,#70HMOV 05H,#70HLCALL XRXSLCALL DINGSHISHULCALL DINGSHIZUJNB P3.5,ALSETOJNB P3.4,ALSETRRLL00JNB P3.6


    注意事项

    本文(完整的单片机驱动TFT彩屏的程序设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开