单片机作息时间控制器课程设计(编辑修改稿)内容摘要:
FFH MOV P0, A。 P0 口为字形码输出口 NOP NOP MOV R0, 2FH。 显示子程序 NOP MOV R1, 10H。 位控制字 LOOP1: MOV A, R1 NOP MOV P2, A。 输出位控制字 MOV P2, A MOV DPTR, TABLE MOV A,@ R0。 取显示缓冲区中的显示字符数 22 MOVC A,@ A+DPTR。 查表转换成字型代码 CPL A MOV P0, A。 输出字形码 MOV R2, 00H LOOP2: DJNZ R2, LOOP2。 延时 2MS DEC R0。 显示下一个字符 MOV A, R1 CLR C RRC A MOV R1, A JNZ LOOP1。 判断 5位扫描显示一遍是否完成 RET NOP NOP TABLE: DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H DB 0BFH, 86H, 0DBH, 0CFH, 0E6H, 0EDH, 0FDH, 87H。 带小数点时的字符显示字形表 DB 0FFH, 0EFH、 0F7H, 0FCH, 0B9H, 0F9H, 0F1H NOP 键扫描子程序 检测 P1 口,判断是否有键按下,如有键按下,进进行延时去抖动并读取键值,存入 A 中。 CHECKEYA: NOP。 键扫描子程序 NOP NOP MOV P1, 0FFH MOV A, P1。 判断是否有键按下 CPL A 23 ANL A, 3FH JZ RETX LCALL DISP。 延时去抖动 LCALL DISP MOV A, P1 CPL A ANL A, 3FH JZ RETX MOV R6, A。 当前值存放在 R6 中 K1: LCALL DISP。 等待释放按键 MOV A, P1 CPL A ANL A, 3FH JNZ K1 MOV A, R6 NOP NOP RETX: RET NOP i. 用户自设定报时时间点置入键程序模块。 将显示缓冲区 2FH~2BH 中的内容压缩后存入 40H 为首地址的片内 RAM 中,其中 2FH 为定时时间点的编号, 2EH、 2DH 为小时值, 2CH、 2BH 为分钟数值。 USESET: NOP MOV R0, 2FH MOV R1, 40H。 本次用户设定报时点首址为 40H MOV A,@ R0 ANL A, OFH RL A 24 ADD A, R1。 报时点编号乘 2 加首址 ,为本次存放的实际地址 MOV R1, A DEC R0 NOP。 定时设定时间置入子程序 NOP MOV R2, 02H LDD: MOV A,@ R0。 ANL A, 0FH SWAP A MOV R7, A DEC R0 MOV A,@ R0 ANL A, 0FH ADD A, R7 MOV @ R1, A DEC R0 INC R1 DJNZ R2, LDD NOP CLR 0F4H NOP RET NOP ii. 减 1 键处理。 在小数点点亮的对应位上进行十进制减 1 处理。 SUBONE: NOP NOP JNB 7CH, SCH74 25 MOV R0, 2FH SJMP SUB1 SCH74: NOP JNB 74H, SCH6C MOV R0, 2EH SJMP SUB1 SCH6C: NOP JNB 6CH, SCH64 MOV R0, 2DH SJMP SUB1 SCH5C: NOP JNB 64H, SCH5C MOV RO, 2CH SJMP SUB1 SCH5C: NOP JNB 5CH, ERR1 MOV R0, 2BH SJMP SUB1 NOP NOP ERR1: RET NOP SUB1: NOP MOV A,@ R0 ADD A, 99H DA A XCHD A,@ R0 RET 26 iii. 用户自设定报时时间点显示键处理模块。 由( 2FH)指定的用户自设定报时点编号,计算其在 RAM 中存放的地址,再根据此地址找出该报时时间点的 2 个字节码,将其 4 个半字节分别存入 2EH~2BH 单元低半字中。 DSPUSE: NOP MOV R0, 2FH。 自设定报时点编号由 (2FH)指定 MOV R1, 40H。 用户设定报时点首址为 40H MOV A,@ R0 ANL A, 0FH RL A ADD A, R1。 报时点编号乘 2 加首址 ,为其存放的实际地址 MOV R1, A DEC R0 NOP。 取定 时设定时间并置入显示缓冲区 NOP MOV R2, 02H LDR: MOV A,@ R1。 将小时和分钟值解压缩后装入相应显示单元中 SWAP A XCHD A,@ R0 DEC R0 INC R1 DJNZ R2, LDR NOP CLR 0F4H NOP RET 27 NOP 键值处理子程序 KEYACC: NOP。 键值处理子程序 NOP。 按键处理子程序 JB ACC. 0, SHIFTP。 是移位功能键转 SHIFTP JB ACC. 1, ADDONE。 是加 1键 ,转 ADDONE JB ACC. 2, SUBONE。 是减 1键 ,转 SUBONE JB ACC. 3, TIMSET。 是时钟校对键转 TIMSET JB ACC.4, USESET。 设置用户定时时间点 JB ACC. 5, DSPUSE。 显示用户定时时间点 NOP NOP NOP RET NOP iv. 加 1键处理程序。 在小数点点亮的对应位上进行十进制加 1处理。 ADDONE: NOP NOP JNB 7CH, SECH74 MOV R0, 2FH SJMP ADD1 SECH74: NOP JNB 74H, SECH6C MOV R0, 2EH SJMP ADD1 SECH64C: NOP JNP 6CH, SECH64 MOV R0, 2BH 28 SJMP ADD1 NOP NOP ERR2: RET NOP ADD1: NOP MOV A,@ R0 ADD A, 01H DA A XCHD A,@ R0 RET v. 校时时间置入程序模块。 将设定的时间值置入相应的时间计数单元,并以该时间为起点开始 计时。 TIMSET: NOP。 校时时间置入程序段 NOP MOV R0, 2FH MOV R1, 24H MOV R2, 02H MOV A,@ R0 ANL A, 0FH MOV @ R1, A DEC R0 DEC R1 LD1: MOV A, R0 ANL A, 0FH SWAP A MOV R7, A DEC R0 29 MOV A,@ R0 ANL A, 0FH ADD A, R7 MOV @ R1, A DEC R0 DEC R1 DJNZ R2, LD1 MOV 21H, 00H CLR 0F4H RET NOP NOP 移位键处理程序模块 将小数点从左向右依次移动 1 位。 小数点移动哪一位,那一位便可用加 1 或减 1键进行修改数值。 小数点如移到最右边 1位,若再按 1 次移位键,小数点自动返回到最左边一位上。 SHIFTP: NOP JB 0F4H, NXT ERR: SETB 0F4H SETB 5CH CLR 6CH NXT: NOP JNB 7CH, CHK74 CLR 7CH SETB 74H RET CHK74: NOP JNB 74H, CHK6C CLR 74H 30 SETB 74H SETB 6CH RET CHK6C: NOP JNB 6CH , CHK64 CLR 6CH SETB 64H RET CHK64: NOP JNB 64H, CHK64 CLR 6CH SETB 5CH RET CHK5C: NOP JNB 5CH, ERR CLR 5CH SETB 7CH RET 冬季和夏季的处息时间表区 TABLE2: DB 06H, 00H, 06H, 20H, 60H, 40H, 07H, 10H, 07H, 15H。 冬令 DB 07H, 20H, 07H, 50H, 07H, 58H, 08H, 00H, 08H, 45H DB 08H, 53H, 08H, 55H, 09H, 40H, 09H, 55H, 09H, 58H DB 10H, 00H, 10H, 45H, 10H, 53H, 10H, 55H, 11H, 40H DB 13H, 00H, 13H, 13H, 13H, 15H, 14H, 00H, 14H, 13H DB 14H, 15H, 15H, 00H, 15H, 13H, 15H, 15H, 16H, 00H DB 17H, 30H, 18H, 15H, 19H, 00H, 19H, 35H, 19H, 40H DB 20H, 30H, 21H、 00H, 21H, 30H, 0FFH, 0FFH, 0FFH 31 TABLE3: DB 06H, 00H, 06H, 20H, 06H, 40H, 07H, 10H, 07H, 15H。 夏令 DB 07H, 20H, 07H, 50H, 07H, 58H, 08H, 00H, 08H, 45H DB 08H, 53H, 08H, 55H, 09H, 40H, 09H, 55H, 09H, 58H DB 10H, 00H, 10H, 45H, 10H, 53H, 10H, 55H, 11H, 40H DB 13H, 45H, 13H, 58H, 14H, 00H, 14H, 45H, 14H, 50H DB 14H, 58H, 15H, 00H, 15H, 45H, 15H, 53H, 15H, 55H DB 17H, 25H, 19H, 00H, 19H, 35H, 19H, 40H, 21H, 00H DB 21H, 30H, 22H, 00H, 0FFH, 0FFH, 0FFH, 0FFH 第 5 章 调试及分析。单片机作息时间控制器课程设计(编辑修改稿)
相关推荐
泛采用色环电阻,其优点是在装配、调试和修理过程中,不用拨动元件,即可在任意角度看清色环,读出阻值,使用方便。 一个电阻色环由4 部分组成(不包括精密电阻)。 测量时可用万用表来测量电阻的“阻值”。 图 电阻图形符号 阻值判断:色标法 — 用不同颜色的色环来表示电阻器的阻值及误差等级 .普通电阻一般有 4 环表示 ,精密电阻用 5 环。 这个规律有一个巧记的口诀:棕一红二橙是三,四黄五绿六为蓝
同时也引起母线电压的变化。 这些变化与机组的无功调节特性有关,为了合理而稳定地分配组间的无功负荷,机组的无功调节特性应有适当的调差系数。 调差系数 可由下式表示 %=feff UUU 21 100% ( 2- 7) feU 为发电机额定电压, 1fU 、 2fU 分别是发电机空载电压、额定无功电流时的电压。 当正调差系数为 > 0,其调节特性下倾,发电机电压随着无功电流增大而降低。
┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 研究现状 随着电力系统容量日益增大,范围越来越广,仅设置系统各元件的继电保护装置,远不能防止发生全电力系统长期大面积停电的严重事故。 为此必须从电力系统全局出发,研究故障元件被相应继电保护装置的动作切除后,系统将呈现何种工况
3P14 P16P15P36P17P35D1LED2D2LED2D3LED2D4LED2D5LED2D6LED2D7LED2D8LED2D9LED2D12LED2D11LED2D10LED21kR4RESDIP1kR5RESDIP1kR10RESDIP1kR11RESDIP1kR12RESDIP1kR7RESDIP1kR8RESDIP1kR9RESDIP1kR6RESDIPVCCVCCVCCVCC
中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送的数据量较大的 C. 串行数据通信的传输速率: 串行数据传输率有两个概念,既美秒传送的位数 bps(Bit per second)和美秒符号数 波特率( Band rate) ,在具有调治解调器的通信中,波特率与调治速率有关。 MCS51 的串行和控制寄存器 串行口和控制寄存器 MCS51 单片机串行口专用寄存器结构如图所示。
KS0108 处于正常工作状态, RESET=0。 ( 4) L5~ L0 为显示起始行的地址,取值在 0~ 3FH(1~ 64)范围内。 ( 5) P2~ P0 确定当前所要选择的页面地址,取值在 0~ 7H,代表 1~ 8 页。 ( 6) C5~ C0=0~ 3FH(1~ 64)代表某一页面上的某一单元地址,随后的一次读或写 数据将在这个单元上进行。 KS0108 控制器与 8255A