串行編程器源程序(Keil C語言)//FID=01:AT89C2051系列編程器//實(shí)現(xiàn)編程的讀,寫,擦等細(xì)節(jié)//AT89C2051的特殊處:給XTAL一個脈沖,地址計(jì)數(shù)加1;P1的引腳排列與AT89C51相反,需要用函數(shù)轉(zhuǎn)換#include <e51pro.h> #define C2051_P3_7 P1_0#define C2051_P1 P0//注意引腳排列相反#define C2051_P3_0 P1_1#define C2051_P3_1 P1_2#define C2051_XTAL P1_4#define C2051_P3_2 P1_5#define C2051_P3_3 P1_6#define C2051_P3_4 P1_7#define C2051_P3_5 P3_5 void InitPro01()//編程前的準(zhǔn)備工作{ SetVpp0V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=0; Delay_ms(20); nAddress=0x0000; SetVpp5V();} void ProOver01()//編程結(jié)束后的工作,設(shè)置合適的引腳電平{ SetVpp5V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=1;} BYTE GetData()//從P0口獲得數(shù)據(jù){ B_0=P0_7; B_1=P0_6; B_2=P0_5; B_3=P0_4; B_4=P0_3; B_5=P0_2; B_6=P0_1; B_7=P0_0; return B;} void SetData(BYTE DataByte)//轉(zhuǎn)換并設(shè)置P0口的數(shù)據(jù){ B=DataByte; P0_0=B_7; P0_1=B_6; P0_2=B_5; P0_3=B_4; P0_4=B_3; P0_5=B_2; P0_6=B_1; P0_7=B_0;} void ReadSign01()//讀特征字{ InitPro01(); Delay_ms(1);//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(20); ComBuf[2]=GetData(); C2051_XTAL=1; C2051_XTAL=0; Delay_us(20); ComBuf[3]=GetData(); ComBuf[4]=0xff;//----------------------------------------------------------------------------- ProOver01();} void Erase01()//擦除器件{ InitPro01();//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號 C2051_P3_3=1; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(1); SetVpp12V(); Delay_ms(1); C2051_P3_2=0; Delay_ms(10); C2051_P3_2=1; Delay_ms(1);//----------------------------------------------------------------------------- ProOver01();} BOOL Write01(BYTE Data)//寫器件{//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號 //寫一個單元 C2051_P3_3=0; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; SetData(Data); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); Delay_us(20); C2051_P3_4=0; Delay_ms(2); nTimeOut=0; P0=0xff; nTimeOut=0; while(!GetData()==Data)//效驗(yàn):循環(huán)讀,直到讀出與寫入的數(shù)相同 { nTimeOut++; if(nTimeOut>1000)//超時(shí)了 { return 0; } } C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return 1;} BYTE Read01()//讀器件{ BYTE Data;//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號 //讀一個單元 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=1; C2051_P3_7=1; Data=GetData(); C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return Data;} void Lock01()//寫鎖定位{ InitPro01();//先設(shè)置成編程狀態(tài)//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號 if(ComBuf[2]>=1)//ComBuf[2]為鎖定位 { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); } if(ComBuf[2]>=2) { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=0; C2051_P3_7=0; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); }//----------------------------------------------------------------------------- ProOver01();} void PreparePro01()//設(shè)置pw中的函數(shù)指針,讓主程序可以調(diào)用上面的函數(shù){ pw.fpInitPro=InitPro01; pw.fpReadSign=ReadSign01; pw.fpErase=Erase01; pw.fpWrite=Write01; pw.fpRead=Read01; pw.fpLock=Lock01; pw.fpProOver=ProOver01;}
上傳時(shí)間: 2013-11-12
上傳用戶:gut1234567
1 任務(wù) 設(shè)計(jì)一個文本編輯器。 2 基本要求 1 如圖所示,設(shè)計(jì)一個有菜單欄的編輯窗口,在該窗口可以實(shí)現(xiàn)文本的輸入,利用DEL鍵、BackSpace鍵、Home鍵、End鍵、上下左右光標(biāo)鍵,實(shí)現(xiàn)對輸入文本的全屏幕編輯。 2 實(shí)現(xiàn)文件的新建、打開、保存、另存為與退出等功能。 包含 設(shè)計(jì)思路、技術(shù)報(bào)告、和不同階段的設(shè)計(jì)源代碼 擴(kuò)展要求 1 要求使用彩色組和背景顏色來設(shè)計(jì)界面顏色。 2 模擬一些著名編輯器(如Source Insight)的其它功能,如比較詳細(xì)的幫助功能,對特定的命令或保留字(如C語言或匯編語言)能顯示不同的醒目顏色。 3 自己參考其它編輯器進(jìn)行發(fā)揮。
上傳時(shí)間: 2013-11-03
上傳用戶:lhc9102
這是我用課余時(shí)間做的一個Flash播放器,在網(wǎng)上看到一些網(wǎng)友做了一些自已的播放器,可是還要注冊,(對于我們這些窮學(xué)生來說哪有錢呀^_^ )于是自已做了一 個,她不僅是完全免費(fèi),而且還代碼公開。希望廣大網(wǎng)友支持自由軟件。里面有一個BUG不得不說出來,就是對多個文件進(jìn)行播放時(shí),必須遠(yuǎn)擇多個文件,則否會出錯, 由于上學(xué)期馬哲沒及格,這學(xué)期要補(bǔ)考,所以沒有花時(shí)間來修正它。對VB感興趣的朋友們自已改改吧。*_*, 如果有什么其他的建議,歡迎來信:fhjeipje@163.com
上傳時(shí)間: 2015-03-25
上傳用戶:shinesyh
能像Windows操作系統(tǒng)的資源管理器一樣將資源按目錄(文件夾文件)的形式組織起來。 考慮到資源建設(shè)的階段性,資源應(yīng)是按一定的規(guī)模進(jìn)行打包,形成一個個中小規(guī)模的相對獨(dú)立的“資源庫”。 鑒于資源庫名目繁多和容量大的特點(diǎn),資源的存儲存在多樣化問題,系統(tǒng)應(yīng)該能夠解釋各種存儲格式和存儲方式的資源 資源庫應(yīng)該能夠滿足資源庫逐步完善、長期建設(shè)的特點(diǎn),并且能不斷擴(kuò)展資源庫中的內(nèi)容。 鑒于教師資源分科目的特點(diǎn),系統(tǒng)應(yīng)能提供教師感興趣的資源。例如,語文老師對語文相關(guān)教育資源感興趣,而對數(shù)學(xué)等教學(xué)素材極少查看,這時(shí)系統(tǒng)應(yīng)能讓該語文老師只看到語文等相關(guān)的感興趣的資源,而隱藏?cái)?shù)學(xué)等科目的相關(guān)教育資源
標(biāo)簽: Windows 資源 操作系統(tǒng) 資源管理器
上傳時(shí)間: 2014-01-13
上傳用戶:daguda
外國人寫的調(diào)度器,比rtos簡單,感興趣的朋友可以借鑒
標(biāo)簽: 調(diào)度
上傳時(shí)間: 2015-04-21
上傳用戶:a6697238
目錄語音電話高級編程是一個通過調(diào)制解調(diào)器來進(jìn)行語音電話開發(fā)的程序,相信讀者一定會感興趣。 本程序需要調(diào)制解調(diào)器的支持,否則可能失敗 需要調(diào)制解調(diào)器支持語音傳輸,本程序在子彈頭調(diào)制解調(diào)器下調(diào)試通過,通話時(shí)通過麥克風(fēng)和話筒來進(jìn)行。
標(biāo)簽: 語音電話 目錄 解調(diào)器 程序
上傳時(shí)間: 2013-12-19
上傳用戶:kelimu
在一個多人連線伺服器中,我們要有一個伺服端執(zhí)行緒負(fù)責(zé)傾聽是否有客戶端連線,如果有客戶端連線,就指派一個客戶端執(zhí)行緒專門應(yīng)付這個客戶端連線,並在客戶端佇列中記錄它,然後進(jìn)入下一個傾聽。 一個客戶端執(zhí)行緒的工作,就是讀取客戶連線端的使用者輸入訊息,它不負(fù)責(zé)回應(yīng)訊息,而是將讀到的訊息加入訊息佇列中,此外在我們的範(fàn)例中,客戶端執(zhí)行緒也負(fù)責(zé)自己的連線狀態(tài),如果使用者中斷連線,客戶端執(zhí)行緒會負(fù)責(zé)將自己從客戶端佇列中清除。 廣播執(zhí)行緒負(fù)責(zé)取出訊息佇列中的訊息,然後將之一一傳送訊息給客戶端佇列中尚存在的客戶端執(zhí)行緒。
標(biāo)簽: 伺服器
上傳時(shí)間: 2015-05-22
上傳用戶:wweqas
一)需求 很多情況下我們需要知道字節(jié)流的編碼,比如 1) 使用編輯器打開文本文件的時(shí)候,編輯器需要識別文本文件的各種編碼 2) 上傳文件后,分析上傳文件字節(jié)流需要知道它的編碼 3) 讀取某個web頁面的源代碼,并要輸出時(shí),需要知道正確的編碼才能輸出正確的內(nèi)容 ..............
上傳時(shí)間: 2013-12-20
上傳用戶:dsgkjgkjg
linux下的內(nèi)核級調(diào)試器,對在linux下調(diào)試程序感興趣的朋友不妨一試
標(biāo)簽: linux 內(nèi)核 調(diào)試器
上傳時(shí)間: 2013-12-20
上傳用戶:ljt101007
? Java函數(shù)速查 你能很快的查到你要的函數(shù) DataBinding類 代表數(shù)據(jù)源字段和組件屬性之間一個單獨(dú)的綁定。 package com.ms.wfc.data.ui public class DataBinding implements IConstructable 說明 DataBinder控件使用該類來表示數(shù)據(jù)源中的每一個綁定。 請參閱:《Microsoft Visual J++ 6.0 程序員指南》第18章“WFC中的數(shù)據(jù)綁定”。 構(gòu)造器 DataBinding.DataBinding 創(chuàng)建一個DataBinding對象。 語法 public DataBinding () public DataBinding ( IComponent target, String propertyName,String fieldName ) public DataBinding ( IComponent target, String propertyName,String fieldName, IDataFormat format )
標(biāo)簽: DataBinding package Java data
上傳時(shí)間: 2013-12-20
上傳用戶:TRIFCT
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1