




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用查表方式编写用查表方式编写 y y x1x13 3 x2x23 3 x3x33 3 x x 为为 0 0 9 9 的整数 的整数 include void main int code a 10 0 1 8 27 64 125 216 343 512 729 将将0 9对应的每位数字的三次方的值对应的每位数字的三次方的值 存入存入code中 中 code为程序存储器 当所存的值在为程序存储器 当所存的值在0 255或或 128 127之间的话就用之间的话就用char 而现在的值明显超过这个范围 用而现在的值明显超过这个范围 用int较合适 较合适 int的范围是的范围是0 65535或或 32768 32767 int y x1 x2 x3 此处定义根据习惯 也可写成此处定义根据习惯 也可写成char x1 x2 x3但是变量但是变量y一定要用一定要用int 来来 定义 定义 x1 2 x2 4 x3 9 x1 x2 x3三个的值是自定的 只要是三个的值是自定的 只要是0 9当中的数值皆可 也可重复 当中的数值皆可 也可重复 y a x1 a x2 a x3 while 1 单片机的程序不能停 这步就相当于无限循环的指令 循环的内容为空白 单片机的程序不能停 这步就相当于无限循环的指令 循环的内容为空白 结果的查询在结果的查询在Keilvision软件内部 在仿真界面点击右下角 一般初始位置是右下角 的软件内部 在仿真界面点击右下角 一般初始位置是右下角 的 watch的框架内双击的框架内双击 double click or F2 to add 文字输入文字输入y后按回车 右侧会显示其后按回车 右侧会显示其16进进 制数值如制数值如0 x34 鼠标右键该十六进制 选择第一行的 鼠标右键该十六进制 选择第一行的decimal 可查看对应的可查看对应的10进制数 进制数 1 有有 10 个个 8 位二进制数据 要求对这些数据进行奇偶校验 凡是满足偶校验位二进制数据 要求对这些数据进行奇偶校验 凡是满足偶校验 的数据 的数据 1 的个数为偶数 都要存到内的个数为偶数 都要存到内 RAM50H 开始的数据区中 试编写开始的数据区中 试编写 有关程序 有关程序 include void main int a 10 0 1 5 20 24 54 64 88 101 105 将所要处理的值存入将所要处理的值存入RAM中 这些可以根据中 这些可以根据 个人随意设定 但建议不要超过个人随意设定 但建议不要超过0 255的范围 的范围 char i 定义一个变量定义一个变量 char q 0 x50 定义一个指针定义一个指针 q指向内部指向内部0 x50这个地址 这个地址 for i 9 i 0 i 9 0循环 共十次 也可以用循环 共十次 也可以用for i 0 i 10 i ACC a i 将将a i 的值赋给累加器的值赋给累加器ACC if P 0 PSW0位上的奇偶校验位 如果累加器位上的奇偶校验位 如果累加器ACC内数值内数值1的个数为偶数那的个数为偶数那 么么P为为0 若为奇数 若为奇数 P为为1 这里的 这里的P是大写的 是大写的 q a i q 每赋一个值 指针挪一个位置指向下一个 每赋一个值 指针挪一个位置指向下一个 while 1 同实验一 程序不能停 同实验一 程序不能停 3 有有 10 个个 8 位带符号二进制数 请将位带符号二进制数 请将 10 个数按从小到大的顺序排列 并存到个数按从小到大的顺序排列 并存到 内内 RAM50H 开始的单元中开始的单元中 include void main char data a 10 50 36 0 128 1 99 127 89 89 40 将所有值存入将所有值存入RAM中 因为有中 因为有 负数 所以不能用负数 所以不能用unsigned char 因为是 因为是char所以假设的数值不要超过所以假设的数值不要超过 128 127之外之外 unsigned char q 0 x50 定义指针定义指针 q指向指向0 x50 unsigned char i j char t 定义三个变量 用于循环及换位 在换位时有赋值 所以定义三个变量 用于循环及换位 在换位时有赋值 所以t要用要用char不能不能 用用unsigned char for i 0 i 10 i for j 0 ja j 1 t a j a j a j 1 a j 1 t for i 0 i 10 i 将已经排好序的数组存入将已经排好序的数组存入 q指向的地址 指向的地址 q a i q while 1 1 基本部分 基本部分 1 P1 口做输出口 接八只发光二极管 编写程序 使发光二极管循环点亮 口做输出口 接八只发光二极管 编写程序 使发光二极管循环点亮 include void delay unsigned char x 定义延迟函数 用于后面定义延迟函数 用于后面LED灯亮的持续时间 灯亮的持续时间 unsigned char i j k do for i 10 i 0 i for j 100 j 0 j for k 249 k 0 k while x main P1 0 xfe 11111110第一个灯亮第一个灯亮 while 1 delay 1 延时 500ms P1 P1 1 1 P1左移一个位即左移一个位即11111101 具体具体crol跟跟 的区别与具体细节可联的区别与具体细节可联 系我与你讲解系我与你讲解 if P1 0XFF P1 0XFE 2 P1 0 P1 1 作输入口接两个拨动开关 作输入口接两个拨动开关 P1 2 P1 3 作输出口 接两个发光二极管 作输出口 接两个发光二极管 编写程序读取开关状态 将此状态 在发光二极管上显示出来 编程时应注意编写程序读取开关状态 将此状态 在发光二极管上显示出来 编程时应注意 P1 0 P1 1 作为输入口时应先置作为输入口时应先置 1 才能正确读入值 才能正确读入值 include sbit p1 0 P1 0 sbit p1 1 P1 1 sbit p1 2 P1 2 sbit p1 3 P1 3 程序不能对单个引脚进行编程 需要用程序不能对单个引脚进行编程 需要用sbit定义才可用 定义才可用 main p1 0 1 p1 1 1 p1 2 1 p1 3 1 前两个引脚置一是为了让其能获取输入信号 后两前两个引脚置一是为了让其能获取输入信号 后两 个引脚是赋初值 方便后面取反工作 个引脚是赋初值 方便后面取反工作 while 1 if p1 0 判断判断P1 0的引脚是否有变化 的引脚是否有变化 p1 2 p1 2 如果如果P1 0引脚变化 引脚变化 P1 2引脚也跟随变化 引脚也跟随变化 if p1 1 判断判断P1 1的引脚是否有变化 的引脚是否有变化 p1 3 p1 3 如果如果P1 1引脚变化 引脚变化 P1 3引脚也跟随变化 引脚也跟随变化 2 扩展部分 扩展部分 1 利用利用 P1 口控制发光二极管口控制发光二极管 LED 灯按照下面方式工作 灯按照下面方式工作 a LED 灯从左到右依次点亮 灯从左到右依次点亮 b LED 灯从右到左依次点亮 灯从右到左依次点亮 c 按照以上步骤重复运行 其中要求灯亮的时间为按照以上步骤重复运行 其中要求灯亮的时间为 500ms include void delay unsigned char x unsigned char i j k do for i 10 i 0 i for j 100 j 0 j for k 249 k 0 k while x main while 1 无限循环里面的内容无限循环里面的内容 P1 0XFE 右移完毕后赋初值 为左移做准备右移完毕后赋初值 为左移做准备 delay 1 while 1 P1 P1 1 如果左移右移是单个灯移动的话 那么这句改为如果左移右移是单个灯移动的话 那么这句改为LED LED 1 如果左移右移是单个灯移动的话 那么这句改为如果左移右移是单个灯移动的话 那么这句改为 LED LED 1 0 x80 就可以了 就可以了 delay 1 if P1 0 x00 判断右移是否完毕 完毕后判断右移是否完毕 完毕后break跳出跳出 break 2 利用利用 P1 口控制发光二极管口控制发光二极管 LED 灯按照下面方式工作 灯按照下面方式工作 a 从左到右奇数 从左到右奇数 LED 灯依次点亮 灯依次点亮 b 从右到左偶数 从右到左偶数 LED 灯依次点亮 灯依次点亮 c 按照以上步骤重复运行 其中要求灯亮的时间为 按照以上步骤重复运行 其中要求灯亮的时间为 500ms include 此程序也可以用此程序也可以用 来实现 具体细节可以来问我来实现 具体细节可以来问我 include 当程序中有涉及到当程序中有涉及到 crol crol 或者或者 nop nop 等库函数时 必须添等库函数时 必须添 加此头文件 加此头文件 void delay unsigned char x unsigned char i j k do for i 10 i 0 i for j 100 j 0 j for k 249 k 0 k while x main while 1 无限循环括号里的内容无限循环括号里的内容 P1 0 xfe 第一个灯亮 第一个灯亮 while 1 delay 1 P1 crol P1 2 P1 P1 左移两个位置左移两个位置 if P1 0 xfe 判断左移结束判断左移结束 break P1 0X7f while 1 delay 1 P1 cror P1 2 P1 P1 右移两个位置右移两个位置 if P1 0 x7f 判断右移结束判断右移结束 break include void delay unsigned char x 延时函数延时函数 500ms500ms unsigned char i j k do for i 10 i 0 i for j 100 j 0 j for k 249 k 0 k while x main while 1 无限循环括号里的内容无限循环括号里的内容 P1 0 xfe 赋值 为左移做准备赋值 为左移做准备 delay 1 while 1 P1 P1 1 0 x01 P1 P1 左移一个位置 补位补的是左移一个位置 补位补的是 1 1 此处不明白 此处不明白 可以找我 可以找我 P1 P1 1 0 x80 P1 P1 右移一个位 补位补的是右移一个位 补位补的是 1 1 同样的 不 同样的 不 明白来找我明白来找我 P1 P1 1 P1 P1 右移一个位右移一个位 delay 1 if P1 0 x55 判断右移是否完毕 退出此次循环 判断右移是否完毕 退出此次循环 break 本实验模拟交通信号灯控制 一般情况下正常显示 有急救车到达时 两个方向本实验模拟交通信号灯控制 一般情况下正常显示 有急救车到达时 两个方向 交通信号灯全红 以便让急救车通过 设急救车通过路口时间为交通信号灯全红 以便让急救车通过 设急救车通过路口时间为 5 5 秒 急救车通过后 秒 急救车通过后 交通恢复正常 本实验用单次脉冲申请外部中断 表示有急救车通过 交通恢复正常 本实验用单次脉冲申请外部中断 表示有急救车通过 include unsigned char x y i j k 设置设置 unsigned char d0 d1 d2 d3 定义四个变量用于记录中断时的现场 以便恢定义四个变量用于记录中断时的现场 以便恢 复现场 复现场 void delay x 延时函数 do for i 10 i 0 i for j 100 j 0 j for k 249 k 0 k while x zd interrupt 0 定义中断函数 无需声明 定义中断函数 无需声明 interruptinterrupt 0 0 表示外部中断表示外部中断 0 0 的中断函数的中断函数 y P1 d0 x d1 i d2 j d3 k 记录中断时记录中断时 P1P1 的值 延时函数的的值 延时函数的 x i j kx i j k 也要记录 也要记录 P1 0 xf6 P1 P1 应为东西红南北红 所以设为应为东西红南北红 所以设为 F6F6 delay 5 x d0 i d1 j d2 k d3 P1 y 现场恢复 包括延时函数中的现场恢复 包括延时函数中的 x i j kx i j k main P1 0 xf6 P1 P1 设定初始状态 两路皆为红灯 此步骤可以忽略 设定初始状态 两路皆为红灯 此步骤可以忽略 delay 1 EA 1 开总中断开总中断 EX0 1 开外部中断开外部中断 0 0 中断 中断 IT0 1 设置外部中断设置外部中断 0 0 为下降沿触发有效方式 为下降沿触发有效方式 IT0 0IT0 0 为低电平有效为低电平有效 while 1 下列四种灯亮的状态循环 下列四种灯亮的状态循环 P1 0 xf3 东西绿 南北红东西绿 南北红 delay 10 P1 0 xf5 东西黄 南北红东西黄 南北红 delay 3 P1 0 xde 东西红 南北绿东西红 南北绿 delay 10 P1 0 xee 东西红 南北黄东西红 南北黄 delay 3 1 1 基本部分 基本部分 用用 CPUCPU 内部定时器中断方式计时内部定时器中断方式计时 实现每一秒钟输出状态发生一次反转实现每一秒钟输出状态发生一次反转 include sbit p1 0 P1 0 要使用单个引脚应先定义要使用单个引脚应先定义 unsigned char i void main TMOD 0X01 t0 t0 工作在定时器 工作方式工作在定时器 工作方式 1 1 TL0 0XB0 TH0 0X3C 设定定时器初值 初值的计算可查看书本设定定时器初值 初值的计算可查看书本 P143P143 此处定时器定时时间为 此处定时器定时时间为 100ms100ms IE 0X82 开开 EAEA 总中断 开总中断 开 t0t0 中断中断 TR0 1 定时器工作开关开启定时器工作开关开启 i 10 设定设定 i i 作为后面定时一秒的使用作为后面定时一秒的使用 while 1 t 0 interrupt 1 T0 T0 定时定时 计数器的中断计数器的中断 i 进入一次中断 进入一次中断 i i 的值减一的值减一 if i 0 当进入当进入 1010 次中断 即次中断 即 i 0i 0 的时候 定时时间为的时候 定时时间为 1S1S i 10 重新让重新让 i 10i 10 使得后面继续定时 使得后面继续定时 1S1S p1 0 p1 0 P1 0 P1 0 取反 取反 TL0 0XB0 TH0 0X3C 赋定时初值 定时器或计数器必要步骤 除工作方式赋定时初值 定时器或计数器必要步骤 除工作方式 2 2 外 外 2 2 扩展部分 扩展部分 利用利用 P1 口控制发光二极管口控制发光二极管 LED 灯按照下面方式工作 灯按照下面方式工作 1 从左到右奇数 从左到右奇数 LED 灯依次点亮 灯依次点亮 2 从右到左偶数 从右到左偶数 LED 灯依次点亮 灯依次点亮 3 按照以上步骤重复运行 其中要求灯亮的时间为 按照以上步骤重复运行 其中要求灯亮的时间为 500ms 由定时器 由定时器 T1 实现 实现 include include unsigned char i j k void main TMOD 0X10 设定设定 T1T1 工作在定时器工作在定时器 T1T1 方式 方式 1 1 同时也会设定 同时也会设定 T0T0 工作在定时器工作在定时器 T0T0 方式 方式 0 0 但是我们后面没有 但是我们后面没有 interruptinterrupt 1 1 的子函数 所以的子函数 所以 T0T0 没发挥作用 没发挥作用 IE 0X88 开总中断 开开总中断 开 T1T1 中断中断 TL1 0XB0 TH1 0X3C 定时器初值 时间为定时器初值 时间为 100ms100ms TR1 1 开定时器开定时器 T1T1 的开关的开关 i 5 j 0 k 0 用三个变量来判断时长 循环阶段 用三个变量来判断时长 循环阶段 P1 0 xfe 赋赋 P1P1 初值 第一个灯亮初值 第一个灯亮 while 1 等待定时工作完成等待定时工作完成 t 1 interrupt 3 T1 T1 的中断子函数的中断子函数 i 进入一次 进入一次 i i 就减就减 1 1 TL1 0 xB0 TH1 0 x3C 每次进入中断定时器的初值就为每次进入中断定时器的初值就为 0 0 所以需要重装 所以需要重装 if i 0 500ms 500ms 后后 i 5 让让 i 5i 5 继续定时 继续定时 500ms500ms j j j 一开始为一开始为 0 0 j j 加一加一 if j 4 如果如果 j j 等于等于 4 4 代表 代表 P1P1 口左移了四次口左移了四次 j 0 k k k k 取反 用于后面左移右移的执行取反 用于后面左移右移的执行 if k 0 P1 P1 口左移口左移 if P1 0 xfd 左移到头了 要右移需要把灯亮的位置变化下左移到头了 要右移需要把灯亮的位置变化下 P1 0 xbf P1 crol P1 2 if k 0 P1 P1 口右移口右移 if P1 0 xbf 右移到头了 要右移需要把灯亮的位置变化下右移到头了 要右移需要把灯亮的位置变化下 P1 0 xfd P1 cror P1 2 include unsigned char i j void main i 5 j 0 P1 0 xfe 只亮第一个灯只亮第一个灯 TMOD 0X10 设置设置 T1T1 的工作方式为的工作方式为 1 1 定时器工作 定时器工作 IE 0X88 中断中断 EAEA 开 开 ET1ET1 开开 TL1 0XB0 TH1 0X3C 初值设定为初值设定为 100ms100ms TR1 1 开启工作开关开启工作开关 while 1 等待定时工作完成等待定时工作完成 t 1 interrupt 3 T1 T1 中断子函数中断子函数 i TL1 0XB0 TH1 0X3C 赋初值赋初值 if i 0 时间为时间为 500ms500ms i 5 j 利用利用 j j 来判断左移或右移是否结束来判断左移或右移是否结束 if j 4 P1 P1 1 0 x01 P1 P1 1 0 x01 P1 P1 口左移两位 且补位是补口左移两位 且补位是补 1 1 也可以用 也可以用 P1 P1 2 0X03P1 P1 4 右移阶段右移阶段 P1 P1 1 0X80 P1 P1 1 0X80 P1 P1 口右移两位 且补位是补口右移两位 且补位是补 1 1 也可以用 也可以用 P1 P1 2 0XC0P1 P1 2 0XC0 代替代替 if j 8 右移结束 赋右移结束 赋 P1P1 值准备左移值准备左移 P1 0 xfe j 0 最后还要将最后还要将 J J 恢复为恢复为 0 0 以便下次循环 以便下次循环 1 1 基本部分 基本部分 80318031 内部定时计数器内部定时计数器 T0T0 按计数器模式和方式 按计数器模式和方式 1 1 工作 对工作 对 P3 4P3 4 T0T0 引脚进行计数 引脚进行计数 将其数值按二进制数在将其数值按二进制数在 P1P1 口驱动口驱动 LEDLED 灯上显示出来 灯上显示出来 include void main TMOD 0X05 T0 T0 工作方式工作方式 1 1 计数器工作 计数器工作 TL0 0X00 TH0 0Xff 初值设置方法可以参考初值设置方法可以参考 P143P143 页页 IE 0X82 中断中断 EA 1EA 1 ET0ET0 中断开启中断开启 TR0 1 开启中断开关开启中断开关 while 1 P1 TL0 计数器的值存在计数器的值存在 TL0TL0 里面 每加一个值 所得的值就是以八位里面 每加一个值 所得的值就是以八位 二进制形式存在二进制形式存在 TL0TL0 里面的 里面的 t 0 interrupt 1 T0 T0 的计数器中断的计数器中断 TL0 0X00 TH0 0Xff 2 2 扩展部分 扩展部分 利用利用 T0T0 作为定时器 作为定时器 T1T1 作为计数器 将试验箱上的脉冲信号源接到作为计数器 将试验箱上的脉冲信号源接到 T1T1 引脚 测量出引脚 测量出 脉冲信号源的频率 脉冲信号源的频率 include unsigned char i a void main a 0 i 10 TMOD 0X51 设置设置 T0T0 为工作方式为工作方式 1 1 定时器工作 定时器工作 T1T1 为工作方式为工作方式 1 1 计数器工 计数器工 作作 EA 1 ET0 1 ET1 0 这里也可以设置为这里也可以设置为 IE 0 x82IE 0 x82 关闭了 关闭了 T1T1 的中断的中断 TL0 0XB0 TH0 0X3C 时间设定为时间设定为 100ms100ms TL1 0X00 TH1 0X00 计数器开启最大范围计数计数器开启最大范围计数 TR0 1 TR1 1 皆开启开关皆开启开关 while 1 等待计数定时工作完成等待计数定时工作完成 if TF1 1 查询溢出标志位 查询溢出标志位 a 溢出一次溢出一次 a a 的值加的值加 1 1 TF1 0 将溢出标志位清零将溢出标志位清零 TH1 0 x00 TL1 0X00 重新装上计数器初值重新装上计数器初值 t 0 interrupt 1 定时器定时器 T0T0 的中断子程序的中断子程序 TL0 0XB0 TH0 0X3C 赋初值赋初值 i if i 0 i 10 P1 TL1 将低位记录的次数赋给将低位记录的次数赋给 P1P1 显示出来 显示出来 P2 TH1 将高位记录的次数赋给 P2 显示出来 即一秒内的计数次数 即为 频率 TR0 0 TR1 0 频率读出后关闭 T0 和 T1 一般情况下 所测频率不能超过一般情况下 所测频率不能超过 500kHz500kHz 否则此程序结果有错 程序频率计算为 否则此程序结果有错 程序频率计算为 P1P1 和和 P2P2 的读数转为十进制数字 加上 的读数转为十进制数字 加上 a 65536a 65536 得出频率总和 得出频率总和 1 1 基本部分 基本部分 利用利用 74ls16574ls165 读入拨盘开关的状态 利用单片机串行口将状态读入并通过读入拨盘开关的状态 利用单片机串行口将状态读入并通过 P1P1 口输口输 出到出到 LEDLED 从而实现拨盘开关对 从而实现拨盘开关对 LEDLED 灯的控制 灯的控制 include sbit P1 6 P1 6 实验箱内部已经将实验箱内部已经将 P1 6P1 6 引脚与引脚与 165165 的的 S LS L 引脚相连 也把引脚相连 也把 P3 6P3 6 与与 165165 的的 CLKCLK 引脚相连引脚相连 void main SM0 0 SM1 0 REN 1 串行口工作方式串行口工作方式 0 0 也可用 也可用 SCON 0 x10SCON 0 x10 EA 1 ES 1 开总中断和串行口中断开总中断和串行口中断 while 1 I 0 interrupt 4 串行口中断子程序串行口中断子程序 P1 6 0 让让 74LS16574LS165 将按键的状态读入将按键的状态读入 P1 6 1 让让 74LS16574LS165 将读入的将读入的 8 8 位按键码用串行方式输出 从低位到高位位按键码用串行方式输出 从低位到高位 P2 SBUF 将将 SBUFSBUF 缓冲器里的数据读给缓冲器里的数据读给 P2P2 RI 0 RI RI 要由软件置要由软件置 0 0 2 2 扩展部分 扩展部分 利用利用 74ls16574ls165 读入拨盘开关的状态 利用单片机读入拨盘开关的状态 利用单片机 P3P3 口将状态读入并通过口将状态读入并通过 P1P1 口输口输 出到出到 LEDLED 从而实现拨盘开关对 从而实现拨盘开关对 LEDLED 灯的控制 灯的控制 include sbit p1 6 P1 6 与与 165165 的内部的内部 S LS L 相连相连 sbit p3 6 P3 6 与与 165165 的内部的内部 CLKCLK 相连相连 sbit p1 7 P1 7 P1 7 P1 7 短路帽扣上时 短路帽扣上时 P1 7P1 7 与与 165165 的的 QHQH 相连相连 unsigned char i x main while 1 p1 6 0 数据移入数据移入 165165 芯片芯片 p1 6 1 数据从数据从 165165 芯片输出芯片输出 x p1 7 防止第一位丢失防止第一位丢失 for i 0 i 7 i p3 6 0 p3 6 1 内部制造一个上升沿 从而达到数据传输 一个上升沿一个数据 内部制造一个上升沿 从而达到数据传输 一个上升沿一个数据 x x 1 p1 7 每次左移一个位 空出来的位补每次左移一个位 空出来的位补 P1 7P1 7 的值的值 P2 x 将移位完的将移位完的 X X 赋给赋给 P2P2 那么 那么 P2P2 上显示的就是按键的二进制状态上显示的就是按键的二进制状态 1 1 基本部分 基本部分 利用单片机串行口 实现两个实验台之间的串行通讯 其中一个实验台作为发送方 利用单片机串行口 实现两个实验台之间的串行通讯 其中一个实验台作为发送方 另一侧为接收方 利用发送方的拨盘控制接收方的另一侧为接收方 利用发送方的拨盘控制接收方的 LEDLED 甲方 include void main SM0 0 SM1 1 SM2 0 设定串行口工作方式设定串行口工作方式 1 1 单对单通信 可用 单对单通信 可用 SCON 0X40SCON 0X40 代替代替 EA 0 ES 0 ET1 0 关串行口中断 关总中断 关定时关串行口中断 关总中断 关定时 计数器计数器 T1T1 中断中断 PCON 0 设置设置 SMOD 0SMOD 0 波特率不加倍 波特率不加倍 TMOD 0X20 设置定时设置定时 计数器计数器 T1T1 为工作方式为工作方式 2 2 定时器工作 定时器工作 TH1 0XFE TL1 0XFE 赋初值 此处赋值与定时或计数赋初值不同 此处初值用于波特率 可赋初值 此处赋值与定时或计数赋初值不同 此处初值用于波特率 可 参考参考 P168P168 TR1 1 开定时器开定时器 T1T1 while 1 SBUF P2 把把 P2P2 口接收到的值赋给发送口接收到的值赋给发送 SBUFSBUF 准备发送 准备发送 while TI 0 等待发送完毕等待发送完毕 TI 0 将发送标志位将发送标志位 TITI 置置 0 0 此步一定要软件操作 此步一定要软件操作 乙方 include void main SM0 0 SM1 1 SM2 0 REN 1 串行口工作方式串行口工作方式 1 1 单对单通信 可用 单对单通信 可用 SCON 0 x50SCON 0 x50 代替代替 EA 0 ET1 0 ES 0 关所有中断关所有中断 TMOD 0X20 T1 T1 工作方式工作方式 2 2 定时器工作 定时器工作 PCON 0 SMOD
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年建筑工地临时用电安全合同协议
- 2025年建筑工程监理合同
- 107汽车电子芯片的电源设计教学考核
- 103DSoC设计中的电源完整性教学考核方案
- 房产开发施工合同(标准版)
- 2025年罗定市市级机关公开遴选考试真题
- DB3502-T 161-2024 城市轨道交通工程土建施工监理规程
- 2025建筑施工企业安管人员考试(项目负责人B类)全真模拟试题及答案
- 2025年河南许昌注册环保工程师考试模拟题库及答案:(大气污染防治专业案例)
- 难点解析人教版八年级物理上册第4章光现象专题训练试卷(含答案详解)
- 家政服务消防安全培训课件
- 局麻药过敏反应课件
- 邮件流量分析-洞察及研究
- 《流体机械》课件第5章叶片式气体机械
- 基于微信小程序自助洗车系统的设计与实现
- 医院骨科主任竞聘课件
- 心源性脑栓塞治疗指南
- 南湖红船景区讲解
- 2025年少先队辅导员知识竞赛题库及答案
- 2023年游泳竞赛规则
- 供货进度保证措施方案
评论
0/150
提交评论