打印
[活动专区]

8003硬 件板+无线接收测试

[复制链接]
1064|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qiangtech|  楼主 | 2018-10-10 12:14 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 qiangtech 于 2018-10-17 09:47 编辑

1. 项目要求:接收无线信号,并进行解码。解码正确后,LED闪烁提示,蜂鸣器鸣叫一声提示。1604 LCD显示无线信号的信息。用途是对指定的无线发射部分进行测试,如遥控器等,用途比较单一,功能比较简单。
2. 使用的工具:
软件:keil uV4
硬件板:把官方配发的硬件板上的IC焊下来,直接焊到以前准备的硬件板上。就不用接那么多的线了。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF855.tmp.jpg
还需要一个433MHz的接收模块。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF866.tmp.jpg
按图纸连接好硬件后,开始做软件。
3. 软件调试:
项目的功能要求比较简单,只需要用到了单片机的IO功能和一个定时器。
关于IO口功能,DEMO中初始化的写法是:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF877.tmp.jpg
我个人不太喜欢这种一位一位的计算,然后计总的写法,所以我在头文件中做了一些修改,类似于新唐写的那样。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF887.tmp.jpg
改完后,就可以单独对每个脚进行初始化了。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF888.tmp.jpg
个人觉得这样对照原理图检查的时候会方便一些。看个人喜好,其它外设也可以这样做一些预定义,写主程序的时候就会更新晰一点。
定时器:8003的定时器除了BTM之外,还有3个标准定时器。TIMER012.   TIMER2与另两个定时器有很大不同,主要体现在两处:
1. TIMER0,1定时器不能自动重加载,而TIMER2可以。
2. TIMER0,1定时器不需要软件清除中断标志位,进入中断后硬件自动清除。而TIMER2是需要软件清除标志位的。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF899.tmp.jpg
大家可以看到,TIMER0,1TIMER2的中断里面的处理是不一样的,这一点在需要定时器的替换代用的时候要注意。
另外:在DEMO CODE中关于定时器初始化部分写出来的令人费解的注释:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF89A.tmp.jpg
这注释和代码是怎么关联起来的?还是没看懂。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF8D9.tmp.jpg
自已改的。
关于定时器计算中的Fsys,是在KEIL选项中设置的,如:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF8DA.tmp.jpg
Fosc是固定的16MHz.调节这个SYSTEM CLOCK可以直接影响到定时器的时钟,从而影响时长。
前面设置定时器时长为50uS,用逻辑分析仪实测:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF8EB.tmp.jpg
逻辑分析仪设置的采样率为2M,误差就应该是0.5uS.这样看起来定时器的误差最少有2uS.这个是时钟的误差造成的吗?
IO口和定时器调试完成后,1604 LCD和无线编码接收都是比较通用的程序,按照时序要求很顺利完成了项目目标。
附原理图。
HCS301 test.pdf (46.82 KB)


file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsF8EC.tmp.png

相关帖子

沙发
lxs0026| | 2018-10-10 20:27 | 只看该作者
感谢分享,十分详细

使用特权

评论回复
板凳
xiaoqi000| | 2018-10-17 21:38 | 只看该作者
原理图

使用特权

评论回复
地板
knk| | 2018-10-19 14:46 | 只看该作者
1. TIMER0,1定时器不能自动重加载,而TIMER2可以。
定时器0和1设置为8位定时器时可以自动重加载。

使用特权

评论回复
5
qiangtech|  楼主 | 2018-10-19 15:05 | 只看该作者
本帖最后由 qiangtech 于 2018-10-19 15:10 编辑

T0,T1有8位自动重载模式.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

78

主题

1352

帖子

11

粉丝