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

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

半導(dǎo)(dǎo)體物理與器件

  • 基于DS80C410串口至以太網(wǎng)接口轉(zhuǎn)換器的實(shí)現(xiàn)

    介紹了一種基于高性能51 內(nèi)核網(wǎng)絡(luò)微控制器的串口至以太網(wǎng)接口轉(zhuǎn)換器的設(shè)計(jì)方案,采用網(wǎng)絡(luò)單片機(jī)DS80C410,利用集成的MAC 通過以太網(wǎng)收發(fā)器與以太網(wǎng)相連,借助TINI SDK 軟件開發(fā)包通過Java編程實(shí)現(xiàn)串口和以太網(wǎng)之間的數(shù)據(jù)通訊。串口至以太網(wǎng)接口轉(zhuǎn)換器使得帶有RS232/422/485 通訊接口的設(shè)備和以太網(wǎng)服務(wù)器進(jìn)行數(shù)據(jù)流傳輸,通過以太網(wǎng)服務(wù)器對(duì)串口設(shè)備進(jìn)行實(shí)時(shí)監(jiān)控?;ヂ?lián)網(wǎng)硬件和軟件的迅猛發(fā)展,使得各種電氣設(shè)備、儀器儀表以及生產(chǎn)過程中的數(shù)據(jù)采集與控制設(shè)備逐漸走向網(wǎng)絡(luò)化。計(jì)算機(jī)技術(shù)、測(cè)控技術(shù)、網(wǎng)絡(luò)與通訊技術(shù)不斷發(fā)展與融合是一個(gè)必然的趨勢(shì)。目前以太網(wǎng)已經(jīng)廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò),成為互聯(lián)網(wǎng)鏈接不可缺少的部分,另外以太網(wǎng)一般都基于TCP/IP協(xié)議,使得整個(gè)網(wǎng)絡(luò)只有一種互聯(lián)通訊協(xié)議,滿足控制系統(tǒng)各個(gè)層次的要求,而且易于和Internet實(shí)現(xiàn)無縫連接?,F(xiàn)今大多數(shù)現(xiàn)場(chǎng)設(shè)備通過串口與外界通訊,甚至串口是它們與外界通訊的唯一通道,串口設(shè)備的廣泛使用以及對(duì)設(shè)備上網(wǎng)能力的不斷需求,使得如何實(shí)現(xiàn)串口到以太網(wǎng)的轉(zhuǎn)換顯得尤為重要。DS80C410利用集成的MAC通過物理層器件與以太網(wǎng)相連,借助TINI SDK軟件開發(fā)包可以輕松實(shí)現(xiàn)串口至以太網(wǎng)的接口轉(zhuǎn)換。

    標(biāo)簽: C410 410 80C DS

    上傳時(shí)間: 2013-10-20

    上傳用戶:a296386173

  • 迄今為止

    迄今為止,本書已介紹了可在Microsoft Wi n d o w s操作系統(tǒng)中使用的全部網(wǎng)絡(luò)A P I函數(shù)。 利用這些函數(shù),我們的應(yīng)用程序可通過網(wǎng)絡(luò),建立與其他程序的通信聯(lián)系。在那些討論中, 我們?cè)诤艽蟪潭壬蠈⒅攸c(diǎn)放在七層O S I模型的應(yīng)用層和表示層上面

    標(biāo)簽:

    上傳時(shí)間: 2015-07-08

    上傳用戶:royzhangsz

  • struts的詳細(xì)說明

    struts的詳細(xì)說明,是struts的經(jīng)典經(jīng)驗(yàn)集合,對(duì)于做web開發(fā)的技術(shù)人員來說恨合適d o dio 哦!感覺寫的恨不錯(cuò)就發(fā)上來了!

    標(biāo)簽: struts

    上傳時(shí)間: 2016-01-01

    上傳用戶:懶龍1988

  • 本設(shè)計(jì)實(shí)際上是將被測(cè)模擬量轉(zhuǎn)換為數(shù)字量

    本設(shè)計(jì)實(shí)際上是將被測(cè)模擬量轉(zhuǎn)換為數(shù)字量,并進(jìn)行實(shí)時(shí)數(shù)字顯示,主要由以下幾部分構(gòu)成:量程轉(zhuǎn)換電路、AC-DC轉(zhuǎn)換電路、3位半A/D轉(zhuǎn)換單元電路、基準(zhǔn)電源單元電路、譯碼驅(qū)動(dòng)單元以及數(shù)碼管顯示單元。其中A/D轉(zhuǎn)換器選用三位半MC14433,基準(zhǔn)電源選用MC1403,譯碼驅(qū)動(dòng)器則MC14511,另加四個(gè)共陰極LED發(fā)光數(shù)碼管。

    標(biāo)簽: 模擬量 數(shù)字量 轉(zhuǎn)換

    上傳時(shí)間: 2013-12-24

    上傳用戶:thinode

  • svpwm matlab

    空間矢量脈寬調(diào)制(Space Vector Pulse Width Modulation)    SVPWM的主要思想是:以三相對(duì)稱正弦波電壓供電時(shí)三相對(duì)稱電動(dòng)機(jī)定子理想磁鏈圓為參考標(biāo)準(zhǔn),以三相逆變器不同開關(guān)模式作適當(dāng)?shù)那袚Q,從而形成PWM波,以所形成的實(shí)際磁鏈?zhǔn)噶縼碜粉櫰錅?zhǔn)確磁鏈圓。傳統(tǒng)的SPWM方法從電源的角度出發(fā),以生成一個(gè)可調(diào)頻調(diào)壓的正弦波電源,而SVPWM方法將逆變系統(tǒng)和異步電機(jī)看作一個(gè)整體來考慮,模型比較簡單,也便于微處理器的實(shí)時(shí)控制。    普通的三相全橋是由六個(gè)開關(guān)器件構(gòu)成的三個(gè)半橋。這六個(gè)開關(guān)器件組合起來(同一個(gè)橋臂的上下半橋的信號(hào)相反)共有8種安全的開關(guān)狀態(tài). 其中000、111(這里是表示三個(gè)上橋臂的開關(guān)狀態(tài))這兩種開關(guān)狀態(tài)在電機(jī)驅(qū)動(dòng)中都不會(huì)產(chǎn)生有效的電流。因此稱其為零矢量。另外6種開關(guān)狀態(tài)分別是六個(gè)有效矢量。它們將360度的電壓空間分為60度一個(gè)扇區(qū),共六個(gè)扇區(qū),利用這六個(gè)基本有效矢量和兩個(gè)零量,可以合成360度內(nèi)的任何矢量。    當(dāng)要合成某一矢量時(shí)先將這一矢量分解到離它最近的兩個(gè)基本矢量,而后用這兩個(gè)基本矢量矢量去表示,而每個(gè)基本矢量的作用大小就利用作用時(shí)間長短去代表。    在變頻電機(jī)驅(qū)動(dòng)時(shí),矢量方向是連續(xù)變化的,因此我們需要不斷的計(jì)算矢量作用時(shí)間。為了計(jì)算機(jī)處理的方便,在合成時(shí)一般是定時(shí)去計(jì)算(如每0.1ms計(jì)算一次)。這樣我們只要算出在0.1ms內(nèi)兩個(gè)基本矢量作用的時(shí)間就可以了。由于計(jì)算出的兩個(gè)時(shí)間的總合可能并不是0.1ms(比這小),而那剩下的時(shí)間就按情況插入合適零矢量。 由于在這樣的處量時(shí),合成的驅(qū)動(dòng)波形和PWM很類似。因此我們還叫它PWM,又因這種PWM是基于電壓空間矢量去合成的,所以就叫它SVPWM了。 

    標(biāo)簽: matlab svpwm

    上傳時(shí)間: 2016-04-25

    上傳用戶:bijiaohao22

  • 成績查詢系統(tǒng)

    #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計(jì)算學(xué)生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績 void input_score1(void);//統(tǒng)計(jì)成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績       英語成績     計(jì)算機(jī)成績     平均成績\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績錄入成功!\n");   stu[c].average=input_score2(c);   } void input_score3(int a)//統(tǒng)計(jì)成績   {   printf("數(shù)學(xué)新成績:");   scanf("%f",&stu[a].sco.math);   printf("英語新成績:");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)新成績:");   scanf("%f",&stu[a].sco.computer);   } void change_student2(int a)//修改學(xué)生資料   {   printf("學(xué)號(hào):%d----修改為:",stu[a].number);   scanf("%d",&stu[a].number);   getchar();   printf("姓名:%s----修改為:",stu[a].name);   gets(stu[a].name);   printf("數(shù)學(xué)成績:%.2f----修改為:",stu[a].sco.math);   scanf("%f",&stu[a].sco.math);   printf("英語成績:%.2f----修改為:",stu[a].sco.english);   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績:%.2f----修改為:",stu[a].sco.computer);   scanf("%f",&stu[a].sco.computer);   } void change_student1(void)//修改總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否要修改此學(xué)生信息?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     change_student2(c);       stu[c].average=input_score2(c);     printf("信息修改成功!\n");     }   } void delete_student1(void)//刪除總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否刪除此條記錄?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     delete_student2(c,iNumOfStu);     printf("記錄已刪除!\n");     }   } void delete_student2(int a,int b)//刪除學(xué)生信息   {   for(int i=a;i<b-1;i++)     {     stu[i]=stu[i+1];     }   --iNumOfStu;   } void search_student1(void)//查詢總函數(shù)   {   printf("1、按學(xué)號(hào)查詢\n2、按平均分最高查詢\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       search_student2(iNumOfStu);       break;       }     case 2:       {       search_student3(iNumOfStu);       break;       }     default: break;     }   } void menu(void)//菜單調(diào)度總函數(shù)   {   print_menu();   choosemenu();   } void sort_student1(void)//排序總函數(shù)   {   printf("1、按數(shù)學(xué)成績排序\n2、按英語成績排序\n3、按計(jì)算機(jī)成績排序\n4、按平均成績排序\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       sort_student2(stu,iNumOfStu);       break;       }     case 2:       {       sort_student3(stu,iNumOfStu);       break;       }     case 3:       {       sort_student4(stu,iNumOfStu);       break;       }     case 4:       {       sort_student5(stu,iNumOfStu);       break;       }     default: break;     }   } void print_student1(int a)//顯示全部學(xué)生資料   {   printf("本班所有學(xué)生具體信息如下\n");   print_student2();   for(int i=0;i<a;i++)     {     print_student3(i);     }   } void print_student3(int a)//顯示學(xué)生信息   {   printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average);   } void print_student2(void)//顯示表頭   {   printf("  學(xué)號(hào)       姓名           數(shù)學(xué)成績       英語成績     計(jì)算機(jī)成績     平均成績\n");   } void input_student4(int a,int b)//覆蓋原信息   {   stu[a]=stu[b-1];   --iNumOfStu;   } void input_student3(int &a,int b)//判斷學(xué)號(hào)是否重復(fù)   {   if(a!=0)     {     int i=0;     do       {       if(stu[a].number==stu[i].number)         {         printf("此學(xué)號(hào)代表的學(xué)生已錄入\n1、覆蓋原信息\n2、重新輸入\n請(qǐng)選擇:");         int c;         scanf("%d",&c);         switch(c)           {           case 1:             {             input_student4(i,iNumOfStu);             a=iNumOfStu-1;             printf("信息已替換!\n");             break;             }           case 2:             {             printf("請(qǐng)重新輸入學(xué)生信息:\n");             input_student1(iNumOfStu-1);             break;             }           default: break;           }         break;         }       ++i;       }       while(i<b-1);     }   } void print_menu(void)//輸出菜單   {   printf("======歡迎來到學(xué)生信息管理系統(tǒng)======\n");   printf("      1、輸入學(xué)生資料\n");   printf("      2、刪除學(xué)生資料\n");   printf("      3、查詢學(xué)生資料\n");   printf("      4、修改學(xué)生資料\n");   printf("      5、顯示學(xué)生資料\n");   printf("      6、統(tǒng)計(jì)學(xué)生成績\n");   printf("      7、排序?qū)W生成績\n");   printf("      8、保存學(xué)生資料\n");   printf("      9、獲取幫助信息\n");   printf("      10、退出系統(tǒng)\n");   printf("====================================\n");   printf("請(qǐng)選擇:");   } void input_student2(void)//輸入總函數(shù)   {   char end;   printf("請(qǐng)輸入學(xué)生信息(在最后一個(gè)學(xué)生信息錄入完成后以“/”結(jié)束錄入):\n");   for(int i=0;(end=getchar())!='/';i++)     {     input_student1(i);     ++iNumOfStu;     input_student3(i,iNumOfStu);     }   for(int j=0;j<iNumOfStu;j++)     {     stu[j].average=input_score2(j);     }   } void input_student1(int a)//輸入學(xué)生信息   {   printf("學(xué)號(hào):");   scanf("%d",&stu[a].number);   getchar();   printf("姓名:");   gets(stu[a].name);   printf("數(shù)學(xué)成績:");   scanf("%f",&stu[a].sco.math);   printf("英語成績:");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績:");   scanf("%f",&stu[a].sco.computer);   } float input_score2(int a)//計(jì)算學(xué)生平均成績   {   return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3;   } void search_student3(int a)//按平均分最高查詢并輸出   {   int max=0;   for(int i=0;i<a;i++)     {     if(stu[max].average<stu[i].average)       {       max=i;       }     }   print_student2();   print_student3(max);   } void sort_student2(student s[],int a)//按照數(shù)學(xué)成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.math>stu[max].sco.math)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student3(student s[],int a)//按照英語成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.english>stu[max].sco.english)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student4(student s[],int a)//按照計(jì)算機(jī)成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.computer>stu[max].sco.computer)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student5(student s[],int a)//按照平均成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].average>stu[max].average)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } int search_student2(int a)//按照學(xué)號(hào)查找學(xué)生并輸出   {   int num;   int c;   printf("請(qǐng)輸入要查詢的學(xué)號(hào):");   scanf("%d",&num);   for(int i=0;i<a;i++)     {     if(num==stu[i].number)       {       c=i;       }     }   printf("此學(xué)生的信息是:\n");   print_student2();   print_student3(c);   return c;   } void choosemenu(void)//菜單選擇   {   int i;   scanf("%d",&i);   switch(i)     {     case 1:       {       input_student2();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 2:       {       delete_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 3:       {       search_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 4:       {       change_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 5:       {       print_student1(iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 6:       {       input_score1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 7:       {       sort_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 8:       {       save_student(stu,iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 9:       {       print_help();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 10:       {       exit_student();       }     default: break;     }   }         運(yùn)行結(jié)果:                         源文件下載地址: http://115.com/file/clnq138g#一個(gè)簡單的學(xué)生成績管理系統(tǒng).rar (請(qǐng)將此地址復(fù)制到瀏覽器地址欄中訪問下載頁面)  

    標(biāo)簽: 成績查詢系統(tǒng)

    上傳時(shí)間: 2019-06-08

    上傳用戶:啊的撒旦

  • 學(xué)生成績guanli

    #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計(jì)算學(xué)生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績 void input_score1(void);//統(tǒng)計(jì)成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績       英語成績     計(jì)算機(jī)成績     平均成績\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績錄入成功!\n");   stu[c].average=input_score2(c);   } void input_score3(int a)//統(tǒng)計(jì)成績   {   printf("數(shù)學(xué)新成績:");   scanf("%f",&stu[a].sco.math);   printf("英語新成績:");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)新成績:");   scanf("%f",&stu[a].sco.computer);   } void change_student2(int a)//修改學(xué)生資料   {   printf("學(xué)號(hào):%d----修改為:",stu[a].number);   scanf("%d",&stu[a].number);   getchar();   printf("姓名:%s----修改為:",stu[a].name);   gets(stu[a].name);   printf("數(shù)學(xué)成績:%.2f----修改為:",stu[a].sco.math);   scanf("%f",&stu[a].sco.math);   printf("英語成績:%.2f----修改為:",stu[a].sco.english);   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績:%.2f----修改為:",stu[a].sco.computer);   scanf("%f",&stu[a].sco.computer);   } void change_student1(void)//修改總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否要修改此學(xué)生信息?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     change_student2(c);       stu[c].average=input_score2(c);     printf("信息修改成功!\n");     }   } void delete_student1(void)//刪除總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否刪除此條記錄?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     delete_student2(c,iNumOfStu);     printf("記錄已刪除!\n");     }   } void delete_student2(int a,int b)//刪除學(xué)生信息   {   for(int i=a;i<b-1;i++)     {     stu[i]=stu[i+1];     }   --iNumOfStu;   } void search_student1(void)//查詢總函數(shù)   {   printf("1、按學(xué)號(hào)查詢\n2、按平均分最高查詢\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       search_student2(iNumOfStu);       break;       }     case 2:       {       search_student3(iNumOfStu);       break;       }     default: break;     }   } void menu(void)//菜單調(diào)度總函數(shù)   {   print_menu();   choosemenu();   } void sort_student1(void)//排序總函數(shù)   {   printf("1、按數(shù)學(xué)成績排序\n2、按英語成績排序\n3、按計(jì)算機(jī)成績排序\n4、按平均成績排序\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       sort_student2(stu,iNumOfStu);       break;       }     case 2:       {       sort_student3(stu,iNumOfStu);       break;       }     case 3:       {       sort_student4(stu,iNumOfStu);       break;       }     case 4:       {       sort_student5(stu,iNumOfStu);       break;       }     default: break;     }   } void print_student1(int a)//顯示全部學(xué)生資料   {   printf("本班所有學(xué)生具體信息如下\n");   print_student2();   for(int i=0;i<a;i++)     {     print_student3(i);     }   } void print_student3(int a)//顯示學(xué)生信息   {   printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average);   } void print_student2(void)//顯示表頭   {   printf("  學(xué)號(hào)       姓名           數(shù)學(xué)成績       英語成績     計(jì)算機(jī)成績     平均成績\n");   } void input_student4(int a,int b)//覆蓋原信息   {   stu[a]=stu[b-1];   --iNumOfStu;   } void input_student3(int &a,int b)//判斷學(xué)號(hào)是否重復(fù)   {   if(a!=0)     {     int i=0;     do       {       if(stu[a].number==stu[i].number)         {         printf("此學(xué)號(hào)代表的學(xué)生已錄入\n1、覆蓋原信息\n2、重新輸入\n請(qǐng)選擇:");         int c;         scanf("%d",&c);         switch(c)           {           case 1:             {             input_student4(i,iNumOfStu);             a=iNumOfStu-1;             printf("信息已替換!\n");             break;             }           case 2:             {             printf("請(qǐng)重新輸入學(xué)生信息:\n");             input_student1(iNumOfStu-1);             break;             }           default: break;           }         break;         }       ++i;       }       while(i<b-1);     }   } void print_menu(void)//輸出菜單   {   printf("======歡迎來到學(xué)生信息管理系統(tǒng)======\n");   printf("      1、輸入學(xué)生資料\n");   printf("      2、刪除學(xué)生資料\n");   printf("      3、查詢學(xué)生資料\n");   printf("      4、修改學(xué)生資料\n");   printf("      5、顯示學(xué)生資料\n");   printf("      6、統(tǒng)計(jì)學(xué)生成績\n");   printf("      7、排序?qū)W生成績\n");   printf("      8、保存學(xué)生資料\n");   printf("      9、獲取幫助信息\n");   printf("      10、退出系統(tǒng)\n");   printf("====================================\n");   printf("請(qǐng)選擇:");   } void input_student2(void)//輸入總函數(shù)   {   char end;   printf("請(qǐng)輸入學(xué)生信息(在最后一個(gè)學(xué)生信息錄入完成后以“/”結(jié)束錄入):\n");   for(int i=0;(end=getchar())!='/';i++)     {     input_student1(i);     ++iNumOfStu;     input_student3(i,iNumOfStu);     }   for(int j=0;j<iNumOfStu;j++)     {     stu[j].average=input_score2(j);     }   } void input_student1(int a)//輸入學(xué)生信息   {   printf("學(xué)號(hào):");   scanf("%d",&stu[a].number);   getchar();   printf("姓名:");   gets(stu[a].name);   printf("數(shù)學(xué)成績:");   scanf("%f",&stu[a].sco.math);   printf("英語成績:");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績:");   scanf("%f",&stu[a].sco.computer);   } float input_score2(int a)//計(jì)算學(xué)生平均成績   {   return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3;   } void search_student3(int a)//按平均分最高查詢并輸出   {   int max=0;   for(int i=0;i<a;i++)     {     if(stu[max].average<stu[i].average)       {       max=i;       }     }   print_student2();   print_student3(max);   } void sort_student2(student s[],int a)//按照數(shù)學(xué)成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.math>stu[max].sco.math)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student3(student s[],int a)//按照英語成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.english>stu[max].sco.english)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student4(student s[],int a)//按照計(jì)算機(jī)成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.computer>stu[max].sco.computer)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student5(student s[],int a)//按照平均成績排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].average>stu[max].average)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } int search_student2(int a)//按照學(xué)號(hào)查找學(xué)生并輸出   {   int num;   int c;   printf("請(qǐng)輸入要查詢的學(xué)號(hào):");   scanf("%d",&num);   for(int i=0;i<a;i++)     {     if(num==stu[i].number)       {       c=i;       }     }   printf("此學(xué)生的信息是:\n");   print_student2();   print_student3(c);   return c;   } void choosemenu(void)//菜單選擇   {   int i;   scanf("%d",&i);   switch(i)     {     case 1:       {       input_student2();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 2:       {       delete_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 3:       {       search_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 4:       {       change_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 5:       {       print_student1(iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 6:       {       input_score1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 7:       {       sort_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 8:       {       save_student(stu,iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 9:       {       print_help();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 10:       {       exit_student();       }     default: break;     }   }         運(yùn)行結(jié)果:                         源文件下載地址: http://115.com/file/clnq138g#一個(gè)簡單的學(xué)生成績管理系統(tǒng).rar (請(qǐng)將此地址復(fù)制到瀏覽器地址欄中訪問下載頁面)   #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計(jì)算學(xué)生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績 void input_score1(void);//統(tǒng)計(jì)成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績       英語成績     計(jì)算機(jī)成績     平均成績\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績錄入成功!

    標(biāo)簽: c語言

    上傳時(shí)間: 2019-06-09

    上傳用戶:啊的撒旦

  • NXP LPC2214軟件參考設(shè)計(jì)例程 -20例基礎(chǔ)源碼

    NXP LPC2214軟件參考設(shè)計(jì)例程 -20例基礎(chǔ)源碼一 概述LPC2000 系列微控制器是基于ARM7TDMI-S 內(nèi)核的32 位微控制器片內(nèi)集成了支持400KHz 高速模式的硬件I2C 總線接口為了方便地對(duì) I2C 從器件進(jìn)行快速的正確的讀寫操作我們?cè)O(shè)計(jì)了LPC2000 系列微控制器I2C 軟件包本軟件包是硬件I2C 以主方式工作的只要用戶調(diào)用接口函數(shù)并提供幾個(gè)主要的參數(shù)即可輕松地完成I2C 總線外圍器件的應(yīng)用程序設(shè)計(jì)二 I2C 串行總線I2C 總線是PHILIPS 公司推出的芯片間串行數(shù)據(jù)傳輸總線2 根線(SDA SCL)即可實(shí)現(xiàn)完善的全雙工同步數(shù)據(jù)傳送能夠十分方便地地構(gòu)成多機(jī)系統(tǒng)和外圍器件擴(kuò)展系統(tǒng)I2C 器件是把I2C 的協(xié)議植入器件的I/O 接口使用時(shí)器件直接掛到I2C 總線上這一特點(diǎn)給用戶在設(shè)計(jì)應(yīng)用系統(tǒng)帶來了極大的便利I2C 器件無須片選信號(hào)是否選中是由主器件發(fā)出的I2C從地址決定的而I2C 器件的從地址是由I2C 總線委員會(huì)實(shí)行統(tǒng)一發(fā)配三 軟件包接口說明LPC2000 系列微控制器I2C 軟件包采用中斷方式進(jìn)行處理提供了4 個(gè)接口函數(shù)分別為ISendByte() ISendStr() IRcvByte 和IRcvStr() 由于I2C 向量中斷需要根據(jù)實(shí)際應(yīng)用來設(shè)定(即VIC 的設(shè)置) 所以軟件包中沒有提供I2C 初始化的代碼在調(diào)用I2C 軟件包接口函數(shù)前用戶程序要配置好I2C 總線接口(I2C 引腳功能和I2C 中斷并已使能I2C 主模式)

    標(biāo)簽: nxp lpc2214

    上傳時(shí)間: 2022-05-03

    上傳用戶:fliang

  • 致象爾微TG401數(shù)據(jù)手冊(cè)

    特點(diǎn):o ARM? Cortex?-M4 CPU 平臺(tái)o 高達(dá)150MHz 的高性能Cortex?-M4 處理器o 集成FPU 和MPUo 內(nèi)存o 512KB 片上SRAMo 2KB 至512KB 可編程保持存儲(chǔ)區(qū)o 閃存o 1MB 集成閃存o 原地執(zhí)行NOR 閃存接口,在閃存中執(zhí)行時(shí)接近0 等待狀態(tài)o 供電和復(fù)位管理系統(tǒng)o 片上穩(wěn)壓器,支持1.7V-3.6V 輸入o 上電復(fù)位(POR)o 時(shí)鐘管理o 10-30MHz 晶體振蕩器o 內(nèi)部16MHz RCo 32kHz 晶體振蕩器o 內(nèi)部32kHz RCo 具有可編程輸出頻率的低功耗PLLo 通用DMA:具有硬件流控制的8 通道DMA 控制器o 安全o 使用TRNG(真隨機(jī)數(shù)發(fā)生器)的簡單加密引擎o 定時(shí)器/計(jì)數(shù)器o 1x 系統(tǒng)節(jié)拍定時(shí)器o 4x 32 位定時(shí)器o 1x 看門狗定時(shí)器o 功耗(待確認(rèn))o 滿載:待定uA/MHz @ 25°Co 運(yùn)行:待定uA /MHz @ 25°Co 停止:待定@ 25°Co 保留:待定@ 25°C,32kB 保留存儲(chǔ)器o 待機(jī):待定@ 25°C,內(nèi)部32kHz RCo 12 位逐次逼近寄存器(SAR)ADCo 每秒最多2M 樣本o 可通過8:1 多路復(fù)用器選擇輸入o 1 個(gè)帶有集成PHY 的USB 2.0 高速雙角色端口o 兩個(gè)SD / SDIO 主機(jī)接口o SD/SDIO 2.0 模式:時(shí)鐘高達(dá)50MHzo LCD 控制器o 分辨率高達(dá)480x320o 6800 和8080 異步模式(8 位)o JTAG 調(diào)試功能o 3 個(gè)PWM(6 個(gè)輸出),3 個(gè)捕捉和3 個(gè)QEP 模塊o 4x UART,帶有HW 流控制,最高可達(dá)4Mbpso 3x I2C,支持Fast Mode+(1000kbps)o 2x I2S 接口o 3x SPI 主器件高達(dá)25MHz,1x SPI 從器件高達(dá)10MHzo 32 個(gè)GPIOo 68 引腳QFN 封裝o 溫度范圍:-40 至85°C4.1 帶FPU 內(nèi)核的ARM?CORTEX?-M4帶有FPU 處理器的ARM?Cortex?-M4 是一款32 位RISC 處理器,具有出色的代碼和功率效率。它支持一組DSP 指令,以允許高效執(zhí)行信號(hào)處理算法,非常適合于可穿戴和其他嵌入式市場(chǎng)。集成的單精度FPU(浮點(diǎn)單元)便于重用第三方庫,從而縮短開發(fā)時(shí)間。內(nèi)部內(nèi)存保護(hù)單元(MPU)用于管理對(duì)內(nèi)的訪問,以防止一個(gè)任務(wù)意外破壞另一個(gè)活動(dòng)任務(wù)使用的內(nèi)存。集成緊密耦合的嵌套向量中斷控制器,提供多達(dá)16 個(gè)優(yōu)先級(jí)。4.2 系統(tǒng)內(nèi)存Bock 包含512kB 零等待狀態(tài)SRAM,非常適合于當(dāng)今算法日益增長的需求。同時(shí),內(nèi)存被細(xì)分為更小的區(qū),從而可以單獨(dú)地關(guān)閉以降低功耗。4.3 閃存和XIP 單元提供1MB 的集成NOR 閃存,以支持CPU 直接執(zhí)行。為了提高性能,XIP 單元具有集成的緩存系統(tǒng)。緩沖內(nèi)存與系統(tǒng)內(nèi)存共享。與從系統(tǒng)內(nèi)存運(yùn)行性能相比,XIP 單元使得許多應(yīng)用程序的運(yùn)行接近100%。4.4 ROM集成ROM 固件包含通過NOR 閃存正常引導(dǎo)所需的引導(dǎo)加載程序,支持用于批量生產(chǎn)的閃存編程,還包括用于調(diào)試目的的UART 和USB 啟動(dòng)功能。

    標(biāo)簽: tg401

    上傳時(shí)間: 2022-06-06

    上傳用戶:qdxqdxqdxqdx

  • 原版英文PDF電子書免費(fèi)下載:Digital Integrated Circuit Design From VLSI Architectures to CMOS Fabrication,891頁

    原版英文PDF電子書免費(fèi)下載:Digital Integrated Circuit Design From VLSI Architectures to CMOS Fabrication,891頁 本書從架構(gòu)和算法講起,介紹了功能驗(yàn)證、vhdl建模、同步電路設(shè)計(jì)、異步數(shù)據(jù)獲取、能耗與散熱、信號(hào)完整性、物理設(shè)計(jì)、設(shè)計(jì)驗(yàn)證等必備技術(shù),還講解了vlsi經(jīng)濟(jì)運(yùn)作與項(xiàng)目管理,并簡單闡釋了cmos技術(shù)的基礎(chǔ)知識(shí),全面涵蓋了數(shù)字集成電路的整個(gè)設(shè)計(jì)開發(fā)過程。 本書既可以作為高等院校微電子、電子技術(shù)等相關(guān)專業(yè)高年級(jí)師生和研究生的參考教材,也可供半導(dǎo)體行業(yè)工程師參考。 現(xiàn)代電子系統(tǒng)日益復(fù)雜,隨著半導(dǎo)體工藝水平的提高,單芯片的集成度和功能得以不斷增強(qiáng),其設(shè)計(jì)復(fù)雜度和各種風(fēng)險(xiǎn)也隨之變大,甚至影響到投資者對(duì)研發(fā)新的更復(fù)雜系統(tǒng)芯片的信心。但是,為了有效降低便攜式移動(dòng)系統(tǒng)的產(chǎn)品單位成本和能量消耗,同時(shí)為了在產(chǎn)品獨(dú)特性方面有競(jìng)爭力,越來越多的電子產(chǎn)品仍然必須采用專用芯片解決方案。因此,深入了解數(shù)字集成電路設(shè)計(jì)的基本方法和關(guān)鍵問題,并明確開發(fā)過程的各個(gè)實(shí)踐環(huán)節(jié)存在的風(fēng)險(xiǎn),就變得十分必要。 本書是一本將超大規(guī)模數(shù)字電路基本概念原理與工程實(shí)踐管理相結(jié)合的綜合性教材。作者根據(jù)自己多年的教學(xué)和工程實(shí)踐經(jīng)驗(yàn),從工程實(shí)踐的關(guān)鍵問題出發(fā),對(duì)超大規(guī)模數(shù)字電路的全部講授內(nèi)容進(jìn)行了一次全新的梳理,形成了清晰的解決思路。在數(shù)字集成電路設(shè)計(jì)的各個(gè)環(huán)節(jié),作者重點(diǎn)闡述了設(shè)計(jì)研制中必須考慮的關(guān)鍵因素,在豐富經(jīng)驗(yàn)基礎(chǔ)上對(duì)設(shè)計(jì)中常常出現(xiàn)的問題進(jìn)行了詳盡的討論,可以幫助研究生和資深工程師完善自身的設(shè)計(jì)經(jīng)驗(yàn)和能力,也可以幫助項(xiàng)目管理者明確各個(gè)環(huán)節(jié)的工作重點(diǎn),規(guī)避研發(fā)環(huán)節(jié)的風(fēng)險(xiǎn)。 本書和其他數(shù)字集成電路教科書相比,有兩個(gè)突出的特點(diǎn)。第一是自頂向下的組織方式,從算法的架構(gòu)設(shè)計(jì)開始,討論了同步設(shè)計(jì)的各種時(shí)鐘技術(shù)、設(shè)計(jì)驗(yàn)證、散熱和封裝問題,還討論了VLSI(超大規(guī)模集成電路)經(jīng)濟(jì)學(xué)與項(xiàng)目管理。讀者可以根據(jù)自身需要直接閱讀感興趣的章節(jié),而不需要很多半導(dǎo)體物理與器件方面的知識(shí)。第二是實(shí)用性。本書用了相當(dāng)多的篇幅討論了工程實(shí)踐的問題,例如給出了一個(gè)很好的設(shè)計(jì)數(shù)據(jù)組織方法,還有很多檢查列表與提醒。 在目前的集成電路項(xiàng)目里,大量使用了重用的虛擬元件,通常有十幾個(gè)到幾十個(gè)時(shí)鐘,驗(yàn)證工作量也要占到整個(gè)項(xiàng)目周期和投資的50%~70%,關(guān)于虛擬元件、時(shí)鐘方案、VLSI經(jīng)濟(jì)學(xué)、項(xiàng)目管理、功能驗(yàn)證、設(shè)計(jì)驗(yàn)證等內(nèi)容的討論都可以直接作為實(shí)際項(xiàng)目實(shí)踐的參考??傊緯膬?nèi)容相當(dāng)全面并有一定深度,基本涵蓋了數(shù)字集成電路設(shè)計(jì)的各個(gè)方面,非常適合用作學(xué)習(xí)數(shù)字集成電路設(shè)計(jì)的高年級(jí)本科生與研究生的教科書,也適合作為正在從事數(shù)字集成電路開發(fā)的工程人員的參考書。

    標(biāo)簽:

    上傳時(shí)間: 2022-06-30

    上傳用戶:kristycreasy

主站蜘蛛池模板: 碌曲县| 丹阳市| 石渠县| 都江堰市| 离岛区| 临漳县| 文昌市| 蓬安县| 洛南县| 阳原县| 申扎县| 阿克| 南溪县| 新邵县| 集贤县| 延川县| 武汉市| 成安县| 剑阁县| 黔东| 香格里拉县| 伊金霍洛旗| 运城市| 德保县| 博客| 绍兴市| 湘潭县| 沾化县| 清河县| 泽库县| 正宁县| 延长县| 资兴市| 哈密市| 虎林市| 高要市| 锡林浩特市| 陈巴尔虎旗| 贡觉县| 峨眉山市| 扎赉特旗|