找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2688|回复: 24
收起左侧

关于国产单片机开发的一些疑问

  [复制链接]
ID:958310 发表于 2021-8-2 14:18 | 显示全部楼层 |阅读模式
    我是写了2年的STM32单片机来的,最近想用便宜的国产单片机(几毛钱的那种)来应付一些很简单的需求,但是之前一直没接触过国产单片机的开发,在网上找也找不到任何关于国产单片机开发的教程(STM32的教程网上一大堆啊)。按照我目前搜索到的资料,关于国产单片机的开发有以下几个疑问,恳请各位大佬如果知道的话抽空回答一下,很简洁的几句话给个方向也行的,也希望有谁向我这样从STM32转为国产单片机的来指导一下就更好了。

1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如果能用C语言写的话,要特殊配置吗?

2、开发国产单片机的IDE是特殊的吗?还是也是用的keil ?或者IAR?

3、我看很多国产单片机的数据手册都没有说到怎么下载程序的,芯片引脚图也没有表明哪个引脚是用来下载的,是不是厂家才知道的?要用他们专用的下载器?这样岂不是每个厂家都要特定的下载器?

4、我看到很多的单片机都是OTP的,那如果程序写错了是不是就没法调了?调一次就要耗费一个芯片那岂不是很烦?或者有什么别的方法吗?
回复

使用道具 举报

ID:401564 发表于 2021-8-2 15:51 | 显示全部楼层
1,国产单片机和STM32或者是其它的单片机是不一样,能用汇编就用汇编,实在不行才用C
2,烧录工具基本是一个厂商一个烧录器.不通用,有自己的编译环境,8051内核可能用Keil来写,但烧录还是得用厂商自己的
3,像这种烧录的数据手册实际是在烧录器的PDF使用说明上,结合单片机给出的烧录引脚来进行烧录的
4,OTP有一个专门用于仿真的,有的厂商是一个仿真器,有的厂商是提供一个内部硬件相同的仿真单片机给你,当然,要加钱!
OTP前期工作量相对要大,调试也要更加的严格,从试做,试产,首次小批量量产测试,第二次批量量产,多次测试
调试期间发现问题越多,以后就越稳定,一套程序下来,几乎没碰到什么大问题就OK了,那往往是要出大事的.....
一般来说,量不大没有必要用OTP

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:480256 发表于 2021-8-2 15:24 | 显示全部楼层
1.国产便宜的几毛的单片机都能用汇编写,大多能用C写,需要用哪家的国产单片机就去它的官网下载demo.
2.一般都是自己的IDE,如果是51内核我见的都是用keil.
3.数据手册引脚说明里具体说的有哪些是下载引脚.需要用专用的下载器.
4.OTP类芯片有仿真器,仿真完成后再烧录.烧录分脱机和在线烧录

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:592807 发表于 2021-8-2 15:42 | 显示全部楼层
1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如果能用C语言写的话,要特殊配置吗?

答:国产单片机大部分汇编是因为内存小便宜,几毛钱一个你还想多大内存,放100个C语句估计就满了。
      你要用C的话需要先将他们转换成bin或者hex文件,然后通过烧录器烧录,不能在线调试。
2、开发国产单片机的IDE是特殊的吗?还是也是用的keil ?或者IAR?
答:国产单片机的内核很大一部分是51内核所以KEIL_C51编译,选择相似的单片机建立工程即可。
      也有部分是仿STM32的,所以可以用KEIL_ARM编译直接改他们的启动文件。
      还有部分单片机像合泰他们的单片机需要用他们自己的IDE软件和烧录器。
      另外不建议使用IAR,比如我网上找了一个STM8S的2003年例程,需要用到版本A,又找到了2008的例程要用版本B,然后两个不兼容 编译不是自己版本的工程就会报错一大堆。

3、我看很多国产单片机的数据手册都没有说到怎么下载程序的,芯片引脚图也没有表明哪个引脚是用来下载的,是不是厂家才知道的?要用他们专用的下载器?这样岂不是每个厂家都要特定的下载器?
答:没有专门下载引脚的基本上度可以通过串口下载。如果连串口都没有的话,基本上就是直接给厂家hex文件,他们生产后直接烧进去,他们帮你调试。
      量产的话是必须要用他们专用的离线快速烧录器,程序存在电路板里,放入芯片,按一下按钮就烧录成功了,方便快捷。
      当然你也可以用电脑一个个下载。

4、我看到很多的单片机都是OTP的,那如果程序写错了是不是就没法调了?调一次就要耗费一个芯片那岂不是很烦?或者有什么别的方法吗?
答:一些便宜的单片机几毛钱几分钱的单片机是一次性的,烧坏了就没了。
        一般这种单片机只有几个简单的功能,开关LED,检测按键之类的简单功能。几毛钱一个一共就给你1K内存不到,你能放几句指令,有啥复杂功能。
       方法就是尽量简单,越简单越不容易错。


  

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:958310 发表于 2021-8-2 15:44 | 显示全部楼层
子不语呢 发表于 2021-8-2 15:24
1.国产便宜的几毛的单片机都能用汇编写,大多能用C写,需要用哪家的国产单片机就去它的官网下载demo.
2.一般 ...

多谢老哥了啊!!
回复

使用道具 举报

ID:958310 发表于 2021-8-2 16:01 | 显示全部楼层
Y_G_G 发表于 2021-8-2 15:51
1,国产单片机和STM32或者是其它的单片机是不一样,能用汇编就用汇编,实在不行才用C
2,烧录工具基本是一个厂 ...

万分感谢
回复

使用道具 举报

ID:824490 发表于 2021-8-2 16:02 | 显示全部楼层
你这些1234的问题,在你选择了一款单片后都不是问题,真搞 不定可能找你的供应商解决,如果你的量大的话,他们是很乐意为你服务的。如要没量的话,当我没说!

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:883242 发表于 2021-8-2 16:21 | 显示全部楼层
国产单片机并不是一个分类方法,用什么指令集的单片机才是研发使用的分类方法。楼主的问题完全没有意义。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:97554 发表于 2021-8-2 17:15 | 显示全部楼层
黄youhui 发表于 2021-8-2 15:42
1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如果能 ...


1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如果能用C语言写的话,要特殊配置吗?

答:国产单片机大部分汇编是因为内存小便宜,几毛钱一个你还想多大内存,放100个C语句估计就满了。
      你要用C的话需要先将他们转换成bin或者hex文件,然后通过烧录器烧录,不能在线调试。


关于这一句,我有一事不明,单片机里可烧C进去吗?我记得不管用什么写到后边编译完只烧HEX或者BIN吧?
回复

使用道具 举报

ID:958310 发表于 2021-8-2 17:18 | 显示全部楼层
黄youhui 发表于 2021-8-2 15:42
1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如果能 ...

谢谢你,让我更深入了解了
回复

使用道具 举报

ID:958310 发表于 2021-8-2 17:20 | 显示全部楼层
Hephaestus 发表于 2021-8-2 16:21
国产单片机并不是一个分类方法,用什么指令集的单片机才是研发使用的分类方法。楼主的问题完全没有意义。

哎,,,我不懂啊,,要是别人能解答我一点点的疑惑,我就认为有意义啊
回复

使用道具 举报

ID:958310 发表于 2021-8-2 17:23 | 显示全部楼层
再问一下,我想要学习使用国产便宜单片机开发流程,就是那种1~2块甚至几毛钱的只有个位数左右IO的单片机,有没有什么推荐的开发板或者教程啊?如果谁能推荐一下的话真的万分感谢了,当然如果真的有那种优秀的课程要花钱买的也可以。
回复

使用道具 举报

ID:401564 发表于 2021-8-2 19:33 | 显示全部楼层
bigbigcong 发表于 2021-8-2 17:23
再问一下,我想要学习使用国产便宜单片机开发流程,就是那种1~2块甚至几毛钱的只有个位数左右IO的单片机, ...

开发板不用买,自己看好要学哪个单片机,对着型号自己画一块就可以,不需要太多的功能,中断,按键,显示,ADC烧录端口就可以,画个板才五块钱,国产单片机你买开发估计得一两百
没有必要什么课程的,你就把它当成8051来学就可以了,如果是8051内核的国产单片机,那几乎就是不用学的了
如果可以,最好是学一下汇编,几毛钱的单片机,程序空间不可能多大的,C很容易就写满了,而且,有的国产单片机的编译环境也不怎么好,一般低端单片机都会推荐使用汇编,数据手册大多也是以汇编为教程的
但汇编不好学,要上手一款单片机,如果你用汇编的话,至少是先用十天来背汇编指令
如果是精简指令的汇编,乘法除法指令是不可能有的,C几行代码,汇编可能要上百行.....
汇编的好处就是让你了解硬件,消磨你的耐心......
所谓的教程,估计不会,如果不是为了工作,不会有人去学的,光是烧录器一般都是四五百一个,贵点的要上千........
当然,这东西冷门,能找到工作的话,专门写汇编的工资是要比写C的要高那么一点的
回复

使用道具 举报

ID:419909 发表于 2021-8-2 22:25 | 显示全部楼层
STM32成本涨价时间太久了。估计好多厂商都已经慢慢转国产芯片。师兄习一下。几毛钱的单片机。不敢想像。不过走量的东西。也正常。有技术。觉得还是做点专业复杂些的。利润高些。也不那么累。
回复

使用道具 举报

ID:592807 发表于 2021-8-3 08:51 | 显示全部楼层
杨雪飞 发表于 2021-8-2 17:15
1、我看到很多国产单片机的数据手册都有讲解怎么用汇编的,是不是便宜的国产单片机只能用汇编写啊?如 ...

C是高级语言,单片机只认二进制码,C怎么可能烧进去。但是C是高级语言比汇编高级,C如果调用了官方库的话他转换出来的HEX文件会比汇编转换出来的hex文件大很多,这个您应该知道,所以部分内存小的单片机支持汇编语言不支持C语言编译,但是C语言可以编译成hex或者BIN再烧进去。
回复

使用道具 举报

ID:401564 发表于 2021-8-3 14:10 | 显示全部楼层
黄youhui 发表于 2021-8-3 08:51
C是高级语言,单片机只认二进制码,C怎么可能烧进去。但是C是高级语言比汇编高级,C如果调用了官方库的话 ...

哥们,编译不是这样的
就单片机而言,目前我用过的8051,PIC,合泰,都是把C语言由编译器转换成汇编,然后再把这个转换好的汇编转换成烧录文件
而且,所有的单片机都是支持C语言的,有不支持C语言的厂商是不想搞编译器,这编译器不好搞
PIC以前就是没有自己的C语言编译器,编译器都是第三方的,后来才有自己的编译器的
回复

使用道具 举报

ID:592807 发表于 2021-8-3 15:18 | 显示全部楼层
Y_G_G 发表于 2021-8-3 14:10
哥们,编译不是这样的
就单片机而言,目前我用过的8051,PIC,合泰,都是把C语言由编译器转换成汇编,然后再把 ...

这样啊?我之前8051时直接用keil_c51将C转hex,前辈用的汇编转hex,都能用。
回复

使用道具 举报

ID:401564 发表于 2021-8-3 15:45 | 显示全部楼层
黄youhui 发表于 2021-8-3 15:18
这样啊?我之前8051时直接用keil_c51将C转hex,前辈用的汇编转hex,都能用。

这个编译是内部的过程,看不见的
汇编就是二进制语言呀
Keil进行仿真的时候,你看到的就是C编译之后的汇编代码
回复

使用道具 举报

ID:884815 发表于 2021-8-3 16:19 | 显示全部楼层
为啥没有人说stc哩
回复

使用道具 举报

ID:401564 发表于 2021-8-3 16:35 | 显示全部楼层
xijiaoa 发表于 2021-8-3 16:19
为啥没有人说stc哩

STC?呵呵
除了好学好入门,STC真就啥也不是了,虽然我也是经常用STC做一些DIY
功能比不上16位单片机,性能比不上PIC,价格......STC有几毛钱一片的带ADC的单片机吗?
回复

使用道具 举报

ID:934353 发表于 2021-8-3 16:38 | 显示全部楼层
xijiaoa 发表于 2021-8-3 16:19
为啥没有人说stc哩

几毛钱的stc太少了
回复

使用道具 举报

ID:130230 发表于 2021-8-6 11:50 | 显示全部楼层
国产还是非国产没啥区别,资料都是官网上找。低端的可能只支持汇编,当然也有支持C的。
回复

使用道具 举报

ID:130230 发表于 2021-8-6 11:55 | 显示全部楼层
Y_G_G 发表于 2021-8-3 16:35
STC?呵呵
除了好学好入门,STC真就啥也不是了,虽然我也是经常用STC做一些DIY
功能比不上16位单片机,性能 ...

真逗,连导弹上都能用到stc。到你这一毛不值了。。。stc主频35M 1T指令周期已经吊打绝大部分8位机了,另外ram动态栈也比台系那些硬件栈的架构合理的多。唯一的缺点就是贵了一点。另外性能比不过PIC不知道你是怎么得出来的结论,到底是什么性能?pic有些型号的所有中断只有一个入口,这是多脑残的设计,根本谈不上性能。
回复

使用道具 举报

ID:401564 发表于 2021-8-6 13:10 | 显示全部楼层
jizhongbiao 发表于 2021-8-6 11:55
真逗,连导弹上都能用到stc。到你这一毛不值了。。。stc主频35M 1T指令周期已经吊打绝大部分8位机了,另 ...

导弹用STC就别扯了
对于速度,单片机并不需要很快的速度
堆栈方式是比台湾的单片机处理得好,但你也知道,它贵呀.你的工作环境我不知道,反正在我这,老板是在乎也不知道什么单片机好用的,他只看BOM的,所以,台湾的单片机更有市场
至于性能,如果你觉得PIC脑残,那就是吧
我用过的,感觉好在这几点:
抗干扰能力要比STC的好很多,特别是小板子上高频(我这是LED驱动)的时候,STC的ADC是经常不准确的,排除布线和程序的问题,就是单纯干扰而已
还有就是低功耗,PIC的工作电流可以达到40uA左右,相同频率的STC一般是1mA左右,待机电流的话,PIC可以达到30nA,STC是600nA.这个性能在电池供电的时候,就显得很重要
至于中断入口这个缺点,PIC还有更头痛的BANK操作,还有什么快速存储的,我个人也不喜欢,但我并不觉得这就是脑残了,PIC在8位和16位单片机还是有一定地位的,还不至于到"脑残"这个地步
回复

使用道具 举报

ID:130230 发表于 2021-8-6 18:00 | 显示全部楼层
导弹用stc单片机的连接给你自己去看。https://www.zhihu.com/question/266625246/answer/1699698008
你说单片机速度不重要,那我觉得就没有和你讨论的必要了。当然只做些小家电之类的确实不需要什么速度。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表