单片机仿真——用mega16实现流水灯

## 单片机仿真——用mega16实现流水灯
    今天不知怎的,网页版的写不了博客,总是显示服务超时,那就在手机上写写吧。
    单片机与嵌入式系统开课两周了,第一次仿真上线。因为还没有开学,无法在实验室进行实验,所以只能在电脑上进行仿真。这回仿真使用了Proteus 8 Professional和ICCV7 for AVR两个软件,Proteus 8 Professional进行电路搭建,ICCV7 for AVR进行C语言程序编制。
    首先,在Proteus 8 Professional上新建一个project,选择相应的器件。这个电路需要用到1个mega16芯片,4个LED,4个电阻,1个电源。其中,电阻需将默认的10kΩ阻值调整为200Ω阻值,确保LED能正常发光。
    之后我们需要在ICCV7 for AVR中编写我们需要的程序
    #include<iom16v.h>void delay_ms(int t){  	 int j;	 unsigned char i;	 for (j=0;j<t;j++)	 {	  	 for (i=0;i<255;i++)		 {		  	 ;		}	}}void main(void){  unsigned char i;  DDRD = 0x0f;    //将DDRD配置为二进制0b00001111  PORTD = 0x0f;  while(1)  {   	for(i=0;i<4;i++)	{	 	PORTD = PORTD & (~(1<<i));  //00000001->11111110		delay_ms(200);		PORTD = 0x0f;	}	}}
    编写程序完成且编译之后,我们在Proteus 8 Professional中双击芯片,载入该程序,选择合适的频率(默认频率就可实现)。
    最后一步,仿真,成功!
经验分享 程序员 微信小程序 职场和发展