文档详情

嵌入式概论综合应用课程设计_矩阵键盘控制LED点阵电子屏.pptx

发布:2017-12-10约1.31千字共14页下载文档
文本预览下载声明
院 系:信息工程学院 专 业: 指导老师: 作者姓名: ;总览;一、设计说明;二、设计方案;3、LED点阵显示函数设计;4、点阵图形设计;Company Logo; int main(void) { int fd_key; int fd_led; int ret; int m,n,k,l,r,u; unsigned char bufl[2]; unsigned char bufk[2]; double x; char scan = 0xff; int bufc[8]={0xff,0x02,0x04,0x08,0x10,0x20,0x40,0xff};//z列1 int bufr[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//行0 int bufc1[8]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};//1 int bufr1[8]={0xff,0xbd,0xb9,0xb5,0xad,0x9d,0xbd,0xff};//0 fd_key = open(DEVICE_NAME1,O_RDWR); fd_led = open(DEVICE_NAME2,O_RDWR);;if (fd_key == -1 fd_led == -1) { printf(Open drivers error\n); } else { bufk[0]=0x22; while(1) { read(fd_key,bufk,1); if(bufk[0]!=0xff) scan=bufk[0]; switch(scan) { case 0x05: { for(m=0;m=7;m++) { bufl[0]=bufc[m]; bufl[1]=bufr[m]; write(fd_led,bufl,2); } }break;;case 0x02: { for(k=0;k=7;k++) { for(n=0;n=7;n++) { bufl[0]=bufc[(n+k)%8]; bufl[1]=bufr[n]; write(fd_led,bufl,2); } } }break; case 0x08: { for(l=7;l=0;l--) { for(r=0;r=7;r++) { bufl[0]=bufc[(r+l)%8]; bufl[1]=bufr[r]; write(fd_led,bufl,2); } } }break;;} } } ret = close(fd_led); ret = close(fd_key); printf (close key_led driver test\n); return 0; } //-------------------end main------------------------------------;四、设计结果;五、心得体会;THE END
显示全部
相似文档