- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机中断单线实现数据传输
硬件电路如下:P3.0JKDP3.1/TXD
硬件电路如下:
P3.0JKD
P3.1/TXD
P3.2ANT0
P3.3Abff
P3.4JT0
P33/T1
在程序的开始时设定 TCON,外部中断均为低电平触发,使得利用 P3.2通信成为可能。
MOV TCON,#15H 设置为下降沿触发方式
Receive_Data: ;From INTO 数据线始终为高,当有下降沿时,产生中断
MOV IE,#88H 打开总中断和串行中断允许
CLR TF0
LCALL Free_INT
JBC Wait_Decoder_ACK,E nable_Se nd_Data
Receive_Next_Byte:
Ren ew_Timer1 ;Receive_Down_ByteO 设置波特率,计算方法见下
MOV R3,#07 ;WILL RECEIVE BITS
R_Next_Bit:
CLR En d_Tra nsport
JNB End_Transport,$; 定时中断 1,中断嵌套,设置 END_TRANSPORT
MOV C,Data_L ine
RRC A
DJNZ R3,R_Next_Bit
RR A
ANL A,#7FH 当接收到停止指令 FFH时,跳出
CLR TR1
CLR ET1
JNB Data_L in e,$ 等待释放
JB RXD_Proc,Store_Next_Byte
MOV R1,#RXD_Buf
SETB RXD_Proc
Store_Next_Byte:
MOV @R1,A
INC R1
CJNE A,#7FH,Continue_Receive_Data A=FFH7FH=7FH,跳出
CLR RXD_Proc
LJMP Ext_Call_Proc
Con ti nu e_Receive_Data:
Receive_Time
JB Data_Li ne,$
MOV TH0,#0
MOV TL0,#1
CLR T0_For_Receive
LJMP Receive_Next_Byte
一一一一一一一一 ************ 一一一一一一一一一一一一一一一一一一
En able_Se nd_Data:
MOVMOVRET
MOV
MOV
RET
Ren ew_Timer1
MOV
MOV
SETB
CLR
SETB
R30,#01H
R31,#01H
MACRO
TH1,#FCH
TL1,#BFH
TR1
TF1
ET1
;2000bps,833 cycles,at 20MHz
ENDM
简单介绍一下波特率的计算方法:
我们用逆运算方法来推出公式: 初值FCBF=64703,也就是说经过65536-64703=833个机器周
期产生一次翻转,833次机器周期的时间为 833*12/20M=2000,也就得到了如下公式: 65536-初值=1/波特率*focus/12,既可以求出初值。
Tran sport_Data:
LCALL Request_Se nd_Data 调用
JNB Wait_Decoder_ACK,Start_Se nd_Data
CLR Wait_Decoder_ACK
LCALL Free_INT
LJMP Main_Body ;_1
Start_Se nd_Data:
Dly_CycleM 250
MOV IE,#88H
选择寄存器组1
选择寄存器组1
发送TXD_BUF中的内容
发送余下内容,直到停止位 FFH
MOV PSW,#08H
LCALL Free_INT
MOV R0,#TXD_Buf
MOV A,@R0
LCALL Sen d_Byte_To_Decoder
DEC R0
Continu e_To_Decoder:
INC R0
MOV A,@R0
LCALL Sen d_Byte_To_Decoder
MOV A,@R0
CJNE
A,#FFH,Co ntinu e_To_Decoder
CLR
IE0
CLR
IE1
CLR
TF0
MOV
IE,#87H
POP
PSW
RET
?*****************
J
Request_Send_Data: ;INPUT A----WAIT TRANSPORTED WORD 拉低一次 DATA_LINE
SETB Wait_Decoder_ACK 等待解码器相应,如果响应
MOV R33,#100 ;REQUIRE 100 TIMES 则可以发送数据
Decoder_Not_ACK_Yet:
MOV IE,#80H
CLR Data_L ine
Dly_CycleM 150
SETB Data_L ine
JNB Data_Li ne,$
MOV R30,#100 ;DELAY 2
您可能关注的文档
- 华侨城全国项目概况及发展模式探究.docx
- 华侨大学学生户口信息采集表.docx
- 华南理工大学科技成果申请软件登记审查表.docx
- 华尔室装饰公司-铁皮房施工心得.docx
- 华泽隆erw液压缸体管技术指标系列-常温.docx
- 华西医院住院医师培训.docx
- 华蓥市推进放管服改革2019年新增工作要点分工表.docx
- 华贵的近义词有些及造句.docx
- 协同管理系统实施手册.docx
- 卓越的职场工作方法--课后测试.docx
- 2025年郑州城市职业学院单招笔试综合素质试题库含答案解析.docx
- 2025年西安城市建设职业学院单招笔试职业能力测验试题库含答案解析.docx
- 2025年教师职称-安徽-安徽教师职称(基础知识、综合素质、初中体育与健康)历年参考题典型考点含答案.docx
- 2025年住院医师规培-云南-云南住院医师规培(儿科)历年参考题典型考点含答案解析.docx
- 2025年事业单位笔试-山东-山东妇产科(医疗招聘)历年参考题典型考点含答案解析.docx
- 2025年住院医师规培-安徽-安徽住院医师规培(胸心外科)历年参考题典型考点含答案解析.docx
- 2025年事业单位笔试-湖南-湖南中医康复学(医疗招聘)历年参考题典型考点含答案解析.docx
- 2025年内蒙古能源职业学院单招笔试职业技能考核试题库含答案解析.docx
- 2025年住院医师规培-重庆-重庆住院医师规培(口腔内科)历年参考题典型考点含答案解析.docx
- 2025年建筑工程-安全员B证-安全员(B证·通用版)历年参考题典型考点含答案解析.docx
原创力文档


文档评论(0)