久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9709|回復(fù): 4
收起左側(cè)

74HC164串-并芯片實驗_C51與匯編2個版本

[復(fù)制鏈接]
ID:1 發(fā)表于 2010-7-3 22:14 | 顯示全部樓層 |閱讀模式
;=======================================
;跳線設(shè)置:默認(rèn)
;晶振:12M
;試驗結(jié)果8*8點陣上出現(xiàn)流水燈
;74hc164芯片可實現(xiàn)串-并,所以常用他來擴展單片機io口,51hei板子上的8*8點陣有8行8列
;本來是需要8個io口來控制行數(shù)據(jù)的,現(xiàn)在我們用74hc164后只需要2個io口便能實現(xiàn)
;===========預(yù)定義======================
SDA        BIT   P2.5 ;74HC164的AB端串行輸入
SCL        BIT   P2.4 ;74HC164的CLK端,上升沿有效
dds        EQU   48H   
ORG   0000H
AJMP  MAIN
ORG   0100H
;============主程序開始=======================
MAIN:  
clr P2.7        ;關(guān)數(shù)碼管
mov ACC,#0FFH   ;送SHIFT子程序的參數(shù)
ACALL   SHIFT   ;調(diào)74hc164移位輸出子程序,把FF輸出到8*8點陣的所有行
                ;因51hei開發(fā)板采用共陽點陣,這時只要哪一列為0,這一列便可被點亮
mov dds,#0feH   ;二進(jìn)制為11111110,供RL指令移位用
huqin:
mov P0,dds      ;輸出到8*8點陣的列,每一次只有一列被點亮
mov  dds,P0     ;P0現(xiàn)在的值保存到48H里去   
mov a,dds       ;由于RAM中不能直接RL移位,所以先送人A
RL   a          ;移位
mov  dds,a      ;移位之后的數(shù)據(jù)保存到48H里去 
ACALL DELAY_1S  ;延時1.002035秒
jmp huqin       ;死循環(huán)

;============74hc164移位輸出子程序==============================
; 子程序名: SHIFT
; 功能描述: 移位程序,將8位數(shù)據(jù)依次移進(jìn)74LS164芯片中
; 控制方式就是數(shù)據(jù)引腳的數(shù)據(jù)在時鐘引腳的脈沖下一位一位的移入芯片
; 程序作者: 胡琴  網(wǎng)站:m.zg4o1577.cn
;===============================================================
SHIFT:      push  ACC       ;A進(jìn)棧暫存
            MOV     R2,#8   ;串輸出數(shù)據(jù)8位 
            CLR     C       ;把C清0
hei:        CLR     SCL     ;拉低SCL,以便下次拉高便可產(chǎn)生上升沿
            RLC     A       ;A的最高位移到C,C原值移到A最低位
            MOV     SDA,C   ;C中的數(shù)據(jù)先送入74hc164,等待clk上升沿的到來
            SETB    SCL     ;低電平到高電平邊沿觸發(fā)到來,并行數(shù)據(jù)輸出至164的Q0-Q7
            DJNZ    R2,hei  ;判斷輸出完畢了沒有
            pop   ACC       ;出棧恢復(fù)A值
            RET

;============延時子程序=============
DELAY_1S:         ;延時子程序,12M晶振延時1.002035秒
MOV R4,#10 
L3: MOV R2 ,#200  ;1指令周期
L1: MOV R3 ,#249  ;1指令周期
L2: DJNZ R3 ,L2   ;2指令周期
DJNZ R2 ,L1       ;2指令周期
DJNZ R4 ,L3       ;2指令周期
RET               ;2指令周期
;循環(huán)體延時時間: [(249*2+1+2)*200+1+2]*10*12/12000000=1.002030s
;加上ACALL指令和第一條mov指令以及最后一條RET指令算出來整個函數(shù)的時間為1.002035s
;===================================================
END                     ;匯編結(jié)束偽指令


 

 

c語言的版本由于分為幾個文件不方便在論壇貼出,用戶可從以下地址獲得

源代碼與hex文件下載:

匯編語言:http://m.zg4o1577.cn/ziliao/51hei-5/74HC164串-并_asm.rar

  C 語言:http://m.zg4o1577.cn/ziliao/51hei-5/74HC164串-并_c.rar

[此貼子已經(jīng)被作者于2010-7-4 2:35:19編輯過]
回復(fù)

使用道具 舉報

ID:29773 發(fā)表于 2011-7-27 15:15 | 顯示全部樓層
謝謝分停
回復(fù)

使用道具 舉報

ID:31502 發(fā)表于 2011-9-24 01:11 | 顯示全部樓層

頂,菜鳥學(xué)習(xí)中。。。

回復(fù)

使用道具 舉報

ID:31196 發(fā)表于 2011-9-28 10:04 | 顯示全部樓層

哎!匯編用哪個軟件寫程序呀??只會用KEIL寫C的,可是沒學(xué)過C,學(xué)過匯編,卻不知道用哪個軟件寫匯編!

回復(fù)

使用道具 舉報

ID:463930 發(fā)表于 2019-1-13 11:28 | 顯示全部樓層
pjking1214 發(fā)表于 2011-9-28 10:04
哎!匯編用哪個軟件寫程序呀??只會用KEIL寫C的,可是沒學(xué)過C,學(xué)過匯編,卻不知道用哪個軟件寫匯編!

Keil也是可以寫匯編,只是你把文件保存時用.asm后綴,不要用.c,如果是.c后綴就是編寫c語言,如果是.asm后綴就可以編寫匯編
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩三区 | 亚洲最大的网站 | av在线精品 | 嫩草久久 | 午夜在线影院 | 国产一级片免费 | 国产精品欧美在线 | 日韩精品一区在线观看 | 黄色一级视频在线观看 | 久久青青操 | 国产成人精 | 日本少妇一区二区 | 春色导航 | 成年免费视频黄网站在线观看 | 国产一区二区三区在线 | 国产伦精品一区二区三毛 | 日韩激情一区 | 久久久久久逼 | 日韩看片 | 国产成年妇视频 | 日本一区二区三区在线视频 | 五月婷婷网站 | 韩日视频| 欧美一级淫片免费视频魅影视频 | av片网站 | 午夜看片 | 午夜精品影院 | 五月婷婷综合网 | 欧美日韩国产片 | 国产精品五区 | 超碰在线网站 | 欧美狠狠干 | 日韩精品久久久 | 青青国产在线 | 黄色成人在线视频 | 免费观看av网站 | 艳妇诱春(第5部分)(h) | 黄网站免费观看 | 日韩小视频在线观看 | 91片黄在线观看动漫 | 成人激情视频网 |