求一个51单片机通信程序,,

作者&投稿:长孙功 (若有异议请与网页底部的电邮联系)
求一个51单片机的简单程序?~

P1.0加一个上拉10K电阻, LED灯的阳极接+5V电源,阴极串一限流电阻后到P1.1,这样开机就不会有你所担心的亮一下, LED是电流器件,不加电阻很容易被干坏的。电阻的大小取决于LED的最大电流。程序自己琢磨吧。不难!

28

你好!!

    给你一个单片机和上位机的基本通信例子,你试试吧,希望能帮到你




/********************************/
#include <REG52.H>
#include <intrins.h>

void InitUART() //串口初始化 波特率9600 ,晶振11.0592MHZ 只发送,不接收
{
TMOD = 0x20;
SCON = 0x40;
TH1 = 0xFD;
TL1 = TH1;
PCON = 0x00;
TR1 = 1;
}
void SendOneByte(unsigned char senddat) //串口8位数据(一个字节)发送 函数
{

SBUF = senddat;
while(!TI);
TI = 0;
}
void main()
{

InitUART(); //串口初始化
SendOneByte(0x01);
SendOneByte(0x02);
SendOneByte(0x03);
SendOneByte(0x04);
SendOneByte(0x05);
SendOneByte(0x06);
//这里插入延时9秒函数(自己写吧,很容易的)
SendOneByte(0xFF); //发送FF
SendOneByte(0xE4); //发送E4
SendOneByte(0xFF); //发送FF
SendOneByte(0x02); //发送02
SendOneByte(0x02); //发送02
SendOneByte(0xE4); //发送E4
while(1); //停止

}


51单片机怎么双机通信
你好!!单片机双机通讯,就是直接单片机的串口RX和TX直接连接,然后通过串口命令完成通讯!给你一个实例,可以完全满足你的要求!希望帮到你,满意请采纳!

我在做51单片机串口通信,可是总是连不起来 希望大神现身
} if(k9==0 && y9==0) { y9=1; SBUF=0x90; led=0; } if(k9==1 ) { y9=0; } if(led==0) { while(!TI); TI=0; led=1; } } }include <reg51.h> \/\/ 接收 void main (void) { SCON = 0x50; \/\/ REN=1允许串行接受状态,串口工作模式1 ...

用51单片机怎么通过独立按键实现串口通信 比如说你按下一个键S1 在串 ...
用键盘检测程序检测按键按下,检测到按下就用串口向上位机发送字符“1”的ASCII码值,这样在串口调试助手里就可以看到字符“1”了

51单片机用串口跟pc通信进行收发数据
\/\/代码来自 单片机小精灵v1.3\/\/波特率9600 11.0592晶振 方式2#include <reg51.h>void InitUART(void){ TMOD = 0x20; SCON = 0x50; TH1 = 0xFD; TL1 = TH1; PCON = 0x00; EA = 1; ES = 1; TR1 = 1;}void SendOneByte(unsigned char c){ SBUF ...

51单片机串口通信c语言编程
include <REG52.H> define uchar unsigned char define uint unsigned int sbit ring=P3^7;sbit CASE1=P2^0;sbit CASE2=P2^1;sbit CASE3=P2^2;sbit CASE4=P2^3;uchar se=0,re=0;uchar temp=0;void wait(uint cnt){ while(--cnt);} \/\/串口发送程序 void send(uchar se){ SBUF=se...

51单片机多串口同时通信
当然是可以的。不过,取决于设备性能以及你的软件设计水平,模拟串口的精度和实时性有限,通信速率无法做到太高。

51单片机串口通信问题
一个一个问题回答:1、是在一个字节接收成功或一个字节发送成功以后进入中断程序(不过,一般在发送时是将中断关闭的,也就不进入中断了)。此时,定时器的作用就是为了设定串口速率,因为单片机的速度和串口的速度不是一个数量级的,所以一定要有个变速箱。2、数据的接收是由硬件控制的,其实,数据的...

51单片机的组成
8051CPU具有可编程存储器(EPROM或Flash存储器)和内部RAM存储器,它支持硬件和软件中断,可以通过外设接口和存储器接口与外部设备进行通信。时钟发生器 时钟发生器是51单片机的重要组成部分,它为CPU提供时钟信号。51单片机的时钟发生器通常由晶体振荡器和片上振荡电路组成。晶体振荡器产生一个固定频率的振荡...

51单片机的串行通信有哪几种格式
当置REN=1时,串行口采样RXD,当采样到1至0的跳变时,确认串行数据帧的起始位,开始接收一帧数据,直到停止位到来时,把停止位送入RB8中。置位RI请求中断。CPU取走数据后用指令清零RI。3.方式2和方式3 方式2和方式3具有多机通信功能,这两种方式除了波特率不同以外,其余完全相同。(1)特点 1.9...

51单片机串口通信问题
建议检查:单片机出来的是TTL的,跟PC连接需要max232;txd和rxd是否接反;串口连接线是否有问题(非下载线);串口速率等参数是否一致,单片机晶振决定频率;公共地是否连接正常;连续发送数据给单片机,测单片机rxd口有无波形;单片机程序中设置断点看有否收到数据;...

嘉峪关市15343783353: 一道51单片机的C语言程序,关于串口通讯的,很简单...... -
明天捷芝: #include<reg52.h> //增强型52寄存器的定义 #define uchar unsigned char //用uchar代替unsigned char #define uint unsigned int //用uint代替unsigned int unsigned char flag,a,i; //定义变量flag,a,i uchar code table[]="I receive,thanks"; //定义一个...

嘉峪关市15343783353: 51单片机ct107d单片机的串口通讯程序怎么写? -
明天捷芝: 51单片机的串口通讯程序编写步骤是:1、初始化串口相关的寄存器.2、可以用中断模式,也可以用查询模式,取决于应用场合.3、收发数据取决于标志位TI和RI.举例如下:#include<reg51.h>#define uchar unsigned char main() { uchar tmp,t; TMOD=0x20; //初始化 SCON=0x50 TH0=0xfd; TL0=0xfd; TR1=1; while(1) { if(RI) //如果有串口数据传来 { tmp=SBUF; //接受数据 t=100; while(t--); SBUF=tmp; //将数据回传 while(TI); TI=0; } } }

嘉峪关市15343783353: 51单片机串口通信c语言编程 -
明天捷芝: 这只是个模板,参考一下/*----------------------------------------------- 名称:串口通信 网站:www.doflye.net 编写:shifang 日期:2009.5 修改:无 内容:连接好串口或者usb转串口至电脑,下载该程序,打开电源 打开串口调试程序,将波特率设置为...

嘉峪关市15343783353: 求高手!!!那位大侠能发给我一个51单片机多机通信的程序:从机1和从机2向主机发送数据. -
明天捷芝: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace PC上位机 { public partial class Form1 : Form { public ...

嘉峪关市15343783353: 高手帮忙啊!我要一个比较简单的51单片机与PC通讯程序. -
明天捷芝: #include#define uchar unsigned char sbit p11=P1^1; sbit p12=P1^2; uchar tick; void t0_isr() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; tick++; if(tick>=20) { tick=0; TR0=0; p11=1; p12=0; } } main() { uchar dat; TMOD=0x21; ...

嘉峪关市15343783353: 求MAX485的51单片机C语言通信程序 -
明天捷芝: 你先定义一个IO口(比如是P3.4)来控制485的收发,485是高电平发送,低电平接收,那在程序初始化时你先加上一句:p3.4=0;//然后在单片机的发送程序里加入控制,比如你要发送的值为58H,发送完毕后记得设置为接收状态 p3.4=1; sbuf=0x58; p3.4=0//这样就完成发送了,其余的过程与直接使用232发送是一样的.

嘉峪关市15343783353: 高分求51单片机串口通信的程序 -
明天捷芝: #include <reg52.h>#include <intrins.h> #define uchar unsigned char #define uint unsigned int sbit LCD_RS = P2^0; sbit LCD_RW = P2^1; sbit LCD_EN = P2^2;#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();}; uchar data RXDdata[ ] = {0x...

嘉峪关市15343783353: 谁能给我一些51单片机或AVR单片机通信的程序例子啊. 我做了好久都 没做出来 ,两者互传的数据不一样啊????? -
明天捷芝: 51单片机之间双向通信/*************** writer:shopping.w ******************/#include #define uint unsigned int#define uchar unsigned char sbit LED1 = P1^0; sbit LED2 = P1^3; sbit K1 = P1^7; uchar Operation_NO = 0; uchar code DSY_CODE[]= { 0x3f...

嘉峪关市15343783353: 跪求51单片机高手赐教 关于串口通信和数码管显示上位机数据的程序 -
明天捷芝: 串口发来2字节的数据(一般还要加上校验),按16进制显示用4个数码管,10进制用5个数码管.如果是10进制,先转换成5个0-9的数(16进制转换成4个0-15的数),再分别按照数码管驱动对照表从控制口发出0-9(0-15)对应的驱动码就可以了.

嘉峪关市15343783353: 求51单片机与PC串行通讯C51简单小程序?(PC向单片机发送并返回接收状态控制小灯点亮,简易.是为了做实验 -
明天捷芝: #include <REG52.H> sbit LED = P2^0; bit Flag; unsigned int ReData,SenData; void main (void) { SCON = 0x50; //REN=1允许串行接受状态,串口工作模式1TMOD|= 0x20; //定时器工作方式2PCON= 0x00;TH1 = 0xFD; //baud reload value ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网