下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
西安郵電大學智能卡技術及應用課內實驗報告實驗名稱:存儲器卡讀寫實驗專業(yè)名稱:智能科學與技術班級:學生姓名:學號:指導教師:實驗日期:2023年4月18日實驗一存儲器卡讀寫實驗實驗目的了解串行總線的工作原理;通過實驗了解存儲器卡存、取數據的過程。實驗器材1.KEIL軟件;2.PROTEUS仿真軟件。實驗內容往24C04芯片中寫入一個數據〔如“129〞〕,然后再從24C04芯片中讀出剛剛的數據并把它顯示在數碼管上。實驗步驟硬件電路仿真使用Proteus軟件畫出如圖1所示的電路圖,要求:使用兩個按鈕來分別模擬讀卡和拔卡〔去除數據〕的過程,用一個發(fā)光二極管來模擬卡座上電的過程?!沧ⅲ弘娐穲D畫好后,給存儲器24C04導入24C04.bin文件,給51單片機導入hex文件〕圖1硬件電路圖2.軟件編寫圖2程序流程圖程序截圖:圖3實驗結果剛開始運行時,單片機沒有讀取任何數據,此時數碼管顯示數字為0;當“讀卡〞按鈕按下時,此時發(fā)光二極管亮,數碼管顯示預先存入24C04芯片的數值;當“去除〞按鈕按下時,此時此時發(fā)光二極管滅,數碼管數值清零。圖4圖5圖6五、實驗總結通過本次實驗我了解了存儲器卡存、取數據的過程,同時了解串行總線的工作原理。實驗在程序編寫過程中遇到了問題,還是參考過老師以及網上的程序得到同學的幫助,才大體上完成。每次實驗都有新的收成,以后我會更加努力學習的。六、實驗代碼#include<reg52.h>#include<intrins.h>#defineuintunsignedint#defineucharunsignedchar#defineNOP4(){_nop_();_nop_();_nop_();_nop_();} //延時4ussbitSCL=P1^0; //SCL引腳sbitSDA=P1^1; //SDA引腳sbitBUTTON=P1^5; //定義讀卡按鍵sbitLED=P1^6;//定義模擬上電卡座sbitBUTTONQ=P1^7;//定義模擬取卡按鍵uintshu; //定義寫入變量//數碼管顯示數組ucharcodeDUAN_XUAN[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//延遲函數voidDelay(uintx){ uchari; while(x--){ for(i=0;i<120;i++); }}voidDelayMS(uintx){ uchart; while(x--){ for(t=120;t>0;t--); }}/*IIC啟動*/voidStart(){ SDA=1;SCL=1;NOP4();SDA=0;NOP4();SCL=0;}/*IIC停止*/voidStop(){ SDA=0;SCL=0;NOP4();SCL=1;NOP4();SDA=1;}/*讀取應答*/voidRACK(){ SDA=1;NOP4();SCL=1;NOP4();SCL=0;}/*發(fā)送非應答信號*/voidNO_ACK(){ SDA=1;SCL=1;NOP4();SCL=0;SDA=0;}/*向24c04中寫一字節(jié)*/voidWrite_A_Byte(ucharb){ uchari; for(i=0;i<8;i++){//循環(huán)移入8位 b<<=1;SDA=CY;_nop_();SCL=1;NOP4();SCL=0; } RACK(); //讀取應答}/*向24c04中讀一字節(jié)*/ucharReceive_A_Byte(){ uchari,d; for(i=0;i<8;i++){ SCL=1;d<<=1;d|=SDA;SCL=0; } returnd;}/*任意地址寫數據*/voidWrite_Random_Address_Byte(ucharadd,uchardat){ Start(); Write_A_Byte(0xa0); Write_A_Byte(add); Write_A_Byte(dat); Stop(); DelayMS(10);}/*當前地址讀數據*/ucharRead_Current_Address_Data(){ uchard; Start(); Write_A_Byte(0xa1); d=Receive_A_Byte(); NO_ACK(); Stop(); returnd;}/*任意地址讀數據*/ucharRandom_Read(ucharaddr){ Start(); Write_A_Byte(0xa0); Write_A_Byte(addr); Stop(); returnRead_Current_Address_Data();}//顯示函數voiddisplay(uintx){ ucharbai,shi,ge; bai=x/100; //取百位 shi=x%100/10; //取十位 ge=x%10; //取個位 P0=0xff;//消影 Delay(1); P2=0x01; P0=DUAN_XUAN[ge]; //顯示個位 Delay(10); P0=0xff; P2=0x02; P0=DUAN_XUAN[shi]; //顯示十位 Delay(10); P0=0xff; P2=0x04; P0=DUAN_XUAN[bai]; //顯示百位 Delay(10);}//主函數 voidmain(){ uintx; x=0; shu=129; //把要寫的值賦給變量 BUTTON=1; LED=0; Write_Random_Address_Byte(0x00,shu);//往00地址寫入一個值 shu=Random_Read(0x00); //讀00地址的值 while(1){if(BUTTON==0){//判斷讀卡按鍵 Delay(40); if(BUTTON==0){ //消抖 LED=1; //燈亮 x=shu; //把讀
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年反腐倡廉警示教育工作總結
- 美術鑒賞與創(chuàng)新思維
- 2006年貴州高考語文真題及答案
- 體育用品行政后勤工作總結
- 體育用品行業(yè)行政后勤工作總結
- 2023-2024年員工三級安全培訓考試題附答案【完整版】
- 2024企業(yè)主要負責人安全培訓考試題及答案(名校卷)
- 教師期末教學工作總結4篇
- 快樂的國慶節(jié)作文400字5篇
- 市場震動月度報告
- 河北省百師聯盟2023-2024學年高二上學期期末大聯考歷史試題(解析版)
- 2021年四川省涼山州九年級中考適應性考試理科綜合(試卷)
- 骨科疼痛的評估及護理
- 【MOOC】概率論與數理統(tǒng)計-南京郵電大學 中國大學慕課MOOC答案
- 2024年度軟件開發(fā)分包合同技術要求與交底2篇
- 居家養(yǎng)老人員培訓管理制度
- 抗菌藥物的合理應用培訓
- 初三數學老師家長會發(fā)言稿
- 湖北第二師范學院《操作系統(tǒng)》2023-2024學年期末試卷
- 2021-2022學年河北省唐山市高一上學期期末語文試題
- 舒適化醫(yī)療麻醉
評論
0/150
提交評論