东南大学MCU课程设计报告_第1页
东南大学MCU课程设计报告_第2页
东南大学MCU课程设计报告_第3页
东南大学MCU课程设计报告_第4页
东南大学MCU课程设计报告_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

3东南大学自动化学院《MCU技术及课程设计》课程设计报告姓 名: 学 号:专业:自动化金智楼组别:同组人员:设计时间:2017年08月28日 ——2017年09月06日评定成绩: 批阅教师:目 录一.课程设计的目的与要… 3\l“_TOC_250002“二.原理设计… 3\l“_TOC_250001“三.方案论证… 8\l“_TOC_250000“四.方案实现与测试… 8五.分析与总结… 9一.课程设计的目的与要求本次设计使用MSP430F6638实现一基于单片机的电子密码锁的设计,其主要具有如下功能:密码通过键盘输入,假设密码正确,则绿灯亮,表示密码锁翻开,假设密码错误,红灯亮,表示密码锁关闭。AC二.原理设计数码管显示TM1638掌握芯片TM1638是带键盘扫描接口的LEDMCU数字接口、数据锁存器、LED高压驱动、键盘扫描等电路。主要应用于冰箱、空调、家庭影院等产品的高段位显示屏驱动。TM16385-1SEG_DIO,SEG_CLK,SEG_STB与MSP430芯片中P3.5,P3.4,P3.2三个IO口相连,仅占用3个端口即可完成数据的输入输出,大大节约单片机的IO口和开发板的空间,降低了布线的难度。TM1638与MSP430试验箱连接示意图如图4-1所示,试验开发板LED数码管对应关系5-2。TM1638接收数据串行数据传输格式:读取和接收1个BIT都在时钟的上升沿操作。数据接收〔写数据〕5-4所示。以下写数据代码仅作为参考〔更多关于TM1638的程序请参考给出的TM1638.h和TM1638.c两个文件以及芯片说明书〕voidTM1638_Write(unsignedcharDATA) //写数据函数{unsignedchari;DIO_OUT;//将DIO配置为输出状态for(i=0;i<8;i++){ CLK_low; if(DATA&0x01){DIO_high;}else{DIO_low;} CLK_high; DATA>>=1; //LED数码管显示图5-5共阴极数码管连接图图5-50需要在GRID1为低电平的时候让SEG1,SEG2,SEG3,SEG4,SEG5,SEG6为高电平,SEG7为低电平,即在00H地址单元里面写数据3FH就可以让数码0共阴极LED数码管编码如表5-1所示。开发板上LED地址开发板共有8个LED数码管,从左至右其地址分别为:08h,0ah,0ch,0eh,00h,02h,04h,06h。键盘读取(1)矩阵键盘的读取如图5-6所示,该键盘为8*3bit。一旦有按键按下,TM1638中相关的存放器的值就会转变〔按键按下时相应字节由0变1,具体对应关系如图5-7〔键盘不全,没有加、减、等于、AC等几个键〕留意:1)2)TM1638最多可以读4个字节,不允很多读。读数据字节只能按挨次从BYTE1-BYTE4读取,不行跨字节读。例如K2与KS84个字节的第5BIT位,才可读出数据;3)当K1与KS8,K2与KS8,K3与KS8三个按键同BYTE4B4,B5,B6位均为14)组合键只能是同一个KS同的KK与不同的KS5)例如:假设Keyboard的按键’1’按下,依据图5-8,我们可以从<BYTE1,B2>读取按键值,程序实现参考〔1的键值保存为BITBIT2,按键3BIT3,以此类推。固然也可以保存为任意自己定义的值,比方说1保存为0x01,2保存为0x02,按键3键值保存为0x03,等等。对于加、减、乘、除和AC等几个特别的键,可以单独定义不重复的键值〕unsignedcharc[4]; //BYTE1-BYTE4unsignedintkey_value=0x00;//暂存TM1638unsignedinti;STB_high;STB_low;TM1638_Write(0x42);//写地址_delay_us(1); for(i=0;i<4;i++)c[i]=TM1638_Read;//读取按键值STB_high;if(c[0]&BIT2) //依据图5-8推断读取的按键{key_value|=BIT1;//假设是<BYTE1,B2>,则推断为按键’1’按下}下面给出TM1638.c中read_key主体函数,编写自己的main函数调用read_key来实现所需功能。实际应用中可能需要依据要求将对键盘的处理程序read_key进展自定义修改,比方本次试验中可以直接依据键值进展显示。unsignedcharRead_key(void){unsignedcharc[4];unsignedintkey_value=0x00;unsignedinti;STB_high;STB_low;TM1638_Write(0x42);_delay_us(1);for(i=0;i<4;i++)c[i]=TM1638_Read;STB_high;if(c[0]&BIT2){key_value|=BIT1;}elseif(c[0]&BIT6){key_value|=BIT4;}elsef… /此处编写对应key_value可任意定义的!for(i=0;i<16;i++)break;returni;//1-151-F16义,大于等于16则无意义。假设需要定义其它按键〔/AC等,则需要修改返回值定义。固然,更简洁的可直接返回key_value,比返回i三.方案论证方案:输入密码用矩形键盘,包括数字键和功能键。LED用发光二极管代替开锁的电路,绿灯表示开锁,红灯表示关锁。AC57654321PC建立CCS选择对该工程进展编译链接,生成.out文件。然后选择,将程序下载到试验板中。程序下载完毕之后,可以选择全速运行程序,也可以选择单步调试程序,选择F3查看具体函数。也可以程序下载之后,按下,软件界面

温馨提示

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

评论

0/150

提交评论