欢迎来到天天文库
浏览记录
ID:44149452
大小:475.57 KB
页数:7页
时间:2019-10-19
《嵌入式KL25实验--串口完成数据收发》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验报告课程名称:项目名称:姓名:专业:班级:学号:同组成员一、实验准备S(一)实验环境准备:搭载有Codewarrior开发环境,串口驱动USBDM的开发环境;SD-FSL-KL25-EVB硬件板。ARMProgrammmero串口调试器。(二)实验所需知识点准备:UART模块功能:MKL25Z128VLK4芯片共有三个申口,分别标记为UARTO、UART1、UART2,可以通过引脚配置寄存器配置。UART模块编程结构:寄存器地址分析、控制寄存器、状态寄存器、波特率寄存器。注:1、实验准备部分包•
2、实验环境准备和实验所需知识点准备。2、若是单人单组实验,同组成员境无。二、实验过程记录2:(一)实验目的:练习串口编程方式。(二)实验原理:利用串口驱动程序完成数据收发,数据接收采用中断方式完成。(三)实验步骤:①在头文件中定义一个全局变量数组。Lhjincludes・hS3[fc]isr.cFclmain.c[h]uart.h◎//立件名Rincludes.hQ#i£nde£_INCLUDES_H#de^ine二工NCLUDES二H#includeMincludeMincludeMinclude^
3、include**conwnon・h°printf•h-gpio.h-••light.h°••uart^h**//定义全WSE呈uin*t_8var[100];2500000U1//定义小灯闪殍莎空#defineRUN_COUNTER_MAX#endi-F②在中断函数中写入控制中断程序。当输入“1”时关闭串口接收中断。一voidUARTl_IRQHandler(void)DISABLE_INTERRUPTS;//
4、关断//灾弔義a—个宁丐的融倚義a中//同二发叵一个字七if(uartget:reint(UART1))<(var[countJ=ch;count+4-.;i-F(ch==・:1・){uart_sendN(UA^T^^^^ount«•>j-i-f:;ch=uart—rel(UART^l,&€lag)//uart:^^sendl(UART—1,;INTERRUPTS;//土匸2喪幺丰审丢务E召voidUART2_IRQHandler(void)①编译程序。uint_8ch;uint_8flag;sta
5、ticuint_16uount«0;DISABLE.INTERRUPTS;/=祈if(uart_get}}ENABLE②用ARMProgrammer将编译过程序写入到开发板中。S2LoadHexFilesKL25UART.elfDeviceSelectionMKL25Z128M4FlashProgramrr^erFlashImageBuffer▽filterbyuhipID丄25丄52486)EraseMassVerifyFlashProgramFlashLoadandGoInterfaceTarg
6、etAdvancedDeviueOperationsEraseOptions十
7、I~EnableSoundsTrirnVaIue:-Ox??.?①打开串ri调试器。发送一行字符不返回,当发送“1”时将发送的字符返回。串口中断服务程序,当串口1有数据到来时产生中断,执行isr_uartl_re(void)接收中断服务程序,服务程序先进入临界区关总中断,接收一个到来的字符。接收成功,把字符发送回去。即在串口调试器中发送的字符将原样返回。在本实验中,要实现接收到指定字符才将发送的字符返回,就需要控制中断,
8、但不能关闭总中断。所以定义一个全局变量数组,当输入字符“1”时,调用串口1的中断程序,将之前发送的字符和现在的字符发送回来。该实验用到的中断属于非内核中断,理解中断程序的原理,就能通过程序开启或关闭中断。实验报告成绩(百分制)实验指导教师签字:3注:1、实验小结应包含实验所需知识点和实验方法的总结,实验心得体会等。2、分组实验需包含同组讨论内容。
此文档下载收益归作者所有