基于单片机无线电子点菜系统硬件设计及实现

[09-11 23:01:53]   来源:http://www.88dzw.com  单片机学习   阅读:8376

文章摘要:3.4.2 无线数据传输模块的PCB图由于无线数据传输模块的核心芯片工作在2.4GHZ,因此在设计PCB图时对干扰的控制要格外重视。在PCB设计时,必须考虑到各种电磁干扰,注意调整电阻、电容和电感的位置,特别要注意电容的位置。nRF2401的PCB为双层板,底层一般不放置元件,顶层的空余地方敷上铜,这些敷铜通过过孔与底层的地相连。nRF2401的供电电源应通过电容隔开,这样有利于给nRF2401提供稳定的电源。在PCB中,尽量多打一些通孔,使顶层和底层的地能够充分接触。nRF2401模块的PCB如图3.14所示。图3.14 无线数据传输模块的PCB图第四章 硬件驱动程序和串行口调试工具驱动程序

基于单片机无线电子点菜系统硬件设计及实现,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com
3.4.2 无线数据传输模块的PCB图
由于无线数据传输模块的核心芯片工作在2.4GHZ,因此在设计PCB图时对干扰的控制要格外重视。在PCB设计时,必须考虑到各种电磁干扰,注意调整电阻、电容和电感的位置,特别要注意电容的位置。
nRF2401的PCB为双层板,底层一般不放置元件,顶层的空余地方敷上铜,这些敷铜通过过孔与底层的地相连。nRF2401的供电电源应通过电容隔开,这样有利于给nRF2401提供稳定的电源。在PCB中,尽量多打一些通孔,使顶层和底层的地能够充分接触。nRF2401模块的PCB如图3.14所示。
图3.14 无线数据传输模块的PCB图

第四章 硬件驱动程序和串行口调试工具
驱动程序是硬件电路的灵魂,没有驱动的硬件电路是没有用的。STC89C58RD+是51类单片机,可以像开发其他51单片机驱动一样开发它的驱动程序。单片机软件开发平台选择比较流行的Keil uVision2,因为现在关于Keil uVision2软件的资料很多,这样上手就会很快。
串行口调试工具是用来将PC机上的数据通过串行口发送到单片机,和PC机接收从单片机发送过来的数据。选用Visual C++ 6.0来开发串行口调试工具,Visual C++ 6.0是微软公司推出的一款优秀开发工具,代码紧凑,运行速度快,而且比较适合低层开发。

4.1 硬件驱动程序

整个数据传输系统有两部分组成:与PC机相连的开发板为主机端,它不能移动,接收从机端发送过来的数据,并向从机端发送指令;可以移动的为从机端,它由开发板和无线数据传输模块组成。由于两端的地位和功能不同,因此对应的驱动程序也不同。
使用Keil uVision2开发硬件驱动程序,它支持众多不同公司的MCS51架构的芯片,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C语言的程序设计,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。51 的编程语言常用的有二种,一种是汇编语言,一种是 C 语言。汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而 C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且 C 语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用 C 语言的开发周期通常要小于汇编语言很多。综合以上C语言的优点,在开发时选择了C51语言.
4.1.1 主机端硬件驱动程序
主机端的硬件驱动程序主要有两种功能:实现开发板通过串行口和PC机通信;实现开发板通过某些I/O口和无线数据传输模块进行通信。
STC89C58RD+单片机的串行口是一个全双工通信接口,即能同时进行发送和接收,它可以作UART用,也可以作为同步移位寄存器用,其祯格式和波特率可以通过软件编程来设置,在使用上非常方便。
STC89C58RD+单片机串行口的工作方式和波特率由控制寄存器SCON和特殊功能寄存器PCON组成。
串行口控制寄存器SCON:

D7 D6 D5 D4 D3 D2 D1 D0
SM0 SM1 SM2 REN TB8 RB8 TI RI

特殊功能寄存器PCON:

D7 D6 D5 D4 D3 D2 D1 D0
SMOD

串行口可以通过软件设置四种工作方式,各种工作方式的数据格式和波特率均有所不同,这四种工作方式如下:
1. 方式0
当设定SM1、SM0为00时,串行口工作于方式0,在方式0下,RXD为数据输入/输出端,TXD为同步脉冲输出端,发送或接收的数据为8位,低位在前,高位在后,方式0的波特率固定震荡频率的1 /12,也就是每一机器周期传送一位数据。方式0可以外接移位寄存器,将串行口扩展为并行口,也可以外接同步输入/输出设备。发送完毕后,硬件自动将TI置1。再次发送数据前,需要软件将TI位清0。
REN为1时,单片机允许接收数据。RXD为数据接收端,接受数据保存到SBUF接收缓冲器中。发送完毕后,硬件自动将RI置1。再次接收数据前,需要通过软件将RI清0。
2. 方式 1
当设定SM1、SM0为01时,串行口工作方式1。方式1为波特率可变的8位异步通信方式,由TXD发送RXD接收,一帧数据为10位,1位起始位(低电平),8位数据位(低位在前)和1位停止位(高电平),波特率取决于定时器 的T 溢出率(1/溢出周期)和波特率的选择位SMOD。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行