<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機讀寫AT29C040的C51程序

Wildesbeast ? 來源:單片機教程網 ? 作者:單片機教程網 ? 2020-11-07 12:01 ? 次閱讀

給大家介紹一個51單片機讀寫AT29C040的c51程序

#include 《reg51.h》

#include 《intrins.h》

unsigned char time;

void int_t0(void) interrupt 1 {

time++;

}

unsigned char d; //rec data

bit rec(void) {

TH0=0;time=0;

while (!RI) {if (time》1) return(1);}

RI=0;

d=SBUF;

return(0);

}

void sen(unsigned char dd) {

SBUF=dd;

while (!TI) {}

TI=0;

}

void wait(void) {

time=0;while (time《10) {}

}

void wait10ms(void) {

TH0=150;time=0;

while (!time) {}

}

sbit ce=P3^5;

sbit oe=P3^6;

sbit we=P3^7;

sbit a16=P3^2;

sbit a17=P3^3;

sbit a18=P3^4;

void pro_to_card(void) {

unsigned char no,i,j;

sen(0xaa);

if (rec()) {wait();return;}

no=d;

sen(d);

no《《=2;

no|=0xe3;

P3=0xff;

P3&=no;

i=0;

do {

P0=i;

j=0;

do {

if (rec()) {wait();ce=1;return;}

TI=0;SBUF=d;

P1=j;

P2=d;

ce=0;

we=0;

we=1;

ce=1;

j++;

} while (j);

wait10ms();

i++;

} while (i);

ce=1;

}

void card_to_pro(void) {

unsigned char no,i,j;

sen(0x55);

if (rec()) {wait();return;}

no=d;

sen(d);

no《《=2;

no|=0xe3;

P3=0xff;

P3&=no;

P2=0xff;

i=0;

do {

P0=i;

j=0;

do {

P1=j;

ce=0;oe=0;

no=P2;

oe=1;ce=1;

j++;

sen(no);

if (rec()) {wait();return;}

if (no!=d) {wait();return;}

} while (j);

i++;

} while (i);

}

/*

void load(unsigned int as,unsigned char dd) {

P0=as/256;P1=as;P2=dd;

ce=0;we=0;we=1;ce=1;

}

void erase(void) {

a16=a17=a18=0;

load(0x5555,0xaa);

load(0x2aaa,0x55);

load(0x5555,0x80);

load(0x5555,0xaa);

load(0x2aaa,0x55);

load(0x5555,0x10);

wait10ms();

wait10ms();

}

void unlock(void) {

unsigned char i;

a16=a17=a18=0;

load(0x5555,0xaa);

load(0x2aaa,0x55);

load(0x5555,0x80);

load(0x5555,0xaa);

load(0x2aaa,0x55);

load(0x5555,0x20);

i=0;

do {

P1=i;

ce=0;we=0;we=1;ce=1;

i++;

} while (i);

}

*/

//AT29C040讀寫主程序開始

void main(void) {

SCON=0x80;

TMOD=0x21;

ET0=TR0=1;EA=1;

wait10ms();

// erase();

// unlock();

REN=1;

while (1) {

REN=1;RI=0;

while (!RI) {} RI=0;

switch (SBUF) {

case 0x55:card_to_pro();break;

case 0xaa:pro_to_card();break;

case 0xa5:

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

sen(0xaa);

break;

}

}

}
責任編輯 LK

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 51單片機
    +關注

    關注

    270

    文章

    5649

    瀏覽量

    121154
  • 程序
    +關注

    關注

    114

    文章

    3640

    瀏覽量

    79726
收藏 人收藏

    評論

    相關推薦

    C51單片機基礎

    單片機C51C51單片機
    jf_98360291
    發布于 :2022年08月15日 20:42:05

    閃速存儲器AT29C040單片機的接口設計應用

    閃速存儲器AT29C040單片機的接口設計應用
    發表于 10-10 11:28

    C51單片機應用與C語言程序設計

    C51單片機應用與C語言程序設計
    發表于 08-12 13:11

    C51單片機學習

    C51單片機學習,教你玩轉單片機。
    發表于 04-14 13:00

    C51單片機應用與C語言程序設計

    C51單片機應用與C語言程序設計 基于機器人工程對象的項目實踐
    發表于 05-21 17:56

    單片機高級C51程序設計

    單片機高級C51程序設計
    發表于 05-30 21:44

    新概念c51單片機技術教程

    `問:大生!你怎么看?本人由于工作需要初識C51單片機,希望生兄提供一些C51單片機的相關知識?答:單片機無非是
    發表于 09-26 11:11

    【下載】《單片機語言C51應用實戰集錦》

    。Keilc51是目前單片機開發最為流行的軟件。本書收集并整理了許多實用的采用C51單片機開發的程序,這些
    發表于 04-08 16:51

    c51程序單片機串口通信

    求求大神,設計一個c51程序,實現功能“串口助手發送給單片機A,單片機接收到這個信號,使小燈亮,,串口助手發送給單片機B,
    發表于 04-01 01:48

    單片機技術及c51程序設計

    單片機技術及c51程序設計,把Visual Studio 2019中配置C51單片機開發環境本文參考了VS2008調用Keil實現
    發表于 07-14 07:31

    51單片機C語言應用基礎程序設計

    51單片機C語言應用基礎程序設計匯編單片機C語言應用程序
    發表于 07-15 08:33

    C51單片機C52單片機有什么不同之處?

    C51單片機C52單片機有什么關系?C51單片機C
    發表于 07-16 06:36

    51單片機C51基礎知識

    帶您從零學51單片機C51基礎知識 C51基礎知識1 單片機的匯編(ASM)和C語言優缺點2 C51
    發表于 02-10 14:30 ?109次下載

    51單片機如何讀寫AT29C040?51單片機讀寫AT29C040c51程序免費下載

    本文檔的主要內容介紹的是51單片機如何讀寫AT29C040?給大家介紹一個51單片機
    發表于 09-06 15:00 ?23次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>如何<b class='flag-5'>讀寫</b><b class='flag-5'>AT29C040</b>?<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>讀寫</b><b class='flag-5'>AT29C040</b>的<b class='flag-5'>c51</b><b class='flag-5'>程序</b>免費下載

    使用51單片機讀寫AT29C040的C語言程序免費下載

    本文檔的主要內容詳細介紹的是使用51單片機讀寫AT29C040的C語言程序免費下載。
    的頭像 發表于 11-14 11:31 ?4282次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>