32位嵌入式综合性实验报告4.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
32位嵌入式综合性实验报告4

32位嵌入式综合性实验报告 学院: 专业: 姓名: 学号:实验四实验目的了解TB定时器可作为自由时钟产生标准时间的功能,以及其它各项特点。掌握操作TB定时器的相关代码编写方法,利用TB定时器与串口相结合完成实验。实验要求200MS通用定时器计数,并将计数值通过串口传回到串口调试助手。三、实验步骤1.实验环境搭建。2.新建名为TB的工程,添加75x_cfg.c,75x_lib.c,75x_tb.c,75x_uart.c,75x_mrcc.c,75x_eic.c,75x_gpio.c文件进入工程。3.编写程序:定义变量,设置系统时钟,设置GPIO端口,设置UART0端口,设置中断,设置计时器的延时时长为200MS,计时结束后执行TB的中断子程序,初值为0的计数变量i++,并利用UART0将计数值返回串口调试助手,以此达到延时技术的目的。4.将生成的映像文件下载到目标板的flash中,打开串口调试助手,运行程序,观察串口调试助手的回显数值。四、核心代码主函数:#include 75x_lib.hint i=0;TB_InitTypeDef TB_InitStructure;UART_InitTypeDef UART_InitStructure;ErrorStatus OSC4MStartUpStatus;void GPIO_Configuration(void);void MRCC_Configuration(void);void EIC_Configuration(void);void main(){ #ifdef DEBUG debug(); #endif MRCC_Configuration(); GPIO_Configuration(); EIC_Configuration(); TB_InitStructure.TB_Mode = TB_Mode_Timing; TB_InitStructure.TB_ClockSource = TB_ClockSource_CKTIM; TB_InitStructure.TB_Prescaler = 239; /* TB clock = 60MHz / (239+1) = 250KHz*/ TB_InitStructure.TB_CounterMode = TB_CounterMode_Up; TB_InitStructure.TB_AutoReload = 999; /* update each: 250 KHz/(499+1)= 500HZ */ TB_Init(TB_InitStructure); UART_InitStructure.UART_WordLength = UART_WordLength_8D; UART_InitStructure.UART_StopBits = UART_StopBits_1; UART_InitStructure.UART_Parity = UART_Parity_Odd ; UART_InitStructure.UART_BaudRate = 115200; UART_InitStructure.UART_HardwareFlowControl = UART_HardwareFlowControl_None; UART_InitStructure.UART_Mode = UART_Mode_Tx; UART_InitStructure.UART_FIFO = UART_FIFO_Enable; UART_Init(UART0, UART_InitStructure); UART_Cmd(UART0, ENABLE); TB_ITConfig(TB_IT_Update, ENABLE); TB_Cmd(ENABLE); while(1);} void MRCC_Configuration(void){ MRCC_DeInit(); OSC4MStartUpStatus = MRCC_WaitForOSC4MStartUp(); if(OSC4MStartUpStatus == SUCCESS) { /* Set HCLK to 60 MHz */ MRCC_HCLKConfig(MRCC_CKSYS_Div1); MRCC_CKTIMConfig(MRCC_HCLK_Div1); MRCC_PCLKConfig(MRCC_CKTIM_Div2); CFG_FLASHBurstConfig(CFG_FLASHBurst_Enable); MRCC_CKSYSConfig(MRCC_CKSYS_OSC4MPLL, MRCC_PLL_Mul_15); } MRCC_IOVoltageRangeConfig(MRCC_IOVol

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档