单片机仿真——用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中双击芯片,载入该程序,选择合适的频率(默认频率就可实现)。 最后一步,仿真,成功!
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
深度学习欠拟合下的模型调优