新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 串行輸出數(shù)據(jù)spi程序(查詢方式)

串行輸出數(shù)據(jù)spi程序(查詢方式)

作者: 時間:2012-12-01 來源:網(wǎng)絡(luò) 收藏
數(shù)據(jù)(
該例采用向74LS164送兩位串行數(shù)據(jù)(0 ~9數(shù)字),并顯示在74LS164上連接的共陽數(shù)碼管上。
該例中:
n是循環(huán)變量,同時也是向74LS164發(fā)送的數(shù)據(jù)。
k是延時循環(huán)變量。
P3_0連接到74LS164的時鐘端CLK。
P3_1連接到74LS164的數(shù)據(jù)輸入A和B端。
程序中table[]是共陽數(shù)碼管的0~9數(shù)字的段碼編碼。
#include "AT89X51.h"
unsigned int code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; //共陽數(shù)碼管數(shù)據(jù)
//此例出自51hei單片機http://www.51hei.com
void main ()
{unsigned int n,k;
SCON=0;//設(shè)置串行口,工作在方式0
EA=0; //禁止中斷,采用發(fā)送,
while(1)
{for(n=0;n2;n++) //發(fā)送兩位數(shù)據(jù)
{
TI=0; //清發(fā)送完畢標(biāo)志位
SBUF=table[n]; //發(fā)送n的七段譯碼
while(!TI); //等待發(fā)送完畢
for(k=0;k20000;k++); //延時后再次發(fā)送下一個數(shù)
}
for(k=0;k50000;k++); //延時后,下一次發(fā)送
}}


關(guān)鍵詞: 串行輸出 spi程序 查詢方式

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉