一元POS机加洞洞板加串口小板等于arduino(3)
时间:2017-07-24 13:28来源:数码之家 作者:cao57508 点击:
次
问题一、 ADC 不够,通过测量发现, A5(PA5) 和 D10(PA5) 是一个脚。 问题二、 STM32F401CC 木有 PB11 脚。 下面的表格是 STM32F401CCARDUINO 的管脚罗列。 我不得不说这个 STM32F401 是个天生的残疾,脑残的缺少 P
问题一、ADC 不够,通过测量发现,A5(PA5)和 D10(PA5)是一个脚。
问题二、STM32F401CC 木有PB11脚。
下面的表格是 STM32F401CCARDUINO 的管脚罗列。
我不得不说这个STM32F401是个天生的残疾,脑残的缺少PB11。下面要占一楼
测试测试
下载安装 huawei 提供的 arduino 1.611 版本 , 401cc arduino 的示例共计有四大项,12 个示例,每个都先在 BOOT0 置1 ,晶振12M ,的硬件条件下测试。
先测 RAM , 再测 SRAM ,CPU speed(MHZ) 分别测试 84M,120M,144M,
如果出现如下错误提示,请先安装任何一款RAM 的芯片,见图。
一、示例第1 大项Basic
Blink0_morse 输出如下莫尔斯电码“-- .- .--. .-.. . ”见示波器图形,非常完美。任何管脚替换源程序的PC13 都非常顺利。这个示例优良。无管脚定义也可替换。
Blink1_Std 示波器波形输出正常,管脚替换时要先定义。否则其它管脚替换后无反应。
Blink2_Int 这个测试的板子内置LED 的闪烁, PC13 脚出现如下波形。
Blink3_51 波形同上,管脚替换时要先定义, ,建议本程序的的延迟做个修改与前面的程序有所区别。
Blink4_Hal 测试中的波形稳定,管脚替换时要先定义。
Blink5_AllPin 这个测试中的所有管脚均有稳定波形,优良。
二、示例第2 大项Digital_Analog 的第一小项AnalogReadSerial AD 测试良好,在串口监视器上可看到“analog read A0 =0 或1 ”.
Digital_Analog 的第二小项DigitalReadSerial DA 测试良好
三、示例第3 大项Communication 的第一小项Uart_HelloWorld ,可在串口监视器窗口看到“Hello World! ”
四、示例第4 大项HAL_Driect ,
第一小项 HALprint 可在串口监视器窗口观察到输出“something ”。
第二小项 HALTogglePin 这个测试中的管脚有稳定波形,优良。定义管脚后和替换。
第三小项 HALUart 出现编译错误,请将”huart3 “ 换成“huart1 ” 后面的延迟函数换成 HAL_Delay(). 可在串口监视器窗口观察到输出“wakeup ”但是第一个显示的是“akeup ”不知道是何原因。
结论:绝大部分程序是正常的,由于有了arduino 封装, 给STM32F401CC 芯片的使用带来了方便,使用者不必去考虑怎样去做晶振的设置,管脚的设置,MCU 的工作频率,写入RAM 或SRAM 中,只要在程序工具中先行设定,非常方便。管脚的替换也很方便,只需要在void setup() {
pinMode(PB3, OUTPUT);
}
定义下就好了。给初学者带来了一定的方便。
Delay() 以及 HAL_Delay() 都可以使用。
芯片的超频,基本上没有对程序及单片机造成影响。
缺点:1 、示例太少。
2 、部分示例还没有进行仔细的测试。
3 、不能把arduino 的A 和D 脚直接对应STM32F401CC 相应的管脚而直接来调用原有arduino 的程序。
建议:1 、每个示例中的延迟都要有所区别,便于初学者测试使用。
2 、示例如果都是HAL 库的,可否把所有程序中的delay ()都统一为HAL_Delay(). 便于初学者使用和计算。
3 、stm32f401cc 做arduino 有很大的缺陷,由于缺少PB11 脚,还要使用到SPI 1 和IC1 ,ADC 1 不足6 个,PWM 不足7 个。因此应当有个电路说明,例如,A5 和D13 共用一个管脚。对应相应的管脚,便于移植。
4 、建议加个电动机的示例。这个比较实用,做个arduino 小车就有希望了。
|
|
(责任编辑:admin) |
织梦二维码生成器
------分隔线----------------------------