资源目录
压缩包内文档预览:(预览前20页/共27页)
编号:30623180
类型:共享资源
大小:17.22MB
格式:ZIP
上传时间:2019-12-12
上传人:遗****
认证信息
个人认证
刘**(实名认证)
湖北
IP属地:湖北
19
积分
- 关 键 词:
-
芯片
资料
- 资源描述:
-
芯片资料,芯片,资料
- 内容简介:
-
?是一片具有串行接口的可同时驱动?位共阴式数码管 或只独立的智能显示驱动芯?片该芯片同时还可连接多达键的键盘矩阵单?片即可完成显示键盘接口的全部功能?内部含有译码器可直接接受码或?进制码并同时具有 种译码方式参见后文?此外还具有多种控制指令如消隐闪烁左移右移段寻址等具有片选信号可方便地实现多于 位?的显示或多于键的键盘接口? ? ! # ! $#%&?()*+%&,-?./?01234?56?(?789:;? ?!?#?$?%?&?()?)? ?!? ?!#?#? ?!?$%?$?#?#?&()*?+?&(),?+?!?%-./012345612?#?%78(9?!?#?%78:)?!?#?!?;?A1?!?BCDE1?AFG?!HIBCJ?A12?!?DEK?L122M?!?N.ODEJDEK(9?L122M?!?(9.O?LPQ12?&?!?N.O?L1?AF?!?N.O?LRST?!?UV()WX12?Y?DEZV?DE_?LYDE?%&a? bc DE?defgDEThiY?bcijkYH?lmnopqr?stuvbcwxgDETyziYWXK|?TiYWXu?DE? ?gDE?iY$?%?noWX?78?#?#?z?()?78V,?+1?yz?CDE?N?.O?L?1?()?yz?C?L?N?.O?L1?78?+?L?!?x?L()?(9?dyz#eDE1?78V()?dN?.O?L1?78NDE?Tu1?YV(9?%-.?(9?+1V*?+d?f?-.1?78V,?+?&?$?()6(9?6(9?&?$?$?H?H?6(9?(9?#?!a?“DE?iY?“ ;fi?fi? 6u? fl?lmWXY?ijkYlm?noqr6T?u?V? ?V4252LP39?Jfi?fi?Vno?wx“DET?V?252LP39?fi?fi”?Vno?DE?K“DEi6V“? ;fi?fi? 66T?“u?V?“DE?K“DE?6T?“u? fi? Y? fi?JwxR?“DETY?V?252LP394?fi?fi”?Vno?DE?K?“DE6?A(BCD%&?L- ? ? ? ? ? ? ? ?/*?E?HIS?ZVDEJV?Z?)?)?)?0?V?Lef?DE1-? ?x?+?+?&?Y?1?1?L- ? ? ? ? ? ? ? ?/*?DEKu?DE?i?Y?gDEY?-?x?,?+? ?L? ? ? ? ? ? ? ?JV? ?L?DEV?)?)?)?&$?LZ?0 ?Y?Y?d0Y?L?V?1g?%?%?no? ? ? ? ? ? ? ?E?YnoqrZ?0?non+?&?+?&?o?TYWXV?nolm? ? ? ? ? ? ? ?E?YlmqrZ?0?lm+?&?+?&?d?u?t?lmqrT?1h?g?g?)?t?)Yht?hg?jV?WXT?Tu?)Y?Lht?9?d?f$? ?Y1?h?Y?jVlmqr?*?Y%GEFGHI(J?KLMNOPQR?%&STUVW%&X?Y+?&?+?ZKLD?OP?%DE? ? ? ? ? ? ? ?V?DE ?V?%?J?uD?Y?J?uD?Y?DEJ?/V?;?Z?V?*?+?&?+? ?fi?Y?VVV?Vfi?$? ?YVV?fi?Y?V$? ? ?DE? ? ? ? ? ? ? ?E ?V? ? ?JY?uDE?K?%DE?N.O?LDE? ? ? ? ? ? ? ?gDE;N9dY-.?K?DE?EYuHI?V?BCfYDE?TuHI?V?+?&?+?Y-.?.-t?!?)Y/A01?YDE?2?_?LYDEDEYFGV ?!? ?C A_?LYDEFGV? ?!CAN?.O?LDEFGV V? ?Cf?!?YDET V?Y.O?wx?DE1Y?!?fiAY?V(9WX?KfiAY3aV()?!?WXp4#euDEx#Y15?DE? ? ?_?LDE? ? ?DE *?L *?N.ODE?N.ODE?*?(9Y.O?*?Y?0?0?#67?0?J?fY.O?#?4?jklmqr?/.OY?)?.O?J?#f.OY 8? 89?4)?.O?JY 89?:;c4?$?0?J 89? 8.O?#?=Y 8?A?$?&?$?0B;u?YC?|9?0?Y D?D?VD9?Y?Y?&?&?/?Y?F?Y?*.O?ZYGHIJ?V+?Y? )+?K,Y?%G?L+?*%?M*%Y?NO?PQ?YRSTU?:?uVH?*GUM? WS?Y?0?XdY6?uY#Y?Z|? ?Z?V?)yz? ?_?a?b=1ic? ?d?Yc?0Eefg?Ee?=?h?Ya?uV0?#K?#?F*?!?frY?#uY?Ya?#?z?.?/?,?+V*?+T?i?j?Y12k?)?!?&?.? WX?TiY?V?i?Y?qrV?nod.-178(9V,?+?1)#efN.ODEh?%?(9i-.Y?.O?Y? ?0?JY.?.O?J?)*-.Y?lmYnP?:$5o?p?/?Vyz?#6?!F?V6X?!)g?Z?=FqFr?7)F?Y?stHIhY?u?)4v?*?YGHIJEFQR( ._abXcdefgSJ.Dh?ij?klImn?o p qr._abDst?uvNw?Vp4.O()ThiNfY.O?U#S?TC?1h?Y?“?#$5?!?|?#?i?1?pV$5?,?!?.?0 1)23452?j?$5J?112?Y#V? Y1?p?Y?112?/? $ title (HD7279A Test Program) $ DB;*?; RAM;*BIT_COUNT DATA 07FHTIMER DATA 07EHTIMER1 DATA 07DHTEN DATA 07CHDATA_IN DATA 020HDATA_OUT DATA 021H;*?; I/O;*Y?#?DAT BIT P1.2 ;HD7279ADATAP1.2Y?#?KEY BIT P1.3 ;HD7279AKEYP1.3Y?#?CS BIT P1.4 ;HD7279ACSP1.4Y?#?CLK BIT P1.5 ;HD7279ACLKP1.5 ORG 000H JMP START ORG 100H?START: MOV SP,#2FH ;? MOV P1,#11011011B ;I/O?1i MOV TIMER,#50 ;25MS?!?START_DELAY: MOV TIMER1,#255START_DELAY1:DJNZ TIMER1,START_DELAY1 DJNZ TIMER,START_DELAY?a? bc DE MOV DATA_OUT,#10100100B ;() CALL SEND3aV*?+ SETB CS ;CS?.-MAIN: JB KEY,MAIN ;.-?CN.ODE MOV DATA_OUT,#00010101B ; CALL SEND CALL RECEIVEjV*?+ SETB CS ;CS?U# MOV B,#10 ;16BCD MOV A,DATA_IN DIV AB MOV TEN,A? ?“DE?d? MOV DATA_OUT,#10100001B ;2?“ ?9?Z? ;,?L ;?CDEf CALL SEND ;HD7279A MOV DATA_OUT,#10100001B CALL SEND?L?DE fi? MOV DATA_OUT,#10000001B ;(2) CALL SEND?C?Hf MOV DATA_OUT,TEN ;HD7279A CALL SEND?L?DE fi MOV DATA_OUT,#10000000B ;(1? ;) CALL SEND?C?Hf MOV DATA_OUT,B ;HD7279A CALL SEND SETB CSp4-.?WAIT: JNB KEY,WAIT ; JMP MAIN;*?C HIf*?; 1HD7279;*j?SEND: MOV BIT_COUNT,#8 ;=8jV,?+ CLR CS ;CSr?1 CALL LONG_DELAY ;?(9 ?SEND_LOOP: MOV C,DATA_OUT.7 ;1 MOV DAT,CjV*?+ SETB CLK ;CLK4?C?L“ MOV A,DATA_OUT ; RL A MOV DATA_OUT,Ah?1 CALL SHORT_DELAY ;jV,?+ CLR CLK ;CLKh?1 CALL SHORT_DELAY ;_? ?CR? DJNZ BIT_COUNT,SEND_LOOP ;8?CR? CLR DAT ; RET;*;#euHI*?; HD7279;*j?RECEIVE: MOV BIT_COUNT,#8 ;=8jV*?+ SETB DAT ;P1.2(DATA)()WX ;()r?1 CALL LONG_DELAY ;kV*?+RECEIVE_LOOP: SETB CLK ;CLKh?1 CALL SHORT_DELAY ;?L“ MOV A,DATA_IN ; RL A MOV DATA_IN,AN?u?L MOV C,DAT ; MOV DATA_IN.0,CkV,?+ CLR CLK ;CLK CALL SHORT_DELAY?#e ?L DJNZ BIT_COUNT,RECEIVE_LOOP;8?jV,?+ (9WX CLR DAT ;DAT() RET;*?1?$5; ;*j?112ViLONG_DELAY: MOV TIMER,#25 ;50uSDELAY_LOOP: DJNZ TIMER,DELAY_LOOP RETj?112ViSHORT_DELAY: MOV TIMER,#4 ;8uSSHORT_LP: DJNZ TIMER,SHORT_LP? RET END#$5?|?#?i?1?p$5?xyY?.?0.?$5?,?j?$5J?112?Y#.?.?V?Y1?p?112? ?/? TITLE HD7279A TEST LIST P=16C54 INCLUDE P16C5X.INC;*01?; ;*BIT_COUNT SET 0X07DATA_OUT SET 0X08DATA_IN SET 0X09TEN SET 0X0ATIMER SET 0X0BTIMER1 SET 0X0C;*?; I/O;*?#?YCS EQU 0 ;CS16C54RA0?#?YCLK EQU 1 ;CLK16C65RA1?#?YDAT EQU 2 ;DAT16C54RA2?#?YKEY EQU 3 ;KEY16C54RA3 ORG 0x1FF GOTO START ORG 0X00;*?1?$5; ;*j?112ViLONG_DELAY MOVLW D16 ;50uS MOVWF TIMER?DELAY_LOOP DECFSZ TIMER GOTO DELAY_LOOP RETLW 0j?112ViSHORT_DELAY MOVLW D3 ;8uS MOVWF TIMERSHORT_LP DECFSZ TIMER GOTO SHORT_LP RETLW 0;*?C HIf*?; 1HD7279;*4?C?L1)SEND MOVWF DATA_OUT ;DATA_OUT MOVLW D8j? MOVWF BIT_COUNT ;=8jV,?+ BCF PORTA,CS ;CSr?1 CALL LONG_DELAY ;SEND_LOOP BCF STATUS,C(9 ? RLF DATA_OUT ;1 BCF PORTA,DAT BTFSC STATUS,C BSF PORTA,DATjV*?+ BSF PORTA,CLK ;CLKh?1 CALL SHORT_DELAY ;jV,?+ BCF PORTA,CLK ;CLK CALL SHORT_DELAY_? ?CR? DECFSZ BIT_COUNT ;8?CR?Cu? GOTO SEND_LOOP ; BCF PORTA,DAT?CR? RETLW 0 ;*;#euHI*?; HD7279;*RECEIVE MOVLW D8j? MOVWF BIT_COUNT ;=8jV()WX MOVLW B11111100 ;RA2(DATA) TRIS PORTAr?1 CALL LONG_DELAY ;kV*?+RECEIVE_LOOP BSF PORTA,CLK ;CLKh?1 CALL SHORT_DELAY ;? BSF STATUS,C BTFSS PORTA,DAT BCF STATUS,CN?u?L RLF DATA_IN ;kV,?+ BCF PORTA,CLK ;CLK CALL SHORT_DELAY?#e ?L DECFSZ BIT_COUNT ;8 GOTO RECEIVE_LOOP?jV(9X MOVLW B11111000 ;RA2(DATA) TRIS PORTA RETLW 0 ;* ?; ;*?START MOVLW B11111000 ;I/O TRIS PORTA MOVLW B11111001 MOVWF PORTA?1i MOVLW 0X19 ;25MS MOVWF TIMERSTART_DELAY MOVLW 0XFF MOVWF TIMER1START_DELAY1 DECFSZ TIMER1 GOTO START_DELAY1 DECFSZ TIMER GOTO START_DELAY?a? bc DE MOVLW B10100100 ;() CALL SEND3aV*?+ BSF PORTA,CS ;CS;*?$5; ;*?.-MAIN BTFSC PORTA,KEY ; GOTO MAIN.-?CN.ODE MOVLW B00010101 ;?CN.ODE CALL SEND ;N.O? CALL RECEIVE ;HD7279AjV*?+ BSF PORTA,CS ;CS;*?U#; 16BCD;* CLRF TENGET_DEC MOVLW D10 SUBWF DATA_IN,W SKPC GOTO OVER MOVWF DATA_IN INCF TEN GOTO GET_DEC;*?C-.Y?f;BCDHD7279;*? ?“DE?d?“;2?9?Z?L;“DEOVER MOVLW B10100001 ;?CDEf CALL SEND ;HD7279A“DE MOVLW B10100001 ;?CDEf CALL SEND ;HD7279A?L?DE fi? MOVLW B10000001 ;(2)?CDEf CALL SEND ;HD7279A MOVFW TEN?C?Hf CALL SEND ;HD7279A?L?DE fi? MOVLW B10000000 ;(1)?CDEf CALL SEND ;HD7279A MOVFW DATA_IN?C?Hf CALL SEND ;HD7279A BSF PORTA,CSp4-.?WAIT BTFSS PORTA,KEY ; GOTO WAIT GOTO MAIN END?u ?Y ?$5:MCS51C?Y$5 ? ?$Y?HD7279AC51,C#include ?/* *r?1void long_delay(void); / h?1void short_delay(void); / ?1void delay10ms(unsigned char); / 10MS)fvoid write7279(unsigned char, unsigned char);/ HD7279;N9unsigned char read7279(unsigned char);/ HD7279?CuHIvoid send_byte(unsigned char); / #euHIunsigned char receive_byte(void); / e?/* I/O *unsigned char digit5;unsigned char key_number, j, k;unsigned int tmr;unsigned long wait_cnter;sbit cs=P14; / cs at P1.4?#?sbit clk=P15; / clk P1.5?#?sbit dat=P12; / dat P1.2?#?sbit key=P13; / key P1.3DE/* HD7279A *#define CMD_RESET 0xa4#define CMD_TEST 0xbf#define DECODE0 0x80#define DECODE1 0xc8#define CMD_READ 0x15#define UNDECODE 0x90#define RTL_CYCLE 0xa3#define RTR_CYCLE 0xa2#define RTL_UNCYL 0xa1#define RTR_UNCYL 0xa0#define ACTCTL 0x98#define SEGON 0xe0#define SEGOFF 0xc0#define BLINKCTL 0x88?$5/* *main()? while (1) ?1 for (tmr=0;tmr0x2000;tmr+); / a? send_byte(CMD_RESET); / HD7279A/*?DE?/ /*?DE send_byte(CMD_TEST); / ?1i ? for (j=0;j3;j+) / 3 delay10ms(100); bc? send_byte(CMD_RESET); / /*noDE?.O#?/ h?-.Y.?9?)?-./ , 10?-.?)u?/ S0/* wait_cnter=0; key_number=0xff;fi?jVno? write7279(BLINKCTL,0xfc); / 12fi?= write7279(UNDECODE,0X08); / 1_fi?= write7279(UNDECODE+1,0x08);/ 2_ do ).- if (!key) / key_number=read7279(CMD_READ); N9.? / write7279(DECODE1+1,key_number/16); fi?.?* ? / 28 write7279(DECODE1,key_number&0x0f); fi?.?, ? / 18p4-.? while (!key); / wait_cnter=0; wait_cnter+; while (key_number!=0 & wait_cnter0x30000);)-.VM1?)u? / 0?bcnojk write7279(BLINKCTL,0xff); / /*?/ /*?V for (j=0;j5;j+) / 00000 digitj=0; write7279(DECODE0+j,digitj); )?f while (digit49) digit0=0; digit1+; if (digit19) digit1=0; digit2+; if (digit29) digit2=0; digit3+; if (digit39) digit3=0; digit4+; if (digit49) digit4=0; write7279(DECODE0,digit0); if (digit0=0) write7279(DECODE0+1,digit1);? if (digit1=0) write7279(DECODE0+2,digit2); if (digit2=0) write7279(DECODE0+3,digit3); if (digit3=0) write7279(DECODE0+4,digit4); delay10ms(150);bc? send_byte(CMD_RESET); / /*?L?DE?/ /* write7279(UNDECODE+7,0x49);fi?-?uH? 2 / 8 delay10ms(80);/*?“ ?/ /2 H?6 ? ?“6 ?/ 3,3/* for (j=0;j23;j+) ? send_byte(RTR_CYCLE); / 23 delay10ms(12); for (j=0;j23;j+) ?“? send_byte(RTL_CYCLE); / 23 delay10ms(12); /*? ?“DE?/ 0?/* for (j=0;j16;j+) ?“DE send_byte(RTL_UNCYL); / write7279(DECODE0,j);? DE?fi? / 01 delay10ms(50); delay10ms(150); send_byte(CMD_RESET);/*? ?DE?/ 1/* for (j=0;j16;j+) ?“DE send_byte(RTR_UNCYL); / write7279(DECODE1+7,j);? DE?fi? / 08 delay10ms(50); delay10ms(150);/*lmDE?/ /* k=0xff; for (j=0;j6;j+) k=k/2;Mu?“ulm? write7279(ACTCTL,k);/ delay10ms(100); 3a ? write7279(ACTCTL,0xff); / 8 delay10ms(100);bc? send_byte(CMD_RESET); / /*?%DE?DE/ /* for (j=0;j64;j+)? h?% write7279(SEGON,j)
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。