你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[自设制作STM32F103RB实验板测试]实验三、完成首个基于小车...

[复制链接]
zhjb1 发布时间:2018-1-26 10:43
接上篇:实验二、平台搭建和其它硬...

本实验遇到常规的模块,实际用到的模块:
1个128x64黑白LCD显示屏、1路程序计数器、3路ADC[其中1路Touch检测]、2路PWM[1路电机,1路舵机]、1路脉冲发生器、5路中断输入检测[其中1路超声监测,3路计数,1路按钮开关]、Ticker、Timer两个系统时钟源。
开发板设定了4路ADC[PC_0~PC_3],PC_1连接了按钮,PC_2连接了Touch[PCB上的一个单面焊盘],因此ADC0-PC_0,ADC1-PC_3。此实验中4路引出的ADC都用上了,需要增加ADC只能从两边的引脚插针取用了。
查手册PWM选用了Timer1控制的PA_10,PA_11。
脉冲发生和中断输入取用连接LCD对面的插针排,没有特定选择对象。实际选用了脉冲发生PB_8[由Ticker中断产生10uS宽度的应该是近2KHz的脉冲,如果是方波则是1KHz]。
外接信号的5路中断检测由PB_4,PB_5,PB_6,PB_7,PC_2。其中PB_4~PB_6输入脉冲计数用,PB_7作为检测超声脉冲测距用[有Timer检测发收脉冲间隔用],代码已敲定,但没有传感器没有做这个实验,以后补;PC_2用于检测Touch触摸实验。
具体照片解释:
照片31是整体硬件连接;照片32是正常按压Reset见之后的屏幕显示;照片33,34是PWM检测,33是的PWM1>PWM0时,红色LED渐亮,34是PWM1<PWM0时,绿色LED渐亮;照片35,36是从示波器监测PB_8脉冲输出,35显示频率略低于2KHz,因为每个脉冲宽度占去5uS之故,36显示脉宽为15uS--与实际设置不符,实际设置延时5uS,可能包括执行时间后延时实际近15uS;照片37,38是监测Touch电压变化,37是手指在Touch焊盘上时电压变化很大,几乎是0~1,38是没有触摸时,电压在大于0.5~小于<0.7之间,较为稳定;照片39是Reset键之后的串口初始数据。
缺少的照片是按键照片,这个较为简单,就不验证了。
代码很简单,就不给出了,仅对板子设计核试验的结果做一件单讨论:
1. 可以说在小车控制上所需要的信号完全可以满足要求,有点冗余。
2. 板子在此状态下连续跑了超过16小时没有问题,当然没有连接外设,只属于静态测试。
3. 128x64屏幕足够显示所需数据。
问题:
1. 按键是直接连接在PC_1上的,因为尝试设计为ADC输入,因此没有接防抖动的RC,此案件的响应时间有点长,从串口检测和屏幕显示可以看到那个0->1或1->0变换时间超过1秒或更多,就像老太婆走路一样很慢!
2. Touch也是直接接在原来设计为ADC的PC_2上,结果没有触摸时,监测到的电压基本上是中点稍多点,接触后是人体感应的交变电压,其复制在0~1之间[浮点数],因此判断Touch按下需要做些数据处理,带来麻烦。
根据以上测试的得到结果,可以这样认定:
1. 用户按键必须重新设计,单独走一个独立的IO,不与ADC口共用!
2. 用户Touch按键也必须独立IO设计,并且加上必要的RC提高响应速度和减少感应电压的波形影响。
今天有点时间,将舵机控制的PWM调了出来。模拟舵机是按照PWM高电平的脉宽进行角度控制的,规定1.5mS脉宽为舵机中间的位置,0.5mS是最左边的位置,2.5mS是最右面的位置,写一点代码,控制脉宽0.5mS->2.5mS,再2.5mS->0.5mS,来回变化形成舵机摆动。照片3A为示波器脉宽接近0.5mS的照片,3B是接近2.5mS时的照片。舵机控制视频
增加的内容按照https://www.stmcu.org.cn/module/forum/thread-612788-1-1.html文档的操作一样是在最后。没辙了。
顺便说一下,STM32F1xx系列的ARM与Freescale的芯片一样在控制PWM上有较好的表现,可以以uS的进度较为精确的控制舵机。这一点非常好!这与他的Timer是24位的有极大的关系。


31

31

32

32

33

33

34

34

35

35

36

36

37

37

38

38

39

39

3A

3A

3B

3B
收藏 评论5 发布时间:2018-1-26 10:43

举报

5个回答
Stm32McuLover 回答时间:2018-1-26 10:54:46
看的头疼,排版
zero99 回答时间:2018-1-26 13:15:50
学习了!不过建议把排版调整下

如何正确插入图片,看这里
https://www.stmcu.org.cn/module/forum/thread-612788-1-1.html
chrome777 回答时间:2018-1-26 13:31:19
跳线看着有点难受。。为啥不留个液晶口
zhjb1 回答时间:2018-1-26 16:25:37
morphlings2014 发表于 2018-1-26 13:31
跳线看着有点难受。。为啥不留个液晶口

那个实际是SPI和串口液晶共用口,可以换成排座,但当主辅串口用就麻烦点,所以焊了排针。
chrome777 回答时间:2018-1-26 16:49:52
zhjb1 发表于 2018-1-26 16:25
那个实际是SPI和串口液晶共用口,可以换成排座,但当主辅串口用就麻烦点,所以焊了排针。 ...

可以可以,很棒。

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版