男女午夜激情_www.天堂av.com_亚洲综合小说区_亚洲欧美自拍视频_成年精品_久久www免费人成—看片_激情综合五月天_久久高潮视频_最新国产成人ab网站_国产精品卡一

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發
培訓信息
贊助商
pic16f877a對24c01的讀寫程序
pic16f877a對24c01的讀寫程序
 更新時間:2008-7-26 17:06:30  點擊數:3
【字體: 字體顏色

#i nclude<pic.h>
#i nclude<string.h>
#define uchar  unsigned char
#define uint   unsigned int

static volatile unsigned char acc @ 0x20;            //發收數據暫存器
static volatile bit acc0     @ (unsigned)&acc*8+0;   //接收
static volatile bit acc7     @ (unsigned)&acc*8+7;   //發送
static volatile unsigned char err @ 0x21;            //
static volatile bit err0     @ (unsigned)&err*8+0;
static volatile bit err3     @ (unsigned)&err*8+3;
static volatile bit err6     @ (unsigned)&err*8+6;
static volatile bit err7     @ (unsigned)&err*8+7;   //應答位暫存位

void  Cack();        //應答位檢查
void  Mnack();       //發送非應答位
void  Mack();        //發送應答位
void  Stop();        //停止IC總線
void  Sta();        //啟動IC總線
void  Wrbyt (uchar x) ;     //寫一字節
      uchar Rdbyt( );      //讀一字節
void  Rdnbyt ();       //讀n個數據
void  Wrnbyt(uchar SLAwtemp );   //寫n個數據
void initial();       //I/O初始化子程序
void LED ();      //
void delay(uint a);
void delay1();


#define  SCL  RB4 //4  ;24C01-6
#define  SDA  RB5 //5  ;24C01-5
#define  SCLIO  TRISB4 //4
#define  SDAIO  TRISB5 //5
#define  SLAW   0x0A0//尋址字節寫
#define  SLAR   0x0A1//尋址字節讀
uchar numer=1;  //數碼管數據暫存區


unsigned char sun[10] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

//////////////24C01/////////////////
//--------應答位檢查---------
void  Cack()
{
SCL=1;
SDAIO=1;//輸入1
SCLIO=0;
delay1();
err7=SDA;//c=1錯誤ERR
SCL=0;
}
///--------發送非應答位----------
void  Mnack()
{
 SDA=1;
 SCLIO=0;
 SDAIO=0;//輸出
 SCL=1;
 delay1();
 SCL=0;
 SDA=0;
}
//-------發送應答位---------------
void  Mack()
{
SDA=0;
SCLIO=0;
SDAIO=0;//輸出
SCL=1;
delay1();
SCL=0;
SDA=1;
}
//--------停止IC總線---------------
void  Stop()
{
 SDAIO=0;//輸出
 SCLIO=0;
 SDA=0;
 delay1();
 SCL=1;
 delay1();
 SDA=1;
 delay1();
}
//--------;啟動IC總線-------------
void  Sta()
{
SDAIO=0;//輸出
SCLIO=0;
SDA=1;
delay1();
SCL=1;
delay1();
SDA=0;
delay1();
SCL=0;
}
//--------寫一字節------------------------
void  Wrbyt(uchar x)
{
uchar i;
acc=x;
SCLIO=0;
SDAIO=0;
for(i=8;i>0;i--)
{
 SDA=acc7;
 SCL=1;
 delay1();
 SCL=0;
 SDA=0;
 acc=acc<<1;
 }
}
//---------讀一字節-----------------
uchar   Rdbyt( )
{
uchar i;
SCLIO=0;
SDAIO=1;//;輸入
for(i=8;i>0;i--)
 {
 acc=acc<<1;//接收數據左移寄存器
 SCL=1;
 delay1();
 acc0=SDA;
 SCL=0;
 delay1();
 }
 return(acc);
}
////---------讀n個數據----------------
void  Rdnbyt () //傳送數據個
{
 Sta(); //啟動IC總線
 delay1();
 numer = Rdbyt();///讀一字節
 delay1();
 Stop(); //停止IC總線
}
//---------寫n個數據---------------
void  Wrnbyt(uchar SLAwtemp )
{

 err7=1;
 if(err7==1)///c=1E0,ERR
 {
 Sta(); //啟動IC總線
 delay1();
 Wrbyt(SLAwtemp); //寫一字節
 delay1();
 Cack();//應答位檢查-
 }
 delay1();
 while(err7==1);
 Stop(); //停止IC總線
}

//*************************************//
//系統 各I/O初始化子程序
void initial()
{
 TRISC=0;
 TRISA=0;
 TRISB1=1;
 TRISB2=1;
}

//LED

void LED ()
{
PORTA=0X1f;
PORTC=sun[numer];
}

void delay(uint a)
{
uint b=100;
while(a--)
{
 while(b--);
}
}

void delay1()
{
NOP();
NOP();
NOP();
NOP();
}

void main()
{
initial();//系統 各I/O初始化子程序
LED();
delay(100);
Wrnbyt (SLAW);//尋址字節寫#0A0
delay1();
Wrnbyt (0x05);//寫地址0x05
delay1();
Wrnbyt (0x06);//寫數據0x06
delay1();
Wrnbyt (SLAR);//尋址字節讀#0A1
delay1();
Wrnbyt (0x05);//讀地址0x05
delay1();
Rdnbyt (); //讀數據
delay(5);
while(1)
{LED();}
}

  • 上一篇: 基于PIC單片機的電波數碼顯示時鐘的設計
  • 下一篇: 877A軟件模擬SPI通信讀寫93C46
  • 發表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發消息66821730(技術支持)點擊這里給我發消息66821730(廣告投放) 點擊這里給我發消息41031197(編輯) 點擊這里給我發消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業自行提供,該企業負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(濱江)機電一體化學會
    中國行業電子商務100強網站

    網站經營許可證:浙B2-20080178-1
    主站蜘蛛池模板: 萨迦县| 榆社县| 灵宝市| 盐津县| 承德市| 灌云县| 辽源市| 库尔勒市| 永登县| 瓦房店市| 峨眉山市| 黄大仙区| 建阳市| 雷州市| 定西市| 城市| 荔浦县| 开平市| 达尔| 达州市| 邓州市| 定边县| 习水县| 郎溪县| 沂南县| 亳州市| 彭州市| 永年县| 汝南县| 合作市| 运城市| 元江| 霸州市| 西乌珠穆沁旗| 吉安县| 土默特左旗| 翁牛特旗| 桃源县| 天气| 九台市| 无为县|