CC2530串口
串口通信(munication), 是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。
工作方式
由于 CPU 与接口之间按并行方式传输,接口与外设之间按串行方式传输,因此,在串行接口中,必须要有" 接收移位寄存器" (串→并)和" 发送移位寄存器" (并→串). 在数据输入过程中,数据 1 位 1 位地从外设进入接口的" 接收移位寄存器",当" 接收移位寄存器" 中已接收完 1 个字符的各位后,数据就从" 接收移位寄存器" 进入" 数据输入寄存器" . CPU 从" 数据输入寄存器" 中读取接收到的字符.(并行读取,即 D7~D0 同时被读至累加器中). " 接收移位寄存器" 的移位速度由" 接收时钟" 确定.
在数据输出过程中,CPU 把要输出的字符(并行地)送入" 数据输出寄存器"," 数据输出寄存器" 的内容传输到" 发送移位寄存器",然后由" 发送移位寄存器" 移位,把数据 1 位 1 位地送到外设. " 发送移位寄存器" 的移位速度由" 发送时钟" 确定.
接口中的" 控制寄存器" 用来容纳 CPU 送给此接口的各种控制信息,这些控制信息决定接口的工作方式.
" 状态寄存器" 的各位称为" 状态位",,用状态寄存器的 D5 位为"1" 表示" 数据输出寄存器" 空,用 D0 位表示" 数据输入寄存器满",用 D2 位表示" 奇偶检验错" 等.
能够完成上述" 串<- -> 并" 转换功能的电路,通常称为" 通用异步收发器" (UART :Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251,16550
USB转串口即实现计算机USB接口到通用串口之间的转换。为没有串口的计算机提供快速的通道,而且,使用USB转串口设备等于将传统的串口设备变成了即插即用的USB设备。
对于大多数工程师来说, 接口产品主要障碍在于:、自己编写USB设备的驱动程序、熟悉单片机的编程。这不仅要求有相当的VC编程经验、还能够编写USB接口的硬件(固件)程序。所以大多数人放弃了自己开发USB产品。为了将复杂的问题简单化,可以使用USB转串口模块。,,就象单片机总线一样。。
?
在首次安装USB转串口驱动时,其串口号由WINDOWS自动分配(2开始分配),安装完成后可在设备管理中点击属性修改串口号。
修改方法:右键点击“我的电脑”,,点击“设备管理器”。在弹出的设备管理器对话框中点击“和LPT”前面的“+号”,然后右键点击“USB-SERIAL CH340”,选择“属性”,然后再弹出的对话框里选择“端口设置”标签,点击“高级”按钮,端口号”右边有个下拉选择组合框,端口号,最后依次点击“确定”。
(好像不行,查看了一下电脑上的该端口波特率9600都能通讯就是说电脑上设置没用或者说自己修改端口号后就不能用了,而且换回来后原先能用的后来又不行了!!!重启后又好了。后来又试了一下,串口号是可以改变的,要先把串口调试软件关掉,后在按上述修改)。
串口实验总结:
初始化串口需要的工作
(1)系统时钟设为高速晶振(CLKCONCMD寄存器,系统时钟设置方法:
,
,为看门狗产生滴答时钟,并可以用作定时器TIM2的闸门(strobe)用来计算休眠定时器的休眠时间,自己看情况选择。
-3位设置定时器。
-0位决定真正的系统主时钟,是在第七位的基础上进一步划分成更小的频率)
(2)2530上,也可以采用在初始化函数后面有足够的延时程序,否则就会出现刚开始打印时有乱码之后就好了的情况,两种方法等待时钟稳定)
(3)分频设置,
(4)关闭不用的振荡器,
(5)对于使用的P口设置备用1是P0口,备用2是P1口,
(6)UART0相关参数的设置,关于校验位奇偶位停止位高低电平等都在相关寄存器中设置,
(7)波特率的设置(参考手册上的数值填写)(注意波特率选择是收发双方达成的共识,双方波特率不同会造成无法通讯或乱码,波特率的设置与系统的主时钟有关所以在设置波特率寄存器时要查主时钟频率想对应的表,手册上是32M的数值,修改了系统主时钟频率后要相应的修改波特率对应下的值)
CC2530串口实验resume 来自淘豆网m.daumloan.com转载请标明出处.