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

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

功率半導(dǎo)體元件

  • 第14章源代碼控制

    當許多編程人員從事這項工作但又不使用源代碼管理工具時,源代碼管理幾乎不可能進行。Visual SourceSafe是Visual Basic的企業(yè)版配備的一個工具,不過這個工具目的是為了保留一個內(nèi)部應(yīng)用版本,不向公眾發(fā)布(應(yīng)當說明的是,M i c r o s o f t并沒有開發(fā)Visual SourceSafe,它是M i c r o s o f t公司買來的) 。雖然Visual SourceSafe有幫助文本可供參考,但該程序的一般運行情況和在生產(chǎn)環(huán)境中安裝 Visual SourceSafe的進程都沒有詳細的文字說明。另外,Visual SourceSafe像大多數(shù)M i c r o s o f t應(yīng)用程序那樣經(jīng)過了很好的修飾,它包含的許多功能特征和物理特征都不符合 Microsoft Wi n d o w s應(yīng)用程序的標準。例如,Visual SourceSafe的三個組件之一(Visual SourceSafe Administrator)甚至連F i l e菜單都沒有。另外,許多程序的菜單項不是放在最合適的菜單上。在程序開發(fā)環(huán)境中實現(xiàn)Visual SourceSafe時存在的復雜性,加上它的非標準化外觀和文檔資料的不充分,使得許多人無法實現(xiàn)和使用 Visual SourceSafe。許多人甚至沒有試用 Vi s u a l  S o u r c e S a f e的勇氣。我知道許多高水平技術(shù)人員無法啟動Visual SourceSafe并使之運行,其中有一位是管理控制系統(tǒng)項目師。盡管如此,Visual SourceSafe仍然不失為一個很好的工具,如果你花點時間將它安裝在你的小組工作環(huán)境中,你一定會為此而感到非常高興。在本章中我并不是為你提供一些指導原則來幫助你創(chuàng)建更好的代碼,我的目的是告訴你如何使用工具來大幅度減少管理大型項目和開發(fā)小組所需的資源量,這個工具能夠很容易處理在沒有某種集成式解決方案情況下幾乎無法處理的各種問題。

    標簽: 源代碼 控制

    上傳時間: 2013-10-24

    上傳用戶:lgd57115700

  • 迄今為止

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

    標簽:

    上傳時間: 2015-07-08

    上傳用戶:royzhangsz

  • struts的詳細說明

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

    標簽: struts

    上傳時間: 2016-01-01

    上傳用戶:懶龍1988

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

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

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

    上傳時間: 2013-12-24

    上傳用戶:thinode

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

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

    上傳時間: 2019-06-08

    上傳用戶:啊的撒旦

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

    標簽: c語言

    上傳時間: 2019-06-09

    上傳用戶:啊的撒旦

  • 以D S P 芯片TM S 320C240 為核心的永磁無刷直流電機 控制器的設(shè)計。其主要內(nèi)容涉及其核心電路的構(gòu)成, 功率開關(guān)元件的驅(qū)動等硬件 電路和軟件編程。

    以D S P 芯片TM S 320C240 為核心的永磁無刷直流電機 控制器的設(shè)計。其主要內(nèi)容涉及其核心電路的構(gòu)成, 功率開關(guān)元件的驅(qū)動等硬件 電路和軟件編程。

    標簽: 320C240 核心 電路 芯片

    上傳時間: 2016-01-02

    上傳用戶:chenbhdt

  • 以D S P 芯片TM S 320C240 為核心控制器的設(shè)計。其主要內(nèi)容涉及其核心電路的構(gòu)成, 功率開關(guān)元件的驅(qū)動等硬件 電路和軟件編程。

    以D S P 芯片TM S 320C240 為核心控制器的設(shè)計。其主要內(nèi)容涉及其核心電路的構(gòu)成, 功率開關(guān)元件的驅(qū)動等硬件 電路和軟件編程。

    標簽: 320C240 核心 電路 芯片

    上傳時間: 2014-01-02

    上傳用戶:cccole0605

  • MCS-51系列單片機實用接口技術(shù)

    本書全面、系統(tǒng)地介紹了MCS-51系列單片機應(yīng)用系統(tǒng)的各種實用接口技術(shù)及其配置。   內(nèi)容包括:MCS-51系列單片機組成原理:應(yīng)用系統(tǒng)擴展、開發(fā)與調(diào)試;鍵盤輸入接口的設(shè)計及調(diào)試;打印機和顯示器接口及設(shè)計實例;模擬輸入通道接口技術(shù);A/D、D/A、接口技術(shù)及在控制系統(tǒng)中的應(yīng)用設(shè)計;V/F轉(zhuǎn)換器接口技術(shù)、串行通訊接口技術(shù)以及其它與應(yīng)用系統(tǒng)設(shè)計有關(guān)的實用技術(shù)等。   本書是為滿足廣大科技工作者從事單片機應(yīng)用系統(tǒng)軟件、硬件設(shè)計的需要而編寫的,具有內(nèi)容新穎、實用、全面的特色。所有的接口設(shè)計都包括詳細的設(shè)計步驟、硬件線路圖及故障分析,并附有測試程序清單。書中大部分接口軟、硬件設(shè)計實例都是作者多年來從事單片機應(yīng)用和開發(fā)工作的經(jīng)驗總結(jié),實用性和工程性較強,尤其是對應(yīng)用系統(tǒng)中必備的鍵盤、顯示器、打印機、A/D、D/A通訊接口設(shè)計、模擬信號處理及開發(fā)系統(tǒng)應(yīng)用舉例甚多,目的是讓將要開始和正在從事單片機應(yīng)用開發(fā)的科研人員根據(jù)自己的實際需要來選擇應(yīng)用,一書在手即可基本完成單片機應(yīng)用系統(tǒng)的開發(fā)工作。   本書主要面向從事單片機應(yīng)用開發(fā)工作的廣大工程技術(shù)人員,也可作為大專院校有關(guān)專業(yè)的教材或教學參考書。 第一章MCS-51系列單片機組成原理   1.1概述   1.1.1單片機主流產(chǎn)品系列   1.1.2單片機芯片技術(shù)的發(fā)展概況   1.1.3單片機的應(yīng)用領(lǐng)域   1.2MCS-51單片機硬件結(jié)構(gòu)   1.2.1MCS-51單片機硬件結(jié)構(gòu)的特點   1.2.2MCS-51單片機的引腳描述及片外總線結(jié)構(gòu)   1.2.3MCS-51片內(nèi)總體結(jié)構(gòu)   1.2.4MCS-51單片機中央處理器及其振蕩器、時鐘電路和CPU時序   1.2.5MCS-51單片機的復位狀態(tài)及幾種復位電路設(shè)計   1.2.6存儲器、特殊功能寄存器及位地址空間   1.2.7輸入/輸出(I/O)口   1.3MCS-51單片機指令系統(tǒng)分析   1.3.1指令系統(tǒng)的尋址方式   1.3.2指令系統(tǒng)的使用要點   1.3.3指令系統(tǒng)分類總結(jié)   1.4串行接口與定時/計數(shù)器   1.4.1串行接口簡介   1.4.2定時器/計數(shù)器的結(jié)構(gòu)   1.4.3定時器/計數(shù)器的四種工作模式   1.4.4定時器/計數(shù)器對輸入信號的要求   1.4.5定時器/計數(shù)器的編程和應(yīng)用   1.5中斷系統(tǒng)   1.5.1中斷請求源   1.5.2中斷控制   1.5.3中斷的響應(yīng)過程   1.5.4外部中斷的響應(yīng)時間   1.5.5外部中斷方式的選擇   第二章MCS-51單片機系統(tǒng)擴展   2.1概述   2.2程序存貯器的擴展   2.2.1外部程序存貯器的擴展原理及時序   2.2.2地址鎖存器   2.2.3EPROM擴展電路   2.2.4EEPROM擴展電路   2.3外部數(shù)據(jù)存貯器的擴展   2.3.1外部數(shù)據(jù)存貯器的擴展方法及時序   2.3.2靜態(tài)RAM擴展   2.3.3動態(tài)RAM擴展   2.4外部I/O口的擴展   2.4.1I/O口擴展概述   2.4.2I/O口地址譯碼技術(shù)   2.4.38255A可編程并行I/O擴展接口   2.4.48155/8156可編程并行I/O擴展接口   2.4.58243并行I/O擴展接口   2.4.6用TTL芯片擴展I/O接口   2.4.7用串行口擴展I/O接口   2.4.8中斷系統(tǒng)擴展   第三章MCS-51單片機應(yīng)用系統(tǒng)的開發(fā)   3.1單片機應(yīng)用系統(tǒng)的設(shè)計   3.1.1設(shè)計前的準備工作   3.1.2應(yīng)用系統(tǒng)的硬件設(shè)計   3.1.3應(yīng)用系統(tǒng)的軟件設(shè)計   3.1.4應(yīng)用系統(tǒng)的抗干擾設(shè)計   3.2單片機應(yīng)用系統(tǒng)的開發(fā)   3.2.1仿真系統(tǒng)的功能   3.2.2開發(fā)手段的選擇   3.2.3應(yīng)用系統(tǒng)的開發(fā)過程   3.3SICE—IV型單片機仿真器   3.3.1SICE-IV仿真器系統(tǒng)結(jié)構(gòu)   3.3.2SICE-IV的仿真特性和軟件功能   3.3.3SICE-IV與主機和終端的連接使用方法   3.4KHK-ICE-51單片機仿真開發(fā)系統(tǒng)   3.4.1KHK—ICE-51仿真器系統(tǒng)結(jié)構(gòu)   3.4.2仿真器系統(tǒng)功能特點   3.4.3KHK-ICE-51仿真系統(tǒng)的安裝及其使用   3.5單片機應(yīng)用系統(tǒng)的調(diào)試   3.5.1應(yīng)用系統(tǒng)聯(lián)機前的靜態(tài)調(diào)試   3.5.2外部數(shù)據(jù)存儲器RAM的測試   3.5.3程序存儲器的調(diào)試   3.5.4輸出功能模塊調(diào)試   3.5.5可編程I/O接口芯片的調(diào)試   3.5.6外部中斷和定時器中斷的調(diào)試   3.6用戶程序的編輯、匯編、調(diào)試、固化及運行   3.6.1源程序的編輯   3.6.2源程序的匯編   3.6.3用戶程序的調(diào)試   3.6.4用戶程序的固化   3.6.5用戶程序的運行   第四章鍵盤及其接口技術(shù)   4.1鍵盤輸入應(yīng)解決的問題   4.1.1鍵盤輸入的特點   4.1.2按鍵的確認   4.1.3消除按鍵抖動的措施   4.2獨立式按鍵接口設(shè)計   4.3矩陣式鍵盤接口設(shè)計   4.3.1矩陣鍵盤工作原理   4.3.2按鍵的識別方法   4.3.3鍵盤的編碼   4.3.4鍵盤工作方式   4.3.5矩陣鍵盤接口實例及編程要點   4.3.6雙功能及多功能鍵設(shè)計   4.3.7鍵盤處理中的特殊問題一重鍵和連擊   4.48279鍵盤、顯示器接口芯片及應(yīng)用   4.4.18279的組成和基本工作原理   4.4.28279管腳、引線及功能說明   4.4.38279編程   4.4.48279鍵盤接口實例   4.5功能開關(guān)及撥碼盤接口設(shè)計   第五章顯示器接口設(shè)計   5.1LED顯示器   5.1.1LED段顯示器結(jié)構(gòu)與原理   5.1.2LED顯示器及顯示方式   5.1.3LED顯示器接口實例   5.1.4LED顯示器驅(qū)動技術(shù)   5.2單片機應(yīng)用系統(tǒng)中典型鍵盤、顯示接口技術(shù)   5.2.1用8255和串行口擴展的鍵盤、顯示器電路   5.2.2由鎖存器組成的鍵盤、顯示器接口電路   5.2.3由8155構(gòu)成的鍵盤、顯示器接口電路   5.2.4用8279組成的顯示器實例   5.3液晶顯示LCD   5.3.1LCD的基本結(jié)構(gòu)及工作原理   5.3.2LCD的驅(qū)動方式   5.3.34位LCD靜態(tài)驅(qū)動芯片ICM7211系列簡介   5.3.4點陣式液晶顯示控制器HD61830介紹   5.3.5點陣式液晶顯示模塊介紹   5.4熒光管顯示   5.5LED大屏幕顯示器   第六章打印機接口設(shè)計   6.1打印機簡介   6.1.1打印機的基本知識   6.1.2打印機的電路構(gòu)成   6.1.3打印機的接口信號   6.1.4打印機的打印命令   6.2TPμP-40A微打與單片機接口設(shè)計   6.2.1TPμP系列微型打印機簡介   6.2.2TPμP-40A打印功能及接口信號   6.2.3TPμP-40A工作方式及打印命令   6.2.48031與TPμP-40A的接口   6.2.5打印編程實例   6.3XLF微型打印機與單片機接口設(shè)計   6.3.1XLF微打簡介   6.3.2XLF微打接口信號及與8031接口設(shè)計   6.3.3XLF微打控制命令   6.3.4打印機編程   6.4標準寬行打印機與8031接口設(shè)計   6.4.1TH3070接口引腳信號及時序   6.4.2與8031的簡單接口   6.4.3通過打印機適配器完成8031與打印機的接口   6.4.4對打印機的編程   第七章模擬輸入通道接口技術(shù)   7.1傳感器   7.1.1傳感器的分類   7.1.2溫度傳感器   7.1.3光電傳感器   7.1.4濕度傳感器   7.1.5其他傳感器   7.2模擬信號放大技術(shù)   7.2.1基本放大器電路   7.2.2集成運算放大器   7.2.3常用運算放大器及應(yīng)用舉例   7.2.4測量放大器   7.2.5程控增益放大器   7.2.6隔離放大器   7.3多通道模擬信號輸入技術(shù)   7.3.1多路開關(guān)   7.3.2常用多路開關(guān)   7.3.3模擬多路開關(guān)   7.3.4常用模擬多路開關(guān)   7.3.5多路模擬開關(guān)應(yīng)用舉例   7.3.6多路開關(guān)的選用   7.4采樣/保持電路設(shè)計   7.4.1采樣/保持原理   7.4.2集成采樣/保持器   7.4.3常用集成采樣/保持器   7.4.4采樣保持器的應(yīng)用舉例   7.5有源濾波器的設(shè)計   7.5.1濾波器分類   7.5.2有源濾波器的設(shè)計   7.5.3常用有源濾波器設(shè)計舉例   7.5.4集成有源濾波器   第八章D/A轉(zhuǎn)換器與MCS-51單片機的接口設(shè)計與實踐   8.1D/A轉(zhuǎn)換器的基本原理及主要技術(shù)指標   8.1.1D/A轉(zhuǎn)換器的基本原理與分類   8.1.2D/A轉(zhuǎn)換器的主要技術(shù)指標   8.2D/A轉(zhuǎn)換器件選擇指南   8.2.1集成D/A轉(zhuǎn)換芯片介紹   8.2.2D/A轉(zhuǎn)換器的選擇要點及選擇指南表   8.2.3D/A轉(zhuǎn)換器接口設(shè)計的幾點實用技術(shù)   8.38位D/A轉(zhuǎn)換器DAC080/0831/0832與MCS-51單片機的接口設(shè)計   8.3.1DAC0830/0831/0832的應(yīng)用特性與引腳功能   8.3.2DAC0830/0831/0832與8031單片機的接口設(shè)計   8.3.3DAC0830/0831/0832的調(diào)試說明   8.3.4DAC0830/0831/0832應(yīng)用舉例   8.48位D/A轉(zhuǎn)換器AD558與MCS-51單片機的接口設(shè)計   8.4.1AD558的應(yīng)用特性與引腳功能   8.4.2AD558與8031單片機的接口及調(diào)試說明   8.4.38位D/A轉(zhuǎn)換器DAC0800系列與8031單片機的接口   8.510位D/A轉(zhuǎn)換器AD7522與MCS-51的硬件接口設(shè)計   8.5.1AD7522的應(yīng)用特性及引腳功能   8.5.2AD7522與8031單片機的接口設(shè)計   8.610位D/A轉(zhuǎn)換器AD7520/7530/7533與MCS一51單片機的接口設(shè)計   8.6.1AD7520/7530/7533的應(yīng)用特性與引腳功能   8.6.2AD7520系列與8031單片機的接口   8.6.3DAC1020/DAC1220/AD7521系列D/A轉(zhuǎn)換器接口設(shè)計   8.712位D/A轉(zhuǎn)換器DAC1208/1209/1210與MCS-51單片機的接口設(shè)計   8.7.1DAC1208/1209/1210的內(nèi)部結(jié)構(gòu)與引腳功能   8.7.2DAC1208/1209/1210與8031單片機的接口設(shè)計   8.7.312位D/A轉(zhuǎn)換器DAC1230/1231/1232的應(yīng)用設(shè)計說明   8.7.412位D/A轉(zhuǎn)換器AD7542與8031單片機的接口設(shè)計   8.812位串行DAC-AD7543與MCS-51單片機的接口設(shè)計   8.8.1AD7543的應(yīng)用特性與引腳功能   8.8.2AD7543與8031單片機的接口設(shè)計   8.914位D/A轉(zhuǎn)換器AD75335與MCS-51單片機的接口設(shè)計   8.9.1AD8635的內(nèi)部結(jié)構(gòu)與引腳功能   8.9.2AD7535與8031單片機的接口設(shè)計   8.1016位D/A轉(zhuǎn)換器AD1147/1148與MCS-51單片機的接口設(shè)計   8.10.1AD1147/AD1148的內(nèi)部結(jié)構(gòu)及引腳功能   8.10.2AD1147/AD1148與8031單片機的接口設(shè)計   8.10.3AD1147/AD1148接口電路的應(yīng)用調(diào)試說明   8.10.416位D/A轉(zhuǎn)換器AD1145與8031單片機的接口設(shè)計   第九章A/D轉(zhuǎn)換器與MCS-51單片機的接口設(shè)計與實踐   9.1A/D轉(zhuǎn)換器的基本原理及主要技術(shù)指標   9.1.1A/D轉(zhuǎn)換器的基本原理與分類   9.1.2A/D轉(zhuǎn)換器的主要技術(shù)指標   9.2面對課題如何選擇A/D轉(zhuǎn)換器件   9.2.1常用A/D轉(zhuǎn)換器簡介   9.2.2A/D轉(zhuǎn)換器的選擇要點及應(yīng)用設(shè)計的幾點實用技術(shù)   9.38位D/A轉(zhuǎn)換器ADC0801/0802/0803/0804/0805與MCS-51單片機的接口設(shè)計   9.3.1ADC0801~ADC0805芯片的引腳功能及應(yīng)用特性   9.3.2ADC0801~ADC0805與8031單片機的接口設(shè)計   9.48路8位A/D轉(zhuǎn)換器ADC0808/0809與MCS一51單片機的接口設(shè)計   9.4.1ADC0808/0809的內(nèi)部結(jié)構(gòu)及引腳功能   9.4.2ADC0808/0809與8031單片機的接口設(shè)計   9.4.3接口電路設(shè)計中的幾點注意事項   9.4.416路8位A/D轉(zhuǎn)換器ADC0816/0817與MCS-51單片機的接口設(shè)計   9.510位A/D轉(zhuǎn)換器AD571與MCS-51單片機的接口設(shè)計   9.5.1AD571芯片的引腳功能及應(yīng)用特性   9.5.2AD571與8031單片機的接口   9.5.38位A/D轉(zhuǎn)換器AD570與8031單片機的硬件接口   9.612位A/D轉(zhuǎn)換器ADC1210/1211與MCS-51單片機的接口設(shè)計   9.6.1ADC1210/1211的引腳功能與應(yīng)用特性   9.6.2ADC1210/1211與8031單片機的硬件接口   9.6.3硬件接口電路的設(shè)計要點及幾點說明   9.712位A/D轉(zhuǎn)換器AD574A/1374/1674A與MCS-51單片機的接口設(shè)計   9.7.1AD574A的內(nèi)部結(jié)構(gòu)與引腳功能   9.7.2AD574A的應(yīng)用特性及校準   9.7.3AD574A與8031單片機的硬件接口設(shè)計   9.7.4AD574A的應(yīng)用調(diào)試說明   9.7.5AD674A/AD1674與8031單片機的接口設(shè)計   9.8高速12位A/D轉(zhuǎn)換器AD578/AD678/AD1678與MCS—51單片機的接口設(shè)計   9.8.1AD578的應(yīng)用特性與引腳功能   9.8.2AD578高速A/D轉(zhuǎn)換器與8031單片機的接口設(shè)計   9.8.3AD578高速A/D轉(zhuǎn)換器的應(yīng)用調(diào)試說明   9.8.4AD678/AD1678采樣A/D轉(zhuǎn)換器與8031單片機的接口設(shè)計   9.914位A/D轉(zhuǎn)換器AD679/1679與MCS-51單片機的接口設(shè)計   9.9.1AD679/AD1679的應(yīng)用特性及引腳功能   9.9.2AD679/1679與8031單片機的接口設(shè)計   9.9.3AD679/1679的調(diào)試說明   9.1016位ADC-ADC1143與MCS-51單片機的接口設(shè)計   9.10.1ADC1143的應(yīng)用特性及引腳功能   9.10.2ADC1143與8031單片機的接口設(shè)計   9.113位半積分A/D轉(zhuǎn)換器5G14433與MCS-51單片機的接口設(shè)計   9.11.15G14433的內(nèi)部結(jié)構(gòu)及引腳功能   9.11.25G14433的外部電路連接與元件參數(shù)選擇   9.11.35G14433與8031單片機的接口設(shè)計   9.11.45G14433的應(yīng)用舉例   9.124位半積分A/D轉(zhuǎn)換器ICL7135與MCS—51單片機的接口設(shè)計   9.12.1ICL7135的內(nèi)部結(jié)構(gòu)及芯片引腳功能   9.12.2ICL7135的外部電路連接與元件參數(shù)選擇   9.12.3ICL7135與8031單片機的硬件接口設(shè)計   9.124ICL7135的應(yīng)用舉例   9.1312位雙積分A/D轉(zhuǎn)換器ICL7109與MCS—51單片機的接口設(shè)計   9.13.1ICL7109的內(nèi)部結(jié)構(gòu)與芯片引腳功能   9.13.2ICL7109的外部電路連接與元件參數(shù)選擇   9.13.3ICL7109與8031單片機的硬件接口設(shè)計   9.1416位積分型ADC一ICL7104與MCS-51單片機的接口設(shè)計   9.14.1ICL7104的主要應(yīng)用特性及引腳功能   9.14.2ICL7104與8031單片機的接口設(shè)計   9.14.3其它積分型A/D轉(zhuǎn)換器簡介   第十章V/F轉(zhuǎn)換器接口技術(shù)   10.1V/F轉(zhuǎn)換的特點及應(yīng)用環(huán)境   10.2V/F轉(zhuǎn)換原理及用V/F轉(zhuǎn)換器實現(xiàn)A/D轉(zhuǎn)換的方法   10.2.1V/F轉(zhuǎn)換原理   10.2.2用V/F轉(zhuǎn)換器實現(xiàn)A/D轉(zhuǎn)換的方法   10.3常用V/F轉(zhuǎn)換器簡介   10.3.1VFC32   10.3.2LMX31系列V/F轉(zhuǎn)換器   10.3.3AD650   10.3.4AD651   10.4V/F轉(zhuǎn)換應(yīng)用系統(tǒng)中的通道結(jié)構(gòu)   10.5LM331應(yīng)用實例   10.5.1線路原理   10.5.2軟件設(shè)計   10.6AD650應(yīng)用實例   10.6.1AD650外圍電路設(shè)計   10.6.2定時/計數(shù)器(8253—5簡介)   10.6.3線路原理   10.6.4軟件設(shè)計   第十一章串行通訊接口技術(shù)   11.1串行通訊基礎(chǔ)   11.1.1異步通訊和同步通訊   11.1.2波特率和接收/發(fā)送時鐘   11.1.3單工、半雙工、全雙工通訊方式   11.14信號的調(diào)制與解調(diào)   11.1.5通訊數(shù)據(jù)的差錯檢測和校正   11.1.6串行通訊接口電路UART、USRT和USART   11.2串行通訊總線標準及其接口   11.2.1串行通訊接口   11.2.2RS-232C接口   11.2.3RS-449、RS-422、RS-423及RS485   11.2.420mA電流環(huán)路串行接口   11.3MCS-51單片機串行接口   11.3.1串行口的結(jié)構(gòu)   11.3.2串行接口的工作方式   11.3.3串行通訊中波特率設(shè)置   11.4MCS-51單片機串行接口通訊技術(shù)   11.4.1單片機雙機通訊技術(shù)   11.4.2單片機多機通訊技術(shù)   11.5IBMPC系列機與單片機的通訊技術(shù)   11.5.1異步通訊適配器   11.5.2IBM-PC機與8031雙機通訊技術(shù)   11.5.3IBM—PC機與8031多機通訊技術(shù)   11.6MCS-51單片機串行接口的擴展   11.6.1Intel8251A可編程通訊接口   11.6.2擴展多路串行口的硬件設(shè)計   11.6.3通訊軟件設(shè)計   第十二章應(yīng)用系統(tǒng)設(shè)計中的實用技術(shù)   12.1MCS-51單片機低功耗系統(tǒng)設(shè)計   12.1.1CHMOS型單片機80C31/80C51/87C51的組成與使用要點   12.1.2CHMOS型單片機的空閑、掉電工作方式   12.1.3CHMOS型單片機的I/O接口及應(yīng)用系統(tǒng)實例   12.1.4HMOS型單片機的節(jié)電運行方式   12.2邏輯電平接口技術(shù)   12.2.1集電極開路門輸出接口   12.2.2TTL、HTL、ECL、CMOS電平轉(zhuǎn)換接口   12.3電壓/電流轉(zhuǎn)換   12.3.1電壓/0~10mA轉(zhuǎn)換   12.3.2電壓1~5V/4~20mA轉(zhuǎn)換   12.3.30~10mA/0~5V轉(zhuǎn)換   12.344~20mA/0~5V轉(zhuǎn)換   12.3.5集成V/I轉(zhuǎn)換電路   12.4開關(guān)量輸出接口技術(shù)   12.4.1輸出接口隔離技術(shù)   12.4.2低壓開關(guān)量信號輸出技術(shù)   12.4.3繼電器輸出接口技術(shù)   12.4.4可控硅(晶閘管)輸出接口技術(shù)   12.4.5固態(tài)繼電器輸出接口   12.4.6集成功率電子開關(guān)輸出接口   12.5集成穩(wěn)壓電路   12.5.1電源隔離技術(shù)   12.5.2三端集成穩(wěn)壓器   12.5.3高精度電壓基準   12.6量程自動轉(zhuǎn)換技術(shù)   12.6.1自動轉(zhuǎn)換量程的硬件電路   12.6.2自動轉(zhuǎn)換量程的軟件設(shè)計   附錄AMCS-51單片機指令速查表   附錄B常用EPROM固化電壓參考表   參考文獻

    標簽: MCS 51 單片機實用 接口技術(shù)

    上傳時間: 2013-10-15

    上傳用戶:himbly

  • 單片機應(yīng)用技術(shù)選編3

    單片機應(yīng)用技術(shù)選編(3) 目錄  第一章 單片機的綜合應(yīng)用技術(shù)1.1 8098單片機存儲器的擴展技術(shù)1.2 87C196KC單片機的DMA功能1.3 MCS?96系列單片機高精度接口設(shè)計1.4 利用PC機的8096軟件開發(fā)系統(tǒng)1.5 EPROM模擬器及其應(yīng)用1.6 MCS?51智能反匯編軟件的設(shè)計與實現(xiàn)1.7 MCS?51系列軟件設(shè)計與調(diào)試中一個值得注意的問題1.8 PL/M語言在微機開發(fā)系統(tǒng)中的應(yīng)用特性1.9 MCS?51單片機開發(fā)系統(tǒng)中的斷點產(chǎn)生1.10 C語言實型數(shù)與單片機浮點數(shù)之間數(shù)據(jù)格式的轉(zhuǎn)換1.11 微機控制系統(tǒng)初始化問題探討1.12 MCS?51中斷系統(tǒng)中的復位問題1.13 工業(yè)控制軟件的編程原則與編程技巧1.14 CMOS微處理器的功耗特性及其功耗控制原理和應(yīng)用1.15 基于PLL技術(shù)的A/D、D/A轉(zhuǎn)換器的設(shè)計1.16 智能儀器監(jiān)控程序的模塊化設(shè)計1.17 用軟件邏輯開關(guān)實現(xiàn)單片機的地址重疊使用1.18 8259A可編程中斷控制器與8031單片機接口電路及編程1.19 NSC810及其在各種微處理機中的應(yīng)用1.20 MC146818在使用中的幾個問題1.21 交流伺服系統(tǒng)中采用8155兼作雙口信箱存儲器的雙微機結(jié)構(gòu)1.22 實用漢字庫芯片的制作 第二章 新一代存儲器及邏輯器件2.1 新一代非易失性記憶元件--閃爍存儲器2.2 Flash存儲器及應(yīng)用2.3 隨機靜態(tài)存儲器HM628128及應(yīng)用2.4 非揮發(fā)性隨機存儲器NOVRAM2.5 ASIC的設(shè)計方法和設(shè)計工具2.6 GAL器件的編程方法及其應(yīng)用2.7 第三代可編程邏輯器件--高密EPLD輯器件EPLDFPGA設(shè)計轉(zhuǎn)換 第三章 數(shù)據(jù)采集、前向通道與測量技術(shù) 3.1 溫度傳感器通道接口技術(shù) 3.2 LM135系列精密溫度傳感器的原理和應(yīng)用 3.3 儀表放大器AD626的應(yīng)用 3.4 5G7650使用中應(yīng)注意的問題 3.5 用集成運算放大器構(gòu)成電荷放大器組件 3.6 普通光電耦合器的線性應(yīng)用 3.7 高線性光耦合型隔離放大器的研制 3.8 一種隔離型16位單片機高精度模擬量接口3.9 單片16位A/D轉(zhuǎn)換器AD7701及其與8031單片機的串行接口3.10 雙積分型A/D轉(zhuǎn)換器與MCS?51系列單片機接口的新方法3.11 8031單片機與AD574A/D轉(zhuǎn)換器的最簡接口3.12 8098單片機A/D轉(zhuǎn)換接口及其程序設(shè)計3.13 提高A/D轉(zhuǎn)換器分辨率的實用方案3.14 用CD4051提高8098單片機內(nèi)10位A/D轉(zhuǎn)換器分辨率的方法3.15 單片機實現(xiàn)16位高速積分式A/D轉(zhuǎn)換器3.16 434位A/D轉(zhuǎn)換器MAX133(134)的原理及應(yīng)用3.17 AD574A應(yīng)用中應(yīng)注意的問題 3.18 CC14433使用中應(yīng)注意的問題 3.19 高精度寬范圍數(shù)據(jù)采集系統(tǒng)的溫度補償途徑 3.20 縮短ICL7135A/D采樣程序時間的一種方法 3.21 用單片機實現(xiàn)的數(shù)字式自動增益控制 3.22 自動量程轉(zhuǎn)換電路 3.23 雙積分型A/D的自動量程切換電路 3.24 常用雙積分型A/D轉(zhuǎn)換器自換程功能的擴展3.25 具有自動量程轉(zhuǎn)換功能的單片機A/D接口3.26 混合型數(shù)據(jù)采集器SDM857的功能與應(yīng)用3.27 高速數(shù)據(jù)采集系統(tǒng)的傳輸接口3.28 SJ2000方向鑒別位移脈寬頻率檢測多用途專用集成電路3.29 多路高速高精度F/D專用集成電路3.30 數(shù)控帶通濾波器的實現(xiàn)及其典型應(yīng)用 第四章 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制4.2 自動控制技術(shù)的新發(fā)展--模糊控制技術(shù)4.3 模糊控制表的確定原則4.4 變結(jié)構(gòu)模糊控制系統(tǒng)的實驗研究4.5 新型集成模糊數(shù)據(jù)相關(guān)器NLX1124.6 功率固態(tài)繼電器的應(yīng)用4.7 雙向功率MOS固態(tài)繼電器4.8 SSR小型固態(tài)繼電器與PSSR功率參數(shù)固態(tài)繼電器4.9 JGD型多功能固態(tài)繼電器的原理和應(yīng)用4.10 光電耦合器在晶閘管觸發(fā)電路中的應(yīng)用4.11 一種廉價的12位D/A轉(zhuǎn)換器AD667及接口4.12 利用單片機構(gòu)成高精度PWM式12位D/A4.13 三相高頻PWM模塊SLE45204.14 專用集成電路TCA785及其應(yīng)用4.15 單片溫度控制器LM3911的應(yīng)用4.16 工業(yè)測控系統(tǒng)軟件設(shè)計的若干問題研究 第五章 人機對話通道接口技術(shù)5.1 廉價實用的8×8鍵盤5.2 單片機遙控鍵盤接口5.3 對8279鍵盤顯示接口的改進5.4 用單片機8031的七根I/O線實現(xiàn)對鍵盤與顯示器的控制5.5 通用8位LED數(shù)碼管驅(qū)動電路ICM7218B5.6 利用條圖顯示驅(qū)動器LM3914組成100段LED顯示器的方法5.7 液晶顯示器的多極驅(qū)動方式5.8 點陣式液晶顯示屏的構(gòu)造與應(yīng)用5.9 點陣式液晶顯示器圖形程序設(shè)計5.10 DMF5001N點陣式液晶顯示器和8098單片機的接口技術(shù)5.11 8098單片機與液晶顯示控制器HD61830接口5.12 利用PL/M語言對點陣式液晶顯示器進行漢字程序設(shè)計5.13 語音合成器TMS 5220的開發(fā)與應(yīng)用5.14 制作T6668語音系統(tǒng)的一些技術(shù)問題5.15 單片機、單板機在屏顯系統(tǒng)中的應(yīng)用 第六章 多機通訊網(wǎng)絡(luò)與遙控技術(shù)6.1 用雙UART構(gòu)成的可尋址遙測點裝置--兼談如何組成系統(tǒng)6.2 IBM?PC微機與8098單片機的多機通訊6.3 80C196單片機與IBM?PC機的串行通訊6.4 IBM?PC與MCS?51多機通訊的研究6.5 半雙工方式傳送的單片機多機通信接口電路及軟件設(shè)計6.6 單片機與IBM/PC機通訊的新型接口及編程6.7 用光耦實現(xiàn)一點對多點的總線式通訊電路6.8 用EPROM作為通訊變換器實現(xiàn)多機通訊6.9 ICL232單電源雙RS?232發(fā)送/接收器及其應(yīng)用6.10 DTMF信號發(fā)送/接收電路芯片MT8880及應(yīng)用6.11 通用紅外線遙控系統(tǒng)6.12 8031單片機在遙控解碼方面的應(yīng)用 第七章 電源、電壓變換及電源監(jiān)視7.1 用于微機控制系統(tǒng)的高可靠性供電方法7.2 80C31單片機防掉電和抗干擾電源的設(shè)計7.3 可編程基準電壓源7.4 電源電壓監(jiān)視器件M81953B7.5 檢出電壓可任意設(shè)定的電源電壓監(jiān)測器7.6 低壓降(LDO?Low Drop?Out)穩(wěn)壓器7.7 LM317三端可調(diào)穩(wěn)壓器應(yīng)用二例7.8 三端集成穩(wěn)壓器的擴流應(yīng)用 第八章 可靠性與抗干擾技術(shù)8.1 數(shù)字電路的可靠性設(shè)計實踐與體會8.2 單片機容錯系統(tǒng)的設(shè)計與實現(xiàn)8.3 微機測控系統(tǒng)的接地、屏蔽和電源供給8.4 ATE的抗干擾及接地技術(shù)8.5 微處理器監(jiān)控電路MAX690A/MAX692A8.6 電測儀表電路的實用抗干擾技術(shù)8.7 工業(yè)鍍鋅電阻爐溫度控制機的抗干擾措施8.8 一種簡單的抗干擾控制算法 ? 第九章 綜合應(yīng)用實例9.1 蔬菜灌溉相關(guān)參數(shù)的自動檢測9.2 MH?214溶解氧測定儀9.3 COP840C單片機在液晶線控空調(diào)電腦控制器中的應(yīng)用9.4 單片機在電飯煲中的應(yīng)用9.5 用PIC單片機制作電扇自然風發(fā)生器 第十章 文章摘要 一、 單片機的綜合應(yīng)用技術(shù)1.1 摩托羅拉8位單片機的應(yīng)用和開發(fā)1.2 NS公司的COP800系列8位單片機1.3 M68HC11與MCS?51單片機功能比較1.4 8098單片機8M存儲空間的擴展技術(shù)1.5 80C196KC單片機的外部設(shè)備事件服務(wù)器1.6 一種多進程實時控制系統(tǒng)的軟件設(shè)計1.7 開發(fā)單片機的結(jié)構(gòu)化高級語言PL/M?961.8 應(yīng)用軟件開發(fā)中的菜單接口技術(shù)1.9 單片機用戶系統(tǒng)EPROM中用戶程序的剖析方法1.10 BJS?98硬件、軟件典型實驗1.11 FORTH語言系統(tǒng)的開發(fā)應(yīng)用1.12 在Transputer系統(tǒng)上用并行C語言編程的特點1.13 一種軟件擴展8031內(nèi)部計數(shù)器簡易方法1.14 MCS 51系列單片機功能測試方法研究1.15 用CD 4520B設(shè)計對稱輸出分頻器的方法1.16 多路模擬開關(guān)CC 4051功能擴展方法1.17 條形碼技術(shù)及其應(yīng)用系統(tǒng)的設(shè)計與實現(xiàn)? 二、 新一代存儲器及邏輯器件2.1 一種多功能存儲器M6M 72561J2.2 串行E2PROM及其在智能儀器中的應(yīng)用2.3 新型高性能的AT24C系列串行E2PROM2.4 2K~512K EPROM編程卡2.5 電子盤的設(shè)計與實現(xiàn)2.6 NS GAL器件的封裝標簽、類型代碼和編程結(jié)構(gòu)間的關(guān)系 三、數(shù)據(jù)采集、前向通道與測量技術(shù)3.1 儀器用精密運放CA3193的應(yīng)用3.2 集成電壓?電流轉(zhuǎn)換器XTR100的應(yīng)用3.3 瞬時浮點放大器及應(yīng)用3.4 隔離放大器289J及其應(yīng)用3.5 ICS?300系列新型加速度傳感器3.6 一種實用的壓力傳感器接口電路3.7 霍爾傳感器的應(yīng)用3.8 一種對多個傳感器進行調(diào)理的方法3.9 兩線制壓力變送器3.10 小信號雙線變送器XTR101的使用3.11 兩線長距離頻率傳輸壓力變送器的設(shè)計3.12 測溫元件AD590及其應(yīng)用3.13 熱敏電阻應(yīng)用動態(tài)3.14 一種組合式A/D、D/A轉(zhuǎn)換器的設(shè)計3.15 一種復合式A/D轉(zhuǎn)換器3.16 TLC549串行輸出ADC及其應(yīng)用3.17 提高A/D轉(zhuǎn)換精度的方法--雙通道A/D轉(zhuǎn)換3.18 模數(shù)轉(zhuǎn)換器ICL7135的0~3.9999V顯示3.19 微型光耦合器3.20 一種高精度的分壓器電路3.21 利用單片機軟件作熱電偶非線性補償3.22 三線制RTD測量電路及應(yīng)用中要注意的問題3.23 微伏信號高精度檢測中極易被忽略的問題3.24 寬范圍等分辨率精密測量法3.25 傳感器在線校準系統(tǒng)3.26 一種高精度的熱敏電阻測溫電路3.27 超聲波專用集成電路LM1812的原理與應(yīng)用3.28 旋轉(zhuǎn)變壓器數(shù)字化檢測及其在8098單片機控制伺服系統(tǒng)中的應(yīng)用3.29 單片集成兩端式感溫電流源AD590在溫度測控系統(tǒng)中的應(yīng)用?3.30 數(shù)字示波器和單片機構(gòu)成的自動測試系統(tǒng)3.31 霍爾效應(yīng)式功率測量研究 四、 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制(實用模糊控制講座之一)4.2 紅綠燈模糊控制器(實用模糊控制講座之二)4.3 國外模糊技術(shù)新產(chǎn)品4.4 交流串級調(diào)速雙環(huán)模糊PI單片機控制系統(tǒng)4.5 時序控制專用集成電路LT156及其應(yīng)用4.6 電池充電控制集成電路4.7 雙向晶閘管4.8 雙向可控硅的自觸發(fā)電路及其應(yīng)用4.9 微處理器晶閘管頻率自適應(yīng)觸發(fā)器4.10 F18系列晶閘管模塊介紹4.11 集成電路UAA4002的原理及應(yīng)用4.12 IGBT及其驅(qū)動電路4.13 TWH8751應(yīng)用集錦4.14 結(jié)構(gòu)可變式計算機工業(yè)控制系統(tǒng)設(shè)計4.15 單片機控制的音響編輯器 五、 人機對話通道接口技術(shù)5.1 5×7點陣LED智能顯示器的應(yīng)用5.2 基于8031串行口的LED電子廣告牌5.3 點陣液晶顯示控制器與計算機的接口技術(shù)5.4 單片機控制可編程液晶顯示系統(tǒng)5.5 大規(guī)模語言集成電路應(yīng)用綜述5.6 最新可編程語言集成電路MSSIO61的應(yīng)用5.7 用PC打印機接口擴展并行接口 六、 多機系統(tǒng)、網(wǎng)絡(luò)與遙控技術(shù)6.1 用8098單片機構(gòu)成的分布式測溫系統(tǒng)6.2 平衡接口EIA?422和EIA485設(shè)計指南6.3 I2C BUS及其系統(tǒng)設(shè)計6.4 摩托羅拉可尋址異步接受/發(fā)送器6.5 用5V供電的RS232C接口芯片6.6 四通道紅外遙控器6.7 TA7333P和TA7657P的功能及應(yīng)用 七、 電源、電壓變換及電源監(jiān)視7.1 單片機控制的可控硅三相電源調(diào)壓穩(wěn)壓技術(shù)7.2 集成開關(guān)電源控制器MC34063的原理及應(yīng)用7.3 LM299精密基準電壓源7.4 集成過壓保護器的應(yīng)用7.5 3V供電的革命7.6 HMOS微機的超低電源電壓運行技術(shù) 八、 可靠性與抗干擾設(shè)計8.1 淺談艦船電磁兼容與可靠性 九、 綜合應(yīng)用實例9.1 8098單片機交流電氣參數(shù)測試系統(tǒng)的設(shè)計和應(yīng)用9.2 主軸回轉(zhuǎn)誤差補償控制器9.3 FWK?A型大功率發(fā)射臺微機控制系統(tǒng)9.4 高性能壓控振蕩型精密波形發(fā)生器ICL8038及應(yīng)用9.5 單片機COP 840C在洗碗機中的應(yīng)用

    標簽: 單片機 應(yīng)用技術(shù)

    上傳時間: 2013-11-10

    上傳用戶:lijinchuan

主站蜘蛛池模板: 大名县| 福泉市| 迁安市| 柘城县| 金寨县| 土默特右旗| 乌兰县| 吉水县| 筠连县| 高碑店市| 定结县| 沙湾县| 阿拉尔市| 新宁县| 大渡口区| 平陆县| 延边| 富川| 大关县| 鹤庆县| 砀山县| 无极县| 金沙县| 万安县| 永康市| 剑川县| 新巴尔虎左旗| 平塘县| 延庆县| 瑞昌市| 娱乐| 阜阳市| 吴堡县| 交城县| 纳雍县| 林口县| 施甸县| 盐津县| 平湖市| 江安县| 桐城市|