stm32单片机烧录器能支持stc吗? | 您所在的位置:网站首页 › stm32烧录接线图 › stm32单片机烧录器能支持stc吗? |
我的单片机烧录软件中为什么没有stc89c52型的单片机,怎么才能找到?
STC是国产单片机,通过STC串口软件,和电脑串口下载程序到单片机里面,一般的烧录器里面的软件都不支持STC的单片机型号 [img]STC单片机的c代码可以移植到stm32上吗,要不要做什么修改?换芯片,改电路,底层肯定要重写的。 写程序有个好习惯还是很重要的。下面说一下移植方面的习惯, 提高移植性,最重要的手段就是隐藏硬件实现的细节,把逻辑与底层分开。 举个例子,LED闪一下亮一下,P1_0=0;在51上就是一句话的事。就这一句,就有三个地方涉及硬件,(1)硬件上是P1.0接LED,(2)硬件上低电平亮,相应的是高电平灭,(3)硬件是用的51,用了51独有的位操作。 换个电路,或者换个芯片,这些都要重新改写。假设程序里面有十个地方需要亮灯,移植时就要改十个地方。把亮灯这件事定义成一个函数,或者叫方法,或者叫操作,把具体的操作细节隐藏起来,只表示出做了一件什么事情--亮灯。像这样,voidLED_ON(void);在主程序里面,或者说在应用层的程序中调用LED_ON();就是亮灯,具体怎么亮灯,应用程序不管,也不能管,而是由单独的底层程序来做,也就是LED_ON这个函数的内容,是放在单独的一个文件中。用51,就写一个51下的底层,要移植,要用CM3就写一个CM3的底层,主程序可以不用改动,至少是尽量少改动。 为了提高移植性,尽量用标准的C写代码,涉及不同编译系统的实现细节,也要注意隐藏细节,前面的硬件细节,这个算是软件的细节吧。 比如sfr,sbit,interrupt这些,都是51独有的,换到不同的系统上,都需要重写。处理办法也是一样的,隐藏起来,放到单独的底层文件中。 基本上,做到这两步,程序的移植性会提高很多。 再举个小例子吧: //app.c #include"bsp.h"//注意这里不要包含硬件有关的头文件,比如"reg51.h",不要包含在这里。 voidmain(void) { while(1) { if(hasKey()) { led_on(); delay(100); led_off(); } } //bsp.h typedefunsignedshortuint16_t; typedefbitbool; voidled_on(void); voidled_off(void); voiddelay(uint16_tms); boolhasKey(void); //bsp_for_51.c #include"bsp.h" #include"reg51.h" sbitled=P1^0; #defineON(0) voidled_on(void) { led=ON; } voidled_off(void) { led=!ON; } voiddelay(uint16_tms) { inti; while(ms--) for(i=0;i} boolhasKey(void) { return(P0!=0xFF);//测试是否有按键? } 这个是51的系统,换成STM32,简单重写一下bsp.c,不需要改app.c,系统就可以移植过来。 stc和stm32烧录一样吗Stc和Stm32烧录大同小异,Stc支持串口烧录,∪SB烧录,Stm支持串口烧录,SD卡烧录,略有不同 stm32的程序和stc12c5a60s2的程序可以通用吗?5a指令读取速度特别快,所以51的程序不工作一般在延时程序上的改动,所以可以通用,但注意一些延时,一些器件有反应时间,跟不上就丢失数据! stc32单片机与stm32单片机的区别您好,STC32单片机和STM32单片机之间有一些显著的区别。首先,STC32单片机属于8位单片机,而STM32单片机属于32位单片机。其次,STC32单片机的内存容量较小,只有1K-4K,而STM32单片机的内存容量较大,可达到128K-1M。此外,STC32单片机的处理速度较慢,只有2MHz-20MHz,而STM32单片机的处理速度较快,可达到50MHz-200MHz。此外,STC32单片机的外设支持较少,而STM32单片机的外设支持较多,可以支持多种外设,如ADC、DAC、I2C、CAN等。最后,STC32单片机的价格较低,而STM32单片机的价格较高。总之,STC32单片机和STM32单片机之间有一些显著的区别,在选择时应根据自己的需求来选择合适的单片机。 单片机烧录器能通用吗不可以的。 再强大的烧录器也不能保证所有单片机都能烧。 烧2051的烧录器很便宜,150就可以搞定的。 不过建议你不要学2051,烧写程序太麻烦,你可以考虑学AT89S52,这个单片机用不着烧写器,你有一条并口下载线就可以下程序了,这两款单片机都属于51单片机,除了配置不同,内核都是相同的,会了任意一个就都会了。 另外,烧写程序很麻烦,需要把芯片拆来拆去,用AT89S52你可以不用拔芯片直接在目标电路板上下载程序。并口下载器的电路很简单,完全可以自己做一个。 你到网上搜索 51并口下载器,电路图能找到一大堆。 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |