EASY AVR ATmega128课程设计课题具体要求
- 格式:doc
- 大小:74.50 KB
- 文档页数:7
单片机课程设计要求1. 概述本文档旨在提供单片机课程设计的基本要求和指导,以帮助学生深入理解单片机的原理和应用,并通过设计和实现具体项目来提升实践能力。
本文档将对课程设计的主要内容、要求以及评分标准进行详细说明。
2. 课程设计内容单片机课程设计要求学生选取一个具体的项目,并使用单片机进行设计和实现。
项目类型可以包括但不限于以下几个方面:•传感器应用:利用单片机连接传感器,实现物理量的测量和控制。
•系统控制:利用单片机控制外围设备,如LED灯、电机等。
•通信应用:利用单片机实现与其他设备的通信,如蓝牙、WiFi等。
•嵌入式系统设计:利用单片机设计嵌入式系统,如智能家居系统、智能车等。
3. 设计要求3.1 硬件要求学生在设计过程中需要选择合适的硬件平台,并进行相关电路的设计和连接。
硬件要求如下:•单片机:至少选择一种主流单片机,如STC系列、PIC系列等。
•外围设备:根据项目要求选择合适的传感器、执行器、显示器等外围设备。
•连接方式:必须使用适当的电路和连接方式将单片机与外围设备连接起来。
3.2 软件要求学生需要编写相应的软件来实现项目的功能。
软件要求如下:•编程语言:可以选择汇编语言或C语言进行编程。
•开发环境:选择合适的单片机开发环境,如Keil、Arduino等。
•功能实现:根据项目要求,编写相应的程序代码,实现相应的功能。
•界面设计:如果项目需要界面显示,需要进行界面设计和编程。
3.3 功能要求学生需要根据项目要求设计并实现相应的功能。
功能要求如下:•数据采集:如果项目需要采集数据,需要设计相关的采集方案并实现。
•数据处理:对采集到的数据进行处理、转换或运算,实现项目要求的功能。
•状态控制:如果项目需要控制外围设备的状态,需要设计相应的控制方案并实现。
•用户交互:如果项目需要与用户交互,需要设计用户界面并实现相应的交互功能。
4. 实验报告要求学生需要撰写一份完整的实验报告,详细记录课程设计的整个过程。
Atmega128熔丝位设置ZHJ初学A VR单片机时最复杂最不容易懂的是熔丝位的设置,一旦设置错了很麻烦。
(如果已设置错了,处理见《A VR熔丝位恢复方式ZHJ》)有了本文,告别设置的不知所措吧!本文是Atmega128单片机的设置界面,下载用的是A VR Studio 4.13,下载器用的是深圳研学电子公司的ISP下载器(不是打广告,个人觉得好用)闲话少话,逐条解释吧!1.Atmega103 Compatibility Mode不勾选。
Atmega103兼容模式。
如果你用Atmega128代替Atmega103才勾选。
2.Watchdog Timer always不勾选。
看门狗始终开启。
此位勾选后软件不能关闭看门狗(除非你不想让软件可暂停看门狗工作)3.On-Chip Debug Enabled不勾选。
片上调试使能。
一般用不上4.JTAG Interface Enaled一般勾选此条小心设置!!JTAG接口使能。
如果你用的是ISP下载,且现在将来不会用JTAG下载,且想用PF4~PF7四个引脚作普通IO口使用,才不勾选。
5.Serial program downloading (SPI) enabled一般勾选此条小心设置!!SPI下载使能。
在ISP下载模式下不能更改。
在JTAG模式下可以更改为不勾选,不勾选后不能使用ISP下载。
6.Preserve EEPROM memory through the Chi Erase cycle勾选。
保护EEPROM中的数据,下载FLASH时不会被破坏。
7.Boot Flash section size=512 words Boot start address=$fe08.Boot Flash section size=1024 words Boot start address=$fe09.Boot Flash section size=2048 words Boot start address=$fe010.Boot Flash section size=4096 words Boot start address=$fe0四选一。
嵌入式课程设计2812一、课程目标知识目标:1. 学生能理解嵌入式系统的基础知识,掌握2812芯片的基本原理和功能。
2. 学生能描述嵌入式系统的开发流程,了解编程语言在嵌入式系统中的应用。
3. 学生能解释嵌入式系统中常见的数据通信方式,并掌握I2C、SPI等通信协议的使用。
技能目标:1. 学生能运用所学知识,设计简单的嵌入式系统电路,并完成程序的编写与烧录。
2. 学生能通过实践操作,学会使用调试工具对嵌入式系统进行调试和故障排查。
3. 学生能运用团队协作能力,共同完成一个嵌入式项目的设计与实施。
情感态度价值观目标:1. 学生培养对嵌入式系统的兴趣,激发探究精神和创新意识。
2. 学生通过课程学习,认识到嵌入式技术在现实生活中的应用,增强社会责任感。
3. 学生在团队协作中,学会相互尊重、沟通与协作,培养良好的团队合作精神和竞争意识。
本课程针对高年级学生,结合嵌入式系统2812芯片的相关知识,注重理论与实践相结合。
通过本课程的学习,使学生不仅掌握嵌入式系统的基础知识,还能提高实际操作能力和团队协作能力,为将来的学习和工作打下坚实基础。
二、教学内容1. 嵌入式系统概述:介绍嵌入式系统的定义、发展历程、应用领域,使学生了解嵌入式系统的重要性。
教材章节:第一章 嵌入式系统概述2. 2812芯片原理与功能:讲解2812芯片的基本结构、工作原理、性能特点,使学生掌握2812芯片的使用方法。
教材章节:第二章 2812芯片原理与功能3. 嵌入式编程语言:介绍嵌入式编程语言(如C语言)的基本语法、编程规范,分析其在嵌入式系统中的应用。
教材章节:第三章 嵌入式编程语言4. 嵌入式系统开发流程:讲解嵌入式系统开发的各个阶段,包括需求分析、硬件设计、软件编程、系统调试等。
教材章节:第四章 嵌入式系统开发流程5. 数据通信协议:介绍I2C、SPI等常见数据通信协议的工作原理、接口设计,使学生能够运用这些协议进行数据通信。
教材章节:第五章 数据通信协议6. 嵌入式系统实践:通过实际操作,教授学生如何设计嵌入式系统电路、编写程序、烧录与调试,提高学生的动手能力。
Mega128单片机调试与设置一、单片机型号为ATmega128A二、调试软件为iccavr7.22和AVRstudio4.0连调三、流程:1.在iccavr中建立工程文件。
2.在iccavr中新建一个项目,并保存。
注意保存文件名必须为.c才可以。
如下图。
3.在右上方file里面右键添加.c 文件。
4.然后编写程序。
注意一般程序包括如下库文件:#include <iom128v.h>#include <macros.h>#include <stdio.h>#include <string.h>5.在利用系统生成(build)钱,一定要进行系统相关的设置,此项非常重要,否则会出现各种问题。
特别是单片机的选取,一定要按照下图选取,选择ATmega1280是不对的。
具体设置在project -> options6.设置完毕后,建立工程。
7.无错误应该为下图8.然后打开AVRstudio,打开projectwizard -> open,然后打开后缀名为.cof 的文件,如下图所示:然后会自动生成后缀名为.aps的工程文件9.然后选择10.连接成功后直接进入到如下界面11.点击黑色的AVR进行基本的设置单片机为ATmega128,JTAG mode ,然后添加 .hex 文件。
熔丝位的设置如下,只有这几个有“√”,特别要注意将M103C 的“√”去掉。
内部1M 晶振用外部8M 晶振用注意此处要修改烧入单片机的程序名称,后缀名为 .hex ,在iccavr 建立的工程文件里添加点击program 即将程序烧写进入单片机中其他一般不要设置。
12.都设置完毕后就可以进行debug或者是烧写程序了。
Debug点击绿色按钮或者在debug里选择。
AVR单片机Atmega128外扩RAM关键字:AVR单片机Atmega128 外扩RAM由于AVR系列单片机采用的是内部外部RAM统一编址,ATmega128工作在非ATmega 103模式时具有4k+256B的包括寄存器文件(通用工作寄存器)、I/O寄存器、扩展I/O寄存器和内部SRAM的连续内部存储空间。
所以在扩展外部RAM时,和内部SRAM地址重叠的外部RAM地址是不能直接访问的。
也就是说扩展的外部RAM每64k要浪费掉内部SRAM那么大的空间(AT90系列如此)。
所幸的是mega系列解决了这一缺点,专门有一个寄存器XMCRB用来解决对与内部SRAM地址空间相同地址的外部RAM访问。
其低三位XMM2 、XMM1 、XMM0三位的设置,决定高位地址线PC口的哪些口线被释放为普通I/O,而不是作为高位地址。
这样就可以巧妙地屏蔽高位,就ATmega128而言,要避开内部的4k+245B空间,注意到,只要所访问的地址范围大于0X1100(且MCUCR,XMCRA设置正确),那么所访问的就是外部RAM空间。
所以在访问小于4k+245B的外部地址时,只要使地址大于0X10FF就可以访问了。
0X1100用二进制表示为:0001,0001,0000,0000,高位地址线PC5、PC6、PC7没有使用到。
在访问的时候就可设置XMCRB的XMM1、XMM0位为1,释放该三根地址线为普通I/O,将其设为输出。
并且输出0;并在外部地址加上一个虚地址以使地址超过0X1100,如此设置,就可以访问外部0X0000~0X10FF空间了。
超出这个空间,CPU就自动将其识别为外部相应的地址了,不用设置XMCRB寄存器(即不需释放任何总线),也不需加虚地址,按照正常外部RAM访问即可。
在此约定所加的虚地址为0X2000,XMCRB寄存器设置为****,*011,所释放的地址线输出0。
表10-0X10FF范围的寄存器状态和寻址范围(略)表2各寻址范围地址线和寄存器状态表(略)表3各寻址范围地址线和寄存器状态表(略)比如要访问外部0X0200地址,用二进制表示为0000,0010,0000,0000。
基于AVR ATmega128的智能小车的硬件设计与实现李龙【期刊名称】《电脑知识与技术》【年(卷),期】2014(000)008【摘要】Introduces a hardware design principles to AVR ATmega128 asthe core of the smart car. Smart car with AVR AT-mega128 microcontroller to control the core of the whole system; application of infrared sensor identification information from outside;Use the left and right sides of the motor speed differential drive to achieve steering;external communication expanding wireless and wired in two ways; while also reserved gyroport.Facilitate subsequent updates and upgrades. The smart car can be used as a vehicle for further research on intelligent platforms.%主要介绍一种以AVR ATmega128为核心的智能小车的硬件原理设计。
智能小车以AVR ATmega128单片机为整个系统的控制核心;应用红外传感识别外界信息;使用左、右两侧电动机的差速驱动实现转向;外部通信拓展了无线和有线两种方式;同时还预留了陀螺仪端口,方便进行后续更新和升级。
该智能小车可以作为对智能车辆进一步研究的平台。
【总页数】6页(P1809-1814)【作者】李龙【作者单位】福州大学数学与计算机软件科学学院,福建福州350108【正文语种】中文【中图分类】TP311【相关文献】1.基于AVR单片机的轮式机器人硬件设计与实现 [J], 肖若娴;杨晶菁;夏天;汤任飞;孙文鹏;陈圣王2.基于AVR ATmega128的迷宫电脑鼠软件设计与实现 [J], 李龙;林桂泉3.基于micro:bit主控板的智能小车的硬件设计与实现 [J], 张帆4.基于ATmega128L的Zigbee节点硬件设计与实现 [J], 江华丽;蔡署5.基于AVR单片机智能小车的设计与实现 [J], 刘瑜因版权原因,仅展示原文概要,查看原文内容请购买。
一、动态显示类交通灯的控制:基本要求:1、用4个7段数码管或LCD液晶显示东西及南北两个方向的通行及等待时间。
2、用两组各3个发光二极管模拟两个方向的红、黄、绿交通灯的显示。
3、要求对东西、南北直行方向的交通灯进行控制,在通行方向的最后5秒这样处理:绿灯闪烁3秒后灭,最后2秒黄灯亮。
禁行方向则直接由红灯变为绿灯。
扩展要求:1、用定时器而不是普通的延时程序控制显示时间2、可通过按键强行控制东西或南北向的通行。
3、夜间模式按钮按下,所有方向显示黄灯闪烁。
4、用按键控制十字路口两个方向不同的通行及等待的时长以适应一天中不同的路况显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
7段数码管及发光二极管动态显示设计基本要求:1、完成数码管的显示,显示值自定。
2、完成8个发光二极管的显示。
3、通过按键选择数码管显示或发光二极管显示,以及不同的显示格式,显示格式包括:静止显示、整体闪烁、单字闪烁、不同位置的多字闪烁、向左、向右的单字及多字的单向移动显示、由两边向中间及由中间向两边的单字及多字的双向移动显示。
4、显示还包括实现启动、停止、计数、清零及倒计时功能扩展要求:1、数码管或LCD液晶显示的值通过串口(使用串口调试助手)从电脑下载。
2、使用定时器控制闪烁频率及滚动速度,闪烁频率及滚动速度均可变。
3、设计所有动作的联合效果LCD动态显示设计基本要求:1、通过按键选择不同的显示格式,显示格式包括:静止显示、整体闪烁、单字闪烁、不同位置的多字闪烁、向左、向右的单字及多字的单向移动显示、由两边向中间及由中间向两边的单字及多字的双向移动显示。
2、显示还包括实现启动、停止、计数、清零及倒计时功能扩展要求:1、LCD液晶显示的值通过串口(使用串口调试助手)从电脑下载。
2、使用定时器控制闪烁频率及滚动速度,闪烁频率及滚动速度均可变。
3、设计所有动作的联合效果设备告警设计假设有四套设备(0-3),每套设备分别有六种告警状态,使用8个发光二极管来显示这些告警。
基本要求:1、取8个发光二极管中最右侧的两个(LED7、LED8)作为告警设备编码。
(两个发光二极管的四种情况“00”,“01”,“10”,“11”分别对应0-3四套设备,“0”“1”对应发光二极管的亮和灭),其它6个发光二极管分别对应当前显示设备的6种告警状态(灯亮表示告警)。
4套设备的初始告警状态可以任意设定,但不可相同。
2、开发板上有四个按键,其中按键A用于选择四套设备的告警显示方式。
按第一次进入自动显示方式(轮流显示各套设备告警状态,告警显示时长为1s);按第二次进入人工显示方式,当前告警状态不变,由按键B的按动次数选择0-3号设备(例按一次选择0号设备,按二次选择1号设备,以此类推,周而复始),稳定显示当前选择设备的告警状态。
3、进入自动显示方式时要求使用定时器进行时间定时控制。
扩展要求:1、将6种告警中的前四种设为主要告警,后两种设为次要告警。
2、通过按键C选择四套设备的初始告警状态,要求至少设3种初始告警状态:四套设备全部正常无告警、四套设备中主要告警和次要告警并存、四套设备中只有次要告警。
3、只要当四套设备中的任何一套出现告警,蜂鸣器就发出鸣叫,其中主要告警的鸣叫声为每秒4次,次要告警的鸣叫声为每秒1次。
二、电子钟电子钟1:基本要求:1、访问时钟芯片PCF8563,在LCD液晶上显示年、月、日、时、分、秒,或通过串口将时间传至PC。
2、合理定义板上按键功能,随机复位、设定、调整时间和日期。
电子钟2:(本次课程设计未使用)1、利用A VR开发板的外接晶体7.3728M(或内部8M RC振荡器),处理器ATmega128的定时器完成电子钟一秒的定时,在LCD液晶上显示年、月、日、时、分、秒,或通过串口将时间传至PC。
2、合理定义板上按键功能,随机复位、设定、调整时间和日期。
扩展要求:1、闹钟功能,启动蜂鸣器鸣叫。
2、整点报时3、显示星期、有闰年功能显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
篮球计分器设计基本要求:1、使用LCD液晶设计显示篮球比分牌(双方比分、第几节、比赛时间电子钟(只需分、秒,不需要年、月、日,格式xx:xx))2、显示比赛开始时间,并同时开始计时。
时间计时到下半场开始时,设计对调功能,A队和B队分数互换,意味着中场交换场地。
3、通过加分按健可以给A队或B队加分4、可用按键调整时间扩展要求:1、显示牌上增加比赛进行到第几节,并随着比赛时间调整节号。
2、比赛结束前1分钟开始进行倒计时。
3、比赛结束时间停止计时,加分及时间调整按键均不再起作用。
显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
三、温度采集基本要求:1、正确连接数字温度传感器DS18B20,采集温度数据在数码管、LCD液晶上显示或通过串口将数据传递至PC。
2、记录间隔可任意设定(1S到1h,步长1s),能按设定时间存储数据。
3、通过键回放温度和记录的时间参数。
扩展要求:1、将温度数据存储在EEPROM AT24C01内。
2、设定温度告警门限,通过蜂鸣器、发光二极管进行告警显示。
3、通过切换按钮可以切换华氏度和摄氏度显示。
显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
四、电子码表类基本要求:1、使用ATmega128的定时器的定时功能。
2、设计秒表功能,精度为0.01秒。
3、有开始、计时、暂停、清零功能4、用数码管或LCD液晶显示5、可同时记录和存储10个秒表数据。
(连续记录并显示已存储记录数),并回放扩展要求:1、设计每一秒钟都有提醒功能,可通过按键打开及关闭该提醒音。
2、使用LCD液晶显示时秒表的最长计时长度为9:59:59,超过此长度,报警。
3、提醒及报警均采用蜂鸣器,但提醒及报警信号对应的鸣叫声不同,其中提醒信号的鸣叫声为每秒4次,报警信号的鸣叫声为每秒1次。
显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
五、串口通信串口通信1:对EasyA VR M128 SK开发板的硬件测试基本要求:1、对开发板EasyA VR M128 SK的板载资源发光二极管、数码管、按键、蜂鸣器进行自检。
2、利用串口调试助手通过PC串口或使用LCD液晶同步显示自检进程及自检结果。
扩展要求:1、可选择板载的其他资源进行自检如:A T24C01、PCF8563、DS18B20等串口通信2:USART的串口通信基本要求:1、利用导线(向机房老师领取)将ATmega128的串口通信USART0的发送端TXD0(PE1引脚)连接至USART1的接收端RXD1(PD2引脚)。
2、选择波特率9600,设置4个按键对应发送4种单字节数据,由USART0发送,USART1接收。
3、在LCD1602上显示所用的波特率、接收的数据。
4、根据接收的数据控制4个7段数码管进行整体闪烁、单字闪烁、向左、向右的单字单向移动显示。
在接收到新的数据前,始终保持原显示方式。
扩展要求:四个按键对应4种不同字节数的数据,并控制7段数码管进行正计时、倒计时、不同位置的多字闪烁等其它显示。
六、简易频率计基本要求:1、利用处理器A Tmega128的定时器/计数器1生成频率为1000hz的方波信号,从引脚PB5(OC1A)输出,将PB5输出的信号用一根导线(向机房老师领取)连接至输入捕捉触发引脚PD4(ICP1),作为定时器1的输入捕捉信号。
2、使用定时器/计数器1的输入捕捉功能来测量该信号的频率、周期以及脉宽等参数3、生成信号的频率及测量得到的频率参数用数码管、LCD显示或传至PC。
扩展要求:1、使用按键生成不同频率的方波信号,每按一次键,频率值步进或后退一定值,频率范围100Hz~1500Hz2、分析能测量的最低及最高频率,分别生成、分别测量及分别显示。
显示格式:由具体课题决定,如是使用LCD12864,能使用汉字的请一律显示汉字。
七、信号采集器基本要求:1、将可变电位器的一端接地,一端接5V电压,中心抽头连接到开发板的输入端AIN1或AIN2,调节输入电压信号,由处理器完成单通道输入A/D转换。
2、将转换结果在数码管、LED液晶上显示,或通过串行口送至PC。
3、采集到的直流电压信号范围0.01-5V。
扩展要求:增加另一个电位器连接到开发板的AIN1或AIN2端,调节输入电压信号,由处理器完成两路单通道的A/D转换后比较结果,自定范围,超过规定值蜂鸣器鸣叫。
显示格式:八、调光系统基本要求:1、使用Atmega128的16位定时/计数器的PWM功能生成PWM信号。
(由于不再受proteus仿真的限制,建议采用快速PWM模式中的模式14或15)2、将生成的PWM信号连接至发光二极管,用按键调节PWM信号占空比的大小,控制发光二极管在全亮及全灭间进行亮度的变化。
4、同时将生成的PWM波形的参数在数码管、LCD液晶上显示,或通过串行口送至PC。
(参数包括频率、占空比、使频率、占空比发生变化的定时器相关寄存器的值等)发挥部分1、用按键按一定的步进值控制PWM信号的的频率及占空比的变化,分析频率满足何条件才可使发光二极管呈现亮度的变化。
九、密码锁基本要求:由于开发板上只有4个按键,受此限制,密码只设4位,密码的输入可参考基本要求中的解决方法,也可以同学自己采用其他的方法。
2、设定的初始密码是4位阿拉伯数字1234。
3、四个按键可以这样分配:按键D作为是否开始输入密码的判断键;按键B、按键C可对应四种状态用于对应4位密码的输入,按键A按下后确定B、C键对应的密码数字,当逐位输入密码时,在液晶显示屏上上逐一显示当前数字。
4、当4位密码位数输入完毕对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用发光二极管长亮一秒钟作为提示,并在LCD上做相应的提示。
5、若密码不正确,则蜂鸣器发出报警声,并在LCD上做相应的提示。
发挥部分:1、能修改密码。
2、能查询记录(记录格式自定)3、当逐位输入密码时,在LCD上逐一显示当前数字,并将前一位显示的数字改为*号,同时在LCD上显示当前为第几次输入密码。
(例密码1234,输入时LCD上分别显示为1;*2;**3;***4;最后一次A键按下后显示为****。
)十、多用途定时提醒器设计基本要求:1、设计一个定时器用于如吃药、烧水等事件提醒2、用LED数码管或LCD液晶显示计时时间,可以加计时或倒计时,定时时间可在10分钟内。
3、设置按键:时间+、时间-、启动、停止、暂停、静音等。
4、在计时到时用蜂鸣器提醒,持续10秒。
发挥部分:设计时间预约方式,即可完成多定时时间段连续计时,并在每一定时间隔到时用不同音乐声(特别指出不是简单的蜂鸣器接通和未接通所发出的声音)提醒显示格式:十一、音乐播放器基本要求:1、存储多段音乐信号,用键盘控制音乐的启动、停止、暂停、静音等操作。