如何从单片机的一个引脚接收串行数据

计划用单片机接收传感器采集的数据。采用的是传感器集成电路,上电即工作,每采集一次数据就从输出“引脚”发送一组串行数据:波特率9600,一个起始字节(@的ASCII码:40H)和三个字节的数据(每个字节都是一个十六进制数)。请问,如何用C51单片机的一个“引脚”(而不是R232串行接口)接收这组串行数据?传感器上电即工作,如何正确获得采集的数据?请用C语言或汇编语言举例说明。

第1个回答  2009-02-20
这个简单的很,你不用现成的TXD口,你模拟一个不就完了吗?模拟一个串行口其实只要一个小函数就OK,帮你写写也成。
我只写发送的,收你自己写。
假设你用P0^0口做发送
void series(uchar byte)
{
uchar j=8;
do
{
byte= (byte<<1);
P0^0=CY;
}while(--j);
}
你要求BAUD率的话,就看你晶振了,自己算下需要多少延时,加进去就行。
这个挺简单的。你要几个字节就往里填好了,模块化程序是你该学的,否则以后怎么能写出好程序呢。
第2个回答  2018-07-27
这个是没有问题的,任意一个IO口都可以接收串行数据,当然最好是用标准串口接收(也就是RXD)。本回答被网友采纳

如何从单片机的一个引脚接收串行数据
这个简单的很,你不用现成的TXD口,你模拟一个不就完了吗?模拟一个串行口其实只要一个小函数就OK,帮你写写也成。我只写发送的,收你自己写。假设你用P0^0口做发送 void series(uchar byte){ uchar j=8;do { byte= (byte<<1);P0^0=CY;}while(--j);} 你要求BAUD率的话,就看你晶...

单片机80C51的哪个管脚接串行口
单片机80C51的P3口的P3.0和P3.1分别接串行口的RXD(串行数据接收)和TXD(串行数据发送)。由于物理层协议标准不同,它本身不能和电脑连接来进行通信,但可以通过转换芯片转成其他接口与电脑连接,比如RS232口(计算机的COM口)。80C51结构框图:80C51引脚图:引脚功能图:...

74HC595,写入一个数我没有赋值给到DIO,DIO怎么能获取data1的数值呢?看...
74HC595是串行输入8位数据的,是由单片机的一个引脚(DIO)输出一位到74HC595的数据输入端的。所以,每次只能由DIO输入一位,而这一位数据是根据data1的最高位间接输入的。关键就在if(data1&0x80)这一行上,如果data1最高位为1,则DIO=1,输出1,否则为0,DIO=0,则输出0。再将data1向左移一位...

...向单片机发送一字符串,单片机如何接收SBUF中的数据呢,是用一个...
单片机接收数据,无论是中断接收,还是查询接收,通常都是根据接收标志位,来判断接收一个字节。写程序之前,都会根据接收数据长度建立一个接收数组,比如根据协议,应该接收25个字节,那就建立一个大于等于25个字节的数组,根据判断条件(可以根据长度判断,可以根据特定字节判断),完成25个字节的接收后,再...

两个单片机怎样串口通信,用什么模块?
1. 硬件连接:将两个单片机的USART模块相互连接,其中一台单片机的发送引脚连接到另一台单片机的接收引脚,而另一台单片机的发送引脚连接到第一台单片机的接收引脚。2. 初始化:在两个单片机的程序中分别初始化USART模块,包括波特率、数据位、停止位等参数的设置。3. 开始通信:首先,通过按键控制其中一...

单片机和dsp芯片的串行数据通讯如何实现?
具体实现可在232电平转换芯片处反接。使用串口\/交叉线。设计电路时,因为串口线已做交叉,单片机的RXD连接电路板DB9的RXD,单片机的TXD连接电路板DB9的TXD,均直连即可。 单片机与串口设备(如GPRS模块、载波芯片等)通信时,一律将RXD与TXD反接,即单片机的RXD接设备的TXD,单片机的TXD接设备的RXD。

...串行数据从单片机哪个口输入或输出,时钟信号从哪个口输
串行口工作在方式0时输出,串行口以方式0发送时,数据从RXD端串行输出,TXD端输出同步时钟信号。串行口定义方式0并置位REN后,启动以方式0接收时,此时以RXD端为数据输入端,TXD端输出同步时钟信号。

单片机一个引脚怎么控制数码管一个数字?引脚才一位,而数字需要8位控制...
使用8位串入并出的移位寄存器,比如74ls164,串入数据完毕后同时输出到7段数码管 像下面这个 用74ls164做的五环,省了很多引脚

简述c51单片机串行口数据发送和数据接收过程
MOV SBUF,A ;发送一个字符 WAIT:JBC TI,NEXT ;等待发送结束 SJMP WAIT NEXT: INC R0 ;准备下一次发送 SJMP TRAM3、接收程序 WAIT: JBC RI,NEXT ;查询等待 SJMP WAIT NEXT: MOV A,SBUF ;读取接收数据 MOV @R0,A ;保存数据 INC R0 ;准备下一次接收 SJMP WAIT 这个是用软件查询方法做的,...

单片机的引脚怎么接?
2. GND:地线,将单片机的各个部分连接到地,以形成电路的参考点。3. RST:复位脚,用于对单片机进行复位操作,将单片机的状态重置到初始状态。4. SCK:时钟脚,简称串行时钟,用于在SPI(串行外设接口)通信中提供时钟信号。5. MISO:串行数据输入\/输出脚,简称串行MISO,用于在SPI通信中发送或接收数据...

相似回答