亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

讀卡<b>模塊</b>

  • MSP430系列flash型超低功耗16位單片機

    MSP430系列flash型超低功耗16位單片機MSP430系列單片機在超低功耗和功能集成等方面有明顯的特點。該系列單片機自問世以來,頗受用戶關注。在2000年該系列單片機又出現(xiàn)了幾個FLASH型的成員,它們除了仍然具備適合應用在自動信號采集系統(tǒng)、電池供電便攜式裝置、超長時間連續(xù)工作的設備等領域的特點外,更具有開發(fā)方便、可以現(xiàn)場編程等優(yōu)點。這些技術特點正是應用工程師特別感興趣的。《MSP430系列FLASH型超低功耗16位單片機》對該系列單片機的FLASH型成員的原理、結構、內(nèi)部各功能模塊及開發(fā)方法與工具作詳細介紹。MSP430系列FLASH型超低功耗16位單片機 目錄  第1章 引 論1.1 MSP430系列單片機1.2 MSP430F11x系列1.3 MSP430F11x1系列1.4 MSP430F13x系列1.5 MSP430F14x系列第2章 結構概述2.1 引 言2.2 CPU2.3 程序存儲器2.4 數(shù)據(jù)存儲器2.5 運行控制2.6 外圍模塊2.7 振蕩器與時鐘發(fā)生器第3章 系統(tǒng)復位、中斷及工作模式3.1 系統(tǒng)復位和初始化3.1.1 引 言3.1.2 系統(tǒng)復位后的設備初始化3.2 中斷系統(tǒng)結構3.3 MSP430 中斷優(yōu)先級3.3.1 中斷操作--復位/NMI3.3.2 中斷操作--振蕩器失效控制3.4 中斷處理 3.4.1 SFR中的中斷控制位3.4.2 中斷向量地址3.4.3 外部中斷3.5 工作模式3.5.1 低功耗模式0、1(LPM0和LPM1)3.5.2 低功耗模式2、3(LPM2和LPM3)3.5.3 低功耗模式4(LPM4)22 3.6 低功耗應用的要點23第4章 存儲空間4.1 引 言4.2 存儲器中的數(shù)據(jù)4.3 片內(nèi)ROM組織4.3.1 ROM 表的處理4.3.2 計算分支跳轉和子程序調用4.4 RAM 和外圍模塊組織4.4.1 RAM4.4.2 外圍模塊--地址定位4.4.3 外圍模塊--SFR4.5 FLASH存儲器4.5.1 FLASH存儲器的組織4.5.2 FALSH存儲器的數(shù)據(jù)結構4.5.3 FLASH存儲器的控制寄存器4.5.4 FLASH存儲器的安全鍵值與中斷4.5.5 經(jīng)JTAG接口訪問FLASH存儲器39第5章 16位CPU5.1 CPU寄存器5.1.1 程序計數(shù)器PC5.1.2 系統(tǒng)堆棧指針SP5.1.3 狀態(tài)寄存器SR5.1.4 常數(shù)發(fā)生寄存器CG1和CG25.2 尋址模式5.2.1 寄存器模式5.2.2 變址模式5.2.3 符號模式5.2.4 絕對模式5.2.5 間接模式5.2.6 間接增量模式5.2.7 立即模式5.2.8 指令的時鐘周期與長度5.3 指令組概述5.3.1 雙操作數(shù)指令5.3.2 單操作數(shù)指令5.3.3 條件跳轉5.3.4 模擬指令的簡短格式5.3.5 其他指令第6章 硬件乘法器6.1 硬件乘法器6.2 硬件乘法器操作6.2.1 無符號數(shù)相乘(16位×16位、16位×8位、8位×16位、8位×8位)6.2.2 有符號數(shù)相乘(16位×16位、16位×8位、8位×16位、8位×8位)6.2.3 無符號數(shù)乘加(16位×16位、16位×8位、8位×16位、8位×8位)6.2.4 有符號數(shù)乘加(16位×16位、16位×8位、8位×16位、8位×8位)6.3 硬件乘法器寄存器6.4 硬件乘法器的軟件限制6.4.1 尋址模式6.4.2 中斷程序6.4.3 MACS第7章 基礎時鐘模塊7.1 基礎時鐘模塊7.2 LFXT1與XT27.2.1 LFXT1振蕩器7.2.2 XT2振蕩器7.2.3 振蕩器失效檢測7.2.4 XT振蕩器失效時的DCO7.3 DCO振蕩器7.3.1 DCO振蕩器的特性7.3.2 DCO調整器7.4 時鐘與運行模式7.4.1 由PUC啟動7.4.2 基礎時鐘調整7.4.3 用于低功耗的基礎時鐘特性7.4.4 選擇晶振產(chǎn)生MCLK7.4.5 時鐘信號的同步7.5 基礎時鐘模塊控制寄存器7.5.1 DCO時鐘頻率控制7.5.2 振蕩器與時鐘控制寄存器7.5.3 SFR控制位第8章 輸入輸出端口8.1 引 言8.2 端口P1、P28.2.1 P1、P2的控制寄存器8.2.2 P1、P2的原理8.2.3 P1、P2的中斷控制功能8.3 端口P3、P4、P5和P68.3.1 端口P3、P4、P5和P6的控制寄存器8.3.2 端口P3、P4、P5和P6的端口邏輯第9章 看門狗定時器WDT9.1 看門狗定時器9.2 WDT寄存器9.3 WDT中斷控制功能9.4 WDT操作第10章 16位定時器Timer_A10.1 引 言10.2 Timer_A的操作10.2.1 定時器模式控制10.2.2 時鐘源選擇和分頻10.2.3 定時器啟動10.3 定時器模式10.3.1 停止模式10.3.2 增計數(shù)模式10.3.3 連續(xù)模式10.3.4 增/減計數(shù)模式10.4 捕獲/比較模塊10.4.1 捕獲模式10.4.2 比較模式10.5 輸出單元10.5.1 輸出模式10.5.2 輸出控制模塊10.5.3 輸出舉例10.6 Timer_A的寄存器10.6.1 Timer_A控制寄存器TACTL10.6.2 Timer_A寄存器TAR10.6.3 捕獲/比較控制寄存器CCTLx10.6.4 Timer_A中斷向量寄存器10.7 Timer_A的UART應用 第11章 16位定時器Timer_B11.1 引 言11.2 Timer_B的操作11.2.1 定時器長度11.2.2 定時器模式控制11.2.3 時鐘源選擇和分頻11.2.4 定時器啟動11.3 定時器模式11.3.1 停止模式11.3.2 增計數(shù)模式11.3.3 連續(xù)模式11.3.4 增/減計數(shù)模式11.4 捕獲/比較模塊11.4.1 捕獲模式11.4.2 比較模式11.5 輸出單元11.5.1 輸出模式11.5.2 輸出控制模塊11.5.3 輸出舉例11.6 Timer_B的寄存器11.6.1 Timer_B控制寄存器TBCTL11.6.2 Timer_B寄存器TBR11.6.3 捕獲/比較控制寄存器CCTLx11.6.4 Timer_B中斷向量寄存器第12章 USART通信模塊的UART功能12.1 異步模式12.1.1 異步幀格式12.1.2 異步通信的波特率發(fā)生器12.1.3 異步通信格式12.1.4 線路空閑多機模式12.1.5 地址位多機通信格式12.2 中斷和中斷允許12.2.1 USART接收允許12.2.2 USART發(fā)送允許12.2.3 USART接收中斷操作12.2.4 USART發(fā)送中斷操作12.3 控制和狀態(tài)寄存器12.3.1 USART控制寄存器UCTL12.3.2 發(fā)送控制寄存器UTCTL12.3.3 接收控制寄存器URCTL12.3.4 波特率選擇和調整控制寄存器12.3.5 USART接收數(shù)據(jù)緩存URXBUF12.3.6 USART發(fā)送數(shù)據(jù)緩存UTXBUF12.4 UART模式,低功耗模式應用特性12.4.1 由UART幀啟動接收操作12.4.2 時鐘頻率的充分利用與UART的波特率12.4.3 多處理機模式對節(jié)約MSP430資源的支持12.5 波特率計算 第13章 USART通信模塊的SPI功能13.1 USART同步操作13.1.1 SPI模式中的主模式13.1.2 SPI模式中的從模式13.2 中斷與控制功能 13.2.1 USART接收/發(fā)送允許位及接收操作13.2.2 USART接收/發(fā)送允許位及發(fā)送操作13.2.3 USART接收中斷操作13.2.4 USART發(fā)送中斷操作13.3 控制與狀態(tài)寄存器13.3.1 USART控制寄存器13.3.2 發(fā)送控制寄存器UTCTL13.3.3 接收控制寄存器URCTL13.3.4 波特率選擇和調制控制寄存器13.3.5 USART接收數(shù)據(jù)緩存URXBUF13.3.6 USART發(fā)送數(shù)據(jù)緩存UTXBUF第14章 比較器Comparator_A14.1 概 述14.2 比較器A原理14.2.1 輸入模擬開關14.2.2 輸入多路切換14.2.3 比較器14.2.4 輸出濾波器14.2.5 參考電平發(fā)生器14.2.6 比較器A中斷電路14.3 比較器A控制寄存器14.3.1 控制寄存器CACTL114.3.2 控制寄存器CACTL214.3.3 端口禁止寄存器CAPD14.4 比較器A應用14.4.1 模擬信號在數(shù)字端口的輸入14.4.2 比較器A測量電阻元件14.4.3 兩個獨立電阻元件的測量系統(tǒng)14.4.4 比較器A檢測電流或電壓14.4.5 比較器A測量電流或電壓14.4.6 測量比較器A的偏壓14.4.7 比較器A的偏壓補償14.4.8 增加比較器A的回差第15章 模數(shù)轉換器ADC1215.1 概 述15.2 ADC12的工作原理及操作15.2.1 ADC內(nèi)核15.2.2 參考電平15.3 模擬輸入與多路切換15.3.1 模擬多路切換15.3.2 輸入信號15.3.3 熱敏二極管的使用15.4 轉換存儲15.5 轉換模式15.5.1 單通道單次轉換模式15.5.2 序列通道單次轉換模式15.5.3 單通道重復轉換模式15.5.4 序列通道重復轉換模式15.5.5 轉換模式之間的切換15.5.6 低功耗15.6 轉換時鐘與轉換速度15.7 采 樣15.7.1 采樣操作15.7.2 采樣信號輸入選擇15.7.3 采樣模式15.7.4 MSC位的使用15.7.5 采樣時序15.8 ADC12控制寄存器15.8.1 控制寄存器ADC12CTL0和ADC12CTL115.8.2 轉換存儲寄存器ADC12MEMx15.8.3 控制寄存器ADC12MCTLx15.8.4 中斷標志寄存器ADC12IFG.x和中斷允許寄存器ADC12IEN.x15.8.5 中斷向量寄存器ADC12IV15.9 ADC12接地與降噪第16章 FLASH型芯片的開發(fā)16.1 開發(fā)系統(tǒng)概述16.1.1 開發(fā)技術16.1.2 MSP430系列的開發(fā)16.1.3 MSP430F系列的開發(fā)16.2 FLASH型的FET開發(fā)方法16.2.1 MSP430芯片的JTAG接口16.2.2 FLASH型仿真工具16.3 FLASH型的BOOT ROM16.3.1 標準復位過程和進入BSL過程16.3.2 BSL的UART協(xié)議16.3.3 數(shù)據(jù)格式16.3.4 退出BSL16.3.5 保護口令16.3.6 BSL的內(nèi)部設置和資源附錄A 尋址空間附錄B 指令說明B.1 指令匯總B.2 指令格式B.3 不增加ROM開銷的模擬指令B.4 指令說明(字母順序)B.5 用幾條指令模擬的宏指令附錄C MSP430系列單片機參數(shù)表附錄D MSP430系列單片機封裝形式附錄E MSP430系列器件命名

    標簽: flash MSP 430 超低功耗

    上傳時間: 2014-04-28

    上傳用戶:sssnaxie

  • crc任意位生成多項式 任意位運算 自適應算法 循環(huán)冗余校驗碼(CRC

    crc任意位生成多項式 任意位運算 自適應算法 循環(huán)冗余校驗碼(CRC,Cyclic Redundancy Code)是采用多項式的 編碼方式,這種方法把要發(fā)送的數(shù)據(jù)看成是一個多項式的系數(shù) ,數(shù)據(jù)為bn-1bn-2…b1b0 (其中為0或1),則其對應的多項式為: bn-1Xn-1+bn-2Xn-2+…+b1X+b0 例如:數(shù)據(jù)“10010101”可以寫為多項式 X7+X4+X2+1。 循環(huán)冗余校驗CRC 循環(huán)冗余校驗方法的原理如下: (1) 設要發(fā)送的數(shù)據(jù)對應的多項式為P(x)。 (2) 發(fā)送方和接收方約定一個生成多項式G(x),設該生成多項式 的最高次冪為r。 (3) 在數(shù)據(jù)塊的末尾添加r個0,則其相對應的多項式為M(x)=XrP(x) 。(左移r位) (4) 用M(x)除以G(x),獲得商Q(x)和余式R(x),則 M(x)=Q(x) ×G(x)+R(x)。 (5) 令T(x)=M(x)+R(x),采用模2運算,T(x)所對應的數(shù)據(jù)是在原數(shù) 據(jù)塊的末尾加上余式所對應的數(shù)據(jù)得到的。 (6) 發(fā)送T(x)所對應的數(shù)據(jù)。 (7) 設接收端接收到的數(shù)據(jù)對應的多項式為T’(x),將T’(x)除以G(x) ,若余式為0,則認為沒有錯誤,否則認為有錯。

    標簽: crc CRC 多項式 位運算

    上傳時間: 2014-11-28

    上傳用戶:宋桃子

  • crc任意位生成多項式 任意位運算 自適應算法 循環(huán)冗余校驗碼(CRC

    crc任意位生成多項式 任意位運算 自適應算法 循環(huán)冗余校驗碼(CRC,Cyclic Redundancy Code)是采用多項式的 編碼方式,這種方法把要發(fā)送的數(shù)據(jù)看成是一個多項式的系數(shù) ,數(shù)據(jù)為bn-1bn-2…b1b0 (其中為0或1),則其對應的多項式為: bn-1Xn-1+bn-2Xn-2+…+b1X+b0 例如:數(shù)據(jù)“10010101”可以寫為多項式 X7+X4+X2+1。 循環(huán)冗余校驗CRC 循環(huán)冗余校驗方法的原理如下: (1) 設要發(fā)送的數(shù)據(jù)對應的多項式為P(x)。 (2) 發(fā)送方和接收方約定一個生成多項式G(x),設該生成多項式 的最高次冪為r。 (3) 在數(shù)據(jù)塊的末尾添加r個0,則其相對應的多項式為M(x)=XrP(x) 。(左移r位) (4) 用M(x)除以G(x),獲得商Q(x)和余式R(x),則 M(x)=Q(x) ×G(x)+R(x)。 (5) 令T(x)=M(x)+R(x),采用模2運算,T(x)所對應的數(shù)據(jù)是在原數(shù) 據(jù)塊的末尾加上余式所對應的數(shù)據(jù)得到的。 (6) 發(fā)送T(x)所對應的數(shù)據(jù)。 (7) 設接收端接收到的數(shù)據(jù)對應的多項式為T’(x),將T’(x)除以G(x) ,若余式為0,則認為沒有錯誤,否則認為有錯

    標簽: crc CRC 多項式 位運算

    上傳時間: 2014-01-16

    上傳用戶:hphh

  • usb4711A數(shù)據(jù)采集卡的AD轉換通道程序

    usb4711A數(shù)據(jù)采集卡的AD轉換通道程序,用于數(shù)據(jù)采集卡進行模數(shù)轉換

    標簽: 4711A 4711 usb AD轉換

    上傳時間: 2016-06-17

    上傳用戶:yan2267246

  • 12345

    /****************temic*********t5557***********************************/    #include   <at892051.h>     #include   <string.h>    #include   <intrins.h>     #include   <stdio.h>     #define    uchar    unsigned char     #define    uint     unsigned int     #define    ulong    unsigned long     //STC12C2051AD的SFR定義     sfr  WDT_CONTR = 0xe1;//stc2051的看門狗??????     /**********全局常量************/    //寫卡的命令     #define    write_command0       0//寫密碼     #define    write_command1       1//寫配置字     #define    write_command2       2//密碼寫數(shù)據(jù)     #define    write_command3       3//喚醒     #define    write_command4       4//停止命令     #define    TRUE       1     #define    FALSE      0     #define    OK         0     #define    ERROR      255     //讀卡的時間參數(shù)us     #define ts_min          250//270*11.0592/12=249//取近似的整數(shù)     #define ts_max          304//330*11.0592/12=304     #define t1_min          73//90*11.0592/12=83:-10調整     #define t1_max          156//180*11.0592/12=166     #define t2_min          184//210*11.0592/12=194     #define t2_max          267//300*11.0592/12=276     //***********不采用中斷處理:采用查詢的方法讀卡時關所有中斷****************/     sbit p_U2270B_Standby = P3^5;//p_U2270B_Standby PIN=13     sbit p_U2270B_CFE = P3^3;//p_U2270B_CFE     PIN=6     sbit p_U2270B_OutPut = P3^7;//p_U2270B_OutPut  PIN=2     sbit wtd_sck = P1^7;//SPI總線     sbit wtd_si = P1^3;    sbit wtd_so = P1^2;    sbit iic_data = P1^2;//lcd IIC     sbit iic_clk = P1^7;    sbit led_light = P1^6;//測試綠燈     sbit led_light1 = P1^5;//測試紅燈     sbit led_light_ok  = P1^1;//讀卡成功標志     sbit fengmingqi = P1^5;    /***********全局變量************************************/       uchar data Nkey_a[4] = {0xA0, 0xA1, 0xA2, 0xA3};//初始密碼             //uchar idata card_snr[4];   //配置字     uchar data bankdata[28] = {1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7};     //存儲卡上用戶數(shù)據(jù)(1-7)7*4=28     uchar data cominceptbuff[6] = {1,2,3,4,5,6};//串口接收數(shù)組ram     uchar command; //第一個命令     uchar command1;//     //uint  temp;     uchar j,i;    uchar myaddr = 8;    //uchar ywqz_count,time_count;             //ywqz jishu:     uchar bdata DATA;    sbit BIT0 = DATA^0;    sbit BIT1 = DATA^1;    sbit BIT2 = DATA^2;    sbit BIT3 = DATA^3;    sbit BIT4 = DATA^4;    sbit BIT5 = DATA^5;    sbit BIT6 = DATA^6;    sbit BIT7 = DATA^7;    uchar bdata DATA1;    sbit BIT10 = DATA1^0;    sbit BIT11 = DATA1^1;    sbit BIT12 = DATA1^2;    sbit BIT13 = DATA1^3;    sbit BIT14 = DATA1^4;    sbit BIT15 = DATA1^5;    sbit BIT16 = DATA1^6;    sbit BIT17 = DATA1^7;    bit i_CurrentLevel;//i_CurrentLevel  BIT 00H(Saves current level of OutPut pin of U2270B)     bit timer1_end;    bit read_ok = 0;    //緩存定時值,因用同一個定時器     union HLint { uint W;    struct   {    uchar H;uchar L;   }   B; };//union HLint idata a     union HLint data a;    //緩存定時值,因用同一個定時器     union HLint0 { uint W;    struct {   uchar H;   uchar L; } B; };//union HLint idata a     union HLint0 data b;    /**********************函數(shù)原型*****************/    //讀寫操作     void f_readcard(void);//全部讀出1~7 AOR喚醒     void f_writecard(uchar x);//根據(jù)命令寫不同的內(nèi)容和操作     void f_clearpassword(void);//清除密碼     void f_changepassword(void);//修改密碼     //功能子函數(shù)     void write_password(uchar data *data p);//寫初始密碼或數(shù)據(jù)     void write_block(uchar x,uchar data *data p);//不能用通用指針     void write_bit(bit x);//寫位     /*子函數(shù)區(qū)*****************************************************/    void delay_2(uint x)    //延時,時間x*10us@12mhz,最小20us@12mhz     {    x--; x--;    while(x)    {      _nop_();      _nop_();      x--;    }    _nop_();//WDT_CONTR=0X3C;不能頻繁的復位     _nop_();    }    /////////////////////////////////////////////////////////////////////     void initial(void)    {    SCON = 0x50; //串口方式1,允許接收     //SCON  =0x50;     //01010000B:10位異步收發(fā),波特率可變,SM2=0不用接收到有效停止位才RI=1,     //REN=1允許接收     TMOD = 0x21; //定時器1 定時方式2(8位),定時器0 定時方式1(16位)     TCON = 0x40; //設定時器1 允許開始計時(IT1=1)     TH1 = 0xfD;  //FB 18.432MHz 9600 波特率     TL1 = 0xfD;  //fd 11.0592 9600     IE = 0X90;     //EA=ES=1     TR1 = 1;     //啟動定時器     WDT_CONTR = 0x3c;//使能看門狗     p_U2270B_Standby = 0;//單電源     PCON = 0x00;    IP = 0x10;//uart you xian XXXPS PT1 PX1 PT0 PX0     led_light1 = 1;    led_light = 0;    p_U2270B_OutPut = 1;    }    /************************************************/    void f_readcard()//讀卡     {    EA = 0;//全關,防止影響跳變的定時器計時     WDT_CONTR = 0X3C;//喂狗     p_U2270B_CFE = 1;//      delay_2(232);  //>2.5ms            /*   //   aor    用喚醒功能來防碰撞   p_U2270B_CFE = 0; delay_2(18);//start gap>150us   write_bit(1);//10=操作碼讀0頁   write_bit(0);       write_password(&bankdata[24]);//密碼block7   p_U2270B_CFE =1 ;//    delay_2(516);//編程及確認時間5.6ms   */    WDT_CONTR = 0X3C;//喂狗     led_light = 0;    b.W = 0;    while(!(read_ok == 1))    {             //while(p_U2270B_OutPut);//等一個穩(wěn)定的低電平?超時判斷?              while(!p_U2270B_OutPut);//等待上升沿的到來同步信號檢測1       TR0 = 1;      //deng xia jiang       while(p_U2270B_OutPut);//等待下降沿       TR0 = 0;   a.B.H = TH0;   a.B.L = TL0;   TH0 = TL0 = 0;   TR0 = 1;//定時器晚啟動10個周期       //同步頭       if((324 < a.W) && (a.W < 353)) ;//檢測同步信號1                  else     {     TR0 = 0;     TH0 = TL0 = 0;     goto read_error;    }      //等待上升沿        while(!p_U2270B_OutPut);   TR0 = 0;   a.B.H = TH0;   a.B.L = TL0;   TH0 = TL0 = 0;   TR0 = 1;//b.N1<<=8;            if(a.B.L < 195);//0.5p       else     {     TR0 = 0;     TH0 = TL0 = 0;     goto read_error;    }      //讀0~7塊的數(shù)據(jù)       for(j = 0;j < 28;j++)      {       //uchar i;                  for(i = 0;i < 16;i++)//8個位        {        //等待下降沿的到來         while(p_U2270B_OutPut);                TR0 = 0;     a.B.H = TH0;     a.B.L = TL0;     TH0 = TL0 = 0;     TR0 = 1;              if(t2_max < a.W/*)&&(a.W < t2_max)*/)//1P          {         b.W >>= 2;//先左移再賦值          b.B.L += 0xc0;                             i++;        }        else if(t1_min < a.B.L/*)&&(a.B.L < t1_max)*/)//0.5p         {         b.W >>= 1;         b.B.L += 0x80;                           }        else      {      TR0 = 0;      TH0 = TL0 = 0;      goto read_error;     }        i++;        while(!p_U2270B_OutPut);//上升                   TR0 = 0;     a.B.H = TH0;     a.B.L = TL0;     TH0 = TL0 = 0;     TR0 = 1;                      if(t2_min < a.W/*)&&(a.W < t2_max)*/)//1P          {         b.W >>= 2;         i++;        }        else if(t1_min < a.B.L/*a.W)&&(a.B.L < t1_max)*/)//0.5P         //else if(!(a.W==0))         {         b.W >>= 1;         //temp+=0x00;          //led_light1=0;led_light=1;delay_2(40000);         }        else      {      TR0 = 0;      TH0 = TL0 = 0;      goto read_error;     }        i++;       }       //取出奇位        DATA = b.B.L;       BIT13 = BIT7;    BIT12 = BIT5;    BIT11 = BIT3;    BIT10 = BIT1;       DATA = b.B.H;       BIT17 = BIT7;    BIT16 = BIT5;    BIT15 = BIT3;    BIT14 = BIT1;       bankdata[j] = DATA1;      }              read_ok = 1;//讀卡完成了     read_error:    _nop_();    }       }    /***************************************************/    void f_writecard(uchar x)//寫卡     {    p_U2270B_CFE = 1;    delay_2(232);  //>2.5ms            //psw=0 standard write     if (x == write_command0)//寫密碼:初始化密碼     {      uchar i;      uchar data *data p;      p = cominceptbuff;      p_U2270B_CFE = 0;   delay_2(31);//start gap>330us       write_bit(1);//寫操作碼1:10       write_bit(0);//寫操作碼0       write_bit(0);//寫鎖定位0       for(i = 0;i < 35;i++)      {       write_bit(1);//寫數(shù)據(jù)位1       }      p_U2270B_CFE = 1;      led_light1 = 0;   led_light = 1;   delay_2(40000);//測試使用       //write_block(cominceptbuff[4],p);       p_U2270B_CFE = 1;      bankdata[20] = cominceptbuff[0];//密碼存入       bankdata[21] = cominceptbuff[1];      bankdata[22] = cominceptbuff[2];      bankdata[23] = cominceptbuff[3];    }    else if (x == write_command1)//配置卡參數(shù):初始化     {      uchar data *data p;      p = cominceptbuff;      write_bit(1);//寫操作碼1:10       write_bit(0);//寫操作碼0       write_bit(0);//寫鎖定位0               write_block(cominceptbuff[4],p);      p_U2270B_CFE=  1;    }    //psw=1  pssword mode     else if(x == write_command2)  //密碼寫數(shù)據(jù)    {      uchar data*data p;      p = &bankdata[24];      write_bit(1);//寫操作碼1:10       write_bit(0);//寫操作碼0       write_password(p);//發(fā)口令       write_bit(0);//寫鎖定位0       p = cominceptbuff;      write_block(cominceptbuff[4],p);//寫數(shù)據(jù)            }    else if(x == write_command3)//aor    //喚醒 {      //cominceptbuff[1]操作碼10 X xxxxxB       uchar data *data p;      p = cominceptbuff;      write_bit(1);//10       write_bit(0);             write_password(p);//密碼       p_U2270B_CFE = 1;//此時數(shù)據(jù)不停的循環(huán)傳出     }    else //停止操作碼     {      write_bit(1);//11       write_bit(1);             p_U2270B_CFE = 1;         }    p_U2270B_CFE = 1;    delay_2(560);//5.6ms     }    /************************************/    void f_clearpassword()//清除密碼     {    uchar data *data p;    uchar i,x;          p = &bankdata[24];//原密碼     p_U2270B_CFE = 0; delay_2(18);//start gap>150us     //操作碼10:10xxxxxxB     write_bit(1);    write_bit(0);              for(x = 0;x < 4;x++)//發(fā)原密碼     {             DATA = *(p++);      for(i = 0;i < 8;i++)      {       write_bit(BIT0);       DATA >>= 1;      }    }    write_bit(0);//鎖定位0:0     p = &cominceptbuff[0];    write_block(0x00,p);//寫新配置參數(shù):pwd=0             //密碼無效:即清除密碼     DATA = 0x00;//停止操作碼00000000B     for(i = 0;i < 2;i++)    {    write_bit(BIT7);    DATA <<= 1;    }    p_U2270B_CFE = 1;       delay_2(560);//5.6ms     }    /*********************************/    void f_changepassword()//修改密碼            {       uchar data *data p;    uchar i,x,addr;    addr = 0x07;//block7     p = &Nkey_a[0];//原密碼     DATA = 0x80;//操作碼10:10xxxxxxB     for(i = 0;i < 2;i++)    {      write_bit(BIT7);      DATA <<= 1;    }    for(x = 0;x < 4;x++)//發(fā)原密碼     {             DATA = *(p++);      for(i = 0;i < 8;i++)      {       write_bit(BIT7);       DATA >>= 1;      }    }    write_bit(0);//鎖定位0:0     p = &cominceptbuff[0];    write_block(0x07,p);//寫新密碼     p_U2270B_CFE = 1;    bankdata[24] = cominceptbuff[0];//密碼存入     bankdata[25] = cominceptbuff[1];    bankdata[26] = cominceptbuff[2];    bankdata[27] = cominceptbuff[3];    DATA = 0x00;//停止操作碼00000000B     for(i = 0;i < 2;i++)    {      write_bit(BIT7);      DATA <<= 1;    }    p_U2270B_CFE = 1;       delay_2(560);//5.6ms     }    /***************************子函數(shù)***********************************/    void write_bit(bit x)//寫一位     {    if(x)    {      p_U2270B_CFE = 1;   delay_2(32);//448*11.0592/120=42延時448us       p_U2270B_CFE = 0;   delay_2(28);//280*11.0592/120=26寫1     }    else    {      p_U2270B_CFE = 1;   delay_2(92);//192*11.0592/120=18       p_U2270B_CFE = 0;   delay_2(28);//280*11.0592/120=26寫0     }    }    /*******************寫一個block*******************/    void write_block(uchar addr,uchar data *data p)    {    uchar i,j;        for(i = 0;i < 4;i++)//block0數(shù)據(jù)     {             DATA = *(p++);      for(j = 0;j < 8;j++)      {       write_bit(BIT0);       DATA >>= 1;      }    }    DATA = addr <<= 5;//0地址     for(i = 0;i < 3;i++)    {      write_bit(BIT7);      DATA <<= 1;    }                   }    /*************************************************/    void write_password(uchar data *data p)    {    uchar i,j;        for(i = 0;i < 4;i++)//     {             DATA = *(p++);      for(j = 0;j < 8;j++)      {       write_bit(BIT0);       DATA >>= 1;      }    }        }   /*************************************************/   void main()    {    initial();    TI = RI = 0;    ES = 1;    EA = 1;  delay_2(28);   //f_readcard();     while(1) {   f_readcard();      //讀卡   f_writecard(command1);  //寫卡    f_clearpassword();   //清除密碼     f_changepassword();    //修改密碼 } }

    標簽: 12345

    上傳時間: 2017-10-20

    上傳用戶:my_lcs

  • 可重構FPGA通訊糾錯進化電路及其實現(xiàn)

    ASIC對產(chǎn)品成本和靈活性有一定的要求.基于MCU方式的ASIC具有較高的靈活性和較低的成本,然而抗干擾性和可靠性相對較低,運算速度也受到限制.常規(guī)ASIC的硬件具有速度優(yōu)勢和較高的可靠性及抗干擾能力,然而不是靈活性較差,就是成本較高.與傳統(tǒng)硬件(CHW)相比,具有一定可配置特性的場可編程門陣列(FPGA)的出現(xiàn),使建立在可再配置硬件基礎上的進化硬件(EHW)成為智能硬件電路設計的一種新方法.作為進化算法和可編程器件技術相結合的產(chǎn)物,可重構FPGA的研究屬于EHW的研究范疇,是研究EHW的一種具體的實現(xiàn)方法.論文認為面向分類的專用類可重構FPGA(ASR-FPGA)的研究,可使可重構電路粒度劃分的針對性更強、設計更易實現(xiàn).論文研究的可重構FPGA的BCH通訊糾錯碼進化電路是一類ASR-FPGA電路的具體方法,具有一定的實用價值.論文所做的工作主要包括:(1)BCH編譯碼電路的設計——求取實驗用BCH碼的生成多項式和校驗多項式及其相應的矩陣并構造實驗用BCH碼;(2)建立基于可重構FPGA的基核——構造具有可重構特性的硬件功能單元,以此作為可重構BCH碼電路的設計基礎;(3)構造實現(xiàn)可重構BCH糾錯碼電路的方法——建立可重構糾錯碼硬件電路算法并進行實驗驗證;(4)在可重構糾錯碼電路基礎上,構造進化硬件控制功能塊的結構,完成各進化RLA控制模塊的驗證和實現(xiàn).課題是將可重構BCH碼的編譯碼電路的實現(xiàn)作為一類ASR-FPGA的研究目標,主要成果是根據(jù)可編程邏輯電路的特點,選擇一種可編程樹的電路模型,并將它作為可重構FPGA電路的基核T;通過對循環(huán)BCH糾錯碼的構造原理和電路結構的研究,將基核模型擴展為能滿足糾錯碼電路需要的糾錯碼基本功能單元T;以T作為再劃分的基本單元,對FPGA進行"格式化",使T規(guī)則排列在FPGA上,通過對T的控制端的不同配置來實現(xiàn)糾錯碼的各個功能單元;在可重構基核的基礎上提出了糾錯碼重構電路的嵌套式GA理論模型,將嵌套式GA的染色體串作為進化硬件描述語言,通過轉換為相應的VHDL語言描述以實現(xiàn)硬件電路;采用RLA模型的有限狀態(tài)機FSM方式實現(xiàn)了可重構糾錯碼電路的EHW的各個控制功能塊.在實驗方面,利用Xilinx FPGA開發(fā)系統(tǒng)中的VHDL語言和電路圖相結合的設計方法建立了循環(huán)糾錯碼基核單元的可重構模型,進行循環(huán)糾錯BCH碼的電路和功能仿真,在Xilinx公司的Virtex600E芯片進行了FPGA實現(xiàn).課題在研究模型上選取的是比較基本的BCH糾錯碼電路,立足于解決基于可重構FPGA核的設計的基本問題.課題的研究成果及其總結的一套ASR-FPGA進化硬件電路的設計方法對實際的進化硬件設計具有一定的實際指導意義,提出的基于專用類基核FPGA電路結構的研究方法為新型進化硬件的器件結構的設計也可提供一種借鑒.

    標簽: FPGA 可重構 通訊 糾錯

    上傳時間: 2013-07-01

    上傳用戶:myworkpost

  • 10Gbits GPON系統(tǒng)的完整,緊湊型APD偏置解決方案

    雪崩光電二極管 (APD) 接收器模塊在光纖通信繫統(tǒng)中被廣泛地使用。APD 模塊包含 APD 和一個信號調理放大器,但並不是完全獨立。它仍舊需要重要的支持電路,包括一個高電壓、低噪聲電源和一個用於指示信號強度的精準電流監(jiān)視器

    標簽: Gbits GPON APD 10

    上傳時間: 2013-11-22

    上傳用戶:zhangyigenius

  • 微電腦型數(shù)學演算式隔離傳送器

    特點: 精確度0.1%滿刻度 可作各式數(shù)學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT類比輸出功能 輸入與輸出絕緣耐壓2仟伏特/1分鐘(input/output/power) 寬范圍交直流兩用電源設計 尺寸小,穩(wěn)定性高

    標簽: 微電腦 數(shù)學演算 隔離傳送器

    上傳時間: 2014-12-23

    上傳用戶:ydd3625

  • 準確的電源排序可防止系統(tǒng)受損

    諸如電信設備、存儲模塊、光學繫統(tǒng)、網(wǎng)絡設備、服務器和基站等許多復雜繫統(tǒng)都采用了 FPGA 和其他需要多個電壓軌的數(shù)字 IC,這些電壓軌必須以一個特定的順序進行啟動和停機操作,否則 IC 就會遭到損壞。

    標簽: 電源排序 防止

    上傳時間: 2014-12-24

    上傳用戶:packlj

  • 微電腦型數(shù)學演算式雙輸出隔離傳送器

    特點(FEATURES) 精確度0.1%滿刻度 (Accuracy 0.1%F.S.) 可作各式數(shù)學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 類比輸出功能(16 bit DAC isolating analog output function) 輸入/輸出1/輸出2絕緣耐壓2仟伏特/1分鐘(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 寬范圍交直流兩用電源設計(Wide input range for auxiliary power) 尺寸小,穩(wěn)定性高(Dimension small and High stability)

    標簽: 微電腦 數(shù)學演算 輸出 隔離傳送器

    上傳時間: 2013-11-24

    上傳用戶:541657925

亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品动漫3d一区二区三区免费版 | 一区二区三区**美女毛片| 最新成人在线| 久久精品视频va| 欧美视频三区在线播放| 国产乱码精品1区2区3区| 99精品视频一区| 久久亚洲精品视频| 国产日韩欧美黄色| 亚洲自拍偷拍网址| 欧美日韩一区国产| 亚洲精品乱码久久久久久黑人| 久久9热精品视频| 国产精品亚洲第一区在线暖暖韩国| av不卡在线看| 久久久成人精品| 国色天香一区二区| 久久人91精品久久久久久不卡 | 欧美激情网站在线观看| 黑人巨大精品欧美一区二区小视频| 亚洲一区二区三区四区视频| 欧美揉bbbbb揉bbbbb| 在线视频亚洲一区| 国产精品久久一区二区三区| 亚洲欧美中文另类| 国内精品久久久久久久影视蜜臀| 欧美一区2区三区4区公司二百| 国产欧美日韩不卡| 久久综合999| 99re6热在线精品视频播放速度| 国产精品成人免费视频| 午夜精品在线观看| 亚洲国产婷婷香蕉久久久久久99| 欧美国产日韩精品免费观看| 亚洲视频一区二区| 尤物精品在线| 国产精品美女主播| 免费欧美网站| 亚洲永久免费| 亚洲毛片av| 国产日韩精品一区二区| 久久一区视频| 亚洲欧美日韩综合一区| 亚洲伦理自拍| 黄色资源网久久资源365| 欧美波霸影院| 久久精品国产免费| 中文在线不卡| 亚洲精品免费在线| 国产在线视频欧美一区二区三区| 欧美日本免费一区二区三区| 亚洲午夜精品久久| 日韩午夜免费| 亚洲人成网站在线播| 国产精品日韩| 欧美午夜精彩| 欧美女同视频| 欧美国产一区二区三区激情无套| 亚洲欧美日韩在线观看a三区| 在线观看欧美日本| 一区在线播放视频| 黄色精品免费| 国产在线欧美日韩| 韩日视频一区| 亚洲电影观看| 国产视频一区二区在线观看| 国产欧美在线观看| 国产午夜亚洲精品不卡| 国产精品亚洲欧美| 国产精品视频一区二区三区| 欧美日韩国产精品成人| 久久gogo国模啪啪人体图| 一区二区三区精品久久久| 一区二区三区不卡视频在线观看| 日韩一区二区福利| 亚洲视频视频在线| 久久精品国产视频| 久久久噜噜噜久噜久久 | 亚洲伦理自拍| 中文精品99久久国产香蕉| 一本色道久久综合亚洲精品小说| 一本一道久久综合狠狠老精东影业| 亚洲主播在线观看| 久久综合久久综合久久| 欧美美女视频| 亚洲一区欧美一区| 久久福利电影| 欧美偷拍另类| 尤物视频一区二区| 午夜电影亚洲| 欧美精品一区二区久久婷婷| 国产欧美日韩一级| 夜夜嗨av一区二区三区中文字幕| 亚洲欧美影音先锋| 欧美三级不卡| 亚洲国产欧美一区二区三区同亚洲| 亚洲伊人伊色伊影伊综合网| 米奇777超碰欧美日韩亚洲| 国产精品卡一卡二| 99ri日韩精品视频| 久久亚洲综合色一区二区三区| 欧美日韩成人综合在线一区二区| 黑人巨大精品欧美一区二区 | 亚洲福利国产精品| 欧美一区二区网站| 国产麻豆9l精品三级站| 9久草视频在线视频精品| 国产精品网站在线| 在线午夜精品| 欧美日韩123| 91久久精品国产91久久性色tv| 久久se精品一区二区| 国产精品视频久久一区| 亚洲午夜激情网页| 国产精品久久久久久模特| 一本色道久久99精品综合| 欧美精品一区二区三区蜜桃| 亚洲第一区在线观看| 久热精品视频在线观看一区| 在线观看视频亚洲| 蜜臀久久99精品久久久久久9| 亚洲高清色综合| 欧美大胆成人| 亚洲免费观看高清完整版在线观看| 欧美大成色www永久网站婷| 亚洲第一精品夜夜躁人人躁| 欧美黄色免费| 亚洲免费在线视频| 亚洲成在线观看| 国产精品videossex久久发布| 午夜一区不卡| 亚洲国产视频直播| 国产精品一区二区你懂的| 老司机一区二区三区| 欧美电影在线| 久久精品夜夜夜夜久久| 一区二区黄色| 精久久久久久| 国产免费观看久久| 欧美日韩国产色视频| 久久国产精品第一页| 亚洲国产精品尤物yw在线观看| 欧美午夜不卡视频| 久久亚洲综合网| 91久久精品网| 国产尤物精品| 国产精品亚洲网站| 欧美日韩中文字幕在线视频| 久久国产精品99国产精| 亚洲婷婷综合久久一本伊一区| 在线观看一区视频| 国产一区在线视频| 国产区精品视频| 国产日韩av高清| 亚洲日本aⅴ片在线观看香蕉| 国产综合视频| 国产日韩欧美视频| 国产精品丝袜xxxxxxx| 欧美日韩八区| 欧美激情精品久久久久久蜜臀 | 日韩图片一区| 91久久精品一区| 精品1区2区| 亚洲国产精品成人精品| 伊人久久大香线蕉av超碰演员| 国产午夜精品一区理论片飘花| 国产精品天美传媒入口| 国产精品网红福利| 国产日韩久久| 亚洲国产精品va在看黑人| 亚洲欧洲一区二区三区在线观看| 亚洲电影免费在线| 亚洲人成在线观看网站高清| 日韩视频在线观看免费| 一区二区三区精品视频| 亚洲欧美日韩久久精品| 久久久久久久网| 欧美麻豆久久久久久中文| 国产精品扒开腿做爽爽爽软件| 国产欧美精品一区二区三区介绍 | 精品成人一区二区三区| 最近看过的日韩成人| 一本久道久久综合狠狠爱| 亚洲在线电影| 免费在线成人av| 国产精品乱码久久久久久| 韩日午夜在线资源一区二区| 亚洲国产精品毛片| 亚洲一区二区欧美日韩| 久久久精品久久久久| 国产精品theporn88| 黄色成人av网| 日韩午夜激情av| 久久手机精品视频| 国产精品vvv| 亚洲九九九在线观看| 久久九九国产| 国产精品一卡| 亚洲天堂男人| 欧美日韩系列|