积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> 嵌入式软件 >> 汇编
  相关分类: LINUX | WINCE | UC/OS | Bootloader | 下载 | VXWORKS | 网络协议 | JAVA | 汇编 | 驱动设计 | Symbian | XP Embedded | Nucleus | 新产品 | 相关文章 | 综合技术 |
PS7219的PIC单片机接口程序
 
作者:未知   来源:本站原创    点击数:104   更新时间:2008-7-17
您可以添加到网摘 让更多人关注此文章:

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

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 ;结束                

相关文章
· 基于PIC单片机的便携式测试记录仪设计[81]
· PIC16F84电机速度控制程序[262]
· PIC单片机控制的遥控防盗报警器[116]
· 用PIC16C73实现高精度数字电度表[101]
· 基于PIC单片机的低功耗键盘接口设计[85]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM嵌入式系统基础教程(N

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
赛普拉斯为用于机器视觉与运动分析应用
赛普拉斯针对机器视觉与全息数据存储应
金融危机来袭 台湾LED产
半导体市场环境恶化 安森美
Vishay 的新型&nb
Intersil推出采用小尺寸QFN
富士通微电子携手西安电子科技大学成立
纤巧和高压的 LDO&nb
华为计划收购北电业务 华为
华为计划收购北电业务 华为
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
四折批发各种数码相机,摄相机等...
最低价销售各种品牌手机...
震撼出售各种品牌笔记本电脑等!...
IC design 的流程...
电子工程师,别拿一分钱不当回事...
新款安全多用途非接触式芯片(T...
关于ARM启动的一篇文章!...
Linux网络设备驱动编程...
linux文件系统基础知识...
求奇想达QXD-DM642开发...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网