首页下载资源硬件开发F407在RAM中调试

ZIPF407在RAM中调试

Qian_XiaoHei11.51KB需要积分:1

资源文件列表:

RAM中调试代码.zip 大约有16个文件
  1. driver/
  2. driver/uart/
  3. driver/uart/include/
  4. driver/uart/include/uart.h 105B
  5. driver/uart/uart.c 2.29KB
  6. Listings/
  7. Objects/
  8. Objects/sram.sct 496B
  9. Objects/test.sct 494B
  10. platform/
  11. platform/include/
  12. platform/include/common.h 150B
  13. platform/include/sys.h 2.47KB
  14. platform/main.c 1.21KB
  15. test.uvoptx 11.71KB
  16. test.uvprojx 37.4KB

资源介绍:

STM32F407在SRAM中调试
#include "uart.h" #include #pragma import(__use_no_semihosting_swi) struct __FILE { int handle; /* Add whatever you need here */ }; FILE __stdout; FILE __stdin; int fputc(int ch, FILE *f) { USART_SendData(USART1,ch); while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET); USART_ClearFlag(USART1,USART_FLAG_TXE); return ch; } void usart1_init(uint32_t baud) { GPIO_InitTypeDef GPIO_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; USART_InitTypeDef USART_InitStructure; //打开PA硬件时钟 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); //打开串口1硬件时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); //配置PA9和PA10为复用功能模式 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10; //第9 10根引脚 GPIO_InitStructure.GPIO_Mode= GPIO_Mode_AF; //多功能模式 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽输出,增加输出电流能力。 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//高速响应 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; //没有使能上下拉电阻 GPIO_Init(GPIOA,&GPIO_InitStructure); //将PA9和PA10引脚连接到串口1的硬件 GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //配置串口1相关参数:波特率、无校验位、8位数据位、1个停止位...... USART_InitStructure.USART_BaudRate = baud; //波特率 USART_InitStructure.USART_WordLength = USART_WordLength_8b; //8位数据位 USART_InitStructure.USART_StopBits = USART_StopBits_1; //1个停止位 USART_InitStructure.USART_Parity = USART_Parity_No; //无奇偶校验 USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; //无硬件流控制 USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //允许收发数据 USART_Init(USART1, &USART_InitStructure); //配置串口1的中断触发方法:接收一个字节触发中断 USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); //配置串口1的中断优先级 NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); //使能串口1工作 USART_Cmd(USART1, ENABLE); } void USART1_IRQHandler(void) { }
100+评论
captcha