这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 8279,nbsp,nbsp 8279  使用的讨论

共2条 1/1 1 跳转至

8279,nbsp,nbsp 8279  使用的讨论

院士
2006-09-17 18:14:16     打赏
8279,nbsp,nbsp 8279  使用的讨论



关键词: 用的     讨论    

院士
2006-12-22 22:43:00     打赏
2楼
问  1  哪个公司的 8279芯片用的比较多,性能比较好些, 各个公司的差别?
2  还有什么芯片可以完成键盘输入,数码管显示的功能?
3  使用8279 需要别写哪方面的程序,  用写被按键的识别程序吗?就是键被按下的扫描程序用写吗? 都需要写些什么程序块.
4 实验箱上的识别程序都作好了.自己做的,怎么调试呢.
  

                          好了,高手们畅所欲言吧!!!!!!
1: 已测试程序供参考!;键盘和LED显示程序
;
;*********************************************
;*           8279  初始化                    *
;* KEYCOM为8279命令口   KEYDAT为8279数据口   *
;*********************************************
KEYCOM            XDATA         0E601H
KEYDAT            XDATA            0E600H
KEYCAM            EQU              30H ;定义存放按键值RAM起始地址
ORG 0000H
AJMP START
ORG 0003H
LJMP AAA
ORG 0060H
START: MOV R0,#10
        MOV DPTR,#KEYCOM ;命令口地址
        MOV A, #10H  ;键盘/显示方式命令字8字符显示左入口,编码键盘,双键锁定
        MOVX @DPTR,A
        MOV A,#34H  ;程序时钟命令 26分频对外部输入时钟
        MOVX @DPTR,A
        MOV A,#0DFH ;清除显示缓冲区命令
        MOVX @DPTR,A
BUSY1:  MOVX A,@DPTR
        JB ACC.7,BUSY1
        MOV IE,#81H
        MOV DPTR,#KEYDAT
        MOV A,#0C8H
        MOVX @DPTR,A ;字型送入8279
        INC DPTR
        MOV A,#90H
        MOVX @DPTR,A ;字位送入8279(显示P)
HA7S2:    MOV 30H,#80H
        MOV 31H,#40H
HA7S3:  MOV DPTR,#KEYCOM
        MOVX A ,@DPTR
        ANL A,#07H
        CJNE A,#00H ,HA7S4;
        AJMP HA7S3
HA7S4:  MOV DPTR ,#KEYDAT
        MOVX A,@DPTR
    MOV B,A ;取键值
    MOV R1,#00H
    MOV DPTR ,#KEYTAB ;数字键键值表
HA7S5:  MOV A , #00H
        MOVC A,@A+DPTR
    CJNE A , B ,HA7S6;查键值表是否相同
    AJMP HA7SA; 转数字键处理程序
HA7S6:  INC DPTR ;键值表地址加1
        INC R1  ;查找次数加1
    MOV A,R1
    JB ACC.4 ,HA7S7  ;是功能键吗?
    AJMP  HA7S5 ; 继续查找
HA7S7:  MOV R1,#00H
        MOV DPTR ,#KEYTAB1 ;功能键表地址
HA7S8:    MOV A,#00H
    MOVC A,@A+DPTR ;取出功能键键值
    CJNE A,B,HA7S9  ;键值相同吗?
    AJMP HA7SC  ;转功能键处理子程序
HA7S9:  INC DPTR
        INC R1
    MOV A,R1
    JNB ACC.2,HA7S8 ;继续查找
  LJMP START
     ;;;    AJMP HA7SD ;无按键返回
HA7SD:  LJMP START
HA7SA:  MOV A ,30H
        MOV DPTR ,#0FE01H
    MOVX @DPTR ,A; 字位送入8279
    MOV A,R1
    MOV R0,31H
    MOV @R0,A
    INC 31H
    MOV DPTR ,#CDATA
    MOVC A,@A+DPTR;取字型代码
    MOV DPTR,#KEYDAT
    MOVX @DPTR,A ;送8279显示
    INC 30H
    MOV A,30H ;字位加1
    CJNE A,#88H,HA7SB  ;
    LJMP HA7S2
HA7SB:  AJMP HA7S3
HA7SC:  MOV DPTR ,#KJPADDR
        MOV A,R1
        RL A
  ;;       ADD A,R1
        ADD A,#00H
          JMP @A+DPTR ;
KJPADDR:       LJMP LOOP0
           LJMP LOOP1
           LJMP LOOP2
KEYTAB: DB 0C1H,0C8H,0C9H,0D0H,0D8H,0E0H,0C2H,0CAH,0D1H,0D9H
        DB 0DAH,0C3H,0CBH,0D2H,0D3H,0DBH
KEYTAB1:DB 0E3H,0E2H,0E1H
CDATA: DB 0CH,9FH,4AH,0BH,99H,29H,28H,8FH,08H,09H,88H,38H,6CH,1AH,68H,0E8H
LOOP0:MOV R5,#0CH  ;0
      LJMP DISPC
LOOP1:MOV R5,#9FH  ;1
      LJMP DISPC
LOOP2:MOV R5,#4aH  ;2
DISPC: MOV R6,#80H
DISPC1: MOV DPTR ,#KEYCOM
       MOVX @DPTR,A ;字位送8279
       MOV A ,R5
       MOV DPTR  ,#KEYDAT ;字形送8279
       MOVX @DPTR ,A
        LCALL DELAY1
;    MOV A ,#0FFH
;    MOVX @DPTR ,A ;关显示
;       INC R6 ;
;    CJNE R6,#88H,DISPC1
;    AJMP DISPC;
    LJMP HA7S2
AAA: NOP
     NOP
     RETI
DELAY1:MOV R1,#0FAH
DELAY2:NOP
       NOP
       DJNZ R1,DELAY2
       DJNZ R0,DELAY1
       RET
END
2: 如何测试软硬件我想测试一下 关于8279芯片的硬件连接和软件的运行情况,我应该怎么测试呢(在不做PCB的情况下)
我手头有一个伟福的2000实验箱,我一个凌阳61单片机开发板(100那种)

望指点一下 . 3: 顶一下!

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]