1、資料位寬時間(etu)計算程式
前面已經說過,資料位寬是cpu卡程式設計中非常重要的一環,涉及到資料讀寫的可靠性和穩定性。下面這段程式就是在iar環境下,基於msp430微控制器c語言的資料位寬計算程式。
/***********************************
函式名稱:delay1xetu
函式功能:延時n個資料位寬的時間
輸入引數:idelay
輸出引數:無
描述:cpu卡的資料位寬=372/f,,f是處理cpu卡時的時鐘頻率,
即延時372個時鐘週期,f=2mhz。
***********************************/
void delay1xetu(unsigned int idelay)
}/*******************************************
函式名稱:delay1etu
函式功能:延時乙個資料位寬的時間
輸入引數:無
輸出引數:無
描述:cpu卡的資料位寬=372/f,f是處理cpu卡時的時鐘頻率,
即延時372個時鐘週期
*******************************************/
void delay1etu(void)
while(icounter<=71);
_nop();
//_nop();
}/*******************************************
函式名稱:delay05xetu
函式功能:延時n*0.5個資料位寬的時間
輸入引數:無
輸出引數:延時時間值
描述:延時n*186個時鐘週期
*******************************************/
void delay05xetu(void)
while(icounter<=34);
}
CPU卡程式設計例項(十四)終端向CPU卡傳送資料
終端向cpu卡傳送乙個位元組函式 函式名稱 cardsendchar 函式功能 向cpu卡傳送一位元組 入口引數 csendchar,要傳送的位元組 出口引數 無 描述 傳送10位,第一位起始位 始終為低 第10位是校驗位,最多發3次,void cardsendchar unsigned char ...
CPU卡程式設計例項(二十二)CPU卡內部認證
函式名稱 cardinsideverify 函式功能 卡內部認證 輸入引數 pcrecardrand 卡產生的隨機數,keyid 認證金鑰識別符號 輸出引數 pcrecedatabuff,加密後的資料 描述 發命令頭 發命令資料 發 取響應資料 判斷是否正確 unsigned char cardin...
CPU卡程式設計例項(二)軟體設計
2.1.工作原理 cpu卡在資料傳輸方式上與儲存卡是不同的,它採用的是序列非同步半雙工方式,所以在對cpu卡進行讀寫設計時,首先應計算出在i o線上資料的位寬,以保證通訊的正確 其次,由於採用的是msp430f系列微控制器,它採用了dco技術,其向系統提供的時鐘頻率是可調的,故應根據系統要求的時鐘頻...