本文介绍一种用单片机普通I/O 口实现串行通信的方法,可在单片机的最小应用系统中实现与两个以上串行接口设备的多机通信。
标签: 89C51 单片机 IO口 串行通信 模拟 实现方法
上传时间: 2018-08-11
上传用户:Yuuichi
题目:基于51单片机的RS485从机系统设计 单片机接口资源配置: 1. 上电复位电路; 2. 晶振电路采用11.0592Mhz晶振; 3. 485接口电路(P3.7用于485芯片的收发控制,收发管脚接单片机的rxd和txd); 4. P2口通过外部跳线接相应的高低电平,配置从机地址为组号; 5. P3.6外接一发光二极管(注意串联电阻进行限流); 6. P3.2外接一按键,断开高电平,按下低电平; 7. 按键检测采用外部中断方式,下跳沿触发; 8. 单片机定时器0以模式1(16位模式)工作,产生50ms的定时中断,并在此基础上设计一单片机内部时钟(24小时制,能计数时、分、秒、50ms值); 9. 单片机串行通信采用模式1非多机通信方式,采用9600波特率以串行中断方式进行数据的收发通信,主机地址为0xF0,广播地址为0xFF。 系统功能需求: 1. 系统配置和自检功能: l 从机上电后进行初始化,通过读取P2口进行从机地址配置; l 发光二极管以每秒一次的频率闪烁(亮0.5秒,灭0.5秒); l 检测到一次按键按下操作后,熄灭发光二极管。 2. 数据接收和按键计时功能: l 从机接收主机程序(PC机上的串口调试程序)的按键允许命令帧并进行校验; l 校验正确并且目的地址是广播地址或者本从机的地址,通过发光二极管长亮指示,并允许按键操作; l 按键按下后,尽可能准确记录按键的动作时点(定时器的低8位、定时器的高8位、50ms值、秒、分、小时); l 按键操作只能响应一次,重复按键操作不响应; l 按键的动作时点记录后,发光二极管以每秒一次的频率闪烁(亮0.5秒,灭0.5秒)。 3. 数据发送功能: l 从机接收主机程序发来的时钟数据搜索命令帧并进行校验; l 如果校验正确并且数据帧的目的地址是本从机的地址,从机将前面记录的按键动作时点数据(定时器的低8位、定时器的高8位、50ms值、秒、分、小时)按附录中的时钟数据返回帧的帧格式回传给主机; l 时钟数据返回帧回传结束后,熄灭发光二极管。 4. 校验和生成和检测功能: l 发送数据帧时能自动生成数据帧校验和; l 每帧数据在发送帧尾前,发送一字节的当前帧数据的校验和; l 接收数据帧时能检测校验和并判断接收数据是否正确。 附录:帧定义 校验和的计算:除去帧头和帧尾后将帧中的其他数据求和并取低8位; 帧长:不计帧头、帧尾和校验和字节。 按键允许命令帧: 帧头 帧长 目的地址 源地址 命令字 校验和 帧尾 AA 04 FF F0 01 F4 66 时钟数据搜索命令帧: 帧头 帧长 目的地址 源地址 命令字 保留字 校验和 帧尾 AA 05 01 F0 03 00 F9 66 时钟数据返回帧: 帧头 帧长 目的地址 源地址 命令字 TL0 TH0 50ms 秒 分 时 校验和 帧尾 AA 0A F0 01 07 01 B6 09 03 00 00 C5 66 帧结构头文件frame.h(内容如下) //帧格式定义 #define FRAME_HEAD 0xAA //帧头 #define FRAME_FOOT 0x66 //帧尾 #define FRAME_LEN 0x00 //帧长 #define FRAME_DST_ADR 0x01 //目的地址 #define FRAME_SRC_ADR 0x02 //源地址 #define FRAME_CMD 0x03 //命令字 #define FRAME_DATA 0x04 //帧数据起始 //帧命令定义 #define READY 0x01 //按键允许命令 #define TIME_SERCH 0x03 //时钟数据轮询命令 #define TIME_BACK 0x07 //时钟数据返回命令 //地址定义 #define BROAD_ADR 0xFF //广播地址 #define MASTER_ADR 0xF0 //主机地址
上传时间: 2020-06-18
上传用户:umuo
194个Protel99ses设计经典电路原理图PCB工程文件合集,可以做为你的学习设计参考1820温度采集.ddb2003院电子竞赛.ddb2005CCTVROBOT.ddb2051流水灯.ddb232通信电路.ddb300M射频遥控电路.ddb458通信.ddb4X4动态扫描键盘.ddb4X4键盘.ddb51单片机最小系统.ddb555延时关灯.ddb61A板电路原理图.DDB8人表决器.ddbADC0832.DDBaltra下载电缆.DDBARM7MP3.ddbARMPower.ddbAtmega128.DDBATMEGA162.ddbATmega8最小系统板.ddbAVR.LibAVRJTAG.ddbAVR_KIT_MAINBOARD_v23_M2_OUT.DDBAVR_OSD.DDBAVR下载器.DDBBH1417+2051.DDBC2051红外遥控器.DdbCCD_control_1.ddbCLAADD8S.DDBCOM-RS232.ddbcommon.ddbdatacollector.ddbdds-huang1.ddbDDS_FPGA.ddbDDS_FPGA_OK.ddbDS12887.DDBFPGA-10K10单片机配置.DDBFPGA下载线.DdbGpro--桂电烧.DDBhuangqin.ddbhuangqin_2007-11-20.ddbI2C脉宽调制器.ddbICL7107.DDBIDE-TO-USB.ddbISP下载线.Ddbj113与k399功放.ddbLED电子钟.ddbLIJING.ddbLM3886功率放大器.DdbLM3S101核心板.ddbLPC2131pack.DdbLPC2292.ddbMAX7219.DDBMCU-Control.DDBOLED.ddbPCB1.DDBPCB11.DDBPCM语音编解码.ddbPC红外遥控器.ddbPT2262_PT2272无线收发-OK.DdbPT2262_PT2272无线收发.DdbPWM电机驱动.ddbRTL8019网卡.ddbSD_CARD_99SE.DDBTC1297功放.ddbTDA2004功放.ddbTDA2030功放.ddbTDA7240 功放.ddbTDA7294.ddbTDA7294功放.ddbtest.ddbWIGGLE.DDB三极管动态LED.ddb串行LCD驱动.Ddb串行显示模块.ddb串行点阵LCD.ddb串行键盘165-完成.ddb串行键盘165.ddb主控板.DDB主控板1.DDB交通灯交通灯.ddb低频功率放大器.ddb信号号发生器.ddb光控变色蠕虫.ddb八路AD.ddb具有看门狗的单片机电机控制.ddb冷光电源.ddb出租车计费器.ddb单片机在线编程板-下载板.Ddb单片机编码-机器人.Ddb单片机编码2-机器人.Ddb单片机解码-机器人.Ddb单片机解码2-机器人.Ddb参考电路.DDB双15V+5V稳压电源.ddb双稳压电源.Ddb基于1302的万年历8951.ddb基于M16的信号采集系统.ddb基于MC145170的调频锁相环收音机.Ddb声控延时灯.ddb多功能定时器.ddb多功能编程器.ddb完美的编程器.DDB巡线板.DDB常用封装库1.Ddb常用库元件.Ddb广西电子竞赛.ddb序列号发生器.ddb彩电待机节电器.DDB微机综合设计.ddb手机.DDB打印专用.Ddb控制板.DDB搜球机.ddb搜球机_完成.ddb搜球机通信电路.ddb放大器.DDB教室灯控制器.ddb数字电位器.Ddb数字钟1.ddb数控电压表.ddb数控电源.DDB数控直流电流源.ddb数码管1.DDB数码音响修改完成无线串口通信.ddb无线报警器.ddb智能充电器--OK.ddb智能充电器-huang.DDB智能车--完成.ddb最简单的AVR编程器模电实验.ddb步进电机控制-修改版.DDB水开报警器.ddb水温控制器.ddb汽车防盗器.ddb波形发生器1.Ddb波形发生器1完成.Ddb涡流测厚仪涡流测厚仪-8位低精度.ddb涡流测厚仪.ddb液体点滴速度监控装置.ddb温度定时巡检系统.ddb温湿度控制.ddb滤波器.ddb激光测液位.Ddb电机伺服控制.ddb电机控制电路.ddb电机驱动模块.ddb电源.ddb电话报警器.ddb直接合成信号发生器.ddb看门狗MAX813L.ddb稳压电源.ddb简易51单片机编程器简易无线红外耳机.ddb简易编程器-卢打印.DDB简易编程器-黄.Ddb简易频率特性测试仪.ddb精密光电放大器0.ddb精密光电放大器1-黄.ddb精密恒流源数控部分.ddb精密放大器1.ddb红外发射器.ddb红外循迹.ddb红外接收头放大与整形电路.ddb红外控制灯.ddb红外线光控开关.ddb红外遥控数字钟.Ddb红外遥控电子钟.ddb耳机放大器.ddb自制PIC单片机编程器电路.DDB自适应巡线板.ddb舞蹈机器人.ddb调光电路.ddb通用放大器-错误.Ddb通用放大器.Ddb铁人三项.ddb锁相环函数发生器-修改.Ddb锁相环函数发生器-原版.Ddb锁相环函数发生器_优化版.ddb锁相环电机稳速.ddb频率计.ddb高精度信号放大与采集器.ddb高精度频率计.ddb
标签: protel99ses 电路 原理图 pcb
上传时间: 2021-10-25
上传用户:slq1234567890
有关RS485的通信方式的应用,特别是针对多个设备通信时的处理方法。
上传时间: 2021-12-15
上传用户:qdxqdxqdxqdx
这是51单片机与stm32 利用nrf24l01模块进行双击通讯的两个文件
上传时间: 2022-01-30
上传用户:zhaiyawei
以下是《51单片机竞赛设计44例全部带proteus仿真+程序》的目录,都是一些仿真和程序,为大家的学习提供便利目录:0001、12位AD_DS1621与12864液晶0002、16X192点阵程序0003、多变循环彩灯0004、51单片机12864大液晶屏proteus仿真0005、AD0832设计的电压表32X16点阵显示0006、ad0831_lcd_da0808_ds1302_24c64的应用0007、10BitDA正弦信号发生器0008、DS1302时钟+1602液晶0009、LCD滚动显示汉字0010、Max7221动态显示0011、播放音乐0012、单片机设计2008奥运会0013、非常形象的交通灯控制设计0014、温度计设计0015、字符液晶1602仿真测试0016、485全双工通信应用0017、AT89C51对直流电动机的驱动0018、步进电机控制_液晶显示0019、步进电机控制程序液晶显示0020、超级终端0021、红外遥控模拟0022、直流电机测速+中文液晶显示0023、数控云台master0024、单片机水塔控制系统0025、数控直流稳压电源0026、智能温控器0027、自行车测速仿真0028、lcd-12864应用0029、密码锁0030、万年历0031、编码开关试验0032、超大屏幕点阵显示0033、创意LOVE彩灯欣赏0034、8通道自动温度检测系统仿真(含原程序)0035、485全双工通信0036、可预设电压的数控电源(功能强大)0037、ds18b200038、DS18B20(已通过)0039、多机通信0040、工厂屏0041、模拟串口0042、双单片机串口例子0043、单片机水塔控制系统0044、舞蹈机器人步进机仿真
上传时间: 2022-05-06
上传用户:
1.1系统设计说明本设计使用普通10口模拟标准SPI总线,实现SPMC65P2404A的多机通信。SPI(Serial Peripheral Interface)总线系统是一种同步串行外设接口,它使用4条线:串行时钟线(SCK)、数据输出线、输入线和片选线(SS),支持同步全双工通信方式。在本设计中,用1号从机采集按键,2号从机通过一个拨码开关控制一个计数器进行计数,从机获得的键值和计数值将送主机,主机用4个数码管显示。主机显示的形式为:从机号+键值(或计数值).1.2系统框图1.3通信时序SPI采用同步全双工通信方式,时钟信号SCK由主机产生。主从机的通信时序图分别如图1-2和图1-3所示:当待发送数据写入发送缓冲器后,便启动数据发送,数据接收和发送以字节为单位。时序图中,Sample Strobe为输入数据采样点,例如从机在SCK的上升沿对输入数据进行采样接收,主机在SCK的下降沿对输入数据进行采样接收。SPIF是发送或接收完一字节数据后产生的标志,主机或从机传输完一字节的数据后该标志被置为1,可以用于主程序查询或产生SPI中断,在中断服务程序中或查询程序之后需将该标志写0,以清除该标志位。ss为从机的片选线,当SS-0时,该从机有效,接收主机发送的命令;当SS-1时,该从机的输出端(SDO)处于悬浮状态。
上传时间: 2022-06-19
上传用户:wangshoupeng199
1.1 模组说明RON132系8 列无线模组是基于 SEMTEC开H发的一款远程大容量网络系统解决方案 SX1278开发的,除传统的GFSK调制技术外,新型的SX127x平台还采用了LoRa(远程)扩频技术。该模块具有高效的接收灵敏度和超强的抗干扰性能。该系列模组可以非常容易地嵌入到现有产品或系统的当中,使通信不再采用有线连接,客户只需在原有的微控制器件编译自定义的通讯协议,即可激活双向通信实现数据传输。注:本模块是基于SX1278加了PA,通过二种电压实现大功率发射电路,在3.3V供电情况可以实现500mW的发射功率,在5V供电下可实现1000mW的功率,但软件初始化时候建议发射功率按照本公司指导设定,不然功率会失真影响传输性能。软件和RON1328 ,SEN218,SEN238 通用。1.2. 模组性能FSK/GFKS技术, LoRa (远程) 扩频技术半双工通信超强抗干扰性(信道抑制比: 56db)高接收灵敏度-139dbm.ISM多波段, 不需要申请频率免费使用.多频率可选,多种传输速率. 可在FDMA及调频技术中应用.智能复位、低电压监测,定时唤醒、低功耗模式、休眠模式低功耗接受电流: 10-12mA256位FIFO TX/RXISSI 信道侦测功能传输模式: FIFO/直接模式(推荐FIFO包模式)配置: AFC/空中唤醒功能/ 低功耗/ 载波侦听/FEC纠错/AEC加密1.3. 应用市场1) 远程遥控和远程数据采集系统2) 无线抄表(水表、电表、气表)3) 无线点菜机、油田、矿区、工地、工厂等原有485/232接口系统4) 工业数据采集、传输、智能控制系统5) 无线报警系统6) 智能家具系统7) 婴儿监控系统/ 医院寻呼系统8) 无线小数据传输系统
标签: 无线模块
上传时间: 2022-06-19
上传用户:xsr1983
Spi接口是一种外围串行接口,主要由四根线组成:SDI(数据输入),sDO(数据输出).SCK(时钟),cs(片选)。(1)SDO主机输出/从机输入。(2)SDI主机输入/从机输出。(3)SCK-时钟信号,由主设备产生。(4)cs-从设备使能信号,由主设备控制。在一个基于SPT的设备中,至少有一个主控设备。与普通的串行通讯不同,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SP的数据输入和输出线独立,所以允许同时完成数据的输入和输出。在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,工作简单高效。然而SPI接口也有缺点:没有指定的流控制,没有应答机制确认是否接收到数据。SPI通讯是通过数据交换完成的。在主机提供的时钟脉冲SCK下,SDI,SDO完成数据传输。数据输出通过SDO线,在SCK时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被从机读取,完成一位数据传输。输入情况同理。因此,在至少8次时钟信号的改变(上沿和下沿为一次),可以完成8位数据的传输。
上传时间: 2022-06-20
上传用户:
1.系统总体控制方案的确定。通过了解和分析国内外摩托车用发动机控制技术的发展现状,提出采用无回油燃油供给系统、电子控制进气道喷射、直流双电容点火加三元催化转化器的总方案。通过测量进气压力与发动机转速来确定基本喷油脉宽和基本点火提前角,根据蓄电池电压、缸体温度以及节气门开度等信号来修正喷油脉宽。在高速大负荷工况下,利用爆震传感器对点火提前角进行闭环控制。控制系统中的执行器主要包括电容点火式高压包、燃油泵和喷油器。2.电子控制单元ECU(electric control unit)的硬件电路设计。根据系统的设计目标自主开发了ECU的硬件电路,硬件电路的主要功能模块包括发动机信号采集与处理、执行器的驱动、直流反激式升压电路、电容充放电控制电路、微控制器控制电路及与上位机通信电路等,试验证明这些电路模块的性能稳定可靠。3.发动机控制软件及上位机标定软件的设计。研究了发动机在各工况下的点火和喷油、怠速、安全保护等控制策略,并且自行开发了与之相匹配的上位机标定软件和通信协议。4.完成了发动机台架标定试验。通过上位机标定软件和发动机台架完成对ECU控制策略的验证以及参数标定,并对比分析了本电控系统发动机与原化油器发动机的万有特性和排放性能。
标签: arm cortex-m0 摩托车发动机控制系统
上传时间: 2022-07-12
上传用户: