房天下 > 房天下问答 > 业主生活 > 其他
  • 谁能给个avr的数码管测试程序

    我是初学者 如果给了程序还告诉我怎样编译的话 我将不胜感激 我有多少分就给你多少分 不过要能编译通过啊

    提问者:wb725007007

    发布于2010-12-15

共1个回答
  • qyhself 丨Lv 3
    给你一个基于mega16的静态数码管程序,四位的,ICC编译环境。你可以这样移植,打开ICC后,点击“project”新建工程项目,假设新建为“SEG.prj”,然后再点击“FILE”选择“NEW”,将给你的程序复制进去,然后点击另存为“SEG.c”,这时候在右边的边栏里,先点下files,然后右键选择“Add Files”,选中刚才的.c文件就可以了。这时候在右边栏右击选择“Option”,将芯片选择为MEGA16,另外把输出路径改为你所建工程项目的文件夹即可,编译是“shift+F9”,编译完,打开“progisp”,即智峰烧录软件,通过USBISP下载线将HEX文件烧入芯片。以下是测试程序:#include<iom16v.h>#include<macros.h>#include<signal.h>#include<math.h>#define uchar unsigned char#define uint unsigned intvoid initial()//初始程序{DDRD=0xff;PORTD=0xFF;DDRB=0xff;PORTB=0xff;}void delay()//延时程序{uint i,j;for(i=0;i<100;i++)for(j=0;j<100;j++);}void main(void)//主程序{initial();while(1){unsigned char number[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x5f,0x7c,0x39,0x5e,0x79,0x71};unsigned char order[]={0x01,0x02,0x03,0x08};uint i,j;for(i=0;i<4;i++){PORTC=~order[i];//PORTC=0x00;for(j=0;j<16;j++){PORTD=~number[j];//PORTA=0XFF;delay();}if(j>=16)j=0;}if(i>=4)i=0;}}这是一个静态的数码管扫描程序,有什么不懂得可以在线问我,我Hi一直都隐身
    +1 2010-12-15 举报
热门人气推荐
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。