亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? max7219驅動c51源程序.txt

?? 這是一段MAX7219的驅動C51源程序
?? TXT
字號:
max7219驅動C51源程序 
 

 文章編號:3----加入日期:2004-8-26
 
sbit DIN=P2^5;
sbit CLK=P2^4;
sbit LOAD=P2^3;    //根據實際情況定義
void send(uchar add,uchar dat)//發送16字節子函數
{ uchar ADS,i,j;
   LOAD=0;
   i=0;
   while(i<16)
   {
       if(i<8)
       {  ADS = add;}
       else {ADS=dat;}
       for(j=8;j>=1;j--)
       {
            DIN=ADS&0x80;
            ADS=ADS<<1;
            CLK=1;
            _nop_();
            _nop_();
            _nop_();
            _nop_();
            CLK=0;
       }
       i=i+8;
   }
   LOAD=1;
}

send(0x0c,0x01); //初始化MAX7219
send(0x0b,0x07); //掃描位限制控制器
send(0x0a,0xf5); //亮度寄存器
send(0x09,0xff); //譯碼控制寄存器

 






MAX7219測試程序 
 
作者:佚名    文章來源:中國EDA技術網    點擊數:685    更新時間:2004-10-2 
說明:MAX7219是美國MAXIM公司推出的三線串行8位LED顯示驅動器,具有多種顯示(可控)方式。

;Program Test MAX7219
;This program is used to test whether MAX7219 is Ok and give a demo about ho
w to use it.
;Program Writed by Ouyijie, 1998.10
;Jialijie Computer Studio
PCL EQU 2 ;PCL = 2
DCOMMAND EQU 0x0d
DDATA EQU 0x0e
MCU_Reset
;I/O RB1 is Clock line
;I/O RB2 is LOAD line
;I/O RB3 is DATA line
;I/O RB4 is LED ,show state
movlw b'00000000' ;set first I/O direction
tris 6
movlw b'00000000' ;set first I/O state
movwf 0x06
Start
call MAX7219_Reset
comf 0x06,f
call Delay1s
goto Start
MAX7219_Reset ;reset MAX7219
;0x0d is display command
;0x0e is display data
movlw 0x0c
movwf DCOMMAND
movlw 0x00
movwf DDATA
call Write7219 ;write in 0c00H, shut down MAX7219.
call Delay1ms ;wait leaest 250us.
movlw 0x09
movwf DCOMMAND
movlw 0x3f
movwf DDATA
call Wr ite7219 ;write in 091fH, digits 0 to 5 are transcode.
call Delay1ms
movlw 0x0a
movwf DCOMMAND
movlw 0x0a
movwf DDATA
call Write7219 ;write in 0a0fH, set MAX7219 is the brightest state.
call Delay1ms
movlw 0x0b
movwf DCOMMAND
movlw 0x05
movwf DDATA
call Write7219 ;set SCAN LIMIT is digits 0 to 5.
call Delay1ms
;movlw 0x0f
;movwf DCOMMAND
;movlw 0x00
;movwf DDATA
;call Write7219 ;wirte in 0f00H, exit TEST, go into normal state.
;call Delay1ms
;Begin set Digit Datas
movlw 0x01
movwf DCOMMAND
movlw 0x00
movwf DDATA
call Write7219 ;bit0 is 0
call Delay1ms
movlw 0x02
movwf DCOMMAND
movlw 0x01
movwf DDATA
call Write7219 ;bit1 is 1
call Delay1ms
movlw 0x03
movwf DCOMMAND
movlw 0x02 ;bit2 is 2
movwf DDATA
call Write7219
call Delay1ms
movlw 0x04
movwf DCOMMAND
movlw 0x03 ;bit3 is 3
movwf DDATA
call Write7219
call Delay1ms
movlw 0x05
movwf DCOMMAND
movlw 0x04 ;bit4 is 4
movwf DDATA
call Write7219
call Delay1ms
movlw 0x06
movwf DCOMMAND
movlw 0x05
movwf DDATA
call Write7219 ;bit5 is 5
call Delay1ms
;Begin Display
movlw 0x0c
movwf DCOMMAND
movlw 0x01
movwf DDATA
call Write7219 ;write in 0c01H, exit shut down state.
call Delay1s ;wait for 3 seconds.
;call Delay1s
;call Delay1s
;movlw 0x0c
;movwf DCOMMAND
;movlw 0x00
;movwf DDATA
;call Write7219 ;write in 0c00H, shut down MAX7219.
call Delay1s
return
AddressTable ;list of display data
addwf PCL
retlw 0x0 ;NO-OP
retlw 0x1 ;DIG 0
retlw 0x2 ;DIG 1
retlw 0x3 ;DIG 2
retlw 0x4 ;DIG 3
retlw 0x5 ;DIG 4
retlw 0x6 ;DIG 5
retlw 0x7 ;DIG 6
retlw 0x8 ;DIG 7
retlw 0x9 ;DECODE MODE
retlw 0xa ;INTENSITY
retlw 0xb ;SCAN LIMIT
retlw 0xC ;SHUIDOWN
Write7219
;this function use address 0x0c,0x0d,0x0e,0x0f.
;address 0x0c is data send to MAX7219
;address 0x0d is display command
;address 0x0e is display data
;address 0x0f is cont used
;write address 0x0c to MAX7219 each time
bcf 0x06,2 ;set LOAD is low and MAX7219 begin to recive data
movlw 0x08
movwf 0x0f
movf DCOMMAND,w ;send display address to MAX7219
movwf 0x0c
call SendData
movlw 0x08
movwf 0x0f
movf DDATA,w ;send display data to MAX7219
movwf 0x0c
call SendData
;set a puls from LOAD to MAX7219
bcf 0x06,2 ;LOAD = 0
bsf 0x06,2 ;LOAD = 1
nop ;wait 3 comand times.
nop
nop
bcf 0x06,2 ;LOAD = 0
nop
return
SendData
;this function is used to send data in address 0x0c to MAX7219 from the high
est place.
bcf 0x06,3 ;CLOCK = 0
bcf 0x06,1 ;DATA = 0
btfsc 0x0c,7 ;if bit7 of 0x0c is 0 then skip next command.
bsf 0x06,1 ;DATA = 1
nop
nop
nop ;wait 3 command times.
nop
nop
bsf 0x06,3 ;CLOCK = 1
nop
nop
nop ;delay 5 comand times and clean the Watchdog.
clrwdt
nop
nop
nop
nop
nop
bcf 0x06,3 ;CLOCK = 0
rlf 0x0c,1 ;0x0c move left a bit.
decfsz 0x0f,1 ;0x0f = 0x0f - 1, if x00f = 0 then return to Write7219.
goto SendData
return
Delay1ms
movlw 0x28 ;0x25 = 40D = 28H
movwf 0x0c
delay1ms_loop1
movlw 0x05
movwf 0x0f
delay1ms_loop2 ;40 * 25 = 1000 us = 1ms
clrwdt ;clean watchdog
decfsz 0x0f,1
goto delay1ms_loop2
decfsz 0x0c,1
goto delay1ms_loop1
return
Delay1s
movlw 0xce ;every time use 4.85ms, 1000/4.85=206.1D=CEH
movwf 0x1a
delay1s_loop1
movlw 0x05
movwf 0x1b
delay1s_loop2 ;4.85 ms * 206 = 1 s
clrwdt
call Delay1ms
decfsz 0x1b,1
goto delay1s_loop2
decfsz 0x1a,1
goto delay1s_loop1
return
end 
 




·max7219 C語言驅動程序     -|wolf0801 發表于 2005-8-25 9:16:00  
 

//max7219 led drive program
//for 51 mcu
//designed by zhaoliang
//2005-6-12 13:52
#i nclude<reg51.h> 

/***********************************************************************/
//common part 
#define  HIGH     1
#define  LOW      0
#define  TRUE      1
#define  FALSE      0
#define  ZERO      0 
#define  MSB       0x80
#define  LSB       0x01
//max7219 part
#define  DECODE_MODE   0x09 
#define  INTENSITY     0x0A 
#define  SCAN_LIMIT    0x0B 
#define  SHUT_DOWN     0x0C 
#define  DISPLAY_TEST  0x0F 

//pin defined
/***********************************************************************/
//change this part at different board
sbit LOAD=P1^2; //MAX7219    Load-Data Input:    rising edge  pin 12 
sbit DIN=P1^1; //MAX7219    Serial-Data Input:   rising edge  pin 1
sbit CLK=P1^0; //MAX7219   Serial-Clock Input:  maximum 10MHz  pin 13

//function define
/***********************************************************************/
void Write_Max7219_byte(unsigned char temp);//write max7219 a byte
void Write_Max7219(unsigned char address,unsigned char dat);//write max7219 command and data
void Init_Max7219(void);//Initize max7219

//test program display from 1~8
/***********************************************************************/
void main(void)
{
 unsigned char i; 
 Init_Max7219();  
 while(TRUE)
 {  
  for(i=1;i<9;i++) 
  {
   Write_Max7219(i,i);
  }
 } 
}
/***********************************************************************/
void Write_Max7219_byte(unsigned char temp)
{
 unsigned char i;
 for (i=0;i<8;i++)     
  { 
   CLK=LOW;
     DIN=(bit)(temp&MSB);      
     temp<<=1;  
     CLK=HIGH;
   }
}
/***********************************************************************/
void Write_Max7219(unsigned char address,unsigned char dat)
{ 
 LOAD=LOW;
   Write_Max7219_byte(address); 
   Write_Max7219_byte(dat);
  LOAD=HIGH;                 
}
/***********************************************************************/
void Init_Max7219(void)      
{ 
 Write_Max7219(SHUT_DOWN, 0x01);   //Normal Operation XXXXXXX1 Shutdown Mode   XXXXXXXX0
 Write_Max7219(DISPLAY_TEST, 0x00);   //Normal Operation XXXXXXX0 Display Test Mode XXXXXXXX1
 Write_Max7219(DECODE_MODE, 0xff);   //Decode Mode Select D7~D0 1 B decode 0 No decode 
 Write_Max7219(SCAN_LIMIT, 0x07);   //SCAN LIMIT 0~7 0xX0~0xX7
 Write_Max7219(INTENSITY, 0x04);   //Set Intensity   0xX0~0xXf

 

 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品女主播av| 91丨porny丨首页| 亚洲免费三区一区二区| 欧美日韩国产区一| 九一九一国产精品| 成人动漫视频在线| 日韩精品视频网| 丝袜美腿亚洲色图| 亚洲国产人成综合网站| 亚洲婷婷国产精品电影人久久| 欧美剧在线免费观看网站| 国产乱一区二区| 国产制服丝袜一区| 亚洲综合自拍偷拍| 亚洲成人免费影院| 天天亚洲美女在线视频| 日韩美女主播在线视频一区二区三区 | 欧美大片在线观看一区二区| 黄色成人免费在线| 亚洲欧美日韩在线播放| 亚洲bdsm女犯bdsm网站| 亚洲欧美日韩精品久久久久| 亚洲视频资源在线| 色婷婷久久99综合精品jk白丝| 亚洲精品成人少妇| 美女一区二区三区| 综合自拍亚洲综合图不卡区| 日韩精品一区国产麻豆| 欧美精品一区二区三| 91精品国产入口| 2019国产精品| 从欧美一区二区三区| 免费成人av资源网| 国产91精品在线观看| 精品一区二区三区免费| 久久国产精品第一页| 日本中文在线一区| 久久99热99| 麻豆专区一区二区三区四区五区| 色综合天天视频在线观看| 国产日产亚洲精品系列| 日韩美女久久久| 亚洲男人的天堂在线aⅴ视频| 亚洲国产精品自拍| 一级女性全黄久久生活片免费| 久久精品国产一区二区三区免费看 | 国产精品不卡视频| 亚洲精品va在线观看| 国产精品综合网| 激情综合色播激情啊| 粉嫩一区二区三区在线看| 日韩欧美的一区二区| 亚洲图片欧美色图| 日韩精品一级中文字幕精品视频免费观看 | 777午夜精品免费视频| 在线播放日韩导航| 亚洲国产精品久久艾草纯爱 | 91免费观看在线| 国产欧美日韩三区| 精东粉嫩av免费一区二区三区| 亚洲大片精品永久免费| av一本久道久久综合久久鬼色| 亚洲欧美日韩在线播放| 欧美日韩国产三级| 国内外精品视频| 亚洲影院理伦片| 91美女在线观看| 日产国产欧美视频一区精品| 91在线视频在线| 夜夜嗨av一区二区三区网页 | 精品欧美一区二区久久| 肉色丝袜一区二区| 精品国产亚洲一区二区三区在线观看 | 亚洲欧美中日韩| 在线免费观看日本一区| 日韩一区二区中文字幕| 91小视频免费看| 精品国免费一区二区三区| 老司机精品视频一区二区三区| 色久综合一二码| 毛片不卡一区二区| 亚洲成人www| 亚洲午夜精品在线| 亚洲一级片在线观看| 欧美日韩国产高清一区| 色综合一区二区| 国产精品久久久久久久久免费丝袜 | 日本高清无吗v一区| 一区二区国产盗摄色噜噜| 日韩欧美国产综合| 欧美日韩国产大片| 欧美日韩国产高清一区二区三区 | 欧美日韩高清在线播放| 日韩电影在线免费| 国产欧美一区视频| 欧美sm极限捆绑bd| 欧美成人精品福利| 中文字幕第一区二区| 一级女性全黄久久生活片免费| 久久久久久久国产精品影院| 精品福利在线导航| 中文字幕欧美国产| 中文字幕欧美日韩一区| 欧美日韩一级二级三级| 欧美一区二区三区四区视频| 91精彩视频在线| 国产成人综合亚洲91猫咪| 国产综合色精品一区二区三区| 日本成人超碰在线观看| 亚洲成av人片观看| 久久精品国产色蜜蜜麻豆| 国产成a人亚洲精品| 成人精品鲁一区一区二区| 色天使久久综合网天天| 91久久国产最好的精华液| 色老汉av一区二区三区| 日韩欧美一级在线播放| 综合激情网...| 亚洲综合在线视频| 久久超碰97中文字幕| 成人av电影在线网| 91精品国产综合久久福利| 精品99久久久久久| 欧美性xxxxxx少妇| 精品剧情在线观看| 久久超碰97人人做人人爱| 成人精品鲁一区一区二区| 欧美三级韩国三级日本一级| 色域天天综合网| 91精品福利在线一区二区三区| 国产精品沙发午睡系列990531| 国产精品美女视频| 久久成人久久爱| 日韩欧美高清一区| 亚洲成人福利片| 99re热视频精品| 国产日韩欧美高清在线| 韩国成人在线视频| 欧美肥妇毛茸茸| 午夜精品福利一区二区三区av| 波多野结衣一区二区三区| 亚洲国产精品激情在线观看| 亚洲午夜av在线| 26uuu亚洲综合色欧美| 国产亲近乱来精品视频| 成人h动漫精品一区二| 亚洲图片另类小说| av不卡免费在线观看| 日韩二区三区四区| 亚洲欧洲日韩av| 精品乱码亚洲一区二区不卡| 奇米精品一区二区三区在线观看一| 欧美日韩午夜在线| 久久国产夜色精品鲁鲁99| 国产精品传媒在线| 欧美三级在线视频| 国产成人精品免费视频网站| 青青草原综合久久大伊人精品优势| 国产日韩欧美精品综合| 91久久精品国产91性色tv| 成人午夜看片网址| 国产精品传媒入口麻豆| 欧美精品久久久久久久久老牛影院| 99re这里只有精品首页| 日韩电影在线观看网站| 亚洲欧美偷拍另类a∨色屁股| 91麻豆精品国产91久久久久久 | 日韩伦理免费电影| 精品99一区二区三区| 欧美一区2区视频在线观看| 91黄视频在线观看| 成人免费看视频| 国产二区国产一区在线观看| 日本伊人色综合网| 天天综合网天天综合色| 日韩av中文字幕一区二区三区| 亚洲高清在线视频| 亚洲妇女屁股眼交7| 亚洲无线码一区二区三区| 午夜不卡av在线| 成人免费视频国产在线观看| 成人黄色大片在线观看| 在线观看欧美日本| 欧美日韩激情一区二区| 精品国产一区二区三区久久久蜜月 | 欧美日韩亚洲综合| 91视频.com| 日韩三级视频中文字幕| 日韩视频123| 欧美视频日韩视频| 欧美mv日韩mv| 偷窥少妇高潮呻吟av久久免费| 国产精品一二三四| 99国产精品99久久久久久| 欧美色手机在线观看| 久久精品视频免费观看| 亚洲无线码一区二区三区| 国产精品一线二线三线精华| 欧美视频第二页| 国产农村妇女精品|