人狗畜禽COMPANY LIMITED|全是肉的高H文〈男男〉|全篇肉高H秘书被C办公室四爱|全黄H全肉共妻|全黄H全肉短篇禁乱NP慕浅浅|全黄H全肉短篇N男男

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應(yīng)用測(cè)試 完善的開發(fā)代碼案例庫分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

PS7219的PIC單片機(jī)接口程序

更新時(shí)間: 2019-03-22
閱讀量:3125

單片機(jī)開發(fā)方案商深圳英銳恩分享PS7219的PIC單片機(jī)接口程序。

Copyright (c) 1998, MICROCHIP Technology Inc
TITLE "PS7219 TEST" ;標(biāo)題

LIST P=16C711 ;處理器為PIC16C711單片機(jī)

#INCLUDE P16c711.INC

 

TIMER1 EQU H'000C' ;定義延時(shí)寄存器

TIMER2 EQU H'000D'

SENT_ADDRESS EQU H'000E' ;定義發(fā)送地址寄存器

SENT_DATA EQU H'000F' ;定義發(fā)送數(shù)據(jù)寄存器

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'

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

; 延時(shí)子程序

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

T1

MOVLW 33 ;延時(shí)子程序T1

MOVWF TIMER1

DEL_LOP

CLRWDT

DECFSZ TIMER1,1

GOTO DEL_LOP

RETURN

 

T2

MOVLW 0X04 ;延時(shí)子程序T2

MOVWF TIMER1

MOVLW 0XFF

LOOP2

MOVWF TIMER2

LOOP1

CLRWDT

DECFSZ TIMER2,1

GOTO LOOP1

DECFSZ TIMER1,1

GOTO LOOP2

RETURN

SEND

MOVLW 8 ;數(shù)據(jù)傳送子程序SEND

MOVWF COUNT

BCF PORTA,LOAD ;初始化LOAD引腳

CALL T1

SET_LP1

BCF STATUS,C ;發(fā)送8位地址

BSF PORTA,CLK

RLF SENT_ADDRESS,1

BCF PORTA,DOUT

BTFSC STATUS,C

BSF PORTA,DOUT

BCF PORTA,CLK

CALL T1 ;調(diào)用延時(shí)子程序T1 

DECFSZ COUNT,1 ;COUNT減一為1零則結(jié)束傳送

GOTO SET_LP1

BSF PORTA,CLK

MOVLW 8

MOVWF COUNT

BSF PORTA,LOAD

SET_LP2

BCF STATUS,C ;發(fā)送8位數(shù)據(jù)

BSF PORTA,CLK

RLF SENT_DATA,1

BCF PORTA,DOUT

BTFSC STATUS,C

BSF PORTA,DOUT

BCF PORTA,CLK

CALL T1 ;調(diào)用延時(shí)子程序T1

DECFSZ COUNT,1 ;COUNT減一為零則結(jié)束傳送

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內(nèi)部RAM

MOVLW 0X0A ;設(shè)置亮度為最亮

MOVWF SENT_ADDRESS

MOVLW 0X0F

MOVWF SENT_DATA

CALL SEND ;調(diào)用串行通訊子程序

CALL T1 

MOVLW 0X0B ;設(shè)置掃描界線為8位

MOVWF SENT_ADDRESS

MOVLW 0X07

MOVWF SENT_DATA

CALL SEND ;調(diào)用串行通訊子程序

CALL T1

MOVLW 0X09 ;設(shè)置每位譯碼方式為BCD譯碼

MOVWF SENT_ADDRESS

MOVLW 0XFF

MOVWF SENT_DATA

CALL SEND

CALL T1

MOVLW 0X0C ;設(shè)置工作方式為正常

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 ;進(jìn)入測(cè)試模式 

MOVWF SENT_ADDRESS

MOVLW 0X01

MOVWF SENT_DATA

CALL SEND 

CALL T1

MOVLW 0X0F ;退出測(cè)試模式

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 ;結(jié)束

文安县| 达孜县| 阿巴嘎旗| 金溪县| 太谷县| 武鸣县| 缙云县| 新邵县| 和平区| 丰顺县| 敦煌市| 化州市| 霍城县| 财经| 怀来县| 双鸭山市| 资中县| 临朐县| 隆化县| 沂南县| 乌苏市| 呈贡县| 萨嘎县| 泌阳县| 九台市| 冀州市| 聂拉木县| 昌平区| 林芝县| 昌乐县| 昆山市| 阳山县| 新邵县| 巩留县| 信阳市| 阿巴嘎旗| 神农架林区| 宁明县| 福贡县| 乐亭县| 容城县|