本人在同stm32晶元模擬iso7816協議的時候,在釋放觸點的函式中發現其中乙個被配製成復用開漏的io管腳怎麼都無法拉低。其**如下:
//釋放智慧卡觸腳
void psam_deinit()
」經過本人反覆實驗,發現將「釋放usart與gpio管腳」的兩行**與"失能gpio,usart和復用時鐘"的兩行**順序顛倒後,其io口能夠正確被拉低。
全域性介面位元組的內容
8.5.1 總則
本條規定了全域性介面位元組的內容。iso/iec jtc1 sc17保留了所有未在本條中定義的全域性位元組以及雖定義了但未使用的整數值以備將來使用。
本條規定了td(i-1)中t=15的第一次出現後i>2的位元組ta(1) tb(1)tc(1) ta(2) tb(2)和ta(i)。這些位元組以二進位制的形式對無符號整數fi、di、ii、pi1、n、pi2、xi和ui進行編碼,這些無符號整數等於或用於計算此後出現的引數f、d、n、p、i、x和u的值。
— 如果存在,為正確處理任一協議應解釋該位元組。
— 如果該位元組不存在,則當需要時,相關引數使用預設值。
ta(1)**(見8.5.2)
— fi,位b8到b5 上的時鐘率轉換因子的引用,見表7。
— di,位b4到b7上波特率校正因子的引用,見表8。
tb(1)b8=0**處(見8.5.4)
— ii,位b7 b6上最大程式設計電流的引用,見表9。
— pi1,位b5到b1上程式設計電壓的值。
注:介面裝置可以忽略tb(1)的位b8。
tc(1)**(見8.5.3)
— n,計算八位額外保護時間的引用。
ta(2)是專用模式位元組(見8.5.7和8.6)
tb(2)用八位上的程式設計電壓值pi2編碼以代替pi1(見8.5.4)。
ta(i)在td(i-1)(i>2)中的t=15的第乙個出現後編碼(見8.5.5和8.5.6)
— xi,位b8b7上時鐘停止指示的參考,見表10。
— ui,位b6到b1上級別指示的參考,見表11。
注:符合iso/iec 7816-3:1989的介面裝置在td(i-1) (i>2)中的t=15後正常忽略ta(i) tb(i) tc(i)所不支援的協議的介面位元組特性。
8.5.2傳輸因子f和d
引數f和d分別是時鐘率轉換因子和波特率調整因子。在電路輸入/輸出上使用的etu依賴於傳輸因子f和d的實際值。etu應等於f/d時鐘週期。
1 etu = f/d×1/f
頻率f的最小值應當為1mhz。最大值以fi的函式的形式在表7中給出。預設最大值是5mhz。
為計算etu,f和d因子對應當採用下面三對值:
— fi和di,按照表7和8在ta(1)中由卡指示的值;如果ta(1)不存在,則fi和di設為預設值;
— fd和dd,預設值為372和1;
— fn和dn,在fd到fi和dd到di範圍裡成功的pps交換所協商的值。
在復位應答期間,應用fd和dd。復位應答後,f和d的值取決於操作模式(見10.6)。
— 協商模式中,fd和dd應繼續應用直到pps交換成功完成(見9.4)。pps成功交換後,fn和dn立即應用。
— 專用模式中(見8.6.2)
h 如果ta(2)中b5=0,復位應答成功完成之後立即應用fi和di。
h 如果ta(2)中b5=1,使用隱含值。
8.5.3額外保護時間n
引數n是用於從介面裝置到傳送字元的卡的額外保護時間。從卡傳送字元到介面裝置不用額外保護時間。預設值n=0。
在0到254範圍裡,在準備接收下一字元前,n指明卡要求從前乙個字元(也是由卡或介面裝置傳送的)上沿的後續延遲。
12 etu + (q×n/f)
公式中,q取兩個值中的乙個:
— f/d,即,用於計算etu的值,當t=15不存在於復位應答中時,
— fi/di,當t=15在復位應答中時。
n=255指明在傳輸協議期間,兩個連續前沿之間的最小延遲在傳輸的兩個方向是一致。這個最小延遲值是
— t=0時,12etu
— t=1時,11etu
表7 — fi,指明的時鐘率轉換因子的值
fi0000
0001
0010
0011
0100
0101
0110
0111
fi372
372
558
7441116
1488
1860
rfuf (max) mhz45
68121620-
rfu=留作未來使用
fi1000
1001
1010
1011
1100
1101
1110
1111
firfu
512768
1024
1536
2048
rfurfu
f (max) mhz-5
7,510
1520--
表8 — 指明的波特率校正引數的值
di0000
0001
0010
0011
0100
0101
0110
0111
dirfu12
481632
rfu
di1000
1001
1010
1011
1100
1101
1110
1111
di12
20rfu
rfurfu
rfurfu
rfu
stm32軟體模擬iic
iic inter integrated circuit 匯流排是一種由philips公司在80年代開發的兩線式序列匯流排,用於連線微控制器及其外圍裝置。它是半雙工通訊方式。iic匯流排最主要的優點是其簡單性和有效性。由於介面直接在元件之上,因此iic匯流排占用的空間非常小,減少了電路板的空間和晶元...
stm32模擬輸出PPM訊號
ppm訊號週期為20ms,分成10分代表10個通道訊號,也就是2ms代表乙個訊號。0.5ms代表乙個通道訊號的開始,所以0.5ms 2ms為通道範圍控制。led p1 a 8 io口初始化,這裡就不介紹了,推挽輸出 u16 count 0 u16 pwm count 1000 總計數 週期20ms,...
STM32模擬IIC讀寫EEPROM
本人在最近的專案中,需要讀寫eeprom裡面的內容並分析。該eeprom晶元為microchip technology公司的24lc02b系列。用stm32f103晶元做主機通過iic介面去和它通訊。首先介紹晶元的基本特性,容量為 256 x 8bit 2kbit共有256位元組 位址和資料都是8b...