用單片機(jī)I/O端口驅(qū)動(dòng)74LS164
74LS164是8位串入,并出移位寄存器,工作時(shí),在移位時(shí)鐘CLK的作用下,串行口送入的數(shù)據(jù)一位一位地移入。用單片機(jī)的P1.6口輸出移位脈沖,用P1.5口輸出串行數(shù)據(jù),同樣可以驅(qū)動(dòng)74LS164工作。如圖2-4所示,74LS164的清零端CLR由單片機(jī)P1.7控制。
單片機(jī)I/O端口驅(qū)動(dòng)74LS164主要包括函數(shù)聲明管腳定義部分、數(shù)據(jù)輸入函數(shù)以及數(shù)據(jù)輸出函數(shù)。
(1)函數(shù)聲明管腳定義。
函數(shù)聲明管腳定義部分主要完成程序所涉及的庫函數(shù)的聲明及有關(guān)引腳的定義,一般置于程序的開頭部分,代碼如下:
(2)數(shù)據(jù)輸入函數(shù)out_simuseri0。
數(shù)據(jù)輸入函數(shù)out_simuseri()將8位數(shù)據(jù)的從低位到高位的逐位輸入simuseri_DATA當(dāng)中,程序代碼如下所示:
(3)數(shù)據(jù)輸出函數(shù)PA_out()。
數(shù)據(jù)輸出函數(shù)PA_out()實(shí)現(xiàn)數(shù)據(jù)的并行輸出,程序代碼如下: