技术热线: 4007-888-234
设计开发

专注差异化嵌入式产品解决方案 给智能产品定制注入灵魂给予生命

开发工具

提供开发工具、应用测试 完善的开发代码案例库分享

技术支持

从全面的产品导入到强大技术支援服务 全程贴心伴随服务,创造无限潜能!

新品推广

提供新的芯片及解决方案,提升客户产品竞争力

新闻中心

提供最新的单片机资讯,行业消息以及公司新闻动态

pic16f877控制led的动态显示

更新时间: 2019-03-26
阅读量:2790

硬件方面:

pic通过74hc595来位选数码管.ra0口接595rclk,ra1口接595srclk,ra2口接595ser

picd口输出字型码.

软件方面:

list p=16f877 include"p16f877.inc" count equ 34h bits equ 35h inter equ 36h count1 equ 37h bits1 equ 38h org 0x00 nop initial ;初始化 banksel TRISA movlw 0x00 movwf TRISA movwf TRISD banksel PORTD movlw 0x00 movwf PORTD clrf count clrf bits clrf inter movlw 00h movwf bits movlw 08h movwf count bcf PORTA,0 noop bcf PORTA,1 movf PORTA,W andlw 0xfb iorwf bits,w movwf PORTA bsf PORTA,1 rlf bits,1 decfsz count goto noop bsf PORTA,0

main movlw 0x99 movwf PORTD ;段型码送dmovlw 04h movwf count1

movlw 08h movwf bits ;位选信号放在bits寄存器中 movwf bits1 ;位选信号送中间寄存器 loop1 movlw 04h ;下面一段程序为串并转换 movwf count tab rlf bits,1 decfsz count,1 goto tab movlw 08h movwf count bcf PORTA,0 ;为送锁存信号做准备 loop bcf PORTA,1 ;为送时钟信号做准备 movf bits,w andlw 04h movwf inter movf PORTA,w andlw 0Xfb iorwf inter,w ;输出第7movwf PORTA bsf PORTA,1 ;发出一脉冲信号 rlf bits,1 decfsz count goto loop bsf PORTA,0 ;送锁存信号

rrf bits1,1 movf bits1,w movwf bits decfsz count1 goto loop1 goto main end