欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    PIC单片机课设报告Word格式.docx

    • 资源ID:18324673       资源大小:266.40KB        全文页数:17页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    PIC单片机课设报告Word格式.docx

    1、引脚11、32:Vdd,系统电源端。引脚12、31:Vss,系统接地端。引脚13、14:RA7/OSC1/CLKIN、RA6/OSC2/CLKOUT,接4MHz的晶振,为系统的时钟源。引脚33:RB0/AN12/INT,为外部中断输入端。接操作按键K2。引脚34:RB1/AN10/C12IN3,设为输入口,接操作按键K3。引脚35:RB2/AN8,设为输入口,接操作按键K4。引脚1923:RD0RD3,设为输出口,接LCD1602的数据输入端高四位。引脚27:RD4,设为输出口,接LCD1602的RS数据/命令选择端。引脚28:RD5/P1B,设为输出口,接LCD1602的RW读写选择端。引脚

    2、29:RD6/P1C,设为输出口,接LCD1602的E使能端。引脚16:RC1/T1OSI/CCP2,设为输出口,接微型直流电机。引脚17:RC2/P1A/CCP1,设为输出口,接蜂鸣器。2、 点阵型LCD YB1602A采用4位数据线接线方式,是为节省单片机的I/O口用到的引脚有:GND,接地引脚2;VCCB,电源正极引脚3:VO,液晶显示偏压信号口 引脚4:RS,命令/数据选择,接单片机RD4口引脚5:R/W,读/写选择,接单片机RD5口引脚6:E,数据使能,接单片机RD6口引脚1114:DB4DB7,数据输入口,接单片机RD0RD3口3、 4x4按键 4行(RB0RB3)作为输入状态,低

    3、4位有弱上拉使能并允许电平变化中断 4列(RB4RB7)作为输入状态,输出低电平4、 微型直流电机(5V供电) 5、 蜂鸣器四、硬件电路图五、程序设计1模块介绍该电子密码锁系统的软件设计分为以下几个模块:(1)主程序模块主程序主要完成初始化、设置中断向量、检查有无按键按下、以及调用显示等等。主程序的流程图如下所示。(2)键盘扫描及识别子程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。(3)显示子程序由于是分屏显示数据,所以就要用到4个显示子程序,分别是:LCD初始化设定 void lcdcsh(void);写

    4、入指令数据到LCD void xie_ml(unsigned char ml);写入字符显示数据到LCD void xie_sj(unsigned char sj);写入字符串到LCD void xie_zfc(unsigned char *pp,unsigned int n);LCD字符清除子程序 void qingchu(void)/;(4)密码比较子程序输入密码与正确密码的比较 int bijiao(void);(5)声响子程序通过改变蜂鸣器接口电平高低发声,包括2个声响子程序警报声 void jingbao (void);按键声 void anjiansheng (void);(6)延

    5、时子程序通过软件程序进行延时 void delay(unsigned int);2、程序流程图:3、程序代码:详见附录六、总结1、LCD YB1602A的编程,主要要点为:(1)数据使能端E的控制,高电平变为低电平时写入;(2)4位数据线的写入方式,要分别将高4位和低4位写入;(3)体现删除效果时,可在原数据位写入“空格”。2、键盘扫描及识别子程序的编程,主要要点为:(1)将RB低4位设置为输入状态,注意弱上拉和电平变化中断设置。(2)将RB高4位设置为输出状态,通过判断按下键时的PORTB值判断键值(3)要有防抖动措施,防止按键错误。3、其他程序要点:(1)注意switch语句的运用,包括b

    6、reak别漏。(2)标志位的设置有助于程序的判断。(3)字符串的运用中用for语句进行各位的比较和写入。(4)延时子程序的多处运用,如防抖、显示等。经过将近三周的PIC单片机课程设计,终于完成了我的电子密码锁的设计,虽然功能不算强大,譬如说无法从硬件上修改密码,电路的密码不能遗忘,一旦遗忘,就很难打开,这可以通过增加电路解决,但过于复杂,本次设计未其中;虽然如此但从心底里说,还是高兴的,毕竟这次设计把实物都做了出来。通过这三周的学习,我感觉有很大的收获:首先,通过学习使自己对课本上的知识可以应用于实际,使的理论与实际相结合,加深自己对课本知识的更好理解,同时实习也段练了我个人的动手能力:能够充

    7、分利用网络去查阅资料,增加了许多课本以外的知识。能对proteus、和mplab-ide 等软件操作,能达到学以致用。对我们学生来说,理论与实际同样重要,这是我们以后在工作中说明自己能力的一个重要标准。在课设实践过程中,我感受到了老师对学生的负责态度,无论是在课堂还是在网咯上老师都来给我们指导,使我们少走弯路,顺利完成课设任务,感谢你们,老师!七、参考书目1李荣正、刘启中、陈学军,PIC单片机原理及应用,北京航空航天大学出版社,2006年10月2江和、鲍光海,PIC单片机课程设计指导书,2010年6月3谭浩强. C程序设计(第二版),清华大学出版社,19994Microchip Technol

    8、ogy Inc. PIC16F87XA Data Sheet. DS39582B,20035长沙太阳人电子有限公司.LCD1602使用说明书程序代码#include _CONFIG(0x20f1);#define RS RD4#define RW RD5#define E RD6#define LCD PORTDvoid lcdcsh(void);void xie_sj(unsigned char sj);void xie_ml(unsigned char ml);void xie_zfc(unsigned char *pp,unsigned int n);void delay(unsigne

    9、d int);void anjian(void);void qingchu(void);void jingbao (void);void anjiansheng (void);int bijiao(void);unsigned char k,j=0,errorflag=0;unsigned char str1=password:,str2=lock,password=123456,pw6;void main(void) TRISB=0x0F;/B口高4位设置为输出,低4位设置为输入TRISC=0x00;/C口设置为输出TRISD=0X00;PORTB=0X0F;/B口高4位设置为低电平,低4位

    10、设置为高电平PORTC=0x00;/C口设置为低电平WPUB=0x0F;/B口低4位设置为使能弱上拉IOCB=0x0F;/B口低4位设置为允许电平变化中断ANSEL=0X00;/数字I/O设置ANSELH=0X00;OPTION=0X00;/选项寄存器设置xie_zfc(str1,9);/LCD写入while(1)while(PORTB=0x0f)/等待键按下 while(RBIF=0); delay(2); RBIF=0;/RB中断标志位清零 delay(2); anjiansheng();/按下一个键响一声anjian();/判断哪个键按下switch(k) caseC:qingchu()

    11、;j-;break;/清除LCD前一个字符E if(bijiao()=0)/如果密码比较错误 errorflag+;/密码错误标志位加1 if(errorflag=3)/当密码输入错误三次 xie_zfc(str2,4);/LCE写入“lock” jingbao();/警报声响起 TRISB=0X00;/B口设置为输出,键盘被锁 else/当密码输入错误不足三次,允许再次输入 xie_zfc(str1,9); j=0; else/如果密码比较正确 PORTC=0x02;/RC2口输出高电平,电机转动 errorflag=0;/密码错误标志位清0 ;break; default: pwj=k;/

    12、按键值依次输入字符串PW中 j+; xie_sj(*);/每按一个键,LCE写入一个“*”void xie_ml(unsigned char ml)/写入指令数据到LCD RW=0;/选择写入E=1;/数据使能:下降沿送入有效RS=0;/选择命令delay(1);LCD=ml;/命令送入D口E=0;写入命令void qingchu(void)/清除命令xie_ml(0x00);/写入命令:完成一个字符码传送后,光标左移,AC自动减1xie_ml(0x04);delay(2);xie_sj( /在光标目前所在的位置写入空格/在需删除的字符位写入空格xie_ml(0x01);没有读写显示数据的情况

    13、下光标右移,AC自动加1完成一个字符码传送后,光标左右移,AC自动加1xie_ml(0x06);void xie_sj(unsigned char sj)/写入字符显示数据到LCDchar sj_h,sj_l;sj_h=(sj&0xf0)4;/获得数据高4位写入sj_h低4位sj_l=sj&0x0f;/获得数据低4位写入sj_l低4位NOP();RS=1;/选择数据LCD&=0xf0;/B口低4位清0,高4位保留LCD|=sj_h;/B口低4位为sj_h低4位值,高4位值不变LCD|=sj_l;/B口低4位为sj_l低4位值,高4位值不变void lcdcsh(void)/LCD初始化设定 c

    14、har i; delay(50); for(i=0;i3;i+)/写控制命令“0b0011”3次 xie_ml(0x03); delay(10); xie_ml(0x02);/写数据格式命令“0b0010” delay(5);/写功能设置命令“0b00101000”,4位数据格式,2行,5*7点阵 xie_ml(0x08); xie_ml(0x00);/写显示控制命令“0b00001111”,打开显示,光标闪烁 xie_ml(0x0f);/写清除命令“0b00000001” xie_ml(0x01); delay(10);/写模式命令“0b00000110”,每显示一个字符后地址自动加1 xi

    15、e_ml(0x06);void xie_zfc(unsigned char *pp,unsigned int n) /写入字符串int i;lcdcsh();/LCD初始化xie_ml(0x08);/光标移至LCD第一行第一位for(i=0;n;i+)/逐个写入字符串 xie_sj(ppi);xie_ml(0x0C);/光标移至LCD第二行第一位void anjian(void)/判断按键值unsigned int y;y=PORTB;switch(y) case(0x0e):/如果B口值为0x0e,即RB0=0第一行按下 TRISB=0xF0;/B口高4位设置为输入,低4位设置为输出 POR

    16、TB=0XF0;/B口高4位设置为高电平,低4位设置为低电平 WPUB=0xF0;/B口高4位设置为使能弱上拉 IOCB=0xF0;/B口高4位设置为允许电平变化中断 if(RB4=0)k=0;/如果RB4口为低电平,则0键按下 if(RB5=0)k=1 if(RB6=0)k=2 if(RB7=0)k=3 break; case(0x0d): 4567 case(0x0b):89AB case(0x07):DF break; while(PORTB!=0x0F);/如果有按键按下则保持循环扫描int bijiao(void)/密码比较 int flag=1; unsigned char h; for (h=0;h6;h+) if (pwh!=passwordh)/如果输入值与原密码有一位不相等则密码错误 flag=0;/标志位为0 return(flag);/标志位值返回void jingbao (void)/警报声while(1) RC2=1; delay(500); RC2=0; delay(300);void anjiansheng (void)/按键声RC2=1; delay(100);RC2=0;void delay(unsigned int n) / 延时unsigned int i;char j;i+) for(j=0;j99;j+) NOP();


    注意事项

    本文(PIC单片机课设报告Word格式.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开