PS7219的PIC单片机接口程序

2019-10-22来源: eefocus关键字:PS7219  PIC单片机  接口

; Copyright (c) 1998, MICROCHIP Technology Inc 

;******************************************* 

TITLE "PS7219 TEST" ;标题 

LIST P=16C711 ;处理器为PIC16C711单片机 

#INCLUDE P16c711.INC 

  

TIMER1 EQU H'000C' ;定义延时寄存器 

TIMER2 EQU H'000D' 

SENT_ADDRESS EQU H'000E' ;定义发送地址寄存器 

SENT_DATA EQU H'000F' ;定义发送数据寄存器 

LED1 EQU H'0010' 

LED2 EQU H'0011' 

LED3 EQU H'0012' 

LED4 EQU H'0013' 

LED5 EQU H'0014' 

LED6 EQU H'0015' 

LED7 EQU H'0016' 

LED8 EQU H'0017' 

COUNT EQU H'0018' 

NO_OP EQU 0X00 ;定义控制寄存器 

DIGIT1 EQU 0X01 

DIGIT2 EQU 0X02 

DIGIT3 EQU 0X03 

DIGIT4 EQU 0X04 

DIGIT5 EQU 0X05 

DIGIT6 EQU 0X06 

DIGIT7 EQU 0X07 

DIGIT8 EQU 0X08 

DECODE EQU 0X09 

INTSEN EQU 0X0A 

SCAN EQU 0X0B 

SHUT EQU 0X0C 

FLASH EQU 0X0D 

DISPLAY EQU 0X0F 

  

LOAD EQU 0 ;通讯引脚定义 

DOUT EQU 1 

CLK EQU 2 

  

ORG 0 

GOTO START ;程序开始 

ORG H'0010' 

;************************* 

; 延时子程序 

;************************* 

T1 

MOVLW 33 ;延时子程序T1 

MOVWF TIMER1 

DEL_LOP 

CLRWDT 

DECFSZ TIMER1,1 

GOTO DEL_LOP 

RETURN 

  

T2 

MOVLW 0X04 ;延时子程序T2 

MOVWF TIMER1 

MOVLW 0XFF 

LOOP2 

MOVWF TIMER2 

LOOP1 

CLRWDT 

DECFSZ TIMER2,1 

GOTO LOOP1 

DECFSZ TIMER1,1 

GOTO LOOP2 

RETURN 

  

SEND 

MOVLW 8 ;数据传送子程序SEND 

MOVWF COUNT 

BCF PORTA,LOAD ;初始化LOAD引脚 

CALL T1 

SET_LP1 

BCF STATUS,C ;发送8位地址 

BSF PORTA,CLK 

RLF SENT_ADDRESS,1 

BCF PORTA,DOUT 

BTFSC STATUS,C 

BSF PORTA,DOUT 

BCF PORTA,CLK 

CALL T1 ;调用延时子程序T1 

DECFSZ COUNT,1 ;COUNT减一为1零则结束传送 

GOTO SET_LP1 

BSF PORTA,CLK 

MOVLW 8 

MOVWF COUNT 

BSF PORTA,LOAD 

SET_LP2 

BCF STATUS,C ;发送8位数据 

BSF PORTA,CLK 

RLF SENT_DATA,1 

BCF PORTA,DOUT 

BTFSC STATUS,C 

BSF PORTA,DOUT 

BCF PORTA,CLK 

CALL T1 ;调用延时子程序T1 

DECFSZ COUNT,1 ;COUNT减一为零则结束传送 

GOTO SET_LP2 

BSF PORTA,CLK 

CALL T1 

BSF PORTA,LOAD 

BSF PORTA,DOUT 

RETURN ;子程序返回 

  

START 

BSF STATUS,RP0 ;主程序 

MOVLW 0X18 

MOVWF TRISA 

MOVLW 0XFF 

MOVWF TRISB 

BCF STATUS,RP0 

CALL T1 

CALL T1 

MOVLW 0X12 

MOVWF PORTA 

BCF PORTA,LOAD 

CON_COM 

CALL T1 ;初始化PS7219内部RAM 

MOVLW 0X0A ;设置亮度为最亮 

MOVWF SENT_ADDRESS 

MOVLW 0X0F 

MOVWF SENT_DATA 

CALL SEND ;调用串行通讯子程序 

CALL T1 

MOVLW 0X0B ;设置扫描界线为8位 

MOVWF SENT_ADDRESS 

MOVLW 0X07 

MOVWF SENT_DATA 

CALL SEND ;调用串行通讯子程序 

CALL T1 

MOVLW 0X09 ;设置每位译码方式为BCD译码 

MOVWF SENT_ADDRESS 

MOVLW 0XFF 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X0C ;设置工作方式为正常 

MOVWF SENT_ADDRESS 

MOVLW 0X01 

MOVWF SENT_DATA 

CALL SEND 

  

LED_CON 

CALL T1 ;LED显示控制部分 

MOVLW 0X01 ;LED1显示为1 

MOVWF SENT_ADDRESS 

MOVLW 0X01 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X02 ;LED2显示为2 

MOVWF SENT_ADDRESS 

MOVLW 0X02 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X03 ;LED3显示为3 

MOVWF SENT_ADDRESS 

MOVLW 0X03 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X04 ;LED4显示为4 

MOVWF SENT_ADDRESS 

MOVLW 0X04 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X05 ;LED5显示为5 

MOVWF SENT_ADDRESS 

MOVLW 0X05 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X06 ;LED6显示为6 

MOVWF SENT_ADDRESS 

MOVLW 0X06 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X07 ;LED7显示为7 

MOVWF SENT_ADDRESS 

MOVLW 0X07 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X08 ;LED8显示为8 

MOVWF SENT_ADDRESS 

MOVLW 0X08 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

  

MOVLW 0X0F ;进入测试模式 

MOVWF SENT_ADDRESS 

MOVLW 0X01 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X0F ;退出测试模式 

MOVWF SENT_ADDRESS 

MOVLW 0X00 

MOVWF SENT_DATA 

CALL SEND 

CALL T1 

MOVLW 0X0D ;使能8位LED闪烁 

MOVWF SENT_ADDRESS 

MOVLW 0XFF 

MOVWF SENT_DATA 

CALL SEND 

FINISH CLRWDT ;清Watch Dog 

GOTO FINISH 

END ;结束   


关键字:PS7219  PIC单片机  接口 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic477937.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:使用PIC单片机读写1-wire EEPROM DS2430的范例程序
下一篇:PIC16C71/PIC16C84单片机应用中问题和对策

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

PS2无线手柄解码 附单片机程序
参考前辈大虾的资料,用Atmega128A对PS2无线手柄进行解码,并在8位数码管上显示按键值自己总结如下:蹬蹬蹬。。。主角登场:无线PS2手柄+遥控接收器+便于接线的转接板 遥控接收器和转接板插接在一起后的样子 转接板上的接线引脚有以下几个:DAT->手柄到单片机 同步传送于时钟下降沿 时序图中的DICMD->单片机到手柄  同步传送于时钟下降沿 时序图中的DO      CS->提供手柄触发信号,通讯期间处于低电平CLK->时钟信号,由单片机发出 引用其他资料的说明如下:1.“通讯过程中, 一串数据通讯
发表于 2019-10-29
PS2无线手柄解码 附单片机程序
索尼PS5更多参数揭秘:GPU频率高达2GHz
是6 TFLOPs和4.2 TFLOPs。  最近有传言称,索尼将于2020年2月12日举办PlayStation大会,届时PS5有望发布。
发表于 2019-08-22
欧洲团队研发新型固态快离子导体 加快充放电速度
(图源:UCLouvain官网)据外媒报道,研究人员发现一种新的固态快离子导体LiTi2(PS4)3,也可称为LTPS。如果通过测试,使用这种材料的电池储能更高、充放电更快,而且安全性也更高,可以应用于智能手机、电动自行车和汽车等领域。目前,锂离子电池中常用的液态有机电解质非常易燃,影响电池的使用。向固态电池转变,具有多方面优势,包括安全性。但是,固态锂离子的流动性比不上液态锂离子,从而限制了电池的充放电性能。研究人员称,了解晶体结构如何决定离子扩散,是促进快离子导体发展的根本。据介绍,LiTi2(PS4)3的锂离子扩散系数,要高于当前最先进的锂超离子固态导体Li10GeP2S12。这是因为LiTi 2(PS 4) 3独特
发表于 2019-08-11
欧洲团队研发新型固态快离子导体 加快充放电速度
索尼下一代VR头显设计图曝光,无线传输方案
近期外媒ultragamerz曝光了一组疑似索尼下代VR头显的设计图,其表示PS VR 2可能采用无线传输方案,虽然这个方案并不是第一次听说,但是这次似乎消息要证明更为明确。 首先,根据其从消息人士(来自索尼设计中心)表示,下一代PS VR将为无线方案,因为VR一体机和PC VR无线化是一个大的趋势。  当然,这张图可能是设计中的一种方案而已,其中LLW就是这里的关键,其在头显前方和头箍后分别又一个LLW无线模块接口。 LLW通常指的是超低延迟WiFi,是一种无线传输技术。目前,DisplayLink在2017年推出基于60GHz的无线传输方案,HTC官方无线适配器就采用和英特尔合作
发表于 2019-07-23
索尼下一代VR头显设计图曝光,无线传输方案
群联搭上PCIe 4.0快车,研发新SSD主控速度可达6.5GB/s
群联(Phison) 表示固态硬盘的传输速度在2020年有望达到6.5GB/s(6500MB/s)。目前影驰、十铨、技嘉、海盗船、博帝、Essencore/Klevv等厂商已经推出了采用群联PS5016-E16主控的PCIe 4.0固态硬盘,连续读取速度大约有5GB/s,而相比而言目前最新的NVMe固态硬盘的连续读取性能在3.5GB/s左右。  群联PS5016-E16作为全新旗舰型号,采用双核心CoXProcessor处理器,支持8个通道和32颗闪存芯片,接口数据率800MT/s,持续读写性能可达5GB/s、4.4GB/s,相比PCIe 3.0 x4提升多达43%、33%。  群联表示目前
发表于 2019-06-14
PIC单片机调试心得
我是一位初学者,pic初学者,但是在单片机行当已经混迹多年了。说句实话,c开发环境都大同小异,只不过烧写和在线仿真大同小异。钻研了两天,收到了很多回应和启发。下面应soso的请求,把最近的调试心得和大家分享1、 先说说我要做的东西说来惭愧,这是临时的一个小任务,做一个采集和现实的部分,用两路ad采集模拟量,通过开关进行切换,简单的说就是开关打开,显示一路模拟量;开关关闭,显示另一路模拟量。主电路及其简单,我就直接说了,不附图了。电源通过一个负载(滑动变阻器就可以)回到电源负极,在回路中接入一个电流传感器,实时采集电流信号(如果条件不允许,也可以用康铜丝或者一个大瓦数小数值的采样电阻采集电流信号。然后通过放大,隔离后送入单片机
发表于 2019-11-16
PIC单片机调试心得
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved