pic课程设计多位数码管循环显示_第1页
pic课程设计多位数码管循环显示_第2页
pic课程设计多位数码管循环显示_第3页
pic课程设计多位数码管循环显示_第4页
pic课程设计多位数码管循环显示_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程名称 单片机原理与接口技术课程设计 设计题目 多位数码管循环显示 院 系 机电工程学院 班 级 2010 级电气工程及其自动化专 业 姓 名 江春林 学 号 20113392 指导教师 史丽萍 闫广明 张波 张扬 王冠然 设计时间 2013 年 12 月 出勤实践报告总分 一 设计方案描述与论证 本次课程设计将会设计一个多位数码管显示的系统 在系统中用到的主要原件有 PIC16F877A 单片机一个 数码管四个 在单片机最小系统焊接完成以后 选择将数码管 的位选接在单片机的 RB1 RB2 RB3 RB4 口 由于 RB0 为 INT 外部触发中断的输入引 脚 故在此没有占用 将数码管的段选接在单片机 D 口 设置方向寄存器 B 口的位 1 位 2 位 3 位 4 设置为输出 D 口设置为全输出 当 RB1 RB2 RB3 RB4 都输出 1 时 就可以点亮四个数码管 在 D 口输出需要显示的数即可在数码管显示出数字 在显示延时 后对数进行自动加 1 即可完成对 0 9999 的循环显示 二 硬件设计部分 硬件电路 工作原理 B 口的 1 2 3 4 位为为选位 D 口为段选 方向寄存器 TRISB 写 B 00011110 TRISD 写 01H 即是 B 口 1 2 3 4 和 D 口都为输出 PROTB 输出 1 时就可以把四个数码管点亮 需要 输出的数写入 D 口即可 三 软件设计部分 程序流程框图 开始 设置方向寄存器 点亮数码管 变量清零 显示 个位加 1 个位是否为 10 调用十位进 1 程序 十位是否为 10 调用百位进 1 程序 百位是否为 10 调用千位进 1 程序 千位是否为 10 延时 延时 显示 延时 显示 延时 显示 主程序 十位进一 百位进一千位进一 查表程序延时程序 源程序 list p 16f877A list directive to define processor include processor specific variable definitions CONFIG CP OFF VARIABLE DEFINITIONS w temp EQU 0 x71 variable used for context saving status temp EQU 0 x72 variable used for context saving GE EQU 0 x40 SHI EQU 0 x41 BAI EQU 0 x42 个位清零 十位加一 返回 十位清零 百位加一 返回 百位清零 千位加一 返回 W 加 PCL 带 0 返回 带 9 返回 30H 的数减 1 为零间 跳 31H 的数减 1 为 0 间跳 返回 QIAN EQU 0X43 JIANGE EQU 0 x44 ORG 0 x000 processor reset vector clrf PCLATH ensure page bits are cleared goto MAIN go to beginning of program ORG 0 x004 interrupt vector location movwf w temp save off current W register contents movfSTATUS w move status register into W register movwfstatus temp save off contents of STATUS register isr code can go here or be located as a call subroutine elsewhere movf status temp w retrieve copy of STATUS register movwfSTATUS restore pre isr STATUS register contents swapf w temp f swapf w temp w restore pre isr W register contents retfie return from interrupt MAIN remaining code goes here BSFSTATUS RP0 CLRFTRISD BCF TRISB 1 BCFTRISB 2 BCFTRISB 3 BCFTRISB 4 BCFSTATUS RP0 BSFPORTB 1 BSFPORTB 2 BSFPORTB 3 BSFPORTB 4 LOOP1MOVLW00H MOVWFGE MOVLW00H MOVWFSHI MOVLW00H MOVWFBAI MOVLW00H MOVWFQIAN LOOP2 CLRFJIANGE INCFGE F MOVLW 10 SUBWF GE W BTFSCSTATUS 2 CALLGE1 MOVLW 10 SUBWF SHI W BTFSCSTATUS 2 CALLSHI1 MOVLW 10 SUBWF BAI W BTFSCSTATUS 2 CALLBAI1 MOVLW 10 SUBWF QIAN W BTFSCSTATUS 2 GOTOLOOP1 LOOPMOVFGE W CALLCHABIAO MOVWFPORTD BCFPORTB 1 CALLDELAY BSFPORTB 1 MOVFSHI W CALLCHABIAO MOVWFPORTD BCFPORTB 2 CALLDELAY BSFPORTB 2 MOVFBAI W CALLCHABIAO MOVWFPORTD BCFPORTB 3 CALLDELAY BSFPORTB 3 MOVFQIAN W CALLCHABIAO MOVWFPORTD BCFPORTB 4 CALLDELAY BSFPORTB 4 INCFSZ JIANGE F GOTOLOOP GOTOLOOP2 DELAY DECFSZ 30H F GOTODELAY RETURN CHABIAOADDWF PCL F RETLW 0 xC0 RETLW 0 xF9 RETLW 0 xA4 RETLW 0 xB0 RETLW 0 x99 RETLW 0 x92 RETLW 0 x82 RETLW 0 xF8 RETLW 0 x80 RETLW 0 x90 GE1CLRFGE INCFSHI F RETURN SHI1CLRFSHI INCFBAI F RETURN BAI1CLRFBAI INCFQIAN F RETURN END directive end of program 四 结果评价 本设计的硬件结构简单 程序比较容易 但功能也是很单一 再设计中应多用一些单片机 的其他功能 对系统进行一些扩充和完善 比如加上复位 停止按钮等 在本次的课程设计中 通过对实际硬件的设计和焊接 对程序的编写和最后的运行 让我 们把理论和实际结合起来 加深了我们对理论知识的理解和实际动手能力 对于我们来说 这是一次非常有意义的课程 它将会让我的一生都受益无穷 五 参考文献 1 刘和平 PIC18

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论