请问谁有51单片机用74HC595的数码管以及16*16点阵的程序例子?汇编语言的!

51\u5355\u7247\u673a 74HC595 \u9a71\u52a816*16\u70b9\u9635\u5c4f

\u4e0d\u662f\u5f88\u96be\uff0c\u53ea\u662f\u6ca1\u5de5\u592b\u505a\u3002\u4e0a\u7f51\u641c\u5427\uff0c\u8fd9\u79cd\u4e1c\u897f\u592a\u9ebb\u70e6\u4e86\uff0c\u9664\u975e\u6b63\u597d\u5f88\u95f2\u6216\u8005\u624b\u5934\u6b63\u597d\u6709\u73b0\u6210\u7684\u7a0b\u5e8f\uff0c\u8981\u4e0d\u6ca1\u529e\u6cd5\u5e2e\u4f60\u505a\u7684\u3002\u4e00\u697c\u6240\u8bf4\u7684\u4ee3\u505a\uff0c\u4f30\u8ba1\u662f\u8981\u94b1\u7684\u5427\uff0c\u5982\u679c\u662f\uff0c\u4e2a\u4eba\u8868\u793a\u6ca1\u5fc5\u8981\u3002

\u8fd9\u662f16X16\u7684\uff0c\u81ea\u5df1\u4e00\u6539\u5c31\u597d\u4e86
//74HC595\u7ec3\u4e60\u7a0b\u5e8f
//\u4e32\u5165\u5e76\u51fa\u5b9e\u73b016\u6d41\u6c34\u706f\u6548\u679c
//2009.12.28
#includereg52.h
sbit shcp=P2^0; //\u6570\u636e\u5728\u4e0a\u5347\u6cbf\u8fdb\u5165\u79fb\u4f4d\u5bc4\u5b58\u5668
sbit date1=P2^1; //\u4e32\u884c\u6570\u636e\u8f93\u5165\u7aef
sbit clock=P2^2; //\u4e0a\u5347\u6cbf\u65f6\u5c06\u6570\u636e\u8f93\u51fa\u5230\u5e76\u884c\u7aef\u53e3
unsigned char tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
unsigned char tab1[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay(unsigned int delay)
{
unsigned char i;
for(;delay0;delay--)
for(i=0;i125;i++);
}
void send_data(unsigned char date) //\u53d1\u9001\u6570\u636e
{
unsigned char i;
for(i=0;i8;i++) //\u628a\u6bcf\u4e00\u4f4d\u6570\u636e\u79fb\u5165\u5bc4\u5b58\u5668
{
shcp=0;
date=date1;
date1=CY;
shcp=1;
delay(20);
}
}
void main()
{
unsigned char k;
for(k=0;k16;k++)
{
send_data(tab[k]);
send_data(tab1[k]);
{clock=0;clock=1;};
}
}

;16*16点阵左移汇编程序
DS_595 EQU P1.5 ;串行数据输入(595-14)
CH_595 EQU P1.7 ;移位时钟脉冲(595-11)
CT_595 EQU P1.6 ;输出锁存器控制脉冲(595-12)
G_595 EQU P1.4

ORG 0000H
LJMP MAIN
ORG 000BH
LJMP TIME
ORG 0100H
MAIN: MOV SP,#60H
CLR G_595
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
SETB ET0
MOV R2,#2 ;滚动时间
MOV DPTR,#TAB
inc dptr
inc dptr
MOV 20H,DPH
MOV 21H,DPL
MOV DPTR,#TAB
SETB EA
SCA: MOV R1,DPH
MOV R5,DPL
MOV R3,#00H ;扫描信号初值
MOV R4,#00H
MOV 2fh,#0feH
SCA1:; MOV P3,R3
MOV A,R4
MOVC A,@A+DPTR
CALL WR_595;595串行输入,并行输出
NOP
NOP
INC R4
MOV A,R4
MOVC A,@A+DPTR
CALL WR_595;595串行输入,并行输出
NOP
NOP

CALL DEL

SETB CT_595 ;上升沿将数据送到输出锁存器,显示
NOP
NOP
CLR CT_595
INC R4;取码指针加1
call llsm

CALL DEL

INC R3
CJNE R3,#16,SCA1
LJMP SCA

DEL: MOV R6,#2
MOV R7,#248
DJNZ R7,$
DJNZ R6,$
RET

TIME: CLR EA
MOV 30H,A
PUSH 30H
MOV TL0,#0B0H
MOV TH0,#3CH
DJNZ R2,LOOP
MOV R2,#2
CLR C
MOV A,R5
ADD A,#2
MOV R5,A
MOV DPL,R5
MOV A,R1
ADDC A,#0
MOV R1,A
MOV DPH,R1
CJNE A,20H,LOOP
MOV A,R5
CJNE A,21H,LOOP
MOV DPTR,#TAB
LOOP: POP 30H
MOV A,30H
SETB EA
RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;*****移位寄存器接收一个字节
WR_595: MOV R7,#08H ;一个字节数据(8位)
LOOP_: RLC A ;数据移位
MOV DS_595,C ;送数据到串行数据输入端上(P1.0)
CLR CH_595 ;拉低移位时钟
NOP
NOP
setb CH_595 ;上升沿发生移位(移入一数据)
DJNZ R7,LOOP_ ;一个字节数据没移完继续
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
llsm:;逐列扫描
CJNE R3,#8,JCC
JCC:JnC P00
MOV P2,#0FFH
MOV P0,2fH;扫描P0
MOV A,2fH
RL A
MOV 2fH,A
AJMP XX
P00:MOV P0,#0FFH
MOV P2,2fH;扫描P2
MOV A,2fH
RL A
MOV 2fH,A
XX:ret
TAB: DB 32,4,32,4,34,66,34,130,254,127,33,1,33,1,32,16;
DB 32,16,255,8,32,7,34,26,172,33,32,64,32,240,0,0;"我",0
DB 0,64,64,32,178,160,150,144,154,76,146,71,246,42,154,42;
DB 147,18,145,26,153,38,151,34,145,64,144,192,48,64,0,0;"爱",1

这种例子多不胜数:
http://hi.baidu.com/%B7%DB%B3%BE%B5%C4%CA%C0%BD%E7/blog/item/31855b6476cd8ed38cb10d4e.html
http://hi.baidu.com/jiangxue911/blog/item/be708894ff85d3047af480e0.html
http://hi.baidu.com/pnalson/blog/item/8c3ff1c8694774167e3e6fdc.html

你的这个不是乱码就有问题了!~
你仔细理解一下这段

void wr595(uchar dat)
{
uchar a;
for(a=8;a>0;a--)
{
SH_CP=0;
DS=dat&0x80;
dat<<=1;
SH_CP=1;
_nop_();
_nop_();
SH_CP=0;
_nop_();
_nop_();
SH_CP=1;
}
}

你的for循环是有问题的
以为你的每个字节移了多次
所以就乱码了

void wr595(uchar dat)
{
uchar a;
for(a=8;a>0;a--)
{
SH_CP=0;
DS=dat&0x80;
dat<<=1;
SH_CP=1;
_nop_();
_nop_();
}
}
你看看下面的
去掉一个

这个网上很多啦,去google能找到很多例子

  • 51鍗曠墖鏈寮鍙戞澘鍝釜濂?
    绛旓細11銆佹澘瀛愪笂鍏遍泦鎴愭湁21涓寜閿紝鍏朵腑1涓鍗曠墖鏈澶嶄綅鎸夐敭锛16涓煩闃垫寜閿傚垎涓0鍒癋鍏16鎸夐敭锛岃繕鏈夊洓涓嫭绔嬪紡鎸夐敭锛岄氳繃涓庨棬74HC08灏嗘寜涓嬩俊鎭佺粰鍗曠墖鏈轰腑鏂彛銆12銆佹澘瀛愪笂鏈変竴涓棤婧愯渹楦e櫒锛屽彲浠ョ敤鏉ュ仛闊充箰杈撳嚭瀹為獙璁╀綘鍏呭垎浜嗚В鐢熸棩璐哄崱鐨勫伐浣滃師鐞嗐13銆佹澘瀛愪笂闆嗘垚涓涓狣S18B20娓╁害浼犳劅鍣紝鐢ㄦ潵瀛︿範瀹炵幇鏁板瓧娓╁害...
  • 鍏充簬51鍗曠墖鏈鎺у埗74HC595
    绛旓細鏂规1銆 鍦ㄧ儹缁х數鍣ㄤ笂鍔犺娴秾鎶戝埗鍣紱鏂规2銆 鍦ㄨ緭鍏ョ鍔犺婊ゆ尝鍣 鏂规3銆 灏嗕俊鍙风嚎閲囩敤灞忚斀鐢电紗骞跺皢灞忚斀灞傛帴鍦
  • 51鍗曠墖鏈寮曡剼涓嶅鐢ㄦ庝箞鍔
    绛旓細51鍗曠墖鏈寮曡剼涓嶅鐢ㄨВ鍐虫柟娉曞涓嬶細1銆佹暟瀛椾俊鍙(TTL锛孋MOS)锛屽彲浠ョ敤74HC373閿佸瓨鍣ㄦ垨74HC595绉讳綅瀵勫瓨鍣ㄦ墿灞曪紝閿佸瓨鍣ㄦ槸鐢ㄧ墖閫夊垏鎹紝绉讳綅瀵勫瓨鍣ㄦ槸涓插苟杞崲锛1杞8銆2銆佹ā鎷熶俊鍙凤紝鐢ㄧ被浼74HC4052锛8妯狢hannelAnalog绌烘牸Multiplexer鐨凪ux鎵╁睍锛岀劧鍚庣敤鏃跺垎澶嶇敤鐨勫舰寮忥紝鍒嗘椂闂寸墖閲囨牱銆
  • 51鍗曠墖鏈虹敤鍥涗釜74HC595鑱旂骇椹卞姩16x16鐨凩ED鐐归樀,鐢ㄨ揪鏋楅】ULN2803鍋氳椹...
    绛旓細瑕佷笉浜嗚繖涔堝椹卞姩涓や釜74HC59鍜屼竴涓74HC154.缁欎綘鍥句綘鐪嬬湅銆
  • 51鍗曠墖鏈虹敤74hc377鎺у埗涓や釜鏁扮爜绠¤鏃剁▼搴?
    绛旓細MOV銆P1锛孨UM0 CLR銆P3.1 SETB銆P3.0 CLR銆P3.0 CALL銆DELAY2MS SETB銆P3.1 ;锛嶏紞锛 MOV銆P1锛孨UM1 CLR銆P3.2 SETB銆P3.0 CLR銆P3.0 CALL銆DELAY2MS SETB銆P3.2 RET
  • 鍝綅鍝ュ摜濮愬鐭ラ亾鐢╬roteus寮鍙89C51鍗曠墖鏈鏃跺浘涓殑杩欐鍣ㄤ欢鍙粈涔堝憿...
    绛旓細杩欎釜鏄 4杈撳叆鎴栭潪闂紙甯﹂夐氱锛 灞炰簬閫昏緫杩愮畻 鑺墖 涓嶅睘浜鍗曠墖鏈 鏄74绯诲垪 鍨嬪彿涓7425锛74hc25 74ls25绛夛級 涓涓7425閲屾湁2涓4杈撳叆鎴栭潪闂 4杈撳叆鎴栭潪闂ㄦ槸鎸 鍙湁褰4涓緭鍏鍜孊涓轰綆鐢靛钩锛堥昏緫0锛夋椂杈撳嚭涓洪珮鐢靛钩锛堥昏緫1锛夊惁鍒欎负0锛 鐪嬪浘涓剰鎬濆簲璇ユ槸 k1-k4鏄洓涓腑鏂簮锛屼竴鑸儏鍐典负浣庣數骞...
  • 姹傛帹鑽愪竴娆51鍗曠墖鏈,鍋氬緱浜嗘櫤鑳借溅鐨,甯﹀璺疨WM杈撳嚭,淇濊瘉瓒冲IO鍙c傛ц兘...
    绛旓細鎴栨槸鐢ㄧ編淇$殑51閫熷害鍙互杈惧埌40MIP鍚庤呮槸鐪熸IT鍗曟椂閽熷懆鏈熷鏋淚O鍙d笉澶熺敤鍙互鐢74HC绯诲垪涓插彛鎵╁睍銆傛兂澶氬皯灏卞灏戯紒STC鐨勮瘽寤鸿浣犵敤STC12C5A60S2杩欐閲岄潰鏈2璺疨WM杈撳嚭杩樺彲浠ュ疄鐜颁綆棰戞垨鏄珮棰戠殑鏃堕挓杈撳嚭涔熷彲浠ョ敤鍋歅WM 12C5A60S2鎴戝氨鐢ㄨ繖娆鹃熷害涔熷氨澶ф6鍒嗛浠锋牸灏12鍏僆O鏈44鑴氬皝瑁呯殑鏈塒4鍙h繕甯D 妯℃暟...
  • 74HC573 杈撳叆绔帴鍗曠墖鏈鏅欼O鍙,闇瑕佹帴涓婃媺鐢甸樆鍚
    绛旓細濡傛灉鍗曠墖鏈虹殑杈撳嚭绔彛鏄帹鎸借緭鍑虹殑锛岄偅涔堣繖涓笂鎷夌數闃绘牴鏈病鏈夊繀瑕侊紝浣嗗鏋滃崟鐗囨満鐨処O鍙f槸寮婕忚緭鍑烘垨鑰呮槸鍐呴儴寮变笂鎷夎緭鍑虹殑锛岄偅杩欎釜鏃跺欏氨闇瑕佹帴涓涓笂鎷夌數闃汇備笂鎷夌數闃荤殑澶у皬涓鑸弬鐓у悗绾х數璺墍闇瑕侀┍鍔ㄧ數娴佺殑5锝10鍊嶆潵閫夊彇锛屽彲澶т笉鍙皬锛屼竴鑸幇鍦ㄧ敤10K鎴栬4K7鐨勬瘮杈冨锛屼絾濡傛灉瀵瑰姛鑰楄姹傛瘮杈冧弗鏍硷紝杩欎釜...
  • 涓鐢74HC123鑺墖,鐭ヤ笉鐭ラ亾鐢51鍗曠墖鏈鎬庝箞瀹炵幇
    绛旓細鍙互鏍规嵁74HC123鏀堕泦鍒扮殑娉㈠舰锛岀劧鍚庣敾涓涓椂搴忓浘锛屾牴鎹51鐨寮曡剼瀹氫箟锛岀粰IO鍙e彂閫佷笉鍚岀殑楂樹綆鐢靛钩锛屼篃鍙互瀹屾垚鐩稿簲鐨勬尝褰
  • 74HC14涓嶢DC0809鐢佃矾鍥惧府鐪嬩笅
    绛旓細1. 74HC14 鍐呴儴鏈夊叚涓弽鐩稿櫒, 绗1,2,3,4,5,6 鑴氬唴閮ㄧ殑涓変釜鍙嶇浉鍣, 鍜 C2, 鍙彉鐢甸樆 缁勬垚涓涓尟鑽$數璺, 鎸崱鐢佃矾鐨 棰戠巼鐢 鍙彉鐢甸樆 璋冩暣, 鎸崱鍑烘潵鐨勮鍙烽佸埌 AD0809 鐨勭 10 鑴, 褰 clock.2. 74HC14 绗13, 12 鑴 鐨勫弽鐩稿櫒, 鎶 AD0809 EOC 璁彿鍙嶇浉, 閫佸埌 51 鍗曠墖鏈 鐨 P3....
  • 扩展阅读:51job ... 74hc151内部结构图 ... 74hc151管脚图 ... 74hc151真值表图 ... 51单片机课程毕业设计 ... 51单片机p2口的地址 ... echolife hs8145c5 ... 74hc595全部高电位 ... 51单片机课程设计电子琴 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网