89C51单片机语言和ATmega16的不同

2024-12-14 02:20:37
推荐回答(5个)
回答1:

从程序代码上看是对应的寄存器名称不同,可以网上下一个AVR单片机的代码自动生成软件,设置对应的功能就可以了,然后比照51去移植。
它们的区别主要应该是架构不同,AVR是哈佛结构,处理速度更快。

回答2:

这个还是算了吧,如果要改的话得改很多地方的,你还是别想着改吧,最好去学吧,个人建议去学ARM吧~~~学atmega做跳板~~~atmega是介于ARM和51之间的~~~atmega和51都是可以用C语言或者汇编语言的,主要是一些寄存器之类的东西不一样,其实总体内容都很类似,我觉得最多的是名字不一样~~~

回答3:

51你可以用sbit来对某一端口直接进行位操作,它的处理数据速度慢延时函数的取值不同。avr可以进行位操作,不同编译器的书写不一样,这个你要注意。操作寄存器时一般avr的书写与51不同,但你仔细研究其实实质是一样的,有时也可以象51那样书写如XXX=0xXX;

回答4:

他们之间结构不同,AVR不能进行位操作,所以以前SBIT的什么的全得改

回答5:

avr的单片机需要在之前进行寄存器设置,可以看看天狼星电子的视频中有讲到具体的操作