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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? wpcf8574.c

?? c8051f020源代碼39個(gè) 使用Silicon Labs IDE 調(diào)試器
?? C
字號(hào):
//參考程序A:  WPCF8574.C
//程序功能:PCF8574是帶SUMBUS總線的串口轉(zhuǎn)并口的數(shù)據(jù)轉(zhuǎn)換芯片.8位輸入口連結(jié)8個(gè)//開關(guān)(K1-K8)作輸入,二個(gè)8位輸出鎖存口分別連結(jié)8個(gè)LED燈,作二個(gè)8位輸出..
// 程序安排二個(gè)8位輸出口鎖存的數(shù)據(jù)電平相反.
#include <c8051f020.h>                    // SFR declarations
#include <intrins.h>
#define  WRITE       0x00                 // 寫位標(biāo)志
#define  READ        0x01                 // 讀位標(biāo)致
#define  CHIP_B      0x70
#define  SMB_START      0x08  // (MT & MR)主收發(fā)器發(fā)送起始位成功.再將從機(jī)寫地
//址送SMBUS
#define  SMB_RP_START   0x10  // (MT & MR)主收發(fā)器重復(fù)發(fā)送起始位成功,再將從機(jī)
//讀地址送SMB0DAT
#define  SMB_MTADDACK   0x18  // (MT) 主收發(fā)器發(fā)送從地址+W成功;收到 //ACK(從機(jī)應(yīng)答)     
#define  SMB_MTDBACK    0x28  // (MT)主收發(fā)器發(fā)送數(shù)據(jù)字節(jié)成功;收到ACK(從機(jī)//應(yīng)答) 
#define  SMB_MRADDACK   0x40  // (MR) 主收發(fā)器發(fā)送從地址+R成功;收到 //ACK(從機(jī)應(yīng)答)
#define  SMB_MRDBNACK   0x58  // (MR) 主收發(fā)器接收數(shù)據(jù)成功;主機(jī)發(fā)送NACK 
char COMMAND;                    // 保存從地址用與中斷程序
char WORD;                       // 保存接收到的數(shù)據(jù)并把他發(fā)送出去.
unsigned char xdata SENDMODE;                                        
bit SM_BUSY;                      // 在收/發(fā)數(shù)據(jù)時(shí)該位置1,中斷完成后被清另.
void SYSCLK_Init (void);
char SLA_READ(char chip_select);
void SLA_SEND(char chip_select, char wr_data);
void sleep_ms(unsigned int count)
{
  unsigned char ii,jj;
  for(ii=0;ii<count;ii++)
    {
      for(jj=0;jj<250;jj++)
	  _nop_();			
    }	
}
void MAIN (void)
{
   unsigned char i,temp;
   WDTCN = 0xde;                          // 禁止看們狗
   WDTCN = 0xad;
   SYSCLK_Init();                         // 開外部晶振
   XBR0 = 0x01;                           // 設(shè)置交叉開關(guān),配置IO口
   XBR2 = 0x40;                           // 使能交叉開關(guān)和弱上拉.
   SMB0CN = 0x44;                         // 使能SMBus帶低電平響應(yīng) (AA = 1)
   SMB0CR = 0xc9;           // 設(shè)置SMBus 速率= 100 kHz,系統(tǒng)時(shí)鐘為11.0582MHZ
   EIE1 |= 2;                             // SMBus 中斷使能
   EA = 1;                                // 全局中斷使能
   SM_BUSY = 0;                           // 釋放總線,用于第一次數(shù)據(jù)傳送
   SI = 0;
   while(1){
   for(i=0;i<40;i++){                 //延時(shí)
   		sleep_ms(200);
   }
	temp = SLA_READ(0x70);           //芯片U1讀取開關(guān)狀態(tài)
	sleep_ms(200);
	SLA_SEND(0x72,temp);             //芯片U2輸出開關(guān)狀態(tài)
	sleep_ms(200);
	sleep_ms(200);
	SLA_SEND(0x74,~temp);           //芯片U3輸出開關(guān)狀態(tài)的反碼
	sleep_ms(200);
	sleep_ms(200);
	sleep_ms(200);
	sleep_ms(200);
   }
   
}
void SYSCLK_Init (void)         //時(shí)鐘初始化
{
   int i;                                 // 延時(shí)計(jì)數(shù)器 i
   OSCXCN = 0x67;                         // 起動(dòng)外部時(shí)鐘(11.0592MHZ)
   for (i=0; i < 256; i++) ;              // 時(shí)間間隔 (>1ms)
   while (!(OSCXCN & 0x80)) ;             // 等待時(shí)鐘丟失允許位(MSCLKE)位置1
   OSCICN = 0x88;                         // 選擇外部晶振作系統(tǒng)時(shí)鐘
                                          // 允許時(shí)鐘丟失檢測(cè)
}
//數(shù)據(jù)輸出到從器件的函數(shù):
// chip_select = 器件從地址
void SLA_SEND(char chip_select, char wr_data)
{
   SENDMODE=0x01;
   while(SM_BUSY);                        // 當(dāng)總線忙碌的時(shí)后就等待
   SM_BUSY = 1;                           // SMBus忙碌標(biāo)志位置1 .
   SMB0CN = 0x44;                         // SMBus 使能, 響應(yīng)信號(hào)為低電平
   COMMAND = (chip_select | WRITE);       // COMMAND = 7位地址加"寫"位
   WORD = wr_data;                        // 輸出數(shù)據(jù)在WORD中
   STO = 0;
   STA = 1;                               // 起動(dòng)數(shù)據(jù)傳輸
	while(SM_BUSY);                       // 等待中斷結(jié)束
}
//讀取從器件輸出數(shù)據(jù)的函數(shù):
char SLA_READ(char chip_select){
   SENDMODE=0;
   while(SM_BUSY);                        // 總線忙碌時(shí)要等待
   SM_BUSY = 1;                           // 總線忙碌標(biāo)志位置1.
   SMB0CN = 0x44;                         // SMBus 使能, 響應(yīng)信號(hào)為低電平
   COMMAND = (chip_select | READ);        // COMMAND = 7位地址加"讀"位
   STO = 0;
   STA = 1;                               // 開始傳送
   while(SM_BUSY);                        // 等待傳送完成
   return WORD;                           // 返回接收到的數(shù)據(jù)
}
//  SMBus中斷服務(wù)程序
void SMBUS_ISR (void) interrupt 7
{ 
   switch (SMB0STA){                    // SMBus中斷狀態(tài) SMB0STA register)
//SMB_START     ;                  (SMB0STA  =08H)                                  
//主發(fā)送器/接收器發(fā)送起始位成功.再將從機(jī)寫地址送SMB0DAT并清除START位.
      case SMB_START:	//0x08
         SMB0DAT = COMMAND ;			
         STA = 0;                       // 人工清除STA
         SI = 0;                        // 人工清除SI
         break;
//SMB_RP_START                    ;(SMB0STA  =10H)
//主發(fā)送器/接收器發(fā)送重復(fù)起始位成功.再將從機(jī)讀地址送SMB0DAT并清除START位.
      case SMB_RP_START:	//0x10
         SMB0DAT = COMMAND;
         STA = 0;                       // 人工清除STA
         SI = 0;
         break;
//SMB_MTADDACK                      (SMB0STA  =18H)
//主發(fā)送器(MT)發(fā)送從地址+W成功;收到 ACK(從機(jī)應(yīng)答),再將要發(fā)的子地址送入SMB0DAT.
         case SMB_MTADDACK:	//0x18
         SMB0DAT = WORD;
         SI = 0;                        // 清除中斷標(biāo)志
         break;
//SMB_MTDBACK                            SMB0STA  =28H)
//主發(fā)送器(MT)發(fā)送數(shù)據(jù)字節(jié)成功;收到ACK(從機(jī)應(yīng)答) 
//檢查BYTE_SENT:如果為1,說明剛發(fā)出的是存儲(chǔ)器地址;為0,剛發(fā)出的是數(shù)據(jù)字節(jié)    
      case SMB_MTDBACK:		//0x28
			STO = 1;
			SM_BUSY=0;
         SI = 0;
         break;
//SMB_MRADDACK                          ;(SMB0STA  =40H)
//(MR)主收發(fā)器發(fā)送從地址+R成功;收到 ACK(從機(jī)應(yīng)答).主機(jī)發(fā)送NACK.
  case SMB_MRADDACK:	//0x40
         AA = 0;       // 主機(jī)在在回應(yīng)周期發(fā)送NACK
         SI = 0;
         break;
//SMB_MRDBNACK                  ;(SMB0STA  =58H)
//(MR)主收發(fā)器接收數(shù)據(jù)成功;主機(jī)發(fā)送NACK 
//讀操作完成。讀數(shù)據(jù)寄存器并發(fā)送STOP
      case SMB_MRDBNACK:	//0x58
         WORD= SMB0DAT;
         STO = 1;
         SM_BUSY = 0;
         AA = 1;           // 主機(jī)發(fā)送ACK,準(zhǔn)備下一次傳輸
         SI = 0;
         break;
 }
  }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
极品瑜伽女神91| 成人av动漫在线| av一区二区久久| 欧美精品一区二区三区高清aⅴ| 亚洲色图在线视频| 国产一区二区在线观看视频| 欧美高清视频在线高清观看mv色露露十八| 极品销魂美女一区二区三区| 1000精品久久久久久久久| 国产精品1024久久| 久久婷婷国产综合精品青草| 国产一本一道久久香蕉| 亚洲午夜久久久久久久久电影院| 欧美性做爰猛烈叫床潮| 樱桃视频在线观看一区| 91丨九色丨黑人外教| 亚洲激情av在线| 国产色产综合色产在线视频| 成人视屏免费看| 一区二区三区美女| 欧美精品一卡两卡| 97久久超碰精品国产| 亚洲国产精品影院| 国产精品色一区二区三区| heyzo一本久久综合| 精品影视av免费| 日本欧美久久久久免费播放网| 日韩一卡二卡三卡国产欧美| 极品瑜伽女神91| 日本视频一区二区三区| 亚洲高清免费视频| 亚洲精品国产第一综合99久久 | 久久综合精品国产一区二区三区| 欧美日韩视频在线观看一区二区三区 | 国产成人精品网址| 蓝色福利精品导航| 1区2区3区国产精品| 国产午夜亚洲精品不卡| 久久综合九色综合欧美就去吻| 日韩欧美国产电影| 色综合久久99| 日本在线不卡视频一二三区| 五月天精品一区二区三区| 一区在线中文字幕| 久久久久久久久久电影| 99国产精品久| 91丨porny丨最新| 在线免费观看日本欧美| 国产一区91精品张津瑜| 精品影院一区二区久久久| 狠狠色狠狠色综合系列| 亚洲综合丝袜美腿| 久久久久久久久蜜桃| 久久综合九色综合97_久久久| 国产偷国产偷精品高清尤物 | 91麻豆精品国产综合久久久久久| 东方aⅴ免费观看久久av| 99精品黄色片免费大全| 99精品偷自拍| 欧美日韩在线电影| 欧美剧在线免费观看网站| 在线成人高清不卡| 精品国产123| 国产精品成人免费精品自在线观看| 欧美疯狂性受xxxxx喷水图片| 欧美美女视频在线观看| 日韩欧美一级二级| 国产三级欧美三级| 精品视频在线视频| 欧美一级国产精品| 国产亚洲一二三区| 亚洲私人黄色宅男| 亚洲国产aⅴ天堂久久| 美国av一区二区| 午夜视黄欧洲亚洲| 国产又粗又猛又爽又黄91精品| 成人网在线播放| 欧美日韩国产天堂| 欧美日韩精品高清| 精品粉嫩aⅴ一区二区三区四区| 国产精品视频第一区| 亚洲制服丝袜在线| 狠狠色伊人亚洲综合成人| 97se亚洲国产综合自在线不卡| 欧美日本在线播放| 久久毛片高清国产| 一片黄亚洲嫩模| 国产麻豆精品在线| 日本一区二区三级电影在线观看 | 一级日本不卡的影视| 免费成人小视频| 青青草国产成人av片免费| 国产一区二区三区香蕉| 91久久免费观看| 91久久免费观看| www精品美女久久久tv| 一区二区三区国产豹纹内裤在线| 精品午夜一区二区三区在线观看| 91网页版在线| 26uuu亚洲婷婷狠狠天堂| 亚洲另类春色国产| 精品一区二区免费看| 在线精品国精品国产尤物884a| 久久久久国产精品麻豆ai换脸 | 免费不卡在线视频| 色综合中文字幕国产 | 91同城在线观看| 久久久久久亚洲综合影院红桃| 亚洲综合精品自拍| 高清在线观看日韩| 91精品国产全国免费观看| 日韩一区二区三区在线| 亚洲视频小说图片| 粉嫩av一区二区三区| 欧美成人女星排行榜| 久久精品亚洲乱码伦伦中文| 97aⅴ精品视频一二三区| 欧美mv日韩mv国产网站app| 亚洲永久免费视频| 91亚洲精品乱码久久久久久蜜桃| 国产婷婷色一区二区三区| 男女男精品网站| 在线电影院国产精品| 亚洲综合免费观看高清完整版| 色综合网站在线| **欧美大码日韩| 不卡一区在线观看| 欧美激情艳妇裸体舞| 亚洲精品免费在线播放| 北条麻妃国产九九精品视频| 国产日韩欧美激情| 国内精品国产成人| 久久综合中文字幕| 国产在线视频一区二区三区| 久久精品72免费观看| 欧美日本一区二区在线观看| 日韩国产欧美三级| 欧美日韩中文字幕一区| 亚洲国产成人tv| 欧美精品色一区二区三区| 亚洲毛片av在线| 精品影院一区二区久久久| 日韩一区二区三区高清免费看看| 日韩av在线播放中文字幕| 91麻豆精品国产| 美女视频一区二区| 欧美tk—视频vk| 国产福利精品一区二区| 国产情人综合久久777777| 成人美女视频在线观看18| 国产精品网曝门| 一本久道久久综合中文字幕| 国产精品国产三级国产aⅴ中文| av资源站一区| 亚洲综合激情网| 日韩一区二区在线观看视频 | 欧美影院一区二区| 午夜精品免费在线观看| 日韩三级在线观看| 国产精品综合一区二区三区| 欧美日韩成人综合在线一区二区| 青青草视频一区| 久久久久久一级片| 91女神在线视频| 三级亚洲高清视频| 色视频一区二区| 色先锋aa成人| 日本成人超碰在线观看| 久久人人97超碰com| 91在线观看高清| 奇米精品一区二区三区在线观看 | 91久久香蕉国产日韩欧美9色| 日日夜夜精品免费视频| 日韩午夜精品视频| 成人动漫在线一区| 亚洲成人自拍偷拍| 欧美亚洲尤物久久| 久久成人18免费观看| 136国产福利精品导航| 制服丝袜国产精品| 成人在线综合网| 天天综合日日夜夜精品| 久久欧美一区二区| 欧美三级日本三级少妇99| 国内国产精品久久| 洋洋av久久久久久久一区| 精品三级在线看| 在线亚洲精品福利网址导航| 久久er99精品| 亚洲午夜免费福利视频| 欧美精品一区二区三区一线天视频| 成人av免费在线观看| 美女视频一区在线观看| 亚洲美女免费在线| 久久久久国产精品麻豆ai换脸| 欧美人妇做爰xxxⅹ性高电影| 国产精品91xxx| 奇米精品一区二区三区在线观看一| 日韩一区欧美小说| 精品毛片乱码1区2区3区|