您现在的位置是:首页 > 单片机

max7219汇编程序

2020-01-26 02:15:17

max7219汇编程序

;==========================================================
;  funcTIon: sd_7219  ;向7219送地址或数据
;  input:  a
;  output:  MAX7219  
;  usage:  a,r2
;========================================================
sd_7219: ;向7219送地址或数据
  mov  r2,  #08h ;向7219送地址或数据
c_sd:  nop
  clr  disp_clk
  rlc  a
  mov  disp_din, c ;准备数据
  nop
  setb  disp_clk  ;上升沿将数据传入
  djnz  r2,  c_sd
  ret

;==========================================================
;  funcTIon: w_7219  ;显示驱动程序
;  input:  a----------传送7219的地址
;    b----------传送7219数据
;  output:  -----------------  
;  usage:  a,r2
;=========================================================
w_7219: ;显示驱动程序
  clr  disp_load  ;置load=0
  lcall  sd_7219   ;传送7219的地址
  mov  a,  b
  lcall  sd_7219   ;传送数据
  setb  disp_load  ;数据装载
  ret 

;=========================================================
;               funcTIon:  MAX7219      iniTIalization 初始化Max7219
;  input:     -------------
;  output:    -------------
;               usage:     a,b
;========================================================
          ;Set_Model          equ        0ffh //将BCD码译成B码;
          ;Set_Bright         equ        04h //占空比为15/32;
          ;Set_Limit          equ        07h //8位显示方式;
          ;Set_Sart           equ        01h //进入启动工作方式?
          ;Set_Halt          


Init_Max7219: ;初始化Max7219
  
  mov  a,  #0ch
  mov  b,  #Set_Halt         ;进入停机工作方式
  lcall  w_7219

  mov  a,  #0bh              ;设置扫描界限
  mov  b,  #Set_Limit        ;
  lcall  w_7219 
            
  mov  a,  #09h              ;将BCD码译成B码
  mov  b,  #Set_Model        ;
  lcall  w_7219

  mov  a,  #0ah              ;设置亮度
  mov  b,  #Set_Bright       ;15/32亮度
  lcall  w_7219               
 
  mov  a,  #0fh              ;设置正常工作方式
  mov  b,  #Set_Normal       ;
  lcall  w_7219

  mov  a,  #0ch              ;进入启动工作方式?
   

              mov  b,  #Set_Sart         ;
  lcall  w_7219
 
  mov  a,  judge_er
  rl  a 
  mov  judge_er, a

  ret

上一篇:ds3231程序

下一篇:24c64程序