问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

STC单片机绝对调用和长调用指令有何本质上的区别?如何选用

发布网友 发布时间:2022-05-03 02:23

我来回答

4个回答

热心网友 时间:2023-10-05 15:23

指令结构相同:指令 + 直接地址。
执行过程不同:调用指令要保护现场,进行堆栈操作,转移指令不需要;
执行结果不同:调用指令执行后会返回执行下一条指令,程序模块没有结束;
转移指令不会返回,本条指令就是程序模块的结尾。区别是:1、下载方式不同,AT中的S51S52系列的下载方式是ISP下载方式,而C51C52与STC都是串口下载方式2、内存大小有所不同3、部分特殊功能寄存器不同4、STC的单片机相对地执行速度更快,功能更加强大可寻址的范围不一样,ACALL是双字节指令,调用指令的地址PC加2后与所调用的子程序的起始地址应在同一个2KB范围内,而LCALL是三字节指令,可在64KB范围内调用,换句话说,就是子程序离得太远就要用LACLL,离得近用ACALL就可以。LJMP和SJMP同上,LJMP三字节指令,可转移到64KB程序存储器任意单元,SJMP是双字节指令,只可以在存储器256个单元范围内转移。。STC 单片机采用 51 内核,在 51 的基础上有所改进,而 PIC 是精简指令集的单片机,二者的技术路线不同。由于 51 的资源多,初学者一般会选择 51 系列,学会一种单片机再学习其他系列很容易。做项目的专业人员则不同,单片机种类繁多,可以选择最合适的型号,甚至定制专用芯片。

热心网友 时间:2023-10-05 15:23

在当今这个模拟电子技术看似被冷落(其实无处不在)和数字电子技术主导的信息时代,对于刚入电子信息相关专业的大中专学生或需要转型进入电子产品硬件研发行业的工程师而言,首先面对的第一个问题是:8位的51单片机和32位的基于Cortex-M3内核的STM32单片机哪一个作为电子技术入门的硬件平台更合适?在综合收集网上相关信息后,我相信很多刚入行的朋友,都应该被支持51单片机和STM32单片机任一种硬件平台作为入门的理由搞得不知所措。

我虽不才,但是,也从事硬件研发工作十年之久。因此,我也想从自己的角度给各位刚入行或准备进入电子产品硬件研发行业的工程师和大中专学生一个尽可能全面的参考依据。当然,我发布的言论,也仅仅是代表我个人的观点,各位朋友如何做出抉择,依旧要考各位朋友自己斟酌。

由于在国内,STC系列的51单片机市场占有率最高,参考资料和使用人群众多,因此,在下文中,我们将以STC单片机作为51单片机的代表。正如,STM32单片机作为基于ARM公司Cortex-M3内核单片机的代表一样。在这里STC单片机是51单片机的代表,STM32是基于ARM公司Cortex-M3内核单片机的代表。

2、从易到难的学习规律

我想各位朋友都应该知道学习的基本规律就是:从易到难。无论我们学习任何知识、经验和技能,都要遵循这个规律,否则,好高骛远的后果就是:要么面对重重困难,选择放弃,或者,从头再来。

图1

STC单片机与STM32单片机相比,具备以下优点:

(1)STC单片机内部结构比STM32单片机简单,便于初学者理解单片机的经典结构。虽然STC单片机和STM32单片机都是哈弗计算机结构,但是,STC单片机的内部结构相对而言,更为简单。

(2)STC单片机寄存器数量比STM32单片机少了很多很多。STC单片机的寄存器只有几十个,可是STM32单片机的寄存器有几百个。两者完全不在一个数量级上。由于MCS-51、Cortex-M3、Cortex-M4、Cortex-A9、Cortex-A73或者MIPS等等单片机内核及片内外设,都是通过程序操作寄存器实现特定功能的,因此,寄存器数量只有几十个的STC单片机,相对而言,更容易让初学者入门学习。

(3)STC单片机采用MCS-51指令集,其汇编指令一百多条,比STM32少了很多很多。相对少的汇编指令集,能够让初学者相对快速的了解运算处理器汇编指令的功能、结构与计算机体系结构之间的关系。

(4)最新版本的STC8系列单片机具备下载程序方便和自身就是仿真器的特点,节约初学电子产品设计技术的资金投入,学习开发技术方便快捷。STM32需要单独购买独立的Jlink仿真器才可以仿真。

(5)STC单片机具备相对简单的经典体系结构,使初学者不必花费太多精力在其硬件本身,可以集中精力掌握好后续任何类型单片机开发的基础语言:C语言。同时,也可以掌握电子产品基本的设计思想、经验和技能。

因此,综上所述,根据我们由浅入深和从易到难的学习规律可知:初学电子产品开发技术的工程师和大中专学生,应先学习和掌握采用STC单片机开发电子产品的技能。这是基础技能。

热心网友 时间:2023-10-05 15:24

你说的at是指atmel的at89c2051这些?如果是的话那我回答一下。

这两个都是51的指令集和基础架构,所以学过一种之后再学另一种应该很轻松。

stc也有引脚比较少的,最少的有8个脚的,at也有引脚多的,at89s52这样的至少也有40个脚,不过这玩意太落后,基本上没人用了吧。

历史上51体系是intel搞出来的,最早的时候的51重新写个代码需要把片子放到紫外线灯下擦除,再放编程器上写入,再放到目标板子上,调试的代价极高。

atmel好像是第一家使用flash技术生产51芯片的,flash可以电擦除,这样就不需要紫外线灯了,而且flash的寿命是1000次,所以flash技术推出就迅速把前一代紫外线擦除的淘汰了。后期atmle还推出了89s51这样的不用上编程器,直接在板上就可以改写的,又进一步大大提高了工作效率。

stc好像是第一家使用串口方式就可以改写程序的,这又一次大大提高了工作效率而且可以不需要专门的编程器。现在看如果是51的话,似乎没有什么理由要用atmel的,即贵又不好用。

热心网友 时间:2023-10-05 15:24

这个不需要你选用。
你写 JMP 即可。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
轻度慢性萎缩性胃炎 活动期,伴轻度肠 化 胃角多发糜烂。医生说了我... 胃窦粘膜慢性轻度萎缩性炎伴轻度肠化胃窦粘膜慢性轻度萎缩性炎? 芬兰留学读研费用是多少 芬兰留学读研时间 去芬兰留学学费生活费一年要多少 芬兰留学读研费用是多少? 芬兰留学读研学费多少? 感冒好多天了,可不可以打蓝球或者其它运动出出汗啊? 感冒打喷嚏,鼻塞然后可以让自己多出出汗吗 宝宝感冒了能去游泳吗 这个是单片机吗? 1.公司32单片机是基于什么内核的 单片机与OS区别在哪 arm stm32单片机dma传输数据时m3内核可以访问内存吗 同是基于cortex-m3的单片机为何引脚数有不同呢 用样是Cortex-M3内核不同公司不同型号开发的单片机,程序下载方式是否都一样? Cortex-M3处理器与8051比有哪些特点? STM32 M0和M3内核单片机做浮点除法运算和整型除法运算,分别的用时。希望能给大概数据参考。 contextM3内核 arm架构 stm32芯片 哈佛结构是什么关系? M3单片机是什么 论述STM32和Cortex-M3的关系,STM32的外设有哪些? 华硕GL552JX的m2接口是什么协议?? 技嘉B460M+AORUS+ELITE的m2接口协议 惠普elitedesk800g3dm主板上的m2接口支持什么协议的硬盘 微星z170主板m2支持什么协议 可否通过 alembic 脚本来创建并行索引数据库表? windows10系统盘哪些可以删除 飞利浦PT786电动剃须刀电池用尽电后,在充电时可以边充电边使用吗 打火机充气罐怎么做个阀门 补胎充气罐一次没用完剩余的还能用吗? 现代的男男种田生子文只要书名 特别喜欢吃炸鸡,经常吃这种油炸食品有什么危害? 常吃炸鸡对身体有没有危害?这段时间学校门口开了家鸡器人炸鸡店,我儿子天天就是吃炸鸡。 支付宝里的饿了吗想修改绑定的手机号码,但是之前的手机号都停机了,怎么办_百度问一问 如何上好一堂数学课.pdf 如何上好一堂优质有效的数学课 如何上好一堂高中数学课? 《怎样上好一节小学数学课》 Kinect开发,如何将骨骼节点JointType这一枚举数据实时保存在txt文档里? 如何上好一堂初中数学课 如何使电脑初始化??? 怎样把电脑初始化 电脑怎么一键还原到初始化 怎么用python做出地球 我把裤子卷起来,当成七分裤穿,但是卷起来的部分总是往下掉,有什么办法可以固定好,不往下掉? 删掉了微信好友,但是又不知道和手机号,怎么加回? 删除微信好友不记得怎么加回来? 一个可以两个人同时用吗? 一个可以两个人同时用吗? 一个能两个人同时登录吗?