APM32F103C8T6兼容性测试
近几个月以来,STM32价格疯涨、缺货,国内很多公司不得不转而采用国产单片机的方案。这次涨价对国产芯片是一次机遇,可以趁机笼络不少客户。但对于工程师来说,换芯片就意味着软硬件重新设计,不过好在对于一些用量大的芯片,很多国内的厂商可以做到与STM32硬件兼容,可以直接替换。部分厂家甚至软件也兼容,不用做任何修改。
今天就来测试一款与STM32F103C8T6兼容的国产单片机:APM32F103C8T6。之所以选这款是朋友推荐的,据说软硬件兼容性不错。手头上只有一块之前的板子,只能对部分功能进行测试。
测试方法:两块板子,分别焊接两种芯片,采用STM32CubeMX编程,Jlink下载调试程序。首先在STM32的板子上测试功能正常后,再将程序直接烧写到APM32进行测试。测试结果如下:
外设 |
测试项目 |
测试结果 |
Systick定时器 |
1ms中断 |
正常 |
内部flash读写 |
读写 |
正常 |
GPIO |
基本输入输出 |
正常 |
外部中断 |
正常 |
|
串口 |
查询方式收发 |
正常 |
中断收发 |
正常 |
|
DMA收发 |
正常 |
|
定时器 |
PWM输出 |
正常 |
基本定时中断 |
正常 |
|
输入捕获 |
正常 |
|
ADC |
单通道采样 |
正常 |
多通道采样 |
正常 |
|
软件触发采样 |
正常 |
|
定时器触发采样 |
正常 |
|
DMA采样 |
正常 |
|
移植FreeRTOS |
上述外设测试 |
正常 |
SEGGER_RTT功能 |
打印数据 |
正常 |
只测试了部分功能,可以看到测试结果比较可观,STM32的程序可以直接在APM32上运行。另外,在论坛里看到网友说国产单片机的ADC性能要比STM32差很多,主要是实际分辨率,这里也进行了进一步的测试。首先两个板子分别采样同一个外部电源进行对比,如下:
可以看到,两个芯片采样值波动相差不大。波动值有将近30,之所以比较大,是因为板子上本没有AD采样部分,所有没有对模拟电路做任何处理,AD输入端口也没有任何滤波。
再将两个板子采样内部参考电压Vrefint通道进行比较,测试结果如下:
可以看到APM32的波动在4以内,STM32的波动在5以内,基本也差不多。
本次只测试了部分外设的功能,比较满意。由于电路板没有预留其它接口,SPI以及比较复杂的USB功能没有进行测试,以后有机会再进行测试。
写在最后:
不得不承认,STM32确实是一款比较成功的芯片,除了它的高性价比(涨价之前),还有其比较完善的开发工具和生态,希望这次涨价潮尽快过去,不要步AVR的后尘。也希望国产芯片能够越来越好。
APM32F103C8T6兼容性测试相关推荐
- 再谈浏览器兼容性测试
今天跟大家聊一个老生常谈的话题:浏览器兼容性测试. 测试国内网站的同学是不是已经非常头疼了,因为面对的浏览器除了国际大牌如IE, Chrome, Firefox, Opera, Safari, 还有国 ...
- 12款很棒的浏览器兼容性测试工具
对于前端开发工程师来说,确保代码在各种主流浏览器的各个版本中都能正常工作是件很费时的事情,幸运的是,有很多优秀的工具可以帮助测试浏览器的兼容性,让我们一起看看这些很棒的工具. Spoon Browse ...
- 软件测试_APP测试_兼容性测试
APP的兼容测试主要就是测试APP的安装.启动.运行.卸载测试,以及安装时间 .启动时间.CPU占用.内存占用.流量耗用.电量耗用等性能上的测试. 兼容性测试点: 一.内部兼容性: 1.与本地和其他主 ...
- 【转】Android兼容性测试CTS --环境搭建、测试执行、结果分析
原文网址:http://www.cnblogs.com/zh-ya-jing/p/4396918.html 为了确保Android应用能够在所有兼容Android的设备上正确运行,并且保持相似的用户体 ...
- Android碎片化难题:手游兼容性测试应该适配哪些机型?
在中国上线的Android游戏的机型适配难度有多大?根据工信部数据,2014年全年的上市智能手机中,有1604款采用Android操作系统,出货量3.49亿部.这也就意味着2014年平均每天有5款新机 ...
- web浏览器_你最常用的web测试-浏览器兼容性测试
如今,市面上的浏览器种类越来越多(尤其是在平板和移动设备上),这就意味着你所测试的站点需要在这些你声称支持浏览器上都能很好的工作. 同时,主流浏览器(IE,Firefox,Chrome,Opera,S ...
- OpenCV兼容性测试的实例(附完整代码)
OpenCV兼容性测试的实例 OpenCV兼容性测试的实例 OpenCV兼容性测试的实例 #include <iostream> #include <opencv2/core.hpp ...
- 测试工具_10款优秀的浏览器兼容性测试工具
浏览器兼容性问题,是指因为不同的浏览器标准不同对同一段代码的解析有差异,或是由于浏览器版本的不同,造成页面显示效果不一致.一般程序员的需求是,无论用户用什么浏览器查看页面,都是统一的效果,所以浏览器兼 ...
- openjdk platform binary是什么进程_基于pytest实现appium多进程兼容性测试
01 前言 在实际工作中,如果要用appium实现多设备的兼容性测试,大家想到的也许是"多线程".但由于python中GIL的影响,多线程并不能做到"多机并行" ...
- 读博笔记(浏览器兼容性测试工具)
今天看到介绍浏览器兼容性测试工具:参考(http://www.cnblogs.com/gaoweipeng/archive/2010/04/10/1708873.html) Mark一下,顺便再说说I ...
最新文章
- 精通JavaScript(重点内容笔记)更新中...
- 怎么自学python编程-怎么自学python?
- Android网络连接监听
- 【五校联考6day2】er
- 使用http连接到microsoft exchange_如何使用 PowerShell 连接 Office 365 服务
- java 生成objectid_【Java】唯一ID的几种生成方案
- Tencent Blade team荣获小米安全年度最佳守护者
- MATLAB_平面几何_判断两平面矩形是否干涉
- Mysql-savepoint
- 请教:如何进行存储过程的调试
- 从JavaScript预编译看function的生存时间
- Java编程入门与应用 P85——例3-26 continue的使用——(循环录入Java课程的学生成绩,统计 分数大于80分(包括等于)的学生人数。)
- android自定义大转盘,Android使用surfaceView自定义抽奖大转盘
- Scrapy爬虫入门教程十 Feed exports(导出文件)
- Vue3警告:[Vue warn] Extraneous non-emits event listeners (changeParentProps) were passed to component
- 从0到一开发微信小程序(2)——开发第一个小程序
- jijinghao-瞄准镜
- 祝贺自己获得CSDN2018 博客之星
- 乌镇峰会丨容联云:统一AI基础设施 形成AI生产与共享闭环机制
- 深度学习自学第四周:近几年的经典神经网络结构