资源描述:
《【精品】单片机心得.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、【精品】单片机心得 单片机心得点灯移位和取反(管口低电平亮) 1、亮灭间隔#includevoidmain(){while (1)P3=0XAA;} 2、交替亮灭间隔#includevoidmian(){unsignedchari,j,led=0xaa;while (1){P3=led;if(led==led)led=~led;for(i=200;i>0;i--)for(j=200;j>0;j--);}} 3、一个流水灯#includevoidmain(){unsignedcharm,n;unsigned
2、chari,j;while (1){m=1;for(n=0;n<8;n++){P3=~m;m=m<<1;for(i=0;i<200;i++)for(j=0;j<200;j++);}}}或#includevoiddelay(){unsignedchari,j;for(i=200;i>0;i--)for(j=200;j>0;j--);}main(){unsignedcharled=0xfe;while (1){P3=led;if(led==0xff)led=0xfe;elseled=(led<<1)+1;delay(
3、);}} 4、两个连续#includevoiddelay(){unsignedchari,j;for(i=200;i>0;i--)for(j=200;j>0;j--);}voidmain(){unsignedcharled=0xfc;while (1){P3=led;if(led==0x3f)led=0xfc;elseled=(led<<1)+1;delay();}} 5、两个不连续#includevoiddelay(){unsignedchari,j;for(i=200;i>0;i--)for(j=200;j
4、>0;j--);}voidmain(){unsignedcharled=0xfc;while (1){P3=led;if(led==0xff)led=0xfc;elseled=(led<<2)+3;delay();}}数码管(共阴极的管口输出高电平亮,高位到低位对应dpgfedcba。 )静态(位码)显示每一位数码管要用八个管口来控制段码,一个管口来控制位码。 动态(位码)显示共用管口控制段码,视觉暂留和余辉效应。 可以软件实现,也可以用反向器硬件实现,用595也可以。 驱动数码管(段码)方法三极管。 4
5、511译码器,六和九不好看。 595移位寄存器是串转并,一个控制段码,一个控制位码。 1、一位数码管显示#includeunsignedcharn,led[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voiddelay(){unsignedchari,j,k;for(i=250;i>0;i--){for(j=250;j>0;j--)for(k=2;k>0;k--);}}voidmain(
6、){unsignedcharn;while (1){for(n=0;n<16;n++){P0=led[n];delay();P0=0;//消余晖}}}} 2、多位数码管同时显示,软件动态扫描。 #includeunsignedcharled[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsignedcharled-bit[4]={0xfe,0xfd,0xfb,0xf7};voidde
7、lay(){unsignedchari,j;for(i=10;i>0;i--)for(j=10;j>0;j--);}voidmain(){unsignedcharn;while (1){for(n=1;n<5;n++){P0=0;P0=led[n];P2=led-bit[n-1];delay();}}}按键(对单个管口定义用sbit) 1、拨码开关控制发光二极管#includesbitSW1=P2^6;sbitD1=P3^0;voiddelay(){unsignedchari,j;for(i=0;i<200;i+
8、+)for(j=0;j<200;j++);}voidmain(){while (1){if(SW1==0){delay();if(SW1==0)D1=0;}elseD1=1;}} 2、按键开关控制发光二极管#includesbitkey1=P2^4;sbitD1=P3^0;voiddelay(){unsignedchari,j;for(i=