虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

shell-<b>COMmand</b>

  • 用纯C语言编写的一个Linux下的Shell

    用纯C语言编写的一个Linux下的Shell,包含tch和bash的基本功能(包含重定向和后台运行),暂时不支持管道。已经在cygwin和Ubantu 7.10下测试通过。 主要包含: makefile 编译生成myshell可执行文件 myshell.c 主函数(涉及程序入口) utility.c 所有功能函数(将近1000行) myshell.h(包含宏定义、结构体声明、库函数的头文件,及utility.c中的所有函数的声明) readme 用户手册(当用户在myshell里输入help <command> 时,输出<command>的使用说明)

    标签: Linux Shell C语言 编写

    上传时间: 2014-02-05

    上传用户:xymbian

  • 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//密码写数据     #define    write_command3       3//唤醒     #define    write_command4       4//停止命令     #define    TRUE       1     #define    FALSE      0     #define    OK         0     #define    ERROR      255     //读卡的时间参数us     #define ts_min          250//270*11.0592/12=249//取近似的整数     #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};     //存储卡上用户数据(1-7)7*4=28     uchar data cominceptbuff[6] = {1,2,3,4,5,6};//串口接收数组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;    /**********************函数原型*****************/    //读写操作     void f_readcard(void);//全部读出1~7 AOR唤醒     void f_writecard(uchar x);//根据命令写不同的内容和操作     void f_clearpassword(void);//清除密码     void f_changepassword(void);//修改密码     //功能子函数     void write_password(uchar data *data p);//写初始密码或数据     void write_block(uchar x,uchar data *data p);//不能用通用指针     void write_bit(bit x);//写位     /*子函数区*****************************************************/    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位异步收发,波特率可变,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);//等一个稳定的低电平?超时判断?              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块的数据       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);//写数据位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)//配置卡参数:初始化     {      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)  //密码写数据    {      uchar data*data p;      p = &bankdata[24];      write_bit(1);//写操作码1:10       write_bit(0);//写操作码0       write_password(p);//发口令       write_bit(0);//写锁定位0       p = cominceptbuff;      write_block(cominceptbuff[4],p);//写数据            }    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;//此时数据不停的循环传出     }    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++)//发原密码     {             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);//写新配置参数: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++)//发原密码     {             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     }    /***************************子函数***********************************/    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数据     {             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

  • 基于ARM的网络视频监控系统设计与实现.rar

    近年来,随着多媒体技术、计算机网络与通信技术的的快速发展,传统的监控系统也不断向着新的发展方向进行着不断的更新与发展。进而随着嵌入式技术的出现以及人们对降低监控系统成本和提高可靠性的迫切需求,基于嵌入式系统的网络视频监控系统将成为新的研发热点。 本文的目的是把嵌入式技术与计算机网络技术相结合,构造一个性能稳定且具有较强处理能力的数字化远程视频监控系统。该监控系统以嵌入式Linux系统平台作为服务器端,服务器程序在其上以后台方式运行,等待监控系统环境中的客户机使用浏览器向其发送访问请求,实现在局域网乃至Internet网上对摄像头的远程控制。 文中把系统设计分为三大部分:系统硬件设计、嵌入式Linux在硬件平台的实现和系统软件设计。硬件设计部分首先提出了整个硬件系统的实现方案,接着详细介绍了S3C2410处理器与存储器、以太网控制器芯片以及USB和串口的接口电路设计;第二部分详细叙述了嵌入式Linux在本系统硬件平台的移植实现及应用程序的开发特点,重点讲述了本系统平台上Linux的引导加载程序Bootloader的设计过程;系统软件部分首先介绍了USB接口摄像头驱动在嵌入式Linux下的实现,重点讲述了Video4Linux下视频采集的实现,接着论述了如何实现图像的JPEG压缩,最后针对基于B/S模式的网络通信系统结构,详细阐述了网络通信的具体实现过程和方法。 最后在办公室局域网通过对系统测试,显示了系统运行结果,实现了利用局域网或Internet网对远程环境进行监控的功能。

    标签: ARM 网络视频监控 系统设计

    上传时间: 2013-07-04

    上传用户:lgnf

  • 永磁同步发电机的电磁场分析.rar

    永磁同步发电机由于一系列高效节能的优点,在工农业生产、航空航天、国防和日常生活中得到广泛应用,并且受到许多学者的关注,其研究领域主要涉及永磁同步发电机的设计、精确性能分析、控制等方面。 本课题作为国家自然科学基金项目《无刷无励磁机谐波励磁的混合励磁永磁电机的研究》的课题,主要研究永磁电机的电磁场空载和负载计算,求出永磁电机的电压波形和电压调整率,为分段式转子的混合励磁永磁电机的研究奠定基础,主要做了以下工作: 首先介绍了永磁同步发电机的基本原理,包括永磁同步发电机的结构形式和永磁同步发电机的运行性能,采用传统解析理论给出了电压调整率的计算方法及外特性的计算模型;然后用有限元ANSYS对永磁同步发电机样机进行实体建模,经过定义分配材料、划分网格、加边界条件和载荷、求解计算等,得到矢量磁位Az、磁场强度H、磁感应强度B等结果,直观地看出电机内部的磁场分布情况。 其次根据电磁场计算结果,应用齿磁通法对其进行后处理。该方法求解转子在一个齿距内不同位置处的磁场,以定子齿的磁通为计算单位,根据绕组与齿的匝链关系,计算出磁链随时间的变化,进而得到永磁同步发电机空、负载时电压大小及波形。通过计算结果写实验结果对比,验证了齿磁通法的正确性,为计算永磁同步发电机各种性能特性提供有力工具。 最后,基于齿磁通法对永磁同步发电机的外特性进行了深入研究,定量分析了结构参数对外特性的影响规律,提出了有效降低电压调整率的方法的是:增加气隙长度g的同时,适当增加永磁体的磁化方向的长度hm;此外,要尽量的减少每相串联匝数N和增大导线面积以减小阻抗参数。通过改变电机的结构参数,对其电磁场进行计算,找到永磁电机电压调整率的变化规律,为加电励磁的混合励磁永磁电机做准备,达到稳定输出电压的目的。

    标签: 永磁同步 发电机 磁场分析

    上传时间: 2013-04-24

    上传用户:15853744528

  • 基于自适应时频分析方法的心音信号分析研究.rar

    心音信号是人体最重要的生理信号之一,包含心脏各个部分如心房、心室、大血管、心血管及各个瓣膜功能状态的大量生理病理信息。心音信号分析与识别是了解心脏和血管状态的一种不可缺少的手段。本文针对目前该研究领域中存在的分析方法问题和分类识别技术难点展开了深入的研究,内容涉及心音构成的分析、心音信号特征向量的提取、正常心音信号(NM)和房颤(AF)、主动脉回流(AR)、主动脉狭窄(AS)、二尖瓣回流(MR)4种心脏杂音信号的分类识别。本文的工作内容包括以下5个方面: a)心音信号采集与预处理。本文采用自行研制的带有录音机功能的听诊器实现对心音信号的采集。通过对心音信号噪声分析,选用小波降噪作为心音信号的滤波方法。根据实验分析,选择Donoho阈值函数结合多级阈值的方法作为心音信号预处理方案。 b)心音信号时频分析方法。文中采用5种时频分析方法分别对心音信号进行了时频谱特性分析,结果表明:不同的时频分析方法与待分析心音信号的特性有密切关系,即需要在小的交叉项干扰与高的时频分辨率之间作综合的考虑。鉴于此,本文提出了一种自适应锥形核时频(ATF)分析方法,通过实验验证该分布能较好地反映心音信号的时频结构,其性能优于一般锥形核分布(CKD)以及Choi-Williams分布(CWD)、谱图(SPEC)等固定核时频分析方法,从而选择自应锥形核时频分析方法进行心音信号分析。 c)心音信号特征向量提取。根据对3M Littmann() Stethoscopes[31]数据库中标准心音信号的时频分析结果,提取8组特征数据,通过Fihser降维处理方法提取出了实现分类可视化,且最易于分类的心音信号的2维特征向量,作为心音信号分类的特征向量。 d)心音信号分类方法。根据心音信号特征向量组成的散点图,研究了支持向量机核函数、多分类支持向量机的选取方法,同时,基于分类的目的 性和可信性,本文提出以分类精度最大为判断准则的核函数参数与松弛变量的优化方法,建立了心音信号分类的支持向量机模型,选取标准数据库中NM、AF、AR、AS、MR每类心音信号的80组2维特征向量中每类60组数据作为支持向量机的学习样本,对余下的每类20组数据进行测试,得到每类的分类精度(Ar)均为100%,同时对临床上采集的与上述4种同类心脏杂音信号和正常心音信号中每类24个心动周期进行分类实测,分类精度分别为:NM、AF、MR的分类精度均为100%,而AR、AS均为95.83%,验证了该方法的分类有效性。 e)心音信号分析与识别的软件系统。本文以MATLAB语言的可视化功能实现了心音信号分析与识别的软件运行平台构建,可完成对心音信号的读取、预处理,绘制时-频、能量特性的三维图及两维等高线图;同时,利用MATLAB与EXCEL的动态链接,实现对心音信号分析数据的存储以及统计功能;最后,通过对心音信号2维特征向量的分析,实现心音信号的自动识别功能。 本文的研究特色主要体现在心音信号特征向量提取的方法以及多分类支持向量机模型的建立两方面。 综上所述,本文从理论与实践两方面对心音信号进行了深入的研究,主要是采用自适应锥形核时频分析方法提取心音信号特征向量,根据心音信号特征向量组成的散点图,建立心音信号分类的支持向量机模型,并对正常心音信号和4种心脏杂音信号进行了分类研究,取得了较为满意的分类结果,但由于用于分类的心脏杂音信号种类及数据量尚不足,因此,今后的工作重点是采集更多种类的心脏杂音信号,进一步提高心音信号分类精度,使本文研究成果能最终应用于临床心脏量化听诊。 关键词:心音信号,小波降噪,非平稳信号,心脏杂音,信号处理,时频分析,自适应,支持向量机

    标签: 时频 分析方法

    上传时间: 2013-04-24

    上传用户:weixiao99

  • 永磁同步直线电机的矢量控制.rar

    本文分析了永磁同步直线电动机的运行机理与运行特性,并通过坐标变换,分别得出了电机在a—b—c,α—β、d—q坐标系下的数学模型。针对永磁同步直线电机模型的非线性与耦合特性,采用了次级磁场定向的矢量控制,并使id=0,不但解决了上述问题,还实现了最大推力电流比控制。为了获得平稳的推力,采用了SVPWM控制,并对它算法实现进行了研究。 针对速度环采用传统PID控制难以满足高性能矢量控制系统,通过对传统PID控制和模糊控制理论的研究,将两者相结合,设计出能够在线自整定的模糊PID控制器。将该控制器代替传统的PID控制器应用于速度环,以提高系统的动静态性能。 在以上分析的基础上,设计了永磁同步直线电机矢量控制系统的软、硬件。其中电流检测采用了新颖的电流传感器芯片IR2175,以解决温漂问题;速度检测采用了增量式光栅尺,设计了与DSP的接口电路,通过M/T法实现对电机的测速。最后在Matlab/Simlink下建立了电机及其矢量控制系统的仿真模型,并对分别采用传统PID速度控制器和模糊PID速度控制器的系统进行仿真,结果表明采用模糊PID控制具有更好的动态响应性能,能有效的抑制暂态和稳态下的推力脉动,对于负载扰动具有较强的鲁棒性。

    标签: 永磁同步 直线电机 矢量控制

    上传时间: 2013-07-04

    上传用户:13681659100

  • 射频与微波功率放大器设计.rar

    本书主要阐述设计射频与微波功率放大器所需的理论、方法、设计技巧,以及将分析计算与计算机辅助设计相结合的优化设计方法。这些方法提高了设计效率,缩短了设计周期。本书内容覆盖非线性电路设计方法、非线性主动设备建模、阻抗匹配、功率合成器、阻抗变换器、定向耦合器、高效率的功率放大器设计、宽带功率放大器及通信系统中的功率放大器设计。  本书适合从事射频与微波动功率放大器设计的工程师、研究人员及高校相关专业的师生阅读。 作者简介 Andrei Grebennikov是M/A—COM TYCO电子部门首席理论设计工程师,他曾经任教于澳大利亚Linz大学、新加坡微电子学院、莫斯科通信和信息技术大学。他目前正在讲授研究班课程,在该班上,本书作为国际微波年会论文集。 目录 第1章 双口网络参数  1.1 传统的网络参数  1.2 散射参数  1.3 双口网络参数间转换  1.4 双口网络的互相连接  1.5 实际的双口电路   1.5.1 单元件网络   1.5.2 π形和T形网络  1.6 具有公共端口的三口网络  1.7 传输线  参考文献 第2章 非线性电路设计方法  2.1 频域分析   2.1.1 三角恒等式法   2.1.2 分段线性近似法   2.1.3 贝塞尔函数法  2.2 时域分析  2.3 NewtOn.Raphscm算法  2.4 准线性法  2.5 谐波平衡法  参考文献 第3章 非线性有源器件模型  3.1 功率MOSFET管   3.1.1 小信号等效电路   3.1.2 等效电路元件的确定   3.1.3 非线性I—V模型   3.1.4 非线性C.V模型   3.1.5 电荷守恒   3.1.6 栅一源电阻   3.1.7 温度依赖性  3.2 GaAs MESFET和HEMT管   3.2.1 小信号等效电路   3.2.2 等效电路元件的确定   3.2.3 CIJrtice平方非线性模型   3.2.4 Curtice.Ettenberg立方非线性模型   3.2.5 Materka—Kacprzak非线性模型   3.2.6 Raytheon(Statz等)非线性模型   3.2.7 rrriQuint非线性模型   3.2.8 Chalmers(Angek)v)非线性模型   3.2.9 IAF(Bemth)非线性模型   3.2.10 模型选择  3.3 BJT和HBT汀管   3.3.1 小信号等效电路   3.3.2 等效电路中元件的确定   3.3.3 本征z形电路与T形电路拓扑之间的等效互换   3.3.4 非线性双极器件模型  参考文献 第4章 阻抗匹配  4.1 主要原理  4.2 Smith圆图  4.3 集中参数的匹配   4.3.1 双极UHF功率放大器   4.3.2 M0SFET VHF高功率放大器  4.4 使用传输线匹配   4.4.1 窄带功率放大器设计   4.4.2 宽带高功率放大器设计  4.5 传输线类型   4.5.1 同轴线   4.5.2 带状线   4.5.3 微带线   4.5.4 槽线   4.5.5 共面波导  参考文献 第5章 功率合成器、阻抗变换器和定向耦合器  5.1 基本特性  5.2 三口网络  5.3 四口网络  5.4 同轴电缆变换器和合成器  5.5 wilkinson功率分配器  5.6 微波混合桥  5.7 耦合线定向耦合器  参考文献 第6章 功率放大器设计基础  6.1 主要特性  6.2 增益和稳定性  6.3 稳定电路技术   6.3.1 BJT潜在不稳定的频域   6.3.2 MOSFET潜在不稳定的频域   6.3.3 一些稳定电路的例子  6.4 线性度  6.5 基本的工作类别:A、AB、B和C类  6.6 直流偏置  6.7 推挽放大器  6.8 RF和微波功率放大器的实际外形  参考文献 第7章 高效率功率放大器设计  7.1 B类过激励  7.2 F类电路设计  7.3 逆F类  7.4 具有并联电容的E类  7.5 具有并联电路的E类  7.6 具有传输线的E类  7.7 宽带E类电路设计  7.8 实际的高效率RF和微波功率放大器  参考文献 第8章 宽带功率放大器  8.1 Bode—Fan0准则  8.2 具有集中元件的匹配网络  8.3 使用混合集中和分布元件的匹配网络  8.4 具有传输线的匹配网络    8.5 有耗匹配网络  8.6 实际设计一瞥  参考文献 第9章 通信系统中的功率放大器设计  9.1 Kahn包络分离和恢复技术  9.2 包络跟踪  9.3 异相功率放大器  9.4 Doherty功率放大器方案  9.5 开关模式和双途径功率放大器  9.6 前馈线性化技术  9.7 预失真线性化技术  9.8 手持机应用的单片cMOS和HBT功率放大器  参考文献

    标签: 射频 微波功率 放大器设计

    上传时间: 2013-04-24

    上传用户:W51631

  • 基于嵌入式的远程图像采集传输系统的研究.rar

    图像的采集和传输是实时监控、远程控制、智能小区等诸多领域的关键技术。基于传统:PC的图像采集已成为现实。随着信息技术的迅速发展,嵌入式系统的研究开发成为了后PC时代的一个热点,它被广泛应用于工业现场、信息家电等各行各业。同时,图像的远程采集传输也朝着专业化、多样化和低成本的方向发展。利用嵌入式技术来实现图像的远程采集传输正顺应了时代发展,有较大的实用价值。 本文主要研究了基于嵌入式的远程图像采集传输系统。嵌入式终端采用$3C2410为核心的目标板为硬件平台,采用嵌入式Linux为系统平台。系统通过连接在嵌入式终端的USB摄像头完成静态图像数据采集,并进行图像压缩处理。在图像传输方面,论文设计了两种模式:一种是通过Intemet传输的、基于B/S模式的传输方式。在该模式下,远端客户机通过浏览器访问架设在终端里的嵌入式服务器而获得图像信息。另一种是基于GPRS网络实现远程无线图像传输。终端将采集到的图像数据通过GPRS网络发送到拥有固定Ip的监控服务器上来完成图像远程传输。 本文首先介绍了图像采集传输和嵌入式方面的相关内容,并介绍了本论文所采用的开发平台。为了顺利开发接着构建了开发环境,这里包括U-boot的移植、Linux系统的内核编译和移植、设备驱动模块的加载以及交叉编译环境的建立。在此基础上,利用Vide04Linux的接口函数,用C语言实现了图像原始数据的采集程序,并利用JPEG算法了实现图像压缩。在基于B/S模式的传输方式中,首先利用Boa架设了嵌入式服务器,然后用C语言完成CGI脚本,该脚本将图像嵌入网页并实时更新以实现网页的动态输出。在基于GPRS实现远程无线图像传输方式中,论文详细分析了系统通讯数据流的特征,提出了采用辨识特征字符、数据打包等策略以实现GPRS的网络连接和数据通讯,并且在此基础上用C语言编程实现。同时,在PC(Linux)上用Socket编程实现了监控服务器软件,该软件用以接收图像数据和控制嵌入式终端的系统状态。最后,论文分析比较了两种传输方式的区别和优缺点。试验证明,采用两种方式都能成功实现图像的远程采集传输,并且试验效果较好。

    标签: 嵌入式 远程图像

    上传时间: 2013-05-17

    上传用户:squershop

  • 基于ARM9无线图像采集系统的研究与开发.rar

    上海交通大学工程硕士学位论文 本文首先对视频监控系统的现状做了简单分析, 并介绍了本系统 中主要涉及到的相关技术,包括嵌入式技术、图像压缩技术、视频压 缩技术和移动数据通信技术。具备了一定的理论基础后,提出本系统 的总体设计方案,明确需要实现的目标功能。然后,围绕目标方案详 细介绍了具体实现方法,包括硬件总体结构、嵌入式 Linux的移植、 USB 摄像头驱动移植、Video4Linux 编程方法、网络传输模块的开发、 流媒体系统建立、WAP 程序的开发等。最后给出了在现网测试环境中 调测结果。 本系统通过嵌入式芯片实现静态图像及视频的采集、编码,并将 采集压缩编码后的数据传送到视频中心服务器, 在2G/3G 移动终端中 以 WAP 或流媒体客户端方式直接查看远程图像。 系统最大的特点是采 用了分布式架构的 C/S(采集端至视频中心服务器)和 B/S(WAP 服 务器至移动终端)结构便于系统的动态扩展;同时也借助了 WAP 技术 实现了传统视频监控的无线化。

    标签: ARM9 无线图像 采集系统

    上传时间: 2013-07-05

    上传用户:cuibaigao

  • 全数字超声诊断系统部分核心算法的FPGA实现.rar

    60年代初,国际上首次将B超诊断仪应用于临床诊断,40多年来B超诊断仪的发展极为迅速。随着数字信号处理及计算机技术的发展,目前国际上先进水平的超声诊断设备几乎每一个环节都包含着数字信号处理的内容,研制全数字化的超声诊断设备已成为发展趋势。 @@ 基于FPGA及嵌入式操作系统的全数字超声诊断系统具有技术含量高、便携的特点,可用数字硬件电路来实现数据量极其庞大的超声信息的实时处理。 @@ 本文从超声诊断原理入手,在对超声诊断系统中的几个关键技术进行分析的基础上,重点研究开发超声诊断系统中数字信号处理部分的两个核心算法。以FPGA芯片为载体,在Quartus Ⅱ平台中采用Verilog HDL语言进行编程并仿真验证,分别实现了数字FIR滤波器及CORDIC坐标变换两个模块的功能。另外,采用Verilog HDL语言对应用于图像显示模块的SPI接口进行了编程设计,编译下载至FPGA中,最终实现了与ARM A8的OMPG3530板之间高速串行数据的传输。 @@ 采用在单片FPGA芯片内实现数字式超声诊断部分核心算法并与高性能ARMA8处理器相配合的数字信号处理解决方案,具有高速度、高精度、高集成度、便携的特点,为全数字化便携超声诊断设备的研制打下了基础。 @@关键词:超声诊断系统;FPGA;数字FIR滤波器;CORDIC算法;SPI总线

    标签: FPGA 全数字 超声诊断系统

    上传时间: 2013-07-07

    上传用户:hxy200501