自己动手学习单片机系列 训练第一个项目.pptx

上传人:莉*** 文档编号:87269910 上传时间:2023-04-16 格式:PPTX 页数:23 大小:2.11MB
返回 下载 相关 举报
自己动手学习单片机系列 训练第一个项目.pptx_第1页
第1页 / 共23页
自己动手学习单片机系列 训练第一个项目.pptx_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《自己动手学习单片机系列 训练第一个项目.pptx》由会员分享,可在线阅读,更多相关《自己动手学习单片机系列 训练第一个项目.pptx(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、材料清单1、最小系统板2、+5V电源3、轩微(V6.0普通版或增强版)或双龙ISP下载线一条。推荐轩微下载线普通版(20元),或增强版(45元),双龙的128元。4、面包板跳线一捆。第1页/共23页项目的建立流程项目规划,规划硬件线路,焊接电路板检查硬件有无连接错误按照硬件电路,编写相应的软件程序编译程序,生成单片机可以执行的HEX文件语法错误:该步可以检查出。逻辑错误:该步不能检查出。下载HEX文件到单片机观察运行情况,修改逻辑错误和硬件错误。重回第二步。直到没有逻辑错误。形成最终产品第2页/共23页第一个项目:程序下载和I/O口使用项目要求:要求I/O口的PB0连接的发光二极管(LED)闪

2、烁。项目考虑当PB0输出高电平(5v)发光二极管导通(亮);当PB0输出低电平(0v)发光二极管截止(灭)。普通LED发光二极管允许5-15mA的电流,导通时,电阻接近0,因此为保证流过二极管的电流在5-15mA内,串接470电阻。为了保证能看到亮灭交替,亮灭之间要有一定的延时。需要将HEX文件下载到单片机运行。所以必须有程序下载电路。为了保证单片机运行,必须给单片机通上5v电源。第3页/共23页硬件规划与焊接uavr系列单片机内部有RC振荡电路,产生大约1MHz的时钟信号。对于简单的应用,为降低开发成本,缩小电路规模,可采用片内时钟。本例利用单片机内部时钟信号。为了告诉编译器CPU时钟信号频

3、率,采用以下语句#define F_CPU 1000000UL告诉编译器,CPU时钟信号的频率是1MHz,UL代表无符号长整数第4页/共23页I/O口的三个寄存器nDDRX:8位数据方向寄存器,每一位代表一个引脚,该位设为1,表示该引脚输出,设为0,表示该引脚输入。例如/PA口的PA0,PA2,PA5输出,其它引脚为输入。DDRA=0b0010,0101;n注:1、X可用A,B,C,D中的任一个代替。2、每个引脚可单独配置。第5页/共23页nPORTX:8位I/O口数据寄存器,一旦端口设为输出,把数据放于该寄存器中,则数据立刻出现在端口上。例如DDRA=0b0000,0011;/PA0,PA1

4、输出PORTA=0b0000,0010;/PA0输出低电平,PA1高电平nPINX:获取引脚电平寄存器。不管DDRX配置为输入还是输出,都可以通过该寄存器读引脚电平。例如/判断PB1脚是高电平if(PINB=0B0000,0010)第6页/共23页使用DDRX,PORTX,PINX时注意空引脚最好设为一固定电平。为了降低功耗,一般是上拉电阻使能状态。DDXn,PORTXn=0b01,PUD(SFIOR)=1;给引脚赋予某一固定电平后,接着读引脚电平中间必须加nop指令PORTA=0 x27;中间必须加nop指令。level=PINA;第7页/共23页不要动别人的奶酪实际使用I/O端口时,经常会

5、每个端口有各自的功能,初学者往往犯的错误是在写某个端口时同时修改了其它端口。u举例PB0用作输出,来控制继电器动作。PB1口用作输入,来读取光电门电平。错误写法:正确写法:DDRB=0 x01;DDRB|=0 x01;PORTB=0 x01;PORTB|=0 x01;DDRB=0 xfd;DDRB&=0 xfd;If(PINB=0 x01)If(PINB&0 x01)=0 x01)u为防止以上错误,某位置1,用“|”运算;某位清零,用&运算。第8页/共23页编写软件#define F_CPU 1000000UL#include/关于输入输出端口的定义在此头文件中#include/延时函数的定义

6、在此头文件int main(void)/为符合ansi标准,请在括号内加上voidDDRB|=0 x01;/定义B口的PB0为输出PORTB|=0 x01;/PB0输出高电平,点亮LED_delay_ms(200);/持续200mswhile(1)PORTB=0 x01;/通过异或运算实现取反操作_delay_ms(200);/让亮或暗持续200msreturn(0);/作为一个好习惯应该保留该语句思考题:若要用开发板上的8M时钟,应该修改哪儿?(注意不要改错熔丝位,否则很容易锁死MCU)第9页/共23页编译程序n第一步:打开avrstudio4,看到下图,点New Project第10页/共

7、23页第二步:出现下图选AVR GCC,在Project Name中输入exp2_1,点next第11页/共23页第三步:debug platform 下选Proteus VSM Viewer,Device选ATmega16,点Finish。第12页/共23页第四步:以下窗口输入刚才的源代码,再点“设置”第13页/共23页第五步:按下图设置,点确定第14页/共23页第六步:点compile,从build窗观察,出现0个warnings便OK。第15页/共23页第七步:点build,出现0 warnings便ok第16页/共23页下载HEX文件到单片机第一步:将下载线一端插入计算机USB口,一端

8、连接到ISP牛角座上。打开下载软件,改变单片机型号,点“调入Flash”第17页/共23页第二步:打开上面build完成的hex文件,例如D:expdefaultexp2_1.hex第18页/共23页第三步:点“自动”,便开始将程序下载到单片机。下载完成后,拔掉ISP下载线,观察结果。第19页/共23页检查逻辑错误和硬件错误观察LED是否闪烁,若不闪烁,检查软件中是否对PB0编程,若正确(逻辑正确),再检查是否硬件焊接到PB0口;若焊接到PB0,最后检查电阻和发光二极管是否损坏(保证硬件正确),直到成功为止。第20页/共23页第一个项目运行效果图第21页/共23页思考题程序中使用了外围8MHz晶振电路了吗?使用外围8MHz晶振电路,重新编写程序。(主要考虑如何修改熔丝位)第22页/共23页感谢您的观看!第23页/共23页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁