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

Direct<b>or</b>y

  • 学生成绩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);//输入总函数 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);//按照数学成绩排序 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);//排序总函数 void menu(void);//菜单调度总函数 int search_student2(int);//按学号查询学生信息并输出 void search_student3(int);//按平均分最高查询并输出 void search_student1(void);//查询总函数 void delete_student2(int,int);//删除学生信息 void delete_student1(void);//删除总函数 void change_student2(int);//修改学生资料 void change_student1(void);//修改总函数 void input_score3(int);//统计成绩 void input_score1(void);//统计成绩总函数 void print_help(void);//输出帮助信息 void exit_student(void);//退出系统 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,"  学号       姓名           数学成绩       英语成绩     计算机成绩     平均成绩\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)//退出系统   {   exit(1);   } void print_help(void)//输出帮助信息   {   printf("本系统所能容纳的最大学生数为%d人\n学生信息保存在D盘根目录下,保存文件为“学生信息.txt”。\n感谢使用!\n",N);   } void input_score1(void)//统计成绩总函数   {   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)//统计成绩   {   printf("数学新成绩:");   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("数学成绩:%.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)//修改总函数   {   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)//删除总函数   {   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)//查询总函数   {   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)//菜单调度总函数   {   print_menu();   choosemenu();   } void sort_student1(void)//排序总函数   {   printf("1、按数学成绩排序\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("  学号       姓名           数学成绩       英语成绩     计算机成绩     平均成绩\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("======欢迎来到学生信息管理系统======\n");   printf("      1、输入学生资料\n");   printf("      2、删除学生资料\n");   printf("      3、查询学生资料\n");   printf("      4、修改学生资料\n");   printf("      5、显示学生资料\n");   printf("      6、统计学生成绩\n");   printf("      7、排序学生成绩\n");   printf("      8、保存学生资料\n");   printf("      9、获取帮助信息\n");   printf("      10、退出系统\n");   printf("====================================\n");   printf("请选择:");   } void input_student2(void)//输入总函数   {   char end;   printf("请输入学生信息(在最后一个学生信息录入完成后以“/”结束录入):\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("数学成绩:");   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)//按照数学成绩排序   {   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;     }   }         运行结果:                         源文件下载地址: http://115.com/file/clnq138g#一个简单的学生成绩管理系统.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);//输入总函数 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);//按照数学成绩排序 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);//排序总函数 void menu(void);//菜单调度总函数 int search_student2(int);//按学号查询学生信息并输出 void search_student3(int);//按平均分最高查询并输出 void search_student1(void);//查询总函数 void delete_student2(int,int);//删除学生信息 void delete_student1(void);//删除总函数 void change_student2(int);//修改学生资料 void change_student1(void);//修改总函数 void input_score3(int);//统计成绩 void input_score1(void);//统计成绩总函数 void print_help(void);//输出帮助信息 void exit_student(void);//退出系统 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,"  学号       姓名           数学成绩       英语成绩     计算机成绩     平均成绩\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)//退出系统   {   exit(1);   } void print_help(void)//输出帮助信息   {   printf("本系统所能容纳的最大学生数为%d人\n学生信息保存在D盘根目录下,保存文件为“学生信息.txt”。\n感谢使用!\n",N);   } void input_score1(void)//统计成绩总函数   {   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

    上传用户:啊的撒旦

  • C语言编写雅可比迭代

    # include<stdio.h> # include<math.h> # define N 3 main(){     float NF2(float *x,float *y);     float A[N][N]={{10,-1,-2},{-1,10,-2},{-1,-1,5}};     float b[N]={7.2,8.3,4.2},sum=0;     float x[N]= {0,0,0},y[N]={0},x0[N]={};     int i,j,n=0;     for(i=0;i<N;i++)     {         x[i]=x0[i];     }     for(n=0;;n++){                 //计算下一个值     for(i=0;i<N;i++){         sum=0;         for(j=0;j<N;j++){             if(j!=i){                 sum=sum+A[i][j]*x[j];             }         }         y[i]=(1/A[i][i])*(b[i]-sum);         //sum=0;     }     //判断误差大小         if(NF2(x,y)>0.01){                 for(i=0;i<N;i++){         x[i]=y[i];     }     }             else             break;     }     printf("经过%d次雅可比迭代解出方程组的解:\n",n+1);     for(i=0;i<N;i++){         printf("%f      ",y[i]);     } } //求两个向量差的二范数函数 float NF2(float *x,float *y){ int i; float z,sum1=0; for(i=0;i<N;i++){     sum1=sum1+pow(y[i]-x[i],2); } z=sqrt(sum1); return z; }

    标签: C语言 编写 迭代

    上传时间: 2019-10-13

    上传用户:大萌萌撒

  • VHDL4选1数据选择器

    VHDL编写的4选一数据选择器 entity mux41a is        port(a,b:in std_logic;                s1,s2,s3,s4:in std_logic;                y: out std_logic); end entity mux41a; architecture one of mux41a is signal ab:std_logic_vector(1 downto 0);

    标签: VHDL 数据选择器

    上传时间: 2020-05-15

    上传用户:cdga

  • 四位数密码锁

    本设计方案中我采用多路复用器,2-4译码器,LED灯和或门等器件来完成设计。用2个74x151多路复用器扩展为16-2多路复用器,题目中的地址代码A、B、C、D4个输入端作为扩展的多路复用器的地址端,DO-D8作为数据端。开箱钥匙孔信号E作为2-4decoder的使能端。设计开锁的正确代码为0101,当用钥匙开锁(即2-4decoder的使能端有效〉时,如果正确输入开锁密码:0101,则输出Y为逻辑高电平,Y’为逻辑低电平,锁被打开,而LED灯不会亮(即不会报警);如果输入的密码错误或者钥匙孔信号无效,则输出Y为逻辑低电平,Y’为逻辑高电平,锁无法打开,逻辑高电平Y’驱动LED灯亮,产生报警效果。2.设计原理图:(以下电路图为用QuartusI踪合后截屏所得) 本设计方案中我采用多路复用器,2-4译码器,LED灯和或门等器件来完成设计。用2个74x151多路复用器扩展为16-2多路复用器,题目中的地址代码A、B、C、D4个输入端作为扩展的多路复用器的地址端,DO-D8作为数据端。开箱钥匙孔信号E作为2-4decoder的使能端。设计开锁的正确代码为0101,当用钥匙开锁(即2-4decoder的使能端有效〉时,如果正确输入开锁密码:0101,则输出Y为逻辑高电平,Y’为逻辑低电平,锁被打开,而LED灯不会亮(即不会报警);如果输入的密码错误或者钥匙孔信号无效,则输出Y为逻辑低电平,Y’为逻辑高电平,锁无法打开,逻辑高电平Y’驱动LED灯亮,产生报警效果。2.设计原理图:(以下电路图为用QuartusI踪合后截屏所得)

    标签: 密码锁

    上传时间: 2021-04-26

    上传用户:情可倾想

  • 复活节计算器

    复活节计算 int y, n, a, q, b, m, w, d, mm = 4; y = atoi(argv[1]); n = y-1900;  a = fmod(n,19); 

    标签: 计算器 C语言

    上传时间: 2021-07-09

    上传用户:scfan2004

  • 智能家居的标准与协议

    家 庭 总 线 是 智 能 家 居 实 现 的 重 要 基 础 . 是 住 宅 内 部 的 神 经 系 统 . 其 主 要 作 用 是 连 接 家 中的各 种 电子 、 电气 设 备 . 负责 将 家 庭 内 的 各 种 通 信 设 备 ( 包 括 安 保 、 电话 、 家 电 、 视 听 设 备 等 )连 接 在 一 起 . 形 成 一 个 完 整 的家 庭 网 络 。 日 本 是 较 早 推 动 智 能 家 居 发 展 的 国 家 之 一 , 它 较 早 地 提 出 了 家庭 总线 系统 (H O m e B u S S Y S t e m , 简称H B S ) 的概念 . 成 立 了 家庭 总线 (H B S )研 究会 . 并 在 邮政省和 通 产 省 的指 导 下 组 成 了H B S 标 准委 员 会 , 制定 了 日 本 的H B s 标 准 。 按 照 该 标 准 , H B S 系统 由一 条 同 轴 电 缆 和 4 对 双 绞 线 构 成 , 前 者 用 于 传 输 图 像 信 息 . 后者 用 于 传输语 音 、 数据及 控制信 号 。 各 类家用 设 备 与 电气 设 备 均 按 一 定 方式 与H B S 相 连 , 这 些 电气设 备 既 可 以在 室 内进 行 控制 . 也 可 在异地 通 过 电话进行 遥 控 。 为适 应 大型 居住社 区 的需 要 , 1 9 8 8 年年初 , 日 本住 宅信息 化推进协会 又 推 出 了 超级 家庭总 线 (S u p e r H0 m e B u s S y s t e m , 简 称S - H B S ) , 它适 用 于 更 大 的范 围 . 因 为一 个S - H B s 系统可 挂接 数千个家庭 内部 网 。 家庭 智能化要 求诸 多家 电和 网络能够彼此 相容 . 总线协 议是 其精髓 所 在 , 只 有接 E l 畅通 , 家 电才能 “ 听懂 ” 人 发 出的指令 , 因此 总线标准 的物理 层 接 口 形 式 是 智能 家居 亟 待解决 的重 要 问题 之 一 。 目前 比 较成型 的总线标 准 协 议 主 要 是 美 国公 司 提 出 的 , 包 括E c h e l o n 公 司 I)~L o n W o r k s 协议 、 电子 工 业 协 会 (E I A ) 的C E 总线协 议 (C EB u S ) 、 S m a r t Ho u s e L P 的智 能屋 协 议 和×一 1 0 公 司 的X 一 1 0 协 议等。 这 些 协 议 各 有 优 劣 。

    标签: 智能家居

    上传时间: 2022-03-11

    上传用户:

  • LED灯封装Altium Designer AD PCB封装库2D3D元件库文件

    LED灯封装Altium Designer AD PCB封装库2D3D元件库文件PCB Library : LED.PcbLibDate        : 2020/12/29Time        : 16:50:29Component Count : 49Component Name-----------------------------------------------LED 1W/3WLED 1W/3W-WLED 3mm-2PLED 3MM-BLED 3MM-GLED 3MM-RLED 3MM-WLED 3MM-YLED 3MM-YCLED 5MM-BLED 5MM-GLED 5MM-RLED 5MM-WLED 5MM-YLED 5MM-YCLED 0603-RGLED 0603BLED 0603GLED 0603RLED 0603WLED 0603YLED 0805BLED 0805GLED 0805RLED 0805WLED 0805YLED 1206BLED 1206GLED 1206RLED 1206WLED 1206YLED 3528-2PinLED 3528-4PinLED 5050LED 5630LED 5730-VLED F234-BLED F234-GLED F234-RLED F234-WLED F234-YLED F257-BLED F257-GLED F257-RLED F257-WLED F257-YLED SH-5MM-WLED SH-8MMLED SH-8MM-W

    标签: led 封装 altium designer pcb

    上传时间: 2022-03-11

    上传用户:

  • SD卡 USB VGA DB9 RJ45 RJ22 通讯接口封装Altium Designer AD

    SD卡 USB VGA DB9 RJ45 RJ22 通讯接口封装Altium Designer AD PCB封装库2D3D元件库文件PCB Library : 通讯接口.PcbLibDate        : 2020/12/29Time        : 14:31:34Component Count : 46Component Name-----------------------------------------------BM4-M003-BBM4-M003-BKBM4-M003-GBM4-M003-RBM4-M003-YDB9/P_ADB9/S_AMicro SDMICRO SIMMICRO SIM-BNano-SIM-ARJ-45A12RJ11-4P4C-LI-BKRJ11-4P4C-LI-GYRJ11-6P6C-BKRJ11-6P6C-GYRJ45_180RJ45-2RJ45-2LEDTF-1USB_A/P_AUSB_A/P_BUSB A/2-14USB A/2-17USB Type-C-6Pin_AUSB Type-C-16Pin_AUSB Type-C-24Pin_AUSB-A/S_AUSB-A/S_BUSB-A/S_CUSB-A/S_DUSB-A/S_EUSB-A/S_FUSB-B/S_AUSB-C/S_AUSB-C/S_BUSB-C/S_CUSB-micro_AUSB-MICRO_BUSB-micro_CUSB-MICRO_DUSB-MICRO_EUSB-MICRO_FUSB-MINI-AVGA15AVGA15B

    标签: 通讯 接口

    上传时间: 2022-03-12

    上传用户:得之我幸78

  • AD19快捷键小结

    走线状态,+tab,改变线宽;2d 线状态,+shift+tab ,切换倒角方式;crtl+左键 :高亮选中网络;左下角双击,层管理,显示或隐藏某一层;旋转:Space;X 轴镜像:X;Y 轴镜像:Y;板层管理:L;栅格设置:G;单位进制切换:Q;对齐-水平:A,D;对齐-垂直:A,I,I,Enter;对齐-顶部:A,T;对齐-底部:A,B;对齐-左侧:A,L;对齐-右侧:A,R;设计-类设置:D,C;设计-板层管理:D,K;

    标签: Altium Designer

    上传时间: 2022-04-17

    上传用户:trh505

  • NCS8803 参考设计_HDMI to eDP

    NCS8803 3.2.1 功能:是一颗将HDMI信号转EDP信号的转接芯片。其应用如下: 3.2.2产品特征 输入:HDMI 输出:Embedded-DisplayPort (eDP) EDP接口 1/2/4-lane eDP @ 1.62/2.7Gbps per lane HD to WQXGA (2560*1600) supported 内置EDP协议 HDMI Input HDMI 1.4a supported 支持RGB444/YCbCr444/YCbCr422 像素时钟: 340MHz 支持双通道音频输入; 参考时钟 任何频率,在19MHz到100MHz之间,单端时钟输入 内置5000 ppm SSC与否 通信方式 IIC 电源 1.2V core supply 2.5V or 3.3V IO supply 功耗:150Mw 封装:QFN-56 (7mm x 7mm) 3.2.4 应用产品:广告机,平板、医疗器械、车机、显示器、小电视、车载电视等 3.2.5 应用平台:RK、全志、M-star、炬力等 3.3.6 推广注意事项A:确认客户使用屏的分辨率,最常用的是1366x768@60Hz和1920x1080@60Hz BNCS8803支持4-lane DP / eDP输出通常支持WQXGA所需 (2560 * 1600)及以上60 hz的帧速率 C.确认客户的信号源,要是标准的HDMI信号,其他的都不行; D.此芯片支持缩放功能,分数缩放比例2:1至1:2; E、此芯片不是纯硬件转换芯片,需要通过IIC或者SPI进行初始化,初始化一般使用客户CPU进行,这样方便控制时序也节省成本,如果不使用客户CPU进行初始化就要另外加MCU进行配置。 设计注意事项: A、NCS8801S设计的时候要特别注意输入输出的走线问题,要做好屏蔽以免信号受到干扰。 B、注意电源滤波 C、设计的时候预留LVDS信号要预留阻抗匹配电阻 D、设计的时候复位脚最好由客户CPU的GPIO口进行控制,以便控制整个方案的时序,避免后面出现问题。

    标签: ncs8803 hdmi

    上传时间: 2022-07-08

    上传用户: